Skip to content

Commit 2d7231e

Browse files
hyperpolymathclaude
andcommitted
ci(proofs): add weekly schedule so the proof gate re-checks main
The Proofs Gate is path-filtered: the `changes` job skips the heavy type-check unless a PR/push touches src/abi/**, cartridges/**/abi, etc. A break already in main (merged before this gate existed, or via a path the filter ignores) is therefore never re-detected — every off-path PR's typecheck job is skipped and reports success to the required check. Add a weekly `schedule` trigger. On a schedule event the detect step leaves run=true (its default), so the full core + every-cartridge Idris2 type-check runs unconditionally against main and catches proof drift. Motivated by a duplicate `allTake` definition that sat in src/abi/Boj/SafetyLemmas.idr on main with a green gate (fixed separately). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent 426a435 commit 2d7231e

1 file changed

Lines changed: 11 additions & 0 deletions

File tree

.github/workflows/proofs.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,17 @@ on:
2222
pull_request:
2323
branches: [main]
2424
workflow_dispatch:
25+
# Weekly baseline re-verification of main. The `changes` path-filter below
26+
# skips the heavy type-check on PRs/pushes that don't touch src/abi/** (so an
27+
# off-path PR isn't blocked and doesn't pay for a 45-min Idris2 build). The
28+
# side effect is that a proof break ALREADY living in main — merged before
29+
# this gate existed, or via a path the filter ignores — is otherwise never
30+
# re-detected. On a `schedule` event the detect step leaves run=true (its
31+
# default), so the full core + every-cartridge type-check runs unconditionally
32+
# and catches such drift. (This is exactly how a duplicate `allTake` in
33+
# SafetyLemmas.idr sat in main with a green gate — see PR fixing it.)
34+
schedule:
35+
- cron: '17 6 * * 1' # Mondays 06:17 UTC
2536

2637
permissions:
2738
contents: read

0 commit comments

Comments
 (0)