Constructor calls _disableInitializers()
Yearn Finance's assessment for RD-F-023 — scored not_applicable on the v1.7.0 rubric. The evidence below is the curator's reasoning for this score.
Evidence summary #
OZ _disableInitializers() is a Solidity UUPS/Transparent proxy construct. Yearn V3 is Vyper with a sentinel-value initialization lock (self.asset = self in __init__). V2 vaults are not proxied implementations. The OZ-specific Solidity mechanism is architecturally inapplicable to Vyper-based vaults.
Sources #
- GitHubVaultV3.vy __init__() sets self.asset = self as sentinel (Vyper-native init lock)VaultV3.vy __init__ — self.asset = self sentinelretrieved 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 →
rubric_version v1.7.0 protocol yearn-finance factor RD-F-023 score not_applicable collected_at 2026-05-16 08:34:32