fix(upgrade): pin self-update asset to exact os-arch#7
Merged
Merged
Conversation
…ng-OS binary) go-selfupdate's loose '^orva-cli-' filter let it fall back to arch-only matching, so on linux/amd64 it could select orva-cli-darwin-amd64 (a Mach-O binary) whenever that asset sorted first — release build-matrix uploads run in parallel, so asset order is non-deterministic. Result: an intermittent 'exec format error' after a self-reported-successful 'orva upgrade' (caught by cli-e2e's upgrade round-trip). Anchor the filter to the full '^orva-cli-<os>-<arch>' token via upgradeAssetFilter() so only the running platform's asset can match; the trailing .exe on Windows assets is still covered by the prefix. Verified end-to-end: a fixed binary upgrading against the live repo now pulls the ELF x86-64 asset and runs, where the old binary pulled Mach-O.
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.
Hotfix for the
orva upgradereliability bug found by cli-e2e: go-selfupdate's loose^orva-cli-filter could select a wrong-OS binary (e.g. orva-cli-darwin-amd64 on linux/amd64) when that asset sorted first, causing an intermittentexec format errorafter a self-reported-successful upgrade. Pins the filter to the exact^orva-cli-<os>-<arch>token. Verified end-to-end: fixed binary now pulls the ELF x86-64 asset and runs.This re-cut completes v2026.06.04 (dashboard memory-metric fix + this upgrade fix).