fix: Windows update checks no longer interrupt routine commands

Merged
HA
4mo ago
+56-8

Summary

  • Windows update checks no longer show PowerShell transfer progress during routine CLI commands.
  • Failed optional dispatcher update checks are throttled instead of retrying on every command.

User Impact

  • Before this change, Windows users could see Web request progress UI each time they ran commands such as get-logs when the optional updater failed.
  • After this change, routine commands stay focused on their actual output, and the optional update check waits until the next interval before retrying.

Changes

  • Record failed optional dispatcher update attempts so the daily check interval is respected.
  • Suppress PowerShell progress output when invoking the Windows installer.
  • Bump the dispatcher release version because dispatcher release inputs changed.
  • Document the dispatcher release-input version bump rule in AGENTS.md.
  • Update dispatcher and Windows updater tests for the new behavior.

Verification

  • go test ./internal/cli -run "TestEnforceDispatcherFreshness|TestUpdateCommandForWindows" -count=1
  • go test ./internal/update -count=1
  • go vet ./internal/cli ./internal/update
  • golangci-lint run --config .golangci.yml ./internal/cli ./internal/update
  • go run ./cmd/check-dispatcher-version-bump --base origin/v3-beta --head HEAD
  • go run ./cmd/check-dispatcher-minimum-version
  • scripts/check-go-cli.sh
  • git diff --check