lez-fuzzing/fuzz_props/Cargo.toml
Roman 42f683ef29
fix: undo prove feature
- install external prover
2026-07-06 15:24:30 +02:00

40 lines
1.5 KiB
TOML

[package]
name = "fuzz_props"
version = "0.1.0"
edition = "2024"
[lints]
workspace = true
[features]
fuzzer-libfuzzer = []
fuzzer-afl = []
[dependencies]
# NOTE: `prove` is deliberately NOT enabled here. Enabling it drags risc0's STARK
# prover backend (C++/CUDA kernels + heavy circuit codegen) into the fuzz-target
# build, blowing "cargo fuzz build" from ~6 min to ~50 min — all to compile a prover
# that `Program::execute` never calls (it executes, it does not prove). Instead the
# fuzz targets use risc0's `ExternalProver`, which runs the guest via an external
# `r0vm` binary installed in CI (see .github/actions/install-r0vm). It is still
# enabled under [dev-dependencies] so `cargo test` runs the guest in-process.
nssa = { workspace = true }
nssa_core = { workspace = true }
common = { workspace = true }
borsh = { workspace = true }
# Needed by `privacy.rs` to synthesise a *passing* dev-mode fake receipt (Path B):
# a privacy-preserving proof is a borsh-encoded `risc0_zkvm::InnerReceipt`.
risc0-zkvm = { workspace = true }
proptest = "1.4"
arbitrary = { version = "1", features = ["derive"] }
testnet_initial_state = { workspace = true }
# Reproduce LEZ genesis (builtin programs + system accounts) in `genesis_state`,
# which LEZ moved out of the state machine into these crates.
programs = { workspace = true }
system_accounts = { workspace = true }
[dev-dependencies]
proptest = "1.4"
# In-process guest execution for the test suite (no external r0vm needed under `cargo test`).
nssa = { workspace = true, features = ["prove"] }