Update price feeds in cUSDEv3 on Mantle with CAPO and SVR implementation.
01Summary
This proposal updates price feeds for USDe, mETH, WETH, and FBTC on the Compound USDe market on Mantle by implementing CAPO (Correlated Assets Price Oracle) for mETH and SVR (Secure Value Recovery) oracle solution for all four assets. CAPO provides protection against price manipulation for yield-bearing assets, and SVR implementation was selected through a community RFP process and vote.
- Type
- protocol addition
Key changes
- mETH price feed updated to CAPO implementation to handle yield accumulation and protect against price manipulation(high)
- USDe, WETH, and FBTC price feeds updated to SVR implementation selected through community RFP and vote(high)
- CAPO implementation has been audited by OpenZeppelin for both general CAPO and LST/LRT variants(medium)
Notable concerns
- Implementation requires cross-chain messaging to Mantle to update the USDe market price feeds
- SVR solution is API3-based and represents a change in oracle provider for specified assets
Generated by Kvorum
02Description
Update price feeds in cUSDEv3 on Mantle with CAPO and SVR implementation.
Proposal summary
This proposal updates existing price feed for USDe, mETH, WETH, and FBTC on the USDe market on Mantle.
CAPO summary
CAPO is a price oracle adapter designed to support assets that grow gradually relative to a base asset - such as liquid staking tokens that accumulate yield over time. It provides a mechanism to track this expected growth while protecting downstream protocol from sudden or manipulated price spikes. mETH price feed is updated to its CAPO implementation.
Further detailed information can be found on the corresponding proposal pull request and forum discussion for CAPO.
CAPO audit
CAPO has been audited by [OpenZeppelin](https://www.comp.xyz/t/capo-price-feed-audit/6631, as well as the LST / LRT implementation here.
SVR summary
RFP process and community vote passed and decided to implement API3 SVR solution for Mantle USDe market, this proposal updates USDe, WETH, mETH and FBTC price feeds to support SVR implementations.
Proposal actions
The first action updates USDe, mETH, WETH and FBTC price feeds to the CAPO and SVR implementation. This sends the encoded 'setBaseTokenPriceFeed', 'updateAssetPriceFeed' and 'deployAndUpgradeTo' calls across the bridge to the governance receiver on Mantle.
03Mismatch analysis
The proposal description states that a single bridged message will update the base token (USDe) price feed and the mETH, WETH, and FBTC asset price feeds (4 feeds total: 1 base + 3 assets), and will also deploy/upgrade the Comet implementation, via setBaseTokenPriceFeed, updateAssetPriceFeed, and deployAndUpgradeTo calls sent through the bridge to the Mantle governance receiver. The single decoded action is exactly this: a sendMessage call to a cross-domain messenger targeting an address consistent with a Mantle governance receiver, carrying an ABI-encoded payload whose function-signature list is exactly ['setBaseTokenPriceFeed(address,address)', 'updateAssetPriceFeed(address,address,address)' x3, 'deployAndUpgradeTo(address,address)'] — a count and shape that matches the four price-feed updates (1 base + 3 assets) plus the implementation upgrade described in the prose. No value transfers, role grants, or unrelated calls are present. Because the payload is deeply nested encoded calldata, I could not independently verify that each specific address corresponds precisely to USDe/mETH/WETH/FBTC token contracts without additional on-chain address-to-symbol mapping, which caps my confidence at medium, but the structural match (call types, counts, and destination) strongly supports the description's claims and no numeric or target discrepancy is evident. There is no funds movement, no unexpected recipient, and no extra or missing action type. I therefore assess this as consistent, not warranting a discrepancy flag.
Generated by Kvorum
04Actions
- Target
- 0x676a…7120
- Value
- 0 wei
- Function
- sendMessage(address,bytes,uint32)
- Arguments
{ "_target": "0xc91EcA15747E73d6dd7f616C49dAFF37b9F1B604", "_message": "0x00000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000004a00000000000000000000000000000000000000000000000000000000000000005000000000000000000000000b77cd4cd000957283d8baf53cd782ecf029cf7db000000000000000000000000b77cd4cd000957283d8baf53cd782ecf029cf7db000000000000000000000000b77cd4cd000957283d8baf53cd782ecf029cf7db000000000000000000000000b77cd4cd000957283d8baf53cd782ecf029cf7db000000000000000000000000e268b436e75648aa0639e2088fa803fea517a0c7000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000016000000000000000000000000000000000000000000000000000000000000001c00000000000000000000000000000000000000000000000000000000000000220000000000000000000000000000000000000000000000000000000000000002673657442617365546f6b656e50726963654665656428616464726573732c61646472657373290000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002d757064617465417373657450726963654665656428616464726573732c616464726573732c616464726573732900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002d757064617465417373657450726963654665656428616464726573732c616464726573732c616464726573732900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002d757064617465417373657450726963654665656428616464726573732c616464726573732c61646472657373290000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000236465706c6f79416e6455706772616465546f28616464726573732c61646472657373290000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000180000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000002800000000000000000000000000000000000000000000000000000000000000040000000000000000000000000606174f62cd968d8e684c645080fa694c1d7786e0000000000000000000000000090a563c4832e4e519f5f054483519b1a83c8c30000000000000000000000000000000000000000000000000000000000000060000000000000000000000000606174f62cd968d8e684c645080fa694c1d7786e000000000000000000000000deaddeaddeaddeaddeaddeaddeaddeaddead1111000000000000000000000000add81aaf528784531e888317afcd429b00c9f1b30000000000000000000000000000000000000000000000000000000000000060000000000000000000000000606174f62cd968d8e684c645080fa694c1d7786e000000000000000000000000cda86a272531e8640cd7f1a92c01839911b90bb0000000000000000000000000731564585278f228fb8f93a0bf62729e243676620000000000000000000000000000000000000000000000000000000000000060000000000000000000000000606174f62cd968d8e684c645080fa694c1d7786e000000000000000000000000c96de26018a54d51c097160568752c4e3bd6c36400000000000000000000000041e345a046a73ef15316191b41f3abea4cef11680000000000000000000000000000000000000000000000000000000000000040000000000000000000000000b77cd4cd000957283d8baf53cd782ecf029cf7db000000000000000000000000606174f62cd968d8e684c645080fa694c1d7786e", "_minGasLimit": "2500000" }- Calldata
05Tally
Summed from votes
06Voters
| Voter | Choice | % of total | Rationale | ||
|---|---|---|---|---|---|
| 3F0x3fb1…4c8a | For | 104.8K | 15.78% | — | 9mo ago |
| 660x66cd…65f9 | For | 80K | 12.05% | — | 9mo ago |
| 050x0579…ca09 | For | 60.3K | 9.08% | — | 9mo ago |
| B40xb49f…7948 | For | 60K | 9.04% | — | 9mo ago |
| 170x1729…b879 | For | 60K | 9.04% | — | 9mo ago |
| B70xb792…89d7 | For | 60K | 9.04% | — | 9mo ago |
| D20xd2a7…5a0c | For | 60K | 9.04% | — | 9mo ago |
| B90xb933…8dd1 | For | 60K | 9.04% | — | 9mo ago |
| 070x0703…961b | For | 51.7K | 7.79% | — | 9mo ago |
| 680x683a…6c02 | For | 36.6K | 5.51% | — | 9mo ago |
| 130x13bd…8548 | For | 30K | 4.52% | — | 9mo ago |
| 1F0x1f3d…0591 | For | 440.7 | 0.07% | — | 9mo ago |
| C50xc554…7759 | For | 11.2 | 0.00% | — | 9mo ago |
| 2F0x2f2f…f78a | For | 0.5 | 0.00% | — | 9mo ago |
| 940x945d…7297 | For | 0 | 0.00% | — | 9mo ago |
| 6B0x6bc4…1c40 | For | 0 | 0.00% | — | 9mo ago |
| B20xb232…1534 | For | 0 | 0.00% | — | 9mo ago |
| 8C0x8cb7…d6b5 | For | 0 | 0.00% | — | 9mo ago |
| 240x2412…7ef8 | For | 0 | 0.00% | — | 9mo ago |
| E40xe4c9…4735 | For | 0 | 0.00% | — | 9mo ago |
| 4C0x4c86…3c50 | For | 0 | 0.00% | — | 9mo ago |
| BE0xbe2a…8f3c | For | 0 | 0.00% | — | 9mo ago |
| C00xc015…cdd0 | For | 0 | 0.00% | — | 9mo ago |
| AA0xaa8c…d8b1 | For | 0 | 0.00% | — | 9mo ago |
| 020x0218…7d4b | For | 0 | 0.00% | — | 9mo ago |
| 750x758f…7740 | For | 0 | 0.00% | — | 9mo ago |
| 930x9334…db87 | For | 0 | 0.00% | — | 9mo ago |
| 970x9775…fd9b | For | 0 | 0.00% | — | 9mo ago |
| 930x9359…e7d7 | For | 0 | 0.00% | — | 9mo ago |
| F10xf18b…f56d | For | 0 | 0.00% | — | 9mo ago |
| 860x86f0…f2d1 | For | 0 | 0.00% | — | 9mo ago |
| 0B0x0bce…0d04 | For | 0 | 0.00% | — | 9mo ago |
| 850x8576…9bdd | For | 0 | 0.00% | — | 9mo ago |
| 120x1218…247e | For | 0 | 0.00% | — | 9mo ago |
| DA0xdaeb…af18 | For | 0 | 0.00% | — | 9mo ago |
| 3B0x3b1a…1228 | For | 0 | 0.00% | — | 9mo ago |
07Forum
- OEV RFP Process Update (July 2025) ↗discourse · high confidence
Arguments for
- Chainlink SVR is already live and proven in production (e.g., with Aave) and Compound already relies on Chainlink feeds on mainnet, so adopting it there adds minimal incremental risk.— cylon, allthecolors, pennblockchain
- Ethereum mainnet holds the largest share of liquidation value, making it the most strategically important and comparatively safe place to pilot an OEV solution first.— cylon
- A phased, single-market rollout on mainnet lets the DAO observe real performance (including through a stress event) before expanding further.— cylon
- Delegates demonstrated decisive support for adopting Chainlink SVR on mainnet through the Snapshot vote, reflecting broad community backing.— AranaDigital
Arguments against
- OEV auctions can add latency to liquidations, and historical price-drawdown data shows even a few blocks of delay can push positions into insolvency, especially on volatile assets and L2s.— Gauntlet, victator
- Empirical analysis of past large Compound liquidations shows that slippage, builder tips, and provider fees consume the vast majority of liquidation incentive, meaning actual recapturable OEV revenue is far smaller than advertised (comparable to a minor SFPF adjustment).— victator
- OEV is a patch over a deeper structural flaw in Compound's liquidation mechanism; resources would be better spent on partial liquidations and mechanism redesign rather than locking in an OEV vendor.— victator
- Committing broadly to any OEV vendor now is premature since solutions are not yet fully tested in live, volatile conditions; a cautious, staged approach with real performance data is preferable.— cylon, Avantgarde
- Chainlink's fairness and prioritization for Compound is questionable given it reportedly offered a materially worse revenue share than to Aave, raising doubts about whether L2 rollout and support will be prioritized.— ugurmersin
Unresolved concerns
- Whether OEV-induced liquidation delays could materially increase insolvency risk on mainnet during high-volatility events once Chainlink SVR is live.— Gauntlet, victator
- Whether real-world OEV revenue capture will be far smaller than projected once slippage, builder tips, and provider fees are accounted for.— victator
- Whether Chainlink SVR's actual latency on mainnet and future L2 rollouts will meet Gauntlet's recommended sub-3-block liquidation window.— Gauntlet, mikemassari
- Unresolved questions about Chainlink's comparatively lower revenue share and prioritization for Compound relative to other protocols like Aave.— ugurmersin
- Whether adopting OEV now risks entrenching an inefficient liquidation architecture rather than pursuing higher-leverage fixes like partial liquidations.— victator
Notable participants
- AranaDigitalOrganized and ran the RFP/Snapshot voting process, provided procedural updates and final vote results.
- cylonDelegate who proposed and iteratively refined a risk-minimized, phased rollout strategy across chains, including supporting Chainlink SVR on mainnet.
- GauntletProvided quantitative risk analysis on liquidation latency and price drawdowns, recommending caution and a 3-block latency ceiling.
- victatorAuthored a detailed risk-first analysis (Platonia) arguing OEV revenue is overestimated and that liquidation mechanism redesign is a higher priority than OEV adoption.
- ugurmersinApi3 representative who defended Api3's production track record and raised pointed questions about Chainlink and RedStone's claims and incentives.
- mikemassariRedStone representative who responded to latency/searcher-network critiques and defended RedStone's Venus pilot record.
- allthecolorsDelegate who largely aligned with cylon's cautious approach but advocated testing Chainlink SVR on Base and keeping Api3 on Mantle.
- pennblockchainDelegate who voted with a measured rollout stance, initially favoring Api3 on Arbitrum before revising to no deployment there.
- AvantgardeDelegate who echoed cylon's cautious, phased-testing approach given immature state of OEV solutions.
Generated by Kvorum
08Similar proposals
- compoundexecutedUpdate price feeds in cUSDCv3 on Base with CAPO and SVR price feeds.91%
- compoundexecutedUpdate price feeds in cUSDCv3 on Base with CAPO and SVR price feeds.90%
- compoundexecutedUpdate price feeds in cUSDSv3 on Mainnet with CAPO and Chainlink SVR implementation.89%
- compoundexecutedUpdate price feeds in cWETHv3 on Arbitrum with SVR and CAPO price feeds.87%
- compoundexecutedUpdate price feeds in cUSDTv3 on Mainnet with CAPO and Chainlink SVR implementation.87%
- compoundexecutedUpdate price feeds in cUSDCv3 on Mainnet with CAPO and Chainlink SVR implementation.87%
- compoundexecutedUpdate price feeds in cUSDTv3 on Arbitrum with CAPO and SVR price feeds.86%
- compoundexecutedUpdate USDC and cbBTC price feeds in cWETHv3 on Base with SVR price feeds.83%
- compoundexecutedUpdate WETH, USDC, and wstETH price feeds in cAEROv3 on Base with SVR price feeds81%
- compoundexecutedUpdate price feeds in cUSDCv3 on Arbitrum with SVR price feeds.78%