Skip to content

Commit 1dda997

Browse files
add docs for high level views
1 parent 115a109 commit 1dda997

File tree

4 files changed

+41
-0
lines changed

4 files changed

+41
-0
lines changed
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
## CDK stack layout
2+
3+
The following diagram depicts the full CDK stack layout and details some of the high level communication between components.
4+
5+
![High level view of CDK stack](../../img/cdk/cdk-stack.png)
6+
7+
### Communication steps
8+
9+
- External applications interact with the CDK Erigon RPC node via the transaction pool manager.
10+
- Engineers use a CLI tool to manage the backend components, installing and initializing various modes of operation, such as validium versus rollup for example.
11+
- The CDK Erigon RPC sends transactions to the CDK Erigon sequencer which sequences transactions batches.
12+
- The CDK Erigon sequencer puts the transaction batches into the data streamer.
13+
- The data streamer streams data to the sequencer sender (validium mode) and the aggregator.
14+
- The sequencer sender sequences batches into the L1 smart contract domain and persists data into DAC nodes for validium mode operations.
15+
- The aggregator sends batches to the prover and receives proofs in return. It then aggregates the proofs into batches before submitting them to the L1 domain.
16+
- Users interact with the bridge service via the bridge UI.
17+
- The AggLayer also utilizes the bridge service and interacts with the L1 smart contracts.
18+
19+
## User data flow
20+
21+
The following diagram is a sequential depiction of the user data flow in validium mode using a mock prover and having an AggLayer connection.
22+
23+
![High level view of CDK user data flow](../../img/cdk/user-data-flow.png)
24+
25+
### Sequential steps
26+
27+
1. User sends a transaction to the CDK Erigon RPC node.
28+
2. The Erigon RPC node proxies the data to the CDK Erigon sequencer node.
29+
3. The sequencer sequences the transaction batches.
30+
4. The sequencer puts the batches into the data streamer component.
31+
5. The data streamer component streams the data into the sequence sender for validium mode stacks. It streams data into the aggregator and AggLayer for rollup and validium mode stacks.
32+
6. In validium mode, the sequencer sender persists transaction data into the DAC nodes.
33+
7. In validium mode, the sequencer sender sequences the batches into the L1 smart contracts.
34+
8. In both modes, the aggregator sends the batches to the prover and the prover returns the proofs.
35+
9. The aggregator batches the proofs.
36+
10. The aggregator submits the final proof to the AggLayer.
37+
11. The AggLayer submits the final proof to the L1 smart contract domain.
38+
39+
!!! tip
40+
Detailed AggLayer flows will be published soon.

docs/img/cdk/cdk-stack.png

84.2 KB
Loading

docs/img/cdk/user-data-flow.png

84.3 KB
Loading

mkdocs.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ nav:
7878
- Quickly test a running stack: cdk/how-to/quick-test-stack.md
7979
- Connect to CDK testnets: cdk/how-to/connect-testnet.md
8080
- Architecture:
81+
- High level views: cdk/architecture/high-level-views.md
8182
- CDK rollup: cdk/architecture/cdk-zkevm.md
8283
- CDK validium: cdk/architecture/cdk-validium.md
8384
- Unified bridge - STB: cdk/architecture/staking-the-bridge.md

0 commit comments

Comments
 (0)