好久没试过自己纯手写点什么了。。试试重新写 blog 看看

最近模仿 qoder 的 code review ultra 技能,自己写了个分四视角做 code review 的,效果确实比之前单视角的强。大致是按正确性、完整性、影响范围、安全性四个维度做评估。正确性主要关注逻辑错误、错误处理的边界情况、明显的错误边界。完整性是按 commit message 里描述的功能特性来评估的。影响范围是看引入的新代码,有没有将现有的东西改坏了,比如引入并发问题等。安全是针对玩家输入,看看有没有缺乏校验,导致玩家可以薅羊毛的,或者拖垮整个服务器的。

后面又针对缓存性的问题,将完整的 diff 先发一份上去,建立公共前缀,再附上各自视角的 prompt,提高缓存命中率。后面大家都用上 ai 来写代码,diff 越来越大,就加了个分组的功能,有相互引用的文件划分成一组,尽量保证留更多上下文空间给模型做思考。

为了限制模型的过度思考,加了超时和轮次上限,但是比较大的 diff 容易摸到上限,后面针对 diff 里的函数,再做了一次全量搜索,这样 4 个视角都可以共享搜索结果,不用分别独立发现函数调用和对应函数定义了,速度更快,token 更省。

先写到这里吧