revert(install-e2e): drop the 12-minute no-progress tripwire

The pre-#97052 prompt wedge fires AFTER the updater has already moved
the checkout (stash cleanup, reset, bootstrap refresh all precede the
upstream-remote prompt), so checkout movement cannot distinguish a
wedged updater from a working one. Two CI rides confirmed the check
never fires. The 35-minute wait bound already caps these legs.
This commit is contained in:
yoniebans
2026-09-02 16:24:18 +02:00
parent d19038e76b
commit 530b443b66
-19
View File
@@ -758,31 +758,12 @@ function Invoke-GuiUpdateDesktopRoute([string]$TargetSha) {
Write-Host " waiting for the detached updater to finish (up to 35 min) ..."
$updateLog = Join-Path $HermesHome "logs\update.log"
$updateLogPos = 0
$startSha = ""
try { $startSha = Get-InstalledHead } catch {}
$deadline = (Get-Date).AddMinutes(35)
# A working updater moves the checkout off the starting sha within its
# first minutes (git fetch/reset precedes the long venv + rebuild
# tail). No movement by this mark means the updater is wedged before
# its git step; waiting out the full bound adds nothing. Unreadable
# counts as unmoved (the wedge holds the venv shim lock, so reads can
# throw), but only two consecutive no-progress polls trip it: one bad
# read must not fail a healthy leg.
$progressDeadline = (Get-Date).AddMinutes(12)
$noProgressPolls = 0
while ((Get-Date) -lt $deadline) {
if (Test-Path -LiteralPath $resultPath) { break }
$head = ""
try { $head = Get-InstalledHead } catch {}
if ($head -eq $TargetSha -and -not (Test-Path -LiteralPath $markerPath)) { break }
if ((Get-Date) -gt $progressDeadline -and ($head -eq $startSha -or $head -eq "")) {
$noProgressPolls++
if ($noProgressPolls -ge 2) {
Assert-True $false "updater made progress off $startSha within 12 minutes (checkout unmoved or unreadable; wedged before its git step... on pre-#97052 releases this is the fork-upstream prompt hang)"
}
} else {
$noProgressPolls = 0
}
# Tail any new update.log lines so the desktop-rebuild phase is
# visible in the CI step output.
if (Test-Path -LiteralPath $updateLog) {