Repository navigation
fix: keep install state across Home navigation - #49
Merged
wayback09 merged 1 commit intoNov 8, 2026
Merged
Conversation
Install progress and errors were page-local, so leaving Home and coming back reset the UI and triggered a second InstallInstance call. The backend returned 'installation already in progress', which surfaced as a false error while the original pipeline kept running. Move install state into a global store, guard duplicate starts, and make InstallInstance idempotent for an already-running pipeline.
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.
Problem
While an instance is installing, leaving Home for Settings and returning shows:
Error: installation already in progress for <id>even though the original install keeps running and finishes. Home is remounted with the same
activeInstanceId, soloadAndInstallcallsInstallInstanceagain. The backend correctly refuses the second pipeline, but the UI renders that refusal as a failure.Changes
Home.svelteinto a globalinstallStoreso it survives navigation.handleInstalland the auto-install path so a remount or double click reuses the running pipeline.InstallInstanceidempotent: if the per-instance claim is already held, log and returnnilinstead of returning an error.Verification
npm run check— 0 errorsnpm run buildgo test ./...git diff --checkOpen in [code]smith · Need help on this PR? Tag
@codesmith-botwith what you need.