KVORUM
compoundSource: Compound governor oz · #488

Update price feeds in cUSDCv3 on Mainnet with CAPO and Chainlink SVR implementation.

executedOct 19, 2025, 11:40 AM UTCbyD20xd2a7…5a0c

01Summary

AISummary by Kvorumclaude-haiku-4-5

Update price feeds for 7 assets (wstETH, WBTC, WETH, LINK, rsETH, weETH, COMP) on Compound's USDC market with Chainlink Signed Value Rotations (SVR) and CAPO oracle implementations, plus deploy a Comet contract upgrade.

Type
contract upgrade

Key changes

  • wstETH price feed updated to CAPO implementation with new feed 0xA2699232B341881B1Ed85d91592b7c259E029aCf(high)
  • WBTC price feed updated with SVR implementation(high)
  • WETH price feed updated with SVR implementation(high)
  • LINK price feed updated with SVR implementation(high)
  • rsETH price feed updated to CAPO implementation for liquid staking token yield tracking(high)
  • weETH price feed updated to CAPO implementation for liquid staking token yield tracking(high)
  • COMP price feed updated with SVR implementation(high)
  • Comet contract deployed and upgraded to new version supporting SVR and CAPO(high)

Notable concerns

  • CAPO is a new oracle adapter requiring protocol changes; has been audited by OpenZeppelin but represents new risk surface
  • SVR implementation generates fees from liquidators that flow to Compound DAO
  • Multiple price feed changes across major collateral assets require careful monitoring post-deployment
Contracts0xc3d688B66703497DAA19211EEdff47f25384cdc30x316f9708bb98af7da9c68c1c3b5e79039cd336e30x1ec63b5883c3481134fd50d5daebc83ecd2e8779
Generated by Kvorum
model: claude-haiku-4-5
provider: anthropic
profile: anthropic-fast-v1
prompt: v1.0
generated: 2mo ago
Read the description ↗

02Description

273 words

Update price feeds in cUSDCv3 on Mainnet with CAPO and Chainlink SVR implementation.

Proposal summary

This proposal updates existing price feeds for wstETH, WBTC, WETH, LINK, rsETH, weETH and COMP on the USDC market on Mainnet.

SVR summary

RFP process and community vote passed and decided to implement Chainlink's SVR solution for Mainnet markets, this proposal updates wstETH, WETH, WBTC, LINK, rsETH, weETH and COMP price feeds to support SVR implementations.

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. wstETH, rsETH and weETH price feeds are updated to their CAPO implementations.

Further detailed information can be found on the corresponding proposal pull request, forum discussion for CAPO and forum discussion for SVR.

CAPO audit

CAPO has been audited by OpenZeppelin, as well as the LST / LRT implementation here.

SVR fee recipient

SVR generates revenue from liquidators and Compound DAO will receive that revenue as part of the protocol fee. The fee recipient for SVR is set to Compound DAO multisig: 0xd9496F2A3fd2a97d8A4531D92742F3C8F53183cB.

Proposal actions

The first action updates wstETH price feed. The second action updates WBTC price feed. The third action updates WETH price feed. The fourth action updates LINK price feed. The fifth action updates rsETH price feed. The sixth action updates weETH price feed. The seventh action updates COMP price feed. The eighth action deploys and upgrades Comet to a new version.

03Mismatch analysis

AIMismatch analysis by Kvorumclaude-sonnet-5
Consistent

I matched each of the seven price-feed update actions (indices 0-6) to the corresponding asset described in the proposal text, in the same order (wstETH, WBTC, WETH, LINK, rsETH, weETH, COMP), verifying the token addresses against well-known mainnet addresses for each asset. All seven calls target the same Configurator contract and the same cUSDCv3 comet proxy, consistent with the claim that this is a Mainnet USDC market oracle update. The eighth action, deployAndUpgradeTo, matches the description's claim of deploying and upgrading Comet to a new version, which is the standard mechanism for making Configurator changes (including price feed updates) take effect on the Comet proxy. The description's claim about the SVR fee recipient address is a property expected to be encoded within the newly deployed price feed contracts themselves rather than a separate governance call, so its absence as a distinct on-chain action is not a discrepancy - it's simply not independently verifiable from this action list, but nothing here contradicts it. No value mismatches, target mismatches, omissions, or extra claims were found between the prose and the decoded actions. Confidence is high because the asset addresses and action count/order align exactly with the description.

