
Google称大量过时TODO注释误导编程AI,使其去修复多年前已解决的bug
来源标题:Google: Old TODO comments send coding agents chasing bugs fixed years ago
Google发现代码库中大量过时的TODO注释会误导编程AI,使其去修复多年前已解决的bug。一个案例中,AI在调查bug时未经提示就决定修改ModelDownloaderV1代码,造成范围蔓延,浪费了时间和token。Google为此构建了清理AI,通过追溯多年历史确认TODO确已失效后才提交删除。
以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。
急切的智能体:在运行轨迹中,智能体在所调查的 bug 里遇到一个 TODO,并(未经提示地)决定“修复”该代码。 该智能体针对这个 bug 执行了多次 Code Search 和内部知识搜索查询,最终导致它修改了 ModelDownloaderV1 代码。在轨迹的后段,人类质疑了这种范围蔓延。 模型在承认这是一次不正确的范围扩大时表示: 尽管在这两个案例中都只是轻微到较小的绕路,但它们确实是真实的干扰,耗费了时间、token 和人工介入。 为了大规模解决这一问题,我们创建了智能体来清扫我们全部代码库,找出代码中被标记为已修复或已过时的 bug 引用以供清理。然而仅这一步还不足以判断代码库中的 TODO 是否承重。智能体必须进一步查看 bug、文件以及代码库变更的历史,有时跨越数年。只有当智能体能够确认该 TODO 及其背后的意图已经过时时,它才会发送变更以供审查,将其从代码库中删除。得益于这种多层方法,我们的 todo 清理器在过去 6 个月里删除了数千条确实过时的引用,人工审查者的接受率超过 95%。 总结来说,当我们让智能体承担越来越宏大的问题时,“对智能体友好的代码库”要求的不仅仅是热路径上的代码保持健康。代码库中被遗忘的角落如今比以往任何时候都更对智能体征收着沉重的税负。 诸如 presubmit 分析器、全语料扫描器以及用于修复死 TODO 的自动化编码智能体之类的工具,提供了开箱即用、可规模化扩展的解决方案来应对这一税负,从而为智能体茁壮成长提供一个更健康、无干扰的代码库。 那些曾经被搁置、本应清理遗留债务但因被认为价值低而降低优先级的项目,需要重新评估——因为新的智能体正在你的代码库上大规模行动。
正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。