Devnet

Devnet Operation Guide

After successfully deploying Devnet, it is important to maintain a stable operating environment and continuously monitor that each component is operating correctly. This requires familiarity with key operating procedures such as checking container status, checking logs, analyzing port mapping information, and verifying network interoperability by actually testing bridge operations between L1 and L2. This guide provides practical procedures and useful reference links for these operations and tests.

1. Deployment Information

You can access essential deployment information from the following paths discussed below. This information is important for client integration, monitoring, and further development.

a. Deploy Configuration

Contains core L2 chain configuration parameters.

  • Path: tokamak-thanos/packages/tokamak/contracts-bedrock/deploy-config/devnetL1.json

  • Source

{
  "l2ChainId": "901",
  "l2BlockTime": 2,
  "maxSequencerDrift": 600,
  "sequencerWindowSize": 3600,
  "channelTimeout": 300,
  "p2pSequencerAddress": "0x...",
  "batchInboxAddress": "0x...",
  "batchSenderAddress": "0x..."
}
  • Usage:

    • Chain ID: Network configuration for wallets

    • Block Time: Transaction confirmation time estimation

    • Sequencer Address: Sequencer monitoring and performance tracking

b. L1 Deployed Contract Addresses

Contains addresses of core contracts deployed on L1. For detailed explanations of each contract, please refer to here.

  • Path: tokamak-thanos/packages/tokamak/contracts-bedrock/deployments/devnetL1/.deploy

  • Source (example)

c. L2 Predeploy Contract Addresses

Contains fixed addresses of system contracts pre-deployed on L2. For detailed explanations of each contract, please refer to here.

  • Path: tokamak-thanos/packages/tokamak/contracts-bedrock/src/libraries/Predeploys.sol

  • Source

2. Devnet Container Overview

The Devnet environment comprises several Docker containers, each serving a specific role:

Container Name
Description
Endpoint

ops-bedrock-l1-1

Layer 1 (L1)

ops-bedrock-l2-1

Layer 2 (L2

ops-bedrock-op-node-1

Consensus node between L1 and L2

N/A

ops-bedrock-op-proposer-1

Proposes L2 state root to L1

N/A

ops-bedrock-op-batcher-1

Batches L2 transactions for L1 submission

N/A

Note: The container configurations are defined in the docker-compose.yml file.

3. Docker Commands for Devnet Management

  • List running containers:

  • Check container logs: Check the logs of the currently running container. (-f option outputs real-time logs)

  • Start/Stop/Restart Containers: Control the behavior of currently running containers individually.

  • Verify container port mapping: Verify port mapping information for inter-container communication.

4. Testing Bridge Transactions Using Thanos SDK

You can move assets between L1 and L2 via bridge transactions using the SDK provided by Thanos Stack. Please refer to the guide link for the commands and execution methods.

The assets that support bridges on the Thanos Stack:

  1. TON

  2. ETH

  3. ERC-20 asset (except TON)

Last updated