Skip to content

chore(benchmark): compose optional native collaboration parity - #8230

Closed
huangruiteng wants to merge 2 commits into
codex/edgebench-integration-r33-20261107from
codex/edgebench-integration-r34-20261107
Closed

huangruiteng wants to merge 2 commits into
codex/edgebench-integration-r33-20261107from
codex/edgebench-integration-r34-20261107

Conversation

@huangruiteng

@huangruiteng huangruiteng commented Nov 7, 2026 •

Copy link
Copy Markdown
Collaborator

Compose #8229 on the existing r33 research integration branch for a new matched cohort. The entire candidate Git tree equals exact author head ce8baf0478e24bf26843c58e6d727138c3b61c8f; the signed merge is clean, and r33 remains unchanged. Independent source readback confirms both parents, DCO, tree identity and the published head.

The opt-in gives every arm the same optional authorization and three open native child slots in addition to the parent. It reuses existing Goal, host configuration and checkpoint owners, preserves parent-only evaluation opportunities and shared Stop/time limits, and adds no persistent child Agents or delegation-depth change. Relative to previous cohorts this is another protocol factor, not evidence of improved outcomes.

Validation:

  • 30 focused exact-author-head checks, plus 34 independent checks, cover actual CLI/bootstrap/agent-context, Stop, retained-state rejection and defaults. Full default settings, prompts and receipts match; the declared exception is an empty worker environment field that prevents ambient opt-in.
  • Original native 0.162.1 accepts the exact rendered settings. Disconnected static responses verify three open slots, fourth-child refusal and release after close. No model or grader was used.
  • The UI bundle's source-input verification passes unchanged, retaining its original build revision. Existing r33 full installation qualification is reused only for unchanged surfaces; this PR does not claim a new full SDK installation.
  • Quick premerge has zero direct/selected failures and retains its benchmark-sensitive maintainer-review hold.

Incoming exact-head independent review is complete: review of #8229. The integration has separate whole-tree source acceptance. Neither grants merge-to-main or live-deployment authority.

Checkpoint qualification remains scoped to the parent session/configuration. Retaining a complete session store does not prove continuation of children that were still active at capture.

Base 528c7f1b1071323d7fbc56c7aa535741955a1c2b; candidate c4536ec439fa7480bbfc76d7e26a96ac956fbf2f. Roll back by retaining r33 and omitting the option in a new cohort; do not alter a continuing session.

Main delivery

The native child authorization proposal now targets main in the original component PR. Follow its existing warm-start and input-validation findings there. #8229

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

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

@loopx-agent loopx-agent left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Reviewer: model_agent, gpt-6.1-sol, OpenAI, runtime_reported, reasoning_effort=max

[P1] 在原生激活前核对封存的子代理上限。 WarmStart.verify 验证了 checkpoint 及其配置摘要,CLI 随后把本次上限交给 worker,缺少两者的比对。独立复现中,封存值 3 后漏传、3 改成 2、原先省略而本次加 3,都走到了 checkpoint_controller.restore。通过原生激活后会预留恢复目的地并启动剩余时间的计时,接收端的配置一致性检查发生得更晚。应在现有 seal 校验之后、原生激活之前比较两边的可选值,并保留 worker 的一致性检查。 封存预检 · 激活调用

[P2] 拼接授权前检查原始 workspace instructions。 传入只含空白的工作区说明,以及以这段空白开头的 native task wrapper 时,默认调用会拒绝。传入上限 3 后,新增授权段使工作区说明通过原有非空检查,原始任务策略因此缺失。请将现有非空、前缀匹配和 native feedback 校验应用到拼接前的输入。 直接 API

动机 / Motivation

管理匹配实验的操作者需要给各组同一份子代理权限,也需要用原条件接续已经封存的运行。
以前要逐组配置宿主容量和任务说明。现在新实验可以统一传入上限 3,但拿这份 checkpoint 接续时漏传或改值,当前 launcher 仍会进入原生激活。
新实验的设置、任务说明和 Goal 读回已接通。接续入口还需在启动原生计时前拒绝与封存配置冲突的请求。
本切片的验收范围是运行器配置、授权和恢复顺序。真实模型采用、子会话联合恢复、成绩和完整成本收益需另有运行证据。

改动思路 / Approach

用同一个参数驱动宿主设置和任务授权有必要。设置管容量,任务说明管工作边界,已封存的配置负责判断接续能否沿用原条件。
本次修复应在现有恢复入口比对封存上限,并在 SForge 拼接授权前校验原任务说明。两处都可以复用现有 owner。
新实验在 SForge 的任务正文和工作区说明放入同一授权段,Codex 配置上限约束宿主子会话容量,LoopX 启动沿用既有 Goal policy 并由 agent-context 读回。原生子会话的完成和父任务采纳各有证据,配置上限只提供声明值。恢复时保留原始预算和已有 Goal,先校验本次选择,再进入原生注册与计时。 宿主回执契约

Git 复核显示候选 c4536ec439fa7480bbfc76d7e26a96ac956fbf2f 的第一父提交为 r33 528c7f1b1071323d7fbc56c7aa535741955a1c2b,第二父提交为 #8229 ce8baf0478e24bf26843c58e6d727138c3b61c8f。两者 tree 均为 34fc0a6af3d43816ed43862c842275ed4fa159ec,相对 r33 的全量 diff 一致,两条提交均有 DCO。候选完整继承了 #8229 的恢复问题。

