本周工作思考
- 本周在主要工作任务之余开始继续思考和设计Code Fixed Agent工作流程,之前我自己和其他伙伴断断续续有过讨论和分析,Code Fixed Agent 的预期功能需求是通过目前的对Sentry Issue 诊断Agent的诊断结果,Code Fixed Agent 利用大模型编程能力实现代码修复和提交,涉及源码管理、大模型、Git流程、Claude 调用等模块,实现Sentry上简单问题的自动化修复。在本地开发中利用Claude Skills 和 Agent 也能够实现部分功能,但是对于Sentry问题,构造Sentry完整的上下文的,需要Sentry MCP的支持,最主要的问题是本地Claude无法实现无人值守式全自动化流程。压缩代码和源码映射的问题是最关键的部分所在,在保证安全可靠的情况下,实现异常堆栈中的行列数能够明确定位到源码的repo-dir-file-line,这个过程可以使用大模型和工程方式,大模型方案是需要消耗大量token,整体来看币效太低。工程方式应该是最合适的方式,repo很容易定位,dir-file-line的定位很难准确,一是不同的浏览器堆栈信息不同,二是线上堆栈信息本身压缩和混淆过的。目前想到的基本思路是采用关键词匹配的笨办法,首先通过AST将解析压缩代码的类,对象和方法,同时将对应repo的源码也通过AST做相同的处理,基于堆栈信息通过文本匹配的模式,初步定位做在file,最后通过源码和压缩代码的AST数据比对,定位到具体的方法,然后提交给大模型做修复。整体的思路是工程算法和大模型相结合协同解决。