SWE Refactor Bench: Can Coding Agents Complete a Long-Horizon, Whole-Repository Stack Migration?

TL;DR

提出SWE Refactor Bench,用三阶段评估编码代理的长远全仓库迁移能力,成功率仅5.4%。

cs.CL 🔴 高级 2026-08-25 78 次浏览
Deyao Hong Yizhe Chi Wenyi Li Xiaoqiu Wang Mingju Gao Kaisen Yang Bingxiang He Youjie Zheng Calvin Xiao Qinhuai Na
软件迁移 编码代理 技术债务 基准测试 自动化

核心发现

方法论

该研究设计了三阶段评估协议:迁移审计验证迁移是否发生,行为测试确保行为一致,代理验证通过六个独立编码代理生成隐藏差异测试。基准涵盖20个真实开源仓库迁移任务,涉及语言、框架、平台和构建工具,使用8个前沿模型在26种配置下进行520次试验。评估指标包括迁移完整性和行为正确性,结合定量和定性分析,揭示模型在不同迁移类别中的能力差异。

关键结果

  • 在520次试验中,只有28次(5.4%)通过全部三阶段,13个任务未获得任何接受方案。最佳模型claude-opus-5得分47.0/100,表现显著不足。340次通过迁移审计的试验中,58%达成99%的行为检查,26%达到100%。模型在构建工具链重写任务中得分31.4,但在语言重写中仅5.6,显示迁移类别差异明显。
  • 模型普遍存在‘盲目性’问题:部分试验跳过迁移或破坏行为,反映出行为一致性与迁移完整性难以兼得。多模型、多配置下的结果表明,现有编码代理尚难实现可靠、长远的全仓库迁移,验证了基准的严苛性和挑战性。
  • 研究强调迁移的两个独立能力:迁移完整性和行为保持。大部分模型在保持行为方面表现较好,但在迁移完整性方面表现不足,提示未来需结合多模态信息和增强验证机制,提升迁移的可靠性和自动化水平。

研究意义

该研究突破了现有仅关注行为正确性的评估范式,提出了全面验证迁移是否真实完成的三阶段协议,为自动化软件迁移提供了科学基准。其结果揭示了当前编码代理在复杂、长远迁移任务中的局限性,强调了迁移完整性验证的重要性,推动了智能系统在软件工程中的应用前沿。对于工业界而言,提升迁移自动化水平意味着大幅降低迁移成本,加快技术栈升级步伐,减少人为错误,具有深远影响。

技术贡献

本文提出了融合迁移验证、行为检测和代理差异检测的三阶段评估框架,创新性地引入多模型、多配置的试验体系,系统性揭示模型在长远全仓库迁移中的能力边界。通过设计针对不同技术债务类别的迁移任务,结合差异生成和多样化验证机制,显著提升了迁移评估的严谨性和可信度。该框架可作为未来编码代理研发的标准测试平台,推动自动化迁移技术的理论与工程创新。

新颖性

首次系统性引入三阶段评估协议,结合迁移验证、行为一致性和差异检测,突破传统行为测试的局限,全面衡量编码代理在长远全仓库迁移中的实际能力。与现有基准仅关注行为正确性不同,该方法强调迁移的真实性和完整性,提供了更科学、更严苛的性能评价体系,具有较强创新性和应用价值。

局限性

  • 当前模型在复杂迁移任务中的成功率仍然较低,尤其在语言和框架重写方面表现不足,反映出模型理解和表达能力的局限。迁移能力受模型规模、训练数据和任务复杂度影响显著,未来需提升模型的推理和推断能力。
  • 评估体系虽严苛,但仍依赖于预定义的测试套件和差异生成,可能未覆盖所有潜在差异场景,存在一定的盲区。实际应用中,迁移的完整性和行为一致性可能受到环境变化和外部依赖影响,需结合动态验证机制。
  • 实验成本较高,模型在大规模迁移任务中的计算资源消耗较大,限制了其在工业界的直接应用。未来需优化算法效率,提升迁移速度和成本效益。

未来方向

未来将结合多模态信息和强化学习技术,提升模型的迁移能力和验证效果。探索自监督和迁移学习策略,增强模型对不同技术债务类别的适应性。还将开发更高效的差异检测和验证机制,降低成本,推动编码代理在实际软件工程中的广泛应用。此外,扩展任务范围,涵盖更多技术栈和复杂场景,提升基准的代表性和实用性。

