TWAP window duration
Uniswap (v2 + v3)'s assessment for RD-F-054 — scored not_applicable on the v1.7.0 rubric. The evidence below is the curator's reasoning for this score.
Evidence summary #
No TWAP consumed by V2 or V3. V3 exposes TWAP via Oracle.sol observe() with caller-defined secondsAgos[] parameter — the window is consumer-defined, not V3-defined. V2 TWAP window is defined by the consuming protocol when computing cumulative price deltas. Factor asks about consumed TWAP windows; N/A by construction.
Detail #
Oracle.sol observe() function: accepts secondsAgos[] from external caller; no internal TWAP consumption by V3. UniswapV2OracleLibrary.currentCumulativePrices(): consumer computes the delta between two cumulative snapshots to derive TWAP; V2 does not set a window for its own consumption.
Sources #
- GitHubOracle.sol observe() — caller-defined windowOracle.sol observe() function: accepts secondsAgos[] parameter from external caller — window is caller-defined, not V3-defined. No internal TWAP consumption by V3 itself.retrieved 2026-05-12
Methodology #
For each DEX-TWAP oracle, measure the TWAP window duration in minutes; flag any window < 30 minutes as high risk.
See the full factor methodology and distribution across all protocols →