Find the Forum post and discussion here: CIP-5: Enable Swapping of vCOW to COW
The purpose of this CIP is to gather support within the community for enabling the swapping of vCOW tokens into COW tokens. COW is a standard ERC-20 token which can be transferred and traded freely.
This CIP will advance CowAO by allowing vCOW holders to swap vCOW for COW tokens. This will allow the token to become transferrable tradable outside of the CowDAO ecosystem encouraging price discovery of the COW token. Consequently, CowDAO will be able to proceed with additional important proposals such as the Community Grant Program, Affiliate Program Incentives, Solver Incentives, and more.
It is proposed to enable the swapAll function in the vCOW smart contract by sending COW tokens from CowDAOs treasury into the vCOW contract. The proposed deployment code is available here.
As of now, CowDAO is governed by vCOW token holders. Assuming no changes to governance rules, COW token holders will not be able to vote on future proposals. It is proposed to change CowDAOs governance rules and adapt its snapshot space to count both vCOW and COW as valid for voting on CowDAO proposals.
CIP-draft: COW liquidity incentive program As the COW token becomes tradable, the community might want to consider a liquidity incentive program that will reward liquidity providers. The rational for joint execution is detailed in the proposal.
At the moment it is still unknown if the proposal for COW liquidity incentives will be approved. If it will be approved before this proposal, it is proposed to execute them jointly. The proposal for swapping vCOW to COW is independent and will be executed upon approval even if liquidity incentive program is not approved prior.
The below transaction data is an example including estimated amounts. Final amounts can be added only after March 25th.
[
[
{
"to": "0xDEf1CA1fb7FBcDC777520aa7f396b4E015F497aB",
"data": "0xa9059cbb000000000000000000000000d057b63f5e69cf1b929b356b579cba08d76880480000000000000000000000000000000000000000016bb35807dac17f86600000",
"value": "0",
"operation": 0
},
{
"to": "0xDEf1CA1fb7FBcDC777520aa7f396b4E015F497aB",
"value": "0",
"data": "0x095ea7b300000000000000000000000088ad09518695c6c3712ac10a214be5109a6556710000000000000000000000000000000000000000001c84f8a471f4d997418000",
"operation": 0
},
{
"to": "0x88ad09518695c6c3712AC10a214bE5109a655671",
"value": "0",
"data": "0xad58bdd1000000000000000000000000def1ca1fb7fbcdc777520aa7f396b4e015f497ab000000000000000000000000c20c9c13e853fc64d054b73ff21d3636b2d97eab0000000000000000000000000000000000000000001c84f8a471f4d997418000",
"operation": 0
}
]
]
Preliminary simulation with estimated amount for the mainnet transfer:
For simulating the next steps you'd need to create a fork on Tenderly as this requires to simulate approval on the bridge contract and then contract interaction.