Skip to content

fuzz: add fuzz overlay - #966

Open
citizen-stig wants to merge 3 commits into
thrumdev:masterfrom
citizen-stig:nikolai/fuzz-overlay
Open

citizen-stig wants to merge 3 commits into
thrumdev:masterfrom
citizen-stig:nikolai/fuzz-overlay

Conversation

@citizen-stig

@citizen-stig citizen-stig commented Oct 29, 2026 •

Copy link
Copy Markdown
Contributor

Needs #968

citizen-stig and others added 2 commits October 27, 2026 16:49
- Verify the session witness: each path proof against the previous root,
  witnessed read values against the model, the read/write key sets, and
  that applying the witnessed writes yields the new root.
- Add a Prove call that checks Session::prove against the session's base.
- Derive new keys from existing ones so tries get deep and span pages.
- Fuzz page/leaf cache sizes, upper levels and prepopulation; do not
  preallocate the hash table.
- Add a Reopen call that checks the root and every committed value, and
  keep the temp dir alive for the whole run.
- Check the root against an independent recursive reference, shared with
  proof_verify via a new reference module.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Builds trees of overlays from sessions on the DB or on live overlays, and
commits them directly, as overlays (blocking and non-blocking), or drops
them, against a per-overlay model:

- SessionParams::overlay must accept exactly the complete chain of live,
  uncommitted ancestors, and return Incomplete for a truncated chain or a
  dropped ancestor and NotAncestor for a wrong one.
- Session reads and roots must match the base overlay's model.
- Overlay commits must succeed exactly when the parent was the last
  committed overlay and the DB root matches; direct commits exactly when
  the DB root matches the session's base.
- After every step the DB root and all values must match the committed
  model.

Sessions on a chain whose base the DB has moved past are skipped: nomt
does not reject them and panics while seeking.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@citizen-stig
citizen-stig marked this pull request as ready for review October 29, 2026 09:15
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017wb3qFhAoTArSEcSTGVDCu
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant