Goal
Make the Windows first-party installer and its distribution validation use WrightKit's R2-backed release surface consistently with install.sh.
Context
install.sh now resolves and downloads Wright releases from https://releases.wrightkit.dev, including latest/version and immutable versioned release paths. install.ps1 and its test fixture still model GitHub Releases/GitHub API URLs, so the Windows path no longer exercises the same supported distribution contract.
Scope
- Make
install.ps1 use the WrightKit R2 release surface by default.
- Resolve latest through the R2
latest/version contract rather than the GitHub Releases API.
- Use the same R2 path shapes as the Unix installer for pinned and latest artifacts.
- Update the Windows installer test fixture to model the R2-backed distribution contract while remaining hermetic and retaining its existing failure-path coverage.
Non-goals
- Changing release artifact names, target support, or checksums.
- Adding a second release/distribution pipeline.
- Replacing hermetic failure-path fixtures with production-network-dependent tests.
- Changing package-manager distribution channels.
Acceptance criteria
- A default Windows install no longer depends on GitHub Release asset/API URLs.
- Pinned Windows installs resolve
releases/<version>/... from the WrightKit release base URL.
- Latest Windows installs resolve
latest/version and install from the verified latest/... artifact path.
- The Windows installer test validates the R2 path contract for pinned, latest, missing-version, checksum-failure, and native post-install smoke behavior.
install.sh and install.ps1 share the same public release-distribution contract without introducing a new abstraction layer.
Dependencies / ownership
- Wright owns first-party installer behavior and distribution validation.
- Builds on the existing R2 publication contract already used by
install.sh.
Goal
Make the Windows first-party installer and its distribution validation use WrightKit's R2-backed release surface consistently with
install.sh.Context
install.shnow resolves and downloads Wright releases fromhttps://releases.wrightkit.dev, includinglatest/versionand immutable versioned release paths.install.ps1and its test fixture still model GitHub Releases/GitHub API URLs, so the Windows path no longer exercises the same supported distribution contract.Scope
install.ps1use the WrightKit R2 release surface by default.latest/versioncontract rather than the GitHub Releases API.Non-goals
Acceptance criteria
releases/<version>/...from the WrightKit release base URL.latest/versionand install from the verifiedlatest/...artifact path.install.shandinstall.ps1share the same public release-distribution contract without introducing a new abstraction layer.Dependencies / ownership
install.sh.