Display name of the agent (caption avatar / meta line).
Re-emitted from a WORKING delegation card's ✕ cancel affordance (the call's ID).
Whether developer affordances on delegation cards are revealed (gear-gated).
Re-emitted from a delegation card's "View" artifact chip (focuses the artifact's surface tab).
Re-emitted from a delegation card's dev "Open run" link (the delegated run's ID).
Whether to render caption bubbles (toggled by the controls' captions button).
Shared live-session state, owned by the overlay shell.
Display name of the signed-in user for their turns — consistent with the main chat's sender names, and ready for multi-user sessions where "You" stops meaning anything. Hosts bind the current user's name; the default keeps old hosts working.
A callback method that is invoked immediately after the default change detector has completed one change-check cycle for a component's view.
A callback method that performs custom clean-up, invoked immediately before a directive, pipe, or service instance is destroyed.
A callback method that is invoked immediately after the default change detector has checked the directive's data-bound properties for the first time, and before any of the view or content children have been checked. It is invoked only once when the directive is instantiated.
True when the live narration note should render under THIS delegation item.
The unified, chronological live thread for the call overlay: caption bubbles interleaved with delegation cards exactly where they happened.
PURELY PRESENTATIONAL over RealtimeSessionState — the overlay shell owns the state object (which merges the service streams once) and passes it here AND to the activity rail, so there is exactly one copy of the per-CallID merge logic.
Also renders the EPHEMERAL narration "live note": indented, muted, italic text under the ACTIVE working card (latest narration only — replaced, never accumulated).