Receiving Code Review
Overview
Code review requires technical evaluation, not emotional performance.
Core principle: Verify before implementing. Ask before assuming. Technical correctness over social comfort.
The Response Pattern
WHEN receiving code review feedback: 1. READ: Complete feedback without reacting 2. UNDERSTAND: Restate requirement in own words (or ask) 3. VERIFY: Check against codebase reality 4. EVALUATE: Technically sound for THIS codebase? 5. RESPOND: Technical acknowledgment or reasoned pushback 6. IMPLEMENT: One item at a time, test each
Forbidden Responses
NEVER:
- •"You're absolutely right!"
- •"Great point!" / "Excellent feedback!"
- •"Let me implement that now" (before verification)
- •Any performative agreement
INSTEAD:
- •Restate the technical requirement
- •Ask clarifying questions
- •Push back with technical reasoning if wrong
- •Just start working (actions > words)
Handling Unclear Feedback
IF any item is unclear: STOP - do not implement anything yet ASK for clarification on unclear items WHY: Items may be related. Partial understanding = wrong implementation.
Example:
Reviewer: "Fix items 1-6" You understand 1,2,3,6. Unclear on 4,5. ❌ WRONG: Implement 1,2,3,6 now, ask about 4,5 later ✅ RIGHT: "I understand items 1,2,3,6. Need clarification on 4 and 5 before proceeding."
Source-Specific Handling
From User/Human Partner
- •Trusted - implement after understanding
- •Still ask if scope unclear
- •No performative agreement
- •Skip to action or technical acknowledgment
From External Reviewers / Subagents
BEFORE implementing: 1. Check: Technically correct for THIS codebase? 2. Check: Breaks existing functionality? 3. Check: Reason for current implementation? 4. Check: Works on all platforms/versions? 5. Check: Does reviewer understand full context? IF suggestion seems wrong: Push back with technical reasoning IF can't easily verify: Say so: "I can't verify this without [X]. Should I [investigate/ask/proceed]?" IF conflicts with user's prior decisions: Stop and discuss with user first
YAGNI Check for "Professional" Features
IF reviewer suggests "implementing properly": grep codebase for actual usage IF unused: "This endpoint isn't called. Remove it (YAGNI)?" IF used: Then implement properly
Implementation Order
FOR multi-item feedback:
1. Clarify anything unclear FIRST
2. Then implement in this order:
- Blocking issues (breaks, security)
- Simple fixes (typos, imports)
- Complex fixes (refactoring, logic)
3. Test each fix individually
4. Verify no regressions
When To Push Back
Push back when:
- •Suggestion breaks existing functionality
- •Reviewer lacks full context
- •Violates YAGNI (unused feature)
- •Technically incorrect for this stack
- •Legacy/compatibility reasons exist
- •Conflicts with user's architectural decisions
How to push back:
- •Use technical reasoning, not defensiveness
- •Ask specific questions
- •Reference working tests/code
- •Involve user if architectural
Acknowledging Correct Feedback
When feedback IS correct:
✅ "Fixed. [Brief description of what changed]" ✅ "Good catch - [specific issue]. Fixed in [location]." ✅ [Just fix it and show in the code] ❌ "You're absolutely right!" ❌ "Great point!" ❌ "Thanks for catching that!" ❌ ANY gratitude expression
Why no thanks: Actions speak. Just fix it. The code itself shows you heard the feedback.
Gracefully Correcting Your Pushback
If you pushed back and were wrong:
✅ "You were right - I checked [X] and it does [Y]. Implementing now." ✅ "Verified this and you're correct. My initial understanding was wrong because [reason]. Fixing." ❌ Long apology ❌ Defending why you pushed back ❌ Over-explaining
State the correction factually and move on.
SuperSpec Integration
Spec Reviewer Feedback
When Spec Reviewer finds issues:
1. READ the specific issues found 2. VERIFY against Spec file 3. IF valid: Fix and provide evidence 4. IF questionable: Ask for clarification 5. NEVER just say "fixing now" without verification
Code Quality Reviewer Feedback
When Code Quality Reviewer finds issues:
1. READ issue classification (Critical/Important/Suggestion) 2. Critical + Important: Must fix 3. Suggestions: Optional 4. IF disagree with classification: Push back with reasoning 5. Fix one at a time, test each
TDD Violation Feedback
If reviewer says TDD wasn't followed:
1. CHECK: Do you have failing test evidence? 2. IF NO: You must restart with proper TDD 3. IF YES: Show the evidence 4. Don't argue - evidence speaks
Common Mistakes
| Mistake | Fix |
|---|---|
| Performative agreement | State requirement or just act |
| Blind implementation | Verify against codebase first |
| Batch without testing | One at a time, test each |
| Assuming reviewer is right | Check if breaks things |
| Avoiding pushback | Technical correctness > comfort |
| Partial implementation | Clarify all items first |
| Can't verify, proceed anyway | State limitation, ask for direction |
Red Flags
Never:
- •Agree without understanding
- •Implement without verifying
- •Skip testing after each fix
- •Ignore technical concerns to be agreeable
- •Proceed with unclear items
Always:
- •Restate to confirm understanding
- •Verify against actual code
- •Test each change
- •Push back if technically wrong
- •Ask for clarification when needed
Integration
Called by:
- •
superspec:execute- After Spec/Quality review - •Any code review interaction
Pairs with:
- •
verification-before-completion- Verify fixes work - •
tdd- Test each fix
The Bottom Line
External feedback = suggestions to evaluate, not orders to follow.
Verify. Question. Then implement.
No performative agreement. Technical rigor always.