F4 — Orchestrator chat connector abstraction + Matrix (local homeserver) #616
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
F4 — Orchestrator chat connector abstraction + Matrix (local homeserver)
From the north-star (#613) orchestrator-chat-connector decision: the orchestrator is reachable over a user-chosen connector (tmux now; Discord live; Matrix/Telegram/Slack configurable). Add Matrix as a peer connector targeting a local homeserver (Conduit default, Synapse alt), behind a small uniform connector interface so connectors are pluggable without touching fleet core.
Phase 1 (this PR) — design + scaffold
docs/fleet/f4-matrix-connector.md: interface, config model, Matrix client-server API mapping, local-homeserver infra note, secrets, phasing, back-compat.src/fleet/connectors/types.ts:OrchestratorConnectorinterface (send,subscribe,health) + message types (thread-aware).src/fleet/connectors/registry.ts:resolveConnector(kind)— tmux passthrough; discord/matrix stubs (not yet implemented).connectorschema block (optional, defaults tmux — back-compat).Phase 2+ (follow-up, in the doc)
Matrix CS-API client (fetch-based send/sync/health); init/configure connector-selection UX; systemd launch wiring; Conduit deploy guide.
Constraints (Lead-confirmed)
Connectors are peers (tmux | discord | matrix | future first-party Mosaic Discord w/ threads); interface stays small + uniform (send / receive-subscribe / ack-health); secrets via env (gateway pattern), never in roster. Control plane = federation (W1).