ci(smoke): 30-minute smoke job budget

v4's PASSING smoke legs already ran 12-14 minutes against the 15-min
timeout; v5 lost 13 green-path jobs to that wall (GitHub reports job
timeouts as 'cancelled', zero real failures). The unified smoke
legitimately runs more than the pre-unification one — artifact mode,
real download/update phases, a Phase 15 that actually executes.
Budget doctrine (see _soak.yml, violated twice there historically):
the timeout sits above the worst case with headroom.

Signed-off-by: Martin Vogel <martin.vogel.tech@gmail.com>
This commit is contained in:
Martin Vogel committed 2026-07-27 08:58:06 +02:00
1 parent c3b35691ab
commit 3daea2308e
1 file changed
+18 -3
+18 -3
View File
@@ -92,7 +92,12 @@ jobs:
fail-fast: false
matrix: ${{ fromJSON(needs.setup-matrix.outputs.unix) }}
runs-on: ${{ matrix.os }}
timeout-minutes: 15
# 30, not 15: the unified smoke legitimately runs MORE (artifact mode,
# real download/update phases, a Phase 15 that actually executes), and
# v4's PASSING legs already took 12-14 min — v5 lost 13 green-path jobs
# to the 15-min wall (GitHub reports job timeouts as 'cancelled').
# Budget doctrine: the timeout sits above the worst case, twice over.
timeout-minutes: 30
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
@@ -168,7 +173,12 @@ jobs:
fail-fast: false
matrix: ${{ fromJSON(needs.setup-matrix.outputs.windows) }}
runs-on: ${{ matrix.os }}
timeout-minutes: 15
# 30, not 15: the unified smoke legitimately runs MORE (artifact mode,
# real download/update phases, a Phase 15 that actually executes), and
# v4's PASSING legs already took 12-14 min — v5 lost 13 green-path jobs
# to the 15-min wall (GitHub reports job timeouts as 'cancelled').
# Budget doctrine: the timeout sits above the worst case, twice over.
timeout-minutes: 30
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
@@ -270,7 +280,12 @@ jobs:
fail-fast: false
matrix: ${{ fromJSON(needs.setup-matrix.outputs.portable) }}
runs-on: ${{ matrix.runner }}
timeout-minutes: 15
# 30, not 15: the unified smoke legitimately runs MORE (artifact mode,
# real download/update phases, a Phase 15 that actually executes), and
# v4's PASSING legs already took 12-14 min — v5 lost 13 green-path jobs
# to the 15-min wall (GitHub reports job timeouts as 'cancelled').
# Budget doctrine: the timeout sits above the worst case, twice over.
timeout-minutes: 30
steps:
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0