Skip to content

[Ethereum][Base][Sonic] Re-deploy Vaults#2894

Merged
shahthepro merged 5 commits into
masterfrom
shah/deploy-permissioned-rebase
May 12, 2026
Merged

[Ethereum][Base][Sonic] Re-deploy Vaults#2894
shahthepro merged 5 commits into
masterfrom
shah/deploy-permissioned-rebase

Conversation

@shahthepro
Copy link
Copy Markdown
Collaborator

Code Change

Code change PR: #2889

Deployments

Contract Network Address
OETHVault Ethereum 0x0E979edF516f88119fa2843fA3f08A9643F8e575
OUSDVault Ethereum 0x82948060c4B72684bEdEdec342350AB344975145
OSVault Sonic 0xF66886e242e20cAb2496AF1d411eBcFb73440270
OETHBaseVault Base 0xfdBE6A80e1D22ff652Cbff44FEaD2E52287393E8

Governance

Ethereum

Base & Sonic

  • 5/8 to schedule and execute the txs using the generated JSON files

@codecov
Copy link
Copy Markdown

codecov Bot commented May 12, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 51.96%. Comparing base (1dd041f) to head (1e83879).

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #2894      +/-   ##
==========================================
- Coverage   52.11%   51.96%   -0.15%     
==========================================
  Files         111      111              
  Lines        4874     4874              
  Branches     1353     1353              
==========================================
- Hits         2540     2533       -7     
- Misses       2330     2337       +7     
  Partials        4        4              

☔ 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.

@naddison36
Copy link
Copy Markdown
Collaborator

naddison36 commented May 12, 2026

  • 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
    • OUSDVault: USDC 0xA0b8...6eB48
    • OETHVault: WETH 0xC02a...6Cc2
    • OETHBaseVault: Base WETH 0x4200...0006
    • OSVault: wS 0x039e...aD38
  • 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
sol2uml diff 0x0E979edF516f88119fa2843fA3f08A9643F8e575 .,node_modules
Compared the "OETHVault" contract with address 0x0E979edF516f88119fa2843fA3f08A9643F8e575 on ethereum
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
sol2uml diff 0xF66886e242e20cAb2496AF1d411eBcFb73440270 .,node_modules --network sonic
Compared the "OSVault" contract with address 0xF66886e242e20cAb2496AF1d411eBcFb73440270 on sonic
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/OSVault.sol
match   contracts/vault/VaultAdmin.sol
match   contracts/vault/VaultCore.sol
match   contracts/vault/VaultInitializer.sol
sol2uml diff 0x82948060c4B72684bEdEdec342350AB344975145 .,node_modules 
Compared the "OUSDVault" contract with address 0x82948060c4B72684bEdEdec342350AB344975145 on ethereum
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/OUSDVault.sol
match   contracts/vault/VaultAdmin.sol
match   contracts/vault/VaultCore.sol
match   contracts/vault/VaultInitializer.sol
match   contracts/vault/VaultStorage.sol
sol2uml diff 0xfdBE6A80e1D22ff652Cbff44FEaD2E52287393E8 .,node_modules --network base
Compared the "OETHBaseVault" contract with address 0xfdBE6A80e1D22ff652Cbff44FEaD2E52287393E8 on base
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/OETHBaseVault.sol
match   contracts/vault/VaultAdmin.sol
match   contracts/vault/VaultCore.sol
match   contracts/vault/VaultInitializer.sol
match   contracts/vault/VaultStorage.sol

Copy link
Copy Markdown
Collaborator

@naddison36 naddison36 left a comment

Choose a reason for hiding this comment

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

I've verified the deployment

@sparrowDom
Copy link
Copy Markdown
Member

sparrowDom commented May 12, 2026

  • 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
sol2uml diff 0x0E979edF516f88119fa2843fA3f08A9643F8e575 .,node_modules --network mainnet --apiKey [API_KEY]
Compared the "OETHVault" contract with address 0x0E979edF516f88119fa2843fA3f08A9643F8e575 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


sol2uml diff 0x82948060c4B72684bEdEdec342350AB344975145 .,node_modules --network mainnet --apiKey [API_KEY]
Compared the "OUSDVault" contract with address 0x82948060c4B72684bEdEdec342350AB344975145 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/OUSDVault.sol
match   contracts/vault/VaultAdmin.sol
match   contracts/vault/VaultCore.sol
match   contracts/vault/VaultInitializer.sol
match   contracts/vault/VaultStorage.sol


sol2uml diff 0xF66886e242e20cAb2496AF1d411eBcFb73440270 .,node_modules --network sonic --apiKey [API_KEY]
Compared the "OSVault" contract with address 0xF66886e242e20cAb2496AF1d411eBcFb73440270 on sonic
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/OSVault.sol
match   contracts/vault/VaultAdmin.sol
match   contracts/vault/VaultCore.sol
match   contracts/vault/VaultInitializer.sol
match   contracts/vault/VaultStorage.sol


sol2uml diff 0xfdBE6A80e1D22ff652Cbff44FEaD2E52287393E8 .,node_modules --network base --apiKey [API_KEY]
Compared the "OETHBaseVault" contract with address 0xfdBE6A80e1D22ff652Cbff44FEaD2E52287393E8 on base
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/OETHBaseVault.sol
match   contracts/vault/VaultAdmin.sol
match   contracts/vault/VaultCore.sol
match   contracts/vault/VaultInitializer.sol
match   contracts/vault/VaultStorage.sol

Copy link
Copy Markdown
Member

@sparrowDom sparrowDom left a comment

Choose a reason for hiding this comment

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

I've full verified the deploy

@shahthepro shahthepro merged commit 6992375 into master May 12, 2026
17 of 18 checks passed
@shahthepro shahthepro deleted the shah/deploy-permissioned-rebase branch May 12, 2026 08:05
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