pub struct SemanticNode {
pub fact: String,
pub confidence: f32,
pub source_turn_id: Uuid,
pub topic_cluster: Option<String>,
pub source_episode_id: String,
pub contradiction_ids: Vec<String>,
pub last_referenced_at: u64,
pub reference_count: u32,
pub decay_eligible: bool,
pub tags: Vec<String>,
pub recurrence_count: u32,
pub last_ref_snapshot: u32,
}Expand description
Semantic / factual memory payload.
Fields§
§fact: String§confidence: f32§source_turn_id: Uuid§topic_cluster: Option<String>§source_episode_id: String§contradiction_ids: Vec<String>§last_referenced_at: u64§reference_count: u32How many times this node has been retrieved from the store. Managed by the recall path only — never written by extractors.
decay_eligible: boolOptional tag hints for analytics / persona (ainl-persona); omitted → empty.
recurrence_count: u32How many times this exact fact has recurred across separate extraction events.
Written by graph_extractor when the same fact is observed again.
Do not use reference_count as a substitute: that field tracks retrieval frequency,
not extraction recurrence. They measure different things. graph_extractor (Prompt 2)
must write recurrence_count directly; persona / domain extractors gate on this field only.
last_ref_snapshot: u32reference_count snapshot from the last graph-extractor pass (JSON key _last_ref_snapshot).
Trait Implementations§
Source§impl Clone for SemanticNode
impl Clone for SemanticNode
Source§fn clone(&self) -> SemanticNode
fn clone(&self) -> SemanticNode
Returns a duplicate of the value. Read more
1.0.0 · 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 SemanticNode
impl Debug for SemanticNode
Source§impl<'de> Deserialize<'de> for SemanticNode
impl<'de> Deserialize<'de> for SemanticNode
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 PartialEq for SemanticNode
impl PartialEq for SemanticNode
Source§impl Serialize for SemanticNode
impl Serialize for SemanticNode
impl StructuralPartialEq for SemanticNode
Auto Trait Implementations§
impl Freeze for SemanticNode
impl RefUnwindSafe for SemanticNode
impl Send for SemanticNode
impl Sync for SemanticNode
impl Unpin for SemanticNode
impl UnsafeUnpin for SemanticNode
impl UnwindSafe for SemanticNode
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