Skip to content
Merged
314 changes: 33 additions & 281 deletions CHANGELOG.md

Large diffs are not rendered by default.

3 changes: 2 additions & 1 deletion config/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,8 @@
"42161": {
"name": "Arbitrum One Mainnet",
"deployer": "0x111167a21d2bdb8e10b84aee3501059d50756b67",
"owner": "0x111165e3c379e4f8285df34d7137b433c30afa66",
"owner": "0x3768f9b005E8Ef8b45568F1f1f5Ca7650096b2B9",
"_ownerComment": "iExec multisig wallet",
"asset": "Token",
"token": "0xe649e6a1F2afc63ca268C2363691ceCAF75CF47C",
"v3": {},
Expand Down
3 changes: 2 additions & 1 deletion release-please-config.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@
"release-type": "node",
"changelog-path": "CHANGELOG.md",
"include-v-in-tag": true,
"draft-pull-request": true
"draft-pull-request": true,
"include-component-in-tag": false
}
},
"changelog-sections": [
Expand Down
23 changes: 15 additions & 8 deletions scripts/upgrades/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,40 +9,47 @@ a safe, traceable, and reproducible upgrade to the PoCo Diamond proxy.
Run the full test suite to make sure everything is working before starting an upgrade.

1. **Create a new upgrade script**:<br>
Name the script using the version and upgrade name format `vX.Y.Z-upgrade-name.ts` and
Name the script using the version and upgrade name format `vX.Y.Z.ts` and
implement the upgrade logic.

2. **Create a corresponding Markdown report**:<br>
Copy the template file `v0.0.0-template.md` and rename it to match the script file name.
The name should be of the form `vX.Y.Z-upgrade-name.md`.

3. **Test dry-runs locally**:<br>
Use the script [./dry-run.sh](./dry-run.sh) and check the logs.
Use the script [./dry-run.sh](./dry-run.sh) and check the logs and deployment files diff.

4. **Update GitHub Actions**:<br>
4. **Check the owner's balance:**<br>
Make sure the owner wallet has enough ETH for the whole deployment.

5. **Update GitHub Actions**:<br>
Modify `upgrade-facets.yml` workflow to call the new upgrade script.<br>
Note: to run the upgrade script manually (for testing), use:

```
npx hardhat run scripts/upgrades/vX.Y.Z-upgrade-name.ts --network <network>
```

5. **Upgrade on Testnet**:
6. **Upgrade on Testnet**:

- ⚠️ Always upgrade on the testnet first.
- Trigger the upgrade workflow on GitHub and choose the testnet network.
- Start with a **dry run** to simulate the upgrade.
- Once verified, apply the upgrade on the live testnet.

6. **Upgrade on Mainnet**:
7. **Upgrade on Mainnet**:

- Trigger the upgrade workflow on GitHub and choose the mainnet network.
- Perform a dry run first.
- Perform a **dry run** first.
- Apply the upgrade on the mainnet.
- Merge the artifacts PR after successful execution.

7. **Update upgrade report**:<br>
8. **Refresh the proxy facets on Etherscan**:<br>
Go to the Etherscan explorer and follow the steps of "Is this a proxy?" to
refresh the facets list.

9. **Update upgrade report**:<br>
Fill in all required information in `vX.Y.Z-upgrade-name.ts` (tx hashes, logs, ...).

8. **Create a release**
10. **Create a release**
- Use **Release Please** to tag the upgraded version and create the release on GitHub.
File renamed without changes.
Loading
Loading