Skip to content

Commit a8b5952

Browse files
authored
Merge pull request #30 from darwinia-network/echo/swap-owner2
Swap owners
2 parents 8303dd7 + c1d0cde commit a8b5952

File tree

8 files changed

+1665
-19
lines changed

8 files changed

+1665
-19
lines changed

foundry.toml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,11 @@ tanssi_pangoro = "https://fraa-flashbox-2871-rpc.a.stagenet.tanssi.network"
3737

3838
## mainnets
3939
ethereum = "https://mainnet.infura.io/v3/b6400dafb2e14de5bf24429abab8e098"
40-
darwinia = "https://erpc.ringdao.com/main/evm/46"
41-
crab = "https://erpc.ringdao.com/main/evm/44"
42-
arbitrum = "https://erpc.ringdao.com/main/evm/42161"
43-
blast = "https://erpc.ringdao.com/main/evm/81457"
40+
darwinia = "https://rpc.darwinia.network"
41+
crab = "https://crab-rpc.darwinia.network"
42+
arbitrum = "https://arbitrum-mainnet.infura.io/v3/b6400dafb2e14de5bf24429abab8e098"
43+
blast = "https://rpc.blast.io"
4444
polygon = "https://polygon-mainnet.infura.io/v3/b6400dafb2e14de5bf24429abab8e098"
45-
moonbeam = "https://erpc.ringdao.com/main/evm/1284"
46-
morph = "https://erpc.ringdao.com/main/evm/2818"
47-
base = "https://erpc.ringdao.com/main/evm/8453"
45+
moonbeam = "https://rpc.api.moonbeam.network"
46+
morph = "https://rpc.morphl2.io"
47+
base = "https://base-mainnet.infura.io/v3/b6400dafb2e14de5bf24429abab8e098"

proposal/0x0bc48cd18227a8c14104c7111852ba3e509b01bd0d6c4af73f759c7572996107/deployment.json

Lines changed: 1596 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
[
2+
{
3+
"signer": "0x0f14341a7f464320319025540e8fe48ad0fe5aec",
4+
"signature": "0x26aa9586e8a13597d3413a191ca09a823ca03a3f88af7a7be6d79fa84d11eb9d35d2a2c5a1c9b46cda3724df88918a7357a7d92dcbac3348d0740ca154a1dcb81b"
5+
},
6+
{
7+
"signer": "0x5b7544b3f6abd9e03fba494796b1ee6f9543e2e4",
8+
"signature": "0x2c740ca9b2a276af34314fa926758d40b94b35ff621bb17e206074802645fdba30a436b2147c32f563791bf92204d8767ecb877b118ff549863b8ee8c5d0c4ba1c"
9+
},
10+
{
11+
"signer": "0x52386BE2397e8EAc26298F733b390684203fB580",
12+
"signature": "0xa064c6c078996f692ce79371d8169213d6c990ca235e98f6d612644f87d742ec06e01231415b071d0a12df09d3d003ff193129a69c162ba15162ffd0d65fc3671c"
13+
}
14+
]

script/Proposal.s.sol

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
// SPDX-License-Identifier: MIT
22
pragma solidity 0.8.17;
33

4-
import "./msgport/OneClick.s.sol";
4+
import "./self/SwapOwner2.s.sol";
55

6-
contract Proposal is OneClickScript {}
6+
contract Proposal is SwapOwner2Script {}

