use std::time::Duration;
#[derive(Debug, Clone)]
pub struct OllpConfig {
pub ollp_max_retries: u32,
pub backoff_initial: Duration,
pub backoff_max: Duration,
pub circuit_window: Duration,
pub circuit_capacity: usize,
pub circuit_threshold_pct: u8,
pub circuit_open_duration: Duration,
pub circuit_close_successes: u32,
pub tenant_budget_per_minute: usize,
}
impl Default for OllpConfig {
fn default() -> Self {
Self {
ollp_max_retries: 5,
backoff_initial: Duration::from_millis(10),
backoff_max: Duration::from_secs(5),
circuit_window: Duration::from_secs(60),
circuit_capacity: 256,
circuit_threshold_pct: 50,
circuit_open_duration: Duration::from_secs(30),
circuit_close_successes: 4,
tenant_budget_per_minute: 1000,
}
}
}