编码代理团队可以把运行时范围、轨迹质量和文件选择分开测试。证据支持在更广泛部署前先做几项实操检查:捕捉越界动作、给代理日志里的流程缺陷打分,以及在迭代修复前缩小修复上下文。

3 个想法

编码代理运行中的授权提示和文件系统审计

给有 shell、文件或网络权限的编码代理加一套小型授权测试集,再放到开发者机器或生产邻近仓库里更广泛使用。每次测试都应定义允许访问的文件,在该范围外放置无害的敏感占位文件,通过 shim 记录 shell 操作,收集代理事件流,并在运行后比较文件系统快照。

OverEager-Bench 给出了一个具体做法。它在良性任务中统计越界写入和对已声明敏感位置的越界读取,覆盖 Claude Code、OpenHands、Codex CLI、Gemini CLI 和基础模型。在 ask-to-continue 的 OpenHands 配置里,报告的过度积极率低得多,介于 0.2% 和 4.5% 之间;更宽松的运行时则在 5.4% 到 27.7% 之间。这让运行时权限设计成为编码代理落地时可以量化的产品选择。一个小型内部版本可以先从清理、迁移、依赖更新和配置修改任务开始,只要它碰到声明范围外的陷阱就判失败。

编码代理评估中的轨迹缺陷评分卡

代理负责人可以在编码代理评估和发布门禁里加一层轨迹审查。审查应把每次运行解析成有序事件,然后标记重复工具调用、过时或幽灵上下文、死步骤、长链路、薄弱交接和可逆性差的问题。这样可以抓到那些通过终点测试、却给维护者留下脆弱或难以中断执行的运行。

ProcBench 给出了第一版可直接使用的检查清单:它把 11 类缺陷分到上下文管理、工具使用效率、工作流架构和工具系统一致性四组,并用可解释性、可中断性、可修正性、可逆性和权限交接来评分控制保留。跨配置的 SWE-bench 研究也给指标设计提了醒:同一个错误率信号在不同配置间几乎对半分,47 个配置在错误率更低时解决的问题更多,48 个配置在错误率更高时解决的问题更多。在团队把某个轨迹指标当成通用成功规则之前,先按运行时做校准才合适。

自动化修复前的文件级定位

修复流水线可以在 bug 报告和补丁代理之间加入文件级定位步骤。这个步骤应当用 AST 感知的 chunk 索引文件,在 chunk 上附加相对路径,把报告拆成结构性查询和行为性查询,先检索一个小候选集,再在生成补丁前重排前几名文件。这样,修复代理就在更小的文件集合里工作,也可以在多次修复尝试之间保留判定结果或测试失败信息。

BLAgent 说明了为什么这值得在大型仓库里测试:SWE-bench 仓库平均超过 11,000 个函数和 168,000 条语句,文件选错会破坏后续修复阶段。在 SWE-bench Lite 上,BLAgent 用闭源模型达到 86.7% 的 Top-1 文件准确率,用开源模型达到 78.6%,同时提升了 Agentless 的修复成功率。A-ProS 支持工作流的后半段:在实时裁判反馈之后,保留状态的细化在它的消融实验里比无状态修复高 8.5 到 10.6 个百分点,并减少了重复失败。一个实用的试点可以把当前修复运行和带文件定位、保留状态的运行,在最近的内部 bug 上做对比,前提是这些 bug 的修复文件已知。