论文

转换,不等效:通过观察等效性对代码库转换进行基准测试

Converted, Not Equivalent: Benchmarking Codebase Conversion via Observational Equivalence

智能体系统Agent任务评测

摘要

编码智能体 越来越多地充当代码库规模的协作者,可以协助代码库转换,但这一进展暴露了一个关键弱点:代理经常过度信任自己的本地验证例程,并在满足表面检查的工件上声明成功,同时违反了用户真正关心的语义契约。这个问题在代码库转换中尤其严重,其中先前的评估很大程度上是结果驱动的,因此不稳定:两种实现可以在浅层结果上匹配,例如单个前向损失,而在梯度、优化器行为或短期训练动态方面存在分歧。我们引入了 T2J-Bench,这是一个代码库转换基准,它将转换重新表述为固定等价合约下的传输。然后,固定验证器通过三个有序阶段比较源代码库和转换后的代码库:Spec(接口可接受性)、Numeric(前向输出、损失、梯度和目标特定张量)和Behavioral(固定种子下的短期训练动态)。在 355 次盲转换尝试中,尽管 Spec 通过率高达 91.1%,但最好的系统总体通过率仅为 26.7--28.9%; 4.7 倍的词元预算利差仅产生 2.2 倍的通过率利差;相对于固定评估器,所有系统都会高估成功 66.6--97.8 分。这表明失败更多地源于合同不一致的自我验证,而不是有限的预算或骨干力量。