Skip to main content
Determinism is a top-level requirement across memvid-core, CLI, and bindings (see Security & Performance Architecture + Developer Implementation Guide).

What to test

  1. Run ingestion twice with identical inputs → resulting .mv2 files must have identical BLAKE3 hashes
  2. Run memvid find/timeline/ask with the same seeds → identical ordering and scores
  3. Run SDK operations (Python + Node) → stats, verify, doctor outputs should match CLI JSON exactly

Suggested harness

Run the determinism harness in CI (the same workflow invoked before every release) to compare hash outputs between builds. The suite should fail if toc_checksum, merkle_root, or ticket_ref fields differ.
Dependencies - Avoid #[serde(skip)] or conditional compilation in serialized structs. The Developer Implementation Guide calls out how serde + bincode must be used to keep layouts stable.