From 92a7a64b551d8e0b8676b9646f174bffaf0342f5 Mon Sep 17 00:00:00 2001 From: frstrtr Date: Sat, 4 Jul 2026 20:43:23 +0000 Subject: [PATCH] ci(web-static): raise visual-capture nav+render timeouts for loaded self-hosted runner page.goto(domcontentloaded) 15000->45000ms and waitForSelector(#defrag-canvas) 8000->20000ms. The mock server is local (127.0.0.1) so the 15s ceiling was CPU starvation under VM905 saturation, not a code regression: green on an idle runner (#607), TimeoutError under load. Flake-hardening only, fenced to the visual-capture harness, non-consensus. --- web-static/sharechain-explorer/tests/visual/capture.mjs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/web-static/sharechain-explorer/tests/visual/capture.mjs b/web-static/sharechain-explorer/tests/visual/capture.mjs index 0affcd01b..69999afb0 100644 --- a/web-static/sharechain-explorer/tests/visual/capture.mjs +++ b/web-static/sharechain-explorer/tests/visual/capture.mjs @@ -65,8 +65,8 @@ async function capture(mode, outfile) { // leaves a non-essential subresource (favicon/image) pending and // never fires the load event within the timeout; `networkidle0` // never settles because bundled mode opens a persistent SSE conn. - await page.goto(url, { waitUntil: 'domcontentloaded', timeout: 15000 }); - await page.waitForSelector('#defrag-canvas', { timeout: 8000 }); + await page.goto(url, { waitUntil: 'domcontentloaded', timeout: 45000 }); + await page.waitForSelector('#defrag-canvas', { timeout: 20000 }); // Generous fixed delay lets both paths complete their initial // fetch + render. Deterministic against the mock server (no live // data, no SSE pushes).