Skip to content

ci(release): isolate qualification job completion headroom - #6881

Merged
loopx-agent merged 1 commit into
mainfrom
codex/split-ci-release-qualification
Oct 19, 2026
Merged

loopx-agent merged 1 commit into
mainfrom
codex/split-ci-release-qualification

Conversation

@songoow

@songoow songoow commented Oct 19, 2026 •

Copy link
Copy Markdown
Collaborator

Goal And Delivered Outcome

Extract the release qualification timeout from #6838 into an independently reviewable maintenance PR. Release run 39196404607 reached the existing 20-minute job window while the installed-page browser step was active; the later managed-runtime, contract, attestation and upload steps were skipped.

This changes only the build job's timeout from 20 to 30 minutes, with the original explanatory comment. Scenario deadlines and qualification gates retain their existing definitions.

  • Original extraction base: main, pinned at dc45c128d630cd8f043690a9a00251615d7d13b4.
  • Source: the one-file CI change already present in tracking: land research continuity as small PRs into main #6838 (eac81014fd3a8842ddd420d7908657af107c6787).
  • Observable result: the job has an additional ten minutes to complete its existing sequence.

Author Declaration

Criterion Disposition Path Validation
Isolate the release timeout change implemented .github/workflows/release-artifacts.yml One-file diff, +5/-1
Keep qualification steps and scenario limits intact implemented Same workflow Exact comparison with the source change; existing CI policy suite

Scope And Continuation

Complete within this maintenance scope. The research runtime and outcome features from #6838 / #6784 are being published as a dependency-ordered set of separate PRs. This first slice can be reviewed and reverted independently.

Validation

  • Tested tree: e8afca42488b42087677b9f43f023830f15fa363.
  • Published revision: 70ab394b57b82186cf1c552b47e3170e3a55646b; its tree exactly matches the locally tested tree.
  • Run state: finished.
  • Input classes: public_fixture.
Check kind Result Public-safe evidence / limitation
unit passed python -m pytest -q tests/test_ci_resource_policy.py — 132 passed
static passed git diff --check; unchanged workflow structure outside the timeout/comment
integration not_run A complete release build was not rerun for this one-file extraction; the extra timeout remains a capacity allowance, not proof of a successful release

Frontend / Visual Evidence

  • UI impact: none.
  • Before / after / first viewport: N/A; CI configuration only.

Type of Change

  • Refactoring (preserve the source change while separating its review)
  • Build / CI maintenance

Boundary Checklist

  • Diff and description contain only public-safe repository evidence.
  • Source and actual PR base are explicit.
  • No paired RFC changed.
  • UI impact is none.
  • Commit includes DCO sign-offs.

发布、进入 main 与集成证据(2026-10-20)

  • 本片 source head:70ab394b57b82186cf1c552b47e3170e3a55646b;tree:e8afca42488b42087677b9f43f023830f15fa363。已于 2026-10-19 18:12:37 UTC 由 loopx-agent 合入 main(merge 7f52528c9553088409253a8d37f24a37c91ad8da)。
  • 新版 #6784 与 B1/A1–A3 存在组合重叠;它们的承载路线会影响后继重定基线,详见总进度。 完整顺序、评审阻塞和操作步骤。
  • 原小 PR 路线按依赖逐片进入 main;本仓库允许 merge commit,保留原提交身份通常便于后继继续比较。若采用 squash/rebase,需按旧父提交边界整理后继自身增量后再复核;改 base 本身不完成这一步。
  • 14 PR 的检查/评审快照为 2026-10-20 00:14–00:15 UTC。本片当时为 merged;旧检查仍保留原结果。后续合并资格以对应当前 head 与 main 基线的检查和审批为准。
  • 集成分支 已快进到 fe3b1f7b382e,tree 6bbf110b1cb2535975b2389558a86dff73792926。它保留原 d1dc8ebfe7ff0ce888c8e7a6b7a5051413f29af2 与最新 C3 7368ca0286d503a93e50b26ab24755a5fb429b2f 两侧祖先;真实 Git merge-tree 与 GitHub tree 一致、零冲突,仅增 A3 的两文件 Markdown 诊断修复。
  • 此集成继续使用已验证的冻结 main 45d742088a3f7896a0a008761f68d2437398bcd1。本轮观察的 main e4190c30d7f94886dddd8e06b899664df34120f9 已另有变化,进入主干前须另行更新与验证。原 d1dc8 的 supplied-candidate in_sync 收据保留历史绑定;后续正式 owner 收据见总进度,不将旧收据改标为新 main 的资格。
  • 构建及 UI 的实际运行版本仍为 d1dc8/cb8:control-plane TypeScript 50.754 秒通过,标准 Chat build 131.930 秒通过,Outcome 恢复 97.616 秒通过,独立正常首屏 41.605 秒通过,Worker readback 126.422 秒通过,research-history 功能场景 116.004 秒通过。该版本的 8 张可读截图与验证摘要 已发布;后继两文件修复不改变这些 UI 输入,截图保留真实拍摄版本。
  • 保留限制:首次 Outcome fixture 的 90 秒启动失败未抹去,后续通过使用正常缓存预热;research-history 新中文图仍需补全 CJK 字形;完整新 head Python/native/File/重放/并发矩阵、installed App 与模型/benchmark 收益未取得全面资格。摘要记录实际运行范围,原临时 raw logs 已随执行环境回收,未重建成伪收据。
  • 本轮最终对象核对确认 12 个 source heads 被保留、两文件补丁逐字节一致、UI/build 的 tracked 输入一致,以及源链 18/18 作者签署匹配。未修改的 integration owner 对已发布候选给出 preview_ready(execute=false);恢复的新 plan 仍是 never_synced,完整 CLI bootstrap 未执行,未重新签发 in_sync。

