2026-11-10T10:48:23.391+00:00 +0.022611 MANIFEST {"id": "P20", "case": "checksum-invalid-digest", "side": "before", "sha": "bcee0f5d2872ba193c66ed9ba979bbe424f89ff9", "environment": "Ubuntu 24.04.4 LTS Linux x86_64; kernel 6.8.0-117-generic; dash 0.5.12-6ubuntu5 or bash 5.2.21 --posix; curl 8.5.0; GNU wget 1.21.4; BusyBox 1.36.1; Node v26.12.1; PowerShell 7.4.6 Core on Linux (helpers only)", "selected": {"surface": "P", "shell": null, "transport": null, "path": null, "mech": "W", "pty": null}, "selected_transport_version": "curl 8.5.0", "command": "/tmp/lead-32913-r1/evidence-capture/powershell-7.4.6/pwsh -NoLogo -NoProfile -File /tmp/lead-32913-r1/evidence-capture/runs-20261110T104757.726561Z/P20-checksum-invalid-digest/before/observe.ps1", "env": {"HOME": "/tmp/lead-32913-r1/evidence-capture/runs-20261110T104757.726561Z/P20-checksum-invalid-digest/before/home", "T3CODE_HOME": "/tmp/lead-32913-r1/evidence-capture/runs-20261110T104757.726561Z/P20-checksum-invalid-digest/before/home/t3", "T3CODE_INSTALL_BIN_DIR": "/tmp/lead-32913-r1/evidence-capture/runs-20261110T104757.726561Z/P20-checksum-invalid-digest/before/bin", "TMPDIR": "/tmp/lead-32913-r1/evidence-capture/runs-20261110T104757.726561Z/P20-checksum-invalid-digest/before/tmp", "TMP": "/tmp/lead-32913-r1/evidence-capture/runs-20261110T104757.726561Z/P20-checksum-invalid-digest/before/tmp", "TEMP": "/tmp/lead-32913-r1/evidence-capture/runs-20261110T104757.726561Z/P20-checksum-invalid-digest/before/tmp", "TERM": "dumb", "LANG": "C.UTF-8", "LC_ALL": "C.UTF-8", "NO_COLOR": "1", "CAPTURE_TRANSPORT": "/tmp/lead-32913-r1/evidence-capture/runs-20261110T104757.726561Z/P20-checksum-invalid-digest/before/transport.jsonl", "T3CODE_VERSION": "1.2.3", "T3CODE_RELEASE_BASE_URL": "http://127.0.0.1:37323", "PROCESSOR_ARCHITECTURE": "AMD64", "DOTNET_CLI_HOME": "/tmp/lead-32913-r1/evidence-capture/runs-20261110T104757.726561Z/P20-checksum-invalid-digest/before/home", "POWERSHELL_TELEMETRY_OPTOUT": "1", "PATH": "/tmp/lead-32913-r1/evidence-capture/runs-20261110T104757.726561Z/P20-checksum-invalid-digest/before/path", "CAPTURE_STAGING": "/tmp/lead-32913-r1/evidence-capture/runs-20261110T104757.726561Z/P20-checksum-invalid-digest/before/helper-staging", "CAPTURE_URL": "http://127.0.0.1:37323/v1.2.3/SHA256SUMS", "CAPTURE_DEST": "/tmp/lead-32913-r1/evidence-capture/runs-20261110T104757.726561Z/P20-checksum-invalid-digest/before/downloaded", "CAPTURE_SCRIPT": "/tmp/lead-32913-r1/evidence-capture/runs-20261110T104757.726561Z/P20-checksum-invalid-digest/before/install.ps1"}, "original_source_sha256": "a4cb78b54d2a3d42c81b6144a26d9df0785cc702a4114d5d5955d85584f6e972", "executed_source_sha256": "8d7d1c4c82a14083f907ab6a4d70a34b9d78192c64743232acb1bd00162ca6f8", "transforms": ["Set-PSDebug -Trace 1 observes execution of exact helper source, including disposal and request commands", "verbatim prologue and helper slice; real-HTTP synthetic caller; discovery origins only remapped"], "steps": "Start fixture; run command; deliver terminal Ctrl-C only when specified precondition is observed; capture exit, requests, install state, tracked PIDs."}
2026-11-10T10:48:23.397+00:00 +0.027809 SPAWN {"pid": 614604, "pty": false, "stdin": "noninteractive"}
2026-11-10T10:48:23.721+00:00 +0.351936 OUTPUT "DEBUG:    2+  >>>> & $env:CAPTURE_SCRIPT\n\n"
2026-11-10T10:48:23.795+00:00 +0.426118 OUTPUT "DEBUG:   16+  >>>> $ErrorActionPreference = \"Stop\"\n\n"
2026-11-10T10:48:23.796+00:00 +0.427239 OUTPUT "DEBUG:   17+  >>>> [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12\n"
2026-11-10T10:48:23.800+00:00 +0.431097 OUTPUT "\n"
2026-11-10T10:48:23.811+00:00 +0.442481 OUTPUT "DEBUG:   19+  >>>> $repo = \"pingdotgg/t3code\"\n\n"
2026-11-10T10:48:23.812+00:00 +0.442752 OUTPUT "DEBUG:   20+  >>>> $baseUrl = if ($env:T3CODE_RELEASE_BASE_URL) { $env:T3CODE_RELEASE_BASE_URL.TrimEnd(\"/\") } else { \"http://127.0.0.1:37323/$repo/releases/download\" }\n\nDEBUG:   20+ $baseUrl = if ( >>>> $env:T3CODE_RELEASE_BASE_URL) { $env:T3CODE_RELEASE_BASE_URL.TrimEnd(\"/\") } else { \"http://127.0.0.1:37323/$repo/releases/download\" }\n\n"
2026-11-10T10:48:23.814+00:00 +0.445364 OUTPUT "DEBUG:   20+ $baseUrl = if ($env:T3CODE_RELEASE_BASE_URL) {  >>>> $env:T3CODE_RELEASE_BASE_URL.TrimEnd(\"/\") } else { \"http://127.0.0.1:37323/$repo/releases/download\" }\n\n"
2026-11-10T10:48:23.823+00:00 +0.453881 OUTPUT "DEBUG:   21+  >>>> $t3Home = if ($env:T3CODE_HOME) { $env:T3CODE_HOME } else { Join-Path $HOME \".t3\" }\n"
2026-11-10T10:48:23.824+00:00 +0.455688 OUTPUT "\nDEBUG:   21+ $t3Home = if ( >>>> $env:T3CODE_HOME) { $env:T3CODE_HOME } else { Join-Path $HOME \".t3\" }\n"
2026-11-10T10:48:23.828+00:00 +0.459701 OUTPUT "\nDEBUG:   21+ $t3Home = if ($env:T3CODE_HOME) {  >>>> $env:T3CODE_HOME } else { Join-Path $HOME \".t3\" }\n\nDEBUG:   22+  >>>> $binDir = if ($env:T3CODE_INSTALL_BIN_DIR) { $env:T3CODE_INSTALL_BIN_DIR } else { Join-Path $HOME \".local\\bin\" }\n\nDEBUG:   22+ $binDir = if ( >>>> $env:T3CODE_INSTALL_BIN_DIR) { $env:T3CODE_INSTALL_BIN_DIR } else { Join-Path $HOME \".local\\bin\" }\n\nDEBUG:   22+ $binDir = if ($env:T3CODE_INSTALL_BIN_DIR) {  >>>> $env:T3CODE_INSTALL_BIN_DIR } else { Join-Path $HOME \".local\\bin\" }\n\nDEBUG:   24+  >>>> $binDir = $ExecutionContext.SessionState.Path.GetUnresolvedProviderPathFromPSPath($binDir)\n\n"
2026-11-10T10:48:23.841+00:00 +0.471912 OUTPUT "DEBUG:   31+  >>>> $terminal = -not [Console]::IsErrorRedirected -and $env:TERM -ne \"dumb\"\n"
2026-11-10T10:48:23.842+00:00 +0.473668 OUTPUT "\n"
2026-11-10T10:48:23.846+00:00 +0.476848 OUTPUT "DEBUG:   32+  >>>> $interactive = $terminal -and $Host.UI.SupportsVirtualTerminal\n"
2026-11-10T10:48:23.849+00:00 +0.480273 OUTPUT "\nDEBUG:   33+ if ( >>>> $interactive) {\n\nDEBUG:   39+  >>>> $esc = [char]27\n\nDEBUG:   40+  >>>> $reset = $bold = $muted = $accent = $green = \"\"\n\nDEBUG:   40+ $reset =  >>>> $bold = $muted = $accent = $green = \"\"\n\nDEBUG:   40+ $reset = $bold =  >>>> $muted = $accent = $green = \"\"\n\nDEBUG:   40+ $reset = $bold = $muted =  >>>> $accent = $green = \"\"\n\nDEBUG:   40+ $reset = $bold = $muted = $accent =  >>>> $green = \"\"\n\nDEBUG:   41+ if ( >>>> $interactive -and -not $env:NO_COLOR) {\n\nDEBUG:  102+  >>>> $version=\"1.2.3\"; $arch=\"x64\"; $staging=$env:CAPTURE_STAGING; $archive=\"t3-1.2.3-win32-x64.zip\"\n\nDEBUG:  102+ $version=\"1.2.3\";  >>>> $arch=\"x64\"; $staging=$env:CAPTURE_STAGING; $archive=\"t3-1.2.3-win32-x64.zip\"\n\nDEBUG:  102+ $version=\"1.2.3\"; $arch=\"x64\";  >>>> $staging=$env:CAPTURE_STAGING; $archive=\"t3-1.2.3-win32-x64.zip\"\n\nDEBUG:  102+ $version=\"1.2.3\"; $arch=\"x64\"; $staging=$env:CAPTURE_STAGING;  >>>> $archive=\"t3-1.2.3-win32-x64.zip\"\n\nDEBUG:  103+  >>>> New-Item -ItemType Directory -Force -Path $staging | Out-Null\n\n"
2026-11-10T10:48:24.020+00:00 +0.651385 OUTPUT "DEBUG:  105+        >>>> Fetch \"$baseUrl/v$version/SHA256SUMS\" (Join-Path $staging \"SHA256SUMS\")\n\n"
2026-11-10T10:48:24.032+00:00 +0.663288 OUTPUT "DEBUG:   67+ function Fetch([string] $uri, [string] $destination, [switch] $progress)  >>>> {\n"
2026-11-10T10:48:24.036+00:00 +0.667299 OUTPUT "\nDEBUG:   68+   if ( >>>> -not $progress -or -not $interactive) {\n\nDEBUG:   69+      >>>> $ProgressPreference = if ($progress -and $terminal) { \"Continue\" } else { \"SilentlyContinue\" }\n"
2026-11-10T10:48:24.036+00:00 +0.667413 OUTPUT "\n"
2026-11-10T10:48:24.036+00:00 +0.667482 OUTPUT "DEBUG:   69+     $ProgressPreference = if ( >>>> $progress -and $terminal) { \"Continue\" } else { \"SilentlyContinue\" }\n"
2026-11-10T10:48:24.036+00:00 +0.667512 OUTPUT "\n"
2026-11-10T10:48:24.041+00:00 +0.671913 OUTPUT "DEBUG:   69+     $ProgressPreference = if ($progress -and $terminal) { \"Continue\" } else {  >>>> \"SilentlyContinue\" }\n"
2026-11-10T10:48:24.041+00:00 +0.672062 OUTPUT "\n"
2026-11-10T10:48:24.041+00:00 +0.672230 OUTPUT "DEBUG:   70+      >>>> Invoke-WebRequest -Uri $uri -OutFile $destination -UseBasicParsing\n"
2026-11-10T10:48:24.042+00:00 +0.672847 OUTPUT "\n"
2026-11-10T10:48:24.119+00:00 +0.750670 SERVER {"request_t": 0.750406, "event": "request", "path": "/v1.2.3/SHA256SUMS", "endpoint": "sums", "attempt": 1, "status": 200, "behavior": 200, "accept": null}
2026-11-10T10:48:24.120+00:00 +0.750932 SERVER {"event": "body_complete", "endpoint": "sums", "bytes": 181}
2026-11-10T10:48:24.123+00:00 +0.753940 SERVER {"event": "request_handler_end", "endpoint": "sums"}
2026-11-10T10:48:24.133+00:00 +0.764692 OUTPUT "DEBUG:   71+      >>>> return\n"
2026-11-10T10:48:24.134+00:00 +0.764837 OUTPUT "\nDEBUG:  101+  >>>> }\n\n"
2026-11-10T10:48:24.136+00:00 +0.767712 OUTPUT "DEBUG:  113+      >>>> Fetch \"$baseUrl/v$version/$archive\" (Join-Path $staging $archive) -progress\n\n"
2026-11-10T10:48:24.146+00:00 +0.777711 OUTPUT "DEBUG:   67+ function Fetch([string] $uri, [string] $destination, [switch] $progress)  >>>> {\n\nDEBUG:   68+   if ( >>>> -not $progress -or -not $interactive) {\n\nDEBUG:   69+      >>>> $ProgressPreference = if ($progress -and $terminal) { \"Continue\" } else { \"SilentlyContinue\" }\n\nDEBUG:   69+     $ProgressPreference = if ( >>>> $progress -and $terminal) { \"Continue\" } else { \"SilentlyContinue\" }\n\nDEBUG:   69+     $ProgressPreference = if ($progress -and $terminal) { \"Continue\" } else {  >>>> \"SilentlyContinue\" }\n\nDEBUG:   70+      >>>> Invoke-WebRequest -Uri $uri -OutFile $destination -UseBasicParsing\n\n"
2026-11-10T10:48:24.154+00:00 +0.785577 SERVER {"request_t": 0.785286, "event": "request", "path": "/v1.2.3/t3-1.2.3-win32-x64.zip", "endpoint": "archive", "attempt": 1, "status": 200, "behavior": 200, "accept": null}
2026-11-10T10:48:24.155+00:00 +0.786076 SERVER {"event": "body_complete", "endpoint": "archive", "bytes": 262677}
2026-11-10T10:48:24.163+00:00 +0.793819 SERVER {"event": "request_handler_end", "endpoint": "archive"}
2026-11-10T10:48:24.179+00:00 +0.810456 OUTPUT "DEBUG:   71+      >>>> return\n\nDEBUG:  101+  >>>> }\n"
2026-11-10T10:48:24.186+00:00 +0.816805 OUTPUT "\nDEBUG:  115+      >>>> Step \"Verifying the download...\"\n"
2026-11-10T10:48:24.191+00:00 +0.821875 OUTPUT "\n"
2026-11-10T10:48:24.192+00:00 +0.823350 OUTPUT "DEBUG:   45+ function Step([string] $message)  >>>> {\n"
2026-11-10T10:48:24.192+00:00 +0.823543 OUTPUT "\n"
2026-11-10T10:48:24.193+00:00 +0.823743 OUTPUT "DEBUG:   46+   if ( >>>> $interactive) { [Console]::Error.Write(\"`r$esc[2K  $muted$message$reset\") }\n"
2026-11-10T10:48:24.193+00:00 +0.823874 OUTPUT "\n"
2026-11-10T10:48:24.193+00:00 +0.824468 OUTPUT "DEBUG:   47+   else {  >>>> [Console]::Error.WriteLine(\"  $message\") }\n"
2026-11-10T10:48:24.193+00:00 +0.824522 OUTPUT "\n"
2026-11-10T10:48:24.202+00:00 +0.833239 OUTPUT "  Verifying the download...\n"
2026-11-10T10:48:24.204+00:00 +0.834761 OUTPUT "DEBUG:   48+  >>>> }\n"
2026-11-10T10:48:24.206+00:00 +0.836938 OUTPUT "\n"
2026-11-10T10:48:24.207+00:00 +0.837972 OUTPUT "DEBUG:  117+      >>>> $expected = (Get-Content (Join-Path $staging \"SHA256SUMS\") | Where-Object { $_ -match \"\\s\\*?$([regex]::Escape($archive))$\" } | Select-Object -First 1)\n"
2026-11-10T10:48:24.210+00:00 +0.841704 OUTPUT "\n"
2026-11-10T10:48:24.252+00:00 +0.883226 OUTPUT "DEBUG:  117+     $expected = (Get-Content (Join-Path $staging \"SHA256SUMS\") | Where-Object  >>>> { $_ -match \"\\s\\*?$([regex]::Escape($archive))$\" } | Select-Object -First 1)\n"
2026-11-10T10:48:24.252+00:00 +0.883386 OUTPUT "\n"
2026-11-10T10:48:24.252+00:00 +0.883466 OUTPUT "DEBUG:  117+     $expected = (Get-Content (Join-Path $staging \"SHA256SUMS\") | Where-Object {  >>>> $_ -match \"\\s\\*?$([regex]::Escape($archive))$\" } | Select-Object -First 1)\n"
2026-11-10T10:48:24.252+00:00 +0.883495 OUTPUT "\n"
2026-11-10T10:48:24.253+00:00 +0.883776 OUTPUT "DEBUG:  117+     $expected = (Get-Content (Join-Path $staging \"SHA256SUMS\") | Where-Object { $_ -match \"\\s\\*?$( >>>> [regex]::Escape($archive))$\" } | Select-Object -First 1)\n"
2026-11-10T10:48:24.253+00:00 +0.883835 OUTPUT "\n"
2026-11-10T10:48:24.260+00:00 +0.891398 OUTPUT "DEBUG:  117+     $expected = (Get-Content (Join-Path $staging \"SHA256SUMS\") | Where-Object { $_ -match \"\\s\\*?$([regex]::Escape($archive))$\"  >>>> } | Select-Object -First 1)\n"
2026-11-10T10:48:24.264+00:00 +0.894766 OUTPUT "\nDEBUG:  117+     $expected = (Get-Content (Join-Path $staging \"SHA256SUMS\") | Where-Object  >>>> { $_ -match \"\\s\\*?$([regex]::Escape($archive))$\" } | Select-Object -First 1)\n\nDEBUG:  117+     $expected = (Get-Content (Join-Path $staging \"SHA256SUMS\") | Where-Object {  >>>> $_ -match \"\\s\\*?$([regex]::Escape($archive))$\" } | Select-Object -First 1)\n\nDEBUG:  117+     $expected = (Get-Content (Join-Path $staging \"SHA256SUMS\") | Where-Object { $_ -match \"\\s\\*?$( >>>> [regex]::Escape($archive))$\" } | Select-Object -First 1)\n\nDEBUG:  117+     $expected = (Get-Content (Join-Path $staging \"SHA256SUMS\") | Where-Object { $_ -match \"\\s\\*?$([regex]::Escape($archive))$\"  >>>> } | Select-Object -First 1)\n\n"
2026-11-10T10:48:24.267+00:00 +0.898684 OUTPUT "DEBUG:  118+     if ( >>>> -not $expected) { Fail \"$archive is not listed in SHA256SUMS\" }\n\nDEBUG:  119+      >>>> $expected = ($expected -split \"\\s+\")[0].ToLowerInvariant()\n\n"
2026-11-10T10:48:24.269+00:00 +0.900174 OUTPUT "DEBUG:  120+      >>>> $actual = (Get-FileHash -Algorithm SHA256 (Join-Path $staging $archive)).Hash.ToLowerInvariant()\n"
2026-11-10T10:48:24.269+00:00 +0.900268 OUTPUT "\n"
2026-11-10T10:48:24.277+00:00 +0.908594 OUTPUT "DEBUG:  121+     if ( >>>> $actual -ne $expected) { Fail \"checksum mismatch for $archive\" }\n"
2026-11-10T10:48:24.278+00:00 +0.909595 OUTPUT "\n"
2026-11-10T10:48:24.285+00:00 +0.916410 OUTPUT "DEBUG:  121+     if ($actual -ne $expected) {  >>>> Fail \"checksum mismatch for $archive\" }\n\nDEBUG:   26+ function Fail([string] $message)  >>>> {\n\nDEBUG:   27+    >>>> Write-Error \"t3 install: $message\"\n\n"
2026-11-10T10:48:24.564+00:00 +1.195157 OUTPUT "Write-Error: /tmp/lead-32913-r1/evidence-capture/runs-20261110T104757.726561Z/P20-checksum-invalid-digest/before/install.ps1:121\n"
2026-11-10T10:48:24.564+00:00 +1.195352 OUTPUT "Line |\n"
2026-11-10T10:48:24.564+00:00 +1.195398 OUTPUT " 121 |  …  if ($actual -ne $expected) { Fail \"checksum mismatch for $archive\" }\n"
2026-11-10T10:48:24.564+00:00 +1.195430 OUTPUT "     |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n"
2026-11-10T10:48:24.564+00:00 +1.195452 OUTPUT "     | t3 install: checksum mismatch for t3-1.2.3-win32-x64.zip\n"
2026-11-10T10:48:24.674+00:00 +1.304955 SERVER_STATE_BEFORE_DRIVER_CLEANUP {"active_handlers": 0}
2026-11-10T10:48:24.676+00:00 +1.307261 RESULT {"exit_code": 1, "elapsed_seconds": 1.304882, "requests": 2, "interrupt_sent": false, "timeout": false, "state": {"marker": false, "files": [{"path": "home/.cache/powershell/StartupProfileData-NonInteractive", "bytes": 99368, "symlink": null}], "helper_outputs": [{"path": "helper-staging/t3-1.2.3-win32-x64.zip", "bytes": 262677}, {"path": "helper-staging/SHA256SUMS", "bytes": 181}], "staging": [], "sidecars": [], "tracked_downloader_pids": [], "remaining_tracked_downloaders": []}, "symlink_executable_check": null}