Generated by Kvorum
model: claude-sonnet-5
provider: anthropic
profile: anthropic-strong-v1
prompt: v1.0
generated: 2mo ago
Review the decoded actions ↗

04Actions

8 total
#0updateAssetPriceFeed(address,address,address)chain 0x1
Target
0x316f…36e3
Value
0 wei
Function
updateAssetPriceFeed(address,address,address)
Arguments
{
  "asset": "0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0",
  "cometProxy": "0xc3d688B66703497DAA19211EEdff47f25384cdc3",
  "newPriceFeed": "0xA2699232B341881B1Ed85d91592b7c259E029aCf"
}
Calldata
#1updateAssetPriceFeed(address,address,address)chain 0x1
Target
0x316f…36e3
Value
0 wei
Function
updateAssetPriceFeed(address,address,address)
Arguments
{
  "asset": "0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599",
  "cometProxy": "0xc3d688B66703497DAA19211EEdff47f25384cdc3",
  "newPriceFeed": "0xc8E4c3F58d5FC4409522503927Ecea057EbbA1fc"
}
Calldata
#2updateAssetPriceFeed(address,address,address)chain 0x1
Target
0x316f…36e3
Value
0 wei
Function
updateAssetPriceFeed(address,address,address)
Arguments
{
  "asset": "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",
  "cometProxy": "0xc3d688B66703497DAA19211EEdff47f25384cdc3",
  "newPriceFeed": "0xc0053f3FBcCD593758258334Dfce24C2A9A673aD"
}
Calldata
#3updateAssetPriceFeed(address,address,address)chain 0x1
Target
0x316f…36e3
Value
0 wei
Function
updateAssetPriceFeed(address,address,address)
Arguments
{
  "asset": "0x514910771AF9Ca656af840dff83E8264EcF986CA",
  "cometProxy": "0xc3d688B66703497DAA19211EEdff47f25384cdc3",
  "newPriceFeed": "0x83B34662f65532e611A87EBed38063Dec889D5A7"
}
Calldata
#4updateAssetPriceFeed(address,address,address)chain 0x1
Target
0x316f…36e3
Value
0 wei
Function
updateAssetPriceFeed(address,address,address)
Arguments
{
  "asset": "0xA1290d69c65A6Fe4DF752f95823fae25cB99e5A7",
  "cometProxy": "0xc3d688B66703497DAA19211EEdff47f25384cdc3",
  "newPriceFeed": "0xD6a48f6f687A5FeF8A69834C49514B747012cf1c"
}
Calldata
#5updateAssetPriceFeed(address,address,address)chain 0x1
Target
0x316f…36e3
Value
0 wei
Function
updateAssetPriceFeed(address,address,address)
Arguments
{
  "asset": "0xCd5fE23C85820F7B72D0926FC9b05b43E359b7ee",
  "cometProxy": "0xc3d688B66703497DAA19211EEdff47f25384cdc3",
  "newPriceFeed": "0x4F12633d511dC3049DE1ea923b7047fBeD0070D2"
}
Calldata
#6updateAssetPriceFeed(address,address,address)chain 0x1
Target
0x316f…36e3
Value
0 wei
Function
updateAssetPriceFeed(address,address,address)
Arguments
{
  "asset": "0xc00e94Cb662C3520282E6f5717214004A7f26888",
  "cometProxy": "0xc3d688B66703497DAA19211EEdff47f25384cdc3",
  "newPriceFeed": "0x69B50fF403E995d9c4441a303438D9049dAC8cCD"
}
Calldata
#7deployAndUpgradeTo(address,address)chain 0x1
Target
0x1ec6…8779
Value
0 wei
Function
deployAndUpgradeTo(address,address)
Arguments
{
  "cometProxy": "0xc3d688B66703497DAA19211EEdff47f25384cdc3",
  "configuratorProxy": "0x316f9708bB98af7dA9c68C1C3b5e79039cD336E3"
}
Calldata

05Tally

Summed from votes

Voters50
VP participating524.4K
Outcome (current)For
Current support100%

06Voters

50 total

No votes recorded yet.

07Forum

AIForum synthesis by Kvorumclaude-sonnet-5
sentiment · mixedthread · constructive

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
model: claude-sonnet-5
provider: anthropic
profile: anthropic-strong-v1
prompt: v1.0
generated: 2mo ago
Open the thread ↗