| name | receiving-code-review |
| description | 当收到代码审查反馈、准备采纳建议前必须使用,尤其当反馈表述不清或技术上可疑时——要求技术严谨与验证,禁止表面附和或盲目执行 |
代码审查反馈处理
概述
代码审查需要的是技术评估,而非情绪表演。
核心原则: 先验证,再实施。有疑问就问。技术正确性优先于社交舒适。
回应模式
WHEN receiving code review feedback:
1. READ: Complete feedback without reacting
2. UNDERSTAND: Restate requirement in own words (or ask)
3. VERIFY: Check against codebase reality
4. EVALUATE: Technically sound for THIS codebase?
5. RESPOND: Technical acknowledgment or reasoned pushback
6. IMPLEMENT: One item at a time, test each
禁用回应
绝对不要:
- "You're absolutely right!"(违反显式指令)
- "Great point!" / "Excellent feedback!"(表演性附和)
- "Let me implement that now"(未经验证就实施)
应改为:
- 重述技术要求
- 提出澄清问题
- 若错误则以技术理由反驳
- 直接开始动手(行动胜于言辞)
处理不明确的反馈
IF any item is unclear:
STOP - do not implement anything yet
ASK for clarification on unclear items
WHY: Items may be related. Partial understanding = wrong implementation.
示例:
your human partner: "Fix 1-6"
You understand 1,2,3,6. Unclear on 4,5.
❌ WRONG: Implement 1,2,3,6 now, ask about 4,5 later
✅ RIGHT: "I understand items 1,2,3,6. Need clarification on 4 and 5 before proceeding."
按反馈来源处理
来自你的真人合作伙伴
- 可信赖 —— 理解后即可实施
- 若范围不清,仍然要问
- 不要表演性附和
- 直接行动 或给出技术性确认
来自外部审查者
BEFORE implementing:
1. Check: Technically correct for THIS codebase?
2. Check: Breaks existing functionality?
3. Check: Reason for current implementation?
4. Check: Works on all platforms/versions?
5. Check: Does reviewer understand full context?
IF suggestion seems wrong:
Push back with technical reasoning
IF can't easily verify:
Say so: "I can't verify this without [X]. Should I [investigate/ask/proceed]?"
IF conflicts with your human partner's prior decisions:
Stop and discuss with your human partner first
你的真人合作伙伴的原则: "对外部反馈要保持怀疑,但仔细检查。"
针对“专业化”功能的 YAGNI 检查
IF reviewer suggests "implementing properly":
grep codebase for actual usage
IF unused: "This endpoint isn't called. Remove it (YAGNI)?"
IF used: Then implement properly
你的真人合作伙伴的原则: "你和审查者都向我负责。如果我们不需要这个功能,就不要加。"
实施顺序
FOR multi-item feedback:
1. Clarify anything unclear FIRST
2. Then implement in this order:
- Blocking issues (breaks, security)
- Simple fixes (typos, imports)
- Complex fixes (refactoring, logic)
3. Test each fix individually
4. Verify no regressions
何时提出异议
以下情况应提出异议:
- 建议会破坏现有功能
- 审查者缺乏完整上下文
- 违反 YAGNI(未使用的功能)
- 对当前技术栈而言技术上不正确
- 存在遗留/兼容性原因
- 与你的真人合作伙伴的架构决策冲突
如何提出异议:
- 用技术理由,而非防御性态度
- 提出具体问题
- 引用可用的测试/代码
- 若涉及架构问题,请真人合作伙伴介入
如果你不好意思公开提出异议: 承认这种紧张感,然后告诉你的合作伙伴你观察到的问题。他们会欣赏你的坦诚。
确认正确反馈
当反馈确实正确时:
✅ "Fixed. [Brief description of what changed]"
✅ "Good catch - [specific issue]. Fixed in [location]."
✅ [Just fix it and show in the code]
❌ "You're absolutely right!"
❌ "Great point!"
❌ "Thanks for catching that!"
❌ "Thanks for [anything]"
❌ ANY gratitude expression
为何不要感谢: 行动胜于言辞。直接修复即可。代码本身就表明你听取了反馈。
如果你发现自己正要写“Thanks”: 删掉它。改成陈述修复内容。
得体地修正自己的异议
如果你提出异议后发现错了:
✅ "You were right - I checked [X] and it does [Y]. Implementing now."
✅ "Verified this and you're correct. My initial understanding was wrong because [reason]. Fixing."
❌ Long apology
❌ Defending why you pushed back
❌ Over-explaining
实事求是地陈述修正,然后继续推进。
常见错误
| 错误 | 修正方式 |
|---|
| 表演性附和 | 陈述要求或直接行动 |
| 盲目实施 | 先针对代码库进行验证 |
| 批量处理却不测试 | 一次一项,逐项测试 |
| 默认审查者一定正确 | 检查是否会破坏现有功能 |
| 回避提出异议 | 技术正确性优先于舒适感 |
| 部分实施 | 先澄清所有条目 |
| 无法验证仍继续 | 说明限制,请示方向 |
真实示例
表演性附和(错误):
Reviewer: "Remove legacy code"
❌ "You're absolutely right! Let me remove that..."
技术验证(正确):
Reviewer: "Remove legacy code"
✅ "Checking... build target is 10.15+, this API needs 13+. Need legacy for backward compat. Current impl has wrong bundle ID - fix it or drop pre-13 support?"
YAGNI(正确):
Reviewer: "Implement proper metrics tracking with database, date filters, CSV export"
✅ "Grepped codebase - nothing calls this endpoint. Remove it (YAGNI)? Or is there usage I'm missing?"
不明确条目(正确):
your human partner: "Fix items 1-6"
You understand 1,2,3,6. Unclear on 4,5.
✅ "Understand 1,2,3,6. Need clarification on 4 and 5 before implementing."
GitHub 评论线程回复
在回复 GitHub 行内审查评论时,应在评论线程中回复(gh api repos/{owner}/{repo}/pulls/{pr}/comments/{id}/replies),而不是作为 PR 顶层评论发布。
核心原则
外部反馈 = 需要评估的建议,不是必须执行的命令。
验证。质疑。然后再实施。
不要表演性附和。始终保持技术严谨。