我让两个 AI 互相审查代码 30 天,人类还是在 5 分钟内找到了 Bug
来源:dev.to — 2026-09-13
📋 概述
作者让一个作者 agent 写代码、一个怀疑者 agent 用对抗式简报找漏洞:不审查 diff,而是假设它已经坏了、找出让客户赔钱的输入、找出它重复实现的东西。30 天里 41 个真实问题被怀疑者抓到 38 个,包括架构漂移、被吞掉的异常和真实的竞态条件。但它漏掉的三类都是同一种:不 happy path 上的静默数据完整性失败——最典型的是先给 Stripe 返回 200 再落库的 webhook,怀疑者不但放行,还夸它把确认提前以降低延迟。
🔑 核心要点
- 作者与怀疑者被刻意赋予不同目标,独立性不是让同一个模型换个语气问自己。
- 怀疑者简报是「假设它已经坏了,找出让客户赔钱的输入」,而不是「审查这个 diff」。
- 41 个真实问题它抓到 38 个,包括重复实现、被吞掉的异常和一个真实竞态。
- 漏掉的三个都属于同一类:不 happy path 上的静默数据完整性失败。
- 写代码的和审代码的是同一个模型家族,共享训练分布,因此共享同样的盲区。
💡 金句
写代码的东西,永远不能是审代码的那个东西——模型给自己打分,永远都是及格。
👍 0
👎 0
← 返回 dev.to 首页