★ Reinitializable implementation (no _disableInitializers)
Midas's assessment for RD-F-143 — scored green on the v1.7.0 rubric. The evidence below is the curator's reasoning for this score.
Evidence summary #
MidasInitializable (abstract base inherited by all core contracts) calls _disableInitializers() in its constructor, confirmed by Hacken Dec-2023 audit ('MidasInitializable implements constructor() that calls _disableInitializers()') and Sherlock 2024-05 repo (abstract/MidasInitializable.sol). mTBILL implementation 0xD4998Cc1 inherits MidasInitializable (confirmed via Etherscan source file tree). Implementation contracts are protected from unauthorized re-initialization. [★ CRITICAL — green]
Sources #
- GitHubMidasInitializable.sol — Sherlock 2024-05MidasInitializable.sol: constructor() { _disableInitializers(); } — confirmed in Sherlock 2024-05 reporetrieved 2026-05-16
- Hacken Dec-2023 — MidasInitializable design confirmedHacken Dec-2023 audit: 'MidasInitializable is a base initializable contract that implements constructor() that calls _disableInitializers()'retrieved 2026-05-16
Methodology #
Determine whether the implementation contract does not call `_disableInitializers()` in its constructor, leaving re-initialization possible.
See the full factor methodology and distribution across all protocols →