Skip to content

fix(release): recover the remaining settings browser fixtures - #7096

Merged
loopx-agent merged 1 commit into
mainfrom
codex/release-210-fixture-owner-completion-20261023
Oct 22, 2026
Merged

loopx-agent merged 1 commit into
mainfrom
codex/release-210-fixture-owner-completion-20261023

Conversation

@loopx-agent

Copy link
Copy Markdown
Collaborator

Immutable-tag browser recovery still excludes two already merged fixture corrections: the Lark CLI settings journey assumes reload returns home, and the PR review settings journey uses the old Goal radio label. The unchanged tagged UI retains Settings and exposes “Goal 设置”. Include only these two named test owners so recovery can exercise the correct user paths; product source, packages, assertions, deadlines and publication permissions remain unchanged.

The existing workflow contract smoke passes with the seven-file fixed allowlist and restoration/checksum checks. Actual base/head Git and filesystem comparisons independently show each newly named owner rejected at the base, copied and restored at the head, with unrelated product files and prebuilt package/checksum bytes preserved. Empty-input parity, Ruff, diff hygiene and a three-file public-boundary scan pass. The complete packaged browser pipeline remains required before upload; local risk-based premerge and exact-head review precede merge.

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.

Reviewer: actor_kind=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)

动机

固定版本的发布恢复仍漏掉两个已经合入的测试修正:Lark 设置测试以为刷新后会回首页,PR Review 设置测试使用旧的“单个 Goal”名称。实际标签内的页面保留设置路由,radio 名称为“Goal 设置”。五文件恢复名单不能采用这两个修正,会让完整验证再次停在旧断言上。目标是在产品和安装包保持不变时验证正确的用户路径;产品代码、验证断言、时间限制、权限和发布门禁均未改变。完整远端构建、PyPI 上传和最终发布仍需后续实际验收。

改动思路

继续复用原发布工作流的固定路径集合、合入检查、普通文件预检和还原校验,不复制任意目录,不移动产品标签。两个文件都在既有 personal-workspace-browser 文件夹内,原还原命令已覆盖它们,不需要第二套恢复逻辑。修改只涉及工作流、原合同测试和合同文档,新增 6 行、删除 1 行,无产品运行时改动。

具体改动

规范依据是固定修订 630c68a1cb871996fbe491292e95681c1c9b87c3 的 Named Version Contract。验收逐项映射:merged-regular-fixture 仍要求完整已合入 SHA,先检查全部候选均为普通源码再写入;immutable-product-bytes 仍先打包、后替换测试、还原后校验包及来源;bounded-settings-owners 只在已有五项上加入两个明确的设置测试文件。空输入仍使用标签内测试,存在较新提交不会自动激活恢复。

关键代码讲解

Resolve browser fixture correction 的 allowed 集合增加 lark-cli-missing.mjs 与 pr-review-agent-order.mjs。fixture_recovery_contract 的 paths 同步为七个明确文件,实际执行原 YAML 块。Restore browser fixtures and bind verified package checksums 沿原文件夹还原这两个文件,随后执行原 SHA256 校验;未增加一个按 prose 判断或旁路发布的入口。

对主干的风险

主要风险是扩大测试覆盖范围时误带入产品字节。分别以每一个新增文件做真实 Git/文件系统基线对照:同一合入提交夹带一个无关产品改动,旧工作流均以 no correction 拒绝,当前工作流均只复制对应测试,还原后产品、安装包和校验和字节保持一致。两组空输入对照均保持标签源码和空修正列表。原合同测试验证七项复制、还原、校验,以及非法、未合入、删除、符号链接候选在部分写入前拒绝。合成包只验证字节保持,不冒充真实包构建资格。

原合同 smoke、Ruff、diff、三文件公开边界检查通过;本提交风险预检 19 项与 5 个直接检查全通过,无失败或 hold,未查询或等待 PR CI。局部对照第一次遗漏初始化原 locale 文件,命中已有 git restore 的 pathspec 拒绝;补齐同一测试仓库的原五项后两组对照通过。产品代码、验证断言、时间限制、权限和发布门禁均未改变。

我的整体评价

5b88a06439265c980b6c5d0d9cfed9c49d1e2f45 无核验出的阻断发现,结论 APPROVE。long_horizon 为 preserved:执行、持久状态、原消息和结果义务不变;user_experience 为 preserved:恢复原有发布验证,不增加使用步骤或确认轮次。现有恢复 owner 已足够,七项精确文件名单比泛化目录覆盖更容易核验。此 PR 没有页面改动,visual review 不适用;真实完整打包浏览器流水线和 PyPI 上传尚未完成,不能用局部通过代替。原发布继续跟进这些结果。

English verdict: APPROVE — 5b88a06. Both newly named settings fixture owners pass actual base/head recovery, restoration and immutable-byte comparisons; default parity and existing rejection checks pass. Local premerge passes 19 selected plus five direct checks. Product bytes and all publication gates remain unchanged. Full remote release and PyPI publication remain unverified follow-through.

@loopx-agent
loopx-agent merged commit 2ad0e88 into main Oct 22, 2026
4 of 6 checks passed
@loopx-agent
loopx-agent deleted the codex/release-210-fixture-owner-completion-20261023 branch October 22, 2026 19:20
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