KVORUM
compoundSource: Compound governor oz · #587

Update Linea and Scroll Comets to the service patch version

executedJun 6, 2026, 10:31 AM UTCbyD20xd2a7…5a0c

01Summary

AISummary by Kvorumclaude-haiku-4-5

WOOF! proposes upgrading Comet markets on Linea and Scroll to a service patch version introducing extended pause controls, price feed improvements, collateral deactivation mechanism, utilization capping at 200%, index accrual fixes, and gas optimizations. The upgrade has been audited by Certora and uses a trustless bytecode repository for deterministic deployment.

Type
contract upgrade

Key changes

  • Extended Pause Controls: collateral interactions can now be paused independently per collateral asset(medium)
  • Price Feed Patch: skips price feed calls for assets with zero collateral factor to prevent unnecessary reverts(high)
  • Collateral Deactivation Mechanism: Guardian-controlled emergency mechanism to deactivate unsafe collateral assets with governance-required reactivation(high)
  • Utilization Peaking Protection: caps utilization at 200% to prevent additional borrowing when post-borrow utilization exceeds threshold(high)
  • Borrow Index Fix: prevents borrow interest accrual in empty markets without active borrowers(medium)
  • Supply Index Fix: ensures supply index only accrues when lenders are present(medium)
  • Lender Illiquidity Fix: prevents reserve depletion by capping supply rate to zero in zero-borrow markets with exhausted reserves(high)
  • Accrue Interest on Collateral Actions: collateral actions now trigger interest accrual for affected accounts(medium)

Notable concerns

  • Price feed patch and collateral deactivation mechanism are responses to the USDM incident, indicating previous protocol vulnerabilities
  • Guardian-controlled collateral deactivation introduces centralized emergency control that requires monitoring
  • Utilization capping at 200% changes borrowing mechanics and may affect existing positions
ContractsLinea cUSDCv3Linea cWETHv3Scroll cUSDCv3Comet FactoryComet Extension Delegate
Generated by Kvorum
model: claude-haiku-4-5
provider: anthropic
profile: anthropic-fast-v1
prompt: v1.0
generated: 2mo ago
Read the description ↗

02Description

393 words

Update Linea and Scroll Comets to the service patch version

Proposal summary

WOOF! proposes upgrading the Linea cUSDCv3, cWETHv3, and Scroll cUSDCv3 Comet markets to a new service patch version introducing several improvements and security enhancements:

  • Extended Pause Controls: collateral interactions can now be paused independently per collateral asset.
  • Price Feed Patch (Post-USDM incident response): skips price feed calls for assets with zero collateral factor, preventing unnecessary reverts.
  • Collateral Deactivation Mechanism: introduces a Guardian-controlled emergency mechanism to deactivate unsafe collateral assets, with reactivation requiring a governance proposal.
  • Utilization Peaking Protection: caps utilization at 200%, preventing additional borrowing when post-borrow utilization exceeds this threshold, while preserving lender withdrawals.
  • Borrow Index Fix (Empty Market): prevents borrow interest accrual in markets without active borrowers.
  • Supply Index Fix (Empty Market): ensures supply index only accrues when lenders are present.
  • Lender Illiquidity Fix in Zero-Borrow Markets: prevents reserve depletion in markets with no borrowers by capping supply rate to zero when utilization is zero and reserves are exhausted.
  • Accrue Interest on Collateral Actions (Post-USDM incident response): collateral actions (supply, withdraw, transfer) now trigger interest accrual for affected accounts.
  • Technical Improvements: includes removal of redundant arguments in supplyInternal() and optimized price caching in absorbInternal(), improving gas efficiency without affecting protocol behavior.

This proposal takes the governance steps recommended and necessary to update Compound III USDC and WETH markets on Linea and Scroll. Simulations have confirmed the market’s readiness, as much as possible, using the Comet scenario suite.

Detailed information can be found on the corresponding proposal pull request.

Bytecode Repository

This update is done with the use of the bytecode repository, which provides trustless and deterministic deployments.

