Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .agents/docs/2026-11-14-ci-and-release-time-cost-design.md
Original file line number Diff line number Diff line change
Expand Up @@ -220,3 +220,9 @@ Windows 把每个 `\n` 写成 `\r\n`;`write_config_value` 只认 `\n` 结尾
重复的表。这是用户可见的缺陷(Windows 上第二次 `mcpp toolchain default` 之后 config.toml 无效),此前读者偶尔未在写入期间读取时
用例通过。处理:`write_replacing` 按给定字节写出;`write_config_value` 在两种行尾之前匹配表头与键,新增的行沿用文件自身的行尾
(Config/ConfigValueKeepsTheFilesLineEnding)。读者对拒绝的重试保留,它对应 Windows 替换期间真实存在的拒绝。

### 5.7 发布运行(43590596177)

四个构建同时开始(最长为 Linux aarch64 交叉构建 39 分钟),`create-release` 在四者通过后创建 release,自分派至创建共 40 分钟;v2026.11.12.1 的构建依次进行,至最后一个构建结束约 104 分钟。
封存与发布两个作业被跳过:未带条件的作业只在其之前的全部作业(含间接的)成功时运行,未请求时被跳过的 canaries 因此跳过了二者。
二者改为各自声明所跟随的那一个作业(mcpp#933);v2026.11.13.1 以 `tag: v2026.11.13.1` 再次分派完成,该分派重建该 tag 的提交。
6 changes: 6 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -851,9 +851,14 @@ jobs:
dist/SHA256SUMS
dist/mcpp.lua

# A job's default condition is that every job before it, transitively,
# succeeded: the canaries, skipped in a release started without them, would
# skip the seal and the publication after a release was created. Each states
# the one job it follows (v2026.11.13.1 was created and not sealed).
release-manifest:
name: validate + seal release manifest
needs: [create-release]
if: ${{ !cancelled() && needs.create-release.result == 'success' }}
runs-on: ubuntu-24.04
permissions:
contents: write
Expand Down Expand Up @@ -978,6 +983,7 @@ jobs:
# Shared vendored scripts live in .github/tools/ (kept in sync with xlings).
publish-ecosystem:
needs: release-manifest
if: ${{ !cancelled() && needs.release-manifest.result == 'success' }}
runs-on: ubuntu-latest
# A4 hardening: a single stuck upload once held this job >1h (6h default
# ceiling). The mirror script has per-file timeouts and (post-0.0.89)
Expand Down
Loading