pub enum Checkpoint {
AfterMs(i64),
AfterRuns(u32),
AfterGrains(u32),
}Expand description
When an applied recommendation is re-measured — one checkpoint of the Verify gate’s schedule, in the unit the deployment actually counts in.
Three units, because deployments count differently and a fixed one makes
the gate inert everywhere else. A service evaluated nightly counts
time (after_ms). A benchmark or a CI harness counts graded runs
(after_runs): “measure at the next evaluation after the apply”, however
long that takes on the clock. A chat agent counts turns (after_grains):
“after fifty more grains”. The default schedule stayed ms-only for a year
and was measured, on PAST-Bench, to fire exactly zero verdicts across 78
governed runs — a family finishes in seven minutes and the first checkpoint
was a day away (crates/areev-bench/PERSIST.md).
On the wire a bare integer is milliseconds, so every policy, metric
snapshot and state blob written before this type existed reads back
unchanged, and an all-ms schedule still serializes as [86400000, …].
Variants§
AfterMs(i64)
Elapsed time since the apply.
AfterRuns(u32)
Evalset runs journaled since the apply. Only an evalset: metric can
count these; on any other metric the checkpoint never comes due.
AfterGrains(u32)
Grains written since the apply — the loop’s own notion of “activity”.
Implementations§
Trait Implementations§
Source§impl Clone for Checkpoint
impl Clone for Checkpoint
Source§fn clone(&self) -> Checkpoint
fn clone(&self) -> Checkpoint
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more