-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdeploy_address.txt
208 lines (155 loc) · 8.8 KB
/
deploy_address.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
===================== Swap =========================
// 2023-08-02 Polygon mumbai
VABTokenSwap (0xD46703dC21f717ef5Cd2fb44c849037425ABDcde)
oldVAB: "0x5cBbA5484594598a660636eFb0A1AD953aFa4e32", // vab
newVAB: "0x53BeF80E0EBE5A89dfb67782b12435aBeB943754", // exm
// 2023-08-09 Polygon mainnet
VABTokenSwap (0xc38a372E1604F9c28b23524848048e1e0dc1b84f)
oldVAB: "0xed28b1890fbb4aa9ded528c1034fed278ff68f5d",
newVAB: "0xf27BeDc0C8a29DF0c4F91493EBa24814fF04D504",
===================== Bridge =========================
=> 2023-09-26
FxERC20RootTunnel (0xEf1d5C1D8b7590F4D6E97c34095CB9A7db1Cd92D) // goerli
FxERC20ChildTunnel (0x450256da17aA67030652ADF9C617437B4B4D6900) // mumbai
root token: "0x482a493EA47903a571b20E35B770aFfE06600a3D", // goerli
child token: 0x2823005CaB120c67C849D75d8D905908Db96D182 , // VAB
mapToken() : 24 mins
deposit() : < 30 mins
withdraw() : 30 ~ 180 mins
Auditor wallet address: 0xb10bcC8B508174c761CFB1E7143bFE37c4fBC3a1
===================== Bridge =========================
=> 2023-12-30 - 03
FXERC20:
0xFF84f94e95EEe9f1BF6A22b20BB44796626dA653 // mumbai
FxERC20RootTunnel (0xcB50A7Ab42eB4eC5Ae8E9e838ED78B098c359B1D) // goerli
FxERC20ChildTunnel (0xD9EDD36bDcd550e587c1Db264Fa26c2f353c8eAF) // mumbai
root token: 0x482a493EA47903a571b20E35B770aFfE06600a3D // goerli
child token: 0xFF84f94e95EEe9f1BF6A22b20BB44796626dA653 // mumbai
Auditor wallet address: 0xb10bcC8B508174c761CFB1E7143bFE37c4fBC3a1
=> 2023-12-31 - 01
FXERC20:
0x793A08C343F33b4e93Fa5DcC3Dc3292e19Dcc510 // mumbai
FxERC20RootTunnel (0xfb23300A0E6AF340776Cf24Bf172805bfcAFDF47) // goerli
FxERC20ChildTunnel (0xa9222B40cb085701358B2b04F9c9A94Cf44CF8EA) // mumbai
root token: 0x482a493EA47903a571b20E35B770aFfE06600a3D // goerli
child token: 0x793A08C343F33b4e93Fa5DcC3Dc3292e19Dcc510 // mumbai
Auditor wallet address: 0xb10bcC8B508174c761CFB1E7143bFE37c4fBC3a1
=> 2023-12-31 - 02
FxERC20RootTunnel (0xB12bb613627426829eD26780ccadAb4D92B67A86) // goerli
FxERC20ChildTunnel (0xd00c909dB67D2C64342EfE49F1b7f43D81E9BB5C) // mumbai
root token: 0x482a493EA47903a571b20E35B770aFfE06600a3D // goerli
child token: 0x61Ff1D74C20655ef4563b5838B78B551f80F0b32 // mumbai
New Child Token: 0xD1EF0F0b9D046b4F5df3786713B85F5450e62135
Auditor wallet address: 0xb10bcC8B508174c761CFB1E7143bFE37c4fBC3a1
=> 2023-01-03
FxERC20RootTunnel (0xCD8427cf9b5e6a4D6aCee44d1065738762410B95) // goerli
FxERC20ChildTunnel (0x297B2940dB76146eEa6443A27Adb0FAD1149a6e3) // mumbai
root token: 0x482a493EA47903a571b20E35B770aFfE06600a3D // goerli
child token: 0x5d4b0763f3e8Db081Ed6aBbF0b05B2cb009bfAE6 // mumbai
Auditor wallet address: 0xb10bcC8B508174c761CFB1E7143bFE37c4fBC3a1
=> 2023-01-04
FxERC20RootTunnel (0x9AA7DE3fd4984a2799881355933b49AF823C3e4F) // goerli
FxERC20ChildTunnel (0x001CfbFE03C67d206e6ba8A2505907be0DA584F7) // mumbai
root token: 0x482a493EA47903a571b20E35B770aFfE06600a3D // goerli
child token: 0x3DF7B6C3a2bFA7Fae515E1B813Dc57f12618C62E // mumbai
Auditor wallet address: 0xb10bcC8B508174c761CFB1E7143bFE37c4fBC3a1
===================== Swap =========================
// 2024-01-08 Polygon mumbai
VABTokenSwap ()
oldVAB: "", // vab
newVAB: "", // exm
// 2024-01-08 Polygon mainnet
VABTokenSwap () // Please update here
oldVAB: "0xf27BeDc0C8a29DF0c4F91493EBa24814fF04D504",
newVAB: "0xEa73Dcf6F49f8d6aD5a129aaedE776d78d418CFD",
=> Generate Proof API
https://proof-generator.polygon.technology/api/v1/mumbai/exit-payload/withdraw-tx-hash?eventSignature=SEND_MESSAGE_EVENT_SIG
https://proof-generator.polygon.technology/api/v1/matic/exit-payload/withdraw-tx-hash?eventSignature=SEND_MESSAGE_EVENT_SIG
Run receiveMessage() with result from API response and Get token back
API Example:
https://proof-generator.polygon.technology/api/v1/mumbai/exit-payload/0x4756b76a9611cffee3d2eb645819e988c34615621ea256f818ab788d81e1f838?eventSignature=0x8c5261668696ce22758910d05bab8f186d6eb247ceac2af2e82c7dc17669b036
https://proof-generator.polygon.technology/api/v1/mumbai/exit-payload/0x06e1f01a5ac87d9b54d684cbe44a37e2c2805c0dd9657583a1c05127fd1d4532?eventSignature=0x8c5261668696ce22758910d05bab8f186d6eb247ceac2af2e82c7dc17669b036
https://proof-generator.polygon.technology/api/v1/mumbai/exit-payload/0xba2960d5815a45852f39c341ab51852adc661b9fd4194c2174d5d2a259ed6f96?eventSignature=0x8c5261668696ce22758910d05bab8f186d6eb247ceac2af2e82c7dc17669b036
======================== Deploy Goerli <-> Mumbai Bridge Steps ===========================================
Change Wallet Private Key(MNEMONIC) in .env
1. Deploy FxERC20RootTunnel to Geoerli
1.1 change NETWORK to Goerli in utils.js
1.2 npm run goerli:deploy
1.3 npm run goerli:verify
1.4 save Deployed FxERC20RootTunnel's address
2. Deploy FXERC20 and FxERC20ChildTunnel to Mumbai
2.1 change NETWORK to Mumbai in utils.js
2.2 npm run mumbai:deploy
2.3 npm run mumbai:verify
2.4 save Deployed FxERC20ChildTunnel's address and FXERC20 address
3. Setup Bridge - (Please don't confuse, this is IMPORTANT step!!!!!)
3.1 update ChildTunnel of FxERC20RootTunnel in goerli
3.2 update RootTunnel of FxERC20ChildTunnel in mumbai
4. Mapping Steps
4.1 Map Root Token / Child Token and wait 20 ~ 30mins
4.2 Check FxERC20ChildTunnel's TokenMapped event in Mumbai Network
4.3 import child token on wallet in Mumbai Network
4.4 Create Pair and Add Liquidity in Mumbai - VabbleDAO Project
4.4.1 Run follow command to create Pair
- npx hardhat run .\scripts\create_token_pair.js --network mumbai
- Run above command again and check if all pairs is created
4.4.2 Run follow commmand to add liquidity
- npx hardhat run .\scripts\add_liquidity.js --network mumbai
- Then you will get message to "Please run again after 1 min"
- Then run above command again after 1 min
- Then you will get error message on last line 'UniswapV2Library: INSUFFICIENT_LIQUIDITY'
- Please ignore above error and wait 2 ~ 3 mins
4.4.3 Check Pair and Liquidity
npm run test
5. Test Steps (deposit, withdraw)
5.1 Record current balance of rook Token, child token in Wallet
5.2 Root Token -> FxERC20RootTunnel(spender) in goerli
5.3 deposit in FxERC20RootTunnel and wait 20 ~ 30mins
5.4 check if the balance of rook token is decreased
5.5 check the balance of childToken in Wallet in Mumbai
5.6 Record current balance of rook Token, child token in Wallet
5.7 withdraw from FxERC20ChildTunnel
5.8 check if the balance of child token is decreased
5.9 Wait 30mins
5.10 Call Generate Proof API
5.11 check the balance of rootToken in Wallet in Geoerli
======================== Deploy Ethereum <-> Polygon Bridge Steps ===========================================
1. Deploy FxERC20RootTunnel to Ethereum
1.1 change NETWORK to Ethereum in utils.js
1.2 npm run mainnet:deploy
1.3 npm run mainnet:verify
1.4 save Deployed FxERC20RootTunnel's address
2. Deploy FXERC20 and FxERC20ChildTunnel to Polygon
2.1 change NETWORK to Polygon in utils.js
2.2 npm run matic:deploy
2.3 npm run matic:verify
2.4 save Deployed FxERC20ChildTunnel's address and FXERC20 address
3. Setup Bridge - (Please don't confuse, this is IMPORTANT step!!!!!)
3.1 update ChildTunnel of FxERC20RootTunnel in ethereum
3.2 update RootTunnel of FxERC20ChildTunnel in polygon
4. Mapping Steps
4.1 Map Root Token / Child Token and wait ?? ~ ?? mins
4.2 Check FxERC20ChildTunnel's TokenMapped event in Polygon
4.3 import child token on wallet in Polygon Network
4.4 Create Pair and Add Liquidity in Polygon - VabbleDAO Project
4.4.1 Run follow command to create Pair
- npx hardhat run .\scripts\create_token_pair.js --network matic
- Run above command again and check if all pairs is created
4.4.2 Run follow commmand to add liquidity
- npx hardhat run .\scripts\add_liquidity.js --network matic
- Then you will get message to "Please run again after 1 min"
- Then run above command again after 1 min
- Then you will get error message on last line 'UniswapV2Library: INSUFFICIENT_LIQUIDITY'
- Please ignore above error and wait 2 ~ 3 mins
5. Test Steps (deposit, withdraw)
5.1 Record current balance of rook Token, child token in Wallet
5.2 Root Token -> FxERC20RootTunnel(spender) in ethereum
5.3 deposit in FxERC20RootTunnel and wait ?? ~ ?? mins
5.4 check if the balance of rook token is decreased in Ethereum
5.5 check the balance of childToken in Wallet in Polygon
5.6 Record current balance of rook Token, child token in Wallet
5.7 withdraw from FxERC20ChildTunnel
5.8 check if the balance of child token is decreased in Polygon
5.9 Wait ?? mins
5.10 Call Generate Proof API
5.11 check the balance of rootToken in Wallet in Ethereum