Oracle role per asset
Curve Finance's assessment for RD-F-049 — scored yellow on the v1.7.0 rubric. The evidence below is the curator's reasoning for this score.
Evidence summary #
Oracle role breakdown: (1) Swap pricing: no oracle (internal AMM invariant). (2) StableSwap-NG rate oracle for yield-bearing tokens: Primary rate source per pool, set at deployment, immutable — serves pool re-pegging (not swap pricing). (3) CryptoSwap v2 internal EMA: provides price_oracle() function consumed by downstream protocols — Curve itself does not use it for swap execution. Role architecture is clear but the immutable rate oracle in StableSwap-NG creates a permanent dependency on each token's upstream rate provider.
Sources #
- GitHubCurve StableSwap-NG main contractCurveStableSwapNG.vy: rate_oracles immutable, _stored_rates() as primary rate fetchretrieved 2026-04-28
- Curve Tricrypto-NG main contractCurveTricryptoOptimizedWETH.vy price_oracle() — internal EMA, no external dependencyretrieved 2026-04-28
Methodology #
For each oracle, classify its role as Primary / Secondary / Fallback per asset/market.
See the full factor methodology and distribution across all protocols →