pub fn report_window_opened(
label: String,
kind: WindowKind,
parent_label: Option<String>,
)Expand description
Phase B.4 — sync API: report a window open to the launcher’s
state mirror. Called from CEF lifecycle callbacks on the UI
thread. No-op if the launcher pipe isn’t connected (task dev
mode); failures to enqueue (channel closed, drain task died)
are logged but don’t propagate — the host’s authoritative state
is unaffected, the mirror just falls behind. B.5 tightens.