> ## Documentation Index
> Fetch the complete documentation index at: https://mintlify.com/reserve-protocol/reserve-index-dtf/llms.txt
> Use this file to discover all available pages before exploring further.

# Glossary

> Terms and definitions for Reserve Folio protocol

## Core Concepts

<AccordionGroup>
  <Accordion title="Folio" icon="folder-open">
    A portfolio of ERC20-compliant assets managed onchain. Folios are represented as ERC20 tokens themselves, with each token representing a proportional share of the underlying basket of assets.

    **Example:** A "DeFi Blue Chip" Folio might hold ETH, WBTC, and stablecoins in specific proportions.
  </Accordion>

  <Accordion title="Basket" icon="basket-shopping">
    The collection of ERC20 tokens held by a Folio, along with their target weights or proportions.

    **Composition:** Can be changed through governance

    **Rebalancing:** Adjusted through dutch auctions
  </Accordion>

  <Accordion title="Basket Unit (BU)" icon="cube">
    A standardized unit representing the ideal composition of the basket. Used to calculate surpluses and deficits during rebalancing.

    **Unit:** Often expressed as quantities like `D27{tok/BU}` (tokens per basket unit)
  </Accordion>

  <Accordion title="Collateral" icon="coins">
    The underlying ERC20 tokens held in a Folio's basket. Users deposit collateral when minting Folio shares and receive collateral when redeeming.
  </Accordion>

  <Accordion title="Share" icon="certificate">
    An ERC20 token representing proportional ownership of a Folio's assets. Users receive shares when minting and burn shares when redeeming.

    **Pro-rata:** Claims to the underlying basket are always proportional to share ownership
  </Accordion>
</AccordionGroup>

## Rebalancing Terms

<AccordionGroup>
  <Accordion title="Rebalance" icon="balance-scale">
    The process of adjusting a Folio's basket composition to match target weights. Executed through a series of dutch auctions over a defined period.

    **Initiated by:** `REBALANCE_MANAGER` role

    **Duration:** Controlled by TTL (time-to-live)
  </Accordion>

  <Accordion title="Rebalance Target" icon="bullseye">
    A set of tokens with target weights that the Folio aims to achieve through rebalancing.

    **Components:**

    * Target tokens list
    * Weight ranges (low, spot, high)
    * Price ranges for each token
    * Rebalance limits
  </Accordion>

  <Accordion title="Rebalance Limits" icon="sliders">
    Range of basket units per share that define the rebalancing path.

    **Structure:**

    ```solidity theme={null}
    struct RebalanceLimits {
      uint256 low;  // D18{BU/share} Buy up to this level
      uint256 spot; // D18{BU/share} Point estimate
      uint256 high; // D18{BU/share} Sell down to this level
    }
    ```
  </Accordion>

  <Accordion title="Weight Range" icon="weight-hanging">
    The acceptable range of weights for a token in the basket.

    **Structure:**

    ```solidity theme={null}
    struct WeightRange {
      uint256 low;  // D27{tok/BU} Minimum weight
      uint256 spot; // D27{tok/BU} Point estimate  
      uint256 high; // D27{tok/BU} Maximum weight
    }
    ```

    **Control:** If `weightControl` is enabled, `AUCTION_LAUNCHER` can adjust within range
  </Accordion>

  <Accordion title="TTL (Time-to-Live)" icon="hourglass">
    The maximum duration a rebalance can remain active. After TTL expires, no new auctions can be started (though existing auctions can complete).

    **Extension:** Can be extended by `AUCTION_LAUNCHER` near expiration
  </Accordion>

  <Accordion title="Surplus" icon="arrow-up">
    When the Folio holds more of a token than the target basket composition requires. Surpluses are sold during rebalancing.

    **Calculation:** Relative to `RebalanceLimits.high`
  </Accordion>

  <Accordion title="Deficit" icon="arrow-down">
    When the Folio holds less of a token than the target basket composition requires. Deficits are bought during rebalancing.

    **Calculation:** Relative to `RebalanceLimits.low`
  </Accordion>
</AccordionGroup>

## Auction Terms

<AccordionGroup>
  <Accordion title="Dutch Auction" icon="gavel">
    An auction mechanism where the price starts high and decreases over time until a buyer accepts. Used for all token swaps during rebalancing.

    **Curve:** Exponential decay from start price to end price

    **Termination:** When fully filled or time expires
  </Accordion>

  <Accordion title="Auction" icon="gavel">
    A specific instance of trading during rebalancing where participants can exchange tokens with the Folio at dynamically decreasing prices.

    **Limitation:** Only one auction can be active at a time per Folio

    **Participation:** Generally permissionless (unless restricted to trusted fillers)
  </Accordion>

  <Accordion title="Start Price" icon="chart-line">
    The initial (most optimistic) price at the beginning of a dutch auction. Calculated from the extreme bounds of the provided price ranges.

    **Direction:** Favorable to the Folio (typically above or below market depending on buy/sell)
  </Accordion>

  <Accordion title="End Price" icon="chart-line">
    The final (most pessimistic) price at the end of a dutch auction. Calculated from the opposite extreme of the price ranges.

    **Direction:** Less favorable to the Folio but still within acceptable bounds
  </Accordion>

  <Accordion title="Price Range" icon="arrows-left-right">
    The acceptable range of prices for a token during an auction.

    **Structure:**

    ```solidity theme={null}
    struct PriceRange {
      uint256 low;  // D27{UoA/tok} Lower bound
      uint256 high; // D27{UoA/tok} Upper bound
    }
    ```

    **Maximum Range:** 100x (1e2) - auction can span at most 4 orders of magnitude
  </Accordion>

  <Accordion title="Lot Size / Sell Amount" icon="scale-balanced">
    The quantity of sell token available in an auction. Determined by the limiting factor between surplus and deficit.

    **Dynamic:** Can increase or decrease over time depending on which side is limiting
  </Accordion>

  <Accordion title="Bid" icon="hand-holding-dollar">
    An offer to exchange tokens with the Folio at the current auction price. Participants send buy tokens and receive sell tokens.

    **Partial Fills:** Allowed - can fill any amount up to `sellAmount`
  </Accordion>

  <Accordion title="Restricted Period" icon="clock">
    The initial period of a rebalance when only the `AUCTION_LAUNCHER` can open auctions. Provides the trusted launcher time to act before permissionless participation.

    **Duration:** Typically includes a 120s buffer minimum

    **Extension:** Gets bumped when `AUCTION_LAUNCHER` actively uses it
  </Accordion>

  <Accordion title="Permissionless Period" icon="unlock">
    The period after the restricted period when anyone can open auctions with default parameters.

    **Purpose:** Ensures liveness even if `AUCTION_LAUNCHER` is offline

    **Parameters:** Uses `spot` values from rebalance configuration
  </Accordion>
</AccordionGroup>

## Role Terms

<AccordionGroup>
  <Accordion title="DEFAULT_ADMIN_ROLE" icon="crown">
    The primary administrative role with full control over Folio configuration.

    **Expected:** Timelock of Slow Folio Governor

    **Powers:**

    * Add/remove tokens from basket
    * Set fees
    * Configure auction parameters
    * Manage roles
    * Close auctions

    **Security:** Highest trust level, longest timelock
  </Accordion>

  <Accordion title="REBALANCE_MANAGER" icon="sliders">
    The role responsible for initiating and managing rebalances.

    **Expected:** Timelock of Fast Folio Governor

    **Powers:**

    * Start rebalances with parameters
    * End rebalances
    * Close auctions
    * Set rebalance limits

    **Security:** Medium trust level, shorter timelock
  </Accordion>

  <Accordion title="AUCTION_LAUNCHER" icon="rocket">
    A semi-trusted role that opens auctions and provides market-aware parameters.

    **Expected:** EOA or multisig

    **Powers:**

    * Open auctions within approved ranges
    * Select price subranges (if `priceControl` enabled)
    * Adjust basket weights (if `weightControl` enabled)
    * Perform atomic swaps (if `ATOMIC_SWAP` mode)
    * End rebalances

    **Limitations:** Can only operate within bounds set by `REBALANCE_MANAGER`

    **Risk:** Can cause value leakage if malicious, but cannot guarantee they benefit (except in ATOMIC\_SWAP mode)
  </Accordion>
</AccordionGroup>

## Price Control Modes

<AccordionGroup>
  <Accordion title="PriceControl.FULL" icon="lock">
    The `AUCTION_LAUNCHER` has no control over prices and must use governance-provided ranges.

    **Security:** Highest - no price manipulation possible

    **Execution:** May be less optimal due to stale prices

    **Best for:** Folios with untrusted or public launchers
  </Accordion>

  <Accordion title="PriceControl.PARTIAL" icon="lock-open">
    The `AUCTION_LAUNCHER` can select a subset of the governance-approved price range for each auction.

    **Security:** Medium - can start auctions at suboptimal prices

    **Risk:** Value leakage to MEV searchers possible

    **Execution:** Better price precision, improved execution

    **Best for:** Folios with semi-trusted launchers
  </Accordion>

  <Accordion title="PriceControl.ATOMIC_SWAP" icon="unlock">
    The `AUCTION_LAUNCHER` can perform atomic swaps at fixed prices within the approved range.

    **Security:** Lowest - full price control

    **Risk:** Can cause value leakage AND be the beneficiary

    **Execution:** Best possible - no MEV leakage, optimal prices

    **Best for:** Highly trusted, sophisticated launchers
  </Accordion>
</AccordionGroup>

## Fee Terms

<AccordionGroup>
  <Accordion title="TVL Fee / Management Fee" icon="percent">
    A continuous fee charged on assets under management (AUM), implemented as share inflation.

    **Rate:** Expressed annually (e.g., 50 bps = 0.5% per year)

    **Minimum:** 15 basis points

    **Maximum:** 10% annually

    **Accrual:** Every 24 hours (as of v4.0.0)

    **DAO Cut:** Minimum 15 bps goes to ecosystem DAO
  </Accordion>

  <Accordion title="Mint Fee" icon="coins">
    A one-time fee charged when minting Folio shares.

    **Minimum:** 15 basis points

    **Maximum:** 5%

    **DAO Cut:** Minimum 15 bps goes to ecosystem DAO

    **Note:** No redemption fee
  </Accordion>

  <Accordion title="Fee Floor" icon="arrow-down-1-9">
    The minimum fee that must be charged, with the minimum going to the ecosystem DAO.

    **Default:** 15 basis points

    **Adjustment:** Can be lowered by DAO globally or per-Folio

    **Purpose:** Ensures sustainable funding for protocol development
  </Accordion>

  <Accordion title="Fee Recipient" icon="user">
    An address that receives a portion of collected fees.

    **Configuration:** Set by governance

    **Multiple Recipients:** Supported - fees split by configured portions
  </Accordion>
</AccordionGroup>

## Staking Terms

<AccordionGroup>
  <Accordion title="StakingVault" icon="vault">
    A contract that holds staked Folio tokens and distributes rewards.

    **Purpose:**

    * Earn rewards in multiple tokens
    * Gain voting power for governance
    * Align long-term incentives

    **Owner:** Community Governor
  </Accordion>

  <Accordion title="Staked Token" icon="layer-group">
    The underlying token (typically Folio shares) deposited into the StakingVault.

    **Voting Power:** Staked tokens provide governance voting rights
  </Accordion>

  <Accordion title="Reward Token" icon="gift">
    A token distributed to stakers as rewards.

    **Multiple Rewards:** StakingVault supports simultaneous distribution of multiple reward tokens

    **Configuration:** Added/removed by vault owner
  </Accordion>

  <Accordion title="Reward Half-Life" icon="hourglass-half">
    The time period over which unclaimed rewards decay by half.

    **Purpose:** Creates time preference for claiming rewards

    **Configuration:** Set per reward token by vault owner
  </Accordion>

  <Accordion title="Unstaking Delay" icon="clock">
    A waiting period between initiating unstaking and being able to withdraw tokens.

    **Purpose:**

    * Prevent governance attacks (stake-vote-unstake)
    * Support optimistic governance patterns
    * Align long-term interests

    **Configuration:** Set by vault owner, can be 0
  </Accordion>
</AccordionGroup>

## Governance Terms

<AccordionGroup>
  <Accordion title="FolioGovernor" icon="landmark">
    The canonical governance contract for Folios.

    **Type:** Time-based governor using OpenZeppelin Governor framework

    **Voting Token:** Typically staked Folio shares from StakingVault

    **Types:**

    * Slow Governor (long timelock)
    * Fast Governor (shorter timelock)
  </Accordion>

  <Accordion title="Timelock" icon="clock">
    A delay between when a governance proposal passes and when it can be executed.

    **Purpose:** Gives users time to react to governance decisions (e.g., redeem before unfavorable changes)

    **Duration:** Varies by governor type and urgency of powers
  </Accordion>

  <Accordion title="Optimistic Governance" icon="forward-fast">
    A governance pattern where actions take effect immediately but can be challenged and reverted.

    **Slashing:** v5.0.0 adds `StakingVault.burn()` to enable slashing malicious proposers

    **Trade-off:** Faster execution vs. risk of malicious actions
  </Accordion>

  <Accordion title="Community Governor" icon="users">
    The governor that controls the StakingVault.

    **Powers:**

    * Add/remove reward tokens
    * Set reward parameters
    * Configure unstaking delay

    **Separate from:** Folio governors (different scope of control)
  </Accordion>
