From c7e92f93eca51f3ce29681109c90a234ad3293e4 Mon Sep 17 00:00:00 2001 From: Sergey <2901744+evercoinx@users.noreply.github.com> Date: Sat, 23 Nov 2024 10:32:31 +0100 Subject: [PATCH] Deploy MaticX contract into ethereum staging network --- .openzeppelin/mainnet.json | 231 +++++++++++++++++- ...-Mainnet.md => Ethereum-Mainnet-(Prod).md} | 2 +- docs/Ethereum-Mainnet-(Staging).md | 52 ++++ docs/Home.md | 3 +- 4 files changed, 285 insertions(+), 3 deletions(-) rename docs/{Ethereum-Mainnet.md => Ethereum-Mainnet-(Prod).md} (99%) create mode 100644 docs/Ethereum-Mainnet-(Staging).md diff --git a/.openzeppelin/mainnet.json b/.openzeppelin/mainnet.json index ab31e735..e6718a4f 100644 --- a/.openzeppelin/mainnet.json +++ b/.openzeppelin/mainnet.json @@ -1,6 +1,12 @@ { "manifestVersion": "3.2", - "proxies": [], + "proxies": [ + { + "address": "0xcEbaFD96Df8a1Cc63ee77770296F14B68089Ab04", + "txHash": "0x4fc88dac5b58604ed46e338e20ad48505b5467032213e285e72fa63508da8f92", + "kind": "transparent" + } + ], "impls": { "0b6f1ec20dee76d8d3157a261518fea3fb34c89d242fb5238bb39ebef0473c28": { "address": "0xaC72d5A7078F5E6B1661c0c4fe036573c771e568", @@ -587,6 +593,229 @@ }, "namespaces": {} } + }, + "73dff966b763ddf8a9fa121ee935ddc46afc39defb8e28f3722ec2124ed481ee": { + "address": "0xF841Ae2C0fd78268e3B3dab3F3C54Ab3CFDD37c7", + "txHash": "0x9a088794ea41e7f06192287a6ccfd0e0659611db8a26358a74a71b28bbff0759", + "layout": { + "solcVersion": "0.8.7", + "storage": [ + { + "label": "_initialized", + "offset": 0, + "slot": "0", + "type": "t_uint8", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:63", + "retypedFrom": "bool" + }, + { + "label": "_initializing", + "offset": 1, + "slot": "0", + "type": "t_bool", + "contract": "Initializable", + "src": "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol:68" + }, + { + "label": "__gap", + "offset": 0, + "slot": "1", + "type": "t_array(t_uint256)50_storage", + "contract": "ContextUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol:40" + }, + { + "label": "_paused", + "offset": 0, + "slot": "51", + "type": "t_bool", + "contract": "PausableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:29" + }, + { + "label": "__gap", + "offset": 0, + "slot": "52", + "type": "t_array(t_uint256)49_storage", + "contract": "PausableUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol:116" + }, + { + "label": "__gap", + "offset": 0, + "slot": "101", + "type": "t_array(t_uint256)50_storage", + "contract": "ERC165Upgradeable", + "src": "@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol:41" + }, + { + "label": "_roles", + "offset": 0, + "slot": "151", + "type": "t_mapping(t_bytes32,t_struct(RoleData)23_storage)", + "contract": "AccessControlUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:57" + }, + { + "label": "__gap", + "offset": 0, + "slot": "152", + "type": "t_array(t_uint256)49_storage", + "contract": "AccessControlUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol:260" + }, + { + "label": "_status", + "offset": 0, + "slot": "201", + "type": "t_uint256", + "contract": "ReentrancyGuardUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol:38" + }, + { + "label": "__gap", + "offset": 0, + "slot": "202", + "type": "t_array(t_uint256)49_storage", + "contract": "ReentrancyGuardUpgradeable", + "src": "@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol:88" + }, + { + "label": "stakeManager", + "offset": 0, + "slot": "251", + "type": "t_address", + "contract": "ValidatorRegistry", + "src": "contracts/ValidatorRegistry.sol:20" + }, + { + "label": "polygonERC20", + "offset": 0, + "slot": "252", + "type": "t_address", + "contract": "ValidatorRegistry", + "src": "contracts/ValidatorRegistry.sol:21" + }, + { + "label": "maticX", + "offset": 0, + "slot": "253", + "type": "t_address", + "contract": "ValidatorRegistry", + "src": "contracts/ValidatorRegistry.sol:22" + }, + { + "label": "version", + "offset": 0, + "slot": "254", + "type": "t_string_storage", + "contract": "ValidatorRegistry", + "src": "contracts/ValidatorRegistry.sol:24" + }, + { + "label": "preferredDepositValidatorId", + "offset": 0, + "slot": "255", + "type": "t_uint256", + "contract": "ValidatorRegistry", + "src": "contracts/ValidatorRegistry.sol:25" + }, + { + "label": "preferredWithdrawalValidatorId", + "offset": 0, + "slot": "256", + "type": "t_uint256", + "contract": "ValidatorRegistry", + "src": "contracts/ValidatorRegistry.sol:26" + }, + { + "label": "validatorIdExists", + "offset": 0, + "slot": "257", + "type": "t_mapping(t_uint256,t_bool)", + "contract": "ValidatorRegistry", + "src": "contracts/ValidatorRegistry.sol:27" + }, + { + "label": "validators", + "offset": 0, + "slot": "258", + "type": "t_array(t_uint256)dyn_storage", + "contract": "ValidatorRegistry", + "src": "contracts/ValidatorRegistry.sol:29" + } + ], + "types": { + "t_address": { + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_uint256)49_storage": { + "label": "uint256[49]", + "numberOfBytes": "1568" + }, + "t_array(t_uint256)50_storage": { + "label": "uint256[50]", + "numberOfBytes": "1600" + }, + "t_array(t_uint256)dyn_storage": { + "label": "uint256[]", + "numberOfBytes": "32" + }, + "t_bool": { + "label": "bool", + "numberOfBytes": "1" + }, + "t_bytes32": { + "label": "bytes32", + "numberOfBytes": "32" + }, + "t_mapping(t_address,t_bool)": { + "label": "mapping(address => bool)", + "numberOfBytes": "32" + }, + "t_mapping(t_bytes32,t_struct(RoleData)23_storage)": { + "label": "mapping(bytes32 => struct AccessControlUpgradeable.RoleData)", + "numberOfBytes": "32" + }, + "t_mapping(t_uint256,t_bool)": { + "label": "mapping(uint256 => bool)", + "numberOfBytes": "32" + }, + "t_string_storage": { + "label": "string", + "numberOfBytes": "32" + }, + "t_struct(RoleData)23_storage": { + "label": "struct AccessControlUpgradeable.RoleData", + "members": [ + { + "label": "members", + "type": "t_mapping(t_address,t_bool)", + "offset": 0, + "slot": "0" + }, + { + "label": "adminRole", + "type": "t_bytes32", + "offset": 0, + "slot": "1" + } + ], + "numberOfBytes": "64" + }, + "t_uint256": { + "label": "uint256", + "numberOfBytes": "32" + }, + "t_uint8": { + "label": "uint8", + "numberOfBytes": "1" + } + }, + "namespaces": {} + } } } } diff --git a/docs/Ethereum-Mainnet.md b/docs/Ethereum-Mainnet-(Prod).md similarity index 99% rename from docs/Ethereum-Mainnet.md rename to docs/Ethereum-Mainnet-(Prod).md index f723555c..0ad765f3 100644 --- a/docs/Ethereum-Mainnet.md +++ b/docs/Ethereum-Mainnet-(Prod).md @@ -1,6 +1,6 @@ # Deployment Information -## Ethereum Mainnet +## Ethereum Mainnet (Prod) ### ProxyAdmin diff --git a/docs/Ethereum-Mainnet-(Staging).md b/docs/Ethereum-Mainnet-(Staging).md new file mode 100644 index 00000000..693610b8 --- /dev/null +++ b/docs/Ethereum-Mainnet-(Staging).md @@ -0,0 +1,52 @@ +# Deployment Information + +## Ethereum Mainnet (Staging) + +### Validator Registry + +- Proxy address: [0xcEbaFD96Df8a1Cc63ee77770296F14B68089Ab04](https://etherscan.io/address/0xcEbaFD96Df8a1Cc63ee77770296F14B68089Ab04) +- Implementation address: [0xF841Ae2C0fd78268e3B3dab3F3C54Ab3CFDD37c7](https://etherscan.io/address/0xF841Ae2C0fd78268e3B3dab3F3C54Ab3CFDD37c7) +- Proxy admin address: [0x5cEB726baBE01776D47b25247f16Cc8Ca439A8F0](https://etherscan.io/address/0x5cEB726baBE01776D47b25247f16Cc8Ca439A8F0) + +### MaticX + +- Proxy address: [](https://etherscan.io/address/) +- Implementation address: [](https://etherscan.io/address/) + +### Stake Manager + +- Proxy address: [0x5e3Ef299fDDf15eAa0432E6e66473ace8c13D908](https://etherscan.io/address/0x5e3Ef299fDDf15eAa0432E6e66473ace8c13D908) +- Implementation address: [0xbA9Ac3C9983a3e967f0f387c75cCbD38Ad484963](https://etherscan.io/address/0xbA9Ac3C9983a3e967f0f387c75cCbD38Ad484963) + +### Fx State Root Tunnel + +- Address: [0x40FB804Cc07302b89EC16a9f8d040506f64dFe29](https://etherscan.io/address/0x40FB804Cc07302b89EC16a9f8d040506f64dFe29) + +### Checkpoint Manager + +- Address: [0x86e4dc95c7fbdbf52e33d563bbdb00823894c287](https://etherscan.io/address/0x86e4dc95c7fbdbf52e33d563bbdb00823894c287) + +### Fx Root + +- Address: [0xfe5e5D361b2ad62c541bAb87C45a0B9B018389a2](https://etherscan.io/address/0xfe5e5D361b2ad62c541bAb87C45a0B9B018389a2) + +### Matic Token + +- Address: [0x7D1AfA7B718fb893dB30A3aBc0Cfc608AaCfeBB0](https://etherscan.io/address/0x7D1AfA7B718fb893dB30A3aBc0Cfc608AaCfeBB0) + +### Polygon Ecosystem Token + +- Address: [0x455e53CBB86018Ac2B8092FdCd39d8444aFFC3F6](https://etherscan.io/address/0x455e53CBB86018Ac2B8092FdCd39d8444aFFC3F6) + +### Polygon Migration + +- Proxy address: [0x29e7DF7b6A1B2b07b731457f499E1696c60E2C4e](https://etherscan.io/address/0x29e7DF7b6A1B2b07b731457f499E1696c60E2C4e) +- Implementation address: [0x550B7CDaC6F5a0d9e840505c3Df74aC045530446](https://etherscan.io/address/0x550B7CDaC6F5a0d9e840505c3Df74aC045530446) + +### Manager + +- Address: [0x6FCBE6C2d6f6c890fD0cC5b0288E2D474D90BB1F](https://etherscan.io/address/0x6FCBE6C2d6f6c890fD0cC5b0288E2D474D90BB1F) + +### Treasury + +- Address: [0x6FCBE6C2d6f6c890fD0cC5b0288E2D474D90BB1F](https://etherscan.io/address/0x6FCBE6C2d6f6c890fD0cC5b0288E2D474D90BB1F) diff --git a/docs/Home.md b/docs/Home.md index 6bd67067..4e621aea 100644 --- a/docs/Home.md +++ b/docs/Home.md @@ -2,7 +2,8 @@ ## Deployment Information -- [Ethereum Mainnet](https://github.com/stader-labs/maticX/wiki/Ethereum-Mainnet) +- [Ethereum Mainnet (Prod)](https://github.com/stader-labs/maticX/wiki/Ethereum-Mainnet-(Prod)) +- [Ethereum Mainnet (Staging)](https://github.com/stader-labs/maticX/wiki/Ethereum-Mainnet-(Staging)) - [Polygon Mainnet](https://github.com/stader-labs/maticX/wiki/Polygon-Mainnet) - [Sepolia Testnet](https://github.com/stader-labs/maticX/wiki/Sepolia-Testnet) - [Amoy Testnet](https://github.com/stader-labs/maticX/wiki/Amoy-Testnet)