From 0cca500b010cf7efae869805cc5e18a212428765 Mon Sep 17 00:00:00 2001 From: Magnetarman <40738529+Magnetarman@users.noreply.github.com> Date: Sun, 30 Aug 2026 20:56:37 +0200 Subject: [PATCH 1/3] Update 90-Skeleton.Main.ps1 --- start-modules/90-Skeleton.Main.ps1 | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/start-modules/90-Skeleton.Main.ps1 b/start-modules/90-Skeleton.Main.ps1 index 3c113969..0073dfb1 100644 --- a/start-modules/90-Skeleton.Main.ps1 +++ b/start-modules/90-Skeleton.Main.ps1 @@ -30,6 +30,15 @@ function Invoke-WinToolkitSetup { # Initialize Logging Start-ToolkitLog "WinToolkitStarter" + + # Localization must be resolved before any path that emits translated + # messages. In particular, Initialize-UpdateServicesState can trigger an + # early Windows Update service restore (when a previous run left a + # RestoreFailed state) and that restore prints translation keys such as + # uiText.resettingWindowsUpdateServices. Resolving first prevents + # "[MISSING TRANSLATION]" warnings during that startup recovery. + $null = Resolve-SourceTextLanguage -RequestedLanguage $Language + Initialize-UpdateServicesState if ($PSVersionTable.PSVersion.Major -lt 7) { @@ -39,10 +48,6 @@ function Invoke-WinToolkitSetup { throw 'start-core.ps1 must be started by the elevated start.ps1 stub.' } - # Localization is prepared here, after logging exists and after the - # elevation check, so the GitHub API is never queried twice per run. - $null = Resolve-SourceTextLanguage -RequestedLanguage $Language - Show-Header -Title $script:AppConfig.Header.Title -Version $script:AppConfig.Header.Version foreach ($repair in @( From c4c836c4add7830d868a4028c8e2ff75b0e439a6 Mon Sep 17 00:00:00 2001 From: Magnetarman <40738529+Magnetarman@users.noreply.github.com> Date: Sun, 30 Aug 2026 21:18:41 +0200 Subject: [PATCH 2/3] Update 10-Module.Logging.ps1 --- start-modules/10-Module.Logging.ps1 | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/start-modules/10-Module.Logging.ps1 b/start-modules/10-Module.Logging.ps1 index 34540ed8..b866d920 100644 --- a/start-modules/10-Module.Logging.ps1 +++ b/start-modules/10-Module.Logging.ps1 @@ -34,9 +34,13 @@ function Start-ToolkitLog { #> param([string]$ToolName) - # Clean up leftover transcripts + # Clean up leftover transcripts. Stop-Transcript throws when no transcript is + # active ("The host is not currently transcribing"), which is expected on a + # fresh run, so that benign case is silenced instead of surfaced as a warning. try { Stop-Transcript -ErrorAction SilentlyContinue } catch { - Write-Warning "start-modules\10-Module.Logging.ps1, Start-ToolkitLog: $($_.Exception.Message)" + if ($_.Exception.Message -notmatch 'not currently transcribing') { + Write-Warning "start-modules\10-Module.Logging.ps1, Start-ToolkitLog: $($_.Exception.Message)" + } } $dateTime = Get-Date -Format "yyyy-MM-dd_HH-mm-ss" From d74044650eb51fe68a89adc81b6d7388f5eee257 Mon Sep 17 00:00:00 2001 From: Magnetarman <40738529+Magnetarman@users.noreply.github.com> Date: Sun, 30 Aug 2026 21:18:43 +0200 Subject: [PATCH 3/3] Update 90-Skeleton.Main.ps1 --- start-modules/90-Skeleton.Main.ps1 | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/start-modules/90-Skeleton.Main.ps1 b/start-modules/90-Skeleton.Main.ps1 index 0073dfb1..235f60f0 100644 --- a/start-modules/90-Skeleton.Main.ps1 +++ b/start-modules/90-Skeleton.Main.ps1 @@ -177,7 +177,9 @@ function Invoke-WinToolkitSetup { finally { Invoke-StartUpdateServices try { Stop-Transcript -ErrorAction SilentlyContinue } catch { - Write-Warning "start-modules\90-Skeleton.Main.ps1, Invoke-WinToolkitSetup: $($_.Exception.Message)" + if ($_.Exception.Message -notmatch 'not currently transcribing') { + Write-Warning "start-modules\90-Skeleton.Main.ps1, Invoke-WinToolkitSetup: $($_.Exception.Message)" + } } $ErrorActionPreference = $previousErrorActionPreference }