Context
The memory-core shared SQLite WAL database is accessed by up to 20 concurrent Node processes across Claude Desktop, Claude Code, and Antigravity. We need empirical tooling to prove this concurrency and count the PIDs holding the file open.
The Problem
We lack a simple, scriptable way to diagnose cross-harness SQLite file handles.
The Architectural Reality
The SQLite file resides at .neo-ai-data/sqlite/memory-core-graph.sqlite.
The Fix
Add a diagnoseMcpConcurrency.mjs script under ai/scripts/ using lsof or fuser to list all processes holding memory-core-graph.sqlite open (including count, PIDs, and parent harnesses). The script should be read-only and not attempt to kill processes.
Acceptance Criteria
Out of Scope
- Automatically killing or managing the external processes.
Related
Handoff Retrieval Hints
query_raw_memories(query="cross-harness MCP singleton cache divergence")
query_summaries(query="MCP concurrency Claude Code Antigravity")
- Commit range anchor: PR #10185 merged
Context
The memory-core shared SQLite WAL database is accessed by up to 20 concurrent Node processes across Claude Desktop, Claude Code, and Antigravity. We need empirical tooling to prove this concurrency and count the PIDs holding the file open.
The Problem
We lack a simple, scriptable way to diagnose cross-harness SQLite file handles.
The Architectural Reality
The SQLite file resides at
.neo-ai-data/sqlite/memory-core-graph.sqlite.The Fix
Add a
diagnoseMcpConcurrency.mjsscript underai/scripts/usinglsoforfuserto list all processes holdingmemory-core-graph.sqliteopen (including count, PIDs, and parent harnesses). The script should be read-only and not attempt to kill processes.Acceptance Criteria
ai/scripts/diagnoseMcpConcurrency.mjsOut of Scope
Related
Handoff Retrieval Hints
query_raw_memories(query="cross-harness MCP singleton cache divergence")query_summaries(query="MCP concurrency Claude Code Antigravity")