review-spec
Reviews plan and PRD, then gates readiness for implementation. Use when plan and PRD artifacts are ready for spec approval.
SKILL.mdskills/review-spec/SKILL.md
GitHubFollow feature-dev-aidd:aidd-core.
Steps
- Set active stage
review-plan, thenreview-prd; keep active feature in sync via canonical active-state runtime commands only. - Run plan readiness gate before verdict:
python3 ${CLAUDE_PLUGIN_ROOT}/skills/aidd-core/runtime/plan_review_gate.py --ticket <ticket>. - Canonical plan path for all checks and narrative is only
aidd/docs/plan/<ticket>.md; alias paths likeaidd/docs/plan/<ticket>.plan.mdare forbidden. - Run
python3 ${CLAUDE_PLUGIN_ROOT}/skills/aidd-core/runtime/prd_review.py --ticket <ticket>to refresh structured PRD report payload. - Gate PRD readiness with
python3 ${CLAUDE_PLUGIN_ROOT}/skills/aidd-flow-state/runtime/prd_check.py; block on failure. - Use the existing rolling context pack as review input; do not invoke standalone context-pack builder scripts from this stage.
- Run subagent
feature-dev-aidd:plan-reviewer. Treat its output as narrative review input only; if the plan gate already yields a terminal blocker, keep that blocker authoritative for the stage verdict. - Run subagent
feature-dev-aidd:prd-reviewerafter the plan-reviewer handoff whenever PRD artifacts remain readable; if the plan path is WARN-only, continue the PRD pass, but do not let narrative reviewers override gate/report payloads. - Persist PRD review report with
python3 ${CLAUDE_PLUGIN_ROOT}/skills/aidd-core/runtime/prd_review.py --ticket <ticket> --report aidd/reports/prd/<ticket>.json --require-readyfor READY-path validation. - Review-stage RLM policy: if RLM links are empty, the runtime performs bounded auto-heal (
rlm_links_build, then finalize probe) and returns WARN attribution with evidence instead of terminal block when review can continue. - Report payload (
aidd/reports/prd/<ticket>.json|.pack.json) is the source of truth for final verdict: READY is allowed only whenrecommended_status=ready; otherwise return WARN/BLOCKED with canonical next action on upstream PRD/plan fixes, then rerun/feature-dev-aidd:review-spec <ticket>. - If narrative text conflicts with gate/report payload, mark
WARN(review_spec_report_mismatch)and follow gate/report payload only. Proceed to implementationis forbidden whenrecommended_status != ready.- Runtime-path safety: execute only canonical runtime commands from this contract (
python3 ${CLAUDE_PLUGIN_ROOT}/skills/.../runtime/...). - Root-relative
/skills/...runtime paths are forbidden; use onlypython3 ${CLAUDE_PLUGIN_ROOT}/skills/.../runtime/....
Command contracts
python3 ${CLAUDE_PLUGIN_ROOT}/skills/aidd-core/runtime/prd_review.py
- When to run: as canonical review-spec stage entrypoint before PRD approval decisions.
- Inputs:
--ticket <ticket>plus active PRD/plan artifacts. - Outputs: normalized PRD review report payload; verdict decisions use report payload (
recommended_status) as source of truth. - Failure mode: non-zero exit when review inputs are incomplete or report validation fails; RLM links-empty path is handled as bounded auto-heal then WARN attribution.
- Next action: fix missing artifacts/review findings or unresolved RLM prerequisites and rerun the CLI.
python3 ${CLAUDE_PLUGIN_ROOT}/skills/aidd-core/runtime/plan_review_gate.py
- When to run: before the plan-reviewer narrative pass and before deciding whether the stage can continue on a WARN path.
- Inputs:
--ticket <ticket>and the canonical plan artifact. - Outputs: structured plan gate verdict used as an authoritative source for early-stop semantics.
- Failure mode: non-zero exit when the plan artifact is missing, invalid, or blocked by the gate contract.
- Next action: fix the plan blockers and rerun the gate before claiming review-spec readiness.
Notes
- Planning stage:
AIDD:ACTIONS_LOG: n/a.
Additional resources
- PRD review runtime: ../aidd-core/runtime/prd_review.py (when: review-spec gate behavior is unclear; why: confirm report contract and status mapping).