#[derive(Debug, thiserror::Error)]
pub enum WardenError {
#[error("rate limit invalide: per_minute={0} burst={1} (les deux doivent être > 0)")]
InvalidRateLimit(u32, u32),
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum WardenDecision {
Allow,
Bypass,
DenyIp,
DenyRateLimit,
}