Repository navigation
Settings: prod.keys chosen once for every game (#996) - #1009
Closed
Haseenesss wants to merge 1 commit into
Closed
Haseenesss wants to merge 1 commit into
Haseenesss wants to merge 1 commit into
Conversation
Every Switch build needs prod.keys, and the keys row of the Builds page was filled per game. A player with one keys file picked it again for each new game, and a game whose library entry names a keys file that was moved could not build until it was picked again. Settings gets a Keys card with the saved prod.keys, Choose and Remove. The build store keeps the file in the defaults (savedKeysPath). A build whose keys row is empty, or names a file that is gone, takes the saved keys, and the row shows them as "Saved in Settings". A Switch 2 game folder needs no keys and never takes them. Keys are saved only on an explicit choice: Choose in Settings, a file picked for the keys row, a keys file dropped itself, or the keys confirmed in the guided setup. A folder scan or a dropped folder never saves them. Skipping the keys in the guided setup forgets the saved ones, and an ephemeral setup run holds the change back until it ends, as its other writes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This was referenced Nov 9, 2026
1 of 2 tasks
Collaborator
|
Thank you @Haseenesss. Your change is part of #1097, the launcher UI overhaul, with you as co-author. Closing this one in favor of it. Please have a look there if something of yours is missing or changed. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fix or feature
Feature from outside: #996 has no milestone yet. It needs a maintainer's yes before this can merge.
What and why
Closes #996.
Every Switch build needs prod.keys, but the Builds page filled the keys row one game at a time. A player with one keys file had to pick it again for every new game. A game whose library entry named a keys file that was later moved could not build until the player picked it again.
KeysCard, under Library): the saved prod.keys, with Choose (Change) and Remove. The row says when the saved file is no longer there.BuildStore.savedKeys, defaults keysavedKeysPath,BuildStore+SavedKeys.swift).keysPathis the row's file if it exists. Otherwise it is the saved keys, if they exist. Otherwise it is whatever the row names, so the build reports the missing file as before.inputsReadyandcanBuilduse the same rule.-k, and the row keeps "No keys needed".Not changed: the Qt (Windows) launcher and console mode. Neither has a keys setting.
Checked
swift build, thenswift test --filteronBuildStoreTests,GameFolderStoreTests,LiveOnboardingDriverTestsandSourceSizeTests, all pass. The pre-push hook ran the fullswift test.BuildStoreTests: an empty row takes the saved keys and a new store reads them back. A row whose file is gone takes the saved keys, and a row with an existing file keeps its own. Remove empties the setting and keeps the row. Choose in Settings saves the picked file, and a cancel changes nothing. A folder scan or a dropped folder never saves keys, and a dropped keys file does.GameFolderStoreTests: a game folder never takes the saved keys (no-k). A package build of an empty row passes-k <saved keys>.LiveOnboardingDriverTests: keys chosen in the setup are saved, and Skip forgets them. A resumed setup accepts the saved keys.NX_LAUNCHER_CAPTURE_DIR=<dir> swift test --filter testRenderSavedKeysForVisualQA(newSavedKeysCaptureTests). The before shots come from the same capture run onmain(9821bf2).Screenshots
Captured with
SavedKeysCaptureTests(English).gh --attachcannot upload images to this repository from my fork, so the images are added by hand below:Scope
dm/,scripts/,docs/,ref/) is added to the repositoryheader_keyline.🤖 Generated with Claude Code