Skip to content

[Base] Deploy 040 Vault Upgrade#2814

Open
clement-ux wants to merge 2 commits intomasterfrom
clement/deploy-base-40-44
Open

[Base] Deploy 040 Vault Upgrade#2814
clement-ux wants to merge 2 commits intomasterfrom
clement/deploy-base-40-44

Conversation

@clement-ux
Copy link
Collaborator

@clement-ux clement-ux commented Feb 25, 2026

Deployments

deploy scripts

  • 040_vault_upgrade
  • 044_bridge_helper_module
Contract Network Address
OETHBaseVault Base 0xAe9A68E82e76caa35F8ac3f4e494cdb7438BBac1
BridgedWOETHStrategy Base 0x0929C0fbFF88e129ACaA51Bba0C959491325b4aD
BaseBridgeHelperModule Base 0xe3B3b4Fc77505EcfAACf6dD21619a8Cc12fcc501

Governance (Base)

  • 5/8 to schedule and execute the actions on Timelock using the generated JSON files

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

Fund account with enough ETH to cover the WETH deposit amount
instead of the default 100 ETH.
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.

> sol2uml diff 0xAe9A68E82e76caa35F8ac3f4e494cdb7438BBac1 .,node_modules --apiKey $ETHERSCAN_API_KEY --network base
Compared the "OETHBaseVault" contract with address 0xAe9A68E82e76caa35F8ac3f4e494cdb7438BBac1 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
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.

> sol2uml diff 0x0929C0fbFF88e129ACaA51Bba0C959491325b4aD .,node_modules --apiKey $ET
HERSCAN_API_KEY --network base
Compared the "BridgedWOETHStrategy" contract with address 0x0929C0fbFF88e129ACaA51Bba0C959491325b4aD 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/chainlink/AggregatorV3Interface.sol
match   contracts/interfaces/IBasicToken.sol
match   contracts/interfaces/IOracle.sol
match   contracts/interfaces/IStrategy.sol
match   contracts/interfaces/IVault.sol
match   contracts/interfaces/IWETH9.sol
match   contracts/strategies/BridgedWOETHStrategy.sol
match   contracts/token/OUSD.sol
match   contracts/utils/Helpers.sol
match   contracts/utils/Initializable.sol
match   contracts/utils/InitializableAbstractStrategy.sol
match   contracts/utils/StableMath.sol
match   contracts/vault/VaultStorage.sol
> sol2uml diff 0xe3B3b4Fc77505EcfAACf6dD21619a8Cc12fcc501 .,node_modules --apiKey $ET
HERSCAN_API_KEY --network base
Compared the "BaseBridgeHelperModule" contract with address 0xe3B3b4Fc77505EcfAACf6dD21619a8Cc12fcc501 on base
to local files under folders ".,node_modules"

match   @chainlink/contracts-ccip/src/v0.8/ccip/interfaces/IRouterClient.sol
match   @chainlink/contracts-ccip/src/v0.8/ccip/libraries/Client.sol
match   @openzeppelin/contracts/access/AccessControl.sol
match   @openzeppelin/contracts/access/AccessControlEnumerable.sol
match   @openzeppelin/contracts/access/IAccessControl.sol
match   @openzeppelin/contracts/access/IAccessControlEnumerable.sol
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/Context.sol
match   @openzeppelin/contracts/utils/introspection/ERC165.sol
match   @openzeppelin/contracts/utils/introspection/IERC165.sol
match   @openzeppelin/contracts/utils/math/SafeCast.sol
match   @openzeppelin/contracts/utils/math/SafeMath.sol
match   @openzeppelin/contracts/utils/Strings.sol
match   @openzeppelin/contracts/utils/structs/EnumerableSet.sol
match   contracts/automation/AbstractCCIPBridgeHelperModule.sol
match   contracts/automation/AbstractSafeModule.sol
match   contracts/automation/BaseBridgeHelperModule.sol
match   contracts/governance/Governable.sol
match   contracts/interfaces/chainlink/AggregatorV3Interface.sol
match   contracts/interfaces/IBasicToken.sol
match   contracts/interfaces/IOracle.sol
match   contracts/interfaces/ISafe.sol
match   contracts/interfaces/IStrategy.sol
match   contracts/interfaces/IVault.sol
match   contracts/interfaces/IWETH9.sol
match   contracts/strategies/BridgedWOETHStrategy.sol
match   contracts/token/OUSD.sol
match   contracts/utils/Helpers.sol
match   contracts/utils/Initializable.sol
match   contracts/utils/InitializableAbstractStrategy.sol
match   contracts/utils/StableMath.sol
match   contracts/vault/VaultStorage.sol
match   lib/openzeppelin/interfaces/IERC4626.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

@naddison36
Copy link
Collaborator

  • 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 0xe3B3b4Fc77505EcfAACf6dD21619a8Cc12fcc501 .,node_modules -n base
Compared the "BaseBridgeHelperModule" contract with address 0xe3B3b4Fc77505EcfAACf6dD21619a8Cc12fcc501 on base
to local files under folders ".,node_modules"

match   @chainlink/contracts-ccip/src/v0.8/ccip/interfaces/IRouterClient.sol
match   @chainlink/contracts-ccip/src/v0.8/ccip/libraries/Client.sol
match   @openzeppelin/contracts/access/AccessControl.sol
match   @openzeppelin/contracts/access/AccessControlEnumerable.sol
match   @openzeppelin/contracts/access/IAccessControl.sol
match   @openzeppelin/contracts/access/IAccessControlEnumerable.sol
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/Context.sol
match   @openzeppelin/contracts/utils/introspection/ERC165.sol
match   @openzeppelin/contracts/utils/introspection/IERC165.sol
match   @openzeppelin/contracts/utils/math/SafeCast.sol
match   @openzeppelin/contracts/utils/math/SafeMath.sol
match   @openzeppelin/contracts/utils/Strings.sol
match   @openzeppelin/contracts/utils/structs/EnumerableSet.sol
match   contracts/automation/AbstractCCIPBridgeHelperModule.sol
match   contracts/automation/AbstractSafeModule.sol
match   contracts/automation/BaseBridgeHelperModule.sol
match   contracts/governance/Governable.sol
match   contracts/interfaces/chainlink/AggregatorV3Interface.sol
match   contracts/interfaces/IBasicToken.sol
match   contracts/interfaces/IOracle.sol
match   contracts/interfaces/ISafe.sol
match   contracts/interfaces/IStrategy.sol
match   contracts/interfaces/IVault.sol
match   contracts/interfaces/IWETH9.sol
match   contracts/strategies/BridgedWOETHStrategy.sol
match   contracts/token/OUSD.sol
match   contracts/utils/Helpers.sol
match   contracts/utils/Initializable.sol
match   contracts/utils/InitializableAbstractStrategy.sol
match   contracts/utils/StableMath.sol
match   contracts/vault/VaultStorage.sol
match   lib/openzeppelin/interfaces/IERC4626.sol

sol2uml diff 0x0929C0fbFF88e129ACaA51Bba0C959491325b4aD .,node_modules -n base
Compared the "BridgedWOETHStrategy" contract with address 0x0929C0fbFF88e129ACaA51Bba0C959491325b4aD 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/chainlink/AggregatorV3Interface.sol
match   contracts/interfaces/IBasicToken.sol
match   contracts/interfaces/IOracle.sol
match   contracts/interfaces/IStrategy.sol
match   contracts/interfaces/IVault.sol
match   contracts/interfaces/IWETH9.sol
match   contracts/strategies/BridgedWOETHStrategy.sol
match   contracts/token/OUSD.sol
match   contracts/utils/Helpers.sol
match   contracts/utils/Initializable.sol
match   contracts/utils/InitializableAbstractStrategy.sol
match   contracts/utils/StableMath.sol
match   contracts/vault/VaultStorage.sol

sol2uml diff 0xAe9A68E82e76caa35F8ac3f4e494cdb7438BBac1 .,node_modules -n base
Compared the "OETHBaseVault" contract with address 0xAe9A68E82e76caa35F8ac3f4e494cdb7438BBac1 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
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

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