Skip to content

[PR] fix(release): train mode survives pre-#4449 patch lanes - #4576

Merged
ranxianglei merged 1 commit into
masterfrom
2026-10-24_release-manual-lane-guard
Oct 24, 2026
Merged

ranxianglei merged 1 commit into
masterfrom
2026-10-24_release-manual-lane-guard

Conversation

@ranxianglei

Copy link
Copy Markdown
Owner

Problem

Release (one-click) with train=true fails on any patch lane cut from a tag older than b87732e (bugfix-v<latest-tag> where the tree predates #4449):

  1. Bump version step runs node scripts/sync-codex-plugin-version.mjs unconditionally — MODULE_NOT_FOUND on lanes that don't carry the script yet. Nothing is published (safe abort), but the click flow is dead on exactly the lanes that need it.
  2. Verify bump diff step runs git add package.json package-lock.json .agents .claude-plugin plugins/codex — git add fatals on absent pathspecs (.agents, plugins/codex don't exist in pre-[PR] feat: Codex Desktop Plugin (Git marketplace + MCP tools + version sync) | feat: Codex 桌面版插件(Git marketplace + MCP 工具 + 版本同步) #4449 trees).

Hit while preparing the bugfix-v0.1.206 storage lane (5 storage fixes, #4390/#4444/#4506 follow-ups) — the lane is pushed and ready; this PR unblocks shipping it via one-click.

Fix

Post-#4449 lanes are unaffected: script present → synced exactly as before.

Verification

  • yaml.safe_load on the modified workflow passes.
  • Same trees as the lane-prep session: storage test family 188/188 green, tsc --noEmit clean (the 5 carried fixes; this PR only touches the workflow file).

…anifest-sync script call and the manifest git-add (both fatal on lanes cut from tags older than b87732e)
@ranxianglei ranxianglei changed the title fix(release): train mode survives pre-#4449 patch lanes [PR] fix(release): train mode survives pre-#4449 patch lanes Oct 24, 2026
@github-actions

Copy link
Copy Markdown
Contributor

📦 Built Package Artifact

Branch: 2026-10-24_release-manual-lane-guard (9ea4cce)

Latest build — install this exact version

npm install -g billion-context@0.0.5522-pr.4576.8b4f8d4

This exact version is immutable and reproducible. The rolling pr tag tracks the newest test build across all PRs.

Recent builds (commit → version)

commit version build
9ea4cce billion-context@0.0.5522-pr.4576.8b4f8d4 build

Download artifact

  1. Download the artifact from the Actions run
  2. Extract the tarball and install:
tar xzf billion-context-pr4576.tgz
npm install -g package

Install instructions are refreshed on each push.

@ranxianglei
ranxianglei merged commit d95799d into master Oct 24, 2026
38 of 46 checks passed
@github-actions

Copy link
Copy Markdown
Contributor

📦 Merged Build Published

This merge to master was published as 0.0.822-master.d95799d (rolling master tag).

npm install -g billion-context@0.0.822-master.d95799d  # this exact build
npm install -g billion-context@master  # always the newest merged build

npm view billion-context@master prints the current version at any time.

ranxianglei added a commit that referenced this pull request Oct 25, 2026
…ship PRs

A patch lane cut from an old tag whose fixes already landed on master
conflicts with master at ship time: the merge button refuses, resolving
on the lane would leak unreleased master work into the published head
tree, and resolving on master needs a direct master push. Also, lanes
cut from old tags carry an old release-bugfix.yml that predates the
bugfix-v* marker, so even a clean merge would silently skip publish.

- add pull_request_target [labeled] trigger: the carve-out-ship label on
  an OPEN same-repo ship PR (bugfix-v* / bugfix-release/* head) publishes
  the PR head tree with every existing guard + full gate, no merge needed
- run the master copy of the workflow (pull_request_target), fixing the
  old-tag lane marker gap for this path
- manifest sync check fails open with a notice on pre-#4449 trees (same
  existence-guard philosophy as release-manual's lane guard, #4576)
- annotate the ship PR after publish (audit trail; publish != merge)
- document the label path in reference/release.md (carve-out + ship-the-lane)
ranxianglei pushed a commit that referenced this pull request Oct 26, 2026
…lane, missing-manifest gate, autoFold docs

Three unfixed items from the #4725 review ledger (#4757 landed separately via
the ci-fixes sweep):

- release-bugfix.yml lost the #4449 manifest --check when the v3 lane rewrite
  landed (v0.1.208 ran it before Publish guard; master's rewrite dropped it).
  Ported back with the #4576 pre-#4449 lane existence guard, gated on the
  resolve step's actual proceed output (this variant has no path output).
- scripts/sync-codex-plugin-version.mjs silently SKIPPED a missing manifest
  file — in --check mode a missing file greened the gate, neutering the
  release guard. A missing target is now a hard error naming the file; the
  four manifests are a fixed contract. Regression test added (RED on the old
  skip).
- CONFIGURATION.md en+zh: document the autoFold benefit gate (#3444: growth
  folds arm only on ≥4096 tokens over the effective target; sub-4096 saving
  arms the backoff; image-dominant exempt) and the measured floor (irreducible
  baseline raises an unreachable target, never above the window). Both
  languages in sync.

Sync tests 5/5, typecheck clean.
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