Expand description
Persistence Layer - Storage Abstractions
This module defines the core storage traits for the Enact execution engine.
The kernel interacts only with these traits; concrete implementations live
in the enact-persistence crate.
§Store Roles
| Store | Role | Mutable? | Authoritative? |
|---|---|---|---|
| EventStore | Source of truth | Append-only | Yes |
| StateStore | Cache/snapshot | Yes | No |
| VectorStore | Semantic recall | Yes | No |
§Key Invariants
- Kernel NEVER imports concrete implementations
- All stores implement
StorageBackendfor mode validation - EventStore is append-only and authoritative
- StateStore/VectorStore are non-authoritative caches
@see docs/TECHNICAL/14-PERSISTENCE-LAYER.md
Modules§
- guarantees
- Store guarantees - documented contracts for each store type
Structs§
- Collection
Info - Information about a collection
- Cost
Info - Cost information for billing
- Execution
Snapshot - Execution state snapshot
- Execution
Stats - Execution statistics for a message
- InMemory
Message Store - In-memory implementation of MessageStore
- Message
- A message in a thread (AI SDK compatible)
- Message
Metadata - Message metadata (AI SDK compatible)
- Stored
Event - A stored event with metadata
- Thread
- A conversation thread containing messages
- Token
Usage - Token usage for billing and analytics
- Vector
Document - A document with embedding for vector storage
- Vector
Filter - Filter for vector search
- Vector
Search Result - Search result with similarity score
Enums§
- Distance
Metric - Distance metric for similarity calculation
- Execution
Event Data - Event data that can be stored
- Finish
Reason - Why the response finished
- Message
Part - Message part for rich content (AI SDK compatible)
- Message
Role - Message role (AI SDK compatible)
Traits§
- Event
Store - EventStore trait - append-only event log
- Message
Store - MessageStore trait - thread/message persistence
- State
Store - StateStore trait - mutable snapshot cache
- State
Store Json Ext - Extension trait for JSON operations on StateStore
- Storage
Backend - Base trait for all storage backends
- Vector
Store - VectorStore trait - semantic memory