Contract Upgradability

Ocean uses UUPS proxies for upgradability. Each module contract (e.g., MintingManager, OCUSD) is behind a proxy managed by governance.

contract OCUSD is UUPSUpgradeable, ERC20Upgradeable { ... }

Upgrades are triggered via:

function _authorizeUpgrade(address newImplementation) internal override onlyRole(GOVERNANCE_ROLE) {}

Last updated