Circuit breaker on price deviation
Uniswap (v2 + v3)'s assessment for RD-F-057 — scored not_applicable on the v1.7.0 rubric. The evidence below is the curator's reasoning for this score.
Evidence summary #
No external oracle consumed; no circuit breaker against external price reference needed or implemented. V3 TickMath bounds on sqrtPriceX96 are internal AMM invariants preventing invalid states — not circuit breakers against an external oracle. V2 has no equivalent circuit breaker concept in its AMM design.
Detail #
TickMath.sol in v3-core: MIN_SQRT_RATIO and MAX_SQRT_RATIO bounds cause swap() to revert if tick is out of range — this is an internal AMM safety invariant, not a deviation check against an external oracle. No priceGuard or maxDeviationBps pattern in V2 or V3.
Sources #
- GitHubTickMath.sol — internal invariant bounds (not oracle circuit breaker)TickMath.sol: MIN_SQRT_RATIO/MAX_SQRT_RATIO bounds cause internal reversion — AMM invariant, not oracle circuit breaker.retrieved 2026-05-12
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 →