requesting-code-review
Use when completing tasks, implementing major features, or before merging to verify work meets requirements - dispatches code-reviewer subagent, handles retries and timeouts, manages review-fix loop until zero issues
What this skill does
# Requesting Code Review
Dispatch ed3d-plan-and-execute:code-reviewer subagent to catch issues before they cascade.
**Core principle:** Review early, review often. Fix ALL issues before proceeding.
## Session Isolation
**If the calling context provides a SCRATCHPAD_DIR, pass it to code-reviewer.**
This prevents collisions when multiple planning/execution sessions run in parallel. The SCRATCHPAD_DIR is a namespaced temp directory (e.g., `/tmp/plan-2025-01-24-feature-a7f3b2/`) that the code-reviewer uses for any scratch files.
## When to Request Review
**Mandatory:**
- After each task in plan execution
- After completing major feature
- Before merge to main
**Optional but valuable:**
- When stuck (fresh perspective)
- Before refactoring (baseline check)
- After fixing complex bug
## The Review Loop
The review process is a loop: review → fix → re-review → until zero issues.
```
┌──────────────────────────────────────────────────┐
│ │
│ Dispatch code-reviewer │
│ │ │
│ ▼ │
│ Issues found? ──No──► Done (proceed) │
│ │ │
│ Yes │
│ │ │
│ ▼ │
│ Dispatch bug-fixer │
│ │ │
│ ▼ │
│ Re-review with prior issues ◄──────────────────┘
│
└──────────────────────────────────────────────────┘
```
**Exit condition:** Zero issues, or issues accepted per your workflow's policy.
## Step 1: Initial Review
**Get git SHAs:**
```bash
BASE_SHA=$(git rev-parse HEAD~1) # or commit before task
HEAD_SHA=$(git rev-parse HEAD)
```
**Dispatch code-reviewer subagent:**
```
<invoke name="Task">
<parameter name="subagent_type">ed3d-plan-and-execute:code-reviewer</parameter>
<parameter name="description">Reviewing [what was implemented]</parameter>
<parameter name="prompt">
Use template at requesting-code-review/code-reviewer.md
WHAT_WAS_IMPLEMENTED: [summary of implementation]
PLAN_OR_REQUIREMENTS: [task/requirements reference]
BASE_SHA: [commit before work]
HEAD_SHA: [current commit]
DESCRIPTION: [brief summary]
SCRATCHPAD_DIR: [session-isolated temp dir, or omit if not applicable]
</parameter>
</invoke>
```
**Code reviewer returns:** Strengths, Issues (Critical/Important/Minor), Assessment
## Step 2: Handle Reviewer Response
### If Zero Issues
All categories empty → proceed to next task.
### If Any Issues Found
Regardless of category (Critical, Important, or Minor), dispatch bug-fixer:
```
<invoke name="Task">
<parameter name="subagent_type">ed3d-plan-and-execute:task-bug-fixer</parameter>
<parameter name="description">Fixing review issues</parameter>
<parameter name="prompt">
Fix issues from code review.
Code reviewer found these issues:
[list all issues - Critical, Important, and Minor]
Your job is to:
1. Understand root cause of each issue
2. Apply fixes systematically (Critical → Important → Minor)
3. Verify with tests/build/lint
4. Commit your fixes
5. Report back with evidence
Work from: [directory]
Fix ALL issues — including every Minor issue. The goal is ZERO issues on re-review.
Minor issues are not optional. Do not skip them.
</parameter>
</invoke>
```
After fixes, proceed to Step 3.
## Step 3: Re-Review After Fixes
**CRITICAL:** Track prior issues across review cycles.
```
<invoke name="Task">
<parameter name="subagent_type">ed3d-plan-and-execute:code-reviewer</parameter>
<parameter name="description">Re-reviewing after fixes (cycle N)</parameter>
<parameter name="prompt">
Use template at requesting-code-review/code-reviewer.md
WHAT_WAS_IMPLEMENTED: [from bug-fixer's report]
PLAN_OR_REQUIREMENTS: [original task/requirements]
BASE_SHA: [commit before this fix cycle]
HEAD_SHA: [current commit after fixes]
DESCRIPTION: Re-review after bug fixes (review cycle N)
SCRATCHPAD_DIR: [session-isolated temp dir, or omit if not applicable]
PRIOR_ISSUES_TO_VERIFY_FIXED:
[list all outstanding issues from previous reviews]
Verify:
1. Each prior issue listed above is actually resolved
2. No regressions introduced by the fixes
3. Any new issues in the changed code
Report which prior issues are now fixed and which (if any) remain.
</parameter>
</invoke>
```
**Tracking prior issues:**
- When re-reviewer explicitly confirms fixed → remove from list
- When re-reviewer doesn't mention an issue → keep on list (silence ≠ fixed)
- When re-reviewer finds new issues → add to list
Loop back to Step 2 if any issues remain.
## Handling Failures
### Operational Errors
If reviewer reports operational errors (can't run tests, missing scripts):
1. **STOP** - do not continue
2. Report to human
3. When told to continue, re-execute same review
### Timeouts / Empty Response
Usually means context limits. Retry with focused scope:
**First retry:** Narrow to changed files only:
```
FOCUSED REVIEW - Context was too large.
Review ONLY the diff between BASE_SHA and HEAD_SHA.
Focus on: [list only files actually modified]
Skip: broad architectural analysis, unchanged files, tangential concerns.
WHAT_WAS_IMPLEMENTED: [summary]
PLAN_OR_REQUIREMENTS: [reference]
BASE_SHA: [sha]
HEAD_SHA: [sha]
```
**Second retry:** Split into multiple smaller reviews (one per file or logical group).
**Third failure:** Stop and ask human for help.
## Quick Reference
| Situation | Action |
|-----------|--------|
| Zero issues | Proceed |
| Any issues | Fix, re-review (or accept per workflow) |
| Operational error | Stop, report, wait |
| Timeout | Retry with focused scope |
| 3 failed retries | Ask human |
## Red Flags
**Never:**
- Skip review because "it's simple"
- Proceed with ANY unfixed issues (Critical, Important, OR Minor)
- Argue with valid technical feedback without evidence
- Rationalize skipping Minor issues ("they're just style", "we can fix later")
**Minor issues are NOT optional.** The code reviewer flagged them for a reason. Fix all of them. "Minor" means lower severity, not "ignorable."
**If reviewer wrong:**
- Push back with technical reasoning
- Show code/tests that prove it works
- Request clarification on unclear feedback
## Integration
**Called by:**
- executing-an-implementation-plan (after each task)
- finishing-a-development-branch (final review)
- Ad-hoc when you need a review
**Template location:** requesting-code-review/code-reviewer.md
Related in Code Review
gstack
IncludedFast headless browser for QA testing and site dogfooding. Navigate pages, interact with elements, verify state, diff before/after, take annotated screenshots, test responsive layouts, forms, uploads, dialogs, and capture bug evidence. Use when asked to open or test a site, verify a deployment, dogfood a user flow, or file a bug with screenshots. (gstack)
startup-due-diligence
IncludedLegal due diligence review for seed-stage and Series A startups (US, Delaware C-Corp focus). Supports both investor and founder perspectives. Capabilities include: (1) Interactive document review and issue spotting; (2) Document request list generation; (3) Cap table and SAFE/convertible note analysis; (4) Red flag identification with severity ratings; (5) Diligence report generation. TRIGGERS: due diligence, DD, startup investment, cap table review, Series A, seed round, investor diligence, legal review startup, SAFE analysis, convertible note, 409A, founder vesting.
interview-master
IncludedThis skill should be used when the user asks to "generate interview questions", "prepare for interview", "optimize resume", "conduct mock interview", "analyze git commits for resume", "generate resume from code", "review my resume", or mentions interview preparation, career assistance, or extracting project experience from git history. Provides comprehensive interview and career development guidance for both job seekers and interviewers.
fix-issue
IncludedFixes GitHub issues using parallel analysis agents for root cause investigation, code exploration, and regression detection. Reads issue context from gh CLI, searches codebase and memory for related patterns, generates a fix with tests, and links the resolution back to the issue via PR. Includes prevention analysis to avoid recurrence. Use when debugging errors, resolving regressions, fixing bugs, or triaging issues.
sf-apex
IncludedGenerates and reviews Salesforce Apex code with 150-point scoring. TRIGGER when: user writes, reviews, or fixes Apex classes, triggers, test classes, batch/queueable/schedulable jobs, or touches .cls/.trigger files. DO NOT TRIGGER when: LWC JavaScript (use sf-lwc), Flow XML (use sf-flow), SOQL-only queries (use sf-soql), or non-Salesforce code.
swift-development
IncludedComprehensive Swift development for building, testing, and deploying iOS/macOS applications. Use when Claude needs to: (1) Build Swift packages or Xcode projects from command line, (2) Run tests with XCTest or Swift Testing framework, (3) Manage iOS simulators with simctl, (4) Handle code signing, provisioning profiles, and app distribution, (5) Format or lint Swift code with SwiftFormat/SwiftLint, (6) Work with Swift Package Manager (SPM), (7) Implement Swift 6 concurrency patterns (async/await, actors, Sendable), (8) Create SwiftUI views with MVVM architecture, (9) Set up Core Data or SwiftData persistence, or any other Swift/iOS/macOS development tasks.