Files
codebase-memory-mcp/tests
Andrew Hundt 221049eda1 perf(store): batch replacement node upserts
Replace per-node SQLite upserts during graph-buffer publication with a set-oriented temporary-table batch and deterministic ID remapping. Keep the batch inside the caller-owned replacement transaction so sibling projects remain intact and every failure rolls back the full project replacement.

Finalize all temporary statements, clear connection-scoped staging state before reuse, free node and ID arrays on every success and failure path, and reject invalid temporary IDs before map access. Add transaction rollback coverage and strengthen graph-buffer persistence assertions.

Measured the targeted span at 89 ms for 13,455 nodes in the canonical route-handler self-dogfood scenario. The scenario remained canonically equivalent with cleanup green; synchronous rank refresh remains the dominant end-to-end blocker.

Validation: product build; sanitizer build; source-safety check; store node suite (114 passed); graph-buffer suite (67 passed); pipeline suite (349 passed); focused C source-frontier canonical canaries (2 passed); route-handler canonical self-dogfood.
Signed-off-by: Andrew Hundt <ATHundt@gmail.com>
2026-07-12 17:06:08 -04:00
..
2026-06-03 02:13:30 +02:00