KVORUM
compoundSource: Compound governor oz · #569

Supply cap Recommendations for rsETH on L2 WETH Comets

executedApr 23, 2026, 04:50 PM UTCby7B0x7b3c…cc33

01Summary

AISummary by Kvorumclaude-haiku-4-5

Emergency proposal to set supply caps to 0 for rsETH/wrsETH assets across multiple Layer 2 Compound V3 Comets (Optimism, Unichain, Base, Arbitrum, Linea) in response to the Kelp DAO rsETH exploit that occurred on April 18, 2026. This is part 2 of a two-part response; part 1 addressed mainnet and a separate proposal will handle remaining L2 networks.

Type
parameter change

Key changes

  • Set supply cap to 0 for wrsETH on Optimism WETH Comet(high)
  • Set supply cap to 0 for rsETH on Unichain WETH Comet(high)
  • Set supply cap to 0 for wrsETH on Base WETH Comet(high)
  • Set supply cap to 0 for rsETH on Arbitrum WETH Comet(high)
  • Set supply cap to 0 for wrsETH on Linea WETH Comet(high)
  • Pause new borrows on affected Comets until supply caps are set to 0(high)

Notable concerns

  • This is an emergency response to the Kelp DAO rsETH exploit
  • Supply caps being set to 0 will effectively disable rsETH/wrsETH as collateral on these platforms
  • Proposal is part 2 of a multi-part response with separate proposals planned for other L2 networks
  • Proposal requests expedited voting to prevent extension of voting period
Contracts0x4dbd4fc535ac27206064b68ffcf827b0a60bab3f0x866e82a600a1414e583f7f13623f1ac5d58b0afa0x25ace71c97b33cc4729cf772ae268934f7ab5fa10xd19d4b5d358258f05d7b411e21a1460d11b0876f0x9a3d64e386c18cb1d6d5179a9596a4b5736e98a6
Generated by Kvorum
model: claude-haiku-4-5
provider: anthropic
profile: anthropic-fast-v1
prompt: v1.0
generated: 2mo ago
Read the description ↗

02Description

172 words

Supply cap Recommendations for rsETH on L2 WETH Comets

Summary

This is the 2nd part of the proposal due to the rsETH exploit that occurred on 18th April'2026. We recommend setting the supply caps to 0 for rsETH on all Compound V3 Comets. This proposal is for . There will be a separate proposal for L2 networks . Any new Borrows on affected comets will be resumed once these caps are set to 0. Request the delegates to get their votes in sooner so that the proposal is not extended

Supply Cap Recommendations

CometAssetProposed Supply Caps
Optimism WETHwrsETH0
Unichain WETHrsETH0
Base WETHwrsETH0
Arbitrum WETHrsETH0
Linea WETHwrsETH0

Motivation

More details and forum discussions can be found in the following posts.

03Mismatch analysis

AIMismatch analysis by Kvorum

A calldata-vs-description analysis is not generated yet. Review the decoded actions →

04Actions

