Expand description
2026-09-26: Do the records a PR adds agree with each other and with the head being certified?
Each record is bound to its commit by its signature. check adds two
rules over the whole added set:
- Every record must stand at the head (
Standing::Stands, fromcheck::record_standing): the diff from the record’s commit to the head touches nothing its gate measures, or the record’s closure excuses what it touches. The rule is content, not ancestry, so records measured at different commits may be added together. - Speed-class records (
Sensitivity::Speed, read from the registry) from more than one signer are accepted only when every cross-signer pair is one box byhardware::equivalence::equivalent, judged from the records’ ownhardwareandhardware_statecaptures under the class’skernels/<hw>/HARDWARE.tomllimits. Correctness-class records may come from any number of signers.
The one-box rule for Speed rests on a measurement taken 2026-09-06 on one gate at one commit: dgx2 22.78 tok/s (sigma 0.063, n=10) against dgx3 23.44 (sigma 0.070, n=10), a gap ten times either box’s sigma.
Whether a signer is committed in .github/record-signers/ is checked by
gate::signing, not here.
Owner: bench gate. Invariants:
- A benchmark id the registry does not know is reported as
Disagreement::UnknownBenchmark, never given a class. checkreturns every disagreement it finds, not only the first.
Structs§
- Added
Record - 2026-09-26: One record as the agreement rule sees it.
Enums§
- Disagreement
- 2026-09-26: Why a set of added records does not hang together.
Functions§
- check
- 2026-09-26: Check that the records a PR adds agree with one another.
- required_
by_ class - 2026-09-26: Every required gate, split into (Speed, Correctness) by the class that decides its signer rule. A gate the registry does not know is in neither list.
- sensitivity_
of - 2026-09-26: The class a gate’s records belong to, read from the registry and never from the record, so a record cannot choose its own class.
- standing_
at - 2026-09-26: A record’s
Standingathead, judged against the coverage entry of itsbenchmark_id. An id with no coverage entry isStanding::Unknown.