pub struct PolicyConfig {
pub allowlist: Vec<AllowlistRule>,
pub mcp_overrides: HashMap<String, McpToolOverride>,
}Expand description
Complete policy configuration loaded from policy.toml.
Fields§
§allowlist: Vec<AllowlistRule>Static allowlist rules.
mcp_overrides: HashMap<String, McpToolOverride>MCP tool overrides, keyed by the name the tool is dispatched under.
That is the advertised name, <server>__<tool> sanitized by
crate::mcp_names::advertised_name, because the gate looks this map
up with whatever name the model called. Any other spelling is a key
that matches nothing.
Implementations§
Source§impl PolicyConfig
impl PolicyConfig
Sourcepub fn from_toml(content: &str) -> Result<Self, String>
pub fn from_toml(content: &str) -> Result<Self, String>
Parse a policy config from TOML string.
Sourcepub fn check_allowlist(
&self,
tool_name: &str,
target: Option<&str>,
taint: TaintLevel,
) -> Option<usize>
pub fn check_allowlist( &self, tool_name: &str, target: Option<&str>, taint: TaintLevel, ) -> Option<usize>
Check whether any allowlist rule matches the given invocation. Returns the index of the matching rule, if any.
Trait Implementations§
Source§impl Clone for PolicyConfig
impl Clone for PolicyConfig
Source§impl Debug for PolicyConfig
impl Debug for PolicyConfig
Source§impl Default for PolicyConfig
impl Default for PolicyConfig
Source§impl<'de> Deserialize<'de> for PolicyConfig
impl<'de> Deserialize<'de> for PolicyConfig
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
Source§impl PartialEq for PolicyConfig
impl PartialEq for PolicyConfig
Source§impl Serialize for PolicyConfig
impl Serialize for PolicyConfig
impl StructuralPartialEq for PolicyConfig
Auto Trait Implementations§
impl Freeze for PolicyConfig
impl RefUnwindSafe for PolicyConfig
impl Send for PolicyConfig
impl Sync for PolicyConfig
impl Unpin for PolicyConfig
impl UnsafeUnpin for PolicyConfig
impl UnwindSafe for PolicyConfig
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