Problem
The current-version entry in version/version.json can omit explicit artifact URLs and fall back to the platform-specific aka.ms/storage-explorer/download/... redirects. Those redirects are backed by Microsoft Download Management Service and ESRP publication, which introduces approval and propagation delays and prevents the Storage Explorer team from directly controlling which binaries the in-app updater retrieves.
Goal
Use GitHub Releases as the authoritative download source throughout the update path so the team controls artifact publication and link targets directly.
Scope
- Point the platform-specific
aka.ms/storage-explorer/download/... redirects at the corresponding GitHub Release assets.
- Add explicit GitHub Release asset URLs to the current-version
downloadInfos entries in version/version.json.
- Retain SHA-256 checksum validation for every platform artifact.
- Keep Snap distribution on the Snap Store.
Acceptance criteria
- Each non-Snap platform download resolves to the intended GitHub Release asset.
- The in-app updater downloads and opens the correct Windows, macOS, and Linux artifacts without relying on ESRP or Download Management Service propagation.
- Every downloaded artifact matches the checksum in
version/version.json.
- Update discovery, staged rollout, and older-version fallback behavior continue to work.
Problem
The current-version entry in
version/version.jsoncan omit explicit artifact URLs and fall back to the platform-specificaka.ms/storage-explorer/download/...redirects. Those redirects are backed by Microsoft Download Management Service and ESRP publication, which introduces approval and propagation delays and prevents the Storage Explorer team from directly controlling which binaries the in-app updater retrieves.Goal
Use GitHub Releases as the authoritative download source throughout the update path so the team controls artifact publication and link targets directly.
Scope
aka.ms/storage-explorer/download/...redirects at the corresponding GitHub Release assets.downloadInfosentries inversion/version.json.Acceptance criteria
version/version.json.