Submatter/plans/Plan-automation-foundation/Epic-convoy-lifecycle-mcp/Epic-convoy-lifecycle-mcp.md
Randall Stillwell 9405da8a45 feat(convoys): convoy lifecycle MCP and state machine (Epic 4)
Adds server-enforced convoy transitions with gate actor guards, convoy_events
logging, and six MCP tools (create, brief, transition, log, query, reconcile).

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 14:51:19 -05:00

1.7 KiB

kind slug title plan_slug status priority tenant_id cursor_epic_id updated_at
epic convoy-lifecycle-mcp Convoy lifecycle MCP — state machine and convoy_events automation-foundation done P1 global null 2026-07-03

Epic objective

Implement agent-pipeline Phase 2a convoy lifecycle in Echodo MCP: create_convoy, create_brief, transition_convoy_status, log_convoy_event, query_manifest_status, reconcile_from_files.

Server-enforced state machine (draft → convoy_review → ready → in_progress → pr_review → merged → released). Human gate actors (human-gate-1/2/3) only for their transitions.

Reference: agent-pipeline v0.4 plan §7; local-first .convoys/ with .pending-mcp-sync.jsonl outbox.

In scope / out of scope

In scope

  • MCP tools in apps/mcp-server.
  • convoy_events table (or extend agent_runs pattern).
  • Map convoy → Echodo project object; brief → task child (per v0.4 object mapping).
  • Extended status enum documented; UI filters updated in Epic 5.

Out of scope

  • Orchestrator auto-dispatch (Epic 6).
  • Deliverable templates (agent-pipeline Phase 2b).

Dependencies

  • Epic 2 (convoy file conventions).
  • Epic 3 (workspace convoys-<repo> convention).

Blocks

  • Epic 5, 6, 9.

Acceptance criteria

  • Invalid transition draft → released rejected with structured error.
  • role-architect cannot call human-gate-1 transition.
  • Offline convoy edit reconciles via reconcile_from_files.

Tasks