Skip to content

Deploy 180: Deploy Supernova AMO and upgrade Vault#2831

Open
sparrowDom wants to merge 3 commits intomasterfrom
sparrowDom/deploy_180
Open

Deploy 180: Deploy Supernova AMO and upgrade Vault#2831
sparrowDom wants to merge 3 commits intomasterfrom
sparrowDom/deploy_180

Conversation

@sparrowDom
Copy link
Member

@sparrowDom sparrowDom commented Mar 6, 2026

Deploy 180

  • Deploy SupernovaAMOStrategy for the first time
  • upgrades the Vault

Deployed contracts

contract name contract address
SupernovaAmoStrategyProxy 0xf9E04C36CC7e6065cBBcc972613e8Dd75D6B5967
SupernovaAmoStrategy 0x63fE17626844264ba448A21bD77099bEC26363dB
OETHVault 0x27e6e612db61f5ebe3211a0719eec00fbfc595e0

Proposal Id: 16177445778432224472212272508299557275111595204509579362893638738519171283271

#Verify source code 
sol2uml diff 0xf9E04C36CC7e6065cBBcc972613e8Dd75D6B5967 .,node_modules --network mainnet --apiKey [API_KEY]

sol2uml diff 0x63fE17626844264ba448A21bD77099bEC26363dB .,node_modules --network mainnet --apiKey [API_KEY]

sol2uml diff 0x27e6e612db61f5ebe3211a0719eec00fbfc595e0 .,node_modules --network mainnet --apiKey [API_KEY]

Deploy checklist

Two reviewers complete the following checklist:

- [ ] All deployed contracts are listed in the deploy PR's description
- [ ] Deployed contract's verified code (and all dependencies) match the code in master
- [ ] Contract constructors have correct arguments
- [ ] The transactions that interacted with the newly deployed contract match the deploy script.
- [ ] Governance proposal matches the deploy script
- [ ] Smoke tests pass after fork test execution of the governance proposal

Copy link
Collaborator

@shahthepro shahthepro left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Compared the "InitializeGovernedUpgradeabilityProxy" contract with address 0xf9E04C36CC7e6065cBBcc972613e8Dd75D6B5967 on mainnet
to local files under folders ".,node_modules"

match   @openzeppelin/contracts/utils/Address.sol
match   contracts/governance/Governable.sol
match   contracts/proxies/InitializeGovernedUpgradeabilityProxy.sol
match   contracts/proxies/InitializeGovernedUpgradeabilityProxy2.sol
match   contracts/proxies/Proxies.sol
Compared the "OETHSupernovaAMOStrategy" contract with address 0x63fE17626844264ba448A21bD77099bEC26363dB on mainnet
to local files under folders ".,node_modules"

match   @openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol
match   @openzeppelin/contracts/token/ERC20/IERC20.sol
match   @openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol
match   @openzeppelin/contracts/utils/Address.sol
match   @openzeppelin/contracts/utils/math/SafeCast.sol
match   @openzeppelin/contracts/utils/math/SafeMath.sol
match   contracts/governance/Governable.sol
match   contracts/interfaces/algebra/IAlgebraGauge.sol
match   contracts/interfaces/algebra/IAlgebraPair.sol
match   contracts/interfaces/IBasicToken.sol
match   contracts/interfaces/IStrategy.sol
match   contracts/interfaces/IVault.sol
match   contracts/strategies/algebra/OETHSupernovaAMOStrategy.sol
match   contracts/strategies/algebra/StableSwapAMMStrategy.sol
match   contracts/token/OUSD.sol
match   contracts/utils/Helpers.sol
match   contracts/utils/Initializable.sol
match   contracts/utils/InitializableAbstractStrategy.sol
match   contracts/utils/PRBMath.sol
match   contracts/utils/StableMath.sol
match   contracts/vault/VaultStorage.sol
Compared the "OETHVault" contract with address 0x27E6e612dB61f5ebE3211a0719EEc00FbFC595e0 on mainnet
to local files under folders ".,node_modules"

match   @openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol
match   @openzeppelin/contracts/token/ERC20/IERC20.sol
match   @openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol
match   @openzeppelin/contracts/utils/Address.sol
match   @openzeppelin/contracts/utils/math/SafeCast.sol
match   @openzeppelin/contracts/utils/math/SafeMath.sol
match   contracts/governance/Governable.sol
match   contracts/interfaces/IBasicToken.sol
match   contracts/interfaces/IStrategy.sol
match   contracts/interfaces/IVault.sol
match   contracts/token/OUSD.sol
match   contracts/utils/Helpers.sol
match   contracts/utils/Initializable.sol
match   contracts/utils/StableMath.sol
match   contracts/vault/OETHVault.sol
match   contracts/vault/VaultAdmin.sol
match   contracts/vault/VaultCore.sol
match   contracts/vault/VaultInitializer.sol
match   contracts/vault/VaultStorage.sol

