Skip to content

Latest commit

 

History

History
34 lines (23 loc) · 2.19 KB

File metadata and controls

34 lines (23 loc) · 2.19 KB

← Back to Backlog

[SC-028] Improve WSL manager console output handling

Status: Open Priority: Medium Component: lib/wsl/exec.ps1, lib/wsl/commands.ps1, lib/wsl/docker.ps1, lib/wsl/podman.ps1, lib/wsl/scripts/ Depends on: None Blocks: SC-030

Summary: As a user, I want to see useful info messages from WSL shell scripts but not see spurious error messages from tool detection checks, so that the console output is informative without being noisy.

Description: The WSL manager has two console output problems that work against each other:

  1. Info messages from bash scripts are invisible: Invoke-WslDistroScript pipes output to Out-Null (only cares about exit code), so log_info() messages from scripts like install-docker.sh and install-devpod.sh are silently discarded. Users see no progress during long-running operations.

  2. Unwanted error/noise messages leak through: Tool detection checks (e.g., docker --version, podman --version) and similar probing commands can produce stderr output (e.g., "command not found", WSL error messages) that leaks to the console despite partial suppression.

Additionally, the codebase uses an inconsistent mix of Write-Host, Write-Information, and Write-Output without a clear policy on when to use which.

Relationship to TUI modernization

This item is a prerequisite for SC-030 (progress indicators). Fixing the underlying output plumbing ensures that when progress spinners and status bars are added, they are not disrupted by unexpected output from WSL commands. SC-029 (PS 7.6+ migration) is now done, so PS 7.4+ syntax is available; the output strategy should anticipate the upcoming Spectre integration.

Acceptance Criteria:

  • Bash script stdout (info/progress messages) is visible to the user during script execution
  • Tool detection checks (Test-WslDockerInstalled, Test-WslPodmanInstalled, etc.) produce no visible output
  • WSL probing commands (wsl --version, wsl --list) do not leak error messages
  • Consistent output strategy documented and applied (which Write-* cmdlet for which purpose)
  • Existing tests remain green

← Back to Backlog