Story: Rebalance the CI tiers: Linux clang continuous, macOS and Windows nightly
Table of Contents
This page documents a story in Sprint 28. It captures the goal, current status, acceptance criteria, and the tasks that compose it.
1. Goal
Continuous Linux carries only the two linux-clang jobs and runs as often as their measured run time allows. macOS and Windows build nightly.
2. Status
| Field | Value |
|---|---|
| State | DONE |
| Parent sprint | Sprint 28 |
| Now | Nothing. |
| Waiting on | Nothing. |
| Next | Nothing. |
| Last touched | 2026-10-14 |
3. Acceptance
- Continuous Linux's matrix holds linux-clang debug and release only.
- Continuous Linux's cron matches the slower clang job's measured run time.
- macOS and Windows run on a nightly cron, and tag pushes still build them.
- macOS builds on macos-15, not the retiring macos-14.
4. Tasks
| Task | State | Start | End | Description |
|---|---|---|---|---|
| Scaffold story: Rebalance the CI tiers: Linux clang continuous, macOS and Windows nightly | DONE | 2026-10-14 | 2026-10-14 | Story scaffolding rides this task: documents, sprint wiring, and the scaffold PR. Close it before merging that PR. |
| Rebalance the continuous and nightly schedules | DONE | 2026-10-14 | 2026-10-14 | Initial task for: Rebalance the CI tiers: Linux clang continuous, macOS and Windows nightly |
5. Decisions
- Continuous CI keeps linux-clang debug and release only. They were the only jobs that finished well inside the six-hour limit: 2h46m and 2h54m on the last green run. The gcc jobs ran about 4h10m, and macOS 4h40m to 5h40m.
- Continuous Linux runs every three hours, the tightest interval that does not queue a run behind its predecessor. The relevance-guard makes that a ceiling rather than a promise.
- macOS and Windows move to the nightly tier. macOS moves to
macos-15because GitHub retiresmacos-14on 2026-11-02. - Shrinking the matrix to two variants also fits their sccache inside
GitHub's 10 GB repository cap, so a run can finish and reach its
Save sccachestep.
6. Out of scope
- Coverage and packaging still run on the continuous clang jobs.
- The Windows run time is unmeasured. Its last run reported success with the build matrix skipped, so its cadence rests on an inherited figure.