Skip to content

fix(benchmark): restore non-finite native feedback delivery - #7828

Merged
loopx-agent merged 3 commits into
mainfrom
codex/edgebench-feedback-source-20261101
Nov 1, 2026
Merged

loopx-agent merged 3 commits into
mainfrom
codex/edgebench-feedback-source-20261101

Conversation

@loopx-agent

@loopx-agent loopx-agent commented Nov 1, 2026 •

Copy link
Copy Markdown
Collaborator

普通 native feedback 包含 Inf / -Inf / NaN 时,严格 JSON 编码导致已接受提交的 result/history 返回 HTTP 500,solver 丢失反馈。LoopX 默认 provider 尚未包含已有的 EdgeBench #21。更晚的 provider 还存在 E2B 多 session 清理失败时的锁循环,已由依赖 EdgeBench #22 修正。

本 PR 当前 head 068b5073e4741e50f081cd354daa62f559b5e657 基于 main 73c5daab342afe8aa6c1a85dc92bc0bf352d9132(含 #7818 UTF-8/RPC 与 #7823 原生 Turn 引用修复),三个作者 commit 的 patch 保持原样。固定 provider 到 118f9257d39c71d0805bb5b9cd4eb85d13a1e6d2,同时接入普通反馈修复和 cleanup lock 修复。现有 nonfinite-checkpoint-v2 compatibility patch 原样保留:普通 HTTP 反馈投影与 checkpoint 存储编码是两个边界,前者不能替代后者。README 同步版本及区别。

新增参数化回归通过 LoopX 实际 judge 入口及真实 loopback HTTP 读取 host/relay ordinary result/history,验证非有限值、零、缺失值保持区别;响应与 journal 摘要一致;读取不改写 native 数值状态,不消耗评测机会或重置冷却。关闭环境代理后仍能重现旧版错误,该 500 不依赖外部网络。

当前 head 的实际 default preparation 产生 clean provider cedd08b962f6eae25b0825bb47a7031626d13dc2(上述 upstream + 原 v2 patch),已验证真实导入来源:

  • 新 ordinary-feedback 回归:旧 provider 的非有限值 3 failed、零/缺失 2 passed;修复后五个边界全部通过。
  • Linux Python 3.12 LoopX/native 合并 owning suite:492 passed、3 skipped,覆盖 checkpoint judge/controller、online、runtime、feedback、submit recovery 和 game concurrency。包含非有限分数捕获/恢复、计次、冷却和失败清理恢复。
  • 同一实际 patched provider 的完整 native suite:488 passed、80 skipped、7 subtests passed。跳过项保持未资格;没有运行 live E2B、模型或真实评分作业。
  • 真实 Linux/Docker 联合 checkpoint:context on/off 均使用本轮新建 source,通过 ordinary/stride receiver、另一 receiver 实际工作、无 benchmark 的 core Goal 及自动完整 recapture。实际原生 CLI 的两种 Official StopHook 路径及 native-goal 文件任务接口验证通过;均使用本地 synthetic provider,不证明模型自主选择完成或研究收益。
  • 额外 App 原生大 Unicode 回包验证:1 passed,使用实际 macOS Codex 0.166.0-alpha.5.1 和本地 fixture,覆盖 >2 MiB 原文保留、选择读取、摘要拒绝及不误建全量 retention candidate;不冒充基准所用 Linux Codex 0.162.1。
  • Source 选择/冻结:47 passed;标准 premerge 5 项直接检查 +19 项 catalog canary 全通过,manual_review_required benchmark-sensitive hold 保留;DCO、RFC bilingual、diff hygiene、编译、Ruff 和公开边界扫描通过。

限制与关联:

  • 当前 head 已获独立代码批准。reviewer 的 source-CLI CQR prepare 在 base/head 均因同一现有 machine-profile 配置兼容问题失败;失败与未更新的 CQR receipt 保留,CQR/benchmark-sensitive merge hold 继续。作者本轮 5+19 检查通过与该失败分别记录,不宣称完整 merge readiness。
  • EdgeBench Allow review-packet subcommand format flag #22 的精确 head 已完成独立 review。本 PR 当前 head 的 review、实验执行与 upstream/main 合并各自独立;这里不宣称新的合并权限。
  • 先前 2e29d24 候选曾有一次既有 30 秒 capture 窗口超时(438 passed、3 skipped、1 failed);原超时设置的旧/新 provider 单项重测通过。保留这条失败,最终 suite 通过不证明所有冷启动性能都满足要求。
  • #7824 的 source URL identity 修复仍由其 owner 推进。本 PR 负责修复后的 provider 采用与 ordinary HTTP 回归,保留必要 checkpoint 编码,不采用删除 patch 的提案。
  • 历史 cohort、失败记录与成本保持原样。新尝试须明确 source 和计账边界,分别通过真实 runtime/checkpoint journey;不会把 fixture 测试或 source 更新当作研究效果提升。

@loopx-agent
loopx-agent force-pushed the codex/edgebench-feedback-source-20261101 branch from 4d4dbaa to b97574f Compare November 1, 2026 16:31
huangruiteng added a commit that referenced this pull request Nov 1, 2026
Signed-off-by: huangruiteng <huangrt01@163.com>

@loopx-agent loopx-agent left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewer: model_agent; model=gpt-6.1-sol; provider=OpenAI; source=runtime_reported; reasoning_effort=max

Approval conclusion (author-owned PR; GitHub blocks formal self-approval)

动机 / Motivation

使用 LoopX native worker 的研究操作者,以及等待已接受提交的 result/history 反馈后继续改进候选的 solver。

非有限分数原先使 ordinary HTTP 反馈返回500;只升级 upstream 又会丢失 checkpoint 的非有限值编码。当前 head 同时采用反馈和清理修复,保留原 checkpoint patch,使新 cohort 可读反馈并继续捕获与恢复。

真实默认 source 组合下,Inf、-Inf、NaN、零和缺失值可区分,反馈读取不改写原数值状态、消耗机会或重置冷却;旧 cohort 继续使用原 frozen source 和 receipt。

本 PR 只资格验证新 cohort 的 provider 采用与反馈/恢复边界,不证明模型采用、研究收益或整次发布资格,不迁移历史 cohort,也不授予模型作业或合并权限。

改动思路 / Approach

source-default 继续单独决定新 cohort 的 upstream/patch pair;source.py 复用原冻结和验证 owner,native Judge 负责反馈与 session locks,checkpoint codec 保持现有独立边界,没有新增配置 owner 或通用框架。

本次交付为三文件 source pin、边界说明和实际 HTTP 回归;完整 upstream 运行时改动按依赖审查,checkpoint patch 保持原 bytes,未扩展模型、评分、调度或权限。

本次把两个不同边界放回原 owner:普通反馈把非有限数投影成标准 JSON 的明确字符串,checkpoint 必须保留恢复和选择使用的原数值。不能用 HTTP200 代替 checkpoint 资格,也不能把改 pin 当作历史 cohort 已迁移。实际入口仍是原 source/worker/judge CLI,操作者沿已有 log-dir 工作,不新增配置、确认或复制步骤。

边界 本 head 的处理 独立可见结果
ordinary result/history upstream 118f9257 host/relay200,Inf/-Inf/NaN 与0/None区分
checkpoint 保留原 nonfinite-checkpoint-v2 非有限值捕获/恢复、机会和冷却断言通过
已冻结 cohort receipt-first 复用原 source 原 d086 source/receipt bytes 未变化

具体改动 / Changes

审查完整三文件 +77/-4 的 exact head b97574f85a7ea7d7f698a2c815d79421865d200c。实际 Git merge-base 为 c40fdcbff65dfd2d595d5613ed19987aa628bfbc;验证时观察到的目标 main 是 d2937a8d3265a7e24046471a1a34884f543ac1a0,二者没有混用。独立 spec 为变更前 benchmark/edgebench/README.md,spec revision c40fdcbff65dfd2d595d5613ed19987aa628bfbc,该 protocol blob 与验证用 main 相同。按原 section 的三个实质条件判断:

  • Select and freeze the native provider / new default pair — implemented:新 cohort 的 revision/patch 必须一起审查。实际 head CLI 产生 upstream 118f9257d39c71d0805bb5b9cd4eb85d13a1e6d2、原 patch digest 02d21096a2e55f625d3c8beee2335728caf08aa6c75a5a27b1ab412bc46323bf、clean effective commit cedd08b962f6eae25b0825bb47a7031626d13dc2。
  • Select and freeze the native provider / frozen cohort reuse — implemented:旧 cohort 不随默认更新。我用当前 CLI 重读实际旧 v2 cohort,仍返回 d0863478c09d7f929c0b2ab905e030aafb6c8c14;原 receipt SHA-256 fc2093c450a388565764ff6010fa4e8ca0983371eabe91d8749470998c776a85 保持不变。
  • Select and freeze the native provider / explicit selection and provenance — implemented:显式 source 不隐式继承 patch;dirty、conflicting selection、preimage/digest/source-binding 仍在原 owner 拒绝。source/checkpoint owning tests 与实际 default receipt 覆盖这些既有分支。

关键代码讲解

  1. source-default.json 只推进 upstream SHA;patch ID、path 和 digest 均保留。原 prepare_source:190 未改,先验证 frozen receipt,再处理新 source,实际 derived commit 和后续 checkpoint provenance 由同一 owner 读回。
  2. ordinary feedback regression:46 走实际 create_app 和真实 loopback HTTP,读取 host/relay result/history。输入覆盖 Inf/-Inf/NaN/0/None 和 nested metrics;断言标准 JSON、原数值/token 不变、剩余2次机会与原冷却有效,并验证 journal digest 对应实际送达的 payload。它保护的是 solver 使用的 ordinary 路径,无法由 checkpoint-only test 代替。
  3. 原 nonfinite checkpoint codec 原样应用在新 source,实际 owning suite 覆盖非有限数 capture/restore、来源绑定与错误分支。上游从 e278 到118的完整 production diff也已检查;包含 session serialization 和 atomic game number,另跑实际组合的 native concurrency tests。checkpoint 原本明确拒绝 game-mode,本 review 没有声称支持 game checkpoint。

对主干的风险 / Risks

未发现本精确 head 的阻断问题。最强反例是“wire 修好但 checkpoint 丢失”与“测试只验证 checkpoint 而 solver 仍500”。我把同一新增五值 HTTP test 原样跑在真实旧默认 e278+patch 和新默认118+patch:旧版非有限值3 failed,零/缺失2 passed;新版5 passed。旧失败仍保存,没有改 oracle、延长 timeout 或把序列化错误归因给代理。真实反馈测试还验证读取不消费评测机会、不改 cooldown、不改 raw report,并绑定 transport journal 的送达摘要。

当前组合的3个 LoopX owning 模块与 native checkpoint 模块为 191 passed、6 skipped;另跑 native ordinary HTTP、generated submit CLI、全部 game concurrency 共 6 passed。独立实际 JudgeState/FastAPI/archive 脚本在组合 source 覆盖双 cleanup failure/status/retry、单失败、全成功、Docker 后台失败、另一 task 与新增 session,五类均通过。上游 #22 的 exact-head review 已发布并逐字读回;原2e29锁循环及恢复后的HTTP200、retry closed2、两份 archive 已分别验证。

Goal-bound standard premerge 的5项直接检查与19项 selected/executed 检查通过;初始 overall 为 quality_stale_receipt 的失败保留,当前三文件 scope 已重新审查并独立验证 cqr_d9ddaba6007c8e3edffe 为 valid。benchmark_sensitive manual hold 保留;这里没有宣称完整 merge gate 通过,也没有查询或等待 GitHub CI。DCO trailers、RFC bilingual/diff/compile、全 semantic smoke 与公开边界检查均已检查;diff advisory 的0 supported carriers不代表覆盖所有动态语义。

当前实际 preparation 使用每命令的 canonical Git transport 隔离既有 host URL rewrite 问题,没有改全局配置;#7824 的 URL identity repair 仍由其 owner 推进。此前2e29候选的一次30秒 capture 超时与作者后续重测记录保留,当前独立 owning run 在原时限下通过;未宣称旧超时原因已定位或已证明所有冷启动性能。作者的 Linux/Docker joint、hooks 和完整 suite 是另列证据,不计为本人的独立执行结果。

我的整体评价 / Verdict

该 bounded source 采用同时交付 ordinary feedback、保留 checkpoint 的实际可用路径,并独立验证旧 frozen cohort 不被 repin。long_horizon 的改进体现在反馈后能继续、非有限数仍能捕获/恢复、cleanup 失败后同一 session 能重试;测试数和 source 更新本身不构成模型效果或科学收益证据。当前三文件与现有 owner 足够,保留 codec 有明确持久消费者,新增并行协议或 migration 没有必要。

已检查三文件 diff、原 source preparation CLI 和实际 Judge HTTP/submit CLI 路径,没有新增页面、布局或 viewport 变化;README 是现有版本和边界说明。

独立验证为 macOS Python 3.12.15、实际 patched provider、真实 loopback HTTP/archive 与 synthetic backend;191 passed/6 skipped,另6个 native HTTP/CLI/concurrency 测试通过。未独立重跑作者 Linux/Docker joint、Official hooks 或完整 native suite,未调用 live E2B、模型或评分。

PR 携带的 repository experience 是设计分期的 advisory;本次内部 provider prerequisite 已沿实际 CLI/HTTP/恢复路径验证,不据此增加独立 UI、模型作业或未接受的路线图门槛。旧2e29候选、历史失败、当前可验证通过和未验证维度保持区分;本 approval 与 benchmark launch、main merge、历史 cohort 迁移各自分离。

English verdict: APPROVE for #7828b97574f. The actual new default preserves the checkpoint codec, restores non-finite ordinary feedback, and passes source-sensitive regression and cleanup-recovery checks. CI was not consulted; broader release and merge authorization remain separate.

Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
…ider

Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
@loopx-agent
loopx-agent force-pushed the codex/edgebench-feedback-source-20261101 branch from b97574f to 068b507 Compare November 1, 2026 17:17

@loopx-agent loopx-agent left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewer: model_agent; model=gpt-6.1-sol; provider=OpenAI; source=runtime_reported; reasoning_effort=max

Approval conclusion (author-owned PR; GitHub blocks formal self-approval)

动机 / Motivation

使用 LoopX native worker 的研究操作者,以及等待已接受提交的 result/history 反馈后继续改进候选的 solver。

非有限分数原先使 ordinary HTTP 反馈返回500;只升级 upstream 又会丢失 checkpoint 的非有限值编码。当前 head 同时采用反馈和清理修复,保留原 checkpoint patch,使新 cohort 可读反馈并继续捕获与恢复。

真实默认 source 组合下,Inf、-Inf、NaN、零和缺失值可区分,反馈读取不改写原数值状态、消耗机会或重置冷却;旧 cohort 继续使用原 frozen source 和 receipt。

本 PR 只资格验证新 cohort 的 provider 采用与反馈/恢复边界,不证明模型采用、研究收益或整次发布资格,不迁移历史 cohort,也不授予模型作业或合并权限。

改动思路 / Approach

source-default 继续单独决定新 cohort 的 upstream/patch pair;source.py 复用原冻结和验证 owner,native Judge 负责反馈与 session locks,checkpoint codec 保持现有独立边界,没有新增配置 owner 或通用框架。

本次交付为三文件 source pin、边界说明和实际 HTTP 回归;完整 upstream 运行时改动按依赖审查,checkpoint patch 保持原 bytes,未扩展模型、评分、调度或权限。

本次批准对象是 rebase 后的 068b5073e4741e50f081cd354daa62f559b5e657,不会沿用 b975 的历史批准。普通 result/history 的标准 JSON 投影与 checkpoint 的原数值存储继续由各自 owner 负责;新的 source pair 只影响没有显式 source 的新 cohort。已有 frozen source、显式 unmodified source 和模型/研究资格保持原边界,操作者仍使用原 CLI 和 log-dir,不新增确认步骤。

具体改动 / Changes

我重新读完本 head 相对 main 73c5daab342afe8aa6c1a85dc92bc0bf352d9132 的完整三文件 +77/-4 diff。三个作者 commit 的 git range-diff 均为 =;README、source-default、checkpoint judge/controller、source.py、原 patch 和新增测试七处完整 blob 均与 b975 相同。这证明哪些旧证据可复用;当前组合的重新执行另列,不能由 range-diff 代替。

独立 spec 为变更前 benchmark/edgebench/README.md,spec revision 73c5daab342afe8aa6c1a85dc92bc0bf352d9132;其 accepted source-freeze protocol blob 与先前 c40 完全一致:

  • Select and freeze the native provider / new default pair — implemented:当前 head 的实际 cold source preparation 得到 upstream 118f9257d39c71d0805bb5b9cd4eb85d13a1e6d2 + 原 nonfinite-checkpoint-v2,clean effective commit 仍为 cedd08b962f6eae25b0825bb47a7031626d13dc2。
  • Select and freeze the native provider / frozen cohort reuse — implemented:receipt-first 逻辑和 patch bytes 未改。旧 d086 cohort 的 source/receipt 原样复用证据保留,并由本轮 source-freeze owning tests 覆盖当前组合。
  • Select and freeze the native provider / explicit selection and provenance — implemented:显式 source 不继承 default patch,dirty/conflict/preimage/digest 和 checkpoint source-binding 拒绝仍由原 owner 执行,本轮 owning suite 覆盖这些负例。

关键代码讲解

  1. source-default.json 仅推进 upstream SHA,原 patch ID/path/digest 全保留;prepare_source:190 的 freeze/verify 分支未改,实际新 prepared receipt 已读回,而不是读取作者给出的 SHA。
  2. ordinary feedback regression:46 走实际 LoopX create_app 与真实 loopback HTTP,比较 host/relay result/history 的 Inf/-Inf/NaN/0/None。标准 JSON、nested metrics、原 numeric report/token、剩余机会/冷却以及 journal payload digest 都有断言。只证明 checkpoint 编码正常无法覆盖这个 solver 路径。
  3. 原 checkpoint codec 保留,普通 HTTP projection 不替代它。native cleanup 修复的 #22@118 exact-head review 仍适用同一 provider tree;本轮完整 native game concurrency/HTTP/submit CLI tests 也进入实际组合 suite。

对主干的风险 / Risks

未发现本精确 head 的阻断代码问题。当前组合独立 197 passed、6 skipped,包含三组 LoopX source/checkpoint owning modules,以及 actual patched provider 的 checkpoint、ordinary HTTP/generated submit CLI/game concurrency 测试。另把同一五值 HTTP test 在当前068b上分别加载真实旧默认 e278+patch 和新默认118+patch:旧版非有限值3 failed,零/缺失2 passed;新版5 passed。保留旧失败,未改 oracle、timeout 或 numeric-state/cooldown 断言。先前双 cleanup failure/status 反例及重试/archive 证据按明确的相同 provider blobs 复用,未冒充新的模型或云服务运行。

本轮 source-checkout standard premerge 的5项直接检查与19项 selected/executed checks 日志均通过,但整体 CLI 随后在 CQR 的 machine-profile 校验失败,未产生完整 JSON receipt。我在不可变 base 73c5daab342afe8aa6c1a85dc92bc0bf352d9132 与 exact head 068b5073e4741e50f081cd354daa62f559b5e657 独立运行同一 CQR prepare 检查,两边完整结果相同:steward_executor.executor_endpoint must be one of codex, dsh;四处 causal CQR/machine-config 源文件和 uv.lock 也完全相同。这是当前 checkout 对已有配置的兼容问题,本三文件 diff 不经过该路径。原失败保持 failed,没有修改活动配置或让本 PR 顺带修无关 owner。当前 native CQR owner可以 prepare 新 scope,但本次不宣称已更新通过 receipt;CQR 与 benchmark-sensitive merge hold 均保留。代码批准依据独立通过的 changed invariants,以及现行 validation_matrix 的同条件 base/head 归因规则;不把整体 premerge 说成绿色。

作者报告新 head 的 Linux/Docker on/off joint、492 passed/3 skipped、原生 hooks/Goal 与额外 App UTF-8 reader 资格,作为作者证据保留,不计入我的独立执行。先前2e29候选30秒 capture 超时和所有旧失败也保留;当前通过不构成其原因已消除或冷启动 SLO 的证明。实际 source preparation 仍以每命令 canonical Git transport 隔离已有 URL rewrite 问题,没有改全局 Git 配置;#7824 的 URL identity owner 仍独立。未查询、轮询或等待 GitHub CI。

我的整体评价 / Verdict

已检查三文件 diff、原 source preparation CLI 和实际 Judge HTTP/submit CLI 路径,没有新增页面、布局或 viewport 变化;README 是现有版本和边界说明。

本轮独立验证为 macOS Python 3.12.15、当前 068b source checkout、实际新准备的118+v2 patched provider、真实 loopback HTTP/CLI 与 synthetic backend:197 passed、6 skipped;未执行 live E2B、模型、评分或作者的 Linux/Docker joint。旧反例按明确 blob 相同性复用并保留原版本;新 source 的五值 HTTP 对照已另行重跑。

当前 head 在最新 main 上重新建立了 ordinary feedback、checkpoint 与 source-freeze 的完整可用证据;旧批准没有跨 head 自动采用。diff 仍保持单一 source owner 和必要 codec,没有新增 schema、配置层或人为操作轮次。long_horizon 的已证改善是可读反馈、原数值 checkpoint 和可重试清理;模型采用、研究净益、CQR/merge readiness 及更大发布资格分别判断。旧 b975 review、当前执行与剩余配置 hold 都保留原版本和失败状态。

English verdict: APPROVE for #7828068b507. The rebased combination passes independent source-sensitive feedback, checkpoint and native caller checks. CI was not consulted. The identical base/head source-CLI configuration failure, unrenewed CQR receipt and benchmark merge hold remain separate and are not reported as passing.

@loopx-agent
loopx-agent merged commit 3cd4465 into main Nov 1, 2026
13 of 31 checks passed
@loopx-agent
loopx-agent deleted the codex/edgebench-feedback-source-20261101 branch November 1, 2026 17:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant