Skip to content

Qualify native context replay for Codex 0.167.0-alpha.3.2 - #8554

Merged
huangruiteng merged 1 commit into
mainfrom
codex/qualify-codex-replay-0167-20261111
Nov 11, 2026
Merged

huangruiteng merged 1 commit into
mainfrom
codex/qualify-codex-replay-0167-20261111

Conversation

@loopx-agent

Copy link
Copy Markdown
Collaborator

Goal And Delivered Outcome

Codex 0.167.0-alpha.3.2 writes paginated rollout metadata that the current native replay adapter has yet to qualify. Complete reads succeed, while a subsequent process resume lacks a native_resume checkpoint and has to recover the full capture.

Qualify this exact observed writer in the existing file observation adapter. The adapter checks the owned physical source, matching session/workspace/model/permissions, complete reader bytes and a supported append-only tail before creating a checkpoint.

  • Base is main at beff0f3e55d1f70eceebbd8e78c11f1cff34643b.
  • The same new-writer oracle fails at the base with the checkpoint missing and passes at this head.

Author Declaration

  • Written by model_agent — OpenAI GPT-6 (Codex).

Implemented against Required work context and the existing native replay compatibility profile at that revision.

Criterion Disposition Owner Validation
Verify native replay before inheriting delivered context implemented codex_context_history._snapshot Real process resume on the observed writer
Fall back to full after source or identity loss implemented Existing replay and lifecycle owners Changed file, records, model and permission matrix
Preserve original capture recovery during compaction implemented Existing native context adapter Real two-compaction and replaced-history cases

Scope And Continuation

The profile adds the exact writer identifier 0.167.0-alpha.3.2 in the existing Python host adapter. Existing version-parameterized tests now exercise it, including failed tools and adjacent unqualified versions. The compatibility value stays local to the rollout observation boundary.

Validation

  • Tested revision is 33587cf78e69feadbfa46eb4e36ccb819fc6810a.
  • Run state is finished for local checks. Hosted checks and independent review are pending.
  • Input classes are synthetic and public_fixture.
Check kind Result Evidence / limitation
regression_parity passed Two new-writer complete-resume cases fail with native_resume missing at the base and pass with this profile.
unit passed 291 resume and lifecycle cases, covering older/new writers, failed tool results, compaction/rollback, missing/replaced/rewritten/truncated output, changed identity or permissions, unknown records and adjacent versions.
real_entrypoint passed Eight existing cases with the actual macOS Codex 0.167.0-alpha.3.2 binary and deterministic loopback Responses. Includes process resume, two compactions, file replacement and unqualified-profile recovery.
integration passed Four native cases on a local C1 d883e122 composition with existing output/rejection repairs, #8525, #8552 and this profile.
static passed Ruff, configured mypy, scoped semantic inventory, DCO and bilingual diff check.
integration not_run Full hosted Python and Windows checks for this head are pending. The exact-scope quality receipt holds these requirements.

Local qualification used the macOS source path. Integration requires passing CI and an independent review. The existing main digest assertions have a separate repair in #8525.

Frontend / Visual Evidence

UI impact is none. The change is in native rollout observation.

Type of Change

  • Bug fix
  • Documentation update
  • Test update

LoopX Area

  • Host or runtime integration
  • Control plane (goals, todos, quota, scheduler, registry, runtime)

Shared-authority RFC fixture impact

N/A. This profile qualifies local native file observation.

Boundary Checklist

  • The diff and evidence are public-safe.
  • Scope matches the observed writer compatibility gap.
  • No paired RFC changed. Bilingual diff check passed.
  • UI impact is none.
  • The commit includes a DCO sign-off.

Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.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.

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

Reviewer: model_agent · gpt-6.1-sol · OpenAI · runtime_reported · max

评审提交:33587cf78e69feadbfa46eb4e36ccb819fc6810a

动机 / Motivation

用 Codex 0.167.0-alpha.3.2 接续既有会话的 Agent 会遇到这个问题。完整读过上下文后重启进程,主分支无法从这个版本的 rollout 建立恢复检查点,需要读回完整捕获。同样的已读内容在新提交可以接续,前提是保存文件能证明完整读回。替换文件、改动权限或遇到未验证版本时仍触发完整恢复。同一真实 Codex 二进制的八个隔离用例,基线六个在恢复检查点处失败,候选全部通过。这次验证覆盖 macOS 的隔离 Codex 进程、原有 CLI 和本地确定性 Responses。实际模型采用和长程完整成本仍待独立验收。

改动思路 / Approach

继续用原生读取器的完整回放证明。版本匹配只允许进入同一组检查。只增加已观察的精确 writer 版本。原 capture 恢复和关闭 context delivery 的入口沿用既有规则。 完整读回先绑定原生文件、精确页字节和当前身份。候选只扩展允许进入这一验证的版本;文件被替换、读取不完整或权限变化时,继续按原捕获恢复。

具体改动 / Changes

关键代码讲解

依据 docs/reference/required-work-context.md 对照 qualified-writer、original-capture-fallback 和 same-turn-recovery。 基线规范

_snapshot 先核对实际文件、权限、会话与分页记录,再接受该精确版本进入原验证。 native_resume_verified 校验从首个 reader 开始的完整区间,无法确认时重新读取原捕获。 回归矩阵 保留旧版本,并新增相邻未验证版本及失败输出负例。真实进程的复查还覆盖两次压缩和旧文件被替换。

对主干的风险 / Risks

危险的反例是版本匹配但历史已经改变。File 的替换、不同模型或权限、截断和失败工具输出均不能建立复用证明。旧主分支在六个实际进程用例缺少 native_resume,其中四个无法进入后续的历史丢失负例。当前八项全部完成。

语义与 CI 对齐

291 项源码测试通过,另外单独启用真实 Codex 二进制跑完八项进程测试。显式 off 的匹配对照、Ruff 及 standard canary 通过。验证边界为 macOS 本地隔离进程,使用确定性本地推理。

我的整体评价 / Verdict

通过当前提交的独立评审。该版本的完整读回可以建立原生接续检查点,损坏或未验证来源仍走完整恢复。验证对象是本地 CLI 接续和 rollout 读取。实际模型采用和长程完整成本仍待独立验收。

English verdict: APPROVE. The exact observed writer passes eight real local Codex cases, including original-capture recovery. Adjacent unqualified writers and altered evidence remain ineligible.

@songoow songoow 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 Astra Pro · OpenAI · self_reported

评审 head:33587cf78e69feadbfa46eb4e36ccb819fc6810a;固定比较基线:beff0f3e55d1f70eceebbd8e78c11f1cff34643b。

动机 / Motivation

使用Codex 0.167.0-alpha.3.2写入的分页rollout接续上下文的调用者。

完整读取上下文后恢复进程,旧allowlist不接受该writer,导致缺少native_resume检查点,只能回读完整capture。

该精确writer可以进入原恢复校验;只有源文件、身份、完整读取和append-only证据合格时才复用上下文。

不为相邻版本、任意rollout、未知记录或丢失历史授予复用资格,不修改原生执行权限。

改动思路 / Approach

兼容值位于既有Python rollout观察适配层,继续复用原context、replay与full-fallback owner,不增加另一套检查点协议。 结论限定于原适配层及明确的回归覆盖,完整安装宿主与模型采用另行验收。

只扩展精确字符串集合,所有后续文件、身份、页覆盖和tail判断保持。参数化测试让新writer运行旧writer同样的正反矩阵,还明确拒绝相邻未资格版本。

具体改动 / Changes

完整检查 3 个差异文件。关键入口是 _snapshot / native_resume_verified。完整检查3文件,生产仅修改_snapshot的版本名单;原物理绝对路径、owned regular file、inode、metadata与完整记录边界检查仍在版本判定前后生效。测试纳入新writer及相邻拒绝,文档限定支持范围。

本轮独立验证: 完整codex_context_resume套件120项通过。 把相同候选 fixture 载入固定基线生产模块后:新writer的两个完整恢复用例都在缺少native_resume处失败;2 failed。;head:新旧writer参数组通过;新writer完整记录可保留检查点,相邻未资格版本及损坏证据仍回退full。。基线日志核对全部已载入 loopx 模块,没有混入候选生产代码。

独立接受依据:已有契约,spec_revision=beff0f3e55d1f70eceebbd8e78c11f1cff34643b,criterion_id=existing_boundary,当前实现满足这里列出的范围;没有据此扩大外部权限或宣称完整产品里程碑。

对主干的风险 / Risks

关键反例是版本相同但历史已变,本轮矩阵确认其继续拒绝。作者报告8项真实macOS进程验收,本轮没有重跑,因此不将该数字算入独立120项结果。实际发行包的版本读回也只证明测试目标存在,不证明所有native replay行为。

已读取主干c49d59b未修改该allowlist与恢复owner,组合无文本冲突;其他context投影PR仍按各自范围验证。

使用 实际本地rollout/capture文件和原Python context lifecycle,native记录由fixture构造。本轮120项使用构造native记录,没有独立重跑作者报告的8项macOS真实进程与两次compaction;另下载该精确发行包并确认version,但这不等于宿主执行验收。 远端CI没有作为整体通过依据;本review不宣称合并条件已全部满足。

我的整体评价 / Verdict

建议APPROVE这个限定的兼容项。生产差异很小,原严格证据链保持,新版本接受与邻接拒绝都经实际文件回归;部署态资格仍应保留作者原宿主证据,不将本轮结论扩大为全部安装环境已验收。

本 PR 没有修改页面布局、组件或样式;验证范围为已有后端、CLI或文件观察边界。 未验证范围:本轮120项使用构造native记录,没有独立重跑作者报告的8项macOS真实进程与两次compaction;另下载该精确发行包并确认version,但这不等于宿主执行验收。

English verdict: APPROVE. Accept the exact writer within existing strict file and replay checks; unknown or damaged evidence still falls back to the original full capture.

@huangruiteng
huangruiteng merged commit 6c11d3e into main Nov 11, 2026
42 of 50 checks passed
@huangruiteng
huangruiteng deleted the codex/qualify-codex-replay-0167-20261111 branch November 11, 2026 09:50
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.

3 participants