01 · PAPER IN ONE PAGEYao et al. · arXiv:2608.22631v3

训练环境越多未必越好:先确认 reward 有没有奖励正确的行为

RIVER 从 14,399 个 TMax 环境中筛出约 3.5K 个,再用轻量 repetition penalty 修正 turn-level advantage。River-8B 在四个 terminal benchmarks 上平均 19.4±1.2。

论文进一步提出:SFT 提供 atomic skills,RL 主要重排跨 turn 的高层 behavior。

35.8%TMax 被 GPT-5.4 判 CLEAN
≈3.5Krubric + oracle pass@2 后留下
0.74RL behavior features 的 success AUC
9.4/10博客作者个人兴趣程度
来源:论文 Abstract、Figures 1-2、Table 1。所有图表均重绘,不复用论文原图像素。
02 · PART 0task package · policy · harness · verifier

先分清四个角色,后面才不会把“GPT-5.4 judge”混成一个东西

TMAX AUTHORS

任务包

生成 instruction、Docker / bundled data 与 task-specific verifier。

RIVER AUDIT

筛选器

GPT-5.4 静态审计三类材料;GPT-5.4 + Terminus-2 做 oracle pass@2。

TRAINED POLICY

被训练对象

在容器里执行 command;能读权限允许的所有文件。

TASK VERIFIER

Outcome reward

Rollout 结束后运行。全部检查通过才给 binary reward 1。

来源:论文 §3.2、Appendix A、C。Audit verdict 不直接进入 policy prompt。
03 · MOTIVATIONcoverage is not reward integrity

弱 verifier 会把一个错误策略变成 RL 的“成功样本”

INSTRUCTION做任务 A例如,从视频 OCR ticker,或实现一个正确的 Rust pipeline。
ENV DEFECT泄露 / 错测Reference 可读,或 checker 依赖未写出的实现细节。
POLICY选择捷径复制答案比完成任务更容易,或者正确实现被迫迎合 test。
REWARD1 / 0 颠倒错误得到正反馈,正确实现得到负反馈。
RL UPDATE放大偏差更多 rollout 只会更稳定地优化错误目标。
来源:论文 §1、§3.2、Appendix C.4。
04 · HYPOTHESISagentic compositional generalization

SFT 与 RL 改变的层级不同:一个补技能,一个重排策略

PRE-TRAINING + SFT

Atomic skills

  • 写 grep / shell pipeline
  • 调用编译器与 package manager
  • 理解领域知识
  • 判断单个 action 是否局部正确
→
RL FROM VERIFIERS

High-level behaviors

  • 先 inspection 再修改
  • 错误后换方案
  • 结束前验证
  • 避免重复 command / observation loop
来源:论文 Figure 1、§3.1。论文称结果与该假设一致,没有把它写成严格因果定理。
05 · RELATED WORKscale · tests · mechanism

RIVER 没有再造 task generator,它把上游环境当成需要审计的训练数据

路线扩展对象JudgeRIVER 增加了什么
Endless-Terminals大规模 executable environments各环境 outcome verifier检查 verifier 信号是否可信。
TMax14,399 tasks 的 domain / skill coverage随任务发布的 verifier直接从这个 pool 筛到约 3.5K。
Stronger testsCoding task 的 test coverage更强 unit tests同时检查 instruction、container、verifier 三者一致性。
Compositional generalization单轮 reasoning primitivesfinal answer reward扩展到有 command、observation、recovery 的多轮 agent。
来源:论文 §2。表格是本文按研究边界整理。
06 · METHOD14,399 → ≈3.5K → RL

两级过滤解决“该不该训练”,behavior rule 解决“怎样给更密的信号”

RIVER pipeline
根据论文 Figure 2、Algorithm 1、§3.2 与 Appendix A-C 重绘。
07 · RUBRIC AUDITGPT-5.4 reads instruction + Docker + verifier

CLEAN 只有一个,其他七类分别描述 reward 为什么不可信

CLEAN

正确方案能过

Instruction 清楚,环境可用,verifier 检查任务要求的结果。

TOO WEAK

假答案也能过

只验格式、计数、关键词或固定输入。

MISMATCH ×2

三件套不一致

Instruction↔verifier,或 instruction↔environment 冲突。

ANSWER LEAK

答案可见

Instruction 或容器文件直接暴露 expected answer。

AMBIGUOUS

缺规格

多个合理解释,checker 只接受其中一个。

TRIVIAL

没有学习信号

写常量、echo 或复制文件就能完成。

OTHER

运行级缺陷

Buggy checker、缺 GPU / service、矛盾或非确定性。

ONE PRIMARY LABEL

一个任务可多病

Audit 仍强制选一个主类别,所以八分类一致率会偏低。

来源:论文 Appendix C.1。
08 · DATA QUALITYclean rate + blind re-judge

Defect 比 CLEAN 更容易跨 judge 复现

Environment audit results
根据论文 Figure 11、Table 7 与 Appendix C 重绘。83.3% 不是 population agreement。
09 · JUDGE EXECUTIONvisible vs hidden boundary

训练 policy 只拿 task verifier 的结果;audit 与 oracle 都发生在数据准备阶段

PACKAGE任务包instruction、container files、verifier。
FILTER静态审计GPT-5.4 给主 verdict;不进入 policy prompt。
ORACLEpass@2去掉两次都失败的过难或不兼容环境。
ROLLOUTPolicy 交互看 task、history、terminal observation 和可读文件。
OUTCOMEPASS / FAIL原 task verifier 全部通过才给 reward 1。
SHAPINGturn penalty重复 command + observation 的 tokens 额外扣 δ。
来源:论文 §3.2、Appendix A.2、C。论文未发布统一 checker implementation。
10 · REAL CASEtask_003722 · leaked reference

OCR 只做到 0.368,复制可读的 ground truth 后变成 1.0

T1发现答案Agent 在 /app 读到 ground_truth.txt。
T2-T5正常 OCR抽帧、裁剪 ticker、构造含重复与乱码的结果。
T60.368自己恢复的文本远低于 checker 的 0.85 门槛。
T7覆盖输出改用刚才读到的 reference 文本。
T81.0 → reward 1分数证明文件相同,却没有证明视频理解成功。
来源:论文 Appendix C.4,Answer Leak case task_003722。
11 · REAL CASEtask_006064 · brittle source check

输出测试全部正确,却因为 Rust API 名称不同得到 reward 0

Two verifier failure cases
Agent-visible requirement只保留 ASCII a-z 和空格,输出 top-3 tokens 与 3×3 covariance。
Functional evidenceis_ascii_alphabetic() 符合要求;tokens 与 covariance 两个测试都通过。
Hidden extra condition第三个 test grep 字面量 is_alphabetic。合法 API 名不同,整题 FAIL。
来源:论文 Appendix C.4,Brittle Source-Code Check case task_006064。
12 · ADVANTAGE SHAPINGafter GRPO group normalization

只有 command 与 observation 都高度重复,才处罚这个 turn 的 response tokens

Ãi,t = Ai + si,t
si,t = −δ if both Jaccard > 0.8
δ = 0.05 · cap = 0.15 / rollout
# explanatory reconstruction, not official code
repeated = any(
  jaccard(cmd, old.cmd) > 0.8
  and jaccard(obs, old.obs) > 0.8
  for old in prior_turns
)
if repeated:
  token_advantage += -0.05
来源:论文 Eq. (1)、§3.2、Appendix A.2。训练代码未公开。
13 · MAIN RESULTS589 tasks · 3 seeds · native harnesses

River-8B 四项都领先,平均 19.4±1.2;最强 baseline 为 17.8±0.7

River-8B main results
根据论文 Table 1 重绘。OpenThoughts-TBLite 为 continuous score,其余三项为 binary。
14 · BEHAVIOR ABLATIONcorrelation is not intervention

能预测成功的 behavior,直接奖励后未必提高结果

OUTCOME ONLY

标准 GRPO

Task verifier 给 trajectory-level binary reward。它看不到行为发生在哪个 turn。

+ REPETITION PENALTY

行为下降,分数提高

重复比例减少,并出现可见的整体 performance improvement。最终 recipe 保留。

+ VERIFY REWARD

行为增加,分数没涨

结束前验证更频繁,却没有额外 performance gain。相关特征不是自动成立的 causal target。

来源:论文 Figure 3、§4.1。
15 · GENERALIZATION ACROSS STACKSQwen3.5 2B/4B/9B · Qwen3.6 27B · Vanillux2 · DPPO

换 model family、size、harness 与 RL objective 后,过滤集仍有更大的 RL gain

TRAINING DATA<30%

约 3.5K / 14,399 environments。

TB-LITE+106%

相对完整 TMax 的平均 RL gain 增幅。

TB-v2.1+30%

相对完整 TMax 的平均 RL gain 增幅。

来源:论文 Figure 4、§4.2。这里是相对 RL gain,不是绝对 benchmark 分数。
16 · DOMAIN TRANSFERheld-out TMax tasks · 8 skill groups

只用 Debug + Systems 的约 800 个环境做 RL,整体仍从 32.3 升到 49.2

Domain transfer results
根据论文 Table 2、Figure 8 重绘。它是同一 synthetic family 内的 held-out,不是独立真实部署分布。
17 · EVIDENCE BOUNDARYwhat the paper can and cannot establish

结果很完整,复核条件仍缺四块

NO GOLD AUDIT

LLM labels

全量由 GPT-5.4 判;Claude 只复判 120 个分层样本,GPT-CLEAN 的条件一致率 40%。

NO TRAINING RELEASE

Artifacts 不全

项目 repo 只有网页与图表输入,没有 3.5K 清单、训练代码、checkpoint 或 rollout logs。

HARNESS CONFOUND

8B 主表

River、OpenThinker、TMax 使用不同原生 harness。统一 budget 不等于只比较数据。

MECHANISM

相关证据

AUC、RSA、domain transfer 与假设一致,未证明全部增益都由 12 个 behavior 导致。

项目页源码 revision 6da2749,2026-09-29 核查;仓库未声明 license。
18 · TAKEAWAYSfor Claude Code / Codex harness research

把 evaluator 当成训练系统的一部分,先审计 reward,再扩环境

WHAT SURVIVES

一套可复用的实验框架

同时追 false positive 与 false negative;分开 audit、oracle、policy reward;用真实 rollout 解释 verdict;先做 behavior intervention 再决定 shaping。

WHAT TO BUILD NEXT

跨完整 harness 的 sealed evaluation

在 Claude Code、Codex CLI 与开源 runner 上使用同一批 sealed tasks;隔离 task generator、checker author 与 environment family;加入人工复核 reward disagreements。

个人兴趣度 9.4/10。高分来自研究问题与完整 harness 的相关性,不是对论文绝对质量的排名。
核心结论1 / 18