Consolidate required CI gate (#115)
All checks were successful
CI / required (push) Successful in 3m55s

This commit is contained in:
2026-08-12 16:46:45 +00:00
parent b9415bedaa
commit 27c860c225
47 changed files with 2506 additions and 1474 deletions

View File

@@ -0,0 +1,56 @@
# Required CI runtime evidence
This record is populated from the consolidated `CI / required` Gitea job. A
qualifying sample consists of one deliberate cold native/dependency cache run
and four normal warm-cache runs on `aarch64-unknown-linux-gnu`. Each uploaded
`required-gate.json` contains per-stage elapsed time, Rust host/target, separate
compiled-Cargo, dependency-download, native, and tool cache hit state,
available peak-memory evidence, and the Skia binary outcome.
The compiled target key includes Rust 1.97.1, the ARM64 GNU target, every Cargo
manifest, `Cargo.lock`, required feature/policy configuration, and native
installer inputs. CI-driver-only changes reuse the newest generation through a
same-filesystem hard-link migration; Cargo still validates every fingerprint.
To invalidate compiled artifacts, change a keyed build input. A deliberate
`cold_cache` dispatch removes registry archives/index data, Git database data,
pinned audit tools, OpenJPEG, and Skia. It retains immutable extracted registry
sources and the compiled target so the cold dependency/native measurement does
not manufacture source-mtime rebuilds unrelated to cache correctness.
The pre-consolidation Gitea baseline was 13 automatic workflows and 333 runs.
Successful maxima included 22.9 minutes for the native workspace, 32.0 minutes
for Skia, 66.6 minutes for artifact audit, and 86.0 minutes for the release
matrix. Native code generation had a 13.2-minute median and 18.5-minute maximum;
even this one concern could exceed the new complete-gate budget.
| Run | Cache | Elapsed | Result | Evidence |
| --- | --- | ---: | --- | --- |
| [423](https://git.rfc1437.de/hugo/MetaCrate/actions/runs/391) | cold (compiled hit; dependency/native/tool miss) | 4:24 | success | [required-ci-evidence](https://git.rfc1437.de/hugo/MetaCrate/actions/runs/391/artifacts/required-ci-evidence) |
| [424](https://git.rfc1437.de/hugo/MetaCrate/actions/runs/392) | warm | 3:56 | success | [required-ci-evidence](https://git.rfc1437.de/hugo/MetaCrate/actions/runs/392/artifacts/required-ci-evidence) |
| [425](https://git.rfc1437.de/hugo/MetaCrate/actions/runs/393) | warm | 3:56 | success | [required-ci-evidence](https://git.rfc1437.de/hugo/MetaCrate/actions/runs/393/artifacts/required-ci-evidence) |
| [426](https://git.rfc1437.de/hugo/MetaCrate/actions/runs/394) | warm | 3:55 | success | [required-ci-evidence](https://git.rfc1437.de/hugo/MetaCrate/actions/runs/394/artifacts/required-ci-evidence) |
| [427](https://git.rfc1437.de/hugo/MetaCrate/actions/runs/395) | warm | 4:12 | success | [required-ci-evidence](https://git.rfc1437.de/hugo/MetaCrate/actions/runs/395/artifacts/required-ci-evidence) |
The uploaded evidence reports the following internal gate timings. Warm values
are the observed minimum and maximum across the four warm runs.
| Stage | Cold seconds | Warm seconds |
| --- | ---: | ---: |
| static/generated/API | 119.200 | 118.291119.204 |
| reviewed reports | 0.000 | 0.000 |
| Skia binary proof | 0.343 | 0.2500.262 |
| compile/test/features | 38.429 | 37.03137.590 |
| program/API smoke | 2.876 | 2.4162.526 |
| clippy/docs | 1.243 | 1.0321.080 |
| policy/evidence | 7.669 | 7.2727.469 |
| complete internal gate | 201.202 | 197.423198.555 |
All five consecutive runs used commit `05af8d5edf566fb79770990153d8561a98718ec4`
on the ARM64 `ubuntu-latest` runner. The 4:24 maximum leaves 10:36 of headroom
under the 15-minute job timeout. Branch protection for `main` enables status
checks with `CI / required (push)` as its only required context; direct-push
behavior is unchanged. Every evidence record reports `aarch64` with Rust
host/target `aarch64-unknown-linux-gnu`; observed peak cgroup memory is
264,696264,712 KiB. Every Skia proof installed the pinned archive with SHA-256
`dd127f458a5e67a79f3936a8aa19f822fe90a1d6a11b50b5f84df2b0519d909c`
and records that no source build started.