Loopsbench Long Horizon Coding Agent Benchmark
LoopsBench:Coding Agent 评测的范式转移——从 Harness 到 Loop
当 Agent 开始干「长活」
SWE-bench 及后续工作建立了一个有效但局限的评测范式:给 Agent 一个 issue,关进代码仓库,让它改,改完看测试过不过。这个范式衡量的是单次问题解决能力。
但问题是:真实软件开发不是这样的。
真实软件开发是:
- A 功能依赖 B 功能,B 功能还没实现,Agent 得知道先做哪个
- 改了 C 模块,原来的 D 功能挂了,Agent 得能发现并修回去
- 任务做到一半,上下文已经很长了,Agent 的「计划」还剩多少
- 跑了 50 步之后,Agent 还记不记得最初的目标
这些问题,SWE-bench 根本测不到。因为它只测终点,不测过程。
LoopsBench 就是奔着这个来的。
核心机制:DAG 依赖 + 持续回归
LoopsBench 的设计想清楚了真实开发任务的两个本质特征:
1. 任务是带依赖的有向无环图(DAG)
不是一件事,是一串前后依赖的事。比如:
[实现数据库Schema] → [写CRUD接口] → [写业务逻辑] → [联调测试]
↑ ↑
[设计数据模型] [API规范先行]
每个节点都是一个可独立测试的开发单元。真实来源,真实依赖关系。
2. 已完成的节点要持续回归
这是 LoopsBench 和以往所有 benchmark 最大的区别。
旧范式:测最终结果,不管过程。 LoopsBench:每当一个节点完成,立即把它纳入回归测试集。后面改任何东西,都必须过这组回归。
这模拟的是真实工程场景:你的修改引入新 bug,测试套件会告诉你。LoopsBench 把这个机制内置到评测里,持续测,不是一次性测。
flow-aware runtime 会沿着 DAG 的 ready frontier 释放测试——只有当一个节点的所有依赖都完成时,它的测试才激活。已完成节点的测试持续运行,作为回归守护。
数据规模
- 112 个任务,来自真实代码库
- 8 种编程语言,9 个领域
- 5300+ 个可独立测试的开发单元
- 所有任务、代码、测试都开源:
microsoft/Loopsbench
真实结果:比想象中更悲观
这是最值得深思的部分。
论文测试了前沿模型的多种配置组合,结果:
最优组合(Opus-4.7 + Claude Code + outer continuation)解决率:25.00%
四分之一。
而且还有两个更具体的观察:
计划只能恢复部分 DAG:Agent 生成的执行计划,并不能完整覆盖源代码给出的依赖关系。这意味着 Agent 在长 horizon 执行中会「迷路」——不是迷路到不知道下一步做什么,而是不知道这件事依赖什么。
回归事件在各 loop 配置中都可见:无论用哪种 loop 框架(ReAct、Plan-and-Execute、Outer Continuation……),回归 bug 都会发生。这说明回归问题不是某个特定 loop 框架的缺陷,而是长 horizon 执行的系统性问题。
为什么重要:「Harness Engineering → Loop Engineering」
论文给出了一个我认为非常有洞察力的行业判断:
Coding agent 基础设施的研究重心正在从 Harness Engineering 转向 Loop Engineering。
Harness Engineering 解决的是:模型怎么访问代码、Shell、编辑器、测试环境。这是过去几年行业花的力气。
Loop Engineering 解决的是:Agent 如何跨越长的时间尺度组织工作,如何维护状态,当一次执行结束后如何继续推进。
类比一下:Harness 是给单个工具制造合适的把手,Loop 是设计如何使用工具的整个工作流程。
工具再好,流程设计差,Agent 在长任务上还是拉胯。
我的判断
LoopsBench 的价值不在于那个 25% 的数字——那是当前模型的性能,会随着模型能力提升而改善。
它的价值在于把正确的问题放到了台面上:
- 评测从「能不能解决一个孤立问题」转向「能不能在依赖图上稳定推进」
- 引入过程性指标(回归事件数、DAG 覆盖率、执行稳定性)作为补充
- 标志行业开始正视 Agent 在软件工程中「持续工作」这个真实场景
值得持续关注的是:这个 benchmark 会怎么影响 loop 框架的研究方向,以及当模型能力继续提升后,瓶颈会从「模型」转移到「loop 框架设计」上——届时 Loop Engineering 会变成真正的工程问题,而不只是模型问题。
参考
- 论文:arXiv:2608.00267
- 项目页:https://loopsbench.ai
- 代码:https://github.com/microsoft/Loopsbench
💬 评论
💡 使用 GitHub 账号登录 即可参与讨论