pub struct RiskEvaluator;Expand description
Local Risk Evaluator — a fast, deterministic triage pass that classifies Swarm worker actions by risk level. LOW risk actions auto-approve silently, MODERATE actions log a warning, and HIGH risk actions trigger the Red Modal.
This eliminates the UX bottleneck of prompting the user for every single file read while still enforcing hard safety gates on destructive operations.
Implementations§
Source§impl RiskEvaluator
impl RiskEvaluator
Sourcepub fn classify(tool_name: &str, args_preview: &str) -> RiskLevel
pub fn classify(tool_name: &str, args_preview: &str) -> RiskLevel
Classifies a tool invocation based on its name and arguments. Returns the RiskLevel which determines whether the action auto-approves, warns, or blocks behind the Red Modal.
Sourcepub fn can_auto_approve(level: RiskLevel, yolo_mode: bool) -> bool
pub fn can_auto_approve(level: RiskLevel, yolo_mode: bool) -> bool
Returns true if the action can be auto-approved without user input.
Auto Trait Implementations§
impl Freeze for RiskEvaluator
impl RefUnwindSafe for RiskEvaluator
impl Send for RiskEvaluator
impl Sync for RiskEvaluator
impl Unpin for RiskEvaluator
impl UnsafeUnpin for RiskEvaluator
impl UnwindSafe for RiskEvaluator
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
Source§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
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