pub struct Envelope {
pub scopes: Vec<String>,
pub network: NetworkPolicy,
pub filesystem: Vec<FilesystemRule>,
pub subprocess: Vec<SubprocessRule>,
pub safety: Safety,
pub sensitive_invocations: Vec<SensitivePredicate>,
pub data_classification: DataClassification,
}Expand description
Executable permission envelope declared by a tool.
Fields§
§scopes: Vec<String>Authz scopes consumed by this tool. Empty means no named scope is required.
network: NetworkPolicyNetwork egress policy. Defaults to deny all egress.
filesystem: Vec<FilesystemRule>Filesystem access rules. Empty denies filesystem access.
subprocess: Vec<SubprocessRule>Subprocess invocation rules. Empty denies subprocess execution.
safety: SafetySafety classification for executable behavior.
sensitive_invocations: Vec<SensitivePredicate>Input predicates that require human approval before invocation.
data_classification: DataClassificationInformational data classification used for redaction/observability.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Envelope
impl<'de> Deserialize<'de> for Envelope
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 Envelope
Auto Trait Implementations§
impl Freeze for Envelope
impl RefUnwindSafe for Envelope
impl Send for Envelope
impl Sync for Envelope
impl Unpin for Envelope
impl UnsafeUnpin for Envelope
impl UnwindSafe for Envelope
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