diff --git a/.env.example b/.env.example index 4f1cb42c..d22d3acb 100644 --- a/.env.example +++ b/.env.example @@ -63,6 +63,7 @@ PARALLEL_RPC='' MANTLE_RPC='' REYA_CRONOS_RPC='' REYA_RPC='' +SYNDR_SEPOLIA_L3_RPC='' # update these settings # DEPLOYMENT_MODE="dev | surge | prod" diff --git a/chainConfig.json b/chainConfig.json index ba863e70..972913cf 100644 --- a/chainConfig.json +++ b/chainConfig.json @@ -39,6 +39,17 @@ }, "siblings": [1, 42161, 10, 8453] }, + "444444": { + "roleOwners": { + "ownerAddress": "0x78Deb9225c3F28D12922913Fec978e4dC90E1aa4", + "executorAddress": "0x42639d8fd154b72472e149a7d5ac13fa280303d9", + "transmitterAddress": "0xfbc5ea2525bb827979e4c33b237cd47bcb8f81c5", + "watcherAddress": "0x75ddddf61b8180d3837b7d8b98c062ca442e0e14", + "feeUpdaterAddress": "0xfbc5ea2525bb827979e4c33b237cd47bcb8f81c5" + }, + "siblings": [421614, 80001, 11155111], + "overrides": {} + }, "2863311531": { "roleOwners": { "ownerAddress": "0x5fD7D0d6b91CC4787Bcb86ca47e0Bd4ea0346d34", diff --git a/deployments/prod_addresses.json b/deployments/prod_addresses.json index d3fbd0d5..67477a66 100644 --- a/deployments/prod_addresses.json +++ b/deployments/prod_addresses.json @@ -1955,6 +1955,13 @@ "switchboard": "0x6977afB0d9F041327D2C7d1E9d412685C1B202ea" } }, + "444444": { + "FAST": { + "capacitor": "0xd489c622f3153698B2E806aFDB59F9Dea8f8E545", + "decapacitor": "0x2869b5355b4EF8295e92fAC09BB2BDE7B131e83b", + "switchboard": "0xedAC223C3Fe694A6d4c8407b4f6e95c299d6Eba6" + } + }, "11155111": { "FAST": { "capacitor": "0x40ceD2a65064904c128Fe84Fbb54B27757e522bB", @@ -2196,6 +2203,13 @@ "switchboard": "0xEDF6dB2f3BC8deE014762e0141EE4CA19d685dBd" } }, + "444444": { + "FAST": { + "capacitor": "0x59309f3dEa6449190Bdd22d19933986264344dae", + "decapacitor": "0x9B5e26E853c8b3B618F08aE22f5030135808CbD4", + "switchboard": "0xB9EDe9aaEaA40e35033ABBC872D141950d08cc4d" + } + }, "11155111": { "NATIVE_BRIDGE": { "switchboard": "0xAE9bE0eA6DD7B53C88665Cb2EFf7d40dFD51cf91", @@ -2301,6 +2315,42 @@ "startBlock": 21007408, "Counter": "0xA7f7e4fE8E4cdDCD9969Bd3fbcFF67000CD7DE47" }, + "444444": { + "SignatureVerifier": "0x845a6f4Be829e5D11906cc2eb2f8ccd39E8848a6", + "Hasher": "0xfC96858aFda5F0F846679E00D0Dd6dda35C4026e", + "CapacitorFactory": "0xE3F27BA71ECE47C68c89CFaa69105881FD81Ffc0", + "Socket": "0x015cdE684a923EBbE71Ca857208c301848C51D75", + "ExecutionManager": "0xf60E46310883A7c4FA7017958Fb7952517d7d2f6", + "TransmitManager": "0xC5Fc22Fd675015D7b3919c2ED7550dd67dD0D9ac", + "FastSwitchboard": "0xf6Cba89a18c4eD3b3725297E87073099a397ED9f", + "OptimisticSwitchboard": "0x1ea6b8Aa100fB44c9de7baCB47c92Dc502E69DaC", + "SocketBatcher": "0xA02121f62Ba11D3F16dD3f7DAc5bAcd7310858e9", + "Counter": "0x87614638D9A452ffF21Ac9581Dc4d3030bd7E5db", + "startBlock": 275, + "integrations": { + "80001": { + "FAST": { + "capacitor": "0x67f6620ed6729093B5d79Ee9706012A1De7c009b", + "decapacitor": "0x4A0Da67E4AB45BC284dDBDb78D6C1aaa1337B8b2", + "switchboard": "0xf6Cba89a18c4eD3b3725297E87073099a397ED9f" + } + }, + "421614": { + "FAST": { + "capacitor": "0x6D56aD5B5B52Cc70d9f3EaEaf8Ce100ef378755E", + "decapacitor": "0x09CC27f028750B7c6976073ED332eC040DD16d76", + "switchboard": "0xf6Cba89a18c4eD3b3725297E87073099a397ED9f" + } + }, + "11155111": { + "FAST": { + "capacitor": "0x6dBE858FddC100f472EC8c9391d43E2d0DA2cD3c", + "decapacitor": "0x77DC291aF98397A453940e7ed71f37F6a43A7049", + "switchboard": "0xf6Cba89a18c4eD3b3725297E87073099a397ED9f" + } + } + } + }, "11155111": { "SignatureVerifier": "0x10d9DA6AE85eff6D582A91829f78bde2a3EC2dCC", "Hasher": "0x6ddF1d6B719323236f58B4c61D30E523fce1Fe06", @@ -2415,6 +2465,13 @@ "switchboard": "0xd84fabe06806270Fb2dDFC2255102206e3B36865" } }, + "444444": { + "FAST": { + "capacitor": "0xe5d03904205e6457c77C5e57CF8BAc93E1f36Fc8", + "decapacitor": "0xC8150b4b8310B9e876f2f19438f5Bd09Fcbf5Fa0", + "switchboard": "0x501fCBa3e6F92b2D1d89038FeD56EdacaaF5f7c2" + } + }, "11155112": { "FAST": { "capacitor": "0x5e3d9014a1B467Be149Cd6aA6fBDE1eda718c781", diff --git a/deployments/prod_verification.json b/deployments/prod_verification.json index cd83fcba..ab05aa17 100644 --- a/deployments/prod_verification.json +++ b/deployments/prod_verification.json @@ -2531,6 +2531,96 @@ ["0x752B38FA38F53dF7fa60e6113CFd9094b7e040Aa", 10] ] ], + "444444": [ + [ + "0x87614638D9A452ffF21Ac9581Dc4d3030bd7E5db", + "Counter", + "contracts/examples/Counter.sol", + ["0x015cdE684a923EBbE71Ca857208c301848C51D75"] + ], + [ + "0xA02121f62Ba11D3F16dD3f7DAc5bAcd7310858e9", + "SocketBatcher", + "contracts/socket/SocketBatcher.sol", + ["0x78Deb9225c3F28D12922913Fec978e4dC90E1aa4"] + ], + [ + "0x1ea6b8Aa100fB44c9de7baCB47c92Dc502E69DaC", + "OptimisticSwitchboard", + "contracts/switchboard/default-switchboards/OptimisticSwitchboard.sol", + [ + "0x78Deb9225c3F28D12922913Fec978e4dC90E1aa4", + "0x015cdE684a923EBbE71Ca857208c301848C51D75", + 444444, + 7200, + "0x845a6f4Be829e5D11906cc2eb2f8ccd39E8848a6" + ] + ], + [ + "0xf6Cba89a18c4eD3b3725297E87073099a397ED9f", + "FastSwitchboard", + "contracts/switchboard/default-switchboards/FastSwitchboard.sol", + [ + "0x78Deb9225c3F28D12922913Fec978e4dC90E1aa4", + "0x015cdE684a923EBbE71Ca857208c301848C51D75", + 444444, + 7200, + "0x845a6f4Be829e5D11906cc2eb2f8ccd39E8848a6" + ] + ], + [ + "0xC5Fc22Fd675015D7b3919c2ED7550dd67dD0D9ac", + "TransmitManager", + "contracts/TransmitManager.sol", + [ + "0x78Deb9225c3F28D12922913Fec978e4dC90E1aa4", + 444444, + "0x015cdE684a923EBbE71Ca857208c301848C51D75", + "0x845a6f4Be829e5D11906cc2eb2f8ccd39E8848a6" + ] + ], + [ + "0xf60E46310883A7c4FA7017958Fb7952517d7d2f6", + "ExecutionManager", + "contracts/ExecutionManager.sol", + [ + "0x78Deb9225c3F28D12922913Fec978e4dC90E1aa4", + 444444, + "0x015cdE684a923EBbE71Ca857208c301848C51D75", + "0x845a6f4Be829e5D11906cc2eb2f8ccd39E8848a6" + ] + ], + [ + "0x015cdE684a923EBbE71Ca857208c301848C51D75", + "Socket", + "contracts/socket/Socket.sol", + [ + 444444, + "0xfC96858aFda5F0F846679E00D0Dd6dda35C4026e", + "0xE3F27BA71ECE47C68c89CFaa69105881FD81Ffc0", + "0x78Deb9225c3F28D12922913Fec978e4dC90E1aa4", + "IMLI" + ] + ], + [ + "0xE3F27BA71ECE47C68c89CFaa69105881FD81Ffc0", + "CapacitorFactory", + "contracts/CapacitorFactory.sol", + ["0x78Deb9225c3F28D12922913Fec978e4dC90E1aa4", 10] + ], + [ + "0xfC96858aFda5F0F846679E00D0Dd6dda35C4026e", + "Hasher", + "contracts/utils/Hasher.sol", + ["0x78Deb9225c3F28D12922913Fec978e4dC90E1aa4"] + ], + [ + "0x845a6f4Be829e5D11906cc2eb2f8ccd39E8848a6", + "SignatureVerifier", + "contracts/utils/SignatureVerifier.sol", + ["0x78Deb9225c3F28D12922913Fec978e4dC90E1aa4"] + ] + ], "11155111": [ [ "0x1d43076909Ca139BFaC4EbB7194518bE3638fc76", diff --git a/hardhat.config.ts b/hardhat.config.ts index cc880ea6..37d1ff33 100644 --- a/hardhat.config.ts +++ b/hardhat.config.ts @@ -91,6 +91,9 @@ if (isProduction) { [HardhatChainName.MANTLE]: getChainConfig(ChainId.MANTLE), [HardhatChainName.REYA_CRONOS]: getChainConfig(ChainId.REYA_CRONOS), [HardhatChainName.REYA]: getChainConfig(ChainId.REYA), + [HardhatChainName.SYNDR_SEPOLIA_L3]: getChainConfig( + ChainId.SYNDR_SEPOLIA_L3 + ), }; } @@ -130,6 +133,7 @@ const config: HardhatUserConfig = { parallelTestnet: process.env.PARALLEL_API_KEY || "", mantle: process.env.MANTLE_API_KEY || "", reya: process.env.REYA_API_KEY || "", + syndrSepoliaL3: process.env.SYNDR_API_KEY || "", }, customChains: [ { diff --git a/package.json b/package.json index a303a45e..5c56dbd0 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@socket.tech/dl-core", "license": "UNLICENSED", - "version": "2.4.26", + "version": "2.4.27", "description": "Smart contracts for socket data layer.", "main": "./dist/src/index.js", "types": "./dist/src/index.d.ts", diff --git a/scripts/constants/networks.ts b/scripts/constants/networks.ts index 0e0ca12b..5e445ad0 100644 --- a/scripts/constants/networks.ts +++ b/scripts/constants/networks.ts @@ -174,6 +174,11 @@ export function getJsonRpcUrl(chain: HardhatChainName | ChainId): string { jsonRpcUrl = process.env.REYA_RPC as string; break; + case HardhatChainName.SYNDR_SEPOLIA_L3: + case ChainId.SYNDR_SEPOLIA_L3: + jsonRpcUrl = process.env.SYNDR_SEPOLIA_L3_RPC as string; + break; + case HardhatChainName.HARDHAT: case ChainId.HARDHAT: jsonRpcUrl = "http://127.0.0.1:8545/"; diff --git a/scripts/deploy/config.ts b/scripts/deploy/config.ts index 1eb3be7a..836de0f4 100644 --- a/scripts/deploy/config.ts +++ b/scripts/deploy/config.ts @@ -54,6 +54,8 @@ export const chains: Array = [ // ChainSlug.BASE, // ChainSlug.MODE, // ChainSlug.ANCIENT8_TESTNET, + // ChainSlug.ANCIENT8_TESTNET2, + ChainSlug.SYNDR_SEPOLIA_L3, // ChainSlug.HOOK_TESTNET, // ChainSlug.HOOK, // ChainSlug.PARALLEL, @@ -123,9 +125,9 @@ export const overrides = ( }; } else if (chain == ChainSlug.ARBITRUM_SEPOLIA) { return { - // type, - // gasLimit, - // gasPrice, + type, + gasLimit: 5_000_000, + gasPrice, }; } else if (chain == ChainSlug.OPTIMISM) { return { @@ -223,6 +225,12 @@ export const overrides = ( // gasLimit, gasPrice: 100_000_000, }; + } else if (chain == ChainSlug.SYNDR_SEPOLIA_L3) { + return { + type: 1, + gasLimit: 5_000_000_000, + gasPrice: 1_000_000, + }; } else if (chain == ChainSlug.VICTION_TESTNET) { return { // type: 1, diff --git a/scripts/rpcConfig/rpcConfig.ts b/scripts/rpcConfig/rpcConfig.ts index 8b10b1aa..e928aaf9 100644 --- a/scripts/rpcConfig/rpcConfig.ts +++ b/scripts/rpcConfig/rpcConfig.ts @@ -88,6 +88,7 @@ const rpcs = { [ChainSlug.ANCIENT8_TESTNET2]: checkEnvVar("ANCIENT8_TESTNET2_RPC"), [ChainSlug.HOOK_TESTNET]: checkEnvVar("HOOK_TESTNET_RPC"), [ChainSlug.REYA_CRONOS]: checkEnvVar("REYA_CRONOS_RPC"), + [ChainSlug.SYNDR_SEPOLIA_L3]: checkEnvVar("SYNDR_SEPOLIA_L3_RPC"), [ChainSlug.CDK_TESTNET]: checkEnvVar("CDK_TESTNET_RPC"), }; @@ -373,6 +374,15 @@ const prodConfig: S3Config = { confirmations: 0, siblings: getSiblings(DeploymentMode.PROD, ChainSlug.REYA), }, + [ChainSlug.SYNDR_SEPOLIA_L3]: { + rpc: rpcs[ChainSlug.SYNDR_SEPOLIA_L3], + blockNumber: getBlockNumber( + DeploymentMode.PROD, + ChainSlug.SYNDR_SEPOLIA_L3 + ), + confirmations: 1, + siblings: getSiblings(DeploymentMode.PROD, ChainSlug.SYNDR_SEPOLIA_L3), + }, }, batcherSupportedChainSlugs: [ ChainSlug.AEVO, @@ -407,6 +417,7 @@ const prodConfig: S3Config = { ChainSlug.ANCIENT8_TESTNET2, ChainSlug.HOOK_TESTNET, ChainSlug.REYA_CRONOS, + ChainSlug.SYNDR_SEPOLIA_L3, ], watcherSupportedChainSlugs: [ ChainSlug.AEVO, @@ -441,6 +452,7 @@ const prodConfig: S3Config = { ChainSlug.ANCIENT8_TESTNET2, ChainSlug.HOOK_TESTNET, ChainSlug.REYA_CRONOS, + ChainSlug.SYNDR_SEPOLIA_L3, ], nativeSupportedChainSlugs: [ ChainSlug.ARBITRUM, diff --git a/src/enums/chainId.ts b/src/enums/chainId.ts index 1daeb294..66a7b227 100644 --- a/src/enums/chainId.ts +++ b/src/enums/chainId.ts @@ -34,4 +34,5 @@ export enum ChainId { MANTLE = 5000, REYA_CRONOS = 89346161, REYA = 1729, + SYNDR_SEPOLIA_L3 = 444444, } diff --git a/src/enums/chainSlug.ts b/src/enums/chainSlug.ts index 1edcefea..2e592df6 100644 --- a/src/enums/chainSlug.ts +++ b/src/enums/chainSlug.ts @@ -36,4 +36,5 @@ export enum ChainSlug { MANTLE = ChainId.MANTLE, REYA_CRONOS = ChainId.REYA_CRONOS, REYA = 1324967486, + SYNDR_SEPOLIA_L3 = ChainId.SYNDR_SEPOLIA_L3, } diff --git a/src/enums/chainSlugToId.ts b/src/enums/chainSlugToId.ts index ec90e06e..a7529e7f 100644 --- a/src/enums/chainSlugToId.ts +++ b/src/enums/chainSlugToId.ts @@ -37,4 +37,5 @@ export const ChainSlugToId = { [ChainSlug.MANTLE]: ChainId.MANTLE, [ChainSlug.REYA_CRONOS]: ChainId.REYA_CRONOS, [ChainSlug.REYA]: ChainId.REYA, + [ChainSlug.SYNDR_SEPOLIA_L3]: ChainId.SYNDR_SEPOLIA_L3, }; diff --git a/src/enums/chainSlugToKey.ts b/src/enums/chainSlugToKey.ts index b1d03767..c27d5daa 100644 --- a/src/enums/chainSlugToKey.ts +++ b/src/enums/chainSlugToKey.ts @@ -37,4 +37,5 @@ export const ChainSlugToKey = { [ChainSlug.MANTLE]: HardhatChainName.MANTLE, [ChainSlug.REYA_CRONOS]: HardhatChainName.REYA_CRONOS, [ChainSlug.REYA]: HardhatChainName.REYA, + [ChainSlug.SYNDR_SEPOLIA_L3]: HardhatChainName.SYNDR_SEPOLIA_L3, }; diff --git a/src/enums/hardhatChainName.ts b/src/enums/hardhatChainName.ts index caec7039..dcb2767e 100644 --- a/src/enums/hardhatChainName.ts +++ b/src/enums/hardhatChainName.ts @@ -35,4 +35,5 @@ export enum HardhatChainName { MANTLE = "mantle", REYA_CRONOS = "reya_cronos", REYA = "reya", + SYNDR_SEPOLIA_L3 = "syndr_sepolia_l3", } diff --git a/src/enums/hardhatChainNameToSlug.ts b/src/enums/hardhatChainNameToSlug.ts index 46bc8f44..b74db609 100644 --- a/src/enums/hardhatChainNameToSlug.ts +++ b/src/enums/hardhatChainNameToSlug.ts @@ -37,4 +37,5 @@ export const hardhatChainNameToSlug = { [HardhatChainName.MANTLE]: ChainSlug.MANTLE, [HardhatChainName.REYA_CRONOS]: ChainSlug.REYA_CRONOS, [HardhatChainName.REYA]: ChainSlug.REYA, + [HardhatChainName.SYNDR_SEPOLIA_L3]: ChainSlug.SYNDR_SEPOLIA_L3, }; diff --git a/src/enums/testnetIds.ts b/src/enums/testnetIds.ts index caf56211..c4a4a690 100644 --- a/src/enums/testnetIds.ts +++ b/src/enums/testnetIds.ts @@ -20,4 +20,5 @@ export const TestnetIds: ChainSlug[] = [ ChainSlug.ANCIENT8_TESTNET2, ChainSlug.HOOK_TESTNET, ChainSlug.REYA_CRONOS, + ChainSlug.SYNDR_SEPOLIA_L3, ];