pub struct EffectIntentV1 {Show 16 fields
pub schema_version: String,
pub effect_intent_id: EffectIntentId,
pub effect_class: EffectClassV1,
pub target_surface: String,
pub intended_outcome: String,
pub initiating_artifact_refs: Vec<String>,
pub required_capability_class: String,
pub allowed_scope: String,
pub blast_radius_ceiling: BlastRadiusCeilingV1,
pub reversibility_class: ReversibilityClassV1,
pub idempotency_key: String,
pub execution_window_id: EffectWindowId,
pub observability_obligation_refs: Vec<String>,
pub approval_refs: Vec<String>,
pub run_mode: RunModeV1,
pub publication_status: PublicationStatusV1,
}Expand description
Declaration of an intended effect including its class, target surface, blast radius, and approval requirements.
This is the entry point of the effect lifecycle. Live-mode intents require non-empty approval refs before they can proceed to preflight.
Fields§
§schema_version: String§effect_intent_id: EffectIntentId§effect_class: EffectClassV1§target_surface: String§intended_outcome: String§initiating_artifact_refs: Vec<String>§required_capability_class: String§allowed_scope: String§blast_radius_ceiling: BlastRadiusCeilingV1§reversibility_class: ReversibilityClassV1§idempotency_key: String§execution_window_id: EffectWindowId§observability_obligation_refs: Vec<String>§approval_refs: Vec<String>§run_mode: RunModeV1§publication_status: PublicationStatusV1Implementations§
Source§impl EffectIntentV1
impl EffectIntentV1
pub const SCHEMA_VERSION: &'static str = "EffectIntentV1"
Sourcepub fn builder(
effect_intent_id: EffectIntentId,
effect_class: EffectClassV1,
target_surface: impl Into<String>,
intended_outcome: impl Into<String>,
initiating_artifact_refs: Vec<String>,
required_capability_class: impl Into<String>,
allowed_scope: impl Into<String>,
blast_radius_ceiling: BlastRadiusCeilingV1,
reversibility_class: ReversibilityClassV1,
idempotency_key: impl Into<String>,
execution_window_id: EffectWindowId,
observability_obligation_refs: Vec<String>,
approval_refs: Vec<String>,
run_mode: RunModeV1,
publication_status: PublicationStatusV1,
) -> EffectIntentV1Builder
pub fn builder( effect_intent_id: EffectIntentId, effect_class: EffectClassV1, target_surface: impl Into<String>, intended_outcome: impl Into<String>, initiating_artifact_refs: Vec<String>, required_capability_class: impl Into<String>, allowed_scope: impl Into<String>, blast_radius_ceiling: BlastRadiusCeilingV1, reversibility_class: ReversibilityClassV1, idempotency_key: impl Into<String>, execution_window_id: EffectWindowId, observability_obligation_refs: Vec<String>, approval_refs: Vec<String>, run_mode: RunModeV1, publication_status: PublicationStatusV1, ) -> EffectIntentV1Builder
Returns a builder for a validated effect intent artifact.
Sourcepub fn validate(&self) -> EffectValidationResult
pub fn validate(&self) -> EffectValidationResult
Validates the owner-side invariants for an effect intent.
Trait Implementations§
Source§impl Clone for EffectIntentV1
impl Clone for EffectIntentV1
Source§fn clone(&self) -> EffectIntentV1
fn clone(&self) -> EffectIntentV1
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for EffectIntentV1
impl Debug for EffectIntentV1
Source§impl<'de> Deserialize<'de> for EffectIntentV1
impl<'de> Deserialize<'de> for EffectIntentV1
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 JsonSchema for EffectIntentV1
impl JsonSchema for EffectIntentV1
Source§fn schema_name() -> String
fn schema_name() -> String
The name of the generated JSON Schema. Read more
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn is_referenceable() -> bool
fn is_referenceable() -> bool
Whether JSON Schemas generated for this type should be re-used where possible using the
$ref keyword. Read moreSource§impl PartialEq for EffectIntentV1
impl PartialEq for EffectIntentV1
Source§fn eq(&self, other: &EffectIntentV1) -> bool
fn eq(&self, other: &EffectIntentV1) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for EffectIntentV1
impl Serialize for EffectIntentV1
impl StructuralPartialEq for EffectIntentV1
Auto Trait Implementations§
impl Freeze for EffectIntentV1
impl RefUnwindSafe for EffectIntentV1
impl Send for EffectIntentV1
impl Sync for EffectIntentV1
impl Unpin for EffectIntentV1
impl UnsafeUnpin for EffectIntentV1
impl UnwindSafe for EffectIntentV1
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