- Build the model checker:
bazel build //:fizzbee - Run the model checker:
./fizz path/to/spec/file.fizz(use the wrapper script, not the bazel binary directly)
- Do NOT use gazelle to update BUILD files
- The
./fizzwrapper script handles compilation and execution - always use it instead of./bazel-bin/fizzbee_/fizzbee
- Reference examples are in
examples/references/organized by feature - Many examples have
baseline.txtfiles for comparing output metrics (Nodes, Valid Nodes, Unique States, PASSED/FAILED status) - Generated files (
.jsonAST files andout/directories) can be deleted after testing
python3 test_references.pyRuns all 94 reference examples (those with a baseline.txt) and all lovable specs in examples/requirements/lovable/. Compares output semantically (strips timestamps, elapsed times, file paths). Reports PASS/FAIL per example and a summary.
To update a baseline after an intentional change:
./fizz examples/references/NN-name/Spec.fizz > examples/references/NN-name/baseline.txt 2>&1lib/- Core library code (starlark types, symmetry, JSON marshalling)modelchecker/- Model checking engine (processor, threads, cloning, state visitor)parser/- Fizz language parserproto/- Protocol buffer definitionsexamples/- Example specificationsreferences/- Reference examples organized by feature (01-xx through 16-xx)tutorials/- To be removed. Old tutorial specifications, some of which may be outdated and may not even work
samples/- Larger sample specifications. Again, not organized and may be outdated and may not even work, but kept for reference. These are not merged into git.