You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
release: 17.0.0-rc.4 published from a10cbc77 but the version commit never landed on main — 2026-08-03 shape repeated; merge it back before ANY further release action #6169
What the orphaned commit carries: 153 files, +33604/−79 — the rc.4 package.json bumps, the compiled CHANGELOGs, and the .changeset/pre.json bookkeeping. Zero .changeset/*.md deletions (prerelease mode consumes via pre.json, not file deletion).
Why this must be fixed before anything else in the release lane
main's package.json still say 17.0.0-rc.3, so every regeneration of changeset-release/main computes rc.4 again — a version npm now already has. The branch has in fact regenerated after the publish (head a1e65f22 ≠ a10cbc77), so ⚠️ merging #4935 as it stands is the collision trap, not the fix. Do not merge #4935 and do not run the publish lane again until this issue closes.
Remedy (measured, clean)
git merge-tree --write-tree origin/main a10cbc77 → exit 0, no conflicts. So:
Push the published commit as a branch: git push origin a10cbc77a1e83a382d4a190879b39d588435a04d:refs/heads/release/rc4-merge-back
Open a PR (base main), label skip-changeset (release bookkeeping; .changeset/** must not be touched beyond what the commit itself carries), land it through the merge queue.
Ordering vs #6159 (console bump): independent — its changeset is a new file, no conflict either way; it now targets rc.5 (see note there).
Related
#6135 / #6149 (rc.3 instance + field-level reconciliation) · root-cause issue: see the companion issue filed together with this one · #6159 (missed window) · #3340 (the gate the bypass skipped) · #4935
Facts (all measured 2026-08-07 ~05:30Z)
*@17.0.0-rc.4(138 ls-remote lines incl. peeled), ALL pointing at one commita10cbc77a1e83a382d4a190879b39d588435a04d—chore: version packages (rc), github-actions[bot], 2026-08-07 04:17:39Z. npm confirms:npm view @objectstack/spec@17.0.0-rc.4 version→17.0.0-rc.4;dist-tags.rc→17.0.0-rc.4.36fc938(fix(cli): dev watcher 重建后不再无声——重建成功后自动重启 serve 子进程(默认开,--no-restart 可退) (#5148) #6150) — i.e. it contains chore(release): 发版状态对账 —— main 版本对齐 2026-08-03 已发布的 17.0.0-rc.3 #6149's version reconciliation and everything merged up to 04:1xZ (incl. refactor(spec)!: 按 ADR-0049 退役 FieldMapping.transform 与整个 FieldMappingTransform 联合 —— 五成员零执行者 (#5552) #6078 / fix(plugin-auth): break-glass 守卫扩到 sys_permission_set,并把「零管理员」从引导期豁免里分辨出来 (#6084) #6107 / fix(drivers):undefined比较数一律拒收 —— 闸落在任何发射器/守卫之前,两个毛病同闸消灭 (#6050) #6142), so the computed rc.4 numbers are correct. Commits after 36fc938 (fix(service-automation): runAs:'system' 的 create_record 按 ADR-0118 染全三列——组织、属主、创建者禁 NULL (#5494) #6153, refactor(client)!: subscribeMetadata 的 type 收窄为 MetadataEventSubject,订阅无合同类型改为编译报错 (#4627) #6156, ci(dx): DEBT/TEST_DEBT 台账数字改为每次重测的真棘轮 —— 实测 > 记录即红 (#5278) #5827, feat(objectql,cli): os migrate 新增 summary count/sum 存量 NULL 回填迁移 (#6063) #6158, feat(spec): strictness 台账新增第九判定词covered(#5249 裁 A) #6154, docs(ci): 控制字节集合的最后两处散文手抄改为引用门禁脚本头 (#5681) #6166…) ride the next rc.c6a52d3), one version later.package.jsonbumps, the compiled CHANGELOGs, and the.changeset/pre.jsonbookkeeping. Zero.changeset/*.mddeletions (prerelease mode consumes viapre.json, not file deletion)..objectui-shain the published tree isf995a452— the stale pin. The 7 releasing objectui changesets (chore(console): bump objectui pin f995a452 → a4cff5b (17 commits / 7 releasing changesets) — required before cutting rc.4 #6159) are absent from rc.4's record;check:objectui-pin-fresh(required on chore: version packages (rc) #4935) never ran because the lane didn't go through chore: version packages (rc) #4935. That is the v16 loss shape recurring — second occurrence evidence for the root-cause issue.Why this must be fixed before anything else in the release lane
main's⚠️ merging #4935 as it stands is the collision trap, not the fix. Do not merge #4935 and do not run the publish lane again until this issue closes.
package.jsonstill say17.0.0-rc.3, so every regeneration ofchangeset-release/maincomputes rc.4 again — a version npm now already has. The branch has in fact regenerated after the publish (heada1e65f22≠a10cbc77), soRemedy (measured, clean)
git merge-tree --write-tree origin/main a10cbc77→ exit 0, no conflicts. So:git push origin a10cbc77a1e83a382d4a190879b39d588435a04d:refs/heads/release/rc4-merge-backmain), labelskip-changeset(release bookkeeping;.changeset/**must not be touched beyond what the commit itself carries), land it through the merge queue.changeset-release/mainregenerates from rc.4 state → chore: version packages (rc) #4935 becomes the rc.5 PR, and the dry-run check is simply "does chore: version packages (rc) #4935 now propose rc.5?".Ordering vs #6159 (console bump): independent — its changeset is a new file, no conflict either way; it now targets rc.5 (see note there).
Related
#6135 / #6149 (rc.3 instance + field-level reconciliation) · root-cause issue: see the companion issue filed together with this one · #6159 (missed window) · #3340 (the gate the bypass skipped) · #4935