Sentence by sentence
逐句拆解(左:他的原话;右:对不对、他要什么、我们怎么动)
✓ 成立 · ◐ 部分成立 · ✗ 不成立。回法标签同 rebuttal1。
Critical Weaknesses
The claims go well beyond what the method actually does.
◐ 对标题/摘要/Figure 1 成立,对方法本身不成立。他要的是把 claim 收回到方法能做的事。动作:认具体句子并给出替换措辞(⑤),同时用下面的 edit→check 框架守住“anticipation”这个词(①)。
The title, the abstract and Figure 1 all present the agent as foreseeing an edit's effect before it makes the edit.
✓ Figure 1 题注原话 “only ANTE forecasts the edit's effect and lets execution settle it before committing”(p.2);p.2 正文 “anticipates that the proposed edit would break other tests, chooses an alternative fix”。动作:Figure 1 用真实轨迹重画(F3),摘要/p.2 改成 “forecasts the outcome of the check that follows each edit”。
In Figure 1, the belief written before the edit compares two possible fixes. It predicts that changing the function's output would pass the target test but break other code that calls the function, while adding a default value keeps all tests passing, so the agent picks the second fix.
✓ 他读图读得准(Forecast A / Forecast B 面板)。这是示意图,不是轨迹,但 schema 产不出这种 forecast,所以不辩。动作:认,“a two-fix comparison the repository schema does not produce”(Kangrui 原句)。
The method as defined cannot produce such forecasts.
◐ repository harness 上成立(dev 步 target_test 恒 NA,p.47);terminal harness 上不成立:check field 预测 hidden verifier 的整局结果,每步都写,edit 也写(Appendix J),Figure 14 右就是候选 fix 按预测排序。动作:认 repo,指出 terminal(① 结构区分),不夸大:Table 2 没有 TTO 行,terminal 的 TTO 数要新跑(F5)。
The forecast that execution checks has only two discrete fields: the result of the check run in the current step, and whether the command exits cleanly.
✓ p.2–3 的定义。动作:不争。把“离散、可机检、每步结算”当精确性来讲,而不是当狭窄来辩。
An edit step is always forecast as "no verdict" plus the exit code, and the summary gets no training signal in RL.
✓ p.47;p.4 “the summary tokens receive no gradient, since nothing checks a summary”。动作:认;顺手把 summary 的角色说清:Stage I 训、RL 不训、它是 forecast 的写作上下文 ci,t(Eq. 1)。
So the forecast written before an edit never says whether the edit will make the tests pass or break other tests.
✓ 字面成立,这是他的核心推论。动作(引导点一):不否认字面,换单位。edit 之后、看到任何后果之前写下的那个 check forecast,才是“对 edit 效果的预测”;它预测的结果还不存在,然后被执行裁决(Eq. 3、Eq. 18)。Type A 的 hit rate 就是这件事的度量(F1)。
The agent only forecasts a test result later, when it runs the tests, and by then the code has already been changed.
✓ 事实对,结论不同。沙箱里改动可逆(O.2 step 25 就用 git stash 撤回再重跑),不可逆的是 submit,而协议规则 5 要求 finish 前必须重跑验证(App. P)。“已改”≠“已承诺”。动作:一句话说清(①)。
For the same reason, ANTE-TTO cannot rank candidate edits by their effect on the tests.
◐ repo 上成立(两个 edit 只差 exit 预测,B9);terminal 上能(Figure 14 右)。动作:认 repo;TTO 的定位改成“belief 触发的重采样 + 在 check 候选间排序”,ranking 的贡献用同候选对照量出来(F2)。
The rising hit rate may also partly come from easy checks on scripts the agent writes itself.
◐ 机制上可能:BAPO 的步级 credit 只落在 conclusive check 步(Eq. 5),组按 forecast 和 decision 分、不按 check 类型(Eq. 4),trusted 命中一律 +α。是否发生没测。动作:跑 F1 拆分,加 base-rate 控制(④)。
The theory applies standard bounds under idealized assumptions that do not cover the algorithm as implemented.
◐ 论文自己写了理想化(p.19)和实现差异三处(p.21)。“标准”成立,“不覆盖”成立。动作:引用自己的话、定位为 motivation、主文明说(②),配 3Rua A4 的小样本估计。
Calling this an internal world model, and the abstract's stated aim of one that is "omniscient over both time and environment state," goes far beyond this evidence.
✓ omniscient 删(Overleaf 已删,回复说“已删”)。world model 给操作性定义:policy 内部对下一动作执行结果的 belief,被执行验证(WMA 先例:定义 + 与最近工作的区别,不辩名字)。动作:⑤ + ①。
Question 1 · hit rate 的来源
The paper's key evidence that the world model gets better is the rising forecast hit rate on conclusive steps (Figure 5(a)). At 32B it goes from 44% to 69% during RL.
✓ 准确(摘要、§3.5)。
These checks are tests that the agent chooses to run, including reproduction scripts it writes itself.
✓ App. P 的 CHECKING 步含 python reproduce_xxx.py。
The protocol also asks the agent to make each script print its own PASS or FAIL verdict (Appendix P).
✓ rule 4 原文 “MUST decide the outcome INSIDE the script and print a single final line VERDICT: PASS or VERDICT: FAIL”。
Some of these forecasts are easy. One example is predicting that a bug-reproduction script fails before any fix. Another is predicting that a script re-run with no code change gives the same result as last time.
◐ 不用 code 知识就能猜的两类(B 修前复现、C 原样重跑)。SFT 模型在 O.3 里 B 类连错两次,所以“easy”不绝对,但不要拿这点争(他的点是 edit foresight)。动作:在数据里报每类的 best-constant 和 rule baseline,让数字说话。
The paper's own example of the belief sharpening during RL (Appendix O.3) is of the first kind: the improved forecast is that the reproduction script fails on the still-unfixed code.
✓ 比他说的更糟:RL 前后 forecast 完全相同(FAIL, exit_ok false, abstain),变的是复现脚本;两步都 abstain。动作:认,O.3 改标为 B 类,补上 step 25 修后重跑的 forecast,再加一个 Type A 例子(O.4 step 21 现成:32B RL rollout 对自己刚打的 fix 预测 FAIL 并 trust,执行应验)。
BAPO also gives credit to the action at a step whose trusted forecast comes true, so the policy may even learn to run more such easy checks.
◐ 机制在(Eq. 5/18,组不分类型);是否发生 = F1 的 share 曲线 + w/o BAPO 对照。
Figure 18 shows that the share of scored forecasts stays stable, but not what kinds of checks they are.
✓ 总占比稳定与 mix 变化相容;而且 Figure 18(a) 的 7B 那条在降,回复里不要写 “holds”。
Could you split the hit rate in Figure 5(a) by type of check: checks run right after a code edit, reproduction runs before any fix, and re-runs with no code change in between? Could you also show how the share of each type changes during RL?
做(F1)。他的三类有重叠(修前的原样重跑既是 B 又是 C),所以要给精确标注规则:先判 C 再判 B,A 再拆 A-rerun / A-new。多给 base-rate 控制(MCC、best-constant),否则 Type A 命中率会因为 fix 变好而被动上升。
Only the first type shows whether the agent can foresee the effect of its own edits.
✓ 同意,而且就用这句接过去:Type A 是修订版的 headline(引导点二)。
Question 2 · TTO 的打分与对照
ANTE-TTO picks among candidates with a fixed score (Eq. 23). A forecast of PASS gets 3 points, "no verdict" gets 1, FAIL gets 0, and a predicted clean exit adds 1.
✓ p.32–33。
Under the protocol, edits and views are always forecast as "no verdict", so they score at most 2, while a check forecast to pass scores 3 or 4. So any check predicted to pass beats every edit, and two different edits can only be told apart by their predicted exit code.
✓ 算术对(repo harness)。动作:认,不绕。
In other words, the score favours optimistic forecasts: a useful check that is correctly expected to fail ranks below an unverified edit.
✓ check 预测 FAIL + clean exit = 1 < edit NA + clean exit = 2。他隐含的替代排序是“任何 check 排在任何 edit 前面”,那正是对照规则 (c) test-first。动作:认算术,说明 PASS ≻ NA ≻ FAIL 的意图(预测能解决的优先),然后把他的排序当对照跑(引导点三:把批评变成我们表里的一行)。
The paper's own SWE example shows this (Figure 14 and Appendix O.1). At step 7, the drafted edit scored 2. The winning candidate ran the reproduction script and scored 4 because it forecast PASS, based on the wrong belief that the bug was not there. The script in fact failed.
✓ 全对(p.33、p.39–40,论文自己写 “refutes its abstained forecast”)。动作:这个例子从“TTO 的成功案例”改为“重采样让错误 forecast 被执行揭穿”的例子,或换例子。
Had the forecast been correct (FAIL with a clean exit), this candidate would have scored only 1. The rule would then have kept the unverified edit that the paper says ANTE-TTO avoided.
✓ 反事实算术对。动作:认;它正说明 ranking 的贡献必须用对照量,不能靠案例。
The TTO gains in Table 1 are also small (+1.4, +2.4 and +0.6 points) and have no error bars. At 7B and 32B they are smaller than ANTE's own run-to-run standard error.
✓ p.36 的 s.e. 1.7 / 0.9 / 1.1。动作:3 seed 的 ± 和配对 CI(F2)。
On the same candidates, how does ANTE-TTO compare with simple rules that ignore the forecast? Examples are picking a test-running candidate whenever there is one, or picking at random.
做(F2 的 (b) random、(c) test-first)。test-first 的意思:K+1 个候选里只要有一个动作是跑测试/复现脚本,就选它(多个就选第一个),没有就保留 greedy 草稿;完全不看 forecast。它模拟的是 Eq. 23 实际在做的事(预测 PASS 的 check 永远赢 edit),所以是最尖锐的对照:若 (c) ≈ (a),forecast 在选择里就没贡献。
How often is the winning candidate's forecast correct?
做,而且要报两个量(下面 M1/M2):他问的是 M1(被执行的赢家的 forecast 事后对不对,日志直接数);你想报的“选出了好的候选的比例”是 M2,要在小样本上把 K+1 个候选都执行一遍才知道谁好。
Please report these with error bars.
✓ 每个数带 cluster bootstrap(按 task 重采样)的 95% CI;配对差用 McNemar 的不一致对。
Experiments, expected results, and why
实验规划:设计、预期结果和成因(表格在下一节 English tables)
这里只放设计、预期与成因(中英文);表格一律英文,放在下一节,形状就是最后贴进回复的样子。
F1 · hit rate 按 check 类型拆分(L:只分析日志;小规模容器重放)答 Q1 · B6 · 表 = Tables F1, F1b, F1c
| Labeling rule (apply in order, first match wins; key = check identity × source state) | Type | What a code-blind rule can guess |
| The same check already ran on the same source state | C re-run | The answer: the previous result |
| The source state equals the base commit (including after git stash) | B pre-fix | The issue says the target behaviour is broken → FAIL |
| The same check ran earlier on another source state | A-rerun | The result before the edit; whether the edit flipped it requires understanding the code |
| Otherwise | A-new | Nothing |
check 身份 = 归一化命令 + 它运行的脚本/测试文件的内容 hash(改了 reproduce_issue.py 就算新 check);源码状态 = 对 base commit 的 diff(非测试文件 + 包内新文件)的 hash,agent 的临时脚本不算源码。这正好把 O.3 step 24 判成 B(脚本变了、源码没变)。边界案例、伪代码和 ≥95% 人工一致性的 pilot 都在 Jifan 那页 §3b,发射时照搬。结果表 = Table F1(每类 share / hit / best-constant / MCC,外加 Type A “改坏了”的召回和 +25 的 shift-share 分解);对照 = Table F1b(w/o BAPO 的 mix,若 mix 只在 BAPO 下移动就是步级 credit 造成的);probe set = Table F1c(同一批 held-out context 逐 checkpoint 只做前向,最干净的 “forecaster 本身变没变好”,建议做)。
| Possible reading | Type-A MCC | Mix term | Mechanism | Lead sentence of the reply |
| 1 · Edit foresight improved | rises | small | The prediction loss trains the forecast on every verifiable step (Eq. 3); the model learns to judge the effect of its own edits | The Type-A curve and the decomposition: “most of the rise is post-edit accuracy” |
| 2 · A real gain plus a selection effect | rises | large | Forecasts improve and the agent also runs more predictable checks (BAPO’s incentive on the choice of check) | The Type-A number first; the BAPO incentive as a stated limitation |
| 3 · The rise is mix and/or base rate | flat | large | +α does not depend on how hard the check is; predictable checks earn above-average W in their group and the policy gradient favours them | Narrow the claim (Jifan’s 4b template); consider the mitigation: no decision reward and no anchor group for C steps |
| 4 · Flat on-policy, probe set improves | flat | · | Forecasts improved but post-edit checks became harder (more full-suite runs) | The probe set (Table F1c) plus a breakdown by check scope |
我们事先不知道落在哪一行(memory 里只有总 hit rate 0.44→0.63 单调升、NA 率 0.47→0.23 单调降,没有按类型的数)。四行都要有现成的句子,跑出来按行填。
F2 · TTO:同候选对照 + 赢家正确率 + 误差棒(E + L)答 Q2 · B9/B10 · 表 = Tables F2, F2b, F2c(与 rebuttal1 的 R2a–R2c 同一批跑)
表的形状就是 Kangrui 画的那张(Table F2),加 Btok、配对 CI 与不一致对(Table F2b)和 M1′。四个臂的候选集完全相同(同触发点、同 K=3、同温度),只换选法。
| Metric | How it is computed | Source | Question it answers |
| M1 winner-forecast correctness (the reviewer’s question) | Among executed winners, the share whose check-field forecast matched the realized outcome; conclusive winners only, NA reported separately; cluster bootstrap over tasks | TTO evaluation logs: candidates, scores, chosen index and next observation at every trigger step | Whether the win rests on an accurate forecast |
| M2 selection quality (your question: how often the chosen candidate was a good one) | On about 100 trigger steps, replay the trajectory prefix in the container and execute all K+1 candidates; the best set has the highest realized Eq. 23 score; report P(selected ∈ best set), the all-tie steps separately, and the chance rate |best| / (K+1) on the same candidate sets | Container replay plus the candidate texts in the logs | How much better than random the ranking picks on steps where the candidates differ; the same executions give δk for Reviewer 3Rua |
| M3 trajectory level (“a trajectory whose chosen action succeeded”) | The 2×2 of greedy vs TTO on the same tasks: resolved under TTO only / under greedy only / both / neither; the discordant pairs feed McNemar. A second layer by whether a draft was ever replaced, with the selection-bias caveat | Per-task results of the two arms and the switch flags in the logs | How many tasks the replacements saved and how many they broke |
预期与成因:random 持平或略降(3/4 的概率把 greedy 换成 T=1.0 单采样本,0823 probe 里 bo4 单遍 16/22/21 对 greedy 25);test-first 很可能 ≈ Eq. 23(算术决定:只要有预测 PASS 的 check 它就赢,两者只在“只有预测 FAIL 的 check”或“没有 check 候选”时不同);TTO − off 可能不显著(0823 的 7B n=100 预注册 probe 没有任何配置显著优于关掉,印值 +1.4 / +0.6 也小于 s.e.);M1 可能不高(world model 系统性乐观、少报失败,O.1 step 7 是一例),M1 − M1′ 才是 ranking 选到更准 forecast 的证据。若 test-first ≈ Eq. 23 且增益不显著:回复如实写,TTO 改写为 “belief-triggered resampling”,单独报触发器的价值(Table F2c 最后一行;0823 离线测量 7B 1.7× / 14B 2.5× / 32B 3.1×,重算后再用)。
F3 · Figure 1 重画(W)答 B5 · 和 zcGj C2 的字号配色一起改
| Panel | Now (a schematic the schema cannot produce) | Redrawn from a logged trajectory |
| Top: the same task under the three agents | The belief compares two fixes before the edit and predicts that A breaks the callers while B passes everything | ANTE applies a fix → writes the forecast before running the check (for example O.4 step 21: FAIL, trusted) → execution confirms it → revises the fix → forecasts again → PASS confirmed → submits. Reactive and Retrospective keep their “submit unchecked / record after the fact” contrast |
| Caption | “only ANTE forecasts the edit’s effect and lets execution settle it before committing” | “ANTE forecasts the outcome of the check that follows each edit, before running it; execution settles the forecast before the agent commits” |
| Source trajectory | · | Preferably a 32B A-new step from the F1 labeling whose FAIL forecast was confirmed; O.4 step 21 as the fallback; every quotation in the figure must be traceable to the trajectory |
F4 · Kangrui 的点 (2):verified belief 是否左右下一步(E,只生成不执行,可选)表 = Table F4
做法:取约 500 个已记录的 check 步,把上下文里上一个已结算 forecast 翻转(PASS↔FAIL),greedy 重新生成下一步,数动作变化率(工具 + 目标文件 + 归一化命令不同),对照是翻转一个无关 token。便宜(纯生成),证明 “belief 被用上了”(Eq. 1 里 action 以 belief 为条件),但不证明 “belief 准”,放附录别当主证据。Kangrui 的另一半 “推理时抹掉 belief block 看 resolve rate 掉多少” 不建议:会掉,但原因混杂(协议外输入、格式漂移),审稿人会说是 distribution shift。
F5 · Kangrui 的点 (3):terminal harness 上按预测给候选 fix 排序(E,可选)表 = Table F5
这是唯一 “候选 edit 按预测整局结果排序” 的场景(Figure 14 右);Table 2 没有 TTO 行,Kangrui 的 “[+Z] on Terminal-Bench” 要新跑(tmax-9B,3 个 benchmark × 3 seed,加 random 对照)。预期不敢写:terminal 的 check 字段是整局预测、只经 decision reward 训练(App. J),它对候选 fix 的判别力没测过。做了就如实报;没做就把那句从回复里删掉。
Strengths 栏的四条(B1–B4)在哪答
| Item | Reviewer’s words | Where it is answered | Status |
| B1 evaluation budget | “A larger evaluation budget is stated only for ANTE … part of the gap comes from budget” | The placeholder paragraph in Comment 4 | Depends on the actual evaluation budget of each Table 1 row; waits for your decision; no defence is drafted here |
| B2 headline against Reactive | “measured against the only baseline trained without the format reward and budget warnings” | Retrospective reported beside Reactive in the abstract and §3.2; Table R4 adds Retrospective to the OOD comparison; Table B2 | Wording + evaluation |
| B3 forecast ≈ memory at the small scales | “add almost nothing at the two smaller scales” | Stated as such (+0.2 and +0.2); the 32B gap 54.2 vs 52.4; the w/o BAPO row re-evaluated 3× (Table R1) | Wording + evaluation |
| B4 a single training run | “BAPO’s extra few points come from a single training run” | Table R1: the isolation control plus training seeds at 14B | Training (compute in the rebuttal1 tab) |
Rebuttal-ready tables
Tables as they will be posted in the reply to Reviewer BwwJ (English)
Final form. F1–F1c answer Q1; F2–F2c answer Q2 and are the same runs as Tables R2a–R2c for Reviewer 3Rua; F4 and F5 are optional; B2 restates the comparison concerns of the Strengths field with the submitted numbers. Dashed orange cells are placeholders to be filled only from the runs.
Table F1 · Hit rate by type of check during RL (32B; 7B and 14B in the new appendix)
Every conclusive step of the logged RL rollouts is labeled by the check it runs (normalized command plus a content hash of the script or test file) and the source state (hash of the diff against the base commit over non-test files, new package files included): C if the same check already ran on the same source state; B if the source state equals the base commit, including after git stash; A otherwise, split into A-rerun (the same check ran earlier on a different source state) and A-new. Start and end are the first and last bins of 10 RL steps. 95% CIs by cluster bootstrap over tasks.
| Type of check | Share of conclusive steps (start → end) | Hit rate (start → end) | Best constant forecast (end) | MCC (start → end) |
| A-rerun: the same check re-run after an edit | xx% → xx% | xx → xx | xx | .xx → .xx |
| A-new: a check run for the first time on edited code | xx% → xx% | xx → xx | xx | .xx → .xx |
| B: reproduction run before any fix | xx% → xx% | xx → xx | xx | .xx → .xx |
| C: re-run with no code change in between | xx% → xx% | xx → xx | xx | .xx → .xx |
| All conclusive steps (Figure 5(a)) | 100% | 44 → 69 | — | — |
Recall on post-edit checks that fail (forecast FAIL and realized FAIL, the case of Figure 1): xx% → xx%. Shift-share decomposition of the +25 points: a from accuracy on post-edit checks, b from pre-fix checks and re-runs, m from the change in mix (Δh = Σ_k avg(s_k)·Δh_k + Σ_k avg(h_k)·Δs_k, an identity). On 30 hand-labeled trajectories the labeling rule agrees with manual labels on xx% of steps.
Markdown for OpenReview
**Table F1. Hit rate by type of check during RL (32B; 7B and 14B in the new appendix)** Every conclusive step of the logged RL rollouts is labeled by the check it runs (normalized command plus a content hash of the script or test file) and the source state (hash of the diff against the base commit over non-test files, new package files included): C if the same check already ran on the same source state; B if the source state equals the base commit, including after git stash; A otherwise, split into A-rerun (the same check ran earlier on a different source state) and A-new. Start and end are the first and last bins of 10 RL steps. 95% CIs by cluster bootstrap over tasks.
| Type of check | Share of conclusive steps (start → end) | Hit rate (start → end) | Best constant forecast (end) | MCC (start → end) |
|---|---|---|---|---|
| A-rerun: the same check re-run after an edit | [xx% → xx%] | [xx → xx] | [xx] | [.xx → .xx] |
| A-new: a check run for the first time on edited code | [xx% → xx%] | [xx → xx] | [xx] | [.xx → .xx] |
| B: reproduction run before any fix | [xx% → xx%] | [xx → xx] | [xx] | [.xx → .xx] |
| C: re-run with no code change in between | [xx% → xx%] | [xx → xx] | [xx] | [.xx → .xx] |
| All conclusive steps (Figure 5(a)) | 100% | 44 → 69 | — | — |
Recall on post-edit checks that fail (forecast FAIL and realized FAIL, the case of Figure 1): [xx% → xx%]. Shift-share decomposition of the +25 points: [a] from accuracy on post-edit checks, [b] from pre-fix checks and re-runs, [m] from the change in mix (Δh = Σ_k avg(s_k)·Δh_k + Σ_k avg(h_k)·Δs_k, an identity). On [30] hand-labeled trajectories the labeling rule agrees with manual labels on [xx]% of steps.
Table F1b · Type mix with and without BAPO (32B)
The same labeling applied to the rollouts of ANTE w/o BAPO, which has the belief protocol and the prediction loss but no decision reward and no step credit. If the mix moves only under BAPO, the step credit is the cause.
| Type of check | ANTE share (start → end) | ANTE w/o BAPO share (start → end) | Checks per trajectory, ANTE (start → end) |
| A (rerun + new) | xx% → xx% | xx% → xx% | x.x → x.x |
| B | xx% → xx% | xx% → xx% | x.x → x.x |
| C | xx% → xx% | xx% → xx% | x.x → x.x |
Markdown for OpenReview
**Table F1b. Type mix with and without BAPO (32B)** The same labeling applied to the rollouts of ANTE w/o BAPO, which has the belief protocol and the prediction loss but no decision reward and no step credit. If the mix moves only under BAPO, the step credit is the cause.
| Type of check | ANTE share (start → end) | ANTE w/o BAPO share (start → end) | Checks per trajectory, ANTE (start → end) |
|---|---|---|---|
| A (rerun + new) | [xx% → xx%] | [xx% → xx%] | [x.x → x.x] |
| B | [xx% → xx%] | [xx% → xx%] | [x.x → x.x] |
| C | [xx% → xx%] | [xx% → xx%] | [x.x → x.x] |
Table F1c · Fixed probe set: the forecaster scored on the same contexts at every RL checkpoint (if run)
Held-out conclusive contexts outside the RL pool, with history and reasoning teacher-forced up to the value tokens and the realized outcome fixed; each checkpoint gives the PASS and FAIL token probabilities. Forward passes only, no generation and no execution. This removes the agent's choice of checks entirely.
| Type of context | Items | Log-loss (step 0 → 100) | AUROC (step 0 → 100) | MCC (step 0 → 100) |
| A post-edit | ≥300 | x.xx → x.xx | .xx → .xx | .xx → .xx |
| B pre-fix | 200 | x.xx → x.xx | .xx → .xx | .xx → .xx |
| C re-run | 200 | x.xx → x.xx | .xx → .xx | .xx → .xx |
Markdown for OpenReview
**Table F1c. Fixed probe set: the forecaster scored on the same contexts at every RL checkpoint (if run)** Held-out conclusive contexts outside the RL pool, with history and reasoning teacher-forced up to the value tokens and the realized outcome fixed; each checkpoint gives the PASS and FAIL token probabilities. Forward passes only, no generation and no execution. This removes the agent's choice of checks entirely.
| Type of context | Items | Log-loss (step 0 → 100) | AUROC (step 0 → 100) | MCC (step 0 → 100) |
|---|---|---|---|---|
| A post-edit | [≥300] | [x.xx → x.xx] | [.xx → .xx] | [.xx → .xx] |
| B pre-fix | [200] | [x.xx → x.xx] | [.xx → .xx] | [.xx → .xx] |
| C re-run | [200] | [x.xx → x.xx] | [.xx → .xx] | [.xx → .xx] |
Table F2 · ANTE-TTO against selection rules that ignore the forecast, on the same candidates (SWE-bench Verified pass@1, %)
Same trigger steps (abstain or predicted FAIL), the same greedy draft plus 3 sampled alternatives, the same temperature; only the choice of the winner changes. Mean ± s.e. over 3 candidate-sampling seeds; Btok measured as in Figure 4. M1 and M1′ count, on conclusive steps, how often the forecast of the executed candidate matched the realized outcome.
| Selection rule (same triggers, K = 3) | 7B | 14B | 32B |
| No TTO (greedy draft; Table 1) | 27.2 ± 1.7 · 1.00× | 46.2 ± 0.9 · 1.00× | 57.2 ± 1.1 · 1.00× |
| Random among the K+1 candidates | xx.x ± x.x · 1.xx× | xx.x ± x.x · 1.xx× | xx.x ± x.x · 1.xx× |
| Test-first: a test-running candidate whenever there is one, otherwise the draft | xx.x ± x.x · 1.xx× | xx.x ± x.x · 1.xx× | xx.x ± x.x · 1.xx× |
| ANTE-TTO (belief score, Eq. 23) | xx.x ± x.x · 1.xx× | xx.x ± x.x · 1.xx× | xx.x ± x.x · 1.xx× |
| M1: winner-forecast correctness (%) | xx [ , ] | xx [ , ] | xx [ , ] |
| M1′: forecast correctness of the replaced greedy drafts (%) | xx [ , ] | xx [ , ] | xx [ , ] |
Paired 95% bootstrap intervals of each arm against the greedy draft are given in Table F2b.
Markdown for OpenReview
**Table F2. ANTE-TTO against selection rules that ignore the forecast, on the same candidates (SWE-bench Verified pass@1, %)** Same trigger steps (abstain or predicted FAIL), the same greedy draft plus 3 sampled alternatives, the same temperature; only the choice of the winner changes. Mean ± s.e. over 3 candidate-sampling seeds; B_tok measured as in Figure 4. M1 and M1′ count, on conclusive steps, how often the forecast of the executed candidate matched the realized outcome.
| Selection rule (same triggers, K = 3) | 7B | 14B | 32B |
|---|---|---|---|
| No TTO (greedy draft; Table 1) | 27.2 ± 1.7 · 1.00× | 46.2 ± 0.9 · 1.00× | 57.2 ± 1.1 · 1.00× |
| Random among the K+1 candidates | [xx.x ± x.x] · [1.xx×] | [xx.x ± x.x] · [1.xx×] | [xx.x ± x.x] · [1.xx×] |
| Test-first: a test-running candidate whenever there is one, otherwise the draft | [xx.x ± x.x] · [1.xx×] | [xx.x ± x.x] · [1.xx×] | [xx.x ± x.x] · [1.xx×] |
| ANTE-TTO (belief score, Eq. 23) | [xx.x ± x.x] · [1.xx×] | [xx.x ± x.x] · [1.xx×] | [xx.x ± x.x] · [1.xx×] |
| M1: winner-forecast correctness (%) | [xx [ , ]] | [xx [ , ]] | [xx [ , ]] |
| M1′: forecast correctness of the replaced greedy drafts (%) | [xx [ , ]] | [xx [ , ]] | [xx [ , ]] |
Paired 95% bootstrap intervals of each arm against the greedy draft are given in Table F2b.
Table F2b · Per-task outcomes, ANTE-TTO against the greedy draft (500 tasks, seed-pooled)
Discordant pairs are the input to McNemar's test; the paired difference and its 95% bootstrap interval are over tasks.
| Outcome pair | 7B | 14B | 32B |
| Resolved under both | n | n | n |
| Resolved under ANTE-TTO only | n | n | n |
| Resolved under the greedy draft only | n | n | n |
| Resolved under neither | n | n | n |
| Paired Δ, 95% CI; McNemar p | +x.x [ , ]; p = x.xx | +x.x [ , ]; p = x.xx | +x.x [ , ]; p = x.xx |
| Among tasks with at least one replaced draft: resolved (TTO) vs resolved (greedy) | xx% vs xx% | xx% vs xx% | xx% vs xx% |
The last row is descriptive: triggers fall on uncertain steps, so tasks with a replaced draft are harder on average.
Markdown for OpenReview
**Table F2b. Per-task outcomes, ANTE-TTO against the greedy draft (500 tasks, seed-pooled)** Discordant pairs are the input to McNemar's test; the paired difference and its 95% bootstrap interval are over tasks.
| Outcome pair | 7B | 14B | 32B |
|---|---|---|---|
| Resolved under both | [n] | [n] | [n] |
| Resolved under ANTE-TTO only | [n] | [n] | [n] |
| Resolved under the greedy draft only | [n] | [n] | [n] |
| Resolved under neither | [n] | [n] | [n] |
| Paired Δ, 95% CI; McNemar p | [+x.x [ , ]; p = x.xx] | [+x.x [ , ]; p = x.xx] | [+x.x [ , ]; p = x.xx] |
| Among tasks with at least one replaced draft: resolved (TTO) vs resolved (greedy) | [xx% vs xx%] | [xx% vs xx%] | [xx% vs xx%] |
The last row is descriptive: triggers fall on uncertain steps, so tasks with a replaced draft are harder on average.
Table F2c · Selection quality on replayed trigger steps (M2)
On a subsample of trigger steps, all K+1 candidates are executed from a replay of the trajectory prefix. The best set holds the candidates with the highest realized Eq. 23 score; chance is the expected rate of a uniform pick on the same candidate sets; steps on which all candidates tie are excluded from the rate and reported separately.
| Quantity | 7B | 14B | 32B |
| Trigger steps replayed | 100 | 100 | 100 |
| Steps with a strict best set (not all tied) | n (xx%) | n (xx%) | n (xx%) |
| Selected candidate in the best set | xx% vs chance xx% | xx% vs chance xx% | xx% vs chance xx% |
| Test-first pick in the best set (same steps) | xx% | xx% | xx% |
| Share of truly failing steps among triggered steps vs untriggered steps (value of the trigger) | xx% vs xx% | xx% vs xx% | xx% vs xx% |
Markdown for OpenReview
**Table F2c. Selection quality on replayed trigger steps (M2)** On a subsample of trigger steps, all K+1 candidates are executed from a replay of the trajectory prefix. The best set holds the candidates with the highest realized Eq. 23 score; chance is the expected rate of a uniform pick on the same candidate sets; steps on which all candidates tie are excluded from the rate and reported separately.
| Quantity | 7B | 14B | 32B |
|---|---|---|---|
| Trigger steps replayed | [100] | [100] | [100] |
| Steps with a strict best set (not all tied) | [n (xx%)] | [n (xx%)] | [n (xx%)] |
| Selected candidate in the best set | [xx%] vs chance [xx%] | [xx%] vs chance [xx%] | [xx%] vs chance [xx%] |
| Test-first pick in the best set (same steps) | [xx%] | [xx%] | [xx%] |
| Share of truly failing steps among triggered steps vs untriggered steps (value of the trigger) | [xx% vs xx%] | [xx% vs xx%] | [xx% vs xx%] |
Table F4 · Does the in-context forecast steer the next action? (inference-only intervention, if run)
On logged check steps, the last settled belief in the context is edited and the next step is regenerated greedily; nothing is executed. The next action counts as changed when the tool, the target file or the normalized command differs.
| Intervention on the context | Next action changed (%) | Steps |
| Flip the last settled forecast, PASS ↔ FAIL | xx [ , ] | 500 |
| Flip the last decision, TRUST ↔ ABSTAIN | xx [ , ] | 500 |
| Control: perturb an unrelated token of the same block | xx [ , ] | 500 |
Markdown for OpenReview
**Table F4. Does the in-context forecast steer the next action? (inference-only intervention, if run)** On logged check steps, the last settled belief in the context is edited and the next step is regenerated greedily; nothing is executed. The next action counts as changed when the tool, the target file or the normalized command differs.
| Intervention on the context | Next action changed (%) | Steps |
|---|---|---|
| Flip the last settled forecast, PASS ↔ FAIL | [xx [ , ]] | [500] |
| Flip the last decision, TRUST ↔ ABSTAIN | [xx [ , ]] | [500] |
| Control: perturb an unrelated token of the same block | [xx [ , ]] | [500] |
Table F5 · Test-time selection on the terminal harness, where every step forecasts the episode outcome (Qwen3.5-9B, Tmax agent; resolved, %; if run)
On the terminal harness the check field forecasts the hidden verifier's outcome of the whole episode at every step, edits included (Appendix J), so ANTE-TTO ranks candidate fixes by their forecast before any of them runs (Figure 14, right). Table 2 reports no TTO row; these are new runs with the Table 2 protocol, 3 candidate-sampling seeds.
| Method | TB-Dev | TB-Lite | TB-2.0 |
| ANTE, greedy (Table 2) | 42.5 ± 3.3 | 45 ± 1.3 | 24.7 |
| + ANTE-TTO (trigger on the predicted exit field, Appendix J) | xx.x ± x.x | xx ± x | xx.x ± x.x |
| + random pick among the K+1 candidates | xx.x ± x.x | xx ± x | xx.x ± x.x |
Markdown for OpenReview
**Table F5. Test-time selection on the terminal harness, where every step forecasts the episode outcome (Qwen3.5-9B, Tmax agent; resolved, %; if run)** On the terminal harness the check field forecasts the hidden verifier's outcome of the whole episode at every step, edits included (Appendix J), so ANTE-TTO ranks candidate fixes by their forecast before any of them runs (Figure 14, right). Table 2 reports no TTO row; these are new runs with the Table 2 protocol, 3 candidate-sampling seeds.
| Method | TB-Dev | TB-Lite | TB-2.0 |
|---|---|---|---|
| ANTE, greedy (Table 2) | 42.5 ± 3.3 | 45 ± 1.3 | 24.7 |
| + ANTE-TTO (trigger on the predicted exit field, Appendix J) | [xx.x ± x.x] | [xx ± x] | [xx.x ± x.x] |
| + random pick among the K+1 candidates | [xx.x ± x.x] | [xx ± x] | [xx.x ± x.x] |
Table B2 · SWE-bench Verified gains over both baselines (pass@1 points; submitted Table 1)
The headline of the submission is measured against Reactive-RL; the revision reports both baselines side by side. Reactive-RL is the only variant trained without the format term and the budget warnings (Appendix G, p.31–32); Retrospective-RL carries both.
| Comparison | 7B | 14B | 32B |
| ANTE − Reactive-RL | +2.8 | +4.4 | +6.2 |
| ANTE − Retrospective-RL | +2.0 | +2.8 | +4.8 |
| ANTE w/o BAPO − Retrospective-RL (the belief and its prediction loss alone) | +0.2 | +0.2 | +1.8 |
| ANTE − ANTE w/o BAPO (BAPO) | +1.8 | +2.6 | +3.0 |
All entries are from the submitted Table 1; the w/o BAPO row was evaluated once and is being re-evaluated 3× (Table R1).
Markdown for OpenReview
**Table B2. SWE-bench Verified gains over both baselines (pass@1 points; submitted Table 1)** The headline of the submission is measured against Reactive-RL; the revision reports both baselines side by side. Reactive-RL is the only variant trained without the format term and the budget warnings (Appendix G, p.31–32); Retrospective-RL carries both.
| Comparison | 7B | 14B | 32B |
|---|---|---|---|
| ANTE − Reactive-RL | +2.8 | +4.4 | +6.2 |
| ANTE − Retrospective-RL | +2.0 | +2.8 | +4.8 |
| ANTE w/o BAPO − Retrospective-RL (the belief and its prediction loss alone) | +0.2 | +0.2 | +1.8 |
| ANTE − ANTE w/o BAPO (BAPO) | +1.8 | +2.6 | +3.0 |
All entries are from the submitted Table 1; the w/o BAPO row was evaluated once and is being re-evaluated 3× (Table R1).
The isolation and seed table for the Strengths-field concern B4 is Table R1 in the 3Rua tab.
Draft response
回复稿(英文,四条,每条 ≤ 5,000 字符)
Comment 1 以 Kangrui 的三点为骨架改写:把 “We respectfully disagree that ANTE therefore does not anticipate…” 换成“事实全认、后果读法不同”,更难反驳;去掉还没跑的 [+Z] 断言,改成占位。Comment 2 以 Jifan 的草稿为底压缩。所有数字占位 [INSERT …]。
Comment 1 / 4 · the weaknesses: what the forecast is, and what anticipation means here
Thank you for reading the method at the level of its definitions. Every factual statement in the weaknesses about the repository schema is correct, and we answer the conclusions drawn from them with measurements rather than with wording. We take the points in order and cite the submitted PDF by page.
The facts we agree with. On repository tasks the forecast has two fields, the result of the check the current step runs and the exit status (p.2–3); an edit step is forecast NA plus the exit code (p.47); the summary receives no RL gradient (p.4); and Figure 1 depicts a two-fix comparison written before the edit that this schema does not produce. We will redraw Figure 1 from a logged trajectory in which the agent applies a fix, forecasts that the check which follows will fail, and is proven right by execution (the pattern of Appendix O.4, step 21), and we will rewrite the abstract and p.2 so that no sentence places the forecast before the edit.
Where we read the consequence differently. The unit of anticipation in ANTE is the pair edit → check, not the edit alone. Immediately after an edit, and before any consequence of it has been observed, the policy writes a forecast of the outcome of the check that tests that edit. That forecast concerns a result that does not yet exist; execution then confirms or refutes it, and the prediction loss and the decision reward are computed from that verdict (Eq. 3, Eq. 18). The code has already changed at that point, but in a sandboxed repository the change is reversible (the agent in Appendix O.2 stashes its patch and re-runs the tests at step 25), and the irreversible commitment is submission, which the protocol does not allow before a verified re-run (Appendix P, rule 5). Whether the agent foresees the effect of its own edits is therefore an empirical question about exactly those checks, and we now measure it directly: the hit rate on checks run right after a code edit, split out as you ask in Q1 (next comment). On the terminal harness the schema is different: the check field forecasts the hidden verifier's outcome of the whole episode at every step, edits included (Appendix J), and ANTE-TTO there ranks candidate fixes by that forecast before any of them runs (Figure 14, right). The revision states the two schemas side by side in §2.1 instead of describing only the repository one.
On the remaining three sentences. The concern that part of the rise in hit rate comes from easy checks is legitimate and testable; our reply to Q1 reports the requested split together with base-rate controls. The theory is presented as motivation: the paper states its idealization (p.19) and lists the three ways in which the implemented objective differs from the surrogate (p.21); the revision says this in the main text and adds the small-sample estimate of the terms of Proposition 2 requested by Reviewer 3Rua. "Omniscient over both time and environment state" is removed, and "internal world model" is defined in §1 as the policy's belief about the execution outcome of its next action, verified by execution, which is what every accuracy number in the paper measures.
Comment 2 / 4 · Q1: hit rate by type of check
Q1, hit rate by type of check. We agree that the aggregate hit rate of Figure 5(a) cannot answer this on its own: it averages over checks the agent chooses, and BAPO's step credit applies only to conclusive check steps (Eq. 5), so a shift toward predictable checks is possible in principle. We re-analyzed the logged RL rollouts as requested.
Labeling. For each conclusive step we record the check (the normalized command plus a content hash of the script or test file it runs) and the source state (a hash of the diff against the base commit over non-test files, new package files included). A step is a re-run (C) if the same check already ran on the same source state; pre-fix (B) if the source state equals the base commit, including after git stash; and post-edit (A) otherwise, split into A-rerun, the same check ran earlier on a different source state, and A-new. Editing the agent's own reproduction script changes the check, not the source, so the Appendix O.3 example is B. On [INSERT: 30] hand-labeled trajectories the rule agrees with manual labels on [INSERT]% of steps.
Results (32B; 7B and 14B in the new appendix). [INSERT: Table F1: for A-rerun, A-new, B and C, the share of conclusive steps and the hit rate at the start and the end of RL, the best constant forecast, and MCC.] Of the +25-point rise, [INSERT: a] points come from higher accuracy on post-edit checks, [INSERT: b] from pre-fix checks and re-runs, and [INSERT: m] from the change in mix (exact shift-share decomposition). Without BAPO the type shares move by [INSERT], against [INSERT] with BAPO.
Base rate. A post-edit hit rate can also rise because the fixes improve while the forecast stays PASS, so we report MCC and balanced accuracy per type, as Table 12 does, and the recall on post-edit checks that fail, which is the case Figure 1 is about. [INSERT: Type-A MCC start → end; recall on failing post-edit checks start → end.] [INSERT if run: fixed probe set, the same held-out conclusive contexts scored by every RL checkpoint with history and reasoning teacher-forced and the outcome fixed; log-loss and AUROC on post-edit contexts.]
On O.3. You are right that this example is a pre-fix check: the forecast is the same before and after RL, and the hit comes from a better reproduction script. The revision labels it as such, shows the forecast at the post-patch re-run of the same trajectory (step 25), and adds a post-edit example [INSERT: task id].
Revisions. Figure 5(a) gains a per-type panel with MCC; Figure 18 gains the share of each type; the abstract reports the post-edit result as the world-model result.
Comment 3 / 4 · Q2: ANTE-TTO
Q2, ANTE-TTO. The arithmetic you give is right: under Eq. 23 a check forecast PASS outranks every edit, two edits differ only by their predicted exit code, and a check correctly forecast to FAIL with a clean exit scores 1, below an unverified edit at 2. The ordering PASS ≻ NA ≻ FAIL was chosen to rank a predicted resolution first; it does favour optimistic forecasts, and the O.1 step-7 winner is a case in which the forecast was wrong and the execution exposed it. We therefore report the controls you name, on identical candidates.
Controls. The trigger rule (abstain or predicted FAIL, Algorithm 3), K = 3 and the sampling temperature are fixed; only the choice among the K+1 candidates changes: (a) Eq. 23; (b) a uniform random pick; (c) test-first, take a test-running candidate whenever there is one and otherwise keep the draft, which is the ordering your analysis implies; (d) the greedy draft, no resampling. Each arm runs with 3 candidate-sampling seeds. We report mean ± s.e., the measured token budget B_tok as in Figure 4, a paired 95% bootstrap interval against (d) over the 500 tasks, and the discordant pairs (tasks resolved under (a) only, and under (d) only). [INSERT: Table F2 at 7B / 14B / 32B.] [INSERT: K ∈ {3, 5, 7}.]
Winner forecasts. From the same logs, the share of executed winners whose forecast matched the realized outcome on conclusive steps, next to the same share for the greedy drafts they replaced. [INSERT: Table F2, rows M1 and M1′.] On a subsample of [INSERT: 100] trigger steps we also execute all K+1 candidates from a replay of the trajectory prefix and report how often the selected candidate was among the best available by realized score, against the chance rate for the same candidate sets, with ties counted separately. [INSERT.]
What changes in the paper. The Table 1 TTO row is replaced by the measured mean ± s.e.; the sentences on p.8–9 that call its gains consistent, and the paragraph on p.9 that calls them the empirical side of Proposition 2, are rewritten to what the controls support. If (c) matches (a), we will say so and describe ANTE-TTO as belief-triggered resampling whose selection rule adds little beyond preferring a check; the value of the trigger is then reported on its own [INSERT: share of truly failing steps among triggered steps, against the untriggered rate].
Comment 4 / 4 · theory, the name, and the comparison concerns in the Strengths field
Remaining points.
(i) Theory. The bounds are standard and the assumptions idealized, as the paper states (p.19, p.21). The revision moves that statement into §2.3, presents the propositions as motivation for the prediction loss and the selection rule, and adds the small-sample estimate of the terms of Proposition 2 requested by Reviewer 3Rua [INSERT: numbers].
(ii) Name and abstract. "Omniscient over both time and environment state" is removed. "Internal world model" is defined in §1 as the policy's belief about the execution outcome of its next action, verified by execution; "world model accuracy" becomes "forecast hit rate on conclusive steps".
(iii) The comparison concerns in the Strengths field. Retrospective-RL is reported next to Reactive-RL as a second headline baseline in the abstract and §3.2, and is added to the out-of-distribution comparison of Table 3 [INSERT: Table R4]. At 7B and 14B the belief and its prediction loss add +0.2 over Retrospective (Table 1), which we now state as such; the 32B gap is 54.2 against 52.4, and the w/o BAPO row is re-evaluated three times to carry its own ± [INSERT]. The BAPO increment is re-measured with an isolation control that keeps the decision reward and changes only the advantage construction, and [INSERT: with training seeds at 14B] (Table R1, shared with Reviewer 3Rua). [INSERT: the evaluation budget of every Table 1 row, and the stopping rule of the Retrospective run in Figure 6 / Appendix O.2, after the authors' check of the evaluation records.]
We hope these measurements address the main reason for the score. If any point remains, we would value the chance to address it before the discussion closes.