Skip to content

fix(upgrade): pin self-update asset to exact os-arch#7

Merged
Harsh-2002 merged 1 commit into
mainfrom
dev
Jun 4, 2026
Merged

fix(upgrade): pin self-update asset to exact os-arch#7
Harsh-2002 merged 1 commit into
mainfrom
dev

Conversation

@Harsh-2002

Copy link
Copy Markdown
Owner

Hotfix for the orva upgrade reliability 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 intermittent exec format error after 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).

…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.
@Harsh-2002 Harsh-2002 merged commit ab47d65 into main Jun 4, 2026
12 of 13 checks passed
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