Everstrat.xyz | Docs
Contracts

AMM

The immutable bonding-curve contract that accepts ETH and handles entry and exit requests.

Responsibilities

  • accept ETH deposits and mint EVE
  • process immediate redemption when liquidity is sufficient
  • queue redemptions when liquidity is insufficient
  • expose ETH-first price views

Key Roles

RoleMeaning
ADMIN_ROLEconfigure connector weight, pause, unpause
CONTROLLER_ROLEallow Controller-mediated redemption processing

Key Functions

function enter(uint256 _deposit, uint256 _minTokensToMint) external payable
function exit(uint256 _requestedETH, uint256 _maxTokensToBurn, uint256 _priceTolerance) external returns (uint256)
function processRedemption(uint256 _batchId, address _user) external payable
function cancelRedemption(uint256 _batchId) external

Critical Behavior

Oracle is not used in the normal enter/exit hot path. It is used for bootstrap minimum deposit checks and USD-facing view functions.

When ETH liquidity is insufficient, AMM hands off request state to ExitQueue and emits the user-facing queue event.

Last updated on

On this page