pub struct DenialTracker {
pub consecutive: u32,
pub total: u32,
}Expand description
Tracks classifier denial counts to enforce safety limits.
After MAX_CONSECUTIVE consecutive denials or MAX_TOTAL total
denials, is_over_limit() returns true and the classifier stops
calling the LLM (all subsequent tool calls are denied).
Fields§
§consecutive: u32Number of consecutive denials without an intervening allow.
total: u32Total number of denials ever recorded.
Implementations§
Source§impl DenialTracker
impl DenialTracker
Sourcepub fn record_denial(&mut self)
pub fn record_denial(&mut self)
Record a denial — increments both counters.
Sourcepub fn record_allow(&mut self)
pub fn record_allow(&mut self)
Record an allow — resets the consecutive counter.
Sourcepub fn is_over_limit(&self) -> bool
pub fn is_over_limit(&self) -> bool
Returns true if either limit has been reached.
Trait Implementations§
Source§impl Debug for DenialTracker
impl Debug for DenialTracker
Source§impl Default for DenialTracker
impl Default for DenialTracker
Source§fn default() -> DenialTracker
fn default() -> DenialTracker
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for DenialTracker
impl RefUnwindSafe for DenialTracker
impl Send for DenialTracker
impl Sync for DenialTracker
impl Unpin for DenialTracker
impl UnsafeUnpin for DenialTracker
impl UnwindSafe for DenialTracker
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
Mutably borrows from an owned value. Read more
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
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>
Converts
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>
Converts
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 more