Skip to content

Conversation

weikangsong
Copy link
Contributor

@weikangsong weikangsong commented Mar 19, 2025

Summary

Deploy UpgradableMSCAFactory to base & op

Detail

Changeset

  1. Update deployment script of UpgradabaleMSCAFactory related contracts to support base/op mainnet/tests.
  2. Performed the deployment and uploads the deployment logs.
  3. Update the 105 and 106 script to has its own chain list since the scripts do not support skipping existing chains.

Checklist

  • Did you add new tests and confirm all tests pass? (yarn test)
  • Did you ensure any new Solidity source code files meet minimum test coverage requirements? (yarn coverage)
  • Did you update relevant docs? (docs are found in the docs folder)
  • Do your commits follow the Conventional Commits standard?
  • Does your PR title also follow the Conventional Commits standard?
  • Did you run lint (yarn lint) and fix any issues?
  • Did you run formatter (yarn format:check) and fix any issues (yarn format:write)?

Testing

Not applicable for chain expansion since no new contracts are added.

Documentation

Optional section.
Link to the doc.

@weikangsong weikangsong requested review from huaweigu and Copilot March 19, 2025 22:06
Copy link

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR deploys the UpgradableMSCAFactory to base and op networks by updating the deployment scripts and configuration.

  • Added new RPC URL entries for base and op networks, including Sepolia testnet support
  • Updated foundry.toml with chain-specific variables to enable deployment on these networks
Files not reviewed (12)
  • .env.example: Language not supported
  • broadcast/multi/103_DeployColdStorageAddressBookPlugin.s.sol-1741910918/run.json: Language not supported
  • broadcast/multi/105_SetUpgradableMSCAFactoryPlugins.s.sol-1742255976/run.json: Language not supported
  • broadcast/multi/105_SetUpgradableMSCAFactoryPlugins.s.sol-latest/run.json: Language not supported
  • broadcast/multi/106_StakeUpgradableMSCAFactory.s.sol-1742256374/run.json: Language not supported
  • script/bytecode-deploy/100_Constants.sol: Language not supported
  • script/bytecode-deploy/101_DeployPluginManager.s.sol: Language not supported
  • script/bytecode-deploy/102_DeployUpgradableMSCAFactory.s.sol: Language not supported
  • script/bytecode-deploy/103_DeployColdStorageAddressBookPlugin.s.sol: Language not supported
  • script/bytecode-deploy/104_DeployWeightedWebauthnMultisigPlugin.s.sol: Language not supported
  • script/bytecode-deploy/105_SetUpgradableMSCAFactoryPlugins.s.sol: Language not supported
  • script/bytecode-deploy/106_StakeUpgradableMSCAFactory.s.sol: Language not supported


// NOTE: Please adjust the chain list based on the chain expansion needs, and configure stake value based on
// minimums from https://docs.alchemy.com/docs/bundler-services#minimum-stake
string[4] memory chains = ["base", "op", "base-sepolia", "op-sepolia"];
Copy link
Contributor

Choose a reason for hiding this comment

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

Minor suggestion: We can define chains in a parent contract (e.g., ChainExpansion) to avoid redefining them repeatedly.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Added a getChainsForSetup in Constants and reference that in this and below script

@@ -3,7 +3,7 @@
{
"transactions": [
{
"hash": "0x58a37f1a3308b926f7d4a479c4b4a31b0998202e134439e26882e8a1639dd74b",
"hash": "0x290dc114bda3fdbb638e84399acdb602d0050c3dc68cf530ad5e23a4aac33372",
Copy link
Contributor

Choose a reason for hiding this comment

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

Just to clarify, ColdStorageAddressBookPlugin is re-deployed?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

No - if you look at below, this transaction is in a different chain. The order of transactions is auto-generated and seems re-ordered a bit.

Copy link
Contributor

Choose a reason for hiding this comment

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

Okay, in the case of re-ordering, the transaction 0x58a37f1a3308b926f7d4a479c4b4a31b0998202e134439e26882e8a1639dd74b should still exist after this PR, correct? I'm not sure why it's missing in this file](https://github.com/circlefin/buidl-wallet-contracts/blob/8cc42caeb2efaa169e219a1f38029517a074bb23/broadcast/multi/103_DeployColdStorageAddressBookPlugin.s.sol-latest/run.json). I'll sync up with you offline.

@@ -3,7 +3,7 @@
{
"transactions": [
{
"hash": "0x7d8d040bfc26e99109b432712fea8cd16662cab3b8f45ccde50564a2bcdeeabe",
"hash": "0x6be1cf49f4a1912b3ee9cdd36d9cc5a2b906289bc4ed159a268da5815aeb314f",
Copy link
Contributor

Choose a reason for hiding this comment

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

ditto

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@@ -3,7 +3,7 @@
{
"transactions": [
{
"hash": "0xfd6f64d975dd1829a7729e9b60d178f873a3a7c688e3b943e28f90119ffc0730",
"hash": "0xa96b5045833bd2b5a4c6b4de74d02c64adc63d12407c66e09a38243bb2fd50d0",
Copy link
Contributor

Choose a reason for hiding this comment

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

Just to clarify, PluginManager is re-deployed?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@weikangsong weikangsong merged commit 56c37c9 into circlefin:master Mar 20, 2025
6 checks passed
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.

2 participants