KVORUM
compoundSource: Compound governor oz · #572

Reduce Borrow Collateral Factor for rsETH to 0 on L2 Markets

executedApr 24, 2026, 07:05 AM UTCby4D0x4d80…ef4b

01Summary

AISummary by Kvorumclaude-haiku-4-5

This proposal reduces the borrow collateral factor for rsETH to 0 across five Layer 2 markets (Arbitrum, Base, Linea, Optimism, and Unichain), preventing rsETH from being used as collateral for new loans on these networks. This is a risk mitigation response to the Kelp DAO exploit. Existing collateral factors for liquidation purposes remain unchanged, so no immediate liquidations will be triggered.

Type
parameter change

Key changes

  • Reduce borrow collateral factor for rsETH to 0 on Arbitrum WETH market(high)
  • Reduce borrow collateral factor for rsETH to 0 on Base WETH market(high)
  • Reduce borrow collateral factor for rsETH to 0 on Linea WETH market(high)
  • Reduce borrow collateral factor for rsETH to 0 on Optimism WETH market(high)
  • Reduce borrow collateral factor for rsETH to 0 on Unichain WETH market(high)
  • Liquidation collateral factor for rsETH remains unchanged(medium)

Notable concerns

  • Action is a response to Kelp DAO exploit, indicating security concerns with rsETH
  • Proposal spans multiple L2 networks, requiring coordinated cross-chain execution
ContractsrsETH on Arbitrum WETH marketrsETH on Base WETH marketrsETH on Linea WETH marketrsETH on Optimism WETH marketrsETH on Unichain WETH market
Generated by Kvorum
model: claude-haiku-4-5
provider: anthropic
profile: anthropic-fast-v1
prompt: v1.0
generated: 2mo ago
Read the description ↗

02Description

76 words

Reduce Borrow Collateral Factor for rsETH to 0 on L2 Markets

This proposal reduces the collateral factor utilized on borrow for rsETH-once executed, rsETH on Arbitrum WETH, Base WETH, Linea WETH, Optimism WETH and Unichain WETH markets can not be used as collateral for new loans. Note that this proposal will not directly trigger any liquidations as the liquidation collateral factor remains unchanged.

Please see the forums for further details

03Mismatch analysis

AIMismatch analysis by Kvorummedium confidenceclaude-sonnet-5
Consistent

The proposal describes a single conceptual change—setting the rsETH borrow collateral factor to 0 across five L2 Compound markets (Arbitrum, Base, Linea, Optimism, Unichain WETH)—while explicitly noting the liquidation collateral factor is untouched. The calldata contains exactly five actions, one per chain, each using the chain's native cross-domain messaging mechanism (Arbitrum retryable ticket, and sendMessage calls to what appear to be Base, Optimism, Linea, and Unichain bridge contracts). Each encoded message follows the identical pattern: a call to updateAssetBorrowCollateralFactor(address,address,uint64) followed by deployAndUpgradeTo(address,address), which is the standard Compound III governance pattern for updating a Comet market's asset configuration and then deploying the new configuration to the live proxy. This structurally matches the description's claim exactly — five actions for five described markets, using a function whose name directly corresponds to 'borrow collateral factor', with no calls to liquidation-related functions (consistent with the note that liquidation CF is unchanged). The actual numeric value (presumably 0) is embedded deep inside nested ABI-encoded bytes and cannot be independently decoded from the fields provided, which is why confidence is medium rather than high — I cannot 100% confirm the encoded uint64 is exactly zero, but there is no evidence of any other value or of any extraneous action. No omitted actions, extra actions, or target mismatches are apparent from the available decoding, and the count/structure fully aligns with the proposal's plain description of a five-chain borrow-CF reduction.

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

04Actions