Copy link
Collaborator

@shahthepro shahthepro left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • All deployed contracts are listed in the deploy PR's description
  • Deployed contract's verified code (and all dependencies) match the code in master
  • Contract constructors have correct arguments
  • The transactions that interacted with the newly deployed contract match the deploy script.
  • Governance proposal matches the deploy script
  • Smoke tests pass after fork test execution of the governance proposal

@codecov
Copy link

codecov bot commented Mar 6, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 43.58%. Comparing base (ff627d2) to head (a2a5128).

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #2831      +/-   ##
==========================================
+ Coverage   41.12%   43.58%   +2.46%     
==========================================
  Files         110      110              
  Lines        4632     4632              
  Branches     1263     1263              
==========================================
+ Hits         1905     2019     +114     
+ Misses       2724     2610     -114     
  Partials        3        3              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copy link
Collaborator

@clement-ux clement-ux left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • All deployed contracts are listed in the deploy PR's description
  • Deployed contract's verified code (and all dependencies) match the code in master
  • Contract constructors have correct arguments
  • The transactions that interacted with the newly deployed contract match the deploy script.
  • Governance proposal matches the deploy script
  • Smoke tests pass after fork test execution of the governance proposal

Diff Contract

sol2uml diff 0xf9E04C36CC7e6065cBBcc972613e8Dd75D6B5967 .,node_modules --network mainnet --apiKey ...
Compared the "InitializeGovernedUpgradeabilityProxy" contract with address 0xf9E04C36CC7e6065cBBcc972613e8Dd75D6B5967 on mainnet
to local files under folders ".,node_modules"

match   @openzeppelin/contracts/utils/Address.sol
match   contracts/governance/Governable.sol
match   contracts/proxies/InitializeGovernedUpgradeabilityProxy.sol
match   contracts/proxies/InitializeGovernedUpgradeabilityProxy2.sol
match   contracts/proxies/Proxies.sol
sol2uml diff 0x63fE17626844264ba448A21bD77099bEC26363dB .,node_modules --network mainnet --apiKey ...
Compared the "OETHSupernovaAMOStrategy" contract with address 0x63fE17626844264ba448A21bD77099bEC26363dB on mainnet
to local files under folders ".,node_modules"

match   @openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol
match   @openzeppelin/contracts/token/ERC20/IERC20.sol
match   @openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol
match   @openzeppelin/contracts/utils/Address.sol
match   @openzeppelin/contracts/utils/math/SafeCast.sol
match   @openzeppelin/contracts/utils/math/SafeMath.sol
match   contracts/governance/Governable.sol
match   contracts/interfaces/algebra/IAlgebraGauge.sol
match   contracts/interfaces/algebra/IAlgebraPair.sol
match   contracts/interfaces/IBasicToken.sol
match   contracts/interfaces/IStrategy.sol
match   contracts/interfaces/IVault.sol
match   contracts/strategies/algebra/OETHSupernovaAMOStrategy.sol
match   contracts/strategies/algebra/StableSwapAMMStrategy.sol
match   contracts/token/OUSD.sol
match   contracts/utils/Helpers.sol
match   contracts/utils/Initializable.sol
match   contracts/utils/InitializableAbstractStrategy.sol
match   contracts/utils/PRBMath.sol
match   contracts/utils/StableMath.sol
match   contracts/vault/VaultStorage.sol
sol2uml diff 0x27e6e612db61f5ebe3211a0719eec00fbfc595e0 .,node_modules --network mainnet --apiKey XSK3578ESKKSXH85ZZZZ1FGZ4JBWZQT1CX
Compared the "OETHVault" contract with address 0x27E6e612dB61f5ebE3211a0719EEc00FbFC595e0 on mainnet
to local files under folders ".,node_modules"

match   @openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol
match   @openzeppelin/contracts/token/ERC20/IERC20.sol
match   @openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol
match   @openzeppelin/contracts/utils/Address.sol
match   @openzeppelin/contracts/utils/math/SafeCast.sol
match   @openzeppelin/contracts/utils/math/SafeMath.sol
match   contracts/governance/Governable.sol
match   contracts/interfaces/IBasicToken.sol
match   contracts/interfaces/IStrategy.sol
match   contracts/interfaces/IVault.sol
match   contracts/token/OUSD.sol
match   contracts/utils/Helpers.sol
match   contracts/utils/Initializable.sol
match   contracts/utils/StableMath.sol
match   contracts/vault/OETHVault.sol
match   contracts/vault/VaultAdmin.sol
match   contracts/vault/VaultCore.sol
match   contracts/vault/VaultInitializer.sol
match   contracts/vault/VaultStorage.sol

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants