Summary
Make PLAN phase output structured tasks (JSON) instead of free text. Enables granular progress tracking in dashboard and targeted retry on specific sub-tasks.
Current State
planPhase() returns free text plan
- Dashboard shows plan as raw text
- Retry re-executes entire plan even if only one sub-task failed
Plan
- Update plan system prompt to request JSON output:
{ tasks: [{ id, title, description, dependencies }] }
- Parse and validate plan JSON in
planPhase()
- Store tasks in DB for dashboard display
- Show task-level progress in dashboard Pipeline view
- On retry, pass only failed task context to executor
Files
src/core/pipeline.ts
src/storage/schema.ts (plan_tasks table)
src/dashboard/src/pages/pipeline.tsx
Summary
Make PLAN phase output structured tasks (JSON) instead of free text. Enables granular progress tracking in dashboard and targeted retry on specific sub-tasks.
Current State
planPhase()returns free text planPlan
{ tasks: [{ id, title, description, dependencies }] }planPhase()Files
src/core/pipeline.tssrc/storage/schema.ts(plan_tasks table)src/dashboard/src/pages/pipeline.tsx