This document clarifies the Mainnet WBTC market deployment.
Issues overview
The audit report of the deployment can be found here.
- M1. Insufficient Reserves In cWBTC. We used the wrong address for reserves. Instead of using 0xC11b1268C1A384e55C48c2391d8d480264A3A7F4 we need to use 0xccF4429DB6322D5C611ee964527D42E5d685DD6a. Commit.
- L1. WBTC Mainnet Scenario Failure. Due to the new Governor, several scenarios failed. Below you can see all the successful actions.
- L2. Newly Added Assets Have No Supply Cap. It is made on purpose. As Comet was not deployed, we should not allow users to supply collaterals. Exactly on-chain proposal should set up the caps. commit.
- L3. Proposal Description Incomplete. As Comet was not deployed, the description was not finalized. commit.
Note
- USDS on Base proposal is active on the moment of pushing this proposal. The proposal reached the quorum and we expect that the proposal will be executed without fail. In case we need to cancel proposal 395, we need to cancel this proposal too.
- USDC on Linea proposal is active at the moment of pushing this proposal. We expect proposal 401 will reach the quorum and will be executed successfully. In case we need to cancel proposal 401, we need to cancel this proposal too.
PR with all the changes including 24 collaterals update - Deploy WBTC market on Mainnet by MishaShWoof · Pull Request #954 · compound-finance/comet · GitHub
PR ONLY with WBTC changes for easier review - Squash Mainnet WBTC by MishaShWoof · Pull Request #116 · woof-software/comet · GitHub - please review only this scope
Comet Proxy - TransparentUpgradeableProxy | Address 0xe85dc543813b8c2cfeaac371517b925a166a9293 | Etherscan
Comet Impl - CometWithExtendedAssetList | Address 0x652b1844270e38ae27ccf53de94207aa1d50cd0a | Etherscan
CometExt - CometExtAssetList | Address 0x4f4d5a808e2448cb12df7ac12efb12888fd9bdd5 | Etherscan
PumpBTC Price feed wrapper - ScalingPriceFeed | Address 0x351a133fd850ea81ed8a782016e308acbaddec91 | Etherscan
Actions
- Run Slither. Fails.
. Deploy WBTC market on Mainnet · woof-software/comet@6d85222 · GitHub
- Forge test. Success.
Squash Mainnet WBTC · woof-software/comet@6d85222 · GitHub
- Gas Profiler. Success.
Squash Mainnet WBTC · woof-software/comet@6d85222 · GitHub
- Scan. Success.
Squash Mainnet WBTC · woof-software/comet@6d85222 · GitHub
- mainnet-wbtc Scenario. Success.
Deploy WBTC market on Mainnet · woof-software/comet@6d85222 · GitHub
- Unit tests. Success.
Deploy WBTC market on Mainnet · woof-software/comet@6d85222 · GitHub
- Eslint. Deploy WBTC market on Mainnet · woof-software/comet@6d85222 · GitHub
- Contract linter. Success.
Squash Mainnet WBTC · woof-software/comet@6d85222 · GitHub
- Deployment. Success.
Deploy Market · woof-software/comet@c17b696 · GitHub
- Enact migration with impersonate. Success.
Enact Migration · woof-software/comet@6d85222 · GitHub
- Enact migration. [should be run by delegator] Enact Migration · woof-software/comet@6d85222 · GitHub
Description we use:
Initialize cWBTCv3 on Ethereum Mainnet\n\n
Proposal summary\n\n
Compound Growth Program [AlphaGrowth] proposes the deployment of Compound III to the Mainnet network. This proposal takes the governance steps recommended and necessary to initialize a Compound III WBTC market on Mainnet; upon execution, cWBTCv3 will be ready for use. Simulations have confirmed the market’s readiness, as much as possible, using the Comet scenario suite. The new parameters include setting the risk parameters based off of the recommendations from Gauntlet.\n\n
Further detailed information can be found on the corresponding proposal pull request, deploy market GitHub action run and forum discussion.\n\n\n
ENS TXT record update\n\n
USDS on Base proposal is active on the moment of pushing this proposal. The proposal reached the quorum and we expect that the proposal will be executed without fail. In case we need to cancel proposal 395, we need to cancel this proposal too\n\n
USDC on Linea proposal is active on the moment of pushing this proposal. We expect proposal 401 will reach the quorum and will be executed successfully. In case we need to cancel proposal 401, we need to cancel this proposal too.
Proposal Actions\n\n
The first proposal action sets the CometFactory for the new Comet instance in the existing Configurator.\n\n
The second action configures the Comet instance in the Configurator.\n\n
The third action deploys an instance of the newly configured factory and upgrades the Comet instance to use that implementation.\n\n
The fourth action configures the existing rewards contract for the newly deployed Comet instance.\n\n
The fifth action reduces Compound’s cWBTC reserves and transfers it to Timelock, in order to seed the market reserves for the cWBTCv3 Comet.\n\n
The sixth action transfers reserves from Timelock to the cWBTCv3 Comet.\n\n
The seventh action updates the ENS TXT record v3-official-markets
on v3-additional-grants.compound-community-licenses.eth
, updating the official markets JSON to include the new Ethereum Mainnet cWBTCv3 market.