Token Eligibility Requirements
For a token to be eligible as collateral in Osito Protocol, it must meet specific objective criteria that are verified on-chain. These requirements enable Osito's mathematical model to work effectively.
Core Design Principle
Osito's approach is to calculate lending limits based on worst-case scenarios rather than token value. The eligibility criteria don't attempt to filter for "quality" tokens - they establish the conditions necessary for the mathematical model to function correctly.
Core Eligibility Criteria
Token eligibility is determined by the OsitoToken.sol
contract, which verifies:
- Fixed Token Supply: The token must have a verifiably fixed supply
- Verifiably Burned LP: A portion of the token's liquidity pool must be permanently destroyed
Why These Requirements Matter
1. Fixed Supply Requirement
The fixed supply requirement ensures:
- The total token supply is known and cannot be manipulated
- The protocol can accurately calculate dumpable tokens
- The borrow limit calculation can function correctly
This requirement doesn't make a token "good" - it simply makes the supply predictable for calculations.
2. Burned LP Requirement
The burned LP requirement is important because:
- It forces users to swap tokens for BERA rather than directly withdrawing liquidity
- Creates a permanent liquidity commitment that can't be reversed
- Establishes a baseline for calculating the worst-case scenario
Key Insight: Without burned LP, a user could withdraw liquidity directly, bypassing the price impact that the borrow limit calculation accounts for.
Verification Process
1. Fixed Supply Verification
Tokens must be deployed by either:
- Panda Factory - A whitelisted token deployer on Berachain
- Ramen - A whitelisted token deployer on Berachain
These deployers implement fixed supply constraints that ensure:
- No additional tokens can be minted after creation
- Token supply cannot be manipulated through inflation
- The protocol can rely on supply figures for calculations
2. Liquidity Pool Verification
The token must have liquidity in a pair with wBERA on Kodiak, with a portion of the LP tokens permanently burned. The protocol verifies:
- The existence of a valid liquidity pool on Kodiak
- A minimum threshold of burned LP tokens (sent to dead address)
- Sufficient liquidity depth for borrow limit calculations
// From OsitoToken.sol
function isEligibleToken(address token) external view override returns (bool) {
// 1. Check if the token deployer is whitelisted
if (!isWhitelistedDeployer(token)) {
return false;
}
// 2. Check if there is a valid pair with wBERA
address pair = getTokenWberaPair(token);
if (pair == address(0)) {
return false;
}
// 3. Check if LP tokens have been burned (verifying liquidity commitment)
uint256 burnedLP = IERC20(pair).balanceOf(BURN_ADDRESS);
if (burnedLP < MINIMUM_BURNED_LP) {
return false;
}
return true;
}
Scenarios These Requirements Prevent
The eligibility requirements specifically defend against this scenario:
- User creates a token
- User provides BERA liquidity to their token's pool
- User obtains a loan by depositing their tokens as collateral
- User tries to withdraw their liquidity directly (bypassing price impact)
- User extracts more BERA than they borrowed
By requiring burned LP, the protocol forces the extraction of BERA by swapping tokens (incurring price impact), which is exactly what the max_borrow formula accounts for.
Checking Token Eligibility
You can verify if a token is eligible through:
- Osito dApp: Tokens listed in the interface are automatically verified as eligible
- Contract Call: Call
OsitoToken.isEligibleToken(tokenAddress)
directly - Token Explorer: Check the token's status on Osito's token explorer page
Benefits of Objective Eligibility
This objective approach to token eligibility offers several advantages:
- Permissionless Integration: Any token meeting the criteria can be used immediately
- Minimal Governance: No votes or subjective assessments needed
- Mathematical Approach: Security derives from calculations, not subjective trust
Making Your Token Eligible
If you're a token developer and want to make your token eligible for Osito Protocol:
- Deploy your token using Panda Factory or Ramen with a fixed supply
- Create a liquidity pool with wBERA on Kodiak
- Burn some LP tokens by sending them to the dead address:
0x000000000000000000000000000000000000dEaD
Once these steps are completed, your token will automatically be eligible for use in Osito Protocol, regardless of its utility, reputation, or market value.