Token Qualification

Osito Protocol requires tokens to meet specific objective criteria to be used as collateral. These requirements are technical necessities for the protocol's mathematical model to function correctly.

Token Qualification Requirements

The protocol's borrow limit formula:

max_borrow = pool_BERA - extractable_BERA

depends on two critical requirements:

  1. We can accurately calculate the total circulating supply
  2. Token sellers must experience price impact when extracting BERA

For these requirements to be met, tokens must satisfy two specific criteria.

The Two Essential Requirements

1. Fixed Token Supply

Tokens must have a fixed supply, which ensures that:

dumpable_tokens = total_supply - pool_tokens - total_staked - total_deposited

remains an accurate calculation.

Why Fixed Supply Matters

Without fixed supply:

  1. A token could have an apparent supply of 10,000 when qualified
  2. The protocol calculates borrow limits based on this supply
  3. If 1,000,000 more tokens were minted after qualification
  4. The protocol's security calculations would no longer be valid

Fixed supply ensures the borrow limit calculation remains accurate throughout the token's use in the protocol.

2. Verifiably Burned LP

A portion of the token's LP tokens must be permanently burned (sent to a dead address), which ensures that:

  1. Price impact calculations apply when tokens are sold
  2. Users cannot bypass the AMM's price impact by directly withdrawing liquidity

Why Burned LP Matters

Without burned LP:

  1. Someone could create a pool with 1,000 BERA and 10,000 TOKEN
  2. They could deposit TOKEN as collateral and borrow BERA
  3. Instead of selling tokens (and experiencing price impact), they could simply withdraw their LP tokens
  4. This would bypass the price impact assumptions in the security model

Burned LP tokens force users to swap tokens (which have price impact) rather than withdraw liquidity directly, keeping the mathematical model intact.

Verification Process

The verification process is implemented directly in the protocol:

Fixed Supply Verification

Tokens must come from known deployers with provably fixed supply, where:

  • No additional tokens can be minted after creation
  • No mint authority exists
  • Supply cannot be manipulated
function isWhitelistedDeployer(address token) internal view returns (bool) {
    // Get the deployer of the token
    address deployer = getTokenDeployer(token);
    
    // Check if deployer is whitelisted
    return whitelistedDeployers[deployer];
}

Burned LP Verification

The protocol verifies that LP tokens have been permanently burned:

uint256 burnedLP = IERC20(pair).balanceOf(BURN_ADDRESS);
if (burnedLP < MINIMUM_BURNED_LP) {
    return false;
}

Objective Requirements, Not Quality Assessment

It's important to understand that these requirements are purely technical - they're not assessments of a token's quality, utility, or value. They simply ensure the mathematical model can function correctly.

A token can meet these criteria regardless of:

  • Its utility
  • Its community size
  • Its market value

As long as the token meets the technical requirements necessary for the borrow limit calculation to function, it can be used in the protocol.

How to Make a Token Eligible

To create an eligible token:

  1. Deploy your token using a whitelisted factory to ensure fixed supply
  2. Create a liquidity pool with BERA on Kodiak
  3. Burn some LP tokens (send to the dead address)

Once completed, your token becomes eligible for use in Osito, without any governance approval.

Benefits of This Approach

This token qualification process:

  1. Uses objective verification instead of subjective assessment
  2. Ensures the mathematical security model remains valid
  3. Allows permissionless integration while maintaining security
  4. Minimizes governance requirements