refactor(connection): public protocol_active accessor replaces the remote entity's private reach-in; media_player module docstring describes the Phase 2 architecture (F7)

This commit is contained in:
James Mackay committed 2026-10-08 10:12:40 +01:00
1 parent 5f8c3290cc
commit a65c893339
3 files changed
+23 -10

No files matched your search

@@ -347,6 +347,15 @@ class ShieldConnectionManager:
"""Visible recent-task apps, ordered by recency."""
return self.store.get(FIELD_RUNNING_APPS, [])
@property
def protocol_active(self) -> bool:
"""True when the remote-protocol transport is wired for this entry.
Entities use this instead of reaching into ``_protocol``: a passive
manager means "no transport", not "broken transport".
"""
return self._protocol is not None
@property
def is_on(self) -> bool | None:
"""Protocol power push (device reports on/off state)."""