Skip to content

Agglayer Node

Overview

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.

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.

Crate directory

The crates and their functions within the Agglayer repo are as follows:

Crate Description
agglayer-aggregator-notifier Contains implementations for Certifier which applies new Certificate on top of an existing state and computes the proof, as well as EpochPacker, which handles the packing of an epoch
agglayer-certificate-orchestrator Manages the orchestration and handling of certificates; also handles current_epoch, which allows non-orchestrators to push a proven certificate
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)
agglayer-config Manages configuration settings and parameters for Agglayer components
agglayer-contracts Contains smart contracts and related logic
agglayer-gcp-kms Provides integration with GCP’s Key Management Service for secure key handling
agglayer-node Responsible for spawning and running the different components of the node
agglayer-prover-types Defines data structures and types used by the prover
agglayer-prover Responsible for running everything related to the prover
agglayer-signer Manages signing operations
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
agglayer-telemetry Handles telemetry and monitoring functionalities
agglayer-types Defines common data types and structures
agglayer The CLI for interacting with the Agglayer
pessimistic-proof-program Implements the pessimistic proof program
pessimistic-proof-test-suite Provides a suite of tests for validating the functionality of the pessimistic proof program
pessimistic-proof Contains the core logic and implementation of the pessimistic proof mechanism