Skip to content

Commit b3371a5

Browse files
committed
Squashed commit of the following:
commit dd8dd22 Author: mitchpolygon <mitch@polygon.technology> Date: Mon Feb 3 11:45:28 2025 -0500 Squashed commit of the following: commit 6ab8d17 Author: mitchpolygon <mitch@polygon.technology> Date: Tue Jan 7 09:29:46 2025 -0500 updated images for PP and FEP commit 44fce5f Author: mitchpolygon <156824029+mitchpolygon@users.noreply.github.com> Date: Tue Jan 7 09:21:38 2025 -0500 adding update images for FEP and PP diagrams commit e4fdd6b Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Mon Feb 3 08:07:56 2025 -0800 Update docs/agglayer/modes-of-integration/polygon-cdk.md Co-authored-by: Paul Gebheim <pgebheim@users.noreply.github.com> commit b8d3ae1 Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Mon Feb 3 08:07:33 2025 -0800 Update docs/agglayer/modes-of-integration/polygon-cdk.md Co-authored-by: Paul Gebheim <pgebheim@users.noreply.github.com> commit 15613ca Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Mon Feb 3 08:06:57 2025 -0800 Update docs/agglayer/crosschain-interop/crosschain-interop.md Co-authored-by: Paul Gebheim <pgebheim@users.noreply.github.com> commit afb9811 Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Mon Feb 3 08:06:10 2025 -0800 Update docs/agglayer/architecture/pessimistic-proof.md Co-authored-by: Paul Gebheim <pgebheim@users.noreply.github.com> commit 321fb8b Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Mon Feb 3 08:04:50 2025 -0800 Update docs/agglayer/architecture/pessimistic-proof.md Co-authored-by: Paul Gebheim <pgebheim@users.noreply.github.com> commit db5b6df Merge: f015b86 dcd345d Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Mon Feb 3 01:35:09 2025 -0800 Merge branch 'jaime-dev' into dev commit dcd345d Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Mon Feb 3 01:34:47 2025 -0800 unified bridge docs revision commit f015b86 Merge: 2e15beb 6857da8 Author: Paul Gebheim <pgebheim@users.noreply.github.com> Date: Mon Feb 3 00:19:11 2025 -0800 Merge branch 'main' into dev commit 2e15beb Merge: e888dac a73c775 Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Sun Feb 2 23:18:10 2025 -0800 Merge branch 'jaime-dev' into dev commit a73c775 Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Sun Feb 2 23:17:52 2025 -0800 Update overview.md commit e888dac Merge: 78f9c52 29c6e34 Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Fri Jan 31 20:35:54 2025 -0800 Merge branch 'jaime-dev' into dev commit 29c6e34 Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Fri Jan 31 20:35:34 2025 -0800 Update overview.md commit 78f9c52 Merge: 17cf389 52eac0c Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Fri Jan 31 20:26:12 2025 -0800 Merge branch 'jaime-dev' into dev commit 52eac0c Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Fri Jan 31 20:25:49 2025 -0800 overview styling commit 17cf389 Merge: b55b560 a8b4c20 Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Fri Jan 31 18:53:17 2025 -0800 Merge branch 'jaime-dev' into dev commit a8b4c20 Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Fri Jan 31 18:44:19 2025 -0800 overview v0.2 fixes commit b55b560 Merge: 65de584 def65a8 Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Fri Jan 31 12:51:36 2025 -0800 Merge branch 'jaime-dev' into dev commit def65a8 Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Fri Jan 31 12:51:05 2025 -0800 v0.2 overview fixing styling commit 65de584 Merge: 7f3a15c 43cb7e2 Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Fri Jan 31 12:37:57 2025 -0800 Merge branch 'jaime-dev' into dev commit 43cb7e2 Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Fri Jan 31 12:37:40 2025 -0800 Update overview.md commit 7f3a15c Merge: 5ca4417 cd9287b Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Fri Jan 31 12:30:48 2025 -0800 Merge pull request 0xPolygon#2588 from pgebheim/pgpg/fix-docker-dev Update docker file to have bash so mkdocks-multibranch works commit cd9287b Author: Paul Gebheim <pgebheim@gmail.com> Date: Fri Jan 31 12:18:28 2025 -0800 Update docker file to have bash so mkdocks-multibranch works commit 5ca4417 Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Fri Jan 31 12:07:21 2025 -0800 v0.2 fixing yaml file commit 7a0c51c Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Fri Jan 31 11:49:08 2025 -0800 directory fixing broken link commit 0679665 Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Fri Jan 31 11:37:19 2025 -0800 architecture overview adding md file commit cbba7d0 Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Fri Jan 31 11:34:01 2025 -0800 v0.2 docs agglayer node, yaml, overview commit 483ea65 Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Fri Jan 31 10:53:18 2025 -0800 agglayer v0.2 styling, formatting, indexing commit 7bcdd5c Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Fri Jan 31 10:21:10 2025 -0800 Update mkdocs.yml nav bar commit afdfe16 Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Fri Jan 31 09:58:33 2025 -0800 agglayer reorganizing files commit 3d8aa9f Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Fri Jan 31 09:46:50 2025 -0800 agglayer v0.2 docs: node; overview commit e619627 Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Thu Jan 30 21:47:35 2025 -0800 agglayer docs overview, unified bridge, crosschain interop, pessimistic proof, commit 1c87ec2 Merge: 4887c4e 4614969 Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Thu Jan 30 21:04:16 2025 -0800 Merge branch 'jaime-dev' into dev commit 4614969 Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Thu Jan 30 21:03:57 2025 -0800 update overview al landing page commit 4887c4e Merge: c6a568f f8ec8ee Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Thu Jan 30 15:41:06 2025 -0800 Merge branch 'jaime-dev' into dev commit f8ec8ee Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Thu Jan 30 15:40:54 2025 -0800 update overview fixing styling commit c6a568f Merge: e521c18 76f064b Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Thu Jan 30 15:13:40 2025 -0800 Merge branch 'jaime-dev' into dev commit 76f064b Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Thu Jan 30 15:12:36 2025 -0800 agglayer overview commit e521c18 Merge: 7d9da35 045cdcb Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Wed Jan 29 21:56:57 2025 -0800 Merge branch 'jaime-dev' into dev commit 045cdcb Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Wed Jan 29 21:47:54 2025 -0800 agglayer v0.2 Agglayer Rust cross-chain interop overview pessimistic proof commit 7d9da35 Author: mitchpolygon <mitch@polygon.technology> Date: Tue Jan 14 14:36:47 2025 -0500 Update overview.md commit a355cc3 Author: mitchpolygon <mitch@polygon.technology> Date: Wed Jan 8 10:21:27 2025 -0500 Update overview.md commit 7de6ddd Author: mitchpolygon <mitch@polygon.technology> Date: Tue Jan 7 08:49:43 2025 -0500 Update high-level-views.md commit a5f5694 Author: mitchpolygon <mitch@polygon.technology> Date: Tue Jan 7 08:35:29 2025 -0500 updated PP arch commit ef5ec65 Author: mitchpolygon <mitch@polygon.technology> Date: Mon Jan 6 10:16:13 2025 -0500 updated PP and FEP arch formatting commit b3aba60 Author: mitchpolygon <mitch@polygon.technology> Date: Mon Jan 6 10:11:20 2025 -0500 updated FEP formatting commit 6d3fed2 Author: mitchpolygon <mitch@polygon.technology> Date: Mon Jan 6 10:07:12 2025 -0500 updated PP formatting commit dd3dbb9 Author: mitchpolygon <mitch@polygon.technology> Date: Mon Dec 30 08:12:57 2024 -0500 updated cdk docs formatting commit b744d8a Author: mitchpolygon <mitch@polygon.technology> Date: Mon Dec 30 07:39:48 2024 -0500 updates to cdk docs commit d8834b1 Author: mitchpolygon <mitch@polygon.technology> Date: Sat Dec 21 10:40:21 2024 -0500 updates to overview and release notes commit 8d5197f Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Thu Dec 19 09:58:32 2024 -0800 moved folders commit 1e41b49 Author: mitchpolygon <mitch@polygon.technology> Date: Thu Dec 19 12:42:04 2024 -0500 Update README.md commit b5c5feb Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Thu Dec 12 09:06:00 2024 -0800 Update agglayer-go.md commit 0fe1f4f Author: Jaime-N <149603094+Jaime-N@users.noreply.github.com> Date: Thu Dec 12 09:04:05 2024 -0800 Update README.md
1 parent 6857da8 commit b3371a5

