Architecture & UUPS

Cetra's smart contracts are heavily optimized for longevity and modularity. The Pool.sol contract acts as the central hub connecting all logic.

Universal Upgradeable Proxy Standard (UUPS)

We deploy using OpenZeppelin's UUPS Upgradeable pattern.

  • What this means: The protocol is deployed using a transparent proxy architecture. Users always map to the single Proxy contract address, which holds all of the protocol's state and assets. The proxy delegates logic to a separate Implementation contract.

  • Why it matters: If a bug is discovered or an enhancement is built (such as upgrading logic to V2.5), developers can deploy a new Implementation contract and point the Proxy to it. User funds never need to be migrated, and contracts never need to be reset.

The Engine Room

The current V2 architecture splits logic across multiple focused files:

  1. Pool.sol (The primary user entry point handling supply(), withdraw(), borrow(), repay()).

  2. InterestRateModel.sol (Calculates the liquidity rates).

  3. DToken.sol / DebtToken.sol (On-chain accounting).

  4. PriceOracles (Providing absolute dollar value for risk calculations).

Last updated

Was this helpful?