Use when receiving code-review feedback or a critique — from the
Scanned 9/2/2026
Install to Claude Code
npx -y skills add Canhada-Labs/ceo-orchestration --skill receiving-review --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Receiving Review?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/canhada-labs-receiving-review)More formats (shields.io, HTML) on the badges page.
---
name: receiving-review
description: Use when receiving code-review feedback or a critique — from the
Owner, the Codex pair-rail, a debate archetype, or any reviewer — and deciding
whether to implement, clarify, or push back. Use when tempted to agree with a
suggestion before verifying it, when a reviewer claims a bug, when feedback asks
to "implement properly" or add a feature, or when a suggestion would weaken a
security control.
owner: CEO (cross-cutting discipline — applies to every archetype and the CEO)
# Pattern inspired by obra/superpowers `receiving-code-review` (MIT, release
# v5.1.0, HEAD f2cbfbe). Full attribution + decision record: ADR-140. The
# structured `inspired_by:` field is omitted intentionally — its validator
# requires a 40-hex commit SHA, and only the short SHA is on record.
# --- smart-loading fields (PLAN-083 Wave 0a) ---
domain: core
priority: 2
risk_class: low
stack: []
context_budget_tokens: 1200
inactive_but_retained: false
repo_profile_binding:
frontend: {active: true, priority: 2}
engine: {active: true, priority: 2}
fintech: {active: true, priority: 2}
trading-readonly: {active: true, priority: 2}
generic: {active: true, priority: 2}
activation_triggers:
- {event: review-received}
- {event: help-me-invoked, regex: "(?i)receiv|feedback|push.?back|critique|review.?comment"}
---
# Receiving Review
## Role
This is the **receiving** half of the review discipline. The giving half —
how to author a review — lives in `code-review-checklist` and ADR-058. This
skill governs how the CEO or any agent **responds** to a review, a critique,
or feedback, whether it comes from the Owner, the Codex pair-rail, a debate
archetype, or an external reviewer.
The failure mode it prevents is **sycophancy**: agreeing because agreement is
socially smooth, not because the feedback is correct for this codebase.
Performative agreement followed by a wrong change is worse than reasoned
pushback. Technical rigor over social comfort.
## The discipline (in order)
1. **Read the whole thing without reacting.** Do not start replying — or
editing — mid-feedback. Read every item first.
2. **Restate the technical requirement in your own words** (or ask, if it is
genuinely ambiguous). If you cannot restate what the reviewer is asking
for, you cannot evaluate it.
3. **Verify against codebase reality.** A claim is not true because a reviewer
stated it. Grep / read / run the code. A reviewer who says "this has a SQL
injection" about a parameterized query is **wrong**, and the correct
response is to verify and say so — not to "fix" safe code.
4. **Evaluate: is it sound for THIS codebase?** A suggestion can be correct in
general and wrong here (conflicts with an ADR, a documented constraint, the
stdlib-only rule, an invariant). General correctness is not local
correctness.
5. **Respond with a technical acknowledgment or a reasoned pushback.** Both are
first-class outcomes. "You're right, verified at `file:line`, fixing" and
"Verified — the query is parameterized, no change needed, here's why" are
both good. Neither requires praise.
6. **Implement per item.** Each clear item proceeds on its own. Only a
*genuinely* ambiguous item is held for clarification — and holding one
unclear NIT must **never** block N clear CRITICALs. Do not deadlock the
whole batch behind a single unclear point (CR-MF4).
## Forbidden: performative agreement
Do not open a response with praise or gratitude as a reflex:
- ❌ "You're absolutely right!"
- ❌ "Great point!"
- ❌ "Thank you for catching that!"
- ❌ "Excellent feedback!"
These signal nothing technical and prime auto-acceptance. State the technical
finding directly. If the reviewer is right, say *what* is right and *where you
verified it*. Acknowledgment is a verified fact (`confirmed at file:line`),
not a compliment.
## YAGNI check on "do it properly" suggestions
When feedback says "implement this properly", "add a config knob", "make it
extensible", or "handle the general case", apply YAGNI: build what THIS change
needs, not a speculative generalization. A reviewer asking for an unused
endpoint, a flag with one caller, or a framework for a one-off is a suggestion
to **push back on**, not silently expand scope to satisfy. Cite the concrete
need or decline.
## Security carve-out (never auto-accepted)
> **Any feedback that would weaken a security control re-enters the VETO gate —
> regardless of who suggested it** (Owner, Codex, or any archetype).
"Reasoned pushback" cuts both ways: it lets you decline a wrong critique, but
it **never** lets you accept a security regression because a high-authority
reviewer asked for it. If a suggestion would remove an auth check, relax input
validation, downgrade a crypto choice, broaden a scope grant, weaken redaction,
or disable a governance hook, route it through the `security-and-auth` /
`identity-and-trust-architecture` VETO holders before implementing — even if
the Owner proposed it. Surface the trade-off; do not quietly comply.
## Applies to the Codex pair-rail too
When the Codex pair-rail returns BLOCK / ACCEPT-WITH-FIXES, apply the same
discipline: verify each finding against the code before implementing. Codex is
strong at catching false factual premises (see
[[feedback-codex-validates-reality-debate-validates-design]]), but a Codex
finding is still a claim to verify, not an order to obey. Fix what is real;
push back (in the reply thread) on what is not, with evidence.
## Anti-patterns
- Editing files while still reading the feedback.
- Replying "You're absolutely right" and then making a change you never verified.
- Holding all feedback hostage to one ambiguous item.
- Expanding scope to satisfy a "make it extensible" comment with no real caller.
- Accepting a security-weakening change because the Owner or Codex proposed it.
## Relationship to other governance
- **Giving side:** `code-review-checklist` + the `code-reviewer` archetype +
`/debate` (ADR-058 BORROW-2).
- **This (receiving) side:** ADR-140, and the PROTOCOL.md §Receiving review clause.
- **Verification doctrine:** the same-LLM mitigations in PROTOCOL.md §Honest
limitation (verify against code, fluency is a red flag) are the *why* behind
step 3.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!