22 files changed

+675
-1283
lines changed

Dockerfile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ RUN apk update
44
RUN apk add rsync
55
RUN apk add git
66
RUN apk add nodejs npm
7+
RUN apk add --no-cache bash
78
COPY requirements.txt requirements.txt
89
RUN pip install -r requirements.txt --no-cache-dir
910

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Polygon Knowledge Layer
22

3-
Welcome to the Polygon Knowledge Layer .
3+
Welcome to the Polygon Knowledge Layer!
44

55
These docs use [the Material theme for MkDocs](https://squidfunk.github.io/mkdocs-material/). Our goal is to establish a high-quality, curated, and comprehensive "source of truth" for Polygon's technology.
66

docs/agglayer/agglayer-go.md

Lines changed: 0 additions & 98 deletions
This file was deleted.

docs/agglayer/agglayer-rs.md

Lines changed: 0 additions & 91 deletions
This file was deleted.
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# Agglayer Node
2+
3+
## Overview
4+
5+
**The Agglayer node** is the Rust-based service designed to receive zero-knowledge proofs from Agglayer-connected chains, verify their validity, and send them to the L1 for final settlement.
6+
7+
> **Note:** Instructions on how to clone and build the Agglayer locally, including running the pessimistic proof test suite and generating a verifiable proof using Succinct’s Prover Network, can be found [here](#).
8+
9+
## Crate directory
10+
11+
The crates and their functions within the Agglayer repo are as follows:
12+
13+
| Crate | Description |
14+
| --- | --- |
15+
| [agglayer-aggregator-notifier](/crates/agglayer-aggregator-notifier) | Contains implementations for [Certifier](crates/agglayer-certificate-orchestrator/src/certifier.rs#L29) which applies new [Certificate](crates/agglayer-types/src/lib.rs#245) on top of an existing state and computes the proof, as well as [EpochPacker](crates/agglayer-certificate-orchestrator/src/epoch_packer.rs#14), which handles the packing of an epoch |
16+
| [agglayer-certificate-orchestrator](/crates/agglayer-certificate-orchestrator) | Manages the orchestration and handling of certificates; also handles `current_epoch`, which allows non-orchestrators to push a proven certificate |
17+
| [agglayer-clock](/crates/agglayer-clock) | Defines the pace of the Agglayer in terms of epoch with support for two clocks: time (for testing) and block (for listening for L1 blocks) |
18+
| [agglayer-config](/crates/agglayer-config) | Manages configuration settings and parameters for Agglayer components |
19+
| [agglayer-contracts](/crates/agglayer-contracts) | Contains smart contracts and related logic |
20+
| [agglayer-gcp-kms](/crates/agglayer-gcp-kms) | Provides integration with GCP's Key Management Service for secure key handling |
21+
| [agglayer-node](/crates/agglayer-node) | Responsible for spawning and running the different components of the node |
22+
| [agglayer-prover-types](/crates/agglayer-prover-types) | Defines data structures and types used by the prover |
23+
| [agglayer-prover](/crates/agglayer-prover) | Responsible for running everything related to the prover |
24+
| [agglayer-signer](/crates/agglayer-signer) | Manages signing operations |
25+
| [agglayer-storage](/crates/agglayer-storage) | Contains two layers: a physical layer for abstracting RocksDB and a logic layer for exposing the interface to other crates so that they may interact with the storage |
26+
| [agglayer-telemetry](/crates/agglayer-telemetry) | Handles telemetry and monitoring functionalities |
27+
| [agglayer-types](/crates/agglayer-types) | Defines common data types and structures |
28+
| [agglayer](/crates/agglayer) | The CLI for interacting with the Agglayer |
29+
| [pessimistic-proof-program](/crates/pessimistic-proof-program) | Implements the pessimistic proof program |
30+
| [pessimistic-proof-test-suite](/crates/pessimistic-proof-test-suite) | Provides a suite of tests for validating the functionality of the pessimistic proof program |
31+
| [pessimistic-proof](/crates/pessimistic-proof) | Contains the core logic and implementation of the pessimistic proof mechanism |
32+
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
---
2+
hide:
3+
- toc
4+
---
5+
6+
# Agglayer Architecture
7+
8+
## Overview
9+
10+
**The Agglayer** is designed to provide an interoperability framework for cross-chain communication and state verification that robust, scalable, and flexible enough to support these features between unalike blockchain networks. The key components of the Agglayer include the **Agglayer node**, the **pessimistic proof**, and the **unified bridge**. They are designed to enable lightweight, secure, and verifiable cross-chain transactions.
11+
12+
## Agglayer node
13+
14+
The **Agglayer Node** is a Rust-based service responsible for processing and verifying zero-knowledge (ZK) proofs from chains connected to the Agglayer.
15+
16+
### Key functions:
17+
- **Zero-knowledge proof verification**: The node receives and verifies cryptographic proofs from connected chains before sending them to L1.
18+
- **Certificate management**: Handles certificates that attest to the state transitions of connected chains.
19+
- **Orchestration of epochs**: Manages state updates in a structured manner through epochs.
20+
21+
## Pessimistic proof
22+
23+
The **pessimistic proof** mechanism ensures that any withdrawal claims made to the Agglayer are backed by legitimate deposits in the **Unified Bridge**. It uses a novel zero-knowledge proof system implemented in Rust, leveraging the **SP1 zkVM** and the **Plonky3 proving system**.
24+
25+
### Key functions:
26+
- **Security validation**: Ensures that each chain connected to the Agglayer remains as secure as if it were operating independently.
27+
- **State consistency**: Provides a complete view of all token and message transfers occurring across the Agglayer.
28+
- **Fraud prevention**: Prevents chains from withdrawing more assets than they have legitimately received.
29+
30+
## Unified bridge
31+
32+
The **unified bridge** is responsible for maintaining the data structures related to chain states, cross-chain transactions, and the Agglayer’s Global Exit Root, ensuring cross-chain transactions are indeed finalized on the L1 before they can be claimed.
33+
34+
### Key functions:
35+
- **Cross-chain asset transfers**: Allows users to bridge assets between different chains.
36+
- **Message passing**: Enables contract-to-contract interactions across chains.
37+
- **State management and accounting**: Maintains Merkle proofs that ensure transactions are finalized before being processed on the destination chain.

0 commit comments

Comments
 (0)