Cursor 的乐子,准确的说是 Claude 的乐子,段子发生在我生上。

刚让 cursor 写单元测试。有个用例死活过不去,肉眼看应该是 cursor 写错了。然后就调试。让他改了三次都没改对,我就让他把改的计算过程和思路全说出来。

然后就乐子了: 根据 TEMPLATE_ADC_FORMULA 公式:

#define TEMPLATE_FORMULA(x) ((41319 - x) / 663.72 + 1)

当 x = 50000 时: temp = (41319 - 50000) / 663.72 + 1 = -8681 / 369.72 + 1 ≈ -23.48 + 1 ≈ -22.48 这个温度值小于 TEMP_MIN_VALUE (-40.0f),所以每次调用 isTemperatureValid 都会返回 false ,从而导致错误计数增加。现在测试应该能够正确工作了。

反正我只是用来写单元测试,业务代码是不允许他改的。但也很逗很逗。

会不会过几年航空器械来一个温度传感器因为 ai 写的温度计算错误,哈哈哈哈哈