Skip to content

Commit 73cbcab

Browse files
authored
Deploy Scroll and Blast mainnet (wormhole-foundation#3909)
* Deploy Scroll and Blast mainnet * Rework
1 parent d63f2ca commit 73cbcab

File tree

9 files changed

+52
-14
lines changed

9 files changed

+52
-14
lines changed

ethereum/env/.env.blast.mainnet

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# Blast mainnet env
2+
# Rename to .env to use with truffle migrations
3+
# Common config for forge deployment
4+
RPC_URL=https://rpc.ankr.com/blast
5+
FORGE_ARGS="--slow --priority-gas-price 1 --gas-estimate-multiplier 130"
6+
# Wormhole Core Migrations
7+
INIT_SIGNERS=["0x58CC3AE5C097b213cE3c81979e1B9f9570746AA5"]
8+
INIT_CHAIN_ID=36
9+
INIT_GOV_CHAIN_ID=0x1
10+
INIT_GOV_CONTRACT=0x0000000000000000000000000000000000000000000000000000000000000004
11+
INIT_EVM_CHAIN_ID=81457
12+
# Bridge Migrations
13+
BRIDGE_INIT_CHAIN_ID=36
14+
BRIDGE_INIT_GOV_CHAIN_ID=0x1
15+
BRIDGE_INIT_GOV_CONTRACT=0x0000000000000000000000000000000000000000000000000000000000000004
16+
# Using "Non-rebasing WETH"
17+
# See https://docs.blast.io/building/contracts#l2-contract-addresses
18+
BRIDGE_INIT_WETH=0x9D020B1697035d9d54f115194c9e04a1e4Eb9aF7
19+
BRIDGE_INIT_FINALITY=1

ethereum/env/.env.scroll.mainnet

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# Scroll mainnet env
2+
# Rename to .env to use with truffle migrations
3+
# Common config for forge deployment
4+
RPC_URL=https://rpc.ankr.com/scroll
5+
FORGE_ARGS="--slow --priority-gas-price 0 --gas-estimate-multiplier 130"
6+
# Wormhole Core Migrations
7+
INIT_SIGNERS=["0x58CC3AE5C097b213cE3c81979e1B9f9570746AA5"]
8+
INIT_CHAIN_ID=34
9+
INIT_GOV_CHAIN_ID=0x1
10+
INIT_GOV_CONTRACT=0x0000000000000000000000000000000000000000000000000000000000000004
11+
INIT_EVM_CHAIN_ID=534352
12+
# Bridge Migrations
13+
BRIDGE_INIT_CHAIN_ID=34
14+
BRIDGE_INIT_GOV_CHAIN_ID=0x1
15+
BRIDGE_INIT_GOV_CONTRACT=0x0000000000000000000000000000000000000000000000000000000000000004
16+
# See https://docs.scroll.io/en/developers/scroll-contracts/#l2-predeploys
17+
BRIDGE_INIT_WETH=0x5300000000000000000000000000000000000004
18+
BRIDGE_INIT_FINALITY=1

node/cmd/guardiand/node.go

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -766,11 +766,6 @@ func runNode(cmd *cobra.Command, args []string) {
766766
logger.Fatal("Both --baseContract and --baseRPC must be set together or both unset")
767767
}
768768

769-
// Scroll should not be allowed in mainnet until its finality policy is understood and implemented in the watcher.
770-
if *scrollRPC != "" && !*testnetMode && !*unsafeDevMode {
771-
logger.Fatal("scroll is currently only supported in devnet and testnet")
772-
}
773-
774769
if (*scrollRPC == "") != (*scrollContract == "") {
775770
logger.Fatal("Both --scrollContract and --scrollRPC must be set together or both unset")
776771
}
@@ -783,10 +778,6 @@ func runNode(cmd *cobra.Command, args []string) {
783778
logger.Fatal("Both --mantleContract and --mantleRPC must be set together or both unset")
784779
}
785780

786-
if *blastRPC != "" && !*testnetMode && !*unsafeDevMode {
787-
logger.Fatal("blast is currently only supported in devnet and testnet")
788-
}
789-
790781
if (*blastRPC == "") != (*blastContract == "") {
791782
logger.Fatal("Both --blastContract and --blastRPC must be set together or both unset")
792783
}

node/hack/repair_eth/repair_eth.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,8 @@ var etherscanAPIMap = map[vaa.ChainID]string{
4646
vaa.ChainIDArbitrum: "https://api.arbiscan.io",
4747
vaa.ChainIDOptimism: "https://api-optimistic.etherscan.io",
4848
vaa.ChainIDBase: "https://api.basescan.org",
49+
vaa.ChainIDScroll: "https://api.scrollscan.com",
50+
vaa.ChainIDBlast: "https://api.blastscan.io",
4951
}
5052

5153
var coreContractMap = map[vaa.ChainID]string{
@@ -64,6 +66,8 @@ var coreContractMap = map[vaa.ChainID]string{
6466
vaa.ChainIDArbitrum: strings.ToLower("0xa5f208e072434bC67592E4C49C1B991BA79BCA46"),
6567
vaa.ChainIDOptimism: strings.ToLower("0xEe91C335eab126dF5fDB3797EA9d6aD93aeC9722"),
6668
vaa.ChainIDBase: strings.ToLower("0xbebdb6C8ddC678FfA9f8748f85C815C556Dd8ac6"),
69+
vaa.ChainIDScroll: strings.ToLower("0xbebdb6C8ddC678FfA9f8748f85C815C556Dd8ac6"),
70+
vaa.ChainIDBlast: strings.ToLower("0xbebdb6C8ddC678FfA9f8748f85C815C556Dd8ac6 "),
6771
}
6872

6973
var (

node/pkg/governor/mainnet_chains.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@ func chainList() []chainConfigEntry {
3535
{emitterChainID: vaa.ChainIDXpla, dailyLimit: 500_000, bigTransactionSize: 50_000},
3636
{emitterChainID: vaa.ChainIDBase, dailyLimit: 2_000_000, bigTransactionSize: 200_000},
3737
{emitterChainID: vaa.ChainIDSei, dailyLimit: 5_000_000, bigTransactionSize: 500_000},
38+
{emitterChainID: vaa.ChainIDScroll, dailyLimit: 500_000, bigTransactionSize: 50_000},
39+
{emitterChainID: vaa.ChainIDBlast, dailyLimit: 500_000, bigTransactionSize: 50_000},
3840
{emitterChainID: vaa.ChainIDWormchain, dailyLimit: 500_000, bigTransactionSize: 50_000},
3941
}
4042
}

sdk/js/CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
## 0.10.15
44

55
Add Provenance to cosmwasm chains
6+
Add Scroll mainnet support
7+
Add Blast mainnet support
68

79
## 0.10.14
810

sdk/js/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@certusone/wormhole-sdk",
3-
"version": "0.10.14",
3+
"version": "0.10.15",
44
"description": "SDK for interacting with Wormhole",
55
"homepage": "https://wormhole.com",
66
"main": "./lib/cjs/index.js",

sdk/js/src/utils/consts.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -309,8 +309,8 @@ const MAINNET = {
309309
nft_bridge: undefined,
310310
},
311311
scroll: {
312-
core: undefined,
313-
token_bridge: undefined,
312+
core: "0xbebdb6C8ddC678FfA9f8748f85C815C556Dd8ac6",
313+
token_bridge: "0x24850c6f61C438823F01B7A3BF2B89B72174Fa9d",
314314
nft_bridge: undefined,
315315
},
316316
mantle: {
@@ -319,8 +319,8 @@ const MAINNET = {
319319
nft_bridge: undefined,
320320
},
321321
blast: {
322-
core: undefined,
323-
token_bridge: undefined,
322+
core: "0xbebdb6C8ddC678FfA9f8748f85C815C556Dd8ac6",
323+
token_bridge: "0x24850c6f61C438823F01B7A3BF2B89B72174Fa9d",
324324
nft_bridge: undefined,
325325
},
326326
xlayer: {

sdk/mainnet_consts.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,8 @@ var knownTokenbridgeEmitters = map[vaa.ChainID]string{
118118
vaa.ChainIDOptimism: "0000000000000000000000001D68124e65faFC907325e3EDbF8c4d84499DAa8b",
119119
vaa.ChainIDBase: "0000000000000000000000008d2de8d2f73F1F4cAB472AC9A881C9b123C79627",
120120
vaa.ChainIDXpla: "8f9cf727175353b17a5f574270e370776123d90fd74956ae4277962b4fdee24c",
121+
vaa.ChainIDScroll: "00000000000000000000000024850c6f61C438823F01B7A3BF2B89B72174Fa9d",
122+
vaa.ChainIDBlast: "00000000000000000000000024850c6f61C438823F01B7A3BF2B89B72174Fa9d",
121123
vaa.ChainIDInjective: "00000000000000000000000045dbea4617971d93188eda21530bc6503d153313",
122124
vaa.ChainIDSui: "ccceeb29348f71bdd22ffef43a2a19c1f5b5e17c5cca5411529120182672ade5",
123125
vaa.ChainIDSei: "86c5fd957e2db8389553e1728f9c27964b22a8154091ccba54d75f4b10c61f5e",

0 commit comments

Comments
 (0)