Proposal summary
This proposal withdraws 8,500 USDC of reserves from the Compound III USDC market on Scroll and bridges it back to the Compound Timelock on Ethereum Mainnet using Scroll's native USDC bridge.
Withdrawing the reserves is the final step of the deprecation process and secures the market's protocol-owned funds by moving them to the Timelock on Mainnet.
Reserves withdrawal
Reserves are the protocol-owned portion of the market's base asset: the Comet's USDC balance plus outstanding borrows, minus what is owed to suppliers, as reported by getReserves(). They do not belong to any user, so withdrawing them does not change supplier or borrower balances. Only the governor of the market (the Scroll Timelock) can call withdrawReserves.
| Source | Amount |
|---|
cUSDCv3 reserves at proposal creation (getReserves()) | 13,906.15 USDC |
| Withdrawn and bridged to the Mainnet Timelock | 8,500.00 USDC |
The proposal does not withdraw all reserves. The market still has open borrow positions, so the remaining USDC is left as a buffer that keeps the market solvent until those positions are repaid or liquidated. The rest can be withdrawn by a later proposal once they are closed.
Proposal actions
The proposal action sends a message through the Scroll Messenger to the Scroll Bridge Receiver, which queues the following calls on the Scroll Timelock:
- Call
withdrawReserves(address,uint256) on the Scroll cUSDCv3 to withdraw 8,500 USDC to the Scroll Timelock.
- Approve the L2 USDC gateway to spend 8,500 USDC from the Scroll Timelock.
- Call
withdrawERC20 on the L2 USDC gateway to bridge the USDC back to the Mainnet Timelock.
Once the Scroll batch containing the withdrawal is finalized on Mainnet, the withdrawal is claimed on the Scroll L1 messenger with relayMessageWithProof. Anyone can submit the claim, and the USDC can only be released to the Mainnet Timelock.