论文

代理代码是否比人类代码更难维护?

Is Agent Code Less Maintainable Than Human Code?

摘要

可维护性是软件工程的核心维度,决定着代码随着时间的推移如何编写、审查和开发。虽然 编码智能体 在单问题任务上表现出了强大的性能,但当未来的代理在其之上构建时,其代码的可维护性仍不清楚,这可能会导致复合的下游影响。我们研究了在这些维护设置中代理代码与人类代码的比较,并提出了 CodeThread,这是一个根据存储库级编码基准构建受控实验的框架。将 CodeThread 应用于四个前沿 编码智能体 和四个基准测试,我们发现与人类代码相比,基于代理代码构建的代理在解决任务方面效率较低,任务解决率下降高达 13.1%。回归分析表明,许多传统的软件工程可维护性指标无法解释这种差异。相反,最清晰的信号是代理代码中更微妙的行为差异,例如输入验证和错误处理的更改,以及下游代码大小和任务难度的差异。这些发现强调了不仅需要通过立即任务解决而且还需要通过代码可维护性来评估这些系统,并指出代理代码引入的下游错误的潜在来源。