具体改动 / Changes

采用改动前的 docs/architecture/rfcs/long-horizon-harness-benchmark-research-program-v0.md,版本 528c7f1b1071323d7fbc56c7aa535741955a1c2b。评审定位标签 5.3-fixed-treatment 对应运行中配置固定,三个接续反例尚未满足。 5.3-authority-envelope 对应各组获得同一权限约束,合法包装的接通已验证,直接 API 的空白输入仍需修复。 5.3-treatment-receipt 的实际触发和采纳待运行证据。 C2 的匹配效果和完整成本属于实验验收。 研究方案 5.3 和 C2

关键代码讲解

  • native_child_instructions 在显式开启时生成公共授权段,要求委派可选,沿用父任务的时间、评价和 Stop 边界。codex_settings 将同一值写入宿主设置。 授权文本 · 设置渲染
  • _verify_native_child_configuration 核对已有 Goal 的 mode、spawn_allowed 和 max_children。覆盖启用后写任务正文前的 Goal 读回。独立的 CLI 暖启动还有原生激活这道更早的边界。 Goal 校验
  • run.main 读封存配置并构造 worker,再启动原生恢复。选项在构造时已可读取,可直接用已核验配置中的上限比较。 选项传递
  • SForgeWorker.__init__ 目前先加授权段,再检查工作区说明。后续接收者会照常安装这份包装,因此要在原始输入上维持既有校验。 包装入口

完整 diff 为 10 个文件,新增 299 行、删除 12 行,覆盖五个运行时文件、一份运行说明和四个测试文件。配置、恢复、Goal 和回执复用既有 owner。变化集中在 runner 内一个可选整数的生产、校验和消费。

对主干的风险 / Risks

基于同一个隔离 Python 3.12、Harbor 0.20.0 和固定 SForge 源版本,候选 31 项定向测试通过,基线对应 8 项通过,均无跳过。定向测试覆盖配置、真实 CLI/bootstrap、Goal 和 agent-context、Stop、封存配置以及部分 warm gateway 路径。quick premerge 的四项直接检查、Python 编译和三项 catalog canary 通过,整体仍是 benchmark-sensitive 人工门。

独立入口探针得到 4 失败 / 2 通过。三个不匹配的 CLI 请求到达激活调用,第四个失败是开启后空白 workspace policy 被接受。两项合法匹配分别覆盖省略和显式上限 3。探针使用真实 CLI 参数处理、SForge 任务读取、checkpoint 摘要与参与者验证,并在原生激活调用前拦截。实际注册和计时变化属于该调用的生产效果,测试保留在隔离边界。基线的手工注入 3 封存配置也到达该旧边界。该版本的公开 runner 尚无参数生成这种 opt-in 封存;本次增加了正常到达这条路径的输入。

语义与 CI 对齐

配对探针比较四种执行模式的设置和截止回执,以及五个 SForge profile 的完整默认包装。环境仅多出文档披露的空 LOOPX_NATIVE_CHILD_LIMIT。同一 registry 读取断开时,基线先写两个任务文档,当前 head 在写入前失败,故默认失败路径还有一处顺序差异。请把预读限定在启用分支,或披露有意的失败语义并保留相应回归。

最小回归应从公开 CLI 覆盖 3→省略、3→2、省略→3 和两项合法匹配,并验证前三项在恢复调用前停止。直接 SForge API 应分别覆盖空白、有效 workspace instructions 和受限反馈。测试启动时的依赖锁定与独立探针导入问题已在隔离环境纠正,判断来自上述完整复跑。远端 CI 状态按当前队列政策保留为未知。

我的整体评价 / Verdict

配对选项能减少新实验的逐组配置工作。现有预检仍可能让不匹配的恢复进入激活并占用后续工作时间,直接 API 也需要恢复原任务说明的校验。当前 候选集成提交 的合入条件是这两项边界得到修复,并在更新后的 head 重新走实际入口。界面核验范围为 EdgeBench CLI、任务文本和运行器回执。本次改动集中在这些入口。真实安装采用、活跃子会话联合恢复及模型收益仍需单独验证。 模型采用、分数与完整成本仍须由单独获准的匹配运行验证。

English verdict: REQUEST_CHANGES

warm_start=warm_start, research_sidecar=research_sidecar,
timeout_seconds=args.timeout, feedback_prompt=feedback_prompt, feedback=args.feedback,
workspace_instructions=workspace_instructions,
native_child_limit=args.native_child_limit,

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

[P1] 请在原生激活前比对请求上限与已验证的封存配置。实际 CLI 从封存 3 恢复时漏传或传 2,以及从省略恢复时传 3,三项都到达 checkpoint_controller.restore。成功激活会建立目的地及其剩余时间,后续 worker 一致性检查已经太晚。请在当前 WarmStart/config owner 比较可选值,测试两项合法匹配能通过、三项不匹配在激活前拒绝。

self.turn_envelope = turn_envelope
self.native_child_limit = Execution(mode="plain", native_child_limit=native_child_limit).native_child_limit
if native_child_limit is not None:
if not feedback_prompt or not workspace_instructions:

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

[P2] 请先校验原始工作区说明与任务包装,再拼接授权。实际 SForgeWorker 对只含空白的原说明在省略选项时拒绝,显式上限 3 时接受。新增前缀替原始输入通过了非空校验。把现有 native feedback、非空和前缀校验移到拼接之前,并覆盖空白反例。

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.

2 participants