Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade 3CRV Convex Meta Vault contract #83

Closed
6 tasks done
naddison36 opened this issue Nov 21, 2022 · 5 comments
Closed
6 tasks done

Upgrade 3CRV Convex Meta Vault contract #83

naddison36 opened this issue Nov 21, 2022 · 5 comments
Assignees
Labels
contract Contract work v2 mStable v2 roadmap

Comments

@naddison36
Copy link
Contributor

naddison36 commented Nov 21, 2022

The upgrade includes the following changes

  1. Fixed charging the performance to store assets per share with newly minted fee shares included for the next performance period.
  2. assets per share updated after removeVault.
  • Deploy new PeriodicAllocationPerfFeeMetaVault contract
  • Check no change to storage slots between implementation contracts
  • Check code differences between deployed implementation contracts
  • Raise Protocol DAO to upgrade the 3CRV Convex Meta Vault proxy contract 0x9614a4C61E45575b56c7e0251f63DCDe797d93C5
  • Execute Protocol DAO to upgrade the proxy
  • Update Immunefi contract list
@naddison36 naddison36 added contract Contract work v2 mStable v2 roadmap labels Nov 21, 2022
@naddison36 naddison36 self-assigned this Nov 21, 2022
@naddison36
Copy link
Contributor Author

Deploy of new PeriodicAllocationPerfFeeMetaVault contract to mainnet to 0x20A96Fc12F7EA1fF62304A2FAe0C1480fda9aA32

export ETHERSCAN_KEY=<API key>
yarn task convex-3crv-mv-deploy --vaults vcx3CRV-mUSD,vcx3CRV-BUSD,vcx3CRV-FRAX --single-source vcx3CRV-mUSD --proxy false --network mainnet
  mstable:addresses Resolved contract name "Nexus" to address 0xAFcE80b19A8cE13DEc0739a1aaB7A028d6845Eb3 +0ms
  mstable:addresses Resolved token symbol 3Crv to address 0x6c3F90f043a72FA612cbac8115EE7e52BDe6E490 +0ms
  mstable:addresses Resolved contract name "InstantProxyAdmin" to address 0x3517F5a251d56C768789c22E989FAa7d906b5a13 +1ms
  mstable:addresses Resolved contract name "VaultManager" to address 0x1116241647D2173342b108e6363fFe58762e3e97 +0ms
  mstable:addresses Resolved asset with symbol "vcx3CRV-mUSD" to address 0xB9B47E72819934d7A5d60Bf08cD2C78072383EBb +0ms
  mstable:addresses Resolved asset with symbol "vcx3CRV-BUSD" to address 0x87Ed92648fAE3b3930577c92c8A247b127ED8949 +0ms
  mstable:addresses Resolved asset with symbol "vcx3CRV-FRAX" to address 0x98c5910823C2E67d54e4e0C03de44043DbfA7ca8 +0ms
  mstable:addresses Resolved contract name "mStableDAO" to address 0x3dd46846eed8D147841AE162C8425c08BD8E1b41 +0ms
  mstable:tx Deploying PeriodicAllocationPerfFeeMetaVault contract with hash 0x30fa307b45d5deec18a5fdc72964e9634593dfb518421535d34fbe31c0c0e967 from 0xb81473f20818225302b8fffb905b53d58a793d84 with gas price 11000000000 Gwei +0ms
  mstable:tx Deployed PeriodicAllocationPerfFeeMetaVault to 0x20A96Fc12F7EA1fF62304A2FAe0C1480fda9aA32 in block 16016458, using 3705317 gas costing 0.040758487 ETH +15s
  mstable:tx ABI encoded args: 000000000000000000000000afce80b19a8ce13dec0739a1aab7a028d6845eb30000000000000000000000006c3f90f043a72fa612cbac8115ee7e52bde6e490 +0ms
About to verify 0x20A96Fc12F7EA1fF62304A2FAe0C1480fda9aA32 on Etherscan
Nothing to compile
No need to generate any newer typings.
Successfully submitted source code for contract
contracts/vault/meta/PeriodicAllocationPerfFeeMetaVault.sol:PeriodicAllocationPerfFeeMetaVault at 0x20A96Fc12F7EA1fF62304A2FAe0C1480fda9aA32
for verification on the block explorer. Waiting for verification result...

Successfully verified contract PeriodicAllocationPerfFeeMetaVault on Etherscan.
https://etherscan.io/address/0x20A96Fc12F7EA1fF62304A2FAe0C1480fda9aA32#code

@naddison36
Copy link
Contributor Author

Storage slots of old implementation
sol2uml storage 0xe3CEab97Fb4289f3A4C979E74D20c90Ab16e1F7d -o ./PeriodicAllocationPerfFeeMetaVaultOld.svg
PeriodicAllocationPerfFeeMetaVaultOld

Storage slots of new implementation
sol2uml storage 0x20A96Fc12F7EA1fF62304A2FAe0C1480fda9aA32
PeriodicAllocationPerfFeeMetaVault

@naddison36
Copy link
Contributor Author

Check code differences of the deployed code

sol2uml flatten 0xe3CEab97Fb4289f3A4C979E74D20c90Ab16e1F7d -o ./PeriodicAllocationPerfFeeMetaVaultOld.sol
sol2uml flatten 0x20A96Fc12F7EA1fF62304A2FAe0C1480fda9aA32 -o ./PeriodicAllocationPerfFeeMetaVaultNew.sol

@naddison36
Copy link
Contributor Author

Protocol DAO tx 356 to upgrade the proxy contract https://gnosis-safe.io/app/eth:0xF6FF1F7FCEB2cE6d26687EaaB5988b445d0b94a2/transactions/multisig_0xF6FF1F7FCEB2cE6d26687EaaB5988b445d0b94a2_0x49cab305e29d43dfcfe43f1ed0dc6e85d95402047c2f8c9e3821603168c81552

Instant proxy admin 0x3517F5a251d56C768789c22E989FAa7d906b5a13
Proxy 0x9614a4C61E45575b56c7e0251f63DCDe797d93C5
New implementation 0x20A96Fc12F7EA1fF62304A2FAe0C1480fda9aA32

@naddison36
Copy link
Contributor Author

Protocol DAO tx 356 to upgrade the proxy contract was executed with tx https://etherscan.io/tx/0x65bac3ee86f28934f40bf126aa69f2573f3d7441bef8ed510a5ae527bdd5d61c

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
contract Contract work v2 mStable v2 roadmap
Projects
None yet
Development

No branches or pull requests

1 participant