pub struct ExecutionPlanV1 {Show 24 fields
pub schema_version: u32,
pub plan_id: PlanId,
pub task_id: TaskId,
pub context_budget_tokens: u64,
pub context_budget_policy: Option<ContextBudgetPolicyV1>,
pub context_strategy: ContextStrategy,
pub knowledge_refs: Vec<String>,
pub capability_ids: Vec<CapabilityId>,
pub model: String,
pub provider: String,
pub reasoning_allocation_milli: u16,
pub max_retries: u32,
pub fallback_refs: Vec<String>,
pub stop_condition: StopCondition,
pub expected_cost_micros: u64,
pub expected_quality_milli: u16,
pub expected_latency_ms: u64,
pub estimates: Option<ExecutionPlanEstimatesV1>,
pub policy_decision_ref: Option<String>,
pub scheduler_decision_ref: Option<String>,
pub executor_agent_id: Option<AgentId>,
pub context_plan_id: Option<ContextPlanId>,
pub capability_bindings: Vec<CapabilityBindingV1>,
pub extensions: ExtensionsV1,
}Expand description
V1 execution plan produced from a task envelope.
Fields§
§schema_version: u32§plan_id: PlanId§task_id: TaskId§context_budget_tokens: u64§context_budget_policy: Option<ContextBudgetPolicyV1>Absent retains legacy scalar semantics; explicit no-limit uses scalar zero.
context_strategy: ContextStrategy§knowledge_refs: Vec<String>§capability_ids: Vec<CapabilityId>§model: String§provider: String§reasoning_allocation_milli: u16§max_retries: u32§fallback_refs: Vec<String>§stop_condition: StopCondition§expected_cost_micros: u64§expected_quality_milli: u16§expected_latency_ms: u64§estimates: Option<ExecutionPlanEstimatesV1>Unknown entries require zero only in the legacy compatibility scalars.
policy_decision_ref: Option<String>§scheduler_decision_ref: Option<String>§executor_agent_id: Option<AgentId>§context_plan_id: Option<ContextPlanId>§capability_bindings: Vec<CapabilityBindingV1>§extensions: ExtensionsV1Unknown additive V1 fields retained for lossless forwarding.
Implementations§
Source§impl ExecutionPlanV1
impl ExecutionPlanV1
Sourcepub fn context_token_limit(&self) -> Option<u64>
pub fn context_token_limit(&self) -> Option<u64>
Resolve the token policy after validating the plan’s dual projections.
Sourcepub fn validate(&self) -> Result<(), ValidationError>
pub fn validate(&self) -> Result<(), ValidationError>
Validate invariants that also apply to values constructed in Rust.
Trait Implementations§
Source§impl Clone for ExecutionPlanV1
impl Clone for ExecutionPlanV1
Source§impl Debug for ExecutionPlanV1
impl Debug for ExecutionPlanV1
Source§impl<'de> Deserialize<'de> for ExecutionPlanV1
impl<'de> Deserialize<'de> for ExecutionPlanV1
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 Eq for ExecutionPlanV1
Source§impl PartialEq for ExecutionPlanV1
impl PartialEq for ExecutionPlanV1
Source§impl Serialize for ExecutionPlanV1
impl Serialize for ExecutionPlanV1
impl StructuralPartialEq for ExecutionPlanV1
Auto Trait Implementations§
impl Forget for ExecutionPlanV1
impl Freeze for ExecutionPlanV1
impl Move for ExecutionPlanV1
impl RefUnwindSafe for ExecutionPlanV1
impl Send for ExecutionPlanV1
impl Sync for ExecutionPlanV1
impl Unpin for ExecutionPlanV1
impl UnsafeUnpin for ExecutionPlanV1
impl UnwindSafe for ExecutionPlanV1
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