Repository navigation
fix(release): finalize v0.4.4 versions deterministically - #91
Merged
Merged
Conversation
Record the published 0.4.4 version across every releasable package and the corresponding Bun workspace metadata after the automated finalize job failed. Update lock workspace versions directly through the shared version script instead of asking Bun to regenerate the lockfile. Preserve newer-version protection, repair lock-only drift, and make the workflow commit a changed lockfile even when package manifests already match.
Exercise the preserve-newer path when package manifests already contain a later release version but bun.lock still has stale workspace metadata. Verify the updater leaves the manifests untouched, repairs every lockfile workspace version to the preserved release, and reports the lock-only reconciliation as a change.
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.
Summary
Completes the repository-side finalization of the already-published GedCode v0.4.4 release and fixes the lockfile synchronization bug that caused the final job in release run 33156001321 to fail after publication succeeded.
The v0.4.4 tag, GitHub release assets, and signed Sparkle feed were published successfully. Only the post-publication package-version commit failed.
Failure observed
The finalizer updated the four releasable package manifests to
0.4.4, then ran:Bun left the
workspaces.*.versionfields inbun.lockat0.4.3, so the release consistency check failed and no finalization commit reachedmain. Regenerating the complete lockfile is not an acceptable workaround: it rewrites hundreds of dependency lines and varies with the runner platform.Changes
0.4.4version in the server, desktop, web, and contracts package manifests.bun.lockworkspace version fields to0.4.4; no dependency resolution changes are included.update-release-package-versions.tsto keep package manifests and Bun workspace metadata synchronized as one deterministic operation.mainalready contains a consistently newer version, that newer version remains authoritative and its lock metadata is repaired instead of being downgraded.changed: truewhen package manifests already match but lock metadata needs repair.bun.lockin the workflow diff check so lock-only repairs are committed.Unreleased; it is intentionally not added to the already-tagged v0.4.4 release notes.Repository state change
Before this PR, the public release was v0.4.4 while
mainstill recorded v0.4.3, and future release finalization would repeat the same failure.After this PR, package manifests and Bun workspace metadata agree on the published v0.4.4 version. Future stable finalization changes only the intended version fields and can safely commit either a full version advance or a lock-only repair.
Verification
bun fmtbun lint(passes; existing non-blocking warnings remain)bun run --filter=@t3tools/scripts typecheckbun run --filter=@t3tools/scripts test -- update-release-package-versions.test.ts— 10 tests passedbun run release:smokebun run release:versions:check— manifests and lock agree on 0.4.4git diff --checkbun.lockdiff is exactly four one-line workspace version replacements and contains no dependency churn.Published release context
Release workflow run 33156001321 completed preflight, macOS/Linux/Windows builds, signed Sparkle feed generation, and GitHub publication successfully. This PR does not rebuild, retag, or alter released binaries; it only reconciles
mainand repairs future finalization.