ci / rust (push) Failing after 7m28s
New module `local_events::LocalEventBus` (broadcast<RegistryEvent>) with two publishers: * `spawn_session_publisher` — translates SessionManager's own session events into the matching `RegistryEvent` variants (with daemon_id filled in for the SessionRemoved case). * `CatalogMirror::apply` — re-publishes peer events after applying them to the local mirror, so subscribers see the post-apply state. New `WS /api/events` route on the daemon: subscribes to the bus, sends an initial `Snapshot` built from manager.snapshot() ∪ catalog state, then forwards live deltas. `Lagged` follows the registry's convention (client resyncs via REST). Revert the REST-seed hack in web/src/events.ts — the WS endpoint now exists, so `CatalogStore::start()` can go back to just `connect()`. E2E: subscribe to a daemon's events WS, expect Snapshot then a SessionAdded after POSTing /api/sessions. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>