Consolidate required CI gate (#115)
All checks were successful
CI / required (push) Successful in 3m55s
All checks were successful
CI / required (push) Successful in 3m55s
This commit is contained in:
56
docs/ci-runtime-evidence.md
Normal file
56
docs/ci-runtime-evidence.md
Normal 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.291–119.204 |
|
||||
| reviewed reports | 0.000 | 0.000 |
|
||||
| Skia binary proof | 0.343 | 0.250–0.262 |
|
||||
| compile/test/features | 38.429 | 37.031–37.590 |
|
||||
| program/API smoke | 2.876 | 2.416–2.526 |
|
||||
| clippy/docs | 1.243 | 1.032–1.080 |
|
||||
| policy/evidence | 7.669 | 7.272–7.469 |
|
||||
| complete internal gate | 201.202 | 197.423–198.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,696–264,712 KiB. Every Skia proof installed the pinned archive with SHA-256
|
||||
`dd127f458a5e67a79f3936a8aa19f822fe90a1d6a11b50b5f84df2b0519d909c`
|
||||
and records that no source build started.
|
||||
Reference in New Issue
Block a user