Extract the release-job timeout change from PR #6838 so it can be
reviewed independently of research runtime behavior.

Signed-off-by: Codex <codex@openai.com>
Signed-off-by: song <liusongstep@gmail.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

动机

维护发布包的维护者,以及等待可验证安装包的用户。

同一组构建和验证步骤若超过原来的二十分钟,总 job 会结束,后面的检查和上传没有机会运行;本次只把整个 job 的可用时间增加到三十分钟。

已核对唯一执行差异为总超时二十到三十分钟;没有改动任何场景时限、包来源、证明或发布门禁。

本 PR 不证明完整 release 已成功,也不改变模型、benchmark、产品状态或发布权限。

改动思路

复用现有 build job 的单个总时限,足以提供额外完成时间;另建重试或发布流程会引入无必要的来源与权限复杂度。
本 PR 仅提供发布构建 job 的完成余量,不承接研究运行时功能或宣称正式发布成功。

总 job 的执行窗口与单个场景的截止时间是两层控制。这里调整前者,让既有 browser、managed runtime、契约、attestation 和上传序列有额外完成时间;后者的测试断言、执行顺序和失败传播没有改动。直接不改会保留相同整体时限,放宽场景则会改错边界。没有新增队列、发布者或用户操作轮次。

具体改动

已检查目标分支至精确 head 70ab394b57b82186cf1c552b47e3170e3a55646b 的完整 diff:一个 workflow,新增五行、删除一行,其中四行是解释性注释。依据 docs/product/release-readiness.md,不可变 spec_revision=dc45c128d630cd8f043690a9a00251615d7d13b4:Compatibility Gate 的既有验收步骤完整保留;Named Version Contract 的 tag/package 身份、来源及 Trusted Publisher 门禁完整保留。此处验证的是该维护切片,没有把完整 release 资格提前判成通过。

关键代码讲解

  • jobs.build.timeout-minutes 由 20 改为 30。它控制同一 runner job 的总时长;不会把原本失败的 scenario 或校验结果变成成功。
  • jobs.build.steps 继续按原来源解析、打包和验证顺序执行。我从不可变 base 读取完整文件,独立替换这一处时限与四行注释,结果与 head 逐字节一致;周边触发条件、权限和后续 job 依赖未变。

本次复用既有 workflow owner,未新增控制面词汇、持久状态、兼容分支或用户入口。#6838 中的其他研究改动不在这个 diff,也不是本切片的合并依赖。

对主干的风险

独立运行 python -m pytest -q tests/test_ci_resource_policy.py,132 项通过。标准 premerge 的四项直接检查、十项目录 canary 与一项公开边界检查全部通过,无失败和人工 hold;双语 RFC 检查也通过,没有 RFC 改动。exact-scope change-quality 收据为 pass。

最强反例是有场景本来就失败,或整个构建仍超过三十分钟。完整文件对照确认没有任何测试、失败检查或发布条件被改掉,所以这些情况仍必须失败;本地检查不能证明后续 hosted build 一定完成。最多增加十分钟 runner 使用余量,这是维护成本,不是性能提升。本次遵守 wait_for_ci=false,没有查询、轮询或等待 CI。

我的整体评价

APPROVE,限 70ab394b57b82186cf1c552b47e3170e3a55646b。 该独立维护任务已完成,机制与问题相称。long_horizon=preserved,Goal、执行权和结算没有改变;user_experience=preserved,安装消费者没有新增配置或确认。保留现有 owner 的单一时限,比新增重试框架更清楚,也能单独撤回。完整正式版的 exact-commit 检查和实际资产读回仍属于发布步骤;这份审批不把时间余量、测试数量或上传机会当作发布成功。

English verdict: APPROVE — 70ab394b57b82186cf1c552b47e3170e3a55646b. Only the enclosing build timeout changes from 20 to 30 minutes; all scenario, source, permission and publication gates remain byte-identical. Independent 132 policy tests and 15 premerge checks passed. Additional headroom does not prove hosted completion, performance or release readiness.

@loopx-agent
loopx-agent merged commit 7f52528 into main Oct 19, 2026
29 of 37 checks passed
@loopx-agent
loopx-agent deleted the codex/split-ci-release-qualification branch October 19, 2026 18:12
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