mirror of
https://github.com/esphome/esphome.git
synced 2026-09-11 23:37:34 +00:00
The boot mode had no coherent job left: before any subscriber the tap is served via tap_needs_port() regardless of mode, 1.17+ clients select the mode explicitly after subscribing, and the only remaining effect was arming the tap for a first-session client that never asked for it and could not turn it off. The mode is now purely a session property of the API: ports always boot RAW. Also polish the tap contract per review: expose tap_is_observed(), return false from write_from_tap() when the bytes are dropped, and document that tap_pump() must not be called from tap callbacks.