pub struct OutcomeResult {Show 14 fields
pub rec_hash: String,
pub metric: String,
pub baseline: f64,
pub current: f64,
pub verdict: String,
pub baseline_kind: String,
pub baseline_run_id: Option<String>,
pub best_before: Option<f64>,
pub tolerance: f64,
pub current_run_id: Option<String>,
pub cost: Option<CostRead>,
pub horizon_ms: i64,
pub checkpoint: Option<Checkpoint>,
pub measured_at_ms: i64,
}Expand description
A measured outcome for an applied recommendation at one checkpoint — the
Verify gate’s output. held = the metric did not regress at this horizon;
regressed = it got worse (a revert is proposed). A recommendation
accumulates one of these per horizon, forming a time series.
Fields§
§rec_hash: String§metric: String§baseline: f64§current: f64§verdict: String§baseline_kind: StringWhere baseline came from, so the receipt names the run it compared
against: newest_before_apply or high_water (an evalset run, named
in baseline_run_id), or snapshot — the number the proposal froze,
used when no run was journaled before the apply or the metric is not
evalset-backed. Empty on a record written before this field existed.
baseline_run_id: Option<String>The evalset run baseline was read from, when it was read from one.
best_before: Option<f64>Advisory, independent of the policy’s baseline choice: the best value
the field attained on any run journaled before the apply. When the
verdict is held against a newer, lower baseline this is the lost
opportunity the marginal comparison cannot see.
tolerance: f64The minimum effect size the verdict was made under, in the metric’s
unit (OutcomeEvalset::min_effect, resolved at measure time). Absent
when zero, so a held under a floor is distinguishable from a held
at zero and a record without one reads as before.
current_run_id: Option<String>The evalset run current was read from, when it was read from one.
cost: Option<CostRead>The cost bound’s reading at this checkpoint, when the policy set one.
A quality held with a breached bound records the verdict
held_costlier; regressed dominates.
horizon_ms: i64Which checkpoint this measurement is for (ms after apply). Zero for a
checkpoint counted in runs or grains — see checkpoint.
checkpoint: Option<Checkpoint>The checkpoint in its own unit, when that unit is not time. A time
checkpoint leaves this unset and speaks through horizon_ms, so every
consumer of the older shape reads an unchanged record.
measured_at_ms: i64