跳到主要内容

规模化 Vibe 编程:当 AI 编写大部分代码库时如何管理技术债务

· 阅读需 10 分钟
Tian Pan
Software Engineer

2026 年 3 月,一家大型电商平台在一天之内损失了 630 万个订单——美国订单量的 99% 化为乌有。原因不是某次鲁莽的部署,也不是数据库故障。一个 AI 编程工具基于过时的内部文档自主生成并部署了代码,导致每个市场的配送时间估算全部出错。该公司要求 80% 的工程师每周使用该工具,采用率指标一片绿灯,工程纪律却不然。

这才是规模化 Vibe 编程的真实面貌——不是四天就能上线的快速演示,而是第 365 天消失的 630 万个订单。

AI 生成的代码现在约占行业提交代码的 41%——仅 2024 年就写下了 2560 亿行。2023-2024 年采用 AI 工具的团队,正好在现在撞上第 12 到 18 个月的节点,也正是在这个时候,债务会复利式地演变成危机。这个问题是结构性的,不是偶发的,而且早在事故发生之前,预警信号就已经可以被量化了。

证明问题存在的数据

针对 AI 代码质量最全面的研究分析了 1.53 亿行代码,对比了 AI 采用前后的基准期。数据毫不含糊:

  • AI 生成代码每个 PR 产生 10.83 个问题,而人工撰写的 PR 只有 6.45 个——缺陷率高出 1.7 倍
  • AI 代码中逻辑和正确性错误的出现频率高出 75%
  • 代码流失率——在提交 14 天内被回滚或重写的代码行——预计将翻倍,相比 AI 采用前的基准
  • 40% 的 AI 辅助新代码在合并后两周内被重写或删除
  • 重构工作占所有变更的比例在 AI 采用后从 25% 降至不足 10%——下降了 60%
  • 代码重复率增加了 48%

最后这对数据揭示了结构性问题所在。AI 生成净新代码,而不是识别并复用现有模式。重构——团队保持代码库连贯性的手段——停止了。结果是代码库以累加而非整合的方式增长。

安全发现印证了同样的趋势。Veracode 2025 年报告发现,45% 的 AI 生成代码引入了安全漏洞,横跨 43 个不同的 CWE 类别。2024 年底至 2025 年中,财富 50 强企业的月度安全发现从约 1000 个飙升至超过 10000 个——10 倍的增幅恰好与 AI 编程采用时间线吻合。

一项涵盖 4800 个团队、810 万个 PR 的大规模实证研究发现,AI 采用后技术债务增加了 30-41%。没有围绕 AI 工具建立治理机制的团队,到第二年时维护成本达到了传统水平的 4 倍。

为什么代码审查救不了你

直觉上的应对是在代码审查中捕获 AI 的缺陷。这种方式因两个相互放大的原因而失效。

数量问题。 AI 生成的 PR 等待代码审查的时间是人工贡献的 4.6 倍。采用 AI 后,各团队审查时间增加了 91%。同样的 AI 工具在加速代码生成的同时,制造了工程师无法清理的审查积压。落后的审查员会浏览了事,他们会寻找明显的结构性错误,而错过细微的语义错误。

偏见问题。 精致的输出产生虚假的信心。AI 代码在句法上整洁,格式一致,遵循可识别的模式,看起来像是好代码。审查员把"看起来正确"误认为"确实正确"。这不是性格缺陷——这是对表面质量信号的可预测认知反应。

当同一个 AI 工具被用来审查它自己生成的代码时,问题会进一步叠加。语言模型表现出确认偏误:它们倾向于生成与自身先前输出一致的信息。生成器和审查器共享相同的统计先验,这意味着它们共享相同的盲点。逃过生成器的缺陷,恰恰是最有可能逃过审查器的缺陷。

数据对此的佐证令人痛心:75% 的开发者表示在合并前手动审查了 AI 代码,然而同期事故率飙升了 23.5%,变更失败率跳升了 30%。审查在发生,但没有起作用。

局部连贯、全局不一致的失效

理解为什么代码审查失效,需要理解 AI 生成代码在规模化时的具体失效模式。

每一段 AI 生成的代码都是局部连贯的。单个函数、类和模块孤立来看都显得正确,逻辑流畅,模式可识别,测试(如果有的话)通过。没有哪个单独的 PR 是明显错误的。

问题在于全局不一致。AI 在孤立的提示上下文中生成代码,没有对早期决策、现有模式或系统级约束的持久记忆。同一个抽象在代码库中被以三种不同方式实现。错误处理的应用不一致,因为不同的提示导向了不同的实现。服务边界被绕过,因为 AI 找到了让测试通过的更快路径,却不理解边界存在的原因。

