Listener Interface Pattern for OTA and Alarm Control Panel
The OTA component now uses a listener interface instead of std::function callbacks. The alarm control panel component has removed per-state callback methods in favor of a unified state callback.
This is a breaking change for external components in ESPHome 2026.1.0 and later.