2.9 KiB
2.9 KiB
Go/No-Go Release Criteria
Alpha Release
In the first alpha release, we want Zebra to participate in the network and replicate the Zcash chain state. We also want to validate proof of work and the transaction merkle tree, and serve blocks to peers.
System Requirements
Our CI tests that Zebra builds, passes its tests, and syncs on recent Ubuntu Linux, macOS, and Windows.
See the README for specific system requirements.
Build Requirements
Our CI builds Zebra with:
- Rust stable
- recent llvm
- recent clang
- recent libclang
Supported Platforms
While Zebra is still in alpha, we don't guarantee support for any particular platforms.
But you'll probably get the best results with a recent Ubuntu Linux, or the other platforms that our CI runs on.
Go/No-Go Status: ⚠️
Last updated: December 7 2020
zebradFunctionalityzebradcan sync to mainnet tip- ⚠️ under excellent network conditions (within 2 - 5 hours)
- reasonable and sub-optimal network conditions are not yet supported
zebradcan stay within a few blocks of the mainnet tip after the initial sync- ⚠️ under excellent network conditions
- reasonable and sub-optimal network conditions are not yet supported
- ✅
zebradcan validate proof of work - ✅
zebradcan validate the transaction merkle tree - ⚠️
zebradcan serve blocks to peers - ✅ The hard-coded checkpoint lists are up-to-date
zebradPerformance- ✅
zebradfunctionality works on platforms that meet its system requirements
- ✅
- Testing
- ⚠️ CI Passes
- ✅ Unit tests pass reliably
- ✅ Property tests pass reliably
- ⚠️ Acceptance tests pass reliably
- ✅ Each Zebra crate builds individually
- ⚠️ CI Passes
- Implementation and Launch
- ✅ All release blocker bugs have been fixed
- ✅ The list of known serious issues is up to date
- ✅ The Zebra crate versions are up to date
- ⚠️ Users can access the documentation to deploy
zebradnodes
- User Experience
- ✅ Build completes within 40 minutes in Zebra's CI
- ✅ Unused dependencies have been removed (use
cargo-udeps)
- ✅ Unused dependencies have been removed (use
- ✅
zebradexecutes normally- ✅
zebrad's default logging works reasonably well in a terminal - ✅ panics, error logs, and warning logs are rare on mainnet
- ✅ known panics, errors and warnings have open tickets
- ✅
- ✅ Build completes within 40 minutes in Zebra's CI