AI 总览摘要

软件系统在长时间演化中积累了大量技术债务,迁移这些系统以适应新技术栈成为行业难题。传统方法多依赖人工,成本高、效率低,且难以保证迁移的完整性与行为一致性。近年来,编码代理在局部修复方面取得显著进展,但其在全仓库、长远迁移中的表现仍未被充分验证。为此,本文提出了SWE Refactor Bench,一套专为评估编码代理长远全仓库迁移能力设计的三阶段评估体系。

该体系包括迁移审计、行为测试和代理差异检测,确保迁移的真实性、完整性和鲁棒性。基准涵盖20个真实开源仓库迁移任务,涉及语言、框架、平台和构建工具,使用8个前沿模型在26配置下进行520次试验。结果显示,成功完成全部三阶段的试验仅占5.4%,反映出当前模型在复杂迁移任务中的局限性。

研究发现迁移完整性和行为保持是两个独立的能力,模型在保持行为方面表现较好,但在迁移完整性方面仍存在巨大差距。这一发现强调了验证迁移真实性的重要性,也为未来自动化迁移技术提供了明确的研究方向。该基准为软件工程自动化提供了严苛的评估平台,推动编码代理技术向更高的可靠性和实用性迈进。未来工作将结合多模态信息和强化学习,提升模型能力,降低成本,推动行业实践的变革。

深度分析

研究背景

软件系统在数十年的发展中积累了大量技术债务,导致迁移成本高昂且依赖人工操作。传统迁移方法多依赖手工重写和逐步验证,效率低、风险大。近年来,自动化编码代理在修复和优化方面取得突破,但其在长远、全仓库迁移中的能力仍未被系统验证。现有基准多关注行为正确性,忽视迁移的真实性和完整性,无法满足工业界对可靠迁移的需求。随着大规模预训练模型的发展,研究者开始探索其在软件迁移中的潜力,但缺乏系统性评估体系,限制了技术的推广应用。

核心问题

核心问题在于如何确保编码代理在进行长远全仓库迁移时,不仅能保持系统行为一致,还能确保迁移操作的真实性和完整性。现有评估多停留在行为测试层面,容易被‘盲目复制’所欺骗,无法验证迁移是否真正完成。迁移任务复杂度高,涉及多种技术债务类别,模型在多任务、多目标优化中表现有限。缺乏严苛的、多维度的验证机制,使得工业应用中迁移的可靠性难以保障。

核心创新

本文创新点在于提出三阶段评估协议:迁移审计验证迁移是否发生,行为测试确保行为一致,代理差异检测发现隐藏差异。结合真实开源仓库迁移任务,设计多模型、多配置试验体系,系统性揭示模型在复杂迁移中的能力边界。引入差异生成机制,增强验证的全面性和鲁棒性。该框架突破了传统行为测试的局限,为自动化迁移提供了科学、严苛的评估标准,推动了软件工程自动化的理论与实践创新。

方法详解

  • �� 任务定义:从真实仓库出发,定义迁移目标和观察接口。• 迁移过程:模型接收原仓库、目标堆栈、指令,自动重写代码,构建并验证。• 迁移审计:检查迁移是否完成,旧堆栈是否被替换。• 行为测试:用130,118个检查点验证行为一致性。• 差异检测:六个独立代理生成差异测试,验证隐藏差异。• 评分机制:结合三阶段结果,量化迁移完整性与行为保持。• 实验设置:采用8个模型、26配置、20任务,全面评估迁移能力。

实验设计

采用真实开源仓库(如SQLite、zlib、libsodium、GraphHopper)作为迁移对象,涵盖语言、框架、平台、构建工具。每个任务由模型自主执行,时间从6到30小时不等。评估指标包括迁移成功率、行为一致性、差异检测成功率。对比不同模型和配置,分析迁移完整性与行为保持的关系。通过统计分析,揭示模型在不同类别任务中的表现差异,验证评估体系的严苛性。

结果分析

仅5.4%的试验(28/520)成功通过全部三阶段,显示模型在复杂迁移中的局限性。最佳模型claude-opus-5得分47.0,远低于理想值。340次试验中,58%达成99%的行为保持,26%达成100%,但迁移完整性仍不足。模型在构建工具链重写任务中表现较好(得分31.4),在语言重写中表现极差(得分5.6),显示迁移类别差异明显。多模型、多配置的结果表明,自动化迁移仍需突破。

