1.5 KiB
| id | date | status | supersedes | superseded-by | affected-paths | affected-components | migration_confidence | migration_source |
|---|---|---|---|---|---|---|---|---|
| 0008 | 2026-06-03 | Accepted | medium | docs/memory-system/03-architecture-decisions.md### ADR-008 — Markdown-as-truth; sync the vault, not the indexes |
0008 — Markdown-as-truth; sync the vault, not the indexes
Context
Must be accessible on a VPS / multiple machines but run local-fast (Goal 4).
Decision
Sync the markdown vault to the VPS via git or Syncthing (choice deferred
to build time). Graphs/indexes (Milvus Lite, Graphify graphify-out/) are rebuilt per
machine and never synced.
- Rationale: Markdown is plain text — git/Syncthing sync it trivially; lazy (hourly or continuous-async) is enough. Indexes are disposable caches; syncing binary DBs invites conflicts for no gain. Local reads stay fast; ownership and portability stay with the user.
Consequences
Only the markdown vault is synced across machines (via git or Syncthing); derived indexes like Milvus Lite and Graphify's graphify-out/ are rebuilt per machine and never synced, keeping local reads fast and avoiding binary-DB sync conflicts. This preserves user ownership and portability of the source data while requiring each machine to rebuild its own indexes.
Alternatives rejected
OpenBrain / Mem0 hosted DBs — always-remote, adds per-query latency and monthly cost, conflicts with local-fast; ownership weaker (Mem0 especially). Only worth it for real-time cross-tool memory, which the user called overkill.