For the complete documentation index, see llms.txt. This page is also available as Markdown.

Alpha Mainnet (L2) Archive Node Setup

Run a Gravity Alpha Mainnet (L2) archive node with full historical state for eth_call, debug_traceTransaction, and trace APIs against any block.

ArbOS 51 (Dia) Upgrade Notice

Gravity Alpha Mainnet has been upgraded to ArbOS 51 (Dia). This upgrade brings important improvements from the Ethereum Fusaka upgrade and more.

What's Included

  • Features from the ArbOS 40 (Callisto) upgrade

  • Unlocks the path to Permissionless Fault Proofs in the future with the new BoLD dispute protocol

  • Unlocks the path to enabling Native Token Mint/Burn capabilities

  • EIP-7825 — Transaction gas limit cap for more efficient gas usage

  • Precompile and opcode changes that make cryptographic operations cheaper and more efficient in the EVM

For a full breakdown, see the ArbOS 51 upgrade notice.

Required Actions for Existing Node Operators

No action required if you are not running external nodes.

If you are running external nodes, you need to:

  1. Upgrade your Nitro node to at least v3.9.3, but v3.9.5 (release link) is recommended.

  2. Make sure the flag --node.staker.enable=false is configured on your node.

If you have already downloaded a snapshot previously, you only need to upgrade the node version — simply update the Docker image to offchainlabs/nitro-node:v3.9.5-66e42c4 and restart.

Key Changes from Previous Version

  • Docker image: ghcr.io/celestiaorg/nitro:v3.6.8offchainlabs/nitro-node:v3.9.5-66e42c4

  • Celestia DAS server is no longer required — DA is now handled via the REST aggregator

  • HTTP API: Added trace and debug endpoints

  • New flags:

    • --node.data-availability.enable=true

    • --node.data-availability.rest-aggregator.enable=true

    • --node.data-availability.rest-aggregator.urls=https://das-gravity-mainnet-0.t.conduit.xyz

    • --execution.caching.archive=true

    • --node.staker.enable=false

  • Removed flags:

    • --node.data-availability.enable=false

    • --node.da-provider.enable=true

    • --node.da-provider.rpc.url=<CELESTIA_DAS_URL>


Archive Node Setup Guide

This guide sets up an archive node — it retains the full historical state trie so you can run eth_call, debug_traceTransaction, and trace_* RPCs against any block height. If you only need to follow the chain tip and don't require historical state access, use the lighter Alpha Mainnet (L2) Full Node from Snapshot guide instead.

Prerequisites

  1. A local directory for storing node data

  2. An Ethereum mainnet RPC endpoint with unlimited rate limit for eth_getLogs

  3. An Ethereum beacon chain RPC endpoint

Download Snapshot (Required)

Downloading the latest snapshot is required before running the node. Due to historical data availability format changes, syncing from genesis without a snapshot is not supported.

  1. Extract the snapshot to your local directory before running the node.

If you have already downloaded a snapshot previously, there is no need to download it again.

Health Check

After your node is running, verify that it has successfully synced past the historical Celestia DA batches by checking the latest block number:

If the output shows STUCK, your node is unable to process historical Celestia-format batches. You need to re-download the latest snapshot and restart.

Running the Node

Save the following script as run-gravity-node.sh, make it executable with chmod +x run-gravity-node.sh, and update the TODO variables:

Additional Information

  • The chain info is obtained from Conduit:

  • Relay endpoint is provided by Conduit as wss://relay-gravity-mainnet-0.t.conduit.xyz

  • Gravity Alpha Mainnet uses Anytrust DA, with aggregator URL: https://das-gravity-mainnet-0.t.conduit.xyz

References

For more information, please check out the following guides:

Last updated

Was this helpful?