Constructor calls _disableInitializers()
Falcon Finance's assessment for RD-F-023 — scored yellow on the v1.7.0 rubric. The evidence below is the curator's reasoning for this score.
Evidence summary #
sUSDf impl: Initializable (OZ) + _disableInitializers mechanism confirmed per Etherscan page. USDf impl: constructor nonpayable, _disableInitializers not confirmed from ABI. Post-TGE contracts: not verified.
Detail #
Etherscan page for sUSDf impl explicitly states it inherits from Initializable and has the _disableInitializers() mechanism. USDf impl shows constructor() nonpayable — consistent with OZ pattern where _disableInitializers() is called in the constructor body, but not confirmable from ABI representation alone. Post-TGE contracts (sFF, sFF-Prime, FF Staking Vault implementations) have not been verified for _disableInitializers() presence. Scored yellow: confirmed for sUSDf, unconfirmed for USDf and post-TGE contracts.
Sources #
- EtherscanUSDf Implementation — EtherscanUSDf impl: constructor() nonpayable — _disableInitializers not confirmed from ABIretrieved 2026-05-12
- sUSDf Implementation — EtherscansUSDf impl: Initializable (OZ) + _disableInitializers confirmedretrieved 2026-05-12
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 →