pub struct SessionCandidate {Show 19 fields
pub fingerprint: FactFingerprint,
pub subject: EntityRef,
pub predicate: CanonicalPredicate,
pub value: MemoryValue,
pub canonical_statement: String,
pub kind: MemoryKind,
pub temporal_scope: TemporalScope,
pub evidence: Vec<ObservationEvidence>,
pub distinct_turns: usize,
pub first_seen_turn: TurnId,
pub last_seen_turn: TurnId,
pub confidence: f32,
pub explicitness: Explicitness,
pub proposed_persistence: ProposedPersistence,
pub status: SessionCandidateStatus,
pub mutation_intent: Option<MutationIntent>,
pub search_terms: Vec<String>,
pub sensitivity: SensitivityClass,
pub expected_expiry: Option<DateTime<Utc>>,
}Expand description
A proposed memory accumulating evidence within a session.
Fields§
§fingerprint: FactFingerprintDeduplication key.
subject: EntityRefSubject of the fact.
predicate: CanonicalPredicateCanonical predicate.
value: MemoryValueValue side.
canonical_statement: StringNatural-language rendering.
kind: MemoryKindProposed kind.
temporal_scope: TemporalScopeExpected persistence.
evidence: Vec<ObservationEvidence>Supporting evidence.
distinct_turns: usizeDistinct turns that produced evidence.
first_seen_turn: TurnIdFirst turn the candidate appeared on.
last_seen_turn: TurnIdMost recent turn the candidate appeared on.
confidence: f32Aggregated confidence.
explicitness: ExplicitnessStrongest explicitness across the evidence.
proposed_persistence: ProposedPersistenceRetention policy assigned at admission.
status: SessionCandidateStatusLifecycle state.
mutation_intent: Option<MutationIntent>Explicit command carried by the evidence, if any.
search_terms: Vec<String>Terms this fact may later be searched by, merged across its evidence.
sensitivity: SensitivityClassPrivacy classification, carried from the observation.
Dropping this here would let an explicit health or religious statement reach the corpus with ordinary privacy metadata, silently bypassing every sensitivity-dependent rule downstream.
expected_expiry: Option<DateTime<Utc>>When the fact stops holding, for episodic candidates.
Implementations§
Source§impl SessionCandidate
impl SessionCandidate
Sourcepub fn distinct_days(&self) -> u32
pub fn distinct_days(&self) -> u32
Distinct calendar days the evidence spans.
Sourcepub fn subject_predicate(&self) -> &str
pub fn subject_predicate(&self) -> &str
The subject|predicate window used to find contradictions.
Trait Implementations§
Source§impl Clone for SessionCandidate
impl Clone for SessionCandidate
Source§fn clone(&self) -> SessionCandidate
fn clone(&self) -> SessionCandidate
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SessionCandidate
impl Debug for SessionCandidate
Source§impl<'de> Deserialize<'de> for SessionCandidate
impl<'de> Deserialize<'de> for SessionCandidate
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 SessionCandidate
impl PartialEq for SessionCandidate
Source§impl Serialize for SessionCandidate
impl Serialize for SessionCandidate
impl StructuralPartialEq for SessionCandidate
Auto Trait Implementations§
impl Freeze for SessionCandidate
impl RefUnwindSafe for SessionCandidate
impl Send for SessionCandidate
impl Sync for SessionCandidate
impl Unpin for SessionCandidate
impl UnwindSafe for SessionCandidate
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Layered].