From 968815cd227a147d598e19af778e1165a70aeeb0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?T=C3=82CHES?= Date: Mon, 23 Mar 2026 09:52:13 -0600 Subject: [PATCH] ci: add timeout-minutes to all CI jobs (#2148) A hung unit test on PR #2120 ran for 3+ hours before manual cancellation, burning ~185 minutes of Actions quota. Add timeouts to cap runaway jobs: detect-changes (2m), docs-check/lint (5m), build/windows (15m). Co-authored-by: Claude Opus 4.6 (1M context) --- .github/workflows/ci.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 30bfa4a6f..b76dc34cb 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -24,6 +24,7 @@ concurrency: jobs: detect-changes: + timeout-minutes: 2 runs-on: ubuntu-latest outputs: docs-only: ${{ steps.check.outputs.docs-only }} @@ -59,6 +60,7 @@ jobs: fi docs-check: + timeout-minutes: 5 runs-on: ubuntu-latest needs: detect-changes steps: @@ -70,6 +72,7 @@ jobs: run: bash scripts/docs-prompt-injection-scan.sh --diff origin/main lint: + timeout-minutes: 5 needs: detect-changes runs-on: ubuntu-latest steps: @@ -96,6 +99,7 @@ jobs: run: node scripts/check-skill-references.mjs build: + timeout-minutes: 15 needs: detect-changes if: needs.detect-changes.outputs.docs-only != 'true' runs-on: ubuntu-latest @@ -135,6 +139,7 @@ jobs: run: npm run test:integration windows-portability: + timeout-minutes: 15 needs: detect-changes if: >- needs.detect-changes.outputs.docs-only != 'true' &&