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, …].