gemini_memory_rs/reconcile/mod.rs
1//! Turning a conversation's evidence into durable memory.
2//!
3//! Reconciliation runs after the conversation, where it can afford to be
4//! careful. A sealed ledger is consolidated into a handful of proposals, each
5//! proposal is resolved against the records that could plausibly be about the
6//! same thing, and the whole session commits as one transaction.
7//!
8//! The division of labour is deliberate: a model may generate proposals, but
9//! only [`resolver`] decides what a proposal means, and only [`commit`] writes
10//! anything.
11
12pub mod commit;
13pub mod consolidate;
14pub mod promotion;
15pub mod proposal;
16pub mod resolver;
17
18pub use commit::{MemoryCommitter, ReconciliationReport, commit_promotions};
19pub use consolidate::{ConsolidationOutput, consolidate};
20pub use promotion::{
21 PromotionOutcome, PromotionShortfall, STAGING_RETENTION_DAYS, evaluate, sweep,
22};
23pub use proposal::{MemorySelector, ProposedMemory, ResolutionKind, ResolvedMutation};
24pub use resolver::{Resolver, proposal_from};