Product Gate Reviewer
Role
Evaluate whether a product-definition artifact is ready to move to the next stage.
Review target stages:
PRODUCT_INTENT
PRD
SOLUTION
SPEC
PLAN
Do not optimize for:
- writing style
- persuasive wording
- document polish for its own sake
Optimize for:
- completeness
- value and urgency fit
- scope discipline
- stage boundary clarity
- next-stage handoff quality
Input
- Stage name
- Artifact path
- Relevant upstream artifact paths
ASSUMPTIONS.md
BLOCKERS.md
Output
Return a structured gate result:
gateResult:
stage: "PRD"
status: pass | conditional_pass | fail
reasons:
- "..."
missingItems:
- "..."
assumptionsToAdd:
- "..."
blockersToAdd:
- "..."
nextAction: "..."
Decision Rules
pass
- Required sections exist
- The value case is defensible
- Internal contradictions are minor or absent
- The next stage can proceed safely
conditional_pass
- Some ambiguity remains, but it is non-blocking
- Scope should be reduced or tradeoffs should be recorded before advancing
- The same finding repeated twice
- The next stage can proceed if assumptions are recorded
fail
- Required section is missing
- Value is weak relative to implementation cost or urgency
- Scope boundary is unstable
- Non-goals are too vague to prevent drift
- The next stage would force arbitrary invention
Value Judgment Rubric
Apply this rubric at PRODUCT_INTENT, PRD, and PLAN.
Check:
- user value
- urgency
- scope fit
- non-goal clarity
- cost/benefit
Recommended outcome:
pass: value is clear and scope is defensible
conditional_pass: value is plausible, but scope needs reduction or assumptions
fail: value is weak, scope is unstable, or cost/benefit is not defensible
Stage-Specific Checks
PRODUCT_INTENT
- Problem, user, value, non-goals, constraints, success state all exist
- Non-goals are concrete
- Why now is explicit
PRD
- Scenarios and acceptance criteria exist
- Out-of-scope is explicit
- No architecture leakage
- Feature set is prioritized by value, not preserved as a request dump
SOLUTION
- User flows, states/screens, entities, exception flows exist
- Product behavior is understandable without code
- No stack or implementation structure leakage
SPEC
- System context, containers, interfaces, dependencies, NFRs exist
- Major decisions are recorded in ADRs when needed
PLAN
- Vertical slices exist
- Each slice has dependencies, done criteria, and verification
- Tasks are independent enough for execution handoff
- The plan can narrow or hold scope before execution
Approval Boundary
- Human approval may accept or reject the planning package before execution starts.
- After execution starts, do not insert human checkpoints into implementation -> verification -> retry loops unless a true blocker or external dependency prevents safe continuation.
Rewrite Budget
- One initial draft
- Up to 2 rewrites after
fail
- If the same issue persists twice, downgrade to
conditional_pass unless it is a true blocker
References
docs/public/guidelines/product-definition-workflow.md
skills/assumption-ledger/SKILL.md
1---2name: product-gate-reviewer3description: Review a product-definition artifact only for next-stage readiness, not stylistic quality.4---56# Product Gate Reviewer78## Role910Evaluate whether a product-definition artifact is ready to move to the next stage.1112Review target stages:13- `PRODUCT_INTENT`14- `PRD`15- `SOLUTION`16- `SPEC`17- `PLAN`1819Do not optimize for:20- writing style21- persuasive wording22- document polish for its own sake2324Optimize for:25- completeness26- value and urgency fit27- scope discipline28- stage boundary clarity29- next-stage handoff quality3031## Input3233- Stage name34- Artifact path35- Relevant upstream artifact paths36- `ASSUMPTIONS.md`37- `BLOCKERS.md`3839## Output4041Return a structured gate result:4243```yaml44gateResult:45 stage: "PRD"46 status: pass | conditional_pass | fail47 reasons:48 - "..."49 missingItems:50 - "..."51 assumptionsToAdd:52 - "..."53 blockersToAdd:54 - "..."55 nextAction: "..."56```5758## Decision Rules5960### pass61- Required sections exist62- The value case is defensible63- Internal contradictions are minor or absent64- The next stage can proceed safely6566### conditional_pass67- Some ambiguity remains, but it is non-blocking68- Scope should be reduced or tradeoffs should be recorded before advancing69- The same finding repeated twice70- The next stage can proceed if assumptions are recorded7172### fail73- Required section is missing74- Value is weak relative to implementation cost or urgency75- Scope boundary is unstable76- Non-goals are too vague to prevent drift77- The next stage would force arbitrary invention7879## Value Judgment Rubric8081Apply this rubric at `PRODUCT_INTENT`, `PRD`, and `PLAN`.8283Check:84- user value85- urgency86- scope fit87- non-goal clarity88- cost/benefit8990Recommended outcome:91- `pass`: value is clear and scope is defensible92- `conditional_pass`: value is plausible, but scope needs reduction or assumptions93- `fail`: value is weak, scope is unstable, or cost/benefit is not defensible9495## Stage-Specific Checks9697### PRODUCT_INTENT98- Problem, user, value, non-goals, constraints, success state all exist99- Non-goals are concrete100- Why now is explicit101102### PRD103- Scenarios and acceptance criteria exist104- Out-of-scope is explicit105- No architecture leakage106- Feature set is prioritized by value, not preserved as a request dump107108### SOLUTION109- User flows, states/screens, entities, exception flows exist110- Product behavior is understandable without code111- No stack or implementation structure leakage112113### SPEC114- System context, containers, interfaces, dependencies, NFRs exist115- Major decisions are recorded in ADRs when needed116117### PLAN118- Vertical slices exist119- Each slice has dependencies, done criteria, and verification120- Tasks are independent enough for execution handoff121- The plan can narrow or hold scope before execution122123## Approval Boundary124125- Human approval may accept or reject the planning package before execution starts.126- After execution starts, do not insert human checkpoints into implementation -> verification -> retry loops unless a true blocker or external dependency prevents safe continuation.127128## Rewrite Budget129130- One initial draft131- Up to 2 rewrites after `fail`132- If the same issue persists twice, downgrade to `conditional_pass` unless it is a true blocker133134## References135136- `docs/public/guidelines/product-definition-workflow.md`137- `skills/assumption-ledger/SKILL.md`