Stabilize transaction-log purge blast-radius coverage - #2244
Open
kriszyp wants to merge 2 commits into
Open
Conversation
Keep the RocksDB stress volume intact while right-sizing the LMDB control arm, make seed failures explicit, repair the audit cutoff matcher, and prove all five absence probes with a known-present control. Co-Authored-By: GPT-5 Codex <noreply@openai.com>
Capture deleted-record results before the positive control's full scan can alter a first-read cache state, and keep the test comments focused on durable invariants. Co-Authored-By: GPT-5 Codex <noreply@openai.com>
Contributor
There was a problem hiding this comment.
Code Review
This pull request refactors the stale-read blast radius integration test to dynamically scale the test volume based on the storage engine, reducing the workload size for LMDB while maintaining the larger stress volume for RocksDB. It introduces a helper function isPreCutoffInsert to refine audit log filtering, adds assertions to ensure the seeding phase completes before subsequent probes, and implements a positive control check to validate the absence detector. No review comments were provided, so there is no additional feedback.
Contributor
|
Reviewed; no blockers found. |
kriszyp
marked this pull request as ready for review
August 20, 2026 19:54
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Stabilizes QA-782 without weakening its RocksDB stress arm. The apparent lost KEEP/CTRL reads were test-cascade failures: on failing Windows jobs, LMDB seeding timed out before those records existed; completed seeds read correctly on every covered surface, and the installed/locked RocksDB binding is 2.7.1 rather than the older affected release.
insertaudit entryThis is a test defect, not a product data-loss defect. Main failures show the seed phase timing out first, followed by requests for keys that phase never created; a successful main job with completed seeds passes the same ordinary-read checks for both engines.
Evidence
k11999is absentk9000/ctrl0, plus the audit-matcher false failureVerification
npm run buildseven targeted QA-782 runs during development, each 14/14 across RocksDB and LMDB; RocksDB continued to produce 21.182 MiB of
.txnlogdatadeliberate oracle mutant: a known-present
ctrl0was temporarily routed through the deleted-record probe; both engine arms failed in phase 4 (12/14), then the mutation was removed and the suite returned to 14/14npm run lint:requirednpm run format:write(no changes)full integration run reached QA-782 under concurrent suite load, but the aggregate command remained red on unrelated real-Ollama tests
local unit aggregates are not authoritative on this host:
test:unit:maininitializes an installed system database before test path overrides, whiletest:unit:resourcesexposed installed config/state differencesPR-triggered run 32370864136: all six Windows Node 24 shards passed. Shard 1 ran both QA-782 arms successfully; RocksDB produced 37.177 MiB of
.txnlogdata and LMDB seeded in 8.4 seconds. The aggregate workflow's only failure was the adjacent QA-431 lost-increment assertion on uWS shard 3.Repeated run 32370882792: the entire workflow passed, including all six Windows Node 24 shards. Shard 1 again ran both QA-782 arms successfully; RocksDB produced 37.177 MiB and LMDB seeded in 12.2 seconds.
Human reviewer decision
Please confirm the engine-specific volume choice: LMDB uses 600 rows per range while RocksDB retains 6,000. Equal volume would restore parity, but it also restores the Windows timeout that caused the false cascade and does not strengthen the RocksDB-only rotation invariant. This is reversible by changing one constant.
Co-Authored-By: GPT-5 Codex noreply@openai.com
Review-Coverage: authored=codex; ran=gemini; adjudicated=domain; declined=claude,cursor-grok,cursor-composer; rounds=3 @ 7d8c58c
Human-Review-Need: 3 (decisions: lmdb-reduced-volume) @ 7d8c58c