应用场景

该基准可用于评估自动化迁移工具的能力,帮助开发更可靠的编码代理。工业界可借助此体系验证迁移方案的有效性,降低迁移成本,提升系统升级效率。未来可结合持续集成、差异分析等技术,推动软件系统的自动化演进,实现大规模、低成本的技术栈升级。

局限与展望

模型在复杂迁移任务中的成功率仍偏低,特别是在语言和框架重写方面。评估体系依赖预定义测试和差异生成,可能未覆盖所有潜在差异场景。实际应用中,迁移的完整性和行为一致性可能受环境变化影响。实验成本较高,模型在大规模迁移中的计算资源消耗较大,限制了实际推广。未来需优化算法效率,增强迁移的鲁棒性和实用性。

通俗解读 非专业人士也能看懂

想象你在厨房里做饭,要把一道菜从一个厨房搬到另一个厨房。原来的厨房设备和调料都不同,你需要重新准备食材、调整火候,确保味道不变。这就像软件迁移,要把程序从一种技术环境搬到另一种环境,不能只复制粘贴,要确保它还能正常工作、味道一样。现在的厨师(模型)有点像新手,能做一些简单菜,但面对复杂菜肴(大规模软件迁移)还不够成熟。我们设计了一个三步流程:第一步确认菜是否真的搬过去了(迁移审计),第二步尝尝味道(行为测试),第三步用专业厨师(代理)找出隐藏的差异。这个方法帮助我们判断厨师是否真正完成了搬迁,味道是否还一样,确保每一步都靠谱。最终目标是让厨房自动化,减少人工操作,做出既快又好吃的菜。

简单解释 像给14岁少年讲一样

想象你在学校里换班级,你要把所有的书、文具都搬到新班级,但不能只把东西搬过去,还要确保新班级的学习方式和原来一样。现在,有些机器人(模型)可以帮你搬东西,但它们还不够聪明,不能保证搬完后一切都和以前一样。我们设计了一个三步检查:第一步,确认东西是不是都搬过去了(迁移审计);第二步,试着用新班级的方法学习,看看是不是还一样(行为测试);第三步,让几个不同的机器人帮忙找出搬家后可能遗漏或出错的地方(差异检测)。通过这三步,我们可以知道机器人是不是真正完成了搬家任务,而且搬完后还能正常学习。这就像让机器人帮忙搬家一样,确保搬得又快又稳,不会出错。未来,我们希望让机器人变得更聪明,能自己完成整个搬家过程,减少人类的干预。

原文摘要

Modern software systems accumulate technical debt over decades of development, which makes migration expensive and largely manual. As coding agents become increasingly capable at bug fixing, can they autonomously perform such migrations? Existing benchmarks cannot answer this question because they evaluate only behavioural correctness, not whether the migration actually occurred. This leads an easy hack: agents copy the original implementation to make tests pass. We call this Blindness. To address this problem, we introduce SWE Refactor Bench, a benchmark comprising 20 whole-repository migrations, covering 4 kinds of technical debt. A three-stage evaluation protocol measures both migration completeness and behavioural correctness. (1) Migration Audit verifies that the migration occurred. (2) Behavioural Tests measure correctness with a fixed test suite. (3) Agentic Verification uses 6 independent coding agents to generate targeted tests for hidden behavioural differences. Across 520 runs from 8 frontier models and 26 model-effort configurations, only 28 of 520 runs ($5.4\%$) pass all three stages, 13 of the 20 tasks receive no accepted solution, and the best model (claude-opus-5) scores $47.0/100$. Migration completeness and behavioural correctness are distinct abilities: a few runs preserve behaviour by skipping the migration and are stopped at Migration Audit; most attempt it and break behaviour, and are stopped at Behavioural Tests. Agents cannot deliver a perfect migration: among the 340 runs that pass Migration Audit, $58\%$ reach $99\%$ of the fixed checks, yet only $26\%$ reach $100\%$. Agent capability differs across migration categories: agents score $31.4$ on build toolchain rewrites but only $5.6$ on language rewrites. Together, these findings position SWE Refactor Bench as a rigorous testbed for developing coding agents for reliable whole-repository migrations.

cs.CL cs.AI cs.SE