name: wf-review-breakdown description: Validate a task breakdown for correctness — check dependency ordering, task sizing, gap coverage, and boundary conflicts. Use after wf-spec-breakdown to catch issues before implementation. argument-hint: <spec-file.md or task-folder/> allowed-tools: Read, Grep, Glob, Agent, Bash(ls *)
Review Task Breakdown
Validate a task breakdown produced by /wf-spec-breakdown before starting
implementation. Catch structural issues that would cause failures mid-execution.
Step 0: Parse arguments
Extract the spec file path or task folder from the first token. If given a spec
file, locate its child spec directory (sibling directory with matching name,
e.g., specs/foundations/sandbox-backends/ for sandbox-backends.md). If given
a directory, locate the parent spec (the .md file in the containing directory
whose name matches the directory).
Step 1: Load the breakdown
- Read the parent spec in full. Parse its YAML frontmatter to extract
title,status,track,depends_on,affects,effort. - Read every child spec file in the subdirectory. Parse each child's YAML
frontmatter — extract
title,status,track,depends_on,affects,effort,dispatched_task_id. - Read
specs/README.mdfor track context and cross-spec dependencies.
Step 2: Check dependency correctness
For each child spec's depends_on list in its YAML frontmatter:
- Verify every path in
depends_onresolves to an existing spec file. - Verify no self-dependency (a spec cannot list itself in
depends_on). - Verify no circular dependencies in the DAG (topological sort must succeed).
- Verify dependency direction: if spec B modifies a function that spec A creates,
B must depend on A. Cross-reference
affectslists to catch this. - Flag missing dependencies: if two child specs have overlapping
affectspaths, check whether they need ordering. - Verify
depends_onedges that cross subtrees or tracks are intentional and the target spec exists.
Report: list of dependency issues, or "Dependencies: OK".
Step 3: Check task sizing
For each child spec, estimate scope by examining the affects list from
frontmatter and the "What to do" section in the body:
- Read each file in
affectsto check its size and complexity. - Cross-check
effort(small/medium/large/xlarge) against actual scope:smallwith 6+ files inaffectsis suspicious.xlargewith only 1-2 files may be over-estimated.
- Flag specs whose "What to do" has fewer than 3 steps as potentially too small (might be foldable into a sibling spec).
- Flag specs that create new packages AND refactor existing code (should usually be split).
- Verify leaf specs are small enough for one agent task (2-5 files, one clear goal) per the spec document model.
Report: list of sizing concerns, or "Sizing: OK".
Step 4: Check spec coverage
Compare the spec's implementation plan against the task breakdown:
- For each item in the spec (sections, bullet points, requirements), check that at least one task covers it.
- Flag spec items with no corresponding task.
- Flag tasks that don't trace back to any spec item (scope creep).
Report: uncovered spec items and untraceable tasks, or "Coverage: OK".
Step 5: Check boundary conflicts
For each pair of child specs that have overlapping affects paths in their
frontmatter:
- Check that their "Boundaries" sections don't overlap (both claiming to modify the same function or type).
- Check that the later spec's "What to do" accounts for changes made by the
earlier spec (follow the
depends_onordering). - Flag cases where two independent specs (no
depends_onedge between them) shareaffectsentries — they may conflict during parallel execution.
Report: list of boundary conflicts, or "Boundaries: OK".
Step 6: Check test completeness
For each task:
- Verify the "Tests" section exists and is non-empty.
- Check that test cases cover the "Goal" (not just the mechanics of "What to do").
- Flag tasks that modify existing behavior but only test new behavior.
Report: list of test gaps, or "Tests: OK".
Step 7: Verify the critical path
Compute the critical path through the dependency graph:
- Identify the longest chain of sequential tasks.
- Flag if the critical path has more than 6 tasks (may indicate missing parallelism opportunities).
- Identify tasks with no dependents that could be reordered earlier.
Report: critical path length, parallelism opportunities.
Step 8: Summary
Present a structured report:
## Breakdown Review: <spec-name>
Tasks: N total, N phases
Critical path: N tasks deep
Parallelism: up to N tasks can run concurrently
### Issues Found
- [ ] <issue description with task references>
- [ ] <issue description>
### Recommendations
- <suggestion for improvement>
### Verdict: PASS / NEEDS REVISION
If issues are found, list specific remediation steps. Do NOT modify any files —
this skill is read-only. The user decides whether to revise manually or re-run
/wf-spec-breakdown with feedback.