pub struct EnhancedAnomalyConfig {
pub enabled: bool,
pub rates: AnomalyRateConfig,
pub multi_stage_schemes: MultiStageSchemeConfig,
pub correlated_injection: CorrelatedInjectionConfig,
pub near_miss: NearMissConfig,
pub difficulty_classification: DifficultyClassificationConfig,
pub context_aware: ContextAwareConfig,
pub labeling: EnhancedLabelingConfig,
pub source_conditional_rarity_rate: Option<f64>,
}Expand description
Enhanced anomaly injection configuration.
Provides comprehensive anomaly injection capabilities including:
- Multi-stage fraud schemes (embezzlement, revenue manipulation, kickbacks)
- Correlated anomaly injection (co-occurrence patterns, error cascades)
- Near-miss generation for false positive reduction
- Detection difficulty classification
- Context-aware injection based on entity behavior
Fields§
§enabled: boolEnable enhanced anomaly injection.
rates: AnomalyRateConfigBase anomaly rates.
multi_stage_schemes: MultiStageSchemeConfigMulti-stage fraud scheme configuration.
Correlated anomaly injection configuration.
near_miss: NearMissConfigNear-miss generation configuration.
difficulty_classification: DifficultyClassificationConfigDetection difficulty classification configuration.
context_aware: ContextAwareConfigContext-aware injection configuration.
labeling: EnhancedLabelingConfigEnhanced labeling configuration.
source_conditional_rarity_rate: Option<f64>SOTA-12 (#140, FINDINGS §13): post-process tagger that tags the top
rate × n_jes JEs whose (source, gl_account) is rare under the
per-source empirical PMF as RelationalAnomalyType::SourceConditional- Rarity. None = disabled (default); typical value 0.01 matches the
audit-packet hot-list size. Runs AFTER per-entry strategies — additive,
doesn’t replace them.
Phase 1 deprecation note: this key remains the source of truth for
back-compat. If concentration.source_conditional_rarity.rate is also
set, that value wins (it’s an opt-in to the unified DSL).
Trait Implementations§
Source§impl Clone for EnhancedAnomalyConfig
impl Clone for EnhancedAnomalyConfig
Source§fn clone(&self) -> EnhancedAnomalyConfig
fn clone(&self) -> EnhancedAnomalyConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for EnhancedAnomalyConfig
impl Debug for EnhancedAnomalyConfig
Source§impl Default for EnhancedAnomalyConfig
impl Default for EnhancedAnomalyConfig
Source§fn default() -> EnhancedAnomalyConfig
fn default() -> EnhancedAnomalyConfig
Source§impl<'de> Deserialize<'de> for EnhancedAnomalyConfig
impl<'de> Deserialize<'de> for EnhancedAnomalyConfig
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>,
Auto Trait Implementations§
impl Freeze for EnhancedAnomalyConfig
impl RefUnwindSafe for EnhancedAnomalyConfig
impl Send for EnhancedAnomalyConfig
impl Sync for EnhancedAnomalyConfig
impl Unpin for EnhancedAnomalyConfig
impl UnsafeUnpin for EnhancedAnomalyConfig
impl UnwindSafe for EnhancedAnomalyConfig
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.