05-review
05 review
Review a change set against the prd with an explicit verdict and a clear list of issues and risks.
Guardrails
- Default to review/report only. Do not change code unless explicitly asked.
- Only mark Merged when the PR is actually merged (verified via
ghor explicitly confirmed). - Do not invent test results or reproduction steps; run them or ask for evidence.
Workflow
-
Gather inputs
- prd path (e.g.
tasks/f-##-<slug>.md) - review mode:
- PR mode (preferred): PR URL/number
- Local mode: base branch (default:
main)
- prd path (e.g.
-
Collect context
- PR mode:
gh pr view --json url,title,body,baseRefName,headRefName,files,additions,deletionsgh pr diffgh pr checks
- Local mode:
git diff "<base>...HEAD"git log "<base>..HEAD" --oneline
- PR mode:
-
Review against the prd
- Confirm the change matches the prd goals and acceptance criteria.
- Confirm non-goals are not being implemented.
- Confirm edge cases and error states are handled.
-
Review checklist
- Correctness:
- boundary values, null/empty inputs, error paths
- idempotency / retries (if applicable)
- concurrency / ordering assumptions (if applicable)
- timezones / pagination / encoding (if applicable)
- Security best practices (as applicable to the change):
- authn/authz checks
- input validation + output encoding (XSS/injection risk)
- CSRF/SSRF/path traversal/file upload handling (if relevant)
- secrets handling (no tokens/keys), safe logging (no PII leakage)
- dependency changes (new packages, supply-chain risk)
- Tests:
- happy path + key negative cases
- regression coverage for touched areas
- Maintainability:
- clear naming, small functions, understandable control flow
- comments/docs only where they add durable clarity
- Correctness:
-
Write the review report
-
Use this structure:
Verdict: LGTM | Request changes Blockers (must fix): - … Suggestions (nice to have): - … Questions: - … Security notes: - … Regression risks / watch-outs: - … Manual QA checklist: - …
-
-
Update tracking
- If verdict is LGTM:
- In the prd
## Execution Status, check Reviewed.
- In the prd
- If in PR mode, detect whether the PR is merged:
gh pr view --json mergedAt -q .mergedAt
- If merged:
- In the prd
## Execution Status, check Merged. - Rename the prd file with a
done-prefix (e.g.,tasks/f-01-foo.md→tasks/done-f-01-foo.md). - Update
tasks/todo.md:- update the feature’s
prd:path to the renamed file - update the feature’s status indicator from
🔨to✅
- update the feature’s
- In the prd
- If verdict is LGTM:
-
Next
- Run
06-memoryto capture durable notes: what shipped, risks, and follow-ups.
- Run
Output
- Review report (using the template above).
- What tracking was updated (prd checkboxes, renamed prd path,
tasks/todo.mdstatus), if any.
More from kelvinz/cobb
compact
Compact `tasks/context.md` by summarising older completed history while preserving active context. Triggers: compact context, prune context log, trim context.
30commit
Create atomic user-approved commits with `feat`/`fix`/`chore` titles. Include inline PRD checklist and context updates per atomic commit. Finalise branch merge/cleanup when requested. Triggers: commit changes, split commits, finalise branch, commit message.
27review
Review the current branch changes for correctness, security, tests, and scope, then return a clear go/no-go decision. Triggers: review, readiness check, pre-commit review, pre-finalise review.
26implement
Implement an existing PRD (`Type: feat`/`fix`/`chore`), update tests/checks, and mark completed PRD checklist items. Triggers: implement prd, build feature from prd, execute prd checklist.
26design
Router-first workflow for high-craft design execution across four modes: ui, ux, motion, and imagery. Use when designing or refining interfaces, structuring and auditing UX/usability/accessibility, implementing or specifying interaction motion, or producing static visual artifacts (.png/.pdf) with a matching philosophy note. Triggers: design ui, improve ux flow, run design audit, add transitions, reduce motion issues, create visual imagery, craft poster composition.
20memory
Maintain durable project memory in `tasks/memory.md` (state, decisions, milestones, gotchas), inline during other workflows or standalone for cleanup/backfill. Triggers: update memory.md, decision log, record project context.
17