pub enum IsolationFallback {
Deny,
AllowIfPackageAndPolicyApprove {
accepted_classes: Vec<IsolationClass>,
accepted_capability_downgrades: Vec<IsolationCapability>,
accepted_trust_downgrades: Vec<IsolationTrustField>,
required_policy_refs: Vec<PolicyRef>,
},
TestOnlyHostProcess,
}Expand description
Enumerates the finite isolation fallback cases. Serialized names are part of the SDK contract; update fixtures when variants change.
Variants§
Deny
Use this variant when the contract needs to represent deny; selecting it has no side effect by itself.
AllowIfPackageAndPolicyApprove
Use this variant when the contract needs to represent allow if package and policy approve; selecting it has no side effect by itself.
Fields
accepted_classes: Vec<IsolationClass>Classification selectors for accepted classes. Policy and projection paths use them for finite routing decisions.
accepted_capability_downgrades: Vec<IsolationCapability>Isolation capabilities the package is willing to downgrade when the ideal environment is unavailable. Policy resolution must still approve these downgrades before an adapter is selected.
accepted_trust_downgrades: Vec<IsolationTrustField>Isolation trust fields the package is willing to relax when the ideal environment is unavailable. Policy resolution must still approve these downgrades before an adapter is selected.
TestOnlyHostProcess
Use this variant when the contract needs to represent test only host process; selecting it has no side effect by itself.
Implementations§
Source§impl IsolationFallback
impl IsolationFallback
Sourcepub fn required_policy_refs(&self) -> Vec<PolicyRef>
pub fn required_policy_refs(&self) -> Vec<PolicyRef>
Returns required policy refs for callers that need to inspect the contract state. This is data-only and does not perform I/O, call host ports, append journals, publish events, or start processes.
Trait Implementations§
Source§impl Clone for IsolationFallback
impl Clone for IsolationFallback
Source§fn clone(&self) -> IsolationFallback
fn clone(&self) -> IsolationFallback
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for IsolationFallback
impl Debug for IsolationFallback
Source§impl<'de> Deserialize<'de> for IsolationFallback
impl<'de> Deserialize<'de> for IsolationFallback
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>,
impl Eq for IsolationFallback
Source§impl PartialEq for IsolationFallback
impl PartialEq for IsolationFallback
Source§fn eq(&self, other: &IsolationFallback) -> bool
fn eq(&self, other: &IsolationFallback) -> bool
self and other values to be equal, and is used by ==.