with one click
plan-reviewer
Review implementation plans, PR specifications, and feature documentation to ensure acceptance criteria are testable, validation is complete, and integration risks are surfaced before coding begins.
Menu
Review implementation plans, PR specifications, and feature documentation to ensure acceptance criteria are testable, validation is complete, and integration risks are surfaced before coding begins.
| name | plan-reviewer |
| description | Review implementation plans, PR specifications, and feature documentation to ensure acceptance criteria are testable, validation is complete, and integration risks are surfaced before coding begins. |
At activation, announce the skill name and scope in one line. Example: [plan-reviewer] reviewing .quest/example/phase_01_plan/plan.md.
See .skills/review-anti-patterns.md for the shared rule set.
Before reviewing details, confirm the plan includes these minimum inputs. If any are missing, request edits to the plan rather than guessing.
Review implementation plans, PR specifications, and feature documentation before coding begins.
This skill focuses on:
It is designed to produce actionable deltas, not a perfect plan.
Use this skill when reviewing:
Do not use this skill for:
A plan review is “done” when:
Every acceptance criterion is testable
Each acceptance criterion maps to at least one validation step.
Validation is complete enough to start coding
Manual validation covers key scenarios, and automated tests are specified or explicitly deferred.
Integration points are explicit and validated
Anything the change touches has a corresponding verification step.
Open questions are documented
Any ambiguity is called out as a decision, not silently assumed.
Top risks are listed with mitigations
At least the top 3 risks are identified and tied to validation.
Once these five conditions are met, stop expanding.
For each acceptance criterion, check:
Common gaps to flag
Rule: Do not invent new product requirements.
Only make existing requirements testable, or flag them as ambiguous.
Manual validation should cover:
Manual validation steps should include:
Convert vague testing statements into explicit expectations:
For the core user-visible behavior, require an exact-workflow regression/e2e/integration expectation. It must match the reported mode, host/shell, file state, and interaction sequence. Flag plans that rely only on nearby happy-path tests as Must fix.
For behavior visible in both the hosted browser and desktop app, require coverage for both paths or a concrete out-of-scope explanation.
Examples:
Naming guidance Use descriptive names, consistent with existing patterns:
test_create_resource_when_valid_returns_201()test_create_resource_when_missing_field_returns_400()test_service_retries_on_timeout_then_fails()List the systems touched by this change, then for each one specify:
Examples of integration points:
Outcome: a short “integration validation checklist” tied to the plan.
Use these checklists when the plan includes the relevant domain.
Verify:
Add validations:
Verify:
Add validations:
Verify:
Add validations:
Verify:
Add validations:
Verify:
Add validations:
For each major risk, record:
Example:
Keep this list short: top 3 to 5 risks.
Use this structure by default:
# Plan Review: [Feature Name]
## 1. Readiness Verdict
- Verdict: ✅ Ready to implement / 🟡 Ready after fixes / 🔴 Not ready
- Why: [1 to 3 bullets]
## 2. Open Questions To Resolve Before Coding (Decisions needed)
- [ ] Item 1
- [ ] Item 2
## 3. Open Requirements
### Must resolve before coding (blocking)
- Numbered findings in current-review order: `[N] Must fix - plan.md:section - acceptance criterion is missing, ambiguous, or untestable`
### Resolve during implementation (non-blocking)
- Numbered findings in current-review order: `[N] Should fix - plan.md:section - the WHAT is clear, but the exact HOW is an implementation detail`
- Example: "a test seam is needed for year injection" is non-blocking if the AC already says "rejects non-2026 year before writes"
- Example: "which exact mock library to use" is non-blocking
Finding numbers are review-local indices. Use `[N]` format for every finding so the planner, arbiter, and builder can refer to findings unambiguously.
## 4. Validation Plan Summary
### Manual
- Scenario: ...
- [ ] Item 1
- [ ] Item 2
...
- Scenario: ...
...
### Automated
- Unit: ...
- [ ] Item 1
- [ ] Item 2
...
- Integration: ...
- [ ] Item 1
- [ ] Item 2
...
- UI (if applicable): ...
- [ ] Item 1
- [ ] Item 2
...
## 5. Top Risks and Mitigations
- Risk: ...
- Impact: ...
- Likelihood: ...
- Mitigation: ...
If the reviewer requests a full deep dive, expand into:
Requirement: For each Acceptance Criterion, provide at least one explicit example test case when feasible. If a criterion cannot be reasonably automated, mark it as Deferred and include the reason and what manual validation will cover.
When a test approach requires codebase investigation to determine the mechanism (e.g., how to inject a test seam, which mock strategy to use), classify it as "resolve during implementation" rather than blocking — as long as the plan states the acceptance criterion the test must satisfy.
Review actual code implementations (Python, JavaScript, TypeScript, React) for correctness, maintainability, security hygiene, and adherence to project patterns. Use when reviewing pull requests to ensure code quality, proper error handling, adequate test coverage mapped to acceptance criteria, and alignment with architecture boundaries and review standards.
Implement an approved implementation plan step by step, producing small reviewable changes, mapping code/tests to acceptance criteria, and maintaining a lightweight decision log. Use when the plan/spec is already agreed and you want disciplined execution.
Review local staged and unstaged tracked-file changes before committing or before a pull request exists. Use when the user invokes /pre-commit-review, asks for a pre-commit review, asks to review local changes before commit, or wants a local working-tree review before a PR exists.
Adversarial interview against a plan, design, or write-up — one question at a time, with a recommended answer attached to each — to surface contradictions, hidden assumptions, and unresolved tradeoffs before they ship. Use when the user types /sharpen, says "sharpen this", "stress-test this", "find the holes", "challenge my plan", or wants to confirm shared understanding before locking a decision. Also invoked by Quest's plan presentation menu.
Push a draft PR and iterate until CI passes and review comments are resolved, then mark ready for review. Handles the full lifecycle of getting a PR merged with inline-first review handling.
Review local staged plus unstaged tracked-file changes before commit. Use when the user invokes $pre-commit-review, asks for a pre-commit review, asks to review local changes before commit, or wants a local working-tree review before a PR exists.