feat(updater): migrate releases to GitHub with a legacy bridge - #3
Merged
Merged
Conversation
Keep the release procedure aligned with the 0.12.4 transition. This is a patch because storage changes preserve the existing update behavior and require no user configuration or data migration.
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.
What
Move Gravity 0.12.4 update manifests and binaries to public GitHub Releases. New installations check GitHub directly. Add a separate compatibility Worker that proxies the old manifest path for existing installations, preserving manifest contents and updater signature verification.
The release workflow uploads all assets to a draft before publishing it as latest. It stops uploading new files to R2. Existing R2 objects and official signing/telemetry configuration remain intact.
Why
Public releases make duplicate binary storage unnecessary. Existing apps have the old manifest URL embedded, so the bridge must stay available for dormant installations. Its production route is activated only after the GitHub transition release is published and verified. Rollback instructions preserve historical download URLs and signing keys.
Closes USE-1590: https://linear.app/usebetterdev/issue/USE-1590/migrate-gravity-updates-to-github-releases-with-legacy-manifest-bridge
How tested
RUSTUP_TOOLCHAIN=1.98.1 pnpm run verify, including Docker visual tests.No data migration or user configuration change is required. Keep the legacy manifest bridge long-term; do not remove the R2 custom domain or existing versioned artifacts.