diff --git a/synd-contracts/README.md b/synd-contracts/README.md index 35233138f..3ac060adb 100644 --- a/synd-contracts/README.md +++ b/synd-contracts/README.md @@ -163,31 +163,52 @@ $ make deploy-syndicate-factory ### Deployed Contracts +### Syndicate Network + +| Contract Name | Address | +| ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | +| SyndicateFactoryWrapper | [0x6f970AD6AD70acb9990CDb499fc70FbcE81aACD7](https://synd-mainnet.explorer.alchemy.com/address/0x6f970AD6AD70acb9990CDb499fc70FbcE81aACD7) | +| SyndicateFactory | [0x453348A58443B2Ede5c62480C47cf91c750BA41f](https://synd-mainnet.explorer.alchemy.com/address/0x453348A58443B2Ede5c62480C47cf91c750BA41f) | +| RequireAndModuleFactory | [0xD3A9d539fe3Fb2838fF73C652EB94dAE050d873a](https://synd-mainnet.explorer.alchemy.com/address/0xD3A9d539fe3Fb2838fF73C652EB94dAE050d873a) | +| RequireOrModuleFactory | [0x715595259b492Dbc3ad9298F66E9F917eeD6d013](https://synd-mainnet.explorer.alchemy.com/address/0x715595259b492Dbc3ad9298F66E9F917eeD6d013) | +| RequireCompositeModuleFactory | [0xDC57Da2B7C11C4CEc933910EfD4c0479cbB24434](https://synd-mainnet.explorer.alchemy.com/address/0xDC57Da2B7C11C4CEc933910EfD4c0479cbB24434) | + +### Mainnet + +| Contract Name | Address | +| ----------------------------- | --------------------------------------------------------------------------------------------------------------------- | +| ArbConfigManagerFactory | [0x52e02554e63801ec66d2D72fdD2c679D18a117dE](https://etherscan.io/address/0x52e02554e63801ec66d2D72fdD2c679D18a117dE) | +| ArbConfigManager | [0x9a525431620B2B3C808684BFFE6738307921f19d](https://etherscan.io/address/0x9a525431620B2B3C808684BFFE6738307921f19d) | +| AttestationDocVerifier | [0xC9E070caa1C8F231D5f3fa265AAb61A6A1fD0466](https://etherscan.io/address/0xC9E070caa1C8F231D5f3fa265AAb61A6A1fD0466) | +| TeeKeyManager | [0xFB7a527Af1C80dEA95b174FBfa2662B36006b90e](https://etherscan.io/address/0xFB7a527Af1C80dEA95b174FBfa2662B36006b90e) | + +### Base + +| Contract Name | Address | +| ----------------------------- | --------------------------------------------------------------------------------------------------------------------- | +| ArbConfigManagerFactory | [0x1e05910C82027f2E0e4733cba5ba41f528cAefE1](https://basescan.org/address/0x1e05910C82027f2E0e4733cba5ba41f528cAefE1) | +| ArbConfigManager | [0xE37CfB1520F5F33F829d5f990D7AA3C563AbBF18](https://basescan.org/address/0xE37CfB1520F5F33F829d5f990D7AA3C563AbBF18) | +| AttestationDocVerifier | [0xd55483B303B8a9b1327e954043f19E18692FA293](https://basescan.org/address/0xd55483B303B8a9b1327e954043f19E18692FA293) | +| TeeKeyManager | [0xC12BB72B44286b3EAF8A065402A102C3719C8cA1](https://basescan.org/address/0xC12BB72B44286b3EAF8A065402A102C3719C8cA1) | + ### Base Sepolia -| Contract Name | Address | -| ----------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | -| ArbConfigManagerFactory | [0xcf733FD99A9E7052F126C01bf033159775bEcF0B](https://sepolia.basescan.org/address/0xcf733FD99A9E7052F126C01bf033159775bEcF0B) | -| ArbConfigManager | [0x647e0da79BBEF0e3B076a59cfB3a42429273CE52](https://sepolia.basescan.org/address/0x647e0da79BBEF0e3B076a59cfB3a42429273CE52) | -| AttestationDocVerifier | [0x8B586B9fe1076d63723f5324aB42854A4DC145C0](https://sepolia.basescan.org/address/0x8B586B9fe1076d63723f5324aB42854A4DC145C0) | + +| Contract Name | Address | +| ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------ | +| ArbConfigManagerFactory | [0xcf733FD99A9E7052F126C01bf033159775bEcF0B](https://sepolia.basescan.org/address/0xcf733FD99A9E7052F126C01bf033159775bEcF0B) | +| ArbConfigManager | [0x647e0da79BBEF0e3B076a59cfB3a42429273CE52](https://sepolia.basescan.org/address/0x647e0da79BBEF0e3B076a59cfB3a42429273CE52) | +| AttestationDocVerifier | [0xC1A11c77AAfCd663945ea234345ffc6EF53dC12c](https://sepolia.basescan.org/address/0xC1A11c77AAfCd663945ea234345ffc6EF53dC12c) | +| TeeKeyManager | [0x9bFA7C84fF3816a2Ca9F72865036e8998385147b](https://sepolia.basescan.org/address/0x9bFA7C84fF3816a2Ca9F72865036e8998385147b) | ### Risa -| Contract Name | Address | -| ----------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | -| SyndicateFactoryWrapper | [0x99d2b60FD2dBdF08CDA18165D20f4E713768b07E](https://risa-testnet.explorer.alchemy.com/address/0x99d2b60FD2dBdF08CDA18165D20f4E713768b07E) | -| SyndicateFactory | [0x33aB24E0a47A7aAe869755420950A6326e3CB9F3](https://risa-testnet.explorer.alchemy.com/address/0x33aB24E0a47A7aAe869755420950A6326e3CB9F3) | -| RequireAndModuleFactory | [0x2f3CC13661A95DD616311a7bddB9cDB4bA67C4d2](https://risa-testnet.explorer.alchemy.com/address/0x2f3CC13661A95DD616311a7bddB9cDB4bA67C4d2) | -| RequireOrModuleFactory | [0x61fC28cf640235d560bd89350033cAee9642F8E5](https://risa-testnet.explorer.alchemy.com/address/0x61fC28cf640235d560bd89350033cAee9642F8E5) | -| RequireCompositeModuleFactory | [0xD1e50D5A203E6485e97E3bC8A951b49aaFC28603](https://risa-testnet.explorer.alchemy.com/address/0xD1e50D5A203E6485e97E3bC8A951b49aaFC28603) | - -### Risa Devnet - -| Contract Name | Address | -| ----------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | -| SyndicateFactory | [0x9a0Ef1333681b357047282144dc06D7DAA1f76Ba](https://explorer-1205614516323464.devnet.alchemy.com/address/0x9a0Ef1333681b357047282144dc06D7DAA1f76Ba) | -| RequireAndModuleFactory | [0x19aaf160dA8985c54bb97adAF9304B5aC7890421](https://explorer-1205614516323464.devnet.alchemy.com/address/0x19aaf160dA8985c54bb97adAF9304B5aC7890421) | -| RequireOrModuleFactory | [0xcFc46cEBB3eAEc9b5776e3FDe5879125B8BBA05d](https://explorer-1205614516323464.devnet.alchemy.com/address/0xcFc46cEBB3eAEc9b5776e3FDe5879125B8BBA05d) | -| RequireCompositeModuleFactory | [0x471584f0B8e35faEB2a618BD58A62316D8882d63](https://explorer-1205614516323464.devnet.alchemy.com/address/0x471584f0B8e35faEB2a618BD58A62316D8882d63) | +| Contract Name | Address | +| ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | +| SyndicateFactoryWrapper | [0x184DFCf23ee7ad155484b2Cf5Fa8bfAD9035A13e](https://risa-testnet.explorer.alchemy.com/address/0x184DFCf23ee7ad155484b2Cf5Fa8bfAD9035A13e) | +| SyndicateFactory | [0x1f5B81798ff2B569EEcbA4e778588A93d296A8C5](https://risa-testnet.explorer.alchemy.com/address/0x1f5B81798ff2B569EEcbA4e778588A93d296A8C5) | +| RequireAndModuleFactory | [0xE3474659df8DCFF61C27C1aa71C5298271f1bBb7](https://risa-testnet.explorer.alchemy.com/address/0xE3474659df8DCFF61C27C1aa71C5298271f1bBb7) | +| RequireOrModuleFactory | [0xad26a94Fc38Bd3ba9888eb785790586Eb33C8dE0](https://risa-testnet.explorer.alchemy.com/address/0xad26a94Fc38Bd3ba9888eb785790586Eb33C8dE0) | +| RequireCompositeModuleFactory | [0x50246Eb7a28A7028E7C5fbb68e9A6e2fd45a7139](https://risa-testnet.explorer.alchemy.com/address/0x50246Eb7a28A7028E7C5fbb68e9A6e2fd45a7139) | ### ETH Holesky diff --git a/synd-contracts/foundry.lock b/synd-contracts/foundry.lock index 0a62ab7e2..528913530 100644 --- a/synd-contracts/foundry.lock +++ b/synd-contracts/foundry.lock @@ -1,27 +1,18 @@ { + "../synd-withdrawals/synd-enclave/nitro": { + "rev": "3d035ff7a6d059bb455e5bf07395df25c657c6b3" + }, "lib/crosschainERC20": { "rev": "cf991a89d21044a74dac9ef8e015f2653ce5a020" }, - "lib/forge-std": { - "rev": "b93cf4bc34ff214c099dc970b153f85ade8c9f66" - }, - "lib/openzeppelin-contracts": { - "rev": "acd4ff74de833399287ed6b31b4debf6b2b35527" - }, - "lib/sp1-contracts": { - "rev": "512b5e029abc27f6e46a3c7eba220dac83ecc306" - }, "lib/eigenda-contracts": { "rev": "6f45c8714f5c82c4bef24b8aac968ef98e33dcf5" }, - "lib/upgrade-executor": { - "rev": "9495a82d52eeca2387dc9d54631e5e166ce7afa5" - }, "lib/eigenlayer-middleware": { "rev": "fd26169c7f988a53ad9ca1e745f40754afed4ed4" }, - "../synd-withdrawals/synd-enclave/nitro": { - "rev": "3d035ff7a6d059bb455e5bf07395df25c657c6b3" + "lib/forge-std": { + "rev": "b93cf4bc34ff214c099dc970b153f85ade8c9f66" }, "lib/nitro-contracts": { "branch": { @@ -29,10 +20,19 @@ "rev": "278fdbc39089fa86330f0c23f0a05aee61972c84" } }, + "lib/openzeppelin-contracts": { + "rev": "acd4ff74de833399287ed6b31b4debf6b2b35527" + }, "lib/openzeppelin-contracts-upgradeable": { "tag": { "name": "v5.4.0", "rev": "e725abddf1e01cf05ace496e950fc8e243cc7cab" } + }, + "lib/sp1-contracts": { + "rev": "512b5e029abc27f6e46a3c7eba220dac83ecc306" + }, + "lib/upgrade-executor": { + "rev": "9495a82d52eeca2387dc9d54631e5e166ce7afa5" } } \ No newline at end of file diff --git a/synd-contracts/script/DeployMinRequiredSequencingChain.s.sol b/synd-contracts/script/DeployMinRequiredSequencingChain.s.sol new file mode 100644 index 000000000..6a38c434f --- /dev/null +++ b/synd-contracts/script/DeployMinRequiredSequencingChain.s.sol @@ -0,0 +1,39 @@ +// SPDX-License-Identifier: UNLICENSED +pragma solidity 0.8.28; + +import {Script} from "forge-std/Script.sol"; + +import {RequireAndModuleFactory} from "src/factory/PermissionModuleFactories.sol"; +import {RequireOrModuleFactory} from "src/factory/PermissionModuleFactories.sol"; +import {RequireCompositeModuleFactory} from "src/factory/PermissionModuleFactories.sol"; +import {SyndicateFactory} from "src/factory/SyndicateFactory.sol"; +import {SyndicateFactoryWrapper} from "src/factory/SyndicateFactoryWrapper.sol"; + +import {console} from "forge-std/console.sol"; + +contract DeployMinRequiredSequencingChain is Script { + function run() public { + uint256 deployerPrivateKey = vm.envUint("PRIVATE_KEY"); + vm.startBroadcast(deployerPrivateKey); + address admin = vm.envAddress("ADMIN_ADDR"); + + RequireAndModuleFactory requireAndModuleFactory = new RequireAndModuleFactory(admin); + console.log("requireAndModuleFactory", address(requireAndModuleFactory)); + + RequireOrModuleFactory requireOrModuleFactory = new RequireOrModuleFactory(admin); + console.log("requireOrModuleFactory", address(requireOrModuleFactory)); + + RequireCompositeModuleFactory requireCompositeModuleFactory = new RequireCompositeModuleFactory(admin); + console.log("requireCompositeModuleFactory", address(requireCompositeModuleFactory)); + + SyndicateFactory syndicateFactory = new SyndicateFactory(admin); + console.log("syndicateFactory", address(syndicateFactory)); + + SyndicateFactoryWrapper syndicateFactoryWrapper = new SyndicateFactoryWrapper( + admin, address(syndicateFactory), address(requireAndModuleFactory), address(requireOrModuleFactory) + ); + console.log("syndicateFactoryWrapper", address(syndicateFactoryWrapper)); + + vm.stopBroadcast(); + } +}