fix(release): reconcile exact package artifacts across registries - #124
Conversation
|
tangletools
left a comment
There was a problem hiding this comment.
✅ Auto-approved drewstone PR — d14db985
This PR was opened by the trusted drewstone account.
No automated review runs on this PR. This approval rests on the rule above alone.
tangletools · auto-approval · reason: drewstone_author · 2026-09-24T07:48:21Z
tangletools
left a comment
There was a problem hiding this comment.
✅ Auto-approved drewstone PR — fc682129
This PR was opened by the trusted drewstone account.
No automated review runs on this PR. This approval rests on the rule above alone.
tangletools · auto-approval · reason: drewstone_author · 2026-09-24T07:52:18Z
Change
Build on merged #123, which introduced the exact npm tarball mirror. This PR makes that mirror retryable from registry state: it fetches each versioned public package from npm, checks integrity and manifest, and installs the tarballs in a fresh directory outside the workspace before considering a mirror publish. It compares each GitHub Packages copy by integrity, publishes only a missing version, and reconciles any missing GitHub Release independently of Changesets' per-run
published-packagesoutput. A rerun after partial publication can therefore resume from registry state.Current registry proof
@tangle-network/ui@11.10.0on GitHub Packages has peer@tangle-network/brand: ^1.6.0, with noworkspace:range. Its SHA-512 integrity matches npm:sha512-+LQDHpc2xy4aUID29qZxGvIIKLHGbOt53B8dDD6LaJiEP7im5WzTdAddyDl7M7FileaPSEeEA4pemJC/SvCW7A==.drewstoneaccount. A strictnpm installfrom those local tarballs in/tmp/brand-registry-consumer-Et1PPX/consumer, outside the repo, succeeded: 229 packages, no--legacy-peer-depsor--force;npm ls --depth=0reports UI 11.10.0, Brand 1.7.0, and no problems. The current UI copy is installable.sha512-8dz8vDvWvkEGVTZ9pTqpUZ1f2/5H+AR6umYpxs8ChBAUrL6zo/Q66Zcyxk4pRNv7qJoLv0KVqsrPBYFNovNTYg==; GitHub Packages issha512-vt83oeRU/7eYw7novRHTWzkGHMT3YrSmdwCpnLfnm2tvPmG69RO8PXMX/0HYdK/r8/cur0p2uqdwWaswTmKutQ==. The sole explicit legacy exception records those exact bytes. All later mismatches fail the release.Verification
actionlint .github/workflows/release.ymlandgit diff --check: pass.6533dd87; UI 11.10.0 tocf465c3b, their version-introduction merges. Existing GitHub Releases are present.The change is limited to recovery and verification in the Brand release workflow, plus its exact historical exception. Revert this PR to restore the prior behavior.