Further details on the deployment can be found in the Bytecode Repository git and forum discussion.

Audit

Both service patch Comet update and Bytecode Repository have been audited by Certora and full reports can be found here:

Proposal Actions

The first action sets the factory to the newly deployed factory, extension delegate to the newly deployed contract and deploys and upgrades Comet to a new version on Linea.

The second action sets the factory to the newly deployed factory, extension delegate to the newly deployed contract and deploys and upgrades Comet to a new version on Scroll.

03Mismatch analysis

AIMismatch analysis by Kvorummedium confidenceclaude-sonnet-5
Consistent

The description states two governance actions: an upgrade for Linea markets (cUSDCv3, cWETHv3) and an upgrade for a Scroll market (cUSDCv3), each performing setFactory, setExtensionDelegate, and deployAndUpgradeTo. The decoded calldata for action 0 shows a Linea cross-chain message containing two repeated sets of the three named function selectors (setFactory, setExtensionDelegate, deployAndUpgradeTo) with distinct address pairs, consistent with two markets being upgraded on Linea. Action 1 shows a Scroll cross-chain message with a single set of the same three function selectors, consistent with one market (cUSDCv3) being upgraded on Scroll. The function names and structure directly match the prose's description of the mechanism (bytecode-repository-based factory/extension-delegate/upgrade pattern). The only notable addition not mentioned in the prose is the 0.05 ETH value attached to the Scroll message, which is standard for L1->L2 bridge fee payments and does not represent a misdirected transfer, so it is flagged only as a low-severity omission. No value mismatches, target mismatches, or extra/missing strategic actions were found. Confidence is medium because the specific market/collateral addresses embedded in the nested calldata could not be independently verified against the actual on-chain Comet market addresses for Linea/Scroll, but the structural pattern and counts strongly support the description's claims.

Discrepancies

  • lowomitted in description

    Action 1 sends 0.05 ETH (50000000000000000 wei) as msg.value, presumably to cover the Scroll L1->L2 message execution fee. The description does not mention this ETH expenditure, though it is a standard bridging fee mechanism rather than a fund transfer to an unrelated party.

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

04Actions

