#[non_exhaustive]pub enum ChangeKind {
Added {
pass_rate: f64,
},
Removed {
pass_rate: f64,
},
DerivedInput {
parts: Vec<ItemPart>,
},
DeterministicRegression {
before: f64,
after: f64,
newly_failing: Vec<ExpectationName>,
categories: Vec<ReliabilityCategory>,
},
DeterministicImprovement {
before: f64,
after: f64,
},
JudgeDrift {
criterion: JudgeCriterion,
before: f64,
after: f64,
},
}Expand description
The kinds of change a comparison reports.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Added
The item is new in the current run.
Removed
The item was in the baseline and is not in the current run.
DerivedInput
The item’s content changed, in parts the corpus declares are written by the code under test.
This is the intended effect of the change being measured, not a broken pairing: the item is still compared, and whatever deterministic or judge change it also produced is reported beside this one. It is the difference between “the state block changed because we changed the projector” and “somebody edited the fixture”.
DeterministicRegression
Deterministic assertions that used to hold no longer do. Behaviour changed.
Fields
newly_failing: Vec<ExpectationName>Expectations that fail now and did not before.
categories: Vec<ReliabilityCategory>The reliability categories those expectations belong to (§26.3).
DeterministicImprovement
Deterministic assertions that used to fail now hold.
JudgeDrift
The same behaviour, graded differently. Not a regression.