Code review methodology
Skill sairam0424/MindForge/.mindforge/skills/code-review-methodology
MindForge: The Enterprise Agentic Framework for Claude Code & Antigravity. High-performance autonomous execution, wave-parallelism, and multi-tier governance for production-grade AI engineering.
npx -y skills add sairam0424/MindForge --skill code-review-methodologyAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
6.5 KB, as published. Nobody here has run it
Skill — Code Review Methodology
When this skill activates
Any task involving establishing code review practices, creating review checklists, defining PR standards, improving review feedback quality, or performing a structured review.
Mandatory actions when this skill is active
Before starting a review
- Check PR size — if >800 lines, request the author split it.
- Read the PR description to understand intent before reading code.
- Identify the review depth needed (critical path = deep, config = surface).
During review
- Review in priority order: correctness → security → performance → readability → style.
- Categorize every comment (blocking, suggestion, question, praise).
- Ask "What about X?" not "You should X."
- Limit blocking comments to actual blockers — save nitpicks for suggestions.
After review
- Summarize overall assessment in the review summary.
- State clearly: Approve, Request Changes, or Comment.
- If Request Changes, list the specific blocking items.
Review priority matrix
| Priority | Category | Examples |
|---|---|---|
| 1 (Critical) | Correctness | Logic bugs, data loss, race conditions |
| 2 (High) | Security | Auth bypass, injection, secret exposure |
| 3 (Medium) | Performance | N+1 queries, missing indexes, memory leaks |
| 4 (Low) | Readability | Unclear names, missing comments, complex nesting |
| 5 (Minimal) | Style | Formatting, import order, bracket placement |
Focus 80% of review effort on priorities 1-3. Style issues should be handled by linters, not humans.
PR sizing guidelines
| Size | Lines Changed | Review Time | Quality |
|---|---|---|---|
| XS | <50 | 5 min | Excellent |
| S | 50-200 | 15 min | Good |
| M | 200-400 | 30 min | Acceptable |
| L | 400-800 | 60 min | Risky |
| XL | >800 | ??? | Split it |
Rules:
- Ideal PR: <400 lines of meaningful changes (exclude generated code, lockfiles).
- If a PR is large, split into: refactoring prep → core change → cleanup.
- One logical change per PR. "While I was here" changes go in separate PRs.
Comment types
Blocking (must fix before merge)
[blocking] This SQL query is vulnerable to injection.
Use parameterized queries: `db.query('SELECT * FROM users WHERE id = $1', [id])`
Suggestion (consider, but not required)
[suggestion] Consider extracting this into a helper function —
it appears three times across this file and `utils.ts`.
Question (help me understand)
[question] What happens if `user` is null here?
I don't see a null check upstream.
Praise (reinforce good patterns)
[praise] Great use of the builder pattern here —
much cleaner than the previous imperative approach.
LGTM criteria
A PR is ready to merge when ALL of these are true:
- No blocking comments remain unresolved.
- Tests exist for the change (unit + integration where appropriate).
- CI pipeline passes (lint, type check, tests, build).
- Documentation updated if public API or behavior changed.
- No TODOs added without a linked issue/ticket.
- PR title and description accurately describe the change.
Review depth by change type
Deep Review (read every line, trace data flow)
- Auth/security code
- Payment/billing logic
- Data migrations
- Public API changes
- Core business logic
Standard Review (understand intent, spot issues)
- New features
- Bug fixes
- Internal refactoring
- Test additions
Surface Review (sanity check, trust CI)
- Dependency updates (check changelog, breaking changes)
- Config changes (verify values are correct)
- Documentation updates (check accuracy)
- Generated code (verify generator config, spot-check output)
Feedback style guide
Do
- "What about handling the case where X is empty?"
- "Nice pattern — this is cleaner than the previous approach."
- "Could you add a comment explaining why this timeout is 30s?"
- "I think there's an edge case: [describe scenario]"
Don't
- "You should use X instead." (prescriptive without context)
- "This is wrong." (unconstructive)
- "Why didn't you just do X?" (implies incompetence)
- "Nit: [style preference]" on every other line (use a linter)
Principles
- Assume the author had a reason. Ask before suggesting alternatives.
- Be specific: "line 42 could throw if
datais null" not "error handling is missing." - Offer solutions with your criticism — show a better approach.
- Praise patterns you want to see more of (positive reinforcement works).
Common things to check
Correctness
- Off-by-one errors in loops and ranges.
- Null/undefined handling on external data.
- Race conditions in async code.
- Error paths — what happens when things fail?
Security
- User input flows to SQL/HTML/shell without sanitization?
- Auth checks on every protected endpoint?
- Secrets hardcoded or logged?
- CORS/CSRF properly configured?
Performance
- N+1 queries in loops?
- Missing database indexes for query patterns?
- Unbounded data fetches (no LIMIT)?
- Expensive operations in hot paths?
Maintainability
- Will the next developer understand this in 3 months?
- Are there tests to catch regressions?
- Is the abstraction level consistent?
- Are error messages actionable?
Anti-patterns to avoid
- Rubber-stamping (approving without reading — defeats the purpose).
- Nitpick storms (10 style comments on a 20-line PR — use a linter).
- Gatekeeping (blocking for subjective preferences, not objective issues).
- Drive-by reviews (leaving one comment, never returning for follow-up).
- "I would have done it differently" without identifying an actual problem.
- Reviewing only the diff, not the context (the bug might be in surrounding code).
Self-check before task completion
Before marking a task done when this skill was active:
- Reviewed in priority order (correctness → security → performance → readability)?
- Every comment categorized (blocking/suggestion/question/praise)?
- No nitpicks marked as blocking?
- Summary provided with clear approve/request-changes verdict?
- Feedback is specific, constructive, and offers solutions?
- PR size is within guidelines (or split requested)?
Gives 0 of the 12 instructions most code review skills give
Counted across 610 of the 674 authors here whose files we hold, read 2026-08-06
- push back with technical reasoning if wrongin 60 of 610, across 24 files
- ask for clarification on unclear itemsin 51 of 610, across 16 files
- fix critical issues immediatelyin 45 of 610, across 29 files
- implement one item at a timein 45 of 610, across 11 files
- group findings by severityin 44 of 610, across 43 files
- verify feedback against the codebasein 42 of 610, across 8 files
- dispatch a code reviewer subagentin 39 of 610, across 23 files
- fix important issues before proceedingin 37 of 610, across 22 files
- test each fix individuallyin 35 of 610, across 7 files
- reply in github comment threadsin 33 of 610, across 5 files
- check for security vulnerabilitiesin 31 of 610, across 27 files
- factualize corrections without over-explainingin 30 of 610, across 2 files
Said here and by no other author read
- review in priority order: correctness then security
- categorize every comment left
- phrase suggestions as questions
- limit blocking comments to actual blockers
- state clear verdict
- list specific blocking items if requesting changes
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once.