Oracles
Every decision a MORE Vault makes, whether to swap, lend, or rebalance leverage, relies on a single, trustworthy notion of price. Instead of hard-coding feeds inside each facet, the protocol centralises oracle governance in the Vaults Registry and exposes prices to vault logic through a thin, standard interface. This design keeps the data-plane fast, the upgrade surface small, and the trust model transparent.
Architectural Snapshot
Feed Aggregator
Delivers price in USD (8–18 decimals) for any supported asset. The protocol ships with Chainlink data feeds out of the box via the ubiquitous IAggregatorV2V3Interface
.
External Chainlink or Pyth contracts
Registry Pointer
Stores the oracle’s address and exposes an admin-gated updateOracle
hook so governance can rotate to a new feed contract without touching vault code.
BaseVaultsRegistry
Vault Facets
Read prices via the registry pointer: swaps perform slippage checks, lending facets compute health factors, Origami verifies A/L ratios, and the vault’s accounting library converts assets to USD for share valuation.
All strategy facets
Why Centralise the Pointer?
Single Source of Truth: A swap facet and a lending facet never disagree on “the price of WETH”; they all query the same address held in the registry.
Governance Flexibility: If a feed is deprecated or a chain adopts a faster oracle, admins call
updateOracle
once and every vault inherits the new data immediately—no diamond cut required.Risk Isolation: Oracle rotation is protected by the registry’s
DEFAULT_ADMIN_ROLE
, separate from day-to-day manager roles, so strategists cannot silently redirect price feeds.
Over-Collateralisation & Price Safety
DeFi loans in MORE Vaults are always over-collateralised. Liquidations are triggered when the on-chain oracle reports that collateral value falls below debt value. By using the same price source for:
Debt health checks in lending facets,
Slippage ceilings in swap facets, and
Net-asset valuation in vault accounting,
the protocol guarantees that a malicious or faulty feed would have to fool all these paths simultaneously to misprice user shares — a materially harder attack than spoofing a single contract.
Stable-Denomination Asset
The registry also stores the address of a canonical USD-stable token and its decimals. All price conversions normalise through this denomination asset before updating totalAssets
, ensuring every vault speaks the same “USD per share” language on dashboards.
Event & Monitoring Hooks
OracleUpdated (emitted by the registry): indexes can alert depositors when the feed changes.
Price Queried (optional off-chain metric): front-ends can display the last answer and round-ID from the Chainlink aggregator to surface oracle freshness.
Last updated