ZKsync OS Server is the sequencer implementation for the ZKsync OS,
the new operating system of the ZK Stack.
The ZKsync OS Server design optimizes for throughput, low latency, and a seamless development experience.
Install | User docs | Developer docs | 
- Minimal, async persistence
- to meet throughput and latency requirements, we avoid synchronous persistence at the critical path. Additionally, we aim at storing only the data that is strictly needed - minimizing the potential for state inconsistency
- Easy to replay arbitrary blocks
- Sequencer: components are idempotent
- Batcher:
batchercomponent skips all blocks until the first uncommitted batch. Thus, downstream components only receive batches that they need to act upon
- State - strong separation between
- Actual state - data needed to execute VM: key-value storage and preimages map
- Receipts repositories - data only needed in API
- Data related to Proofs and L1 - not needed by sequencer / JSON RPC - only introduced downstream from
batcher
The canonical v32.0/V8 local fixture is pending regeneration with the final V8
verification key and patched-v0.4 Era contracts. Repository launch/config helpers
fail closed while
local-chains/v32.0/CANONICAL_V8_REGENERATION_REQUIRED exists; do not launch the
old fixture bytes from an external checkout.
For more configuration and detailed instructions, check the developer documentation.
See CONTRIBUTING.md for contribution guidelines.
See SECURITY.md for security policy details.
ZKsync OS repositories are distributed under the terms of either
- Apache License, Version 2.0, (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or https://opensource.org/blog/license/mit/)
at your option.
