pub struct ToolGuardrails { /* private fields */ }Expand description
Tool call guardrails — pure analysis, no side effects.
Implementations§
Source§impl ToolGuardrails
impl ToolGuardrails
pub fn new(config: GuardrailConfig) -> Self
Sourcepub fn observe(
&mut self,
name: &str,
args: &str,
_output: &str,
is_error: bool,
) -> GuardrailDecision
pub fn observe( &mut self, name: &str, args: &str, _output: &str, is_error: bool, ) -> GuardrailDecision
Observe a tool call and return the guardrail decision.
Sourcepub fn is_idempotent(name: &str) -> bool
pub fn is_idempotent(name: &str) -> bool
Check if a tool is idempotent (safe to retry).
Sourcepub fn is_mutating(name: &str) -> bool
pub fn is_mutating(name: &str) -> bool
Check if a tool is mutating (has side effects).
Auto Trait Implementations§
impl Freeze for ToolGuardrails
impl RefUnwindSafe for ToolGuardrails
impl Send for ToolGuardrails
impl Sync for ToolGuardrails
impl Unpin for ToolGuardrails
impl UnsafeUnpin for ToolGuardrails
impl UnwindSafe for ToolGuardrails
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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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