Byzantine Finance
Website - Home🖥️ For Developers
  • 👋Introduction
    • What is Byzantine Finance?
      • Permissionless strategy vaults
      • Strategy layer & infrastructure layer - Explain Like I'm 5
      • Architecture Overview
    • Explanation of terms
    • Restaking explained
  • Media kit
  • 🔑Byzantine Vaults
    • What are Byzantine vaults?
    • Features of Native Vaults
      • Byzantine Oracle
      • Best practices for Validator Managers
    • Types of Native Vaults
      • Solo Staker Vaults
      • Partner Validated Vaults
      • Distributed Validator Vaults
  • ↔️Vault Interaction
    • Deposit
      • Deposit to ERC20 Vaults
      • Deposit to Native Vaults
    • Withdraw
      • Withdraw from ERC20 Vaults
      • Withdraw from Native Vaults
    • Claim Rewards
      • Restaking Rewards
        • EigenLayer Rewards
        • Symbiotic Rewards
  • 🎛️Vault Creation
    • Overview
      • Vault Configuration Guide
      • Vault Parameters
        • Byzantine Vault Parameters
        • Native Vault Parameters
        • EigenLayer Parameters
        • Symbiotic Parameters
      • Roles
    • Single Protocol Vaults
      • EigenLayer Vault
        • Eigen ERC20 Vault
        • Eigen Native Vault
      • Symbiotic Vault
        • Sym ERC20 Vault
        • Sym Native Vault
    • Cross Protocol Vaults
      • Eigen Layer / Symbiotic ERC20 Vault
  • 🤖Curation
    • Overview
    • Curator Related Roles
    • Vault Management
    • Strategy Management
      • EigenLayer Strategy
      • Symbiotic Strategy
      • Cross Protocol Vault
    • Curation Fee Management
  • 🌐Node operators
    • Operators in the Byzantine ecosystem
    • Register as a Staking Operator
    • Staking
    • Restaking Operator
      • Symbiotic
      • EigenLayer
      • Allocation to existing Restaking Operators
      • Creation of on-demand Restaking Operators
  • Claiming DV operator fees
Powered by GitBook
On this page
  • SuperERC20Vault Curator Guide
  • SuperERC20Vault: Asset Flow and Operational Architecture
  • Curator Roles
  • Key Functions
  • Important Notes
  1. Curation
  2. Strategy Management

Cross Protocol Vault

PreviousSymbiotic StrategyNextCuration Fee Management

Last updated 1 day ago

SuperERC20Vault Curator Guide

This guide explains the curator-specific functionality of the SuperERC20Vault, which is a vault that splits deposits between Symbiotic and EigenLayer protocols. For information about curating the underlying vaults (Symbiotic and EigenLayer), please refer to their respective documentation sections.

SuperERC20Vault: Asset Flow and Operational Architecture

Curator Roles

The SuperERC20Vault has two main curator roles:

  1. CURATOR_ROLE: Allows managing the vault's asset distribution and rebalancing

  2. CURATOR_FEE_CLAIMER_ROLE: Allows claiming curator fees from both underlying vaults

Key Functions

Rebalancing Assets

The curator can adjust the distribution ratio between Symbiotic and EigenLayer vaults through a two-step rebalancing process:

  1. Initiate Rebalancing

function rebalance(uint256 _newSymRatio) external
  • _newSymRatio: New target percentage (0-10000) to allocate to Symbiotic vault

  • Only callable by addresses with CURATOR_ROLE

  • Initiates withdrawals from both underlying vaults

  • Puts the vault in rebalancing mode

  • During rebalancing:

    • New deposits are accepted but held in the SuperVault

    • Withdrawals are tracked but not processed from underlying vaults

    • Assets will be distributed according to new ratio once rebalancing completes

  1. Complete Rebalancing

function completeRebalancing() external
  • Only callable by addresses with CURATOR_ROLE

  • Can only be called when rebalancing is in progress

  • Completes the rebalancing process by:

    • Completing withdrawals from both underlying vaults

    • Depositing assets into vaults according to new ratio

    • Reserving assets for pending withdrawals

    • Exiting rebalancing mode

Claiming Curator Fees

function claimCuratorFee(IERC20 token, address recipient) external
  • Only callable by addresses with CURATOR_FEE_CLAIMER_ROLE

  • Claims curator fees from both underlying vaults:

    • Symbiotic vault fees

    • EigenLayer vault fees

  • token: The token to claim fees for

  • recipient: Address to receive the claimed fees

View Functions

function getDistributionRatio() external view returns (uint256 symRatio, uint256 eigenRatio)
  • Returns current distribution ratio between Symbiotic and EigenLayer vaults

  • Values are in basis points (0-10000)

function rebalancingStatus() external view returns (bool isRebalancing, uint256 targetSymRatio)
  • Returns current rebalancing status

  • isRebalancing: Whether vault is currently rebalancing

  • targetSymRatio: Target Symbiotic ratio after rebalancing (0 if not rebalancing)

Important Notes

  1. The SuperVault manages the underlying vaults as private vaults, meaning only the SuperVault can deposit into them.

  2. During rebalancing:

    • New deposits are accepted but temporarily held

    • Withdrawals are tracked but fulfilled after rebalancing completes

    • Assets for pending withdrawals are reserved before reinvesting

  3. The curator fee structure is inherited from the underlying vaults, but the SuperVault acts as the fee claimer for both.

  4. For information about curating the underlying Symbiotic and EigenLayer vaults, please refer to their respective documentation sections.

🤖