★ Immutable oracle address
Cap (cUSD / stcUSD)'s assessment for RD-F-180 — scored green on the v1.7.0 rubric. The evidence below is the curator's reasoning for this score.
Evidence summary #
[★ CRITICAL] GREEN — Oracle adapter addresses stored in mutable mappings in PriceOracle.sol (oracleData[_asset] and backupOracleData[_asset]). Admin can replace any oracle adapter via setPriceOracleData() and setPriceBackupOracleData() without contract redeployment. No immutable keyword on oracle addresses. PriceOracle is a UUPS proxy (upgradeable). The Morpho stcUSD adapter (0x8E3386B2...) has immutable internal parameters, but Cap's PriceOracle wrapper is admin-replaceable at the protocol layer — this satisfies F180. F180 green means Cap can reprice collateral by swapping oracle adapters in response to a depeg event.
Sources #
- EtherscanOracle proxy transaction history — admin oracle replacement callsOracle contract 0xcD7f45566bc0E7303fB92A93969BB4D3f6e662bb: ERC1967 proxy pattern — UUPS upgradeable; transaction history shows Set Price Oracle and Set Price Backup calls confirming admin-replaceable adapters in practiceretrieved 2026-05-17
- PriceOracle.sol — mutable oracle adapter mappings (F180 determination)PriceOracle.sol setPriceOracleData() and setPriceBackupOracleData() functions: oracleData[_asset] = _oracleData stored in mutable mapping; no immutable keyword on oracle addressesretrieved 2026-05-17
Methodology #
Determine whether any collateral oracle address is marked `immutable` in protocol config with no admin-replaceable adapter wrapper, preventing the protocol from repricing when the upstream asset depegs.
See the full factor methodology and distribution across all protocols →