Expand description
§PlanSpec Core
Core types and validation for the PlanSpec declarative work orchestration system.
§Overview
This crate provides the foundational types for PlanSpec resources:
Goal- High-level objectives with acceptance criteriaPlan- DAGs of work with embedded nodes and edgesCapability- Reusable abilities that agents can provideBinding- Resolution of capabilities to provider targetsExecution- Intent to run a Plan with specific bindings
§Example
use planspec_core::{Goal, GoalSpec, ObjectMeta};
let goal = Goal {
api_version: "planspec.io/v1alpha1".to_string(),
kind: "Goal".to_string(),
metadata: ObjectMeta::new("my-goal", "default"),
spec: GoalSpec {
description: "Implement feature X".to_string(),
..Default::default()
},
status: None,
};Re-exports§
pub use types::api::AppliedResource;pub use types::api::ApplyAction;pub use types::api::ApplyError;pub use types::api::ApplyResult;pub use types::api::ListMeta;pub use types::api::ResourceList;pub use types::api::Status;pub use types::api::StatusCause;pub use types::api::StatusDetails;pub use types::api::StatusReason;pub use types::api::StatusResult;pub use types::api::WatchEvent;pub use types::api::WatchEventType;pub use types::binding::Binding;pub use types::binding::BindingPhase;pub use types::binding::BindingRule;pub use types::binding::BindingSelector;pub use types::binding::BindingSpec;pub use types::binding::BindingStatus;pub use types::binding::BindingTarget;pub use types::capability::Capability;pub use types::capability::CapabilityInput;pub use types::capability::CapabilityOutput;pub use types::capability::CapabilityParamType;pub use types::capability::CapabilityPhase;pub use types::capability::CapabilityRequirement;pub use types::capability::CapabilitySpec;pub use types::capability::CapabilityStatus;pub use types::context::ContextFormat;pub use types::context::ContextItem;pub use types::execution::Artifact;pub use types::execution::Execution;pub use types::execution::ExecutionPhase;pub use types::execution::ExecutionSpec;pub use types::execution::ExecutionStatus;pub use types::execution::NodePhase;pub use types::execution::NodeStatus;pub use types::gate::Gate;pub use types::gate::GatePhase;pub use types::gate::GateSpec;pub use types::gate::GateStatus;pub use types::gate::GateType;pub use types::gate::Resolution;pub use types::gate::ResolutionOutcome;pub use types::gate::ReviewAction;pub use types::gate::ReviewActionType;pub use types::gate::TargetRef;pub use types::goal::AcceptanceCriterion;pub use types::goal::Goal;pub use types::goal::GoalPhase;pub use types::goal::GoalSpec;pub use types::goal::GoalStatus;pub use types::goal::LabelSelector;pub use types::meta::Condition;pub use types::meta::ConditionStatus;pub use types::meta::ObjectMeta;pub use types::meta::ObjectReference;pub use types::meta::OwnerReference;pub use types::plan::AcceptanceCriteria;pub use types::plan::Edge;pub use types::plan::EdgeType;pub use types::plan::EstimatedEffort;pub use types::plan::ExpectedResponse;pub use types::plan::Graph;pub use types::plan::GraphError;pub use types::plan::Node;pub use types::plan::NodeKind;pub use types::plan::Plan;pub use types::plan::PlanPhase;pub use types::plan::PlanSpec;pub use types::plan::PlanStatus;pub use validate::ValidationError;pub use validate::Validator;
Modules§
Enums§
- Resource
- Resource is an enum that can hold any PlanSpec resource type.
Constants§
- API_
VERSION - The API version for all PlanSpec resources