docs(release): the index bump PR is machine-authored, and the pin waits on the pointer - #572
Merged
Merged
Conversation
…ts on the pointer Two defects on 2026-09-05 came from the same step of the release tail, and neither was visible to this repository's CI. A hand-written index PR (xim-pkgindex#764) landed ahead of the generated one. It appended each platform table's new ["latest"] line instead of replacing the existing one, so every table carried two ["latest"] keys. A Lua table constructor takes the last assignment, which resolved "latest" back to the previous release while the exact-version entry stayed correct — so every pinned consumer, mcpp's own CI included, remained green, and only a version-less `xlings install mcpp` served the stale binary. Landing first also left the generated PR conflicting. Separately, the bootstrap pin reached main 19 seconds before the index PR merged. The nine workflows it triggered resolved the index 51 seconds after the new pointer asset had been replaced and still received the previous artifact; all nine failed at bootstrap without compiling a line. "Merged into xim-pkgindex" is therefore necessary but not sufficient — clients read a CDN artifact, not the git tree. Both criteria added here are stated as what resolves, not as the presence of a version string, and both were run verbatim against the repaired index.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
All nine workflows on
ce7d977failed at bootstrap withpackage 'mcpp@2026.9.5.4' not found. The release itself was fine; the release tail was not, in two independent ways. Both are now recorded indocs/09-release.md, its zh mirror, and themcpp-releaseskill.The duplicate
["latest"]keyxim-pkgindex#764was hand-written (branchfeat/mcpp-2026.9.5.4, +22/-0) and merged ahead of the generated#765(branchbump/mcpp-2026.9.5.4,xlings-ci, +22/-3). The three deletions are the load-bearing part: the generator replaces each platform table's["latest"]line. Appending instead left two["latest"]keys per table, and a Lua table constructor takes the last assignment:The exact-version entry was present and correct, so every pinned consumer stayed green — this repository's CI pins exactly and never saw it. Only a version-less
xlings install mcppserved the stale binary.Fixed by resolving
#765's conflict onto the bot's shape (openxlings/xim-pkgindex@1f4b39d), which differs from the hand-writtenmainby exactly the three stale lines. Verified on the merged index:The pin outran the pointer
ce7d977reachedmainat 17:20:03, 19 s before#764merged (17:20:22). The pointer asset was replaced at 17:20:32; the CI jobs resolved the index at 17:21:23 — 51 s later — and still received the previous artifact2d2a2ee(13:02). Clients read a CDN artifact, not the git tree, so "merged into xim-pkgindex" does not release the pin.Criteria
Both are stated as what
latestresolves to rather than as the presence of a version string, and both were run verbatim against the repaired index before being written down:Docs-only: three
.mdfiles, no code.check_docs_style.shpasses, including en/zh heading parity.