Expand description
The domain data model — the value types the memory layer exchanges
(Link, Recollection, ColumnFilter, Explanation, …), separate from the
service that computes them.
Domain data model: the request/response value types of the memory layer.
These are pure data — the shapes a caller links, recalls, filters on, and
gets back — with no dependency on MemoryService
itself. Keeping them here separates what the memory layer exchanges from
how the service computes it, and gives every adapter (MCP, bindings) one
canonical place to import the contract from.
Structs§
- Bounded
Memory Edges - At most
capedges of one memory point, plus the honest signal that the point carries more — returned by the bounded accessors ofMemoryStore(#1820). - Column
Filter - A structured predicate over a memory’s metadata column, for the fused
vector+
ColumnStorerecallMemoryService::recall_where. Unlike the exact-match filter onMemoryService::recall, this supports ranges and comparisons (e.g.timestamp >= …), so temporal and numeric facets become queryable, not just equal-matchable. - Entity
Profile - Everything the auto-built graph knows about one named entity: the attributes merged onto its hub and the typed edges touching it.
- Entity
Relation - One typed edge leaving an entity, as reported by
MemoryService::entity_profile. - Explanation
- The connected answer to a
whyquestion: the best-matching seed memory plus everything reachable from it within a hop budget. This connected subgraph is the differentiator — it surfaces related memories a purely vector recall is blind to (no textual similarity required). - Fusion
Options - Tuning knobs for
MemoryService::recall_fused. - Link
- A typed link from a freshly remembered fact to an existing memory.
- Listed
Memory - One audited fact, as
list_memoriesreturns it: the caller-facing shape of acrate::storage::RawListedFactafter the service applied its visibility policy (hub filtering, reserved-key stripping). - Memory
Edge - A typed edge in an
Explanationsubgraph. - Memory
Node - A node in an
Explanationsubgraph. - Recollection
- One semantically recalled memory.
- Remembered
Extraction - What
crate::MemoryService::remember_extractedactually did with a passage: the stored fact ids, and how many extracted facts it had to drop. - Unrelate
Outcome - Outcome of
MemoryService::unrelate: idempotent by design, so an absent edge is afound: falseanswer, not an error — a cleanup must be replayable.
Enums§
- Column
Op - Comparison operator for a
ColumnFilterinMemoryService::recall_where.
Functions§
- column_
value_ matches - Whether a STORED value satisfies
opagainst a filter’starget.