Struct TrialOutcome
pub struct TrialOutcome {
pub number: u64,
pub label: String,
pub pruned: bool,
pub pruned_at_step: Option<u64>,
pub objective_value: Option<f64>,
pub would_be_final: f64,
pub steps_consumed: u64,
}Expand description
What one trial did under the scheduler.
The record the oracle asserts against: not just that pruning happened, but
which trial, at what step, and with what value — the whole point of the M3.2
gate (docs/design/09-implementation.md §12).
Fields§
§number: u64The trial’s per-study number (and its index into the scenario).
label: StringThe role label of the curve it ran (from LabeledCurve::label).
pruned: boolWhether the scheduler pruned it.
pruned_at_step: Option<u64>The step it was pruned at — its last reported step — or None if it
completed.
objective_value: Option<f64>The objective value the study ranks it by. For a pruned trial this is its
last intermediate value (docs/design/03-architecture.md §2.3), read back
from storage end-to-end — the rule ASHA’s correctness depends on.
would_be_final: f64The value the curve would have reached at the scenario’s final step, had it not been pruned — recomputed from the curve, for a budget-vs-quality comparison.
steps_consumed: u64The resource this trial consumed: its highest reported step (env-steps in
the study’s default ResourceUnit).
Trait Implementations§
§impl Clone for TrialOutcome
impl Clone for TrialOutcome
§fn clone(&self) -> TrialOutcome
fn clone(&self) -> TrialOutcome
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more§impl Debug for TrialOutcome
impl Debug for TrialOutcome
§impl PartialEq for TrialOutcome
impl PartialEq for TrialOutcome
impl StructuralPartialEq for TrialOutcome
Auto Trait Implementations§
impl Freeze for TrialOutcome
impl RefUnwindSafe for TrialOutcome
impl Send for TrialOutcome
impl Sync for TrialOutcome
impl Unpin for TrialOutcome
impl UnsafeUnpin for TrialOutcome
impl UnwindSafe for TrialOutcome
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T, U> Imply<T> for U
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more