AI编程工具的"信任危机":当代码写得快≠写得对,我们该怎么办?
上周,一个开发者花了2000美元测试三款AI编程工具,结果让他后背发凉:Cursor生成的代码看似完美,差点把生产环境搞崩;Windsurf编造了一个根本不存在的Spring注解,还煞有介事地写了JavaDoc。
与此同时,GitHub悄悄上线了Spec Kit,试图用”规格即代码”的方式拯救AI编程的信任危机。
这两件事放在一起看,恰好揭示了一个被忽视的真相:AI编程的问题从来不是”写不快”,而是”写不对”。
一个差点上生产的”同步锁”
先说那2000美元的故事。
测试对象是一套47,000行的Spring Boot遗留代码——订单处理服务,7个工程师轮番改了两年,事务边界混乱、缓存策略矛盾、数据库查询嵌套三层。任务很明确:优化高频支付接口,重构事务边界,消除N+1查询。
Cursor的表现最唬人。代码生成极快,Spring注解齐全、异常处理周到、日志埋点规范。乍一看,这代码可以直接合并。
但它干了一件要命的事:给支付服务加了个同步锁来”防止重复提交”。问题在于,这个服务的QPS峰值是10,000,同步锁会把所有请求串行化。压测一跑,响应时间从80毫秒飙到4秒,超时雪崩。
代码越”好看”,你越容易放松警惕。 开发者花了6个小时review这份看似完美的代码,差点没把那个同步锁筛出来。
Windsurf的问题更离谱。它编造了一个@TransactionalAsync注解——Spring里根本没有这个东西。被指出错误后,它换成了@TransactionalEventListener,又配了一个不存在的phase参数。三次修改,三次出错,4个小时白白消耗。
只有Claude Code走了另一条路:它不急着给代码,先问了一堆问题——SLA是多少?事务一致性要求强一致还是最终一致?缓存击穿有没有兜底方案?两小时后,它交出的不是代码,而是一份诊断报告。其中包含一个团队找了8个月的事务边界bug。
20%采纳率背后的逻辑
虎嗅做过一份统计:AI编程工具生成的代码,人类最终采纳的比例只有20%左右。
80%的代码被扔掉了。这意味着什么?
不是AI写得不好——恰恰相反,大部分生成的代码语法正确、结构合理。问题出在一个更深层的地方:AI在”表演”正确,而不是”确保”正确。
当它看到前面的代码用了Spring Boot的注解风格,它会猜后面该写什么注解。猜对的概率很高,但猜错的时候,它会编造一个看起来极其合理的假注解,配上完整的文档。这种错误比明显的bug更危险,因为你的review大脑会自动跳过”看起来专业”的代码。
这就是我说的信任危机:不是AI能力不够,而是它的错误方式让人无法信任。一个诚实说”我不确定”的AI,比一个自信地编造答案的AI更有用。
Spec-Driven Development:给AI装上刹车
GitHub的Spec Kit试图从方法论层面解决这个问题。
它的核心思路是:在AI写代码之前,先用规格文档把”做什么”和”为什么”定死,再让AI去执行”怎么做”。
五步流程:Constitution(项目宪法)→ Specify(规格描述)→ Plan(技术方案)→ Tasks(任务拆解)→ Implement(执行实现)。
这五步不是瀑布流的回归。每一步都是一个检查点,AI负责执行,人类负责确认。偏离了规格,在Plan阶段就能发现,不用等到代码写完再推倒重来。
有人说这是在给AI拖后腿。但想想那2000美元的教训——Cursor两小时写完代码,人类花了6小时review险些漏掉致命bug;Claude Code花了2小时提问和诊断,最终找到8个月的隐患。快和慢,到底哪个更浪费时间?
这不是快与慢的取舍,是”快且盲”和”慢且准”的选择。
真正的问题:谁来定义”对”?
但Spec-Driven Development也有一个软肋:规格本身谁来写?谁保证规格是”对”的?
如果规格写错了,AI严格按照错误的规格执行,结果只会错得更整齐。
这让我想起一个工程原则:任何方法论都不能替代人的判断力。SDD把”审查时机”从代码提交提前到了规格定义,降低了返工成本,但它没有消除判断本身。
所以我对这场AI编程的方法论之争有一个朴素的判断:
工具和方法论都是减速带,不是方向盘。 它们能让你在偏离时更早发现,但开往哪个方向,还是你说了算。
AI编程工具的未来,不在于谁生成代码更快,而在于谁能让开发者更有信心地合并代码。这个信心来自两个东西:透明的推理过程,以及可控的执行边界。
Claude Code选择先问问题再动手,Spec Kit选择先写规格再执行。两条路指向同一个方向——让AI从”帮你写代码”变成”帮你解决问题”。
写对,比写快重要。这个道理在AI出现之前成立,在AI出现之后依然成立。
参考信息:基于2026年4月AI编程工具横评测试报告及GitHub Spec Kit发布动态综合分析
夜雨聆风