Map reliability, operator UX, and spend-control follow-ons onto epics 1–9 so worker, webhooks, and fleet work have bead-scale task briefs. Co-authored-by: Cursor <cursoragent@cursor.com>
58 lines
1.7 KiB
Markdown
58 lines
1.7 KiB
Markdown
---
|
|
kind: task
|
|
slug: convoy-dag-visualization
|
|
title: Convoy DAG visualization for parallel briefs
|
|
plan_slug: automation-foundation
|
|
epic_slug: mission-control-gates-ui
|
|
status: draft
|
|
priority: P2
|
|
tenant_id: global
|
|
owner: unassigned
|
|
cursor_todo_id: null
|
|
updated_at: "2026-08-03"
|
|
---
|
|
|
|
# Task summary
|
|
|
|
Read-only dependency graph in mission control showing brief/subtask relationships and `multitask_group` parallel lanes.
|
|
|
|
## Description
|
|
|
|
**Benchmark:** Autensa Convoy Mode DAG — visual dependency graph for parallel subtasks. Echodo already has `multitask_group` on `convoy_events` and parallel implementer fan-out in the orchestrator ADR; this task adds **visibility**, not new scheduling logic.
|
|
|
|
### Data source
|
|
|
|
- Parse brief frontmatter / `slice_dependencies` from `.convoys/<slug>/brief-*.md` (via convoy object metadata or file reconcile)
|
|
- Overlay live status from `agent_runs` + convoy status per brief
|
|
|
|
### UI
|
|
|
|
- Mission control detail panel tab: **Graph**
|
|
- Nodes = briefs; edges = dependencies; color = run status (pending, running, done, blocked)
|
|
- Click node selects brief in detail panel
|
|
|
|
## Dependencies
|
|
|
|
- Epic 5 mission control (shipped)
|
|
- Epic 6 orchestrator parallel dispatch (shipped)
|
|
|
|
## Subtasks
|
|
|
|
- [ ] Shared zod type `ConvoyDag` in `packages/shared`
|
|
- [ ] tRPC `convoys.getDag`
|
|
- [ ] React graph component (lightweight — e.g. layered layout, no heavy graph lib unless justified)
|
|
- [ ] Empty state when single-brief convoy
|
|
|
|
## Estimation
|
|
|
|
M
|
|
|
|
## Acceptance criteria
|
|
|
|
- [ ] Two-brief convoy with dependency shows correct edge direction
|
|
- [ ] Parallel briefs without dependency appear in same column/lane
|
|
- [ ] Blocked brief visually distinct from pending
|
|
|
|
## Links
|
|
|
|
- Epic: `./Epic-mission-control-gates-ui.md`
|