Project status and versioning
ProveKit is under active development. Code, proof and key formats, recursive-verifier inputs, and integration APIs are branch-scoped unless a release note explicitly says otherwise.
Branch policy
Section titled “Branch policy”| Branch | Audience | Status |
|---|---|---|
v1 | Users who need a stable interface today. | Stable and audited. Supports Noir v1.0.0-beta.11. |
main | Contributors and early adopters. | May include breaking changes to proof, key, recursive-verifier, or API formats between commits. |
Use v1 when reproducibility matters more than testing the newest implementation. Use main only when you are prepared to regenerate artifacts and adapt to source-level changes.
Artifact compatibility
Section titled “Artifact compatibility”Do not assume compatibility across branches or commits unless a release note states the formats are unchanged.
Regenerate every affected artifact after changing any of:
- Git branch, commit,
Cargo.lock, or Noir compiler version. - Noir circuit source, package selection, or workspace layout.
prepare --hashvalue.- Prover inputs (regenerate the proof, not the keys).
- Recursive-verifier export settings or the proof/verifier pair.
Integration status
Section titled “Integration status”| Path | Status | Compatibility notes |
|---|---|---|
CLI prepare / prove / verify | Primary local workflow. | Defaults are package-derived; use explicit paths in CI and production. |
| Rust crates | Direct integration for Rust services and tests; published to docs.rs. | API names and proof/key types may move while main evolves. |
| WASM bindings | Active browser/JavaScript path. | Provers are consumed after one proof; getCircuit() is available for Noir provers. |
| FFI bindings | Active mobile/native host path. | Hosts must manage initialization, allocator configuration, and buffer ownership. |
| Verifier server | Active HTTP verification path. | Requires reachable HTTP/HTTPS artifact URLs and tuned request/time/concurrency limits. |
| Recursive verifier | Active Go/gnark wrapper. | Recursive params and R1CS JSON must be regenerated with the matching verifier/proof pair. |
For deployment-specific readiness, see the Production checklist.