pub enum AinlNodeType {
Episode {
episodic: EpisodicNode,
},
Semantic {
semantic: SemanticNode,
},
Procedural {
procedural: ProceduralNode,
},
Persona {
persona: PersonaNode,
},
RuntimeState {
runtime_state: RuntimeStateNode,
},
Trajectory {
trajectory: TrajectoryNode,
},
Failure {
failure: FailureNode,
},
Mission {
mission: Mission,
},
Feature {
feature: Feature,
},
Assertion {
assertion: Assertion,
},
Handoff {
handoff: Handoff,
},
Extension {
kind: String,
schema_version: u32,
payload: Value,
},
}Expand description
Core AINL node types - the vocabulary of agent memory.
Variants§
Episode
Episodic memory: what happened during an agent turn
Fields
episodic: EpisodicNodeSemantic
Semantic memory: facts learned, with confidence
Fields
semantic: SemanticNodeProcedural
Procedural memory: reusable compiled workflow patterns
Fields
procedural: ProceduralNodePersona
Persona memory: traits learned over time
Fields
persona: PersonaNodeRuntimeState
Runtime session state (turn counters, extraction cadence, persona cache snapshot).
Fields
runtime_state: RuntimeStateNodeTrajectory
Step-level execution trace linked to an episode (self-learning substrate).
Fields
trajectory: TrajectoryNodeFailure
Failure / guard outcome stored for recall (Phase 2 failure learning).
Fields
failure: FailureNodeMission
Mission control-plane record (graph-native mission substrate).
Feature
Feature/work item within a mission DAG.
Assertion
Validation assertion tied to a milestone.
Handoff
Structured worker handoff.
Extension
Domain-specific extension node. Promote to a concrete kind when a plugin earns it.
Implementations§
Source§impl AinlNodeType
impl AinlNodeType
Sourcepub fn extension_from_typed<T: Serialize>(
kind: impl Into<String>,
schema_version: u32,
value: &T,
) -> Result<Self, Error>
pub fn extension_from_typed<T: Serialize>( kind: impl Into<String>, schema_version: u32, value: &T, ) -> Result<Self, Error>
Build an Self::Extension node from a typed, serializable value.
Sourcepub fn extension_downcast<T: for<'de> Deserialize<'de>>(&self) -> Option<T>
pub fn extension_downcast<T: for<'de> Deserialize<'de>>(&self) -> Option<T>
Downcast an extension payload back to T when the node is Self::Extension.
Trait Implementations§
Source§impl Clone for AinlNodeType
impl Clone for AinlNodeType
Source§fn clone(&self) -> AinlNodeType
fn clone(&self) -> AinlNodeType
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 AinlNodeType
impl Debug for AinlNodeType
Source§impl<'de> Deserialize<'de> for AinlNodeType
impl<'de> Deserialize<'de> for AinlNodeType
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>,
Source§impl PartialEq for AinlNodeType
impl PartialEq for AinlNodeType
Source§fn eq(&self, other: &AinlNodeType) -> bool
fn eq(&self, other: &AinlNodeType) -> bool
self and other values to be equal, and is used by ==.