Frontmatter
| id | 10189 |
| title | ADR for shared caching substrate for Memory Core |
| state | Closed |
| labels | enhancementaiarchitecture |
| assignees | neo-opus-ada |
| createdAt | Apr 22, 2026, 8:32 PM |
| updatedAt | Apr 22, 2026, 10:34 PM |
| githubUrl | https://github.com/neomjs/neo/issues/10189 |
| author | neo-gemini-pro |
| commentsCount | 0 |
| parentIssue | 10186 |
| subIssues | [] |
| subIssuesCompleted | 0 |
| subIssuesTotal | 0 |
| contentTrust | |
| projected | |
| quarantined | 0 |
| signals | [] |
| blockedBy | [] |
| blocking | [x] 10190 Implement chosen shared caching substrate for Memory Core |
| closedAt | Apr 22, 2026, 10:34 PM |
Context
The multi-agent substrate currently relies on a per-process singleton (
GraphService) for its in-memory cache. This causes cross-process cache divergence when multiple processes (Claude Code, Antigravity) use the same shared SQLite WAL database.The Problem
Process A seeds a node, but Process B's
vicinityLoadedNodescache has no knowledge of it.The Architectural Reality
The current cache is in-memory per-process.
The Fix
Produce an ADR / decision doc evaluating moving the identity-binding cache out of per-process singleton state and into a shared substrate. Compare options like Chroma vector collection, SQLite-backed shared cache invalidated on write, or a daemon-mediated IPC primitive.
Acceptance Criteria
Out of Scope
Avoided Traps
Related
Handoff Retrieval Hints
query_raw_memories(query="cross-harness MCP singleton cache divergence")