测试全绿,账却算错了!AI 写的代码全绿却埋雷?一个四舍五入的细节差点让退款算错钱
开发者复盘:AI 智能体在仓库里另造了个格式化金额的小工具,测试全过、功能正常,但舍入规则和财务拍板的老函数不一样。
大白话有位开发者在 Dev.to 上分享了一次代码审查经历:AI 智能体接活时,新建了一个叫 formatMoneyCents() 的小函数来处理金额显示,写得挺规范,还配了单元测试,功能也跑通了。问题是仓库里早就有一个 formatCurrency(),干的是同一件事,而且带着财务在真实事故后定下的舍入规则。新函数用的是四舍五入,老函数用的是银行家舍入。这次提交没报任何错,但几个月后某个特定退款金额上就会悄悄算错。作者说,AI 这么做很常见:它看不到整个代码库,只盯着当前任务相关的文件,函数名对不上就搜不到,而且“自己造一个”是让构建变绿风险最低的路。
对你意味着只要你在用 Cursor、Claude Code 这类 AI 编程工具,就可能踩同一个坑:代码能跑、测试能过,但业务规则被悄悄复制了一份。
Dev.to 开发者个人复盘文章,观点与案例来自作者自述
原文:The Agent Added a Second Copy of a Utility the Repo Already Had
打开巨象雷达,看今天全部 AI 动态