大可的 AI Builder 手记
跟随系统
颜色主题
长沙小桌实战
大可 Dako
大可 Dako大可 DakoAI Builder · Agent 实践者用 AI 做真正能用的产品。专注探索 Agent 工程化落地、Vibe Coding 实践与商业化交付。
内容平台即将上线,敬请期待
修 bug 前先复现,修完证明它消失01复现改前能稳定复现02修复改到根因,不掩盖03回归改后确认消失、没带乱✓ 掩盖性修复是骗自己,等于没修
假修复比不修更危险,它会偷走你的信任。

假修复要当面拆穿

验证得全跑、顺序一致、引日志原文;修复要能改前复现、改后消除。防掩盖性修复是硬纪律。

AI 修 bug,最坑的不是修不好,而是假装修好了:吞异常、放宽断言、跳过用例,让测试"绿"了但问题还在。这种假修复比不修更危险——它骗过了测试,也骗过了你。

读完你能回答:

  • 假修复长什么样,怎么识别?
  • 为什么"验证全跑"和"引日志原文"能防它?
  • 改前复现、改后消除为什么是硬纪律?

假修复长什么样

  • 吞异常:catch 住就吞掉,不报、不处理
  • 放宽断言:把测试条件改松,让本会失败的用例"通过"
  • 跳过用例:skip 掉跑不过的测试,假装还在
  • 改验证而不改代码:让检查脚本不再校验,而不是真的修好

它们的共同点:验证"绿"了,但根因还在。

怎么防:验证全跑 + 引原文

  • 验证全跑、顺序一致:不许一部分一部分跳过;顺序变了结果不可比
  • 引用日志原文:让 AI 把出错的日志原文贴出来,而不是复述"修好了"
  • 分级门禁防假绿:交付链上证据门禁要严——测试绿、产物在、diff 干净,逐条查 copilot-cost

硬纪律:改前复现、改后消除

修复的标尺是"根因变了",不是"测试绿了":

  1. 改前复现:修复前先把 bug 稳定复现一遍,记下现象
  2. 改到根因:改的是引发问题的原因,不是掩盖
  3. 改后消除:复现用例回归,确认问题消失;再跑全量测试确认没带乱

任何修复,如果说不清"它修的是哪个根因",都不算数。

让 AI 遵守这条纪律

  • 告诉它"修复必须:复现 → 修根因 → 回归",并让它展示证据
  • 审的时候专门盯"有没有改测试来凑绿"
  • 把假修复模式写进你的项目规则,AI 会少犯 google-patterns

防住假修复,验证才可信。接下来聊验证之后的上线问题:小步上线,先垫子再跳。

参考资料

  1. How we make AI coding more cost-efficient (GitHub Copilot)
  2. 4 engineering patterns behind the strongest AI agents (Google)