Constructor calls _disableInitializers()
M^0'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 #
SwapFacility implementation (0x45bF08d0) constructor does NOT include _disableInitializers() — sets mToken and registrar then calls __init(). HubPortal impl source not directly inspectable. WrappedM and core contracts N/A (no proxy/initializer). Certora/ChainSecurity M-Extensions audits (Jul-Aug 2025) did not flag this as critical. Handoff to governance-admin-analyst for F143 assessment.
Sources #
- EtherscanSwapFacility Implementation EtherscanSwapFacility impl 0x45bF08d0 — no _disableInitializers() in constructorretrieved 2026-05-16
- ChainSecurity M-Zero M Extensions AuditChainSecurity M-Extensions audit — no critical finding on initializerretrieved 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 →