From 0a2defb61886172805325534060b55c1aa1d04d2 Mon Sep 17 00:00:00 2001 From: Erik Date: Wed, 19 Aug 2026 18:51:08 +0200 Subject: [PATCH] =?UTF-8?q?feat(launcher):=20LU4=20=E2=80=94=20first-run?= =?UTF-8?q?=20setup=20ends=20with=20"Setup=20complete"=20and=20an=20OK=20b?= =?UTF-8?q?utton?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Setup used to finish by leaving a full progress bar and a status line on screen, with the same Validate / Cancel bake / Close / Build and install row underneath. Nothing said "you are done" and nothing said what to press. The wizard now swaps its whole form for a plain completion panel: "Setup complete", one sentence saying the content was built and verified, and a single OK that closes the dialog and returns to the launcher. Raised at exactly one point — after _onInstalled publishes the record — so the launcher behind the dialog is already in its launch-enabled state when OK is pressed, and the "Client setup required" banner is gone the moment the user gets back. The cancelled and failed branches deliberately never reach it and keep their existing status/error reporting. Tests: FirstRunSetupEndsWithACompletionPanelThatOkReturnsFrom (form hidden, panel shown, record published before OK, wizard reopens as an ordinary form afterwards) and AFailedFirstRunSetupNeverShowsTheCompletionPanel. Launcher 61 passed. Campaign LU slice LU4. Co-Authored-By: Claude Opus 5 --- src/AcDream.Launcher/MainWindow.axaml | 20 ++++++ .../ViewModels/FirstRunInstallerViewModel.cs | 50 ++++++++++++++ .../LauncherWindowViewModelTests.cs | 68 +++++++++++++++++++ 3 files changed, 138 insertions(+) diff --git a/src/AcDream.Launcher/MainWindow.axaml b/src/AcDream.Launcher/MainWindow.axaml index f5029129..44526b0e 100644 --- a/src/AcDream.Launcher/MainWindow.axaml +++ b/src/AcDream.Launcher/MainWindow.axaml @@ -350,6 +350,25 @@ VerticalAlignment="Center"> + + + + +