Skip to content

ci: add timeout-minutes to every matrix job so a hung job can't block merges for 6h#128

Merged
ruvnet merged 1 commit into
mainfrom
ci/matrix-job-timeouts
Jul 7, 2026
Merged

ci: add timeout-minutes to every matrix job so a hung job can't block merges for 6h#128
ruvnet merged 1 commit into
mainfrom
ci/matrix-job-timeouts

Conversation

@ruvnet

@ruvnet ruvnet commented Jul 7, 2026

Copy link
Copy Markdown
Owner

What / why

The CI matrix jobs (rust, wasm, node, pack-install, bench) had no timeout-minutes, so they inherit GitHub's 360-minute (6h) default. When a Windows cargo test ran slow/stuck recently, it left every open PR un-mergeable with no fail-fast signal — you couldn't distinguish a hung job from a slow one, and nothing would end it short of the 6h cap.

Change (config-only)

A generous per-job ceiling, set well above each job's observed duration so a legitimately-slow run never false-fails, while a genuinely-hung one fails fast enough to rerun:

job timeout rationale
rust 90 observed worst ~45min on Windows → 2× margin
wasm 45
node / pack-install 30 JS suites, minutes even on Windows
bench 20 synthetic corpus

No gate is weakened — a timeout only bounds runtime, caps the worst case at 90min instead of 360, and makes a true hang a visible, rerunnable failure. YAML validated (all 6 jobs parse).

🤖 Generated with claude-flow

… merges for 6h

The CI matrix jobs had no `timeout-minutes`, so they inherit GitHub's 360-minute (6h) default. When a
Windows `cargo test` ran slow/stuck, it left every open PR un-mergeable with no fail-fast signal — you
couldn't tell a hung job from a slow one, and nothing would end it short of the 6h cap.

Adds a generous per-job ceiling, set well above each job's observed duration so a legitimately-slow run
never false-fails, while a genuinely-hung one fails fast enough to rerun:
- rust: 90  (observed worst ~45min on Windows)
- wasm: 45
- node / pack-install: 30
- bench: 20

Config-only; no gate is weakened (a timeout only bounds runtime). YAML validated (all 6 jobs parse).

Co-Authored-By: claude-flow <ruv@ruv.net>
@ruvnet ruvnet merged commit f11fa67 into main Jul 7, 2026
25 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant