Circuit breaker on price deviation
Rocket Pool's assessment for RD-F-057 — scored yellow on the v1.7.0 rubric. The evidence below is the curator's reasoning for this score.
Evidence summary #
For rETH:ETH balance submissions: RPIP-61 (implemented in Saturn One) adds a 2% per-update max delta cap via RocketNetworkBalances._updateBalances() — enforces require(newRatio - currentRatio <= maxChange) where maxChangePercent = 2% (floor 1%). This is a partial circuit breaker but only constrains per-submission rate movement, not absolute deviation from a reference. For RPL/ETH price submissions: NO circuit breaker exists — RocketNetworkPrices.sol accepts consensus output without any deviation check from prior price. Mixed state: rETH has partial guardrail, RPL has none = yellow.
Sources #
- GitHubRocketNetworkPrices.sol sourceRocketNetworkPrices.sol: no deviation check — accepts submitPrices consensus output unconditionallyretrieved 2026-05-04
- RPIP-61 Balance Submission GuardrailRPIP-61: initial limit 2%, floor 1%, prevents oDAO from rapidly changing rETH exchange rateretrieved 2026-05-04
- RocketDAOProtocolSettingsNetwork.sol sourceRocketDAOProtocolSettingsNetwork.sol: getMaxRethDelta() = 0.02 ether (2%); floor validation >= 0.01 etherretrieved 2026-05-04
- RocketNetworkBalances.sol sourceRocketNetworkBalances.sol _updateBalances(): delta check enforces newRatio - currentRatio <= maxChangeretrieved 2026-05-04
Methodology #
Determine whether the protocol halts or reverts if the oracle-reported price deviates by more than X% from a reference within Y blocks.
See the full factor methodology and distribution across all protocols →