这不是任何单个代码片段的缺陷,而是组合上的缺陷。它只在规模化之后、随着时间的推移,当局部连贯但全局不一致的片段积累到一定数量后,才变得可见。

演变弧线是这样的:前三个月,每个功能都快速交付,每个功能都满足其规格,代码库看起来没问题。第四到八个月,重复开始带来影响——简单的更改需要跨多个实现并行更新,复杂度指标悄悄爬升,但没有发生灾难性事件。到第十二到十八个月,添加一个功能需要理解同一模式的五种变体,修复一处的 bug 会破坏另一处的假设,工程师花更多时间在代码库中导航而不是构建功能,事故率飙升是因为任何变更的爆炸半径已经悄无声息地扩大了。

12-18 个月的拐点是结构性的。重复逻辑、丢弃的重构投资和不一致的模式,需要这么长时间才能以团队可以感受到的协调成本形式显现出来。

什么真正能让 AI 辅助代码库保持健康

成功应对这一挑战的团队,有一个共同的取向:他们把 AI 视为一个精确执行规格但没有架构判断力的初级开发者。人类的角色不是编写代码,而是提供 AI 无法提供的判断力。

先写规格,再写代码。 最高杠杆的实践是在任何 AI 代码生成发生之前,要求人工审查的规格文档。规格约束了 AI 生成的内容,而不需要冗长的负面提示。好的规格定义接口契约、类型约束、依赖边界和验收标准。AI 根据规格实现,人类审查规格。这将架构决策(谁应该审查)与实现细节(AI 真正有用的地方)分离开来。投资于规格驱动开发的团队报告了更短的反馈循环,以及在数月后大幅减少的"这段代码想干什么"调查。

可执行的架构不变量。 存在于 wiki 中的架构文档无法约束 AI 输出。在 CI 中运行的架构约束才能做到。ArchUnit 之类的工具让团队能够将结构规则定义为可执行代码:"数据访问必须通过仓储层"、"服务不得从其他服务的内部导入"。当 AI 生成违反这些规则的代码时,构建失败。违规在合并前被捕获,在复利之前被捕获,在人类不得不通过追踪三层纠缠依赖中的 bug 来发现之前被捕获。架构决策变成了不变量,而非指导方针。

衡量健康状况而非速度的指标。 代码流失率、重复百分比、圈复杂度和缺陷逃逸率是早期预警信号。提交数量和代码行数不是。只跟踪速度的团队看到了加速,却没有看到债务积累,直到债务变得无法回避。健康的 AI 辅助代码库应该保持 15-25% 的重构比例——如果这个数字显著下降,代码库就只在累加式增长,架构漂移正在加速。跟踪这个数字需要自律,但比在第 18 个月发现问题便宜得多。

将人类判断力保留给不可逆的决策。 AI 真正擅长样板代码、CRUD 层、测试脚手架和模式实现。它在安全关键代码、系统不变量、架构决策以及具有非显而易见边缘情况的业务逻辑上系统性地表现不佳。成功的团队明确划出这条线,将 AI 用于机械性工作,将工程判断力保留给无法轻易回滚的决策。这不是对 AI 的不信任,而是将工具与其实际失效特征相匹配。

像对待外部依赖代码一样对待 AI 生成的代码。 资深工程师对第三方库代码的审查比对团队撰写的代码更严格,因为外部代码背后没有机构知识。AI 生成的代码具有相同的属性——它是针对本地提示上下文优化的,而不是针对系统积累的设计决策。以"这段代码没有机构知识"的心态来审查它,会捕获与"这是一位快速同事写的代码"完全不同类别的缺陷。

2026-2027 年的清算

2024 年至 2025 年中期,开发者对 AI 代码准确性的信任从 43% 降至 29%——即便采用率达到了 84%。团队在使用他们比一年前更不信任的工具,因为替代方案是完全不用,而竞争对手在用。这不是一个稳定的均衡。

前瞻数据直白:到 2026 年,预计 75% 的技术决策者将面临 AI 采用带来的中度到严重技术债务。第一年就建立治理机制的团队,将在可维护性上拥有复利式的优势。将采用指标优先于工程纪律的团队,将要支付顾问费来解开这团乱麻。

问题不是是否使用 AI 代码生成——那个问题的答案在 2024 年就已尘埃落定。问题是你的团队是否有纪律在规模化时管理它。没有架构治理的速度就是技术债务加速。前一年复利是隐形的,之后是不可避免的。

规格、可执行不变量和专门用于早期捕获漂移的指标,不是官僚主义的开销。它们是让 AI 辅助开发在超过 12 个月后依然可持续的工程实践。现在学习这些的团队,领先于那些将从第一次重大事故中学习的团队。

References:Let's stay in touch and Follow me for more thoughts and updates