pub struct ExtensionBudgetControllerConfig {
pub enabled: bool,
pub tier: ExtensionBudgetTier,
pub overload_window_ms: u64,
pub overload_signals_to_fallback: u32,
pub recovery_successes_to_exit: u32,
pub regime_shift: RegimeShiftConfig,
pub safety_envelope: SafetyEnvelopeConfig,
pub oco_tuner: OcoTunerConfig,
}Expand description
Budget controller settings for expected-loss fallback routing.
The controller promotes an extension to compatibility-lane fallback after repeated overload/anomaly signals within a bounded window and returns to fast lane after a recovery streak. Optionally augmented by CUSUM/BOCPD regime-shift detection for statistically-justified early triggering.
Fields§
§enabled: boolMaster switch for automatic compatibility-lane fallback.
tier: ExtensionBudgetTierWorkload tier used to derive operational defaults.
overload_window_ms: u64Rolling window for overload signals.
overload_signals_to_fallback: u32Number of overload signals needed to enter fallback mode.
recovery_successes_to_exit: u32Consecutive successful calls required to exit fallback mode.
regime_shift: RegimeShiftConfigCUSUM/BOCPD regime-shift detection configuration.
safety_envelope: SafetyEnvelopeConfigConformal + PAC-Bayes safety envelope configuration.
oco_tuner: OcoTunerConfigOnline convex optimization tuner for queue/batch/time-slice budgets.
Implementations§
Source§impl ExtensionBudgetControllerConfig
impl ExtensionBudgetControllerConfig
pub const fn for_tier(tier: ExtensionBudgetTier) -> Self
pub const fn for_policy_mode(mode: ExtensionPolicyMode) -> Self
Trait Implementations§
Source§impl Clone for ExtensionBudgetControllerConfig
impl Clone for ExtensionBudgetControllerConfig
Source§fn clone(&self) -> ExtensionBudgetControllerConfig
fn clone(&self) -> ExtensionBudgetControllerConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl<'de> Deserialize<'de> for ExtensionBudgetControllerConfig
impl<'de> Deserialize<'de> for ExtensionBudgetControllerConfig
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>,
Source§impl PartialEq for ExtensionBudgetControllerConfig
impl PartialEq for ExtensionBudgetControllerConfig
Source§fn eq(&self, other: &ExtensionBudgetControllerConfig) -> bool
fn eq(&self, other: &ExtensionBudgetControllerConfig) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for ExtensionBudgetControllerConfig
Auto Trait Implementations§
impl Freeze for ExtensionBudgetControllerConfig
impl RefUnwindSafe for ExtensionBudgetControllerConfig
impl Send for ExtensionBudgetControllerConfig
impl Sync for ExtensionBudgetControllerConfig
impl Unpin for ExtensionBudgetControllerConfig
impl UnsafeUnpin for ExtensionBudgetControllerConfig
impl UnwindSafe for ExtensionBudgetControllerConfig
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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: NoopSpan) -> Self
fn instrument(self, _span: NoopSpan) -> Self
Source§fn in_current_span(self) -> Self
fn in_current_span(self) -> Self
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<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 moreSource§impl<T> ModelDump for Twhere
T: Serialize,
impl<T> ModelDump for Twhere
T: Serialize,
Source§fn model_dump(&self, options: DumpOptions) -> Result<Value, Error>
fn model_dump(&self, options: DumpOptions) -> Result<Value, Error>
Source§fn model_dump_json(&self) -> Result<String, Error>
fn model_dump_json(&self) -> Result<String, Error>
Source§fn model_dump_json_pretty(&self) -> Result<String, Error>
fn model_dump_json_pretty(&self) -> Result<String, Error>
Source§fn model_dump_json_with_options(
&self,
options: DumpOptions,
) -> Result<String, Error>
fn model_dump_json_with_options( &self, options: DumpOptions, ) -> Result<String, Error>
Source§impl<T> ModelValidate for Twhere
T: DeserializeOwned,
impl<T> ModelValidate for Twhere
T: DeserializeOwned,
Source§fn model_validate(
input: impl Into<ValidateInput>,
options: ValidateOptions,
) -> Result<T, ValidationError>
fn model_validate( input: impl Into<ValidateInput>, options: ValidateOptions, ) -> Result<T, ValidationError>
Source§fn model_validate_json(json: &str) -> Result<Self, ValidationError>
fn model_validate_json(json: &str) -> Result<Self, ValidationError>
Source§fn model_validate_dict(
dict: HashMap<String, Value>,
) -> Result<Self, ValidationError>
fn model_validate_dict( dict: HashMap<String, Value>, ) -> Result<Self, ValidationError>
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
ReadEndian::read_from_little_endian().