Skip to content

[P2][dst] Expand DST workload fuzz for binary keys and sortedness asserts #29

Description

@cevheri

Summary

DST workload uses 16 short ASCII keys and "vN" values. No fuzz of binary keys, empty values, large payloads, or lens-style composite keys with 0x00 separators. Recovered sortedness is never asserted post-recovery.

Audit ID: Section 3 Medium — Wave 2

Root cause

src/sim/workload.ts ~L88 — narrow alphabet.

Fix

Add seeded round-trip fuzz profile:

  1. Generate random Uint8Array keys/values, lengths 0..N (cap N for CI speed).
  2. Random ops: set/delete/getRange in transactions.
  3. Crash/recover cycles.
  4. Assert: deep-equal store + entries sorted by compareKeys after recovery.
  5. After B5 lands: aliasing/mutation tests on recovered buffers.

Acceptance criteria

  • New DST seed(s) in matrix.
  • Sorted invariant checked after every recovery.
  • Binary + empty + large payloads covered.
  • bun run gate green.

Related issues

Verification

bun run gate

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions