# Tasks — Mosaic Mission Control Plane > Single-writer: orchestrator only. Workers read but never modify. > > **Mission:** mission-control-plane-20260506 > **Schema:** `| id | status | description | issue | agent | branch | depends_on | estimate | notes |` > **Status values:** `not-started` | `in-progress` | `done` | `blocked` | `failed` | `needs-qa` > **Agent values:** `codex` | `glm-5.1` | `haiku` | `sonnet` | `opus` | `—` (auto) > > Scope: this file decomposes the combined PRD / mission / board workflow into atomized tasks. --- ## Milestone 1 — PRD + mission schema foundation Goal: create the durable doc structure and the minimal mission metadata needed to keep PRD, board, and mission aligned. | id | status | description | issue | agent | branch | depends_on | estimate | notes | | --- | --- | --- | --- | --- | --- | --- | --- | --- | | MC-01-01 | not-started | Write `docs/mission-control/PRD.md` with goals, non-goals, functional requirements, and success metrics. | — | sonnet | docs/mission-control-prd | — | 5K | Human-readable PRD becomes the spec anchor. | | MC-01-02 | not-started | Write `docs/mission-control/BOARD.md` as a decision board for scope, priority, and open questions. | — | haiku | docs/mission-control-board | MC-01-01 | 3K | Keeps discussion separate from the spec. | | MC-01-03 | not-started | Write `docs/mission-control/MISSION-MANIFEST.md` linking PRD, board, tasks, and mission identity. | — | sonnet | docs/mission-control-manifest | MC-01-01, MC-01-02 | 4K | Durable mission root object. | | MC-01-04 | not-started | Write `docs/mission-control/TASKS.md` with the atomized execution plan and dependency graph. | — | sonnet | docs/mission-control-tasks | MC-01-03 | 4K | Board-backed execution plan. | **Milestone 1 estimate:** ~16K tokens --- ## Milestone 2 — Mission runtime model Goal: make missions first-class runtime objects that can survive session restarts and compaction. | id | status | description | issue | agent | branch | depends_on | estimate | notes | | --- | --- | --- | --- | --- | --- | --- | --- | --- | | MC-02-01 | not-started | Define mission schema in the data layer: mission ID, goal, phase, PRD path, board path, active session ID, last handoff, and churn score. | — | codex | feat/mission-control-schema | MC-01-03 | 6K | This is the durable root state. | | MC-02-02 | not-started | Add mission read/write services to `packages/coord` so the coordinator can load and persist mission state. | — | codex | feat/mission-control-coord-store | MC-02-01 | 6K | Keep storage simple and explicit. | | MC-02-03 | not-started | Add mission status reporting to `mosaic mission` and `mosaic coord status`. | — | codex | feat/mission-control-status-cli | MC-02-02 | 4K | Operators need one obvious status command. | | MC-02-04 | not-started | Add tests for mission persistence and recovery after restart. | — | haiku | feat/mission-control-persistence-tests | MC-02-02 | 4K | Verify mission survives process churn. | || MC-02-05 | done | Add a worktree-root convention to the mission runtime notes and startup guidance so agents prefer `/src/-worktrees` over `/tmp`. | — | haiku | docs/mission-control-worktree-root | MC-01-03 | 3K | Keep long-lived work on the larger persistent drive. | **Milestone 2 estimate:** ~20K tokens --- ## Milestone 3 — Board atomization and task linkage Goal: derive assignable tasks from the PRD and keep them linked to mission state. | id | status | description | issue | agent | branch | depends_on | estimate | notes | | --- | --- | --- | --- | --- | --- | --- | --- | --- | | MC-03-01 | not-started | Add a PRD-to-task decomposition rule set: every user story maps to one or more board tasks. | — | sonnet | feat/mission-control-decompose | MC-01-01 | 5K | Start simple and deterministic. | | MC-03-02 | not-started | Implement board generation from the PRD in a machine-readable format. | — | codex | feat/mission-control-board-gen | MC-03-01 | 6K | Output should be usable by the coordinator. | | MC-03-03 | not-started | Add dependency validation so tasks cannot start before parent tasks complete. | — | codex | feat/mission-control-deps | MC-03-02 | 5K | Enforces ordering. | | MC-03-04 | not-started | Add review-task support so a mission cannot close without a reviewer step. | — | sonnet | feat/mission-control-review-gate | MC-03-03 | 4K | Preserves quality. | | MC-03-05 | not-started | Add tests proving the board stays traceable back to the PRD user stories. | — | haiku | feat/mission-control-trace-tests | MC-03-02, MC-03-03 | 4K | Traceability is the point. | **Milestone 3 estimate:** ~24K tokens --- ## Milestone 4 — Short-cycle detector and rotation engine Goal: detect when a session is stuck and rotate to a fresh session before quality falls off. | id | status | description | issue | agent | branch | depends_on | estimate | notes | | --- | --- | --- | --- | --- | --- | --- | --- | --- | | MC-04-01 | not-started | Define churn signals: repeated compaction, identical tool loops, repeated permission prompts, and no progress across several turns. | — | sonnet | feat/mission-control-churn-signals | MC-02-01 | 4K | Keep the rules explicit. | | MC-04-02 | not-started | Implement churn scoring in the coordinator with configurable thresholds. | — | codex | feat/mission-control-churn-score | MC-04-01 | 6K | Weighted score makes tuning easier. | | MC-04-03 | not-started | Implement automatic session rotation when churn crosses the threshold. | — | codex | feat/mission-control-rotate-session | MC-04-02 | 6K | The session is disposable; the mission is not. | | MC-04-04 | not-started | Add tests for rotation triggers and for avoiding premature rotation. | — | haiku | feat/mission-control-rotation-tests | MC-04-03 | 4K | Prevent flapping. | **Milestone 4 estimate:** ~20K tokens --- ## Milestone 5 — Handoff generation and re-entry Goal: preserve the best context from the old session and inject it into the new session cleanly. | id | status | description | issue | agent | branch | depends_on | estimate | notes | | --- | --- | --- | --- | --- | --- | --- | --- | --- | | MC-05-01 | not-started | Define the handoff packet schema: mission ID, session ID, completed work, blockers, next 3 actions, and constraints. | — | sonnet | feat/mission-control-handoff-schema | MC-02-01 | 4K | Keep it compact and structured. | | MC-05-02 | not-started | Implement handoff packet writing during rotation. | — | codex | feat/mission-control-handoff-write | MC-05-01, MC-04-03 | 5K | Persist before the old session exits. | | MC-05-03 | not-started | Implement handoff packet loading at session startup. | — | codex | feat/mission-control-handoff-load | MC-05-01, MC-04-03 | 5K | New session should know the next action. | | MC-05-04 | not-started | Add tests proving a rotated session can continue the mission without manual re-prompting. | — | haiku | feat/mission-control-handoff-tests | MC-05-02, MC-05-03 | 4K | Resume quality is the key metric. | **Milestone 5 estimate:** ~18K tokens --- ## Milestone 6 — Operator surface and E2E validation Goal: expose the whole workflow through commands and verify it end-to-end. | id | status | description | issue | agent | branch | depends_on | estimate | notes | | --- | --- | --- | --- | --- | --- | --- | --- | --- | | MC-06-01 | not-started | Add a CLI command to inspect the active mission, PRD path, board path, task statuses, and latest handoff. | — | codex | feat/mission-control-inspect-cli | MC-02-03, MC-05-03 | 5K | One place to inspect the whole stack. | | MC-06-02 | not-started | Add a compact dashboard or TUI summary view for mission health. | — | codex | feat/mission-control-summary-ui | MC-06-01 | 6K | Nice to have, but not before the core works. | | MC-06-03 | not-started | Build an E2E harness that simulates compaction / rotation and verifies the mission can continue. | — | sonnet | feat/mission-control-e2e-harness | MC-04-03, MC-05-03 | 8K | This is the proof that the design works. | | MC-06-04 | not-started | Add final docs for operators explaining how PRD, mission, and board fit together. | — | haiku | feat/mission-control-ops-docs | MC-06-03 | 4K | Make it usable by humans. | | MC-06-05 | not-started | Consolidate review findings and close the mission with a release note. | — | sonnet | chore/mission-control-close | MC-06-04 | 3K | Only after the E2E passes. | **Milestone 6 estimate:** ~26K tokens --- ## Execution Notes - `sonnet` is best for planning, decomposition, and the review-gate tasks. - `codex` is best for schema, coordinator, and CLI implementation. - `haiku` is best for validation, traceability checks, and docs. - The first implementation pass should stay file-first and keep the runtime state thin. - The mission should not close until the PRD, board, mission manifest, and E2E harness all agree.