Repository navigation
Conversation
Contributor
📏 PR diffNote Actual code changed: 187 lines🟢 +141 added 🔴 −46 removed Tests, docs, fixtures, and helper scripts excluded.
Every changed line is classified once. |
Contributor
Benchmark comparison (crates)Same-runner A/B: 2 of 96 benchmarks differ by more than ±10%:
All 96 benchmarks
|
This was referenced Nov 10, 2026
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Makes the default
jolt-verifierdependency graph free of BN254, Rayon and OS entropy, so a guest verifier pulls in only what it uses. Prover crates now ask for those features explicitly. This is item Z-deps/j of the Whiteout move (LayerZero-Labs/akita#120). No formulas, transcript messages, proof types or serialization change.Draft: built on today's
main, before the field switch (#2379). It will be rebased once that lands.Changes
jolt-field,jolt-polyandjolt-openingsno longer inherit default features.jolt-field's own default turns on BN254, so it needsdefault-features = falseeven thoughjolt-algebraalready had it.jolt-transcript: OS-seeded prover construction (spongefish'sgetrandom, the wasmgetrandombackend) moves behind a newprover-entropyfeature. The generic prover transcript operations stay ungated; only the OS-seeded constructor and itsProverInitimpl are gated.jolt-zk: BlindFold's dependencies are optional underblindfold; Rayon moves fromprovertoparallel, with sequential iterators that preserve collection order.proverimpliesblindfold. BlindFold needs no concrete curve, so the generic verifier enablesblindfold(its proof wire type namesBlindFoldProofeven in clear mode) without BN254.jolt-prover,jolt-sdk(not its guest verifier), Dory, HyperKZG,jolt-akita(normal dependency: the patchedakita-transcriptconstructs a prover state unconditionally), the recursion wrappers, tracer,jolt-eval,z3-verifier,zklean-extractor, the fuzz crates and the sumcheck external-consumer test. Test-only needs go through dev-dependencies.randandrand_chacharemain in the verifier graph throughark-serialize → ark-std, withoutgetrandom. Removing that dependency is out of scope.Validation
host, andhost,zk) with-D warnings;cargo check -p jolt-verifier --all-targets, also with default features off; a bare wasm library check with no entropy backend; the release wasm prover build from CIjolt-transcriptchecked in isolation with--lib(69 checks), so no crate relies on another crate turning a feature onjolt-zkfeature combinations compile; 94 transcript tests (frozen vectors included), 73 BlindFold tests with sequential and with parallel iterators, the clear and ZK muldiv verifier fixtures, the sumcheck external-consumer roundtrip, locked builds of the four affected fuzz manifests🤖 Generated with Claude Code