From daeeb322112e0b22003b3d219ea5fd80688ae039 Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 7 Sep 2026 01:49:54 +0000 Subject: [PATCH] ci(test): raise Test Core shard timeout-minutes 30 -> 45, temporarily Shard 5/6 keeps hitting the 30-minute wall, so every tail observation is a reading of the wall rather than of the shard: the true duration is censored and unbounded above. Raising the backstop both unblocks the job and un-censors the durations the shard rebalance needs before it can be derived. The new value carries its revert condition inline, next to the value. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01T6HeZvT9wdSJD1ZxJb5Eno --- .github/workflows/ci.yml | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 08ad09856c..ddbb499901 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -292,7 +292,28 @@ jobs: # ~5× a normal sharded run (~4-6 min), with margin for a cold Turbo cache; # the old 45 left a hung job "running" for half an hour past any plausible # healthy finish. - timeout-minutes: 30 + # + # ⚠ TEMPORARY RAISE, 30 -> 45 (#16173). Shard 5/6 is being killed at the + # 30-minute wall — 12+ observations at 30:16-30:21 with every other job in + # every one of those runs green — so the paragraph above describes the + # value this line must RETURN to, not the value it currently carries. + # + # Two reasons, both #16173's: + # 1. Unblock. The only uncensored shard-5 readings are 25:32 and 27:36, + # and shard 6/6 has been seen at 28:56 — a ~1 minute margin at the top + # of the observed green band against a 30:00 wall. + # 2. Un-censor. Every tail observation is a reading of THIS number, not + # of the shard: the true duration is >= 30:16, unbounded above. So the + # shard timings cannot be re-derived from CI history while the wall + # stands here. Raising it produces the durations #16173 needs before + # anyone touches `scripts/test-shard-timings.json`. + # + # ⛔ REVERT CONDITION, explicit: back to `30` once #16173 lands its shard + # rebalance. This value is temporary and carries no other expiry — a raise + # with no revert condition written beside it becomes permanent by + # forgetting. The backstop stays loose only for that window; the stall + # guard named above remains the primary hang detector throughout. + timeout-minutes: 45 permissions: contents: read strategy: