Skip to main content

Module fuzz

Module fuzz 

Source
Expand description

Document generator for the differential fuzzer.

Enumerated cases prove the two implementations agree about what was anticipated. Only a fuzzer speaks to what was not, and shipping a second implementation means shipping the claim that they agree.

A seed does not name a stable document. Any change to the bank, to the draw order, or to a denominator renames every seed, because the fragment index is drawn modulo the bank’s length. The fixed seed range CI runs is a regression net only while the generator is frozen; it is not a corpus, and a divergence worth keeping is promoted into corpus/ rather than left as a seed number.

Structs§

Rng
xorshift64*, so the generator is deterministic without a dependency.
Scenario
A whole run: the tree to lay down, and the arguments to run in it.

Constants§

FRAGMENTS
The lines a generated document is built from.

Functions§

document
Build the document for seed.
scenario
Build the whole scenario for seed.