</AccordionGroup>

## Technical Terms

<AccordionGroup>
  <Accordion title="D18" icon="calculator">
    A precision multiplier representing 1e18 (18 decimals).

    **Usage:** Percentages, simple ratios

    **Example:** `D18{1}` is a percentage value with 18 decimal precision
  </Accordion>

  <Accordion title="D27" icon="calculator">
    A precision multiplier representing 1e27 (27 decimals).

    **Usage:** Prices, exchange rates, high-precision ratios

    **Example:** `D27{UoA/tok}` is a price with 27 decimal precision
  </Accordion>

  <Accordion title="Unit of Account (UoA)" icon="dollar-sign">
    A standardized unit for expressing prices and values.

    **Common:** nanoUSD (1 billionth of a USD)

    **Flexibility:** Can be any consistent unit
  </Accordion>

  <Accordion title="nanoUSD" icon="dollar-sign">
    One billionth of a USD (1e-9 USD), commonly used as the Unit of Account.

    **Why:** Provides precision for assets with very low or very high USD values
  </Accordion>

  <Accordion title="Quanta / Quantum" icon="atom">
    The smallest indivisible unit of a token, considering its decimals.

    **Example:** For USDC (6 decimals), 1 quantum = 0.000001 USDC
  </Accordion>

  <Accordion title="Read-Only Reentrancy" icon="shield">
    A vulnerability where external contracts read Folio state during a state change and rely on inconsistent data.

    **Protection:** Check `stateChangeActive()` before reading state

    **Note:** Folio itself is protected; consuming protocols must check
  </Accordion>

  <Accordion title="Trusted Fillers" icon="handshake">
    Whitelisted entities that can provide async fills for auctions.

    **Implementation:** CoW Swap integration

    **Benefits:** Better prices, MEV protection

    **Configuration:** Enabled per Folio by governance
  </Accordion>

  <Accordion title="MEV (Maximal Extractable Value)" icon="robot">
    Profit that can be extracted by reordering, inserting, or censoring transactions.

    **In Auctions:** Searchers can extract value by bidding at optimal moments

    **Mitigation:** Tight price ranges, trusted fillers, atomic swaps
  </Accordion>
</AccordionGroup>

## DAO Terms

<AccordionGroup>
  <Accordion title="FolioDAOFeeRegistry" icon="building-columns">
    Contract that manages fees paid to the broader ecosystem DAO.

    **Responsibilities:**

    * Set fee floors
    * Collect DAO portion of fees
    * Configure per-Folio fee overrides

    **Owner:** Ecosystem DAO
  </Accordion>

  <Accordion title="FolioVersionRegistry" icon="code-branch">
    Contract that tracks approved versions of FolioDeployer implementations.

    **Purpose:** Ensure Folios can upgrade to vetted implementations

    **Owner:** Ecosystem DAO
  </Accordion>

  <Accordion title="RoleRegistry" icon="address-book">
    External contract that manages role assignments across the ecosystem.

    **Interface:** Must implement `IRoleRegistry`

    **Dependency:** Required for Folio deployment
  </Accordion>
</AccordionGroup>

## Contract Terms

<AccordionGroup>
  <Accordion title="FolioDeployer" icon="hammer">
    Contract that deploys new Folio instances.

    **Versioning:** Multiple versions can exist, tracked by `FolioVersionRegistry`

    **Upgrades:** New versions deployed by DAO
  </Accordion>

  <Accordion title="FolioProxy" icon="right-left">
    A proxy contract that delegates calls to Folio implementation.

    **Purpose:** Enable upgrades while maintaining storage and address

    **Validation:** Checks upgrades against `FolioVersionRegistry`
  </Accordion>

  <Accordion title="GovernanceDeployer" icon="sitemap">
    Contract that deploys governance systems (staking tokens and governors).

    **Deploys:**

    * StakingVault
    * FolioGovernor instances
    * Associated contracts
  </Accordion>
</AccordionGroup>

## Related Documentation

<CardGroup cols={2}>
  <Card title="FAQ" icon="circle-question" href="/resources/faq">
    Frequently asked questions
  </Card>

  <Card title="Unit System" icon="ruler" href="/resources/units">
    Detailed unit documentation
  </Card>

  <Card title="Architecture" icon="sitemap" href="/essentials/architecture">
    System architecture overview
  </Card>

  <Card title="API Reference" icon="code" href="/api-reference/core/folio">
    Contract API documentation
  </Card>
</CardGroup>
