--- title: "Future-Commit 清理 (Future-Commit Cleanup)" created: 2026-06-15 updated: 2026-06-15 type: concept tags: [benchmark, evaluation, fairness] sources: [raw/papers/zheng-claw-swe-bench-2026.md] --- # Future-Commit 清理 (Future-Commit Cleanup) ## 定义 Future-Commit Cleanup 是在 SWE-bench 风格评测中,移除 Docker 镜像中 base_commit 之后的可达 Git 历史的操作。如果不清理,agent 可以通过 `git log` 或 `git show` 检视未来的修复提交,导致**信息泄露**,破坏 patch-based 评测的公正性。 ## 为什么重要 Claw-SWE-Bench 的非 Python 实例来自 SWE-bench-Multilingual,其 Docker 镜像可能暴露 base_commit 之后的提交。如果不处理: - Agent 可以"作弊"——看到正确答案 - Resolved Rate 被人为抬高 - 不同模型对信息泄露的敏感度不同,导致比较不公平 ## 实验证据 在 OpenClaw × 9 模型的清理前后对比中: - Pass@1 在清理后**从不上涨**(验证了信息泄露假设) - Claude Opus 4.7 下降最多:84.7% → 76.7%(**−8.0 pp**) - Kimi K2.6 下降 5.0 pp - Qwen 3.6-flash 下降 2.0 pp - GPT 5.5、MiniMax M2.7、Seed 2.0-mini 仅下降约 1 pp **关键洞察:** 不同模型对信息泄露的利用程度不同——某些模型更依赖"看到未来"来解决问题。 ## 实现方式 Runner 在 workspace 准备阶段移除 base_commit 之后的可达 Git 提交,使 agent 仅能在 issue 的历史边界内阅读、编辑和运行代码。 ## 参考 - [[claw-swe-bench|Claw-SWE-Bench 论文]] - [[patch-based-evaluation|Patch-Based Evaluation]]