Any test that built a SessionManager without COWORKER_STATE_DIR read the
developer's machine-global SecretStore — including their real cloud
sign-in, so test session creation emitted REAL coworker_session_created
events to prod (discovered as burst noise in the telemetry table). Six
tests turned out to be riding the developer's connected Slack profile for
inbound-delivery gating; they now connect a fake Slack in their own store.
Side effect: the suite is ~45% faster (no live telemetry threads).
Connector inbound messages carry a display-only source sidecar so the GUI
renders a rich card (logo, channel/person names, ids-on-hover, time) while
the model still receives the framed text. The sidecar is persisted with the
message and stripped unconditionally before the provider feed. Frontend adds
ConnectorMessageCard wired through an extracted, testable itemsFromMessages.
DMs depended on the legacy always-on super-agent (a hidden __superagent__
session + a GUI surface that wasn't reachable from the sidebar). In the durable-
session model that surface is vestigial: a DM should just drive a real session.
DM routing:
- prefs-backed dm_session designation + GET/POST /v1/messaging/dm-route.
- _dispatch_inbound routes a DM to the designated session (delivered like any
background turn, so it streams live via the per-session bus) or, with none set,
parks it as unrouted for visibility.
- GUI 'Direct messages' control in Integrations (pick the session, or park).
Retire the super-agent:
- delete connectors/superagent.py + its exports; remove the SuperAgent build/run,
_sa_* GUI surface, superagent config/status, SUPERAGENT_SESSION_ID, the
/ws/superagent socket + /v1/superagent routes; start_gateway keeps the gateway
+ scheduler only. Scheduled-task 'done' notices now broadcast to the run's own
session view.
- GUI: delete SuperAgentView + the disabled Super-agent manage tab + getSuperagent.
- myhelper persona kept resolvable (persisted sessions may reference it); docstrings
de-super-agent-ified.
- tests: test_dm_routing.py; updated the DM case in test_subscriptions; dropped the
super-agent tests in test_connectors.