5 total
#0createRetryableTicket(address,uint256,uint256,address,address,uint256,uint256,bytes)chain 0x1
Target
0x4dbd…ab3f
Value
1944774500000000 wei
Function
createRetryableTicket(address,uint256,uint256,address,address,uint256,uint256,bytes)
Arguments
{
  "to": "0x42480C37B249e33aABaf4c22B20235656bd38068",
  "data": "0x000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000002600000000000000000000000000000000000000000000000000000000000000002000000000000000000000000b21b06d71c75973babde35b49ffdac3f82ad3775000000000000000000000000d10b40ff1d92e2267d099da3509253d9da4d715e0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000002d7570646174654173736574537570706c7943617028616464726573732c616464726573732c75696e74313238290000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000236465706c6f79416e6455706772616465546f28616464726573732c616464726573732900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000600000000000000000000000006f7d514bbd4aff3bcd1140b7344b32f063dee4860000000000000000000000004186bfc76e2e237523cbc30fd220fe055156b41f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000b21b06d71c75973babde35b49ffdac3f82ad37750000000000000000000000006f7d514bbd4aff3bcd1140b7344b32f063dee486",
  "gasLimit": "1102329",
  "l2CallValue": "0",
  "maxFeePerGas": "500000000",
  "maxSubmissionCost": "1393610000000000",
  "callValueRefundAddress": "0x3fB4d38ea7EC20D91917c09591490Eeda38Cf88A",
  "excessFeeRefundAddress": "0x3fB4d38ea7EC20D91917c09591490Eeda38Cf88A"
}
Calldata
#1sendMessage(address,bytes,uint32)chain 0x1
Target
0x866e…0afa
Value
0 wei
Function
sendMessage(address,bytes,uint32)
Arguments
{
  "_target": "0x18281dfC4d00905DA1aaA6731414EABa843c468A",
  "_message": "0x000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000260000000000000000000000000000000000000000000000000000000000000000200000000000000000000000045939657d1ca34a8fa39a924b71d28fe8431e581000000000000000000000000bde8f31d2ddda895264e27dd990fab3dc87b372d0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000002d7570646174654173736574537570706c7943617028616464726573732c616464726573732c75696e74313238290000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000236465706c6f79416e6455706772616465546f28616464726573732c616464726573732900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000006000000000000000000000000046e6b214b524310239732d51387075e0e70970bf000000000000000000000000edfa23602d0ec14714057867a78d01e94176bea00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000045939657d1ca34a8fa39a924b71d28fe8431e58100000000000000000000000046e6b214b524310239732d51387075e0e70970bf",
  "_minGasLimit": "5000000"
}
Calldata
#2sendMessage(address,bytes,uint32)chain 0x1
Target
0x25ac…5fa1
Value
0 wei
Function
sendMessage(address,bytes,uint32)
Arguments
{
  "_target": "0xC3a73A70d1577CD5B02da0bA91C0Afc8fA434DAF",
  "_message": "0x000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000260000000000000000000000000000000000000000000000000000000000000000200000000000000000000000084e93ec6170ed630f5ebd89a1aae72d4f63f271300000000000000000000000024d86da09c4dd64e50db7501b0f695d030f397af0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000002d7570646174654173736574537570706c7943617028616464726573732c616464726573732c75696e74313238290000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000236465706c6f79416e6455706772616465546f28616464726573732c616464726573732900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000060000000000000000000000000e36a30d249f7761327fd973001a32010b521b6fd00000000000000000000000087eee96d50fb761ad85b1c982d28a042169d61b10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000084e93ec6170ed630f5ebd89a1aae72d4f63f2713000000000000000000000000e36a30d249f7761327fd973001a32010b521b6fd",
  "_minGasLimit": "2500000"
}
Calldata
#3sendMessage(address,uint256,bytes)chain 0x1
Target
0xd19d…876f
Value
0 wei
Function
sendMessage(address,uint256,bytes)
Arguments
{
  "_to": "0x1F71901daf98d70B4BAF40DE080321e5C2676856",
  "_fee": "0",
  "_calldata": "0x000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000002600000000000000000000000000000000000000000000000000000000000000002000000000000000000000000970ffd8e335b8fa4cd5c869c7cac3a90671d5dc30000000000000000000000004b5dee60531a72c1264319ec6a22678a4d0c81180000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000002d7570646174654173736574537570706c7943617028616464726573732c616464726573732c75696e74313238290000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000236465706c6f79416e6455706772616465546f28616464726573732c616464726573732900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000006000000000000000000000000060f2058379716a64a7a5d29219397e79bc552194000000000000000000000000d2671165570f41bbb3b0097893300b6eb6101e6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000970ffd8e335b8fa4cd5c869c7cac3a90671d5dc300000000000000000000000060f2058379716a64a7a5d29219397e79bc552194"
}
Calldata
#4sendMessage(address,bytes,uint32)chain 0x1
Target
0x9a3d…98a6
Value
0 wei
Function
sendMessage(address,bytes,uint32)
Arguments
{
  "_target": "0x4b5DeE60531a72C1264319Ec6A22678a4D0C8118",
  "_message": "0x000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000026000000000000000000000000000000000000000000000000000000000000000020000000000000000000000008df378453ff9deffa513367cdf9b3b53726303e9000000000000000000000000aeb318360f27748acb200ce616e389a6c9409a070000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000000000000000000000000000000000000000002d7570646174654173736574537570706c7943617028616464726573732c616464726573732c75696e74313238290000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000236465706c6f79416e6455706772616465546f28616464726573732c616464726573732900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000600000000000000000000000006c987dde50db1dcdd32cd4175778c2a291978e2a000000000000000000000000c3eacf0612346366db554c991d7858716db09f58000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000008df378453ff9deffa513367cdf9b3b53726303e90000000000000000000000006c987dde50db1dcdd32cd4175778c2a291978e2a",
  "_minGasLimit": "2500000"
}
Calldata

05Tally

Summed from votes

Voters0
VP participating0
Outcome (current)—
Current support—

06Voters

0 total
Filter:
VoterChoice% of totalRationale
3F0x3fb1…4c8aFor104.8K0.00%—7mo ago
660x66cd…65f9For80.2K0.00%—7mo ago
B30xb356…c826For60.3K0.00%—7mo ago
B40xb49f…7948For60K0.00%—7mo ago
050x0579…ca09For60K0.00%—7mo ago
170x1729…b879For60K0.00%—7mo ago
B70xb792…89d7For60K0.00%—7mo ago
B90xb933…8dd1For60K0.00%—7mo ago
D20xd2a7…5a0cFor60K0.00%—7mo ago
070x0703…961bFor51.7K0.00%—7mo ago
130x13bd…8548For30K0.00%—7mo ago
1F0x1f3d…0591For440.70.00%—7mo ago
C50xc554…7759For11.20.00%—7mo ago
2F0x2f2f…f78aFor0.50.00%—7mo ago
Showing 14

07Forum

No forum thread is confidently linked to this proposal.