templar_proxy_oracle_kernel/proxy/
circuit_breaker.rs

1mod error;
2mod math;
3mod observation;
4mod ring_buffer;
5mod rule;
6mod set;
7
8#[cfg(kani)]
9pub(crate) use set::ProposedPriceAcceptance;
10mod status;
11
12pub use error::{CircuitBreakerError, ErrorCode};
13pub use observation::Observation;
14pub use ring_buffer::{RingBuffer, RingBufferParseError, UncheckedRingBuffer};
15pub use rule::{
16    CircuitBreaker, CircuitBreakerRule, CumulativeChange, MonotonicRun, StepwiseChange,
17    WindowedChangeDelta,
18};
19pub use set::{
20    CircuitBreakerEvent, CircuitBreakerOutcome, CircuitBreakerSet, CircuitBreakerSetConfig,
21    CircuitBreakerSetParseError, CircuitBreakerState, PriceAcceptance, PriceBlockedReason,
22    UncheckedCircuitBreakerSet,
23};
24pub use status::CircuitBreakerStatus;
25
26#[cfg(test)]
27mod tests;