Skip to content

Commit 2c29352

Browse files
claudehyperpolymath
authored andcommitted
ci: add timeout-minutes safety bound to every workflow steps-job
Rescues the one piece of unmerged value from the stale pr-183 branch (53 commits behind main) by re-applying it fresh against the current workflow set. A cherry-pick would have failed: several of pr-183's targets (governance, rust-ci, scorecard, ...) have since become reusable-workflow callers, where timeout-minutes is invalid. Adds timeout-minutes to all 37 steps-based (runs-on) jobs across 18 workflows that lacked one (including the new dogfood-proofs-ci.yml). Pure insertions, no other changes; reusable-caller (uses:) jobs are skipped. Values follow pr-183's per-workflow scale. Closes the missing_timeout_minutes class Hypatia flags. Tracker: #238 https://claude.ai/code/session_01UAqDQaMwpUqWHUSZekGZWv
1 parent e15ef1d commit 2c29352

18 files changed

Lines changed: 37 additions & 0 deletions

.github/workflows/agda-meta-checker.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ jobs:
2828
verify-proofs:
2929
name: Type-check Agda proofs
3030
runs-on: ubuntu-latest
31+
timeout-minutes: 15
3132
steps:
3233
- name: Checkout
3334
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3

.github/workflows/boj-build.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ concurrency:
1414
jobs:
1515
trigger-boj:
1616
runs-on: ubuntu-latest
17+
timeout-minutes: 10
1718
steps:
1819
- name: Checkout
1920
uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3

.github/workflows/cargo-audit.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ jobs:
2727
audit:
2828
name: Dependency audit
2929
runs-on: ubuntu-latest
30+
timeout-minutes: 10
3031

3132
steps:
3233
- name: Checkout repository

.github/workflows/cflite_batch.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ permissions:
1111
jobs:
1212
BatchFuzzing:
1313
runs-on: ubuntu-latest
14+
timeout-minutes: 45
1415
strategy:
1516
fail-fast: false
1617
matrix:

.github/workflows/cflite_pr.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ permissions:
1616
jobs:
1717
PR:
1818
runs-on: ubuntu-latest
19+
timeout-minutes: 15
1920
strategy:
2021
fail-fast: false
2122
matrix:

.github/workflows/chapel-ci.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ jobs:
5959
chapel-build:
6060
name: Compile Chapel Metalayer
6161
runs-on: ubuntu-22.04
62+
timeout-minutes: 30
6263
steps:
6364
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
6465

@@ -110,6 +111,7 @@ jobs:
110111
zig-ffi:
111112
name: Build & Test Zig FFI Bridge
112113
runs-on: ubuntu-22.04
114+
timeout-minutes: 30
113115
steps:
114116
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
115117

@@ -138,6 +140,7 @@ jobs:
138140
rust-chapel-feature:
139141
name: Rust Build with Chapel Feature
140142
runs-on: ubuntu-22.04
143+
timeout-minutes: 30
141144
needs: zig-ffi
142145
continue-on-error: true
143146
steps:
@@ -176,6 +179,7 @@ jobs:
176179
rust-chapel-real:
177180
name: Rust Build — Real Chapel Library (allow-fail, L2.3+ gate)
178181
runs-on: ubuntu-22.04
182+
timeout-minutes: 30
179183
needs: [chapel-build, zig-ffi]
180184
continue-on-error: true
181185
steps:

.github/workflows/container-ci.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ jobs:
5353
container-build:
5454
name: Build & verify container image
5555
runs-on: ubuntu-latest
56+
timeout-minutes: 90
5657

5758
steps:
5859
- name: Checkout
@@ -110,6 +111,7 @@ jobs:
110111
tier3-container:
111112
name: Tier-3 / ${{ matrix.prover }}
112113
runs-on: ubuntu-latest
114+
timeout-minutes: 90
113115
# Run on schedule or when the .containerization tree changes on main.
114116
# Not a merge gate — these are informational weekly builds.
115117
if: >-

.github/workflows/dogfood-gate.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ jobs:
2828
a2ml-validate:
2929
name: Validate A2ML manifests
3030
runs-on: ubuntu-latest
31+
timeout-minutes: 10
3132

3233
steps:
3334
- name: Checkout repository
@@ -72,6 +73,7 @@ jobs:
7273
k9-validate:
7374
name: Validate K9 contracts
7475
runs-on: ubuntu-latest
76+
timeout-minutes: 10
7577

7678
steps:
7779
- name: Checkout repository
@@ -121,6 +123,7 @@ jobs:
121123
empty-lint:
122124
name: Empty-linter (invisible characters)
123125
runs-on: ubuntu-latest
126+
timeout-minutes: 10
124127

125128
steps:
126129
- name: Checkout repository
@@ -185,6 +188,7 @@ jobs:
185188
groove-check:
186189
name: Groove manifest check
187190
runs-on: ubuntu-latest
191+
timeout-minutes: 10
188192

189193
steps:
190194
- name: Checkout repository
@@ -243,6 +247,7 @@ jobs:
243247
eclexiaiser-validate:
244248
name: Validate eclexiaiser manifest
245249
runs-on: ubuntu-latest
250+
timeout-minutes: 10
246251

247252
steps:
248253
- name: Checkout repository
@@ -312,6 +317,7 @@ jobs:
312317
dogfood-summary:
313318
name: Dogfooding compliance summary
314319
runs-on: ubuntu-latest
320+
timeout-minutes: 10
315321
needs: [a2ml-validate, k9-validate, empty-lint, groove-check, eclexiaiser-validate]
316322
if: always()
317323

.github/workflows/dogfood-proofs-ci.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ jobs:
3939
coq:
4040
name: Coq
4141
runs-on: ubuntu-latest
42+
timeout-minutes: 20
4243
steps:
4344
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
4445

@@ -65,6 +66,7 @@ jobs:
6566
lean:
6667
name: Lean 4
6768
runs-on: ubuntu-latest
69+
timeout-minutes: 20
6870
steps:
6971
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
7072

@@ -116,6 +118,7 @@ jobs:
116118
agda:
117119
name: Agda
118120
runs-on: ubuntu-latest
121+
timeout-minutes: 20
119122
steps:
120123
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
121124

.github/workflows/formal-verification.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ jobs:
4343
stable-tests:
4444
name: Trust-pipeline invariant tests (stable)
4545
runs-on: ubuntu-latest
46+
timeout-minutes: 15
4647

4748
steps:
4849
- name: Checkout repository
@@ -67,6 +68,7 @@ jobs:
6768
creusot-verify:
6869
name: Creusot formal verification
6970
runs-on: ubuntu-latest
71+
timeout-minutes: 15
7072
# No continue-on-error — this is a hard merge gate as of Stage 8c-M3.
7173
# The outer-loop invariant for compute is now live; all obligations
7274
# (PO-1..P8, PO-A1..A12) must discharge under Why3+Z3.

0 commit comments

Comments
 (0)