Ambient Docs
  • Introduction to Ambient
  • Concepts
    • AMMs
    • Concentrated Liquidity
    • Knockout Liquidity
    • Governance & Policy
    • Surplus Collateral
    • Permissioned Pools
    • Account Abstraction
  • Users
    • Swaps
    • LP Positions
    • Surplus Collateral
    • Dynamic Fees
    • Knockout Positions
    • Initializing Pools
    • Gasless Transactions
    • External Routers
  • Governance & Policy
    • Ops & Treasury Multisigs
    • Policy
    • Upgrading Code
    • Emergency
  • Developers
    • Deployed Contracts
    • Token Transfers
    • Type Conventions
    • DEX Contract Interface
      • userCmd Callpaths
      • Swaps
        • Hot Path Swap Migration
          • Directly Calling CrocSwapDex
          • External Swap Router
      • Flat LP Calls
      • Long Form Orders
      • Knockout LP Calls
      • Pool Initialization
      • Surplus Collateral
      • Router Calls
      • Relayer Calls
    • Query Contracts
      • CrocQuery Contract
      • CrocImpact Contract
    • Logs and Queries
    • Libraries and APIs
      • SDK
      • Indexer API
      • Subgraph
Powered by GitBook
On this page
  1. Governance & Policy

Upgrading Code

The base layer CrocSwapDex contract is built with an upgradeable architecture. New functionality can be added by installing additional proxy contracts. Broken or sub-optimal functionality can be fixed by re-installing existing proxy contracts. With 65,000 slots for unique proxy contracts, upgradeability is practically unlimited.

However since all proxy contracts have full access to the DEX contract's state and funds, introducing new code upgrades is an extremely careful process. Only the fully privileged treasury multisig can upgrade code. And then only after an extensive timelock, which gives all users with funds at the DEX time to carefully evaluate their comfort with the newly introduced code.

PreviousPolicyNextEmergency

Last updated 1 year ago