diff --git a/contracts/deploy/mainnet/196_remove_oeth_convex_amo.js b/contracts/deploy/mainnet/196_remove_oeth_convex_amo.js new file mode 100644 index 0000000000..1621f56498 --- /dev/null +++ b/contracts/deploy/mainnet/196_remove_oeth_convex_amo.js @@ -0,0 +1,38 @@ +const { deploymentWithGovernanceProposal } = require("../../utils/deploy"); + +module.exports = deploymentWithGovernanceProposal( + { + deployName: "196_remove_oeth_convex_amo", + forceDeploy: false, + reduceQueueTime: true, + deployerIsProposer: false, + proposalId: + "103423371549941850803617056393955997738077624682599514660888481101539457353886", // Add once the proposal has been created on-chain + }, + async ({ ethers }) => { + // Current OETH Vault contracts + const cVaultProxy = await ethers.getContract("OETHVaultProxy"); + const cVault = await ethers.getContractAt("IVault", cVaultProxy.address); + + // Convex OETH/ETH AMO Strategy (0x1827F9eA98E0bf96550b2FC20F7233277FcD7E63) + // The old Curve OETH/ETH pool used by this AMO is no longer used. + const cStrategyProxy = await ethers.getContract( + "ConvexEthMetaStrategyProxy" + ); + + // Governance Actions + // ---------------- + return { + name: "Remove the Convex AMO Strategy from the OETH Vault", + actions: [ + { + // removeStrategy withdraws all assets from the strategy back to the + // Vault before marking it as unsupported. + contract: cVault, + signature: "removeStrategy(address)", + args: [cStrategyProxy.address], + }, + ], + }; + } +);