Skip to main content

Module verdict

Module verdict 

Source
Expand description

The pure verdict engine: per Test-bound ground, the resurface precedence. No I/O — receipts, the live-origin sha, and the selected-list are passed in. Facts, not verdicts: every not-green state is a co-equal fact, never ranked or scored.

Precedence (first match wins): sha-stale → not-run → age-stale → unproven → gray→red → red → silently-unbound → green.

Structs§

Ctx
The evaluation context, built once per ev check / ev reopen invocation: the staleness reference sha, the selected-list, and the clock for age-staleness.

Enums§

StaleKind
WHY a check reads stale — three distinct, auditable sub-reasons the flat stale label collapses. Surfaced in the events log (never masked into one bucket) so a disabled/drifted staleness_ref that is masking a real red stays visible: sha (verified_at_sha behind the live origin), count-window (a triggering change landed after the last run), age (the deciding receipt is past the window).
Verdict

Functions§

verdict_for
Verdict for one ground against receipts (this ground’s run-receipts) and ctx.