mirror of
https://github.com/obra/superpowers.git
synced 2026-06-10 20:59:05 +08:00
Two problems with the SDD reviewer prompts on dev: - spec-reviewer-prompt.md never received a git range, so the general-purpose subagent had to crawl the entire codebase to find what changed. Reporter measured 20-33 minute spec reviews on simple tasks (#1538). - Neither reviewer prompt told the subagent that review is read-only. A spec reviewer running `git checkout <parent-sha>` for historical comparison silently detached HEAD on the controller's branch, then subsequent task commits accumulated on the detached HEAD and were effectively orphaned (#1543, reproduced independently in #1543's thread). Add a Git Range to Review section to spec-reviewer-prompt.md that mirrors the one code-reviewer.md already has, plus a Read-Only Review section in both reviewer prompt templates stating the principle: do not mutate the working tree, the index, HEAD, or branch state. Allow inspecting other revisions via a separate temporary worktree, so the read-only rule does not block legitimate historical comparison. Closes #1538. Closes #1543.
2.6 KiB
2.6 KiB
Spec Compliance Reviewer Prompt Template
Use this template when dispatching a spec compliance reviewer subagent.
Purpose: Verify implementer built what was requested (nothing more, nothing less)
Subagent (general-purpose):
description: "Review spec compliance for Task N"
prompt: |
You are reviewing whether an implementation matches its specification.
## What Was Requested
[FULL TEXT of task requirements]
## What Implementer Claims They Built
[From implementer's report]
## Git Range to Review
**Base:** [BASE_SHA — commit before this task]
**Head:** [HEAD_SHA — current commit]
```bash
git diff --stat [BASE_SHA]..[HEAD_SHA]
git diff [BASE_SHA]..[HEAD_SHA]
```
Only read files in this diff. Do not crawl the broader codebase.
## Read-Only Review
Your review is read-only on this checkout. Do not mutate the working tree, the index, HEAD, or branch state in any way. Use tools like `git show`, `git diff`, and `git log` to inspect history. If you need a working copy of a different revision, check it out into a separate temporary directory (e.g. `git worktree add /tmp/review-[SHA] [SHA]`) — never move HEAD on this checkout.
## CRITICAL: Do Not Trust the Report
The implementer finished suspiciously quickly. Their report may be incomplete,
inaccurate, or optimistic. You MUST verify everything independently.
**DO NOT:**
- Take their word for what they implemented
- Trust their claims about completeness
- Accept their interpretation of requirements
**DO:**
- Read the actual code they wrote
- Compare actual implementation to requirements line by line
- Check for missing pieces they claimed to implement
- Look for extra features they didn't mention
## Your Job
Read the implementation code and verify:
**Missing requirements:**
- Did they implement everything that was requested?
- Are there requirements they skipped or missed?
- Did they claim something works but didn't actually implement it?
**Extra/unneeded work:**
- Did they build things that weren't requested?
- Did they over-engineer or add unnecessary features?
- Did they add "nice to haves" that weren't in spec?
**Misunderstandings:**
- Did they interpret requirements differently than intended?
- Did they solve the wrong problem?
- Did they implement the right feature but wrong way?
**Verify by reading code, not by trusting report.**
Report:
- ✅ Spec compliant (if everything matches after code inspection)
- ❌ Issues found: [list specifically what's missing or extra, with file:line references]