veNFT, bveRETRO, and veRETRO

This document outlines the core tokenomics components of our platform: veNFT, bveRETRO, and veRETRO. Understanding these elements is crucial for developers working on integration, modification, or extension of our protocol.

veNFT (Vote-Escrowed NFT)

What is veNFT?

veNFT is a non-fungible token representing locked RETRO tokens. It’s the cornerstone of our governance and reward system.

Key Characteristics

  • Non-transferable: veNFTs are soul-bound to the address that created them.
  • Time-weighted: The voting power and reward accrual are based on the amount locked and lock duration.
  • Expirable: veNFTs have an expiration date, after which they can be burned to retrieve the locked RETRO.

Usage in the Protocol

  • Governance voting
  • Gauge weight voting
  • Boost for liquidity mining rewards
  • Access to certain protocol features

bveRETRO (Boost veRETRO)

What is bveRETRO?

bveRETRO is a tokenized representation of veNFT, allowing for a more liquid form of locked RETRO.

Key Characteristics

  • Transferable: Unlike veNFT, bveRETRO can be transferred between addresses.
  • Mintable/Burnable: Users can mint bveRETRO by locking RETRO or burn it to retrieve locked RETRO.
  • Rebasing: The token balance adjusts over time to reflect the decay of the underlying veNFT.

Implementation Details

contract bveRETRO is ERC20, Ownable {
    veNFT public veNFTContract;

    function mint(uint256 amount, uint256 lockDuration) external {
        // Implementation logic
    }

    function burn(uint256 amount) external {
        // Implementation logic
    }

    function rebase() external {
        // Implementation logic
    }
}

Usage in the Protocol

  • Tradable version of veNFT
  • Usable in certain liquidity pools
  • Allows for more flexible strategies in the ecosystem

veRETRO (Vote-Escrowed RETRO)

What is veRETRO?

veRETRO is not a separate token, but rather a concept representing the voting power and reward-earning potential of locked RETRO tokens.

Key Characteristics

  • Not a token: veRETRO is a measurement, not a separate token.
  • Dynamic: The amount of veRETRO changes based on lock duration and amount.
  • Used for calculations: Determines voting power and reward multipliers.

Usage in the Protocol

  • Determining voting power in governance
  • Calculating boost for liquidity mining rewards
  • Weighting in gauge voting

Relationships and Interactions

  1. RETRO → veNFT:

    • Users lock RETRO to create veNFT
    • veNFT represents a time-locked position of RETRO
  2. veNFT → bveRETRO:

    • bveRETRO is minted based on the veNFT’s locked amount and duration
    • bveRETRO balance rebases to reflect the underlying veNFT’s decay
  3. veNFT → veRETRO:

    • veRETRO is calculated from veNFT’s locked amount and remaining duration
    • veRETRO determines the actual voting power and boost
  4. bveRETRO → veRETRO:

    • bveRETRO holders indirectly possess veRETRO voting power
    • The protocol calculates equivalent veRETRO for bveRETRO in relevant functions