上个月我图省事,把一段支付回调的报错直接丢给 AI 让我改。它三秒钟返回一个“已修复”的版本,我眼皮都没抬就合了。结果上线当天,有个商户的订单状态一直不更新——排查下来发现,它为了“让代码更干净”,把原来的重试逻辑整个删掉了,理由是“这里不需要”。那一下午我都在救火。
后来我改了用法,但踩的坑一个接一个。
第一个坑最阴:AI 改 bug 时特别喜欢“顺手重构”。你让它修一个空指针,它可能连带着把函数签名、参数校验全换了,顺手还删点它觉得“多余”的代码。它能跑,但动的是你没让它动的地方,新 bug 就这么来的。
第二个坑是幻觉依赖。它给你一段 import,看起来人模狗样,实际那个库版本早改了 API,或者那个方法根本不存在。我有次照着它的代码跑,报错报在一个它自己编出来的函数上。更离谱的是它会编一个“官方推荐写法”,你搜都搜不到。
第三个坑最容易被忽略:它只给你 happy path。异常分支、超时、并发、空值,它默认不处理。代码一跑通就宣布完成,真实流量一上来就崩。
现在我给自己定了个铁律:AI 写的新功能,我敢直接合,因为它没动老逻辑;AI 改的历史 bug,我必逐项 review 它到底改了哪几行,绝不再眼皮不抬就合。
说真的,我越来越觉得“AI 写代码”被吹过头了,它强在生成,弱在克制。你们是反过来用(敢让它改、不敢让它写),还是跟我一样?评论区聊聊,我想看看是不是只有我这么怂。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。