fix(build): invalidate DLSS objects when SDK headers change #1648
No reviewers
Labels
No labels
accessibility
autorelease: pending
autorelease: tagged
bug
dependencies
documentation
duplicate
enhancement
github_actions
good first issue
help wanted
invalid
question
testing wanted
wontfix
No milestone
No assignees
1 participant
Due date
No due date set.
Dependencies
No dependencies set
Reference
MagicBeanDev/Hookshot!1648
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/dlss-sdk-object-cache"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
DLSS compilation jobs omitted NVIDIA SDK headers from their cache dependencies, while object keys deliberately discard include paths. Changing an SDK header could therefore reuse DLSS code compiled against the previous contents; include the SDK header tree only in the DLSS object's dependencies.
The same header bytes still reuse objects after SDK relocation, and SDK changes do not invalidate unrelated backend objects or builds without NGX. No proprietary files are included.
Validation:
Base main
ba40a1a; candidateef0432c. Exact-head fork source, Windows, AppImage and optional NVIDIA DLSS backend/link CIs passed (linked below). The production change affects build cache dependencies; no DLSS GPU quality or performance result is claimed.AI assistance: OpenAI Codex.
Exact-head fork CI
Head
ef0432c6cdff89f8d3b0c8b1b0502dfa8c0602ca. Fork runs do not replace upstream maintainer approval.CI follow-up for commit
ef0432c6cdff89f8d3b0c8b1b0502dfa8c0602ca: all four fork runs completed successfully:The description now records these results. Current main is
d448ccc988082de44360f26fb47a497f76644048; its two commits since this PR's base touch menu code/tests and the README, with no overlap in this PR's changed paths. These results validate the PR head, not a new integration build against that main. No code changes were needed for this follow-up. No game/GPU runtime test was performed, and these fork results do not replace upstream review or required checks.Thanks! This now conflicts with
mainafter #1643, only intests/run_all.py: both PRs add an entry at the same place (test_builder_dlss_update.pyfrom #1643,test_dlss_sdk_cache.pyhere). Could you rebase or mergemainand keep both lines? Then it can go in.Merged current main (
d8f0513f4555d3f6fa2a6d2df6fa76015ee17dbc) into this PR inc6854305c5c78e52945aa6419670b9df0d911ad0, preserving the existing DLSS SDK cache fix and both runner entries intests/run_all.py:test_builder_dlss_update.pyandtest_dlss_sdk_cache.py. GitHub now reports the PR as mergeable.Local validation: the actual Builder DLSS update fixture and byte-compilation of every tracked Python file both passed;
git diff --checkpassed. The first sandboxed fixture attempt could not write its temporary directory; rerunning outside that restriction passed. The DLSS C++ cache fixture was skipped locally because no C++ compiler is on PATH.All four fork CI runs completed successfully for this exact commit (verified after completion):
No game/GPU runtime test was performed. These fork runs do not replace upstream required checks or review.