pub struct ToolRule {
pub pattern: String,
pub policy: ToolPolicy,
pub risk: Option<RiskTier>,
pub bypass_builtin_tier_floor: FloorWaiver,
}Fields§
§pattern: String§policy: ToolPolicy§risk: Option<RiskTier>Intrinsic risk tier of this tool (v3c). Resolved most-restrictive-wins
across every matching rule (see resolve_tool_risk); a tier above
Write turns policy: allow into a pre-execution approval (#1600).
deny still wins outright.
bypass_builtin_tier_floor: FloorWaiver#1786: opt this one rule out of the built-in tier floor (acting
browser tools ask even under a riskless allow). Default off; it never
lowers a declared risk: — that field only ever raises. Honored only
on an exact-name rule; on a glob it is ignored (perm list-tools and
doctor say so). The runtime logs every call where it waives a floor.
#1814: may also name a tier (“waive up to this tier”); on bash only
that form counts — see crate::hitl::floor_waiver.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for ToolRule
impl<'de> Deserialize<'de> for ToolRule
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl StructuralPartialEq for ToolRule
Auto Trait Implementations§
impl Freeze for ToolRule
impl RefUnwindSafe for ToolRule
impl Send for ToolRule
impl Sync for ToolRule
impl Unpin for ToolRule
impl UnsafeUnpin for ToolRule
impl UnwindSafe for ToolRule
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