2 total
#0sendMessage(address,uint256,bytes)chain 0x1
Target
0xd19d…876f
Value
0 wei
Function
sendMessage(address,uint256,bytes)
Arguments
{
  "_to": "0x1F71901daf98d70B4BAF40DE080321e5C2676856",
  "_fee": "0",
  "_calldata": "0x00000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000160000000000000000000000000000000000000000000000000000000000000024000000000000000000000000000000000000000000000000000000000000005200000000000000000000000000000000000000000000000000000000000000006000000000000000000000000970ffd8e335b8fa4cd5c869c7cac3a90671d5dc3000000000000000000000000970ffd8e335b8fa4cd5c869c7cac3a90671d5dc30000000000000000000000004b5dee60531a72c1264319ec6a22678a4d0c8118000000000000000000000000970ffd8e335b8fa4cd5c869c7cac3a90671d5dc3000000000000000000000000970ffd8e335b8fa4cd5c869c7cac3a90671d5dc30000000000000000000000004b5dee60531a72c1264319ec6a22678a4d0c81180000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000016000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000260000000000000000000000000000000000000000000000000000000000000001b736574466163746f727928616464726573732c616464726573732900000000000000000000000000000000000000000000000000000000000000000000000025736574457874656e73696f6e44656c656761746528616464726573732c616464726573732900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000236465706c6f79416e6455706772616465546f28616464726573732c61646472657373290000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001b736574466163746f727928616464726573732c616464726573732900000000000000000000000000000000000000000000000000000000000000000000000025736574457874656e73696f6e44656c656761746528616464726573732c616464726573732900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000236465706c6f79416e6455706772616465546f28616464726573732c61646472657373290000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000c00000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000001e0000000000000000000000000000000000000000000000000000000000000024000000000000000000000000000000000000000000000000000000000000002a000000000000000000000000000000000000000000000000000000000000000400000000000000000000000008d38a3d6b3c3b7d96d6536da7eef94a9d7dbc99100000000000000000000000074a241aa5e2c0d62ac267fc481790f3474ed5aaf00000000000000000000000000000000000000000000000000000000000000400000000000000000000000008d38a3d6b3c3b7d96d6536da7eef94a9d7dbc991000000000000000000000000bc7b80c97b560e83a229a6417ed4fc2d75fc12090000000000000000000000000000000000000000000000000000000000000040000000000000000000000000970ffd8e335b8fa4cd5c869c7cac3a90671d5dc30000000000000000000000008d38a3d6b3c3b7d96d6536da7eef94a9d7dbc991000000000000000000000000000000000000000000000000000000000000004000000000000000000000000060f2058379716a64a7a5d29219397e79bc55219400000000000000000000000074a241aa5e2c0d62ac267fc481790f3474ed5aaf000000000000000000000000000000000000000000000000000000000000004000000000000000000000000060f2058379716a64a7a5d29219397e79bc55219400000000000000000000000078ee842bf092caaa68de542a8b1d1bf337ead33f0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000970ffd8e335b8fa4cd5c869c7cac3a90671d5dc300000000000000000000000060f2058379716a64a7a5d29219397e79bc552194"
}
Calldata
#1sendMessage(address,uint256,bytes,uint256)chain 0x1
Target
0x6774…b367
Value
50000000000000000 wei
Function
sendMessage(address,uint256,bytes,uint256)
Arguments
{
  "_to": "0xC6bf5A64896D679Cf89843DbeC6c0f5d3C9b610D",
  "_value": "0",
  "_message": "0x00000000000000000000000000000000000000000000000000000000000000800000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000018000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000000003000000000000000000000000ecab0beea3e5dea0c35d3e69468eac20098032d7000000000000000000000000ecab0beea3e5dea0c35d3e69468eac20098032d700000000000000000000000087a27b91f4130a25e9634d23a5b8e05e342bac5000000000000000000000000000000000000000000000000000000000000000030000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000001b736574466163746f727928616464726573732c616464726573732900000000000000000000000000000000000000000000000000000000000000000000000025736574457874656e73696f6e44656c656761746528616464726573732c616464726573732900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000236465706c6f79416e6455706772616465546f28616464726573732c616464726573732900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000040000000000000000000000000b2f97c1bd3bf02f5e74d13f02e3e26f93d77ce44000000000000000000000000f27f2346d71ffa71b769ab781b7587b8238090fd0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000b2f97c1bd3bf02f5e74d13f02e3e26f93d77ce44000000000000000000000000987fddf251fc26cbf29ea76666058eddaa14230d0000000000000000000000000000000000000000000000000000000000000040000000000000000000000000ecab0beea3e5dea0c35d3e69468eac20098032d7000000000000000000000000b2f97c1bd3bf02f5e74d13f02e3e26f93d77ce44",
  "_gasLimit": "1000000"
}
Calldata

05Tally

Summed from votes

Voters13
VP participating596.2K
Outcome (current)For
Current support100%

06Voters

13 total
Filter:
VoterChoice% of totalRationale
3F0x3fb1…4c8aFor104.8K17.58%—5mo ago
660x66cd…65f9For80.2K13.46%—5mo ago
B40xb49f…7948For60K10.06%—5mo ago
050x0579…ca09For60K10.06%—5mo ago
170x1729…b879For60K10.06%—5mo ago
B70xb792…89d7For60K10.06%—5mo ago
B90xb933…8dd1For60K10.06%—5mo ago
B30xb356…c826For59K9.89%—5mo ago
070x0703…961bFor51.7K8.68%—5mo ago
1F0x1f3d…0591For440.70.07%—5mo ago
C50xc554…7759For11.20.00%—5mo ago
9F0x9f77…2768For10.00%—5mo ago
2F0x2f2f…f78aFor0.50.00%—5mo ago
Showing 13

07Forum

No forum thread is confidently linked to this proposal.