<!-- Full-page Markdown export (rendered HTML → GFM). Source: https://neotoma.io/memory-guarantees Generated: 2026-05-04T09:52:30.007Z --> # Memory Guarantees Neotoma provides a set of memory guarantees: properties that determine whether an agent memory system is reliable under production load. Each addresses a specific failure mode; together they form the invariant stack that Neotoma enforces. Vendors Representative providers for each memory approach Platform Claude, ChatGPT, Gemini, Copilot Retrieval / RAG Mem0, Zep, LangChain Memory Files Markdown files, JSON stores, CRDT docs Database SQLite, Postgres, MySQL Deterministic Neotoma Deterministic state evolution Given the same set of observations, the system always produces the same entity state regardless of when or in what order they are processed. This eliminates ordering bugs and makes state transitions predictable and testable. Plat. ✗ RAG ✗ Files ✗ DB ✗ Det. ✓ Versioned history Every change to an entity creates a new version rather than overwriting the previous one. Earlier states are preserved and accessible, so you can review what an entity looked like at any point in time. Plat. ✗ RAG ✗ Files ⚠ DB ✗ Det. ✓ Replayable timeline The full sequence of observations and state changes can be replayed from the beginning to reconstruct any historical state. This enables debugging, auditing, and verifying that the current state is correct. Plat. ✗ RAG ✗ Files ✗ DB ✗ Det. ✓ Auditable change log Every modification records who made it, when, and from what source. This provides a complete audit trail that can be reviewed to understand how and why the current state came to be. Plat. ✗ RAG ✗ Files ⚠ DB ✗ Det. ✓ Show all 15 guarantees | Property | Deterministic | Platform | Retrieval / RAG | Files | Database | | --- | --- | --- | --- | --- | --- | | Vendors | Neotoma | Claude, ChatGPT, Gemini, Copilot | Mem0, Zep, LangChain Memory | Markdown files, JSON stores, CRDT docs | SQLite, Postgres, MySQL | | Deterministic state evolution | ✓ | ✗ | ✗ | ✗ | ✗ | | Versioned history | ✓ | ✗ | ✗ | ⚠ | ✗ | | Replayable timeline | ✓ | ✗ | ✗ | ✗ | ✗ | | Auditable change log | ✓ | ✗ | ✗ | ⚠ | ✗ | | Schema constraints | ✓ | ✗ | ✗ | ✗ | ⚠ | | Silent mutation risk | ✓ | ⚠ | ⚠ | ⚠ | ⚠ | | Conflicting facts risk | ✓ | ⚠ | ⚠ | ⚠ | ⚠ | | False closure risk | ✓ | ⚠ | ⚠ | ⚠ | ⚠ | | Reproducible state reconstruction | ✓ | ✗ | ✗ | ✗ | ✗ | | Human inspectability (diffs/lineage) | ✓ | ⚠ | ⚠ | ⚠ | ⚠ | | Zero-setup onboarding | ✗ | ✓ | ✗ | ✗ | ✗ | | Semantic similarity search | ✓ | ✗ | ✓ | ✗ | ✗ | | Direct human editability | ✗ | ✗ | ✗ | ✓ | ✗ | | Privacy-first local storage | ✓ | ✗ | ✗ | ✓ | ✓ | | Full data export and portability | ✓ | ✗ | ⚠ | ✓ | ✓ | Scroll right On this page - [Deterministic state evolution](/deterministic-state-evolution) - [Versioned history](/versioned-history) - [Replayable timeline](/replayable-timeline) - [Auditable change log](/auditable-change-log) - [Schema constraints](/schema-constraints) - [Silent mutation risk](/silent-mutation-risk) - [Conflicting facts risk](/conflicting-facts-risk) - [False closure risk](/false-closure-risk) - [Reproducible state reconstruction](/reproducible-state-reconstruction) - [Human inspectability](/human-inspectability) - [Zero-setup onboarding](/zero-setup-onboarding) - [Semantic similarity search](/semantic-similarity-search) - [Direct human editability](/direct-human-editability) [ Deterministic state evolution Same observations always produce the same entity state. ](/deterministic-state-evolution)[ Versioned history Every change creates a new version; earlier snapshots remain queryable. ](/versioned-history)[ Replayable timeline Full observation sequence can be replayed to reconstruct state at any timestamp. ](/replayable-timeline)[ Auditable change log Every modification records who, when, and from which source. ](/auditable-change-log)[ Schema constraints Entities conform to defined types; invalid writes fail at store time. ](/schema-constraints)[ Silent mutation risk State cannot change without an explicit, inspectable trail. ](/silent-mutation-risk)[ Conflicting facts risk Contradictory statements are resolved deterministically, not silently. ](/conflicting-facts-risk)[ False closure risk Stale context is distinguished from current resolved state. ](/false-closure-risk)[ Reproducible state reconstruction Complete state can be rebuilt from raw observations alone. ](/reproducible-state-reconstruction)[ Human inspectability Diff versions, inspect lineage, trace each fact to its source. ](/human-inspectability)[ Zero-setup onboarding Memory works from the first message with no configuration. ](/zero-setup-onboarding)[ Semantic similarity search Find relevant context by meaning over structured entity snapshots. ](/semantic-similarity-search)[ Direct human editability Modify memory in standard editors; plain-text accessibility trade-offs. ](/direct-human-editability)