ShiftCTRL
  • Introduction
  • Introduction
    • Why ShiftCTRL
    • What is Austrian Economics
    • What is ShiftCTRL
    • Introducing Tabs
  • How it works
    • The core mechanism
    • Reserves
    • Managing vaults
    • Liquidation
    • CTRL+ALT+DEL
  • Guides
    • How to mint Tabs
    • How to withdraw reserves
  • Developer
    • Overview
    • Tab Protocol Smart Contract
      • Governance
      • Oracle
      • Token
      • Reserves
      • Vault
      • Keeper
      • Auction
    • Tab Oracle & Tab Keeper
  • Testnet
    • ShiftCTRL Public Testnet Launch
    • Testnet Participation Guide
    • Feedback
  • Governance
    • Decentralised governance
    • Vote delegation
    • Governance process
  • Download whitepaper
Powered by GitBook
On this page
  • ReserveSafe contract
  • ReserveRegistry contract
  1. Developer
  2. Tab Protocol Smart Contract

Reserves

PreviousTokenNextVault

Last updated 2 months ago

ReserveSafe contract

Tab Protocol stores BTC reserves into a dedicated ReserveSafe contract. No one has permission to unlock BTC from the Safe except Governance (for migration) or VaultManager contract, which is only authorized to perform withdrawal by vault owner.

ReserveRegistry contract

The ShiftCTRL community can propose the addition of new reserves (such as other forms of wrapped or bridged BTC) or the disabling of a reserve already registered through the protocol's governance module.

At inception, (Base Mainnet: ) is pre-registered in the ReserveRegistry contract and can be used to create a vault for minting Tabs.

Note: The ReserveRegistry contract supports reserve tokens with varying decimal values. For example, while cbBTC operates with 8 decimals, vaults at the protocol level can support up to 18 decimals. The system will call the ReserveSafe.getNativeTransferAmount function to retrieve the correct reserve amount based on the reserve type's decimal value.

Note:

Each Tab type is associated with default configuration values below regardless of Reserve Type in use:

  • Minimum reserve ratio: 180%

  • Liquidation ratio: 120%

These values can be adjusted by calling the GovernanceAction.updateTabParams function.

cbBTC
0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf