研究想法

编码代理可靠性系统

日 · 2026-07-10 · Software Intelligence

编码代理团队可以通过将问题接收转换为失败后通过的测试、将反复出现的正确性断言编码为共享证明和基于属性的测试模板,以及在重复任务之间保留获批准的仓库上下文来提高可靠性。每项改动都可以先在少量真实维护任务上测试,再扩大采用范围。

3 个想法

生成已验证失败后通过测试的问题接收流程

增加一个自动分流步骤,将每个新问题转换为一个测试:测试在报告所针对的版本上失败,在已接受的修复之后通过。该流程应检索仓库结构,运行候选测试,并将疑似文件或函数以及建议的修复方向返回给维护者审核。ReProAgent 在 SWT-bench-verified 中复现了 70.30% 的问题,平均每个问题的成本为 $0.14;另一项 SWE-bench Verified 研究发现,受影响代码的位置和建议修复与代理修复成功率之间的正相关最明显。可以使用最近关闭的 50 个缺陷进行试验:隐藏最终补丁,生成测试和定位提示,然后测量有效复现率、维护者审核时间以及后续补丁通过率。

用于证明和运行时测试的共享属性模板

维护查询引擎、编译器、数据类库或优化规则的团队,可以将反复出现的正确性断言保存为参数化模板,并为其配套 Lean 4 证明义务和基于属性的测试。编码代理填写特定属性的空缺,CI 则将机器检查过的模型与实际实现进行比较。DualVeri 使证明合成成功率平均提高了 1.6×,将证明幻觉减少了 59%,并在 400 个候选属性中将基于属性的测试意图不匹配数量从 22 降至 1。可以先选择一个重复出现的属性族,例如优化器等价性或聚合分解,在 20 到 30 个属性上跟踪模板完成情况、证明失败、运行时反例以及模型与实现之间的不一致。

用于重复性维护任务的版本化仓库上下文

将获批准的任务规范、模式、工具设置和输出约束保存在带版本控制的工作区中,用于依赖更新、发布准备和定期报告生成等重复性编码代理任务。排除推理轨迹、失败的恢复路径、原始数据和临时工具日志;通过稳定的运行时接口刷新兼容输入。在对 24 个重复性企业任务的评估中,选择性记忆的完成率达到 96%,无状态会话为 79%,保留完整历史记录的记忆为 71%。公开的软件工程技能仓库也显示出打包不足:11,497 个技能中有 63.8% 只包含说明,13.6% 包含可执行代码资产。团队可以在一个月度维护流程上测试这种方法,连续运行三个周期,测量完成率、纠正轮次、令牌用量以及由过时上下文导致的失败。