pub struct Memory {Show 19 fields
pub id: MemoryId,
pub content: String,
pub namespace: Namespace,
pub domain: Domain,
pub project_id: Option<String>,
pub branch: Option<String>,
pub file_path: Option<String>,
pub status: MemoryStatus,
pub created_at: u64,
pub updated_at: u64,
pub tombstoned_at: Option<DateTime<Utc>>,
pub expires_at: Option<u64>,
pub embedding: Option<Vec<f32>>,
pub tags: Vec<String>,
pub group_id: Option<String>,
pub source: Option<String>,
pub is_summary: bool,
pub source_memory_ids: Option<Vec<MemoryId>>,
pub consolidation_timestamp: Option<u64>,
}Expand description
A captured memory entry.
Fields§
§id: MemoryIdUnique identifier.
content: StringThe memory content.
namespace: NamespaceThe namespace this memory belongs to.
domain: DomainThe domain this memory is associated with.
project_id: Option<String>Optional project identifier (normalized git remote URL).
branch: Option<String>Optional branch name for project-scoped memories.
file_path: Option<String>Optional file path relative to repository root.
status: MemoryStatusCurrent status of the memory.
created_at: u64Creation timestamp (Unix epoch seconds).
updated_at: u64Last update timestamp (Unix epoch seconds).
tombstoned_at: Option<DateTime<Utc>>Tombstone timestamp (UTC) when soft-deleted.
Compatibility is handled in storage adapters, so explicit versioning of the Memory struct is not required at this time.
expires_at: Option<u64>Expiration timestamp (Unix epoch seconds).
Memory is eligible for automatic cleanup after this timestamp.
Set at capture time as created_at + ttl_seconds. Preserved on updates.
None means no expiration (memory lives until manually deleted).
embedding: Option<Vec<f32>>Optional embedding vector.
Optional tags for categorization.
group_id: Option<String>Optional group identifier for group-scoped memories.
When set, this memory belongs to a specific group within an organization. Group members with sufficient permissions can access these memories.
source: Option<String>Optional source reference (file path, URL, etc.).
is_summary: boolWhether this memory is a consolidation summary.
When true, this memory represents a consolidated summary of multiple
related memories. The original memories are preserved and linked via
source_memory_ids.
source_memory_ids: Option<Vec<MemoryId>>IDs of memories that were consolidated into this summary.
Only populated when is_summary is true. These represent the original
memories that were analyzed and combined to create this summary.
consolidation_timestamp: Option<u64>Timestamp when this memory was consolidated (Unix epoch seconds).
Only populated for consolidated memories (both summaries and source memories that have been included in a consolidation).
Trait Implementations§
Source§impl From<&Memory> for ExportableMemory
impl From<&Memory> for ExportableMemory
Source§impl From<&Memory> for StoredMemory
impl From<&Memory> for StoredMemory
Source§impl From<Memory> for ExportableMemory
impl From<Memory> for ExportableMemory
Auto Trait Implementations§
impl Freeze for Memory
impl RefUnwindSafe for Memory
impl Send for Memory
impl Sync for Memory
impl Unpin for Memory
impl UnwindSafe for Memory
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<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].