Constructor calls _disableInitializers()
OpenEden's assessment for RD-F-023 — scored green on the v1.7.0 rubric. The evidence below is the curator's reasoning for this score.
Evidence summary #
V5Impl constructor confirmed to call _disableInitializers() via GitHub source inspection. USDO implementation follows the same OZ pattern. TBillPriceOracle uses a standard non-proxy constructor — _disableInitializers not applicable for non-proxy contracts. KycManager (deprecated) uses Ownable constructor. The proxied implementation contracts (V5, USDO) correctly call _disableInitializers.
Sources #
- EtherscanUSDO Implementation — Etherscan Verified SourceUSDO implementation 0x87e3ba — OZ Initializable pattern confirmedretrieved 2026-05-16
- OpenEdenVaultV5Impl.sol — GitHub SourceV5Impl constructor: constructor() { _disableInitializers(); }retrieved 2026-05-16
Methodology #
Determine whether implementation contract constructors call `_disableInitializers()` to prevent re-initialization of the implementation directly.
See the full factor methodology and distribution across all protocols →