Project
Build roadmap
The phased plan, each phase with a verification gate. The privacy core is done and verified; the chain, bridges, explorer, and frontend are scaffolded and turn-key, with clear remaining steps to testnet and mainnet.
shh is built in phases, each with concrete deliverables and a gate that must pass before moving on. The goal is a complete, reproducible, locally-runnable system that also deploys to Base Sepolia / mainnet.
Status at a glance
| Phase | Scope | Status |
|---|---|---|
| 0 | Foundations & decisions | ✅ Done |
| 1 | Monorepo scaffold + privacy core | ✅ Done & verified |
| 2 | Local OP Stack devnet | ◐ Scaffolded (boot deferred) |
| 3 | Two chain profiles | ◐ Scaffolded |
| 4 | Bridges | ◐ Scaffolded (bidirectional, unit-tested) |
| 5 | Explorer | ◐ Scaffolded |
| 6 | SDK + app | ◐ Backend done, frontend deferred |
| 7 | Testnet | ▢ Planned |
| 8 | Hardening & mainnet | ▢ Planned |
Phase 1 — privacy core (done & verified)
The cryptographic heart, independent of the chain. Its gate is the one you can run today:
circuits:compile && circuits:setupproduces.wasm+.zkey+ verifier.sol.circuits:test(4/4): valid witness proves+verifies; tampered witness fails constraints.@shh/sdktest (9/9): Poseidon/Merkle/notes, value conservation, ZERO_VALUE.contracts:test(10/10): deposit → prove → withdraw for both pools, double-spend rejected, association gating, bidirectional shielded bridge, front-running.
What's next
- Phase 2 gate
- Boot blocks and confirm with
cast block latest(compose already validated). - Phase 3 gate
- Each profile boots from a single config flag and passes its smoke test.
- Phase 4 gate
- End-to-end bridge test on a Base Sepolia fork (deposit → spendable note; withdraw → funds on Base).
- Phase 5 gate
- Explorer shows L3 blocks/txs and decodes pool events.
- Phase 6 gate
- A user can deposit, privately transfer, and withdraw from the UI on devnet.
- Phase 7 gate
- External wallet completes the full flow on Base Sepolia.
- Phase 8 gate
- Audit findings resolved; ceremony transcript published; mainnet live.