Repository navigation
fix(benchmark): isolate read-only native execution evidence by trial - #8171
Conversation
loopx-agent
left a comment
There was a problem hiding this comment.
Reviewer: model_agent; gpt-6.1-sol; OpenAI; runtime_reported; reasoning_effort=max.
Request changes conclusion (author-owned PR; GitHub blocks formal self-review)
动机 / Motivation
运行 heartbeat trial、并要求持续执行原任务的 benchmark operator。旧路径可能在最后一个局部 Todo 完成后停止;新选项希望保留整体执行承诺,让局部交付后仍能沿原 Goal 继续工作。单 trial 的真实 CLI 已能在承诺未满足时 replan、满足后验收,但共享 judge 上第二个已启用 trial 的启动 probe 仍失败。不改变评分、原预算、Stop、真实阻塞或默认 controls,也不把运行时长当成研究成果或模型收益。仍需修复多 trial 的 provider 路由;真实容器、模型采用及长期净收益尚未验证。
改动思路 / Approach
时长分类继续复用 TypeScript owner,整体承诺复用 Core Goal-only acceptance;Python 只做 native IO 与私有命令绑定,路由应按既有 native 身份分派。本 PR 仅交付显式启用的 SForge 执行承诺;当前必须修复同一 judge 的多 trial 分派,不要求完成整个 controller 或真实模型研究。显式 flag 是调用方不能从“还剩预算”推导出的意图;它通过原 Goal-only acceptance 持久化,局部 Todo 完成仍然合法。观察 provider 只返回履约状态,不授予评分、延长预算、派工或跨 trial 权限。冷态配置与 warm 只读比较也继续走原 CAS、验收与调度 owner。这个切片的方向合理,但同一 app 的 route 注册把独立 trial 意外耦合了。
这里采用了“先证明普通任务可用,再看局部技术覆盖”的复核方式:单 trial 通过并不能证明同一 judge 上后续 trial 也能开始。最小修复是保留现有 native 身份 owner,用一个路由选择对应 observer,无需新增 scheduler、全局协调器或另一份 Goal 状态。
具体改动 / Changes
评审完整 head d27ce5e,实际目标为 codex/edgebench-r17-full18-20261106,不可变 base/merge-base 均为 484a7f6,不是与移动的 main 混算。全 diff 为8路径、+971/-0:4个生产文件372行、3个测试文件554行、说明45行。由2b3ae30到当前 head 仅测试依赖导入改为可选;生产、文档、base与配置依赖均未变,相关测试和门禁仍在当前 head 重新执行,没有把旧批准沿用到新头。
依据改动前 benchmark/runtime/RUNTIME.md,spec_revision 484a7f6。原条款未编号,以下为便于对账的描述标签:finite-stops 保留 finite allowance、Stop、provider failure 与真实阻塞;phase-identity 保留原 Goal/Agent、Todo及 warm 状态;entry-no-fallback 保留原规划/准入与失败拒绝,不能用假 Todo 或恒假 provider 继续。现有 Goal-only 验收复用了这些边界;“局部交付不等于整体履约”也与原 alignment RFC §3.7 一致。这些规则不要求本 PR 完成整个 controller 或证明模型收益。
关键代码讲解
NativeExecutionEvidence.fulfilled读取 native segments、精确 runner liveness 与历史 SHA pin,经原 TypeScript duration owner 计算。它拒绝未知、缺失、symlink 与失配,向内取整避免小数时钟凭空增时;不把停机间隙当执行。install_execution_commitment先调用真实 native relay resolver,但每次安装都追加同一个参数化 URL。FastAPI 选中首个 handler 后不会因其404再尝试后面的 handler,形成下述 P1。observe使用 host-pinned relay,绕过 model API proxy,并核 schema、task、时效、严格 bool/unknown及响应上限。它准确把上述404转成不可用;问题不是需要放宽这个校验。_configure_execution_commitment在冷态绑定原验收,在 warm 仅比较继承文档并移除临时文件。protected probe 在模型入口前执行,故错误的404会直接阻止第二个合法 trial。
对主干的风险 / Risks
[P1] 同一 judge 的后续已启用 trial 被第一个 route 遮蔽(execution_commitment.py:155–164)。在同一个真实 native judge app 中准备合法 relay A/B,分别按文档调用两次 installer。两者均可由未修改的 native resolver 确认;但当前 head 的真实 FastAPI/Uvicorn 与 SForgeWorker 实际生成的 protected probe 得到:
| 安装顺序 | A | B |
|---|---|---|
| A → B | HTTP200,probe exit0 | HTTP404,probe exit1 |
| B → A | HTTP404 | HTTP200 |
交换的只有 installer 顺序,未知 relay 两次都仍被404拒绝。测试使用真实 native resolver、HTTP router和独立 observer 子进程;token 是合成输入,容器 backend 明确禁用,未启动模型或评分。现有单 provider 测试全部通过时,该反例仍成立。请在既有 native 身份边界按 run/task 分派已安装 observer(或使用不冲突的 exact relay route),补同 app 两个/新增第三个 trial、重复安装、两种顺序与未知 relay 的回归;不要放宽 probe、错误身份或 unknown 的拒绝规则。
当前 head 360测试 PASS,无 skip,包括真实 File/SQLite CLI 的局部 Todo 完成→replan、随后执行满足→验收,以及 warm provider revision/原配置字节不变;未知、错误task、过期、超大响应、旧环境和 workspace shadowing 负例也执行。默认关闭时,heartbeat-resume、heartbeat-explore、native-goal 三条路径在不可变 base/head 发出完整相同的 command/profile,生产无变化后的证据复用有明确失效检查。手动 native host 安装是文档声明的当前边界,不宣称普通 serve 自动接入或实际研究采用。
语义与 CI 对齐
没有新增 Core 共享词汇、第二计时器或通用 benchmark 义务;新的 wire schema 保持 SForge-local。当前标准 premerge 为 FAIL:5项 direct PASS、7项 selected PASS、2项 selected FAIL,另有1项 inherited maintainability advisory及 benchmark-sensitive manual hold。两项失败分别是原 progressive_context.ts 的裸 action literal 与 loopx.status.open_todo_items 兼容导出;已在不可变 base/head 用同命令独立复现完整相同失败细节,并核对因果源码 blob 未变。它们不冒充本 PR 的新回归,也没有放宽门禁;严格 CQR 仍按失败记录。远端 CI 按当前 wait_for_ci=false 未查询、未轮询、未等待。
我的整体评价 / Verdict
单 trial 的整体承诺桥接是有价值的有界增量,复用原时长与验收 owner 的方向可保留;但 long_horizon 与 user_experience 仍存在上述实际回归:第二个合法已启用 trial 无法开始,重复配置或 probe 不会恢复进展。检查了 benchmark CLI、HTTP provider 与验收命令;没有页面、卡片或排版变动。未验证范围:真实容器、实际模型、安装采用及长期收益未验证。时长分类继续复用 TypeScript owner,整体承诺复用 Core Goal-only acceptance;Python 只做 native IO 与私有命令绑定,路由应按既有 native 身份分派。本 PR 仅交付显式启用的 SForge 执行承诺;当前必须修复同一 judge 的多 trial 分派,不要求完成整个 controller 或真实模型研究。请先修复路由与多 trial 启动反例,再对新 head 复核;不能由360项通过、安装成功或 ready receipt 代替这个边界。未进行合并、安装升级或真实实验。
English verdict: REQUEST_CHANGES at d27ce5e: the first installed route shadows later valid trials; 360 tests pass, but the native HTTP/protected-probe counterexample fails and premerge remains held.
| """ | ||
| from fastapi import HTTPException | ||
|
|
||
| @app.get("/api/v1/feedback/{relay_id}/execution-commitment") |
There was a problem hiding this comment.
[P1] 用一个路由分派各 trial 的 observer
同一个 native judge app 对两个合法 run/task 分别调用 installer 时,会注册两条完全相同的参数化路径。FastAPI 始终命中第一条;第二个合法 relay 会在第163行与首个 run 比较后返回404,不会落入后注册的 handler。我用真实 native resolver、FastAPI/Uvicorn 及 SForgeWorker 实际生成的 protected probe 复现:A→B 安装时 probe exit 为0/1,交换安装顺序后失败对象交换;未知 relay 仍为404。请仅注册一次 route,按 native run/task 选择对应显式 observer(或使用不冲突的 exact relay 路径),补同 app 多 trial、两种顺序及重复安装的回归;保留原身份校验和失败拒绝。
loopx-agent
left a comment
There was a problem hiding this comment.
Reviewer: model_agent; gpt-6.1-sol; OpenAI; runtime_reported; reasoning_effort=max
Request changes conclusion (author-owned PR; GitHub blocks formal self-review)
[P1] 同一 judge 上后续合法 trial 仍被首个安装路由遮蔽。 当前准确 head 为 92fe078。旧 d27 的这项发现没有随激活方式修改而消失,本轮已在当前源码重新执行反例;沿用原行内讨论,不重复添加等价行内评论。
动机 / Motivation
在同一 native judge 上运行多个 heartbeat trial 的 benchmark operator。最后一个局部 Todo 完成后,旧路径可能提前停止;新路径把整体持续执行声明交给 Goal 验收,但第二个合法 trial 的启动检查会被第一个安装的路由挡住。单个 provider 的时长与传输负例通过,真实 HTTP 和公开 probe 仍只允许第一个安装的 trial;交换安装顺序后失败对象随之交换。本次只审源码桥接和隔离的协议边界,不运行真实模型、容器、评分或科学研究,不授权延长预算、合并或安装升级。同一个 app 的后续合法 trial 无法通过启动 probe;真实 SForge/Harbor caller 与 warm Core 集成也未由本轮环境独立资格化。把声明交给既有 Goal 验收的方向有用,但已安装的第二个合法 trial 不能开始,不能以单 provider 测试通过作为这个切片已交付的证明。
改动思路 / Approach
时长和 Goal 验收继续复用原 owner,Python 留在 native IO 边界;路由应只注册一次,并按已有 run/task 身份选择 observer。当前 PR 应修复这个局部路由并补多 trial 反例,保留有限预算、Stop、原身份和失败拒绝;不需要新 scheduler 或第二份 Goal 状态。原时长分类继续使用 TypeScript duration owner,原 Core 负责 Goal 验收与重规划。新增 Python 只读原生区间、pin 和进程存活,再给 scoped relay 返回履约状态;它不应通过重复注册同一路由把原本独立的 trial 耦合。当前 architecture assessment 是 simplify_now:只改既有 native 分派边界,不增加 coordinator、计时器、全局开关或另一份持续执行状态。整体声明是调用方明确意图,不能由“还剩预算”或模型文字推导;新的默认声明已在文档披露,但完整实际 caller 与 warm 采用尚未独立验证。
具体改动 / Changes
完整 base→head 为9文件、+979/−0:生产367行、说明53行、测试559行。实际目标是 codex/edgebench-r17-full18-20261106,不可变 base 484a7f6,不与移动 main 混算。旧 d27 到当前仅5文件 +37/−29,原 installer blob 未修改;这次结论来自当前完整 diff 和新执行,不继承旧评审。
规范依据 benchmark/runtime/RUNTIME.md,spec_revision 484a7f6,按改动前原章节映射:Task entry and planning ablation 为 not_met,合法第二个 native identity 的入口被其他 trial 的 handler 拒绝;Results, timeout and recovery 为 deferred,本轮没有 native SDK 的实际 cold/warm Core 验收证据,Stop/预算等原 owner 没有被源码改写;Native SForge task entry 的失败拒绝边界由严格公开 probe 实测,完整 worker 集成仍未验证。新增的执行承诺文档是提案本身,不拿它给自身认证。
关键代码讲解
-
install_execution_commitment:安装只读 native 路由。每次调用都注册同一参数化路径,后来的合法 trial 被首个 handler 拒绝;身份必须匹配,但不能让首个 trial 捕获后续 trial。消费者为 SForge public probe。 -
observe:读取并核验 scoped provider。错误 task、未知值、过期或超大数据保持拒绝;404 不会变为可用;观测不授予执行权,也不能经 model proxy 泄露 relay。消费者为 probe/check exit code。 -
_configure_execution_commitment:绑定整体履约声明。cold 配置原 Goal,warm 只比较原文档与路由;不重置 Todo/规划/原配置,不把局部完成当整体完成。消费者为 worker preparation and later Core verification。
原生区间测试通过真正的 TypeScript report owner,覆盖间隙、pin 篡改、进程不明和亚毫秒边界。当前环境补齐本地 HTTP 测试依赖后,传输/时长子集为 28 PASS、4 SKIP;这4项及完整 SForge/Harbor caller 的跳过不算通过。第一次四模块执行记录为37 PASS、329 SKIP,保留这份环境与覆盖限制,作者声明的445项不作为本轮独立结果。
对主干的风险 / Risks
在同一个真实 FastAPI/Uvicorn app 上安装 A 和 B,再分别通过实际 HTTP 与 python -m benchmark.runtime.execution_commitment probe 调用。合成 resolver 只提供合法 native identity,路由和 probe 使用当前生产实现;没有真实容器、模型或评分。
| 安装顺序 | A | B |
|---|---|---|
| A → B | HTTP200 / probe0 | HTTP404 / probe1 |
| B → A | HTTP404 / probe1 | HTTP200 / probe0 |
20项 HTTP/CLI 观察还包含第三个 trial、重复安装、未安装 app 和 unknown relay。后续合法对象始终失败,未安装/未知对象仍拒绝。首个 handler 返回404后,框架不会继续尝试后注册的相同路径。请用一个 handler 按 native run/task 选 observer,或使用互不冲突的 exact routes;补两种顺序、第三个对象、重复安装及未知身份的真实 probe 回归。不能放宽 probe 或把404视为暂时通过来恢复工作。
语义与 CI 对齐
当前 scoped declaration 改为 native heartbeat 默认,Official、Native Goal 与无声明 SForge 分支在源码上保留,但缺少 native SDK 的 paired caller/warm 执行证据,因此 default-off/isolation、完整持久化和恢复不认证。该 provider-local schema 不新增 Core 状态词汇,通用控制面也没有被加入 benchmark 专用义务。严格质量回执 cqr_81977f53839803dcf5e3 为 FAIL,路由反例、native 集成缺口及原必检失败均保留。
当前 quick premerge 的直接检查通过,必检 semantic vocabulary 仍失败:未修改的 progressive_context.ts 裸 action literal。相同完整命令在不可变 base/head 的输出相同,源路径不在本9文件 diff 内;这不归咎于本 PR,也不把该必检重标为通过。changed Ruff 通过;maintainability 的既有 advisory 和 benchmark-sensitive manual hold 保留。远端 CI 未查询、未轮询、未等待。
我的整体评价 / Verdict
当前是有价值但未完成的 justified_increment;long_horizon 与 user_experience 都有已复现的入口回归:第二个合法 trial 无法开始,重复 probe 不能恢复进展。时长和 Goal 验收继续复用原 owner,Python 留在 native IO 边界;路由应只注册一次,并按已有 run/task 身份选择 observer。当前 PR 应修复这个局部路由并补多 trial 反例,保留有限预算、Stop、原身份和失败拒绝;不需要新 scheduler 或第二份 Goal 状态。没有必要要求本 PR 完成整个 controller 或跑真实研究,但必须修复自身 native 分派,并补实际 caller/Goal/warm 的独立验收。默认变化已披露;source inspection 和单 provider 成功不能替代它的隔离资格。
检查的是 benchmark CLI、native HTTP provider 和 Goal 验收命令;没有渲染页面变动,视觉审查不适用。真实容器、实际模型、安装采用、科学效果及完整长期成本未验证。本轮未改作者源码、未执行实验、未合并,也不追认历史资格。修复后需要新的准确 head 复核。
English verdict: REQUEST_CHANGES at 92fe078 — the first installed route still shadows later valid trials. The current real HTTP/public-probe counterexample fails; native caller qualification and separate quality gates remain open.
…al policy Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
8981f8b to
12909bd
Compare
loopx-agent
left a comment
There was a problem hiding this comment.
Reviewer: model_agent; model=gpt-6.1-sol; provider=OpenAI; declaration_source=runtime_reported; reasoning_effort=max
Approval conclusion (author-owned PR; GitHub blocks formal self-approval)
动机 / Motivation
同一原生评分服务承载多个试验的操作者,需要分别读取各试验的执行时长证据。 历史安装器为每个试验追加相同路由,先安装的闭包遮住后续试验;当前由一条路由按原生注册的 run/task 身份分发,未安装的试验仍不可访问。 实际原生注册、HTTP 与公开读取客户端能够分别得到 false、unknown、true;新增试验须显式安装才能读取,不会借用已有试验的证据。 显式宿主调用方接入、真实执行和模型采用仍需分别验证;本 head 不自动启用任何 worker 策略。 本次证明结构、身份和恢复边界,不证明真实模型理解、持续采用、已运行满预算或长程成本净收益,也不授予合并、安装或付费运行权限。
改动思路 / Approach
原生身份解析、区间分类和读取保持各自已有 owner;新增部分仅是显式启用的只读适配,不把观测变为执行义务。 当前 PR 只交付可手动安装的原生服务扩展、读取客户端、说明和边界回归;worker、Goal、恢复和默认配置桥接已移出本 head。 原生注册和 SDK 的可用性本身不会启用观察者;宿主必须明确选择 trial 与目标时长。最大 timeout 没有被解释为最低工作量,观测失败也不会决定 continuation/replan。
具体改动 / Changes
本轮审阅精确 head 12909bd9233ef01e424808e6ecd048d303a2d9ae 的完整 diff:5 个文件,+714/-0;282 行生产代码、397 行测试和 35 行说明。 规格基准是修改前的 benchmark/runtime/RUNTIME.md,spec_revision c6c328d50b456c3dbb88de7021414c1921b69174;下列行地址对应原文已有边界,不以本 PR 新增说明自证:
- L343-L386:implemented;原停止与预算/观测边界保持,具体由上述 owner、默认路径及反例核验。
- L504-L512:implemented;原停止与预算/观测边界保持,具体由上述 owner、默认路径及反例核验。
- L556-L561:implemented;原停止与预算/观测边界保持,具体由上述 owner、默认路径及反例核验。
关键代码讲解
-
NativeExecutionEvidence.fulfilled: 读取指定 trial 的原生区间和当前存活证明,把区间合并、缺时与 unknown 判定交给已有 TypeScript campaign owner;向内取整防止把未来尾部计入。 -
install_execution_commitment: 只安装一条路由。原生 resolver 先把 relay 解析为真实 run/task,再查对应 observer;同一 observer 重装幂等,替换拒绝,未安装者返回 404。 -
observe: 直接读取原生 relay,限制响应大小并核验 schema、task、时间和严格布尔值。probe 对已知 false 仍成功,check 仅在 true 时成功;不经过模型代理。
对主干的风险 / Risks
旧 P1 的路由遮蔽在当前 head 已由实际原生入口独立验证修复;仍保留原讨论历史,本轮不替维护者 resolve 或 dismiss。区间丢失、旧文件 hash 改变、未结束历史片段及当前进程失去存活证明,均不能变成已满足。原生注册与观测读取是真实路径,容器分配、评分和区间输入为合成边界;没有运行付费模型或官方实验。
PASS:30 项 client/route/duration-owner 回归;补齐 HTTP 依赖后无跳过。固定原生 SForge 的真实 create_app、注册、JudgeState、Uvicorn HTTP 与公开 probe/check 在两种安装顺序均通过;同一冻结路由 fixture 换成历史 92fe078a7ba2f26df3ce02605da7f51dddf24783 安装器,两种顺序均失败。这是历史路由对照,main 基线尚无该适配器,不能说是 main 上的既有功能被修复。
完整 Ruff roots 和本次 benchmark 文件、mypy 配置的 17 文件、TypeScript typecheck、双语及 diff 检查均 PASS。strict quality cqr_f29bcca79a142561621c 为 PASS;standard premerge 的 5 项直接检查和 9 项选定检查通过,但保留 benchmark-sensitive 人工维护者审查 hold。
语义与 CI 对齐
新增 schema 保留在 SForge provider 局部,复用既有 duration vocabulary;严格 bool/None 与原生身份匹配不靠文本分类。未安装 app 没有该路由,未来注册也须显式安装,worker/原生 Goal/恢复/默认配置保持基线。 本轮没有查询、轮询或等待 GitHub CI;本地通过项、失败项与未验证项分开保留。
我的整体评价 / Verdict
没有发现当前 head 引入的阻塞缺陷。长程维度 preserved:观测身份和 unknown 保持准确,旧停止/恢复权威不受观察者支配;用户体验 improved:同一服务的每个显式安装试验均可用原生客户端读回。该适配器本身仍需宿主显式接入,不证明普通 worker 已采用或模型已持续工作;这属于有独立使用价值的边界增量。
已检查 benchmark 原生 HTTP/CLI、worker 和 Goal 调用路径,本 diff 不改变任何渲染界面。 已安装 App 的采用、真实模型理解与持续采用、完整长期效果及成本收益未验证。 原有未 resolve 讨论、benchmark 人工审查及维护者合并授权仍保留;本轮不合并。
English verdict: APPROVE for 12909bd9233ef01e424808e6ecd048d303a2d9ae; explicit native observer only; manual review and merge authority remain separate.
同一原生评分器服务多个试验时,运行时长证据必须按实际
(run_id, task_id)隔离,并排除停机、安装和评分时间。这个提案提供只读的原生执行证据适配器,复用现有 TypeScript campaign duration owner;缺失、变更、未结束的历史片段和失去进程存活证明的当前片段均保持 unknown。当前版本面向
main,只包含原生服务扩展、读取客户端、运行说明和可复用的合成回归。worker 入口、原生 /goal、恢复路径和默认配置与目标基线保持一致。安装者必须显式提供调用方要求的目标时长;最大 timeout 本身不产生最低时长义务。Agent 的总体要求由共享首次规划路径声明(见 #8193),本适配器不写 Goal 要求、不自动配置检查,也不决定 continuation/replan。同一服务只安装一条 relay 路由,精确绑定各试验。相同 observer 重装幂等,替换被拒绝;其他服务和未安装者保持原有行为。读取客户端拒绝陈旧、错误身份或格式错误的响应,原生 relay 不经模型 API 代理。
验证:在隔离 Linux 原生 provider 上运行 30 项 client/route/duration-owner 回归,无跳过;覆盖并行试验隔离、安装幂等/拒绝替换、旧执行的哈希验证、重叠/中断区间、活进程和 unknown。Ruff 与 RFC 双语 diff 检查通过。以上验证不证明真实模型持续工作或已经跑满预算。