Skip to content
Back to skills

Receiving Review

ASecurity

Use when receiving code-review feedback or a critique — from the

  • 2 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 2, 2026
ai-agentsrustgosqlreactcode-reviewfrontendsecurity

Works with

  • cli

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 2, 2026

npx -y skills add Canhada-Labs/ceo-orchestration --skill receiving-review --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Receiving Review?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Receiving Review
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/canhada-labs-receiving-review/badge)](https://www.skillsdirectory.com/skills/canhada-labs-receiving-review)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
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.

Files in this skill

  • SKILL.md6.2 KB
  • benchmarks/receiving-review.yaml11 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…