LogoLogo
  • Introduction
    • Introducing Othentic Stack
    • Use Cases
  • AVS Framework
    • Abstract
    • Quick Start
    • Othentic CLI
      • Key Management
      • Contracts Deployment
      • Operator Registration
      • AVS Logic Implementation
      • Operator Deposit
      • Node Operators
      • Rewards Distribution
      • P2P Config
        • Custom P2P Messaging
        • P2P Auth Layer
        • Metrics and Monitoring
        • Logging
        • Persistent storage
        • Latency
      • CLI Command Reference
    • Smart Contracts
      • AVS Governance
      • Attestation Center
      • Hooks
        • Task Logic
        • Operator Management
        • Rewards Fee Calculator
      • OBLS
      • Internal Task Handler
      • Othentic Registry
      • Message Handlers
    • Othentic Consensus
      • Abstract
      • Task & Task Definitions
      • Leader Election
      • Proof of Task
      • Execution Service
      • Validation Service
      • Voting Power
      • Rewards
      • Internal Tasks
      • Slashing & Ejection
        • Slashing Modules
        • Custom Slashing
    • FAQ
    • Supported Networks
    • Explainers
      • Networking
      • Multichain
      • Production Guidelines
      • Operator Allowlisting
      • Governance Multisig
  • External
    • AVS Examples
  • GitHub
  • Othentic Hub
Powered by GitBook
On this page
  • 1. Deployment & Registration
  • 2. Operator Setup
  • 3. Docker configuration
  • 4. Task
  • 5. Rewards
  • 6. Infrastructure Setup
  • 7. Operator Configuration
  • 8. External Operator Onboarding
  • Security Guidelines
  • AVS Governance Multisig
  • Separation of Controller and Signing Keys for Operators
  1. AVS Framework
  2. Explainers

Production Guidelines

Production AVS Deployment Guide

PreviousMultichainNextOperator Allowlisting

Last updated 2 months ago

When launching an AVS on mainnet, it is essential to ensure it is fully prepared for production. This structured checklist covers key deployment steps, including multisig governance, EigenLayer registration, and infrastructure best practices, to ensure a seamless deployment and operation.

This guide references the in the Simple Price Oracle Repository.


1. Deployment & Registration

AVS Contracts Deployment

  • AVS MultiSig Governance: Use a Multisig Account () --avs-governance-multisig-owner to designate the AVS owner when deploying the contracts.

  • : Deploy AVSLogic, AVSGovernance or FeeCalculator Hook contracts if applicable.

EigenLayer Registration


2. Operator Setup

Initial Registration Sequence

Please make sure to follow this order when registering the operator. This specific order ensures correct Voting Power sync. Depositing funds after AVS registration requires manual voting power syncing.

  • to the strategy: The operator must deposit funds into their chosen Eigen Layer strategy before registering with the AVS.

  • to the AVS: This step also syncs the voting power internally

    • Make sure to use

    • Make sure to set Rewards Receiver Address (Not applicable when using Rewards v2)

    • Add --l1-chain mainnet flag

Voting Power


3. Docker configuration

Updating Operator Commands

  • Update the Operator commands in the Docker file to include production chains using --l1-chain <> and --l2-chain <>.

Network and Internal Task Verification

  • Ensure that Operators holding at least 2/3 of total voting power are connected to the network and running both the Attester node and Validation Service.


4. Task

  • Create Task Definitions on production chains (If applicable)


5. Rewards

Configuration

  • Strategy Multipliers: Determine and set multipliers to incentivize desired staking behaviors.

Distribution


6. Infrastructure Setup

Chain Config

  • Configure chain Ids in the .env file

L1_CHAIN=1
L2_CHAIN=8453 // Set the L2 chain id

RPC Endpoints

  • Use paid, highly reliable RPCs for L1/L2 chains to avoid any errors. Configure in .env

L1_RPC="https://..." 
L2_RPC="https://..."
  • Configure comprehensive logging (File-based or Elastic Search) to capture relevant events and debug logs.

  • Configure persistent storage for critical data to prevent data loss in case of restarts/ failures and avoid reconnection issues.

  • Set up robust metrics and monitoring systems.

Layerzero Fee

  • The MessageHandler contracts manage LayerZero fees. AVS developers are responsible for funding the MessageHandler contracts (deployed during AVS setup) with sufficient funds to cover cross-chain communication costs. Regularly monitor the balance and replenish as needed.

Verify Network Setup

  • For Docker ensure that the required ports are open and properly mapped.

  • For ISP-hosted nodes, confirm that the port is open and accessible from outside. (Configuration of security groups, firewall rules, etc...)

  • For DNS-based configurations, ensure dnsaddr is correctly set and publicly resolvable.


7. Operator Configuration

Validate Private key

  • If the key was not set correctly or needs to be changed, update it using BLS Update.

  • Ensure the addresses specified in ANNOUNCED_ADDRESSES are publicly accessible.

  • If using a domain name service (DNS), Its recommended to explicitly add /ip4/ multiaddresses alongside /dnsaddr/ to ensure compatibility across different discovery mechanisms.


8. External Operator Onboarding

Onboarding Documentation

  • Thoroughly test the documentation with new operators to identify any gaps or areas for improvement.


Security Guidelines

  • It is highly advised to use a different key for signing purposes. By utilizing a separate signing key, the Operator's private key (controller key) does not need to be stored in the .env file, significantly reducing the risk of hacks.

  • Using the same key for both functions could expose Operator funds to potential security threats.

✅ By following this checklist, you ensure a secure and efficient AVS deployment in production.

Set the to to cap voting power per operator and prevent any single operator from gaining disproportionate influence over consensus.

Configure the r if required.

If using , enable the --json-rpc.custom-message-enabled flag in the Aggregator command.

Verify that are running by checking transactions in the attestation center contract (Look for task definition IDs 10001, 10002). For example , transactions.

Ensure Task definition specific logic is implemented within the .

: Configure the available staking strategies within the AVS.

Deposit the reward tokens into the AVS Treasury for distribution.

to enable rewards distribution. By default, its paused.

Establish a consistent schedule based on the rewards distribution mechanism.

:

Ensure that the private key provided in .env or via CLI option is a valid .

Check

Create comprehensive onboarding documentation for operators, covering all aspects of registration, and best practices. For reference check .

It is strongly recommended to use a multisig account () when deploying AVS contracts to enhance security.

custom messages
Internal Tasks
10001
10002
Validation Service
reward distribution
Logging
Persistent Storage
Metrics and Monitoring
Consensus Key
this
SAFE
Docker Compose Production YML
SAFE
AVS Hooks
Deposit funds
Task Definitions
Staking Strategies
Unpause the payment flow
AVS Governance Multisig
maximum voting power
minimum voting powe
ANNOUNCED_ADDRESSES
Register AVS with Eigen Layer
Deposit Rewards:
Register Operator to Eigen Layer
Register operator
different Consensus Key
Separation of Controller and Signing Keys for Operators