From the north-star (#613) orchestrator-chat-connector decision: make the orchestrator's chat channel a pluggable, user-chosen connector (tmux | discord | matrix peers) and add Matrix (local homeserver) — starting with the small uniform abstraction so connectors drop in without touching fleet core. Phase 1 (this PR — design + scaffold): - src/fleet/connectors/types.ts: OrchestratorConnector interface (send / subscribe / health per the Lead's spec) + message/config types; thread-aware via optional threadId so Matrix threads + the future first-party Mosaic Discord plugin fit without an interface change. DEFAULT_CONNECTOR_KIND=tmux. - src/fleet/connectors/registry.ts: extensible factory registry; resolveConnectorKind defaults tmux (back-compat); createConnector throws ConnectorNotImplementedError until Phase 2 registers factories. - roster.schema.json: optional connector block (tmux|discord|matrix; matrix homeserver/user/room). Secrets via env (gateway pattern), never the roster. - docs/fleet/f4-matrix-connector.md: interface, config, Matrix client-server API mapping, Conduit-default local homeserver, phasing, back-compat. Self-contained connectors/ module — NO fleet.ts changes, so independent of the in-flight stacked fleet-config PR (#615). Verified: 7 connector tests green; tsc/eslint/prettier/sanitize clean; schema valid JSON. Refs #616, #613 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EsgTQzV5YUGk1JtCLP4B83
73 lines
6.4 KiB
Markdown
73 lines
6.4 KiB
Markdown
# Tasks — MVP (Top-Level Rollup)
|
||
|
||
> Single-writer: orchestrator only. Workers read but never modify.
|
||
>
|
||
> **Mission:** mvp-20260312
|
||
> **Manifest:** [docs/MISSION-MANIFEST.md](./MISSION-MANIFEST.md)
|
||
>
|
||
> This file is a **rollup**. Per-workstream task breakdowns live in workstream task files
|
||
> (e.g. `docs/federation/TASKS.md`). Workers operating inside a workstream should treat
|
||
> the workstream file as their primary task source; this file exists for orchestrator-level
|
||
> visibility into MVP-wide state.
|
||
>
|
||
> **Status values:** `not-started` | `in-progress` | `done` | `blocked` | `failed`
|
||
|
||
## Workstream Rollup
|
||
|
||
| id | status | workstream | progress | tasks file | notes |
|
||
| --- | ----------------- | ------------------- | ---------------- | ------------------------------------------------- | --------------------------------------------------------------- |
|
||
| W1 | planning-complete | Federation v1 (FED) | 0 / 7 milestones | [docs/federation/TASKS.md](./federation/TASKS.md) | M1 task breakdown populated; M2–M7 deferred to mission planning |
|
||
|
||
## Cross-Cutting Tracking
|
||
|
||
These are MVP-level checks that don't belong to any single workstream. Updated by the orchestrator at each session.
|
||
|
||
| id | status | description | notes |
|
||
| ---------- | ----------- | -------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
|
||
| MVP-T01 | done | Author MVP-level manifest at `docs/MISSION-MANIFEST.md` | This session (2026-04-19); PR pending |
|
||
| MVP-T02 | done | Archive install-ux-v2 mission state to `docs/archive/missions/install-ux-v2-20260405/` | IUV-M03 retroactively closed (shipped via PR #446 + releases 0.0.27→0.0.29) |
|
||
| MVP-T03 | done | Land federation v1 planning artifacts on `main` | PR #468 merged 2026-04-19 (commit `66512550`) |
|
||
| MVP-T04 | not-started | Sync `.mosaic/orchestrator/mission.json` MVP slot with this manifest (milestone enumeration, etc.) | Coord state file; consider whether to repopulate via `mosaic coord` or accept hand-edit |
|
||
| MVP-T05 | in-progress | Kick off W1 / FED-M1 — federated tier infrastructure | Session 16 (2026-04-19): FED-M1-01 in-progress on `feat/federation-m1-tier-config` |
|
||
| MVP-T06 | not-started | Declare additional workstreams (web dashboard, TUI/CLI parity, remote control, etc.) as scope solidifies | Track each new workstream by adding a row to the Workstream Rollup |
|
||
| T-A292E96F | in-progress | Fix Mosaic Gitea PR metadata/login wrapper regression for U-Connect merge preflight | Kanban `t_a292e96f`; branch `fix/t-a292e96f-gitea-pr-metadata`; scratchpad `docs/scratchpads/t-a292e96f-gitea-pr-metadata.md` |
|
||
|
||
## Pointer to Active Workstream
|
||
|
||
Active workstream is **W1 — Federation v1**. Workers should:
|
||
|
||
1. Read [docs/federation/MISSION-MANIFEST.md](./federation/MISSION-MANIFEST.md) for workstream scope
|
||
2. Read [docs/federation/TASKS.md](./federation/TASKS.md) for the next pending task
|
||
3. Follow per-task agent + tier guidance from the workstream manifest
|
||
|
||
## Thin-core prompt diet (#528) — feat/contract-thin-core
|
||
|
||
- Status: PR open, awaiting maintainer merge ratification (fleet-governing change).
|
||
- Cut always-injected contract AGENTS+TOOLS+RUNTIME 8,827→4,122 tok (−53%); all 12 hard gates intact.
|
||
- Validation: deterministic gate-checklist PASS; headless A/B thin 7/9 vs monolith 5/9. Detail: scratchpads/contract-thin-core.md.
|
||
|
||
## P5 — Overlay composer + cross-harness (#604) — feat/p5-overlay-composer
|
||
|
||
- Status: MERGED to main (#605). R7 (compose-contract) + R8 (cross-harness) + R9 (composer test).
|
||
- `composeContract({harness, mosaicHome})` pure fn + `.local` overlay deltas-by-value; `mosaic compose-contract <harness>` command; AGENTS bare-launch nudge; composer spec (per-tier anchor + Tier-3 byte-equality). Detail: scratchpads/p5-overlay-composer.md.
|
||
|
||
## P6 — Docs, compliance matrix, alpha tag (#606) — feat/p6-docs-compliance-alpha
|
||
|
||
- Status: in-repo deliverables done (CONTRIBUTING.md + harness×gate compliance matrix + check-resident-budget.sh + CI wiring + ALPHA-DOD.md). Remaining: alpha tag v0.0.39-alpha (Lead, post-merge). aiguide reconcile merged (#8). Detail: scratchpads/p6-docs-compliance-alpha.md.
|
||
|
||
## F3-m3 — mosaic update re-seeds framework + relaunches agents (#609) — feat/f3-m3-update-reseed
|
||
|
||
- Status: implemented + tested. Closes R13: `mosaic update` now re-seeds the framework (data-safe MOSAIC_SYNC_ONLY) after the CLI install so shipped launcher/runtime changes activate; `--relaunch` restarts rostered agents; `--no-reseed` opts out. Detail: scratchpads/f3-m3-update-reseed.md.
|
||
|
||
## Fleet-polish bundle — boot-survival symmetry (#611) — feat/fleet-polish-bundle
|
||
|
||
- Status: MERGED to main. disable-on-remove (boot-resurrection bug, TDD) + add-enable + init-R5 hard guarantee. 4 new + 147 existing fleet tests green. Detail: scratchpads/fleet-polish-bundle.md.
|
||
|
||
## Fleet enhancer role + two-agent floor (#614) — feat/fleet-enhancer-floor
|
||
|
||
- Status: MERGED to main. enhancer added to 4 presets; init guarantees 1 orchestrator + >=1 enhancer; remove protects the sole enhancer; enhancer role doc. 155 fleet tests green. Detail: scratchpads/fleet-enhancer-floor.md.
|
||
|
||
## F4 — Orchestrator chat connector + Matrix (#616) — feat/f4-matrix-connector
|
||
|
||
- Status: Phase 1 done (abstraction + scaffold). Connector interface (send/subscribe/health) + registry + roster connector schema + design doc; tmux default/back-compat; matrix/discord factories are Phase 2. 7 tests green; no fleet.ts changes. Detail: scratchpads/f4-matrix-connector.md.
|