From de388907c2d80d3ea16ac8e1b7c0c8a3d1b1bcdf Mon Sep 17 00:00:00 2001 From: Claude Date: Fri, 3 Jul 2026 23:09:56 +0000 Subject: [PATCH] =?UTF-8?q?docs(quartz):=20record=20live-negentropy-index?= =?UTF-8?q?=20A/B=20results=20=E2=80=94=20shipped?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Two relayBench runs (50k corpus, both geode variants side by side, then order-reversed): identical-set reconcile 56/57 ms with the index vs 110/130 ms without in both orders (~2.2x, the post-write NEG-OPEN the old cache always missed); ingest and first-ever reconcile deltas flip with relay order, i.e. run-order noise — no regression. Also records the run-order-bias protocol note for future A/Bs. Co-Authored-By: Claude Fable 5 Claude-Session: https://claude.ai/code/session_01TtDNpayEYvJH7QuPswND3A --- ...26-07-03-incremental-negentropy-storage.md | 25 +++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/quartz/plans/2026-07-03-incremental-negentropy-storage.md b/quartz/plans/2026-07-03-incremental-negentropy-storage.md index 6121a3c7c6..9e4a2ef643 100644 --- a/quartz/plans/2026-07-03-incremental-negentropy-storage.md +++ b/quartz/plans/2026-07-03-incremental-negentropy-storage.md @@ -1,7 +1,28 @@ # Incremental live negentropy storage -**Status: planned** — backlog item 3 of the relay performance campaign -(PR #3466 follow-up). +**Status: shipped** — backlog item 3 of the relay performance campaign +(PR #3466 follow-up). All four milestones landed on this branch. + +**Measured results.** Micro (LiveNegentropyBenchmark, 50k events, +in-container): scan+seal cold path 80–100 ms per open; index post-write +open 9–16 ms (~5–10×); first open ~70 ms (pays the one-time rebuild). +relayBench A/B (both variants in ONE run — geode with index vs geode +with `[negentropy].live_index = false` — 50k corpus, then repeated with +the relay order reversed to control for run-order bias): + + - **identical-set reconcile: 56/57 ms with the index vs 110/130 ms + without, in both orders — the real ~2.2× win.** This phase runs + after the delta transfer wrote events, so the old single-slot cache + always misses — the exact gap the index closes. + - initial (first-ever) reconcile and ingest throughput: whichever + relay ran first won/lost respectively in BOTH runs — pure run-order + effect, i.e. no ingest regression and (as designed) no win on the + very first open, which pays the lazy rebuild. + +Measurement note for future A/Bs: putting both variants in one +relayBench run controls container noise better than alternating runs, +but per-phase run-order bias is real (~100 ms on initial reconcile, +~10% on ingest) — always repeat with the order reversed. ## Problem