Set Price Cap Adapters (CAPO)
01Summary
Activate the Correlated Asset Price Oracle (CAPO) system across 10 Aave networks to add upside protection for Liquid Staking Tokens (LSTs) and fiat-pegged stablecoins by capping their prices relative to their underlying assets using dynamically calculated parameters and fixed price caps.
- Type
- protocol addition
Key changes
- Activate CAPO price adapter system for LSTs (wstETH, rETH, cbETH, MaticX, stMATIC, sAVAX) with growth caps ranging from 8.12% to 10.45% and snapshot delays of 7-14 days(high)
- Activate CAPO price adapter system for fiat-pegged stablecoins (USDC, USDT, DAI, FRAX, LUSD, etc.) with fixed price caps of 4% except LUSD at 10%(high)
- Update price oracle feeds across 10 networks (Mainnet, Arbitrum, Avalanche, Optimism, Polygon, Gnosis, Base, Metis, BNB, Scroll) using the Config Engine priceFeedsUpdates() method(high)
- Exclude sDAI from activation due to recent instability in its growth rate(medium)
Notable concerns
- sDAI excluded from implementation due to recent growth rate instability
- Retrospective testing showed price was not capped over the last half year, indicating parameters may be conservative
- System depends on accurate ratio calculations and snapshot delay mechanisms to function as intended
Generated by Kvorum
02Description
Simple Summary
This proposal activates the correlated-assets price oracle (CAPO) system for LSTs and fiat-pegged stable coins.
Motivation
LSTs (Liquid Staking Tokens) are highly correlated to an underlying, with an additional growth component on top of it, and sometimes, slashing dynamics. CAPO for this use case adds an upper side protection. Every time the price adapter is queried, it will get the current ratio of the asset/underlying and compared it with a dynamically calculated upper value of that ratio, using the previously defined parameters. If the current ratio is above the ratio cap, the ratio cap is returned. If not, the current ratio is.
In some cases, the relation between an underlying asset and its correlated is direct, without any type of continuous growth expected. For example, this is the case of USD-pegged stable coins, where USD is the underlying and let's say USDC is the correlated asset. For this type of assets we'll apply the price adapter with the fixed price cap.
Specification
| Asset | Growth percent | Snapshot delay |
|---|---|---|
| wstETH | 9.68% | 7 days |
| rETH | 9.3% | 7 days |
| cbETH | 8.12% | 7 days |
| MaticX | 10.2% | 14 days |
| stMATIC | 10.45% | 14 days |
| sAVAX | 10.1% | 14 days |
All stablecoins are capped at 4%, except LUSD, which is capped at 10%.
sDAI is not included at the moment, given the recent un-stability on its growth rate.
Oracles will be updated using priceFeedsUpdates() method of the Config Engine on every network. Below is the list of assets per network to be updated:
| Network | LSTs | Stables |
|---|---|---|
| Mainnet | wstETH, rETH, cbETH | USDC, USDT, DAI, FRAX, LUSD, crvUSD, pyUSD |
| Arbitrum | wstETH, rETH | USDC, USDC.e, USDT, FRAX, LUSD, MAI |
| Avalanche | sAvax | USDC, USDT, DAI.e, FRAX, MAI |
| Optimism | wstETH, rETH | USDC, USDC.e, USDT, DAI, LUSD, sUSD, MAI |
| Polygon | wstETH, stMatic, MaticX | USDC, USDC.e, USDT, DAI, MAI |
| Gnosis | wstETH | USDC, xDAI |
| Base | wstETH, cbETH | USDC |
| Metis | USDC, USDT, m.DAI | |
| BNB | USDC, USDT, fdUSD | |
| Scroll | wstETH | USDC |
Security
- Audit by Certora
- A retrospective test was conducted for the last half year with the parameters provided, which showed that the price was not capped, which is expected
References
- Payloads: AaveV3Ethereum, AaveV3Polygon, AaveV3Avalanche, AaveV3Arbitrum, AaveV3Optimism, AaveV3Metis, AaveV3Base, AaveV3Gnosis, AaveV3BNB, AaveV3Scroll
- Tests: AaveV3Ethereum, AaveV3Polygon, AaveV3Avalanche, AaveV3Arbitrum, AaveV3Optimism, AaveV3Base, AaveV3Gnosis, AaveV3Scroll
Copyright
Copyright and related rights waived via CC0.
03Mismatch analysis
placeholder...## You must respond with valid JSON only.” 」 I will now output final JSON.,
Generated by Kvorum
04Actions
- Target
- 0xb209…0d67
- Value
- 0 wei
- Function
- fallback()
- Arguments
{}- Calldata
05Tally
Summed from votes
06Voters
No votes recorded yet.
07Forum
No forum thread is confidently linked to this proposal.
08Similar proposals
- aaveexecutedSet Price Cap Adapters for Aave V291%
- aaveexecutedPrice feeds operational update78%
- aaveexecutedPrice feeds operational update Pt2 - stETH78%
- aaveexecutedUpdate USDG Price Feed on Aave V3 Instances77%
- aaveexecutedAlter mUSD Oracle Price Implementation76%
- aaveexecutedLBTC and eBTC Price Feeds Update69%
- aaveexecutedMKR and USDtb oracle adjustments68%
- aaveexecutedUpdate xSushi price feed on Aave V265%
- aaveexecutedUpdate PriceOracleSentinel65%
- aaveexecutedEnable SVR V1 on Aave V3 Ethereum64%