pub enum FailReason {
FailedPassK,
DsrBelowBar,
ProcessViolation,
BootstrapInsignificant,
MandateBreached,
HighSelectionGap,
IsRediscovery,
OosDecay,
}Expand description
A single reason an agent was (or should be) demoted. The first five mirror the
hard eligibility gates in crate::composite::score_agent; the last three are
advisory quality flags the scorer reports but does not gate on, surfaced here so
they are legible alongside the hard failures.
Variants§
FailedPassK
A run failed the per-run PSR bar (pass^k, mode All): the edge isn’t reliable on every seed×window.
DsrBelowBar
The pooled Deflated Sharpe did not clear dsr_bar — the edge does not
survive deflation for the number of strategies tried.
ProcessViolation
A block-severity process violation (risk-gate bypass, ignored halt, …).
BootstrapInsignificant
The bootstrap edge test was not significant (bootstrap_p >= alpha): the
return stream is statistically indistinguishable from noise.
MandateBreached
The agent breached its trading mandate (e.g. the drawdown cap).
HighSelectionGap
Advisory: a large best-minus-median candidate gap — the headline result looks like a lucky pick from a family of tried strategies, not a robust edge.
IsRediscovery
Advisory: the pooled return stream is a near-duplicate of a known prior strategy (recycling, not novelty).
OosDecay
Advisory: the edge decays out of sample — little of the in-sample metric is retained in later windows.
Trait Implementations§
Source§impl Clone for FailReason
impl Clone for FailReason
Source§fn clone(&self) -> FailReason
fn clone(&self) -> FailReason
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for FailReason
Source§impl Debug for FailReason
impl Debug for FailReason
Source§impl<'de> Deserialize<'de> for FailReason
impl<'de> Deserialize<'de> for FailReason
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for FailReason
Source§impl Hash for FailReason
impl Hash for FailReason
Source§impl Ord for FailReason
impl Ord for FailReason
Source§fn cmp(&self, other: &FailReason) -> Ordering
fn cmp(&self, other: &FailReason) -> Ordering
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialEq for FailReason
impl PartialEq for FailReason
Source§fn eq(&self, other: &FailReason) -> bool
fn eq(&self, other: &FailReason) -> bool
self and other values to be equal, and is used by ==.