Skip to content

docs(release): 更正「RP 不级联」口径 + 记 v2.3.0 自动路径实测(两戳/资产/:2.3.0 待补) - #162

Merged
ReSerendipity merged 1 commit into
mainfrom
docs/release-record-230
Sep 25, 2026
Merged

ReSerendipity merged 1 commit into
mainfrom
docs/release-record-230

Conversation

@ReSerendipity

Copy link
Copy Markdown
Owner

发布后收尾,纯文档,1 file docs/release-governance.md,+34 −5。不自合并,等你放行。

1. 改掉一句以偏概全(§2 第 1 条路里)

原文:"它不会替你发出镜像 …… v2.2.5 这两个工作流上都是 0 条"。2026-09-25 复算后不成立:

  • docker-publish.yml 的 on.push 里本来就有 branches: [main](实测:09-22 那天 5 条 push/main run;v2.2.5 的 release commit 落 main 后 4 秒,13:29:56Z 就有一条 push/main success)。
  • 所以"0 条"只描述 标签腿:ev=push br=v2.2.5 与 ev=release 各 0 条 —— 与 GITHUB_TOKEN 不级联一致。
  • 真正缺的不是镜像,而是 semver 标签:metadata-action 的 type=semver 在分支 push 上不出标签,那次只发了 :latest 与 :sha-<long>。v2.2.5 靠 14:12:36Z、v2.2.6 靠 09-23T07:30:15Z 的 workflow_dispatch --ref vX.Y.Z 补 —— 原文那条"要立刻补一手 dispatch"的结论是对的,只有论据口径错了。

改后小标题:"它不会替你发出 semver 镜像标签",并把上面这层写进去。

2. 新增 §2.1:v2.3.0 走自动路径的实测记录

  • 合并:chore(main): release 2.3.0 #145(RP 重写的 2.3.0 release commit + 人工同步提交 dd6f7d6)squash → main cd80d735,08:32:03Z;作者 github-actions[bot]。
  • tag / Release:v2.3.0,publishedAt = 2026-09-25T08:32:15Z,isDraft = false,4 资产齐(wheel / sdist / SHA256SUMS / SHA256SUMS.scripts)。
  • 两戳(tag 创建 → 镜像落库):docker-publish run 36113445697 08:32:05Z 起、09:03:14Z success(≈31 min),推的是 :latest 与 :sha-cd80d735c838…;:2.3.0 尚未落库,deployment.yaml 的 2.3.0 是目标值 —— 待 gh workflow run docker-publish.yml --ref v2.3.0(你已安排)。
  • release-gate 的 tag 腿与 gpg-signed-release 对 v2.3.0 各 0 条(两条 workflow 的 head_branch 全集只到 v2.2.4);GPG 那格另因 GPG_PRIVATE_KEY 未配本就 skip + notice,按你的口径记为已知状态、不算故障。
  • 顺手记一条边界修正(也是本版的新现象):上面写"release PR 拿不到任何 CI",但这次 chore(main): release 2.3.0 #145 上 30 条 check 真跑了(含 12 个 pytest 格子)。因为级联规则吃的是"GITHUB_TOKEN 产生的提交",不是"bot 开的 PR" —— 人工往 release 分支补一笔再推,必需检查就能在 release PR 上跑通。

3. 门禁与影响面

  • pytest tests/test_version_consistency.py → 9 passed(本文 §1 那句"已发布最新 = v2.3.0(2026-09-25)"未被本次改动触碰,它仍是版本位)。
  • pre-commit 全 Passed(含 Integrity Manifest Sync / Structure Guard / detect-secrets);Signed-off-by 齐全。
  • 只改一份文档:未碰 .github/workflows/*、未碰任何版本位、未碰 secrets/分支保护;chore(main): release 2.3.0 #145 已合并的事实不动,不打 tag、不发版、不自合并。

Refs: #145 #158 #160 #161

CC @ReSerendipity

原句"它不会替你发出镜像 / v2.2.5 这两个工作流上都是 0 条"以偏概全。2026-09-25 复算:
docker-publish.yml 的 on.push 里本来就有 branches:[main],合 release commit 那次 main push
会触发它 —— v2.2.5 当天 13:29:56Z 就有一条 push/main 且 success;0 条的是**标签腿**
(ev=push br=v2.2.5 / ev=release)。缺的不是镜像本身,而是 :2.3.0 这类 semver 标签:
type=semver 在分支 push 上不产出,那次只发了 :latest 与 :sha-<long>。
v2.2.5(14:12:36Z)与 v2.2.6(09-23T07:30:15Z)都是事后 dispatch --ref vX.Y.Z 补的。

新增 §2.1 记录本版事实:tag/Release publishedAt 08:32:15Z、非 draft、4 资产齐;
main push 30 success + 1 skipping;docker-publish 08:32:05Z 起、09:03:14Z 落库,
推的是 latest 与 sha-cd80d735…,:2.3.0 待 dispatch 补;gpg-signed-release 与
release-gate 的 tag 腿各 0 条(GPG_PRIVATE_KEY 未配本就 skip,记为已知状态)。
另记一条边界修正:级联规则吃的是"GITHUB_TOKEN 产生的提交"而非"bot 开的 PR",
人工往 release 分支补一笔再推,必需检查就能在 release PR 上真跑(本版 30 条即此)。

Signed-off-by: ReSerendipity <ReSerendipity@users.noreply.github.com>
@ReSerendipity
ReSerendipity merged commit d118b1d into main Sep 25, 2026
30 checks passed
ReSerendipity added a commit that referenced this pull request Sep 25, 2026
反面证据是实测的三条:#157 / #159 / #162 都只改 docs/,各触发一次 Build & Scan Image
(22.6 / 22.6 / 22 分钟,见各自 main push 的 run 时长),而扫的镜像构建输入并没有变:
.dockerignore 已把 docs、tests、.github 排除在上下文外,Dockerfile 的 COPY 面只有
pyproject.toml / requirements.txt / app/(第 54/55 行)与运行时那次 COPY . .(第 113 行)。

只放 docs/** 一条,刻意不收的三类:
- README.md:pyproject 的 readme = "README.md" 会把它吃进 wheel 元数据,且它不在
  .dockerignore 的排除列表里,改它确实改产物;
- app/**、requirements*.txt、pyproject.toml、Dockerfile、.dockerignore、deploy/**:
  全是构建输入;
- .github/workflows/**:包括本文件自己,改门禁逻辑必须能跑到(本 PR 就是这样自证的)。

docker-publish.yml 这次没动:它的 on.push 同时含 branches:[main] 与 tags:["v*"],
而 paths 过滤在 tag push 上的语义我无法用本仓历史证实(RP 自己打的 tag 从不级联,
人工补的那条腿走 workflow_dispatch,本就不吃路径过滤)。要么单独确认过一次语义再加,
要么把它拆成两个 trigger 块——都属于要另外取证的动作,收益只有 21.8 分钟那一半。

Signed-off-by: ReSerendipity <ReSerendipity@users.noreply.github.com>
Co-authored-by: ReSerendipity <ReSerendipity@users.noreply.github.com>
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