5 total
#0createRetryableTicket(address,uint256,uint256,address,address,uint256,uint256,bytes)chain 0x1
Target
0x4dbd…ab3f
Value
1949157000000000 wei
Function
createRetryableTicket(address,uint256,uint256,address,address,uint256,uint256,bytes)
Arguments
{
  "to": "0x42480C37B249e33aABaf4c22B20235656bd38068",
  "data": "0x000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000002600000000000000000000000000000000000000000000000000000000000000002000000000000000000000000b21b06d71c75973babde35b49ffdac3f82ad3775000000000000000000000000d10b40ff1d92e2267d099da3509253d9da4d715e0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000397570646174654173736574426f72726f77436f6c6c61746572616c466163746f7228616464726573732c616464726573732c75696e743634290000000000000000000000000000000000000000000000000000000000000000000000000000236465706c6f79416e6455706772616465546f28616464726573732c616464726573732900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000600000000000000000000000006f7d514bbd4aff3bcd1140b7344b32f063dee4860000000000000000000000004186bfc76e2e237523cbc30fd220fe055156b41f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000b21b06d71c75973babde35b49ffdac3f82ad37750000000000000000000000006f7d514bbd4aff3bcd1140b7344b32f063dee486",
  "gasLimit": "1111094",
  "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": "0x000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000260000000000000000000000000000000000000000000000000000000000000000200000000000000000000000045939657d1ca34a8fa39a924b71d28fe8431e581000000000000000000000000bde8f31d2ddda895264e27dd990fab3dc87b372d0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000397570646174654173736574426f72726f77436f6c6c61746572616c466163746f7228616464726573732c616464726573732c75696e743634290000000000000000000000000000000000000000000000000000000000000000000000000000236465706c6f79416e6455706772616465546f28616464726573732c616464726573732900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000006000000000000000000000000046e6b214b524310239732d51387075e0e70970bf000000000000000000000000edfa23602d0ec14714057867a78d01e94176bea00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000045939657d1ca34a8fa39a924b71d28fe8431e58100000000000000000000000046e6b214b524310239732d51387075e0e70970bf",
  "_minGasLimit": "5000000"
}
Calldata
#2sendMessage(address,bytes,uint32)chain 0x1
Target
0x25ac…5fa1
Value
0 wei
Function
sendMessage(address,bytes,uint32)
Arguments
{
  "_target": "0xC3a73A70d1577CD5B02da0bA91C0Afc8fA434DAF",
  "_message": "0x000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000001400000000000000000000000000000000000000000000000000000000000000260000000000000000000000000000000000000000000000000000000000000000200000000000000000000000084e93ec6170ed630f5ebd89a1aae72d4f63f271300000000000000000000000024d86da09c4dd64e50db7501b0f695d030f397af0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000397570646174654173736574426f72726f77436f6c6c61746572616c466163746f7228616464726573732c616464726573732c75696e743634290000000000000000000000000000000000000000000000000000000000000000000000000000236465706c6f79416e6455706772616465546f28616464726573732c616464726573732900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000060000000000000000000000000e36a30d249f7761327fd973001a32010b521b6fd00000000000000000000000087eee96d50fb761ad85b1c982d28a042169d61b10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000084e93ec6170ed630f5ebd89a1aae72d4f63f2713000000000000000000000000e36a30d249f7761327fd973001a32010b521b6fd",
  "_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": "0x000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000014000000000000000000000000000000000000000000000000000000000000002600000000000000000000000000000000000000000000000000000000000000002000000000000000000000000970ffd8e335b8fa4cd5c869c7cac3a90671d5dc30000000000000000000000004b5dee60531a72c1264319ec6a22678a4d0c81180000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000397570646174654173736574426f72726f77436f6c6c61746572616c466163746f7228616464726573732c616464726573732c75696e743634290000000000000000000000000000000000000000000000000000000000000000000000000000236465706c6f79416e6455706772616465546f28616464726573732c616464726573732900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000000000000000000000000000000000000000006000000000000000000000000060f2058379716a64a7a5d29219397e79bc552194000000000000000000000000d2671165570f41bbb3b0097893300b6eb6101e6c00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000970ffd8e335b8fa4cd5c869c7cac3a90671d5dc300000000000000000000000060f2058379716a64a7a5d29219397e79bc552194"
}
Calldata
#4sendMessage(address,bytes,uint32)chain 0x1
Target
0x9a3d…98a6
Value
0 wei
Function
sendMessage(address,bytes,uint32)
Arguments
{
  "_target": "0x4b5DeE60531a72C1264319Ec6A22678a4D0C8118",
  "_message": "0x000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000026000000000000000000000000000000000000000000000000000000000000000020000000000000000000000008df378453ff9deffa513367cdf9b3b53726303e9000000000000000000000000aeb318360f27748acb200ce616e389a6c9409a070000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000397570646174654173736574426f72726f77436f6c6c61746572616c466163746f7228616464726573732c616464726573732c75696e743634290000000000000000000000000000000000000000000000000000000000000000000000000000236465706c6f79416e6455706772616465546f28616464726573732c616464726573732900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000000600000000000000000000000006c987dde50db1dcdd32cd4175778c2a291978e2a000000000000000000000000c3eacf0612346366db554c991d7858716db09f58000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000008df378453ff9deffa513367cdf9b3b53726303e90000000000000000000000006c987dde50db1dcdd32cd4175778c2a291978e2a",
  "_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
2B0x2b38…bf33For50.3K0.00%—7mo ago
4F0x4f89…fd3cFor50K0.00%—7mo ago
130x13bd…8548For30K0.00%—7mo ago
540x54a3…e189For29.9K0.00%—7mo ago
1F0x1f3d…0591For440.70.00%—7mo ago
C50xc554…7759For11.20.00%—7mo ago
9F0x9f77…2768For0.90.00%—7mo ago
2F0x2f2f…f78aFor0.50.00%—7mo ago
Showing 18

07Forum

No forum thread is confidently linked to this proposal.