script/common/Base.sol

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ abstract contract Base is Script, Sphinx, SphinxConstants {
1818
function configureSphinx() public override {
1919
sphinxConfig.projectName = "RING-DAO";
2020
sphinxConfig.testnets = ["sepolia", "arbitrum_sepolia"];
21-
// sphinxConfig.mainnets = ["arbitrum", "base", "blast", "crab", "darwinia", "ethereum", "polygon", "moonbeam", "morph"];
22-
sphinxConfig.mainnets = ["base", "darwinia"];
21+
sphinxConfig.mainnets =
22+
["arbitrum", "base", "blast", "crab", "darwinia", "ethereum", "polygon", "moonbeam", "morph"];
2323
}
2424

2525
function CREATE3() public returns (address create3) {

script/msgport/Connect.s.sol

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -66,9 +66,8 @@ contract ConnectScript is Base, OracleConfig, RelayerConfig {
6666
0x3Bc5362EC3a3DBc07292aEd4ef18Be18De02DA3a
6767
!= III(0x2cd1867Fb8016f93710B6386f7f9F1D540A60812).peerOf(728126428)
6868
) {
69-
III(0x2cd1867Fb8016f93710B6386f7f9F1D540A60812).setPeer(
70-
728126428, 0x3Bc5362EC3a3DBc07292aEd4ef18Be18De02DA3a
71-
);
69+
III(0x2cd1867Fb8016f93710B6386f7f9F1D540A60812)
70+
.setPeer(728126428, 0x3Bc5362EC3a3DBc07292aEd4ef18Be18De02DA3a);
7271
}
7372
}
7473
} else {
@@ -77,9 +76,8 @@ contract ConnectScript is Base, OracleConfig, RelayerConfig {
7776
0xb5F017129950C21d870019f6066C42E25acDAAe3
7877
!= III(0x2cd1867Fb8016f93710B6386f7f9F1D540A60812).peerOf(2494104990)
7978
) {
80-
III(0x2cd1867Fb8016f93710B6386f7f9F1D540A60812).setPeer(
81-
2494104990, 0xb5F017129950C21d870019f6066C42E25acDAAe3
82-
);
79+
III(0x2cd1867Fb8016f93710B6386f7f9F1D540A60812)
80+
.setPeer(2494104990, 0xb5F017129950C21d870019f6066C42E25acDAAe3);
8381
}
8482
}
8583
}

script/msgport/Deploy.s.sol

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ contract DeployScript is Base {
1919
0x9F33a4809aA708d7a399fedBa514e0A0d15EfA85, // guantong
2020
0xB9a0CaDD13C5d534b034d878b2fcA9E5a6e1e3A4, // echo
2121
0xc1A3FEE4132e9285f41F5389570fD9Fbbcb10a1D, // yalin
22-
0xFa5727bE643dba6599fC7F812fE60dA3264A8205 // nada
22+
0xFa5727bE643dba6599fC7F812fE60dA3264A8205 // nada
2323
];
2424
uint64 quorum = 3;
2525

@@ -149,7 +149,7 @@ contract DeployScript is Base {
149149
function ORACLE() public returns (address) {
150150
bytes memory byteCode = type(Oracle).creationCode;
151151
bytes memory initCode = bytes.concat(byteCode, abi.encode(DAO(), ORMPAddr()));
152-
return computeAddress(salt2, hash(initCode));
152+
return computeAddress(salt2, hash(initCode));
153153
}
154154

155155
function RELAYER() public returns (address) {

script/self/SwapOwner2.s.sol

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
// SPDX-License-Identifier: MIT
2+
pragma solidity 0.8.17;
3+
4+
import {Base} from "../common/Base.sol";
5+
6+
interface ISafe {
7+
function swapOwner(address prevOwner, address oldOwner, address newOwner) external;
8+
}
9+
10+
interface IRelayer {
11+
function isApproved(address) external view returns (bool);
12+
function setApproved(address, bool) external;
13+
}
14+
15+
contract SwapOwner2Script is Base {
16+
address guantong = 0x9F33a4809aA708d7a399fedBa514e0A0d15EfA85;
17+
address xiaoch = 0x88a39B052d477CfdE47600a7C9950a441Ce61cb4;
18+
19+
address alex = 0x00E3993566b34e5367d1C602439997BD08c11FF7;
20+
address yalin = 0x9a3b34f81F8005709409eAf65AEcA4530011f88d;
21+
22+
address relayer = 0x114890eB7386F94eae410186F20968bFAf66142a;
23+
24+
function run() public sphinx {
25+
_run();
26+
}
27+
28+
function _run() internal virtual {
29+
address self = safeAddress();
30+
31+
ISafe(self).swapOwner(address(0x1), alex, yalin);
32+
ISafe(self).swapOwner(0x5b7544b3f6aBd9E03Fba494796B1eE6F9543E2e4, guantong, xiaoch);
33+
34+
if (IRelayer(relayer).isApproved(guantong)) {
35+
IRelayer(relayer).setApproved(guantong, false);
36+
}
37+
}
38+
}

0 commit comments

Comments
 (0)