fix(screenshots): give PF_SHOT_READY headroom for the cold first scene

The linux-client-screenshots job red-lit on a single scene — the first one
(`hosts`) — with "client never signalled PF_SHOT_READY", while the other six
captured fine (~1-2s each). Root cause: the first client launch pays a large
one-time cold-start under software rendering (llvmpipe GL-shader + fontconfig
cache build, plus first-run client-identity generation into the shared scratch
HOME), ~25s on the CI runner; the relm4 shell rebuilt in 0.8.3 tipped it just
over the 20s PF_SHOT_READY cap. Every scene rendered correctly — the cap was
simply too tight for cold start. Raise it to ~60s (warm scenes still break out
in ~1-2s, so the happy path is unchanged). Best-effort job; it never blocked the
release, but now it goes green.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-08 08:30:58 +02:00
co-authored by Claude Opus 4.8
parent f97b5a3783
commit b664ae373d
+6 -1
View File
@@ -113,7 +113,12 @@ for scene in "${SCENES[@]}"; do
"$BIN" >"$WORK/log" 2>&1 &
pid=$!
ready=0
for _ in $(seq 1 200); do # up to ~20s
# Up to ~60s: a warm scene signals in ~1-2s, but the FIRST launch pays a large one-time
# cold-start under software rendering (llvmpipe GL-shader + fontconfig cache build, plus
# first-run client-identity generation into the shared scratch HOME) that can run ~25s on a
# loaded CI runner. A 20s cap tripped exactly one scene (the first) even though every scene
# rendered fine — give it headroom instead of red-lighting the whole capture on cold start.
for _ in $(seq 1 600); do
if grep -q "PF_SHOT_READY" "$WORK/log"; then
ready=1
break