Skip to content

Restore release-publication authority modes and release v0.18.87 - #571

Merged
0thernet merged 2 commits into
mainfrom
devin/release-authority-repair-20261005
Oct 6, 2026
Merged

0thernet merged 2 commits into
mainfrom
devin/release-authority-repair-20261005

Conversation

@0thernet

@0thernet 0thernet commented Oct 6, 2026

Copy link
Copy Markdown
Member

Summary

  • Restores publication-prewrite/publication-postwrite in scripts/release-ref-authority.ts, which github-release-publish.ts still invokes before and after every Release write. The promotion-lattice retirement removed the modes, so the v0.18.85 and v0.18.86 Release runs both failed at the immutable-Release authority step.
  • The publish job checks out the bare verified SHA, so the restored verifier imports governed refs under temporary refs/ghostget-release/publication-* names, proves the advertised tag/main commits, release ancestry, and unchanged release controls, then removes them so re-entry stays clean across per-write checks.
  • Releases v0.18.87. The v0.18.86 tag is burnt: release-control files necessarily differ between it and this fix, so the version moves forward (same convention as v0.18.80 → v0.18.81). Changelog, install reference, publishing docs, README, website pin, launch kit, package budget, and version literals all re-pinned; canonical pack re-measured (12,231,242 packed / 24,415,392 unpacked / 639 entries, sha256 753ffbeb…).

Test plan

  • bun test scripts/release-ref-authority.test.ts — ported v0.18.84 publication tests plus new CLI grammar regressions: happy-path binding with temp-ref cleanup and re-entry, annotated-tag rejection, terminal-advertisement drift, higher-tag tolerance in both phases, release-control drift per phase.
  • bun test scripts/github-release-publish-model.test.ts scripts/npm-release-workflow.test.ts — model and contract suites green.
  • Full bun run check green: static, package smoke, 5,321 unit + 18 omni tests, Quint/Apalache/Lean/oracle verification.

Generated with Devin

The promotion-lattice retirement removed the publication-prewrite and
publication-postwrite modes from release-ref-authority.ts while
github-release-publish.ts still invokes them, so the immutable Release
step fails at the authority check. Restore both modes as bindings over
verifyReleaseRefAuthority that additionally pin the expected release
commit and authenticated current main before emitting the receipt, and
cover the argument grammar with CLI regressions.

v0.18.86 was tagged but never published; this release carries its
changes forward.
The publish job checks out the bare verified SHA, so its local ref
inventory is empty and the helper runs before every write. Binding
publication modes over verifyReleaseRefAuthority was wrong: it demands
a pre-existing tag ref and leaves origin/main behind, so every call
after the first fails preflight. Restore the publication verifier that
imports governed refs under temporary ghostget-release names, proves
them, and removes them, with the ported happy-path, advertisement
drift, higher-tag and release-control drift regressions.
@vercel

vercel Bot commented Oct 6, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
ghostget Ready Ready Preview Oct 6, 2026 12:34am UTC

Request Review

@0thernet
0thernet enabled auto-merge (squash) October 6, 2026 00:34
@0thernet
0thernet merged commit 4509de8 into main Oct 6, 2026
27 checks passed
@0thernet
0thernet deleted the devin/release-authority-repair-20261005 branch October 6, 2026 00:45

This branch was successfully deployed

1 active deployment
Preview — a409a88b Deployed Oct 6, 2026 by vercel[bot]
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