候选采纳与发布权限是两项不同的判断。
Crucible 是独立于策略搜索的实验内核。候选提交依据允许修改的面与冻结的契约加以验证,配对任务在单独的测量 checkout 中汇总,结果为 KEEP、REJECT 或 INVALID。
train 判定
允许修改的面内的一个候选,在隔离的 checkout 中按固定契约测量,由预注册的规则决定 KEEP、REJECT 或 INVALID。
propose → preflight
search/supervisor.py执行 · 判定: 请求候选search/producers搜索 supervisor 向生产者请求候选。r14 的候选是 replay producer 重新应用的早先候选(r13),并非新的 LLM 生成候选。
search/producers数据: 一个候选提交propose → preflight
search/supervisor.py生产者在允许的路径内返回单个候选提交。
propose → preflight
search/supervisor.py执行 · 判定: 允许修改的面 · diff 检查允许修改的面 · 候选 diffcontract.py候选 diff 必须在契约允许修改的面之内,并验证冻结的评测器。在 r14 与 r35 中,允许修改的目标只有 tau2_agent_policy.md 一个文件;core 与 Crucible 实现作为评测器路径被固定。
evaluate → decide → record
search/supervisor.py执行 · 判定: 隔离的 checkout与生产者隔离measurement checkout候选在与生产者隔离的测量 checkout 中接受检查。
与生产者隔离
measurement checkout执行 · 判定: 在固定契约下运行tau2 运行 · receiptassays/基线与候选以相同的契约、种子与任务运行。
tau2 运行 · receipt
assays/数据: actor · 用户对话tau2 环境GEODE 智能体(actor)在 tau2 任务环境中与评测器所属的模拟用户对话。
tau2 运行 · receipt
assays/数据: 模型调用actor · 用户模型在 r14 与 r35 中,actor 与模拟用户均为 gpt-5.4/high(订阅)。
任务验证器
assays/数据: paired evidencepaired · task · family 汇总promotion.py任务验证器的结果以基线–候选配对的形式保存。
冻结的评测器 · 预注册
contract.py执行 · 判定: 预注册的汇总规则paired · task · family 汇总promotion.py配对结果按 task 与预注册的 family 汇总,预算、覆盖率、基础设施与安全条件另行检查。
KEEP · REJECT · INVALID
promotion.py执行 · 判定: KEEP · head 移动search/* headrefs/crucibleKEEP 时,refs/crucible/search/* 的下一个 head 变为该候选。train 判定的 promotion_authority 为 none。
拒绝 · 无效 · 反馈
REJECT 与 INVALID 保留 head,下一个候选只得到失败代码与固定的 train 任务 ID。INVALID 不是零分。
任务验证器
assays/数据: paired evidencepaired · task · family 汇总promotion.py任务验证器的结果以基线–候选配对的形式保存。
冻结的评测器 · 预注册
contract.py执行 · 判定: 预注册的汇总规则paired · task · family 汇总promotion.py配对结果按 task 与预注册的 family 汇总,预算、覆盖率、基础设施与安全条件另行检查。
KEEP · REJECT · INVALID
promotion.py数据: REJECT · INVALID失败代码 · train 任务 IDattempt/feedback.json被拒绝或无效时,保留之前的 head,候选及其记录也会保存。INVALID 的均值是 null,而不是零。
失败代码 · train 任务 ID
attempt/feedback.json数据: 失败代码 · 任务 IDsearch/producers反馈给下一个候选的内容仅限失败代码与固定的 train 任务 ID;不传递评测器的执行记录或答案。
sealed 资格 · 权限分离
train KEEP 只移动搜索 head。sealed 资格也只到达 eligible ref;产品发布与部署是 Crucible 之外的独立权限。
evaluate → decide → record
search/supervisor.py数据: record · ref receipttrain bundle · 重新计算的 KEEPattestation/bundle.py只有契约、基线与候选的证据、重新计算的 KEEP、提议谱系、supervisor 记录与已应用 ref 的 receipt 全部衔接,train bundle 才成立。它不是改进的别名。
train bundle · 重新计算的 KEEP
attestation/bundle.py执行 · 判定: 仅 train bundle · 一次不相交的 test pack · 仅用一次attestation/sealed.pysealed 评测使用与 train 不相交的 test pack,只用一次,基础设施重试为零。
ELIGIBLE · release_authority none
attestation/sealed.py执行 · 判定: 仅到 eligible refeligible/*refs/crucible即使为 ELIGIBLE,也只写入 refs/crucible/eligible/*,release_authority 固定为 none。
公开记录 · r14 · r35
r14 先为 train KEEP,后为 sealed REJECT;r35(2026年7月13日)因覆盖率不足与基础设施污染判为 INVALID(0 个配对行,均值 null),head 未变。
KEEP · REJECT · INVALID
promotion.py数据: 公开的 verdict.jsongeode-eval-artifacts公开产物是固定于 23e3428 的规范化记录。r14 预注册的 train 配置哈希与公开配置的字节不同,因此完整的原始链并未重新认证。
attestation/sealed.py数据: sealed decision.jsonr14 · train KEEP → sealed REJECT
geode-eval-artifactsr14:在 telecom train 上 6 个任务 × 1 次试验(6 个配对行,无晋级权限)得到 KEEP,随后单独的 sealed 判定为 REJECT(无发布权限)。
所有连接以相同粗细显示。选择一个流程,即只突出显示其路径,并标出步骤编号。
- 实线 · 请求、候选与结果的流向
- 虚线 · 执行、判定、授权、配置
- 粗黑线 · 所选流程;数字表示顺序
- 方框 · 代码或记录的边界,顶部标注路径
- 内层小框 · 该边界内的组件
- 虚线框 · 该边界之外
- 搜索 supervisor
- 契约 · 判定 · 证明
- ref · 记录
- 生产者 · 执行
Crucible 是独立于 SIL 的内核;两种搜索并非相互晋级对方候选的同一条流水线。产品发布方框没有任何传入连接。
- 三种权限
- train KEEP 移动搜索 head,sealed ELIGIBLE 记录 eligible ref,产品发布是 Crucible 之外的独立决定。先前的判定从不授予后续的权限。
- null 不是零
- r35 计划 9 个任务 × 3 次试验(每个 arm 27 行),但可比较的配对为 0,因此其均值与改进值为 null。这不是 27 个任务失败,也不是 0% 成功率。