fix(builder): honor DLSS opt-in when updating a game #1643

Merged
Arkex-ai merged 1 commit from fix/dlss-update-opt-in into main 2026-11-10 12:47:21 +00:00
Arkex-ai commented 2026-11-10 11:55:43 +00:00 (Migrated from github.com)

Updating a game that was built without DLSS ignored the saved, license-accepted DLSS checkbox: the update only enabled DLSS when the old game already had its runtime. Honor the saved choice during updates, including after a Builder restart, while preserving the existing behavior for installations already using DLSS.

Fixes #1616. No NVIDIA license gate, downloader, GPU code or visible UI is changed.

Validation:

  • The actual UpdateBuild method is compiled and executed without WPF, a game or NVIDIA files: main compiles and fails the opt-in assertion; the candidate passes 25 assertions. Four compiled behavioral mutations fail the expected assertions.

  • Covers first opt-in with no previous SDK/runtime, persisted choice after restart, missing/invalid/false settings, partial prior installations and unchanged update/shader arguments.

  • Existing SDK/download and runtime tests: 24 pass. Builder worker checks: 80 assertions pass. Windows Builder Debug build: 0 warnings/errors.

  • Full local source suite: main 235 passed / 2 failed / 20 skipped; candidate 236 passed / the same 2 failed / 20 skipped. Shared local failures are Windows symlink privilege and unavailable Windows SDK headers. The new fixture also passes through the strict runner.

Based on main ba40a1a; candidate b1e2552. Exact-head fork CI results are below. No DLSS GPU quality/performance validation is claimed for this Builder-policy change.

AI assistance: OpenAI Codex.

Exact-head fork CI

Head b1e255203410cf119f318873ed0dc58f12af74f5. Fork runs do not replace upstream maintainer approval.

Updating a game that was built without DLSS ignored the saved, license-accepted DLSS checkbox: the update only enabled DLSS when the old game already had its runtime. Honor the saved choice during updates, including after a Builder restart, while preserving the existing behavior for installations already using DLSS. Fixes #1616. No NVIDIA license gate, downloader, GPU code or visible UI is changed. Validation: - The actual UpdateBuild method is compiled and executed without WPF, a game or NVIDIA files: main compiles and fails the opt-in assertion; the candidate passes 25 assertions. Four compiled behavioral mutations fail the expected assertions. - Covers first opt-in with no previous SDK/runtime, persisted choice after restart, missing/invalid/false settings, partial prior installations and unchanged update/shader arguments. - Existing SDK/download and runtime tests: 24 pass. Builder worker checks: 80 assertions pass. Windows Builder Debug build: 0 warnings/errors. - Full local source suite: main 235 passed / 2 failed / 20 skipped; candidate 236 passed / the same 2 failed / 20 skipped. Shared local failures are Windows symlink privilege and unavailable Windows SDK headers. The new fixture also passes through the strict runner. Based on main ba40a1a; candidate b1e2552. Exact-head fork CI results are below. No DLSS GPU quality/performance validation is claimed for this Builder-policy change. AI assistance: OpenAI Codex. <!-- dlss-current-ci --> ## Exact-head fork CI - [Linux AppImage](https://github.com/Arkex-ai/Hookshot/actions/runs/42811502953): success. - [Windows builder](https://github.com/Arkex-ai/Hookshot/actions/runs/42811499000): success. - [Game-free source regressions](https://github.com/Arkex-ai/Hookshot/actions/runs/42811494985): success. Head `b1e255203410cf119f318873ed0dc58f12af74f5`. Fork runs do not replace upstream maintainer approval.
Commenting is not possible because the repository is archived.
No description provided.