Skip to content

Spec Completion Review

/flow-next:spec-completion-review confirms that, taken together, the implementations of every task in a spec actually satisfy the acceptance criteria.

This is not a code-quality review. That belongs to /flow-next:impl-review. Completion review answers one question: did the combined work meet the spec?

Run completion-review when every task in a spec is marked done, after any per-task /flow-next:impl-review has shipped, and before /flow-next:make-pr opens the PR. The reviewer re-reads the spec and verifies that the combined diff covers every R-ID — gaps that no individual task fully owned surface here.

Specifically:

  • Long-running spec where individual tasks were reviewed in isolation but no one checked the whole.
  • Spec where task descriptions drifted away from the original acceptance criteria during execution.
  • Any non-trivial spec before opening a PR for human review.

The work loop offers to run this automatically when all tasks complete. You can also invoke it manually at any time.

  • Every R-ID in the spec maps to evidence in the diff or the committed code.
  • No acceptance criterion is missing, half-implemented, or quietly dropped.
  • Boundaries and non-goals are respected.
  • Decisions captured during implementation are consistent with the spec’s decision context.

If an R-ID has no evidence, the review surfaces it as a gap — not as a stylistic finding.

Same priority as the other review skills:

  1. --review=rp|codex|copilot|none.
  2. FLOW_REVIEW_BACKEND.
  3. .flow/config.jsonreview.backend.
  4. Hard error if nothing is configured.
VerdictMeaning
SHIPEvery R-ID covered. Safe to PR.
NEEDS_WORKOne or more R-IDs missing or under-delivered. Findings cite the R-ID and the gap.

A NEEDS_WORK verdict often means a new task, not a rewrite. Use /flow-next:plan or flowctl task create to add the missing work, then re-run.

A per-task review can confidently SHIP a task that delivered exactly what its description asked for, even when the task description itself missed something the spec required. Completion review re-grounds on the spec, not on the task list, so spec-level gaps stop hiding behind passing task reviews.

Terminal window
/flow-next:make-pr <spec-id>