diff --git a/chainList.json b/chainList.json index dd5a91f6a..de9e2779f 100644 --- a/chainList.json +++ b/chainList.json @@ -324,6 +324,23 @@ "chain": "sepolia" } }, + { + "name": "Boba Sepolia", + "identifier": "sepolia/boba", + "chainId": 28882, + "rpc": [ + "https://sepolia.boba.network" + ], + "explorers": [ + "https://testnet.bobascan.com" + ], + "superchainLevel": 0, + "dataAvailabilityType": "eth-da", + "parent": { + "type": "L2", + "chain": "sepolia" + } + }, { "name": "Cyber Testnet", "identifier": "sepolia/cyber", diff --git a/chainList.toml b/chainList.toml index 3e3e27412..402224ff9 100644 --- a/chainList.toml +++ b/chainList.toml @@ -228,6 +228,18 @@ type = "L2" chain = "sepolia" +[[chains]] + name = "Boba Sepolia" + identifier = "sepolia/boba" + chain_id = 28882 + rpc = ["https://sepolia.boba.network"] + explorers = ["https://testnet.bobascan.com"] + superchain_level = 0 + data_availability_type = "eth-da" + [chains.parent] + type = "L2" + chain = "sepolia" + [[chains]] name = "Cyber Testnet" identifier = "sepolia/cyber" diff --git a/superchain/configs/configs.json b/superchain/configs/configs.json index 9a2e8d2cb..04367f455 100644 --- a/superchain/configs/configs.json +++ b/superchain/configs/configs.json @@ -1838,6 +1838,77 @@ "UnsafeBlockSigner": "0xbB4f4B3a46361653BE9DB255D8ff2D004F0FB248" } }, + { + "Name": "Boba Sepolia", + "l2_chain_id": 28882, + "PublicRPC": "https://sepolia.boba.network", + "SequencerRPC": "https://sepolia.boba.network", + "Explorer": "https://testnet.bobascan.com", + "SuperchainLevel": 0, + "StandardChainCandidate": false, + "SuperchainTime": null, + "batch_inbox_address": "0xfFf0000000000000000000000000000000028882", + "Superchain": "sepolia", + "Chain": "boba", + "canyon_time": 1705600788, + "delta_time": 1709078400, + "ecotone_time": 1709078400, + "fjord_time": 1722297600, + "granite_time": 1726470000, + "block_time": 2, + "seq_window_size": 3600, + "max_sequencer_drift": 600, + "DataAvailabilityType": "eth-da", + "optimism": { + "eip1559Elasticity": 6, + "eip1559Denominator": 50, + "eip1559DenominatorCanyon": 250 + }, + "GasPayingToken": null, + "genesis": { + "l1": { + "hash": "0x632d8caedbfd573e09c1b49134bd5147147e0904e0f04eba15c662be0258f517", + "number": 5109513 + }, + "l2": { + "hash": "0x097654c4c932c97808933b42179388f7bbcefaed3bd93fdf69157e19f1deea0e", + "number": 511 + }, + "l2_time": 1705600788, + "system_config": { + "batcherAddr": "0xf598b6388eC06945021699F0bbb23dfCFc5edbE8", + "overhead": "0x0000000000000000000000000000000000000000000000000000000000000834", + "scalar": "0x00000000000000000000000000000000000000000000000000000000000f4240", + "gasLimit": 30000000 + } + }, + "Addresses": { + "AddressManager": "0xC62C429390B7bCE9960fa647d5556CA7238168AB", + "AnchorStateRegistryProxy": "0x0B13DAf233542e01cA7fb527D725578E4875F652", + "BatchSubmitter": "0xf598b6388eC06945021699F0bbb23dfCFc5edbE8", + "Challenger": "0x17070B4AF21625106E7971983Aa524f59EA40c57", + "DelayedWETHProxy": "0x386023521b8379CCbB6Edbc6C01A9EB32e693f62", + "DisputeGameFactoryProxy": "0x29Bd67B23cAC0E6bbDe1373E3859Dd25510f3331", + "FaultDisputeGame": "0x5D20776Fb8D91181873F210bFb89eAA694217c0b", + "Guardian": "0x66930dd34EA64bD4B9F32464e363511b49966C5D", + "L1CrossDomainMessengerProxy": "0x9253E76E2fA3f72aF18e08914b3528F725779495", + "L1ERC721BridgeProxy": "0x13B397A08322973B45e063F29746Fb278f189916", + "L1StandardBridgeProxy": "0x244d7b81EE3949788Da5F1178D911e83bA24E157", + "L2OutputOracleProxy": "0xdBdb238185f9BB40f742aE249f9a083381EC39eC", + "MIPS": "0xC331b49Ac58dcaD21063177C735FD5215309BAE1", + "OptimismMintableERC20FactoryProxy": "0xE6ebece6936528804BB4c43AdcA10c2623919852", + "OptimismPortalProxy": "0xB079E6FA9B3eb072fEbf7F746044834eab308dB6", + "PermissionedDisputeGame": "0x49A14B793Dd55099111E3Fe9c9DF34c927d2193D", + "PreimageOracle": "0xF68050E774c2C26C1f1587522e6Df1f684eb1A58", + "Proposer": "0xC5125722937c0Fea053c602261238bF9f3B2450F", + "ProxyAdmin": "0x66930dd34EA64bD4B9F32464e363511b49966C5D", + "ProxyAdminOwner": "0x17070B4AF21625106E7971983Aa524f59EA40c57", + "SuperchainConfig": "0x029A23c6E9D3026f984cd1Fd9C47906e4F5327F3", + "SystemConfigOwner": "0x17070B4AF21625106E7971983Aa524f59EA40c57", + "SystemConfigProxy": "0xfDC9bCE032cEF55a71b4fde9B9a2198ad1551965", + "UnsafeBlockSigner": "0x274a47436C7C896827633805d924d41BBa1D19e9" + } + }, { "Name": "Base Sepolia Testnet", "l2_chain_id": 84532, diff --git a/superchain/configs/sepolia/boba.toml b/superchain/configs/sepolia/boba.toml new file mode 100644 index 000000000..9ec060200 --- /dev/null +++ b/superchain/configs/sepolia/boba.toml @@ -0,0 +1,61 @@ +name = "Boba Sepolia" +chain_id = 28882 +public_rpc = "https://sepolia.boba.network" +sequencer_rpc = "https://sepolia.boba.network" +explorer = "https://testnet.bobascan.com" +superchain_level = 0 +batch_inbox_addr = "0xfFf0000000000000000000000000000000028882" +canyon_time = 1705600788 # Thu 18 Jan 2024 17:59:48 UTC +delta_time = 1709078400 # Wed 28 Feb 2024 00:00:00 UTC +ecotone_time = 1709078400 # Wed 28 Feb 2024 00:00:00 UTC +fjord_time = 1722297600 # Tue 30 Jul 2024 00:00:00 UTC +granite_time = 1726470000 # Mon 16 Sep 2024 07:00:00 UTC +block_time = 2 +seq_window_size = 3600 +max_sequencer_drift = 600 +data_availability_type = "eth-da" + +[optimism] + eip1559_elasticity = 6 + eip1559_denominator = 50 + eip1559_denominator_canyon = 250 + +[genesis] + l2_time = 1705600788 + [genesis.l1] + hash = "0x632d8caedbfd573e09c1b49134bd5147147e0904e0f04eba15c662be0258f517" + number = 5109513 + [genesis.l2] + hash = "0x097654c4c932c97808933b42179388f7bbcefaed3bd93fdf69157e19f1deea0e" + number = 511 + [genesis.system_config] + batcherAddress = "0xf598b6388eC06945021699F0bbb23dfCFc5edbE8" + overhead = "0x0000000000000000000000000000000000000000000000000000000000000834" + scalar = "0x00000000000000000000000000000000000000000000000000000000000f4240" + gasLimit = 30000000 + +[addresses] + SystemConfigOwner = "0x17070B4AF21625106E7971983Aa524f59EA40c57" + ProxyAdminOwner = "0x17070B4AF21625106E7971983Aa524f59EA40c57" + Guardian = "0x66930dd34EA64bD4B9F32464e363511b49966C5D" + Challenger = "0x17070B4AF21625106E7971983Aa524f59EA40c57" + Proposer = "0xC5125722937c0Fea053c602261238bF9f3B2450F" + UnsafeBlockSigner = "0x274a47436C7C896827633805d924d41BBa1D19e9" + BatchSubmitter = "0xf598b6388eC06945021699F0bbb23dfCFc5edbE8" + AddressManager = "0xC62C429390B7bCE9960fa647d5556CA7238168AB" + L1CrossDomainMessengerProxy = "0x9253E76E2fA3f72aF18e08914b3528F725779495" + L1ERC721BridgeProxy = "0x13B397A08322973B45e063F29746Fb278f189916" + L1StandardBridgeProxy = "0x244d7b81EE3949788Da5F1178D911e83bA24E157" + L2OutputOracleProxy = "0xdBdb238185f9BB40f742aE249f9a083381EC39eC" + OptimismMintableERC20FactoryProxy = "0xE6ebece6936528804BB4c43AdcA10c2623919852" + OptimismPortalProxy = "0xB079E6FA9B3eb072fEbf7F746044834eab308dB6" + SystemConfigProxy = "0xfDC9bCE032cEF55a71b4fde9B9a2198ad1551965" + ProxyAdmin = "0x66930dd34EA64bD4B9F32464e363511b49966C5D" + SuperchainConfig = "0x029A23c6E9D3026f984cd1Fd9C47906e4F5327F3" + AnchorStateRegistryProxy = "0x0B13DAf233542e01cA7fb527D725578E4875F652" + DelayedWETHProxy = "0x386023521b8379CCbB6Edbc6C01A9EB32e693f62" + DisputeGameFactoryProxy = "0x29Bd67B23cAC0E6bbDe1373E3859Dd25510f3331" + FaultDisputeGame = "0x5D20776Fb8D91181873F210bFb89eAA694217c0b" + MIPS = "0xC331b49Ac58dcaD21063177C735FD5215309BAE1" + PermissionedDisputeGame = "0x49A14B793Dd55099111E3Fe9c9DF34c927d2193D" + PreimageOracle = "0xF68050E774c2C26C1f1587522e6Df1f684eb1A58" diff --git a/superchain/extra/addresses/addresses.json b/superchain/extra/addresses/addresses.json index 39824c8c6..39ed12c79 100644 --- a/superchain/extra/addresses/addresses.json +++ b/superchain/extra/addresses/addresses.json @@ -304,6 +304,32 @@ "SystemConfigProxy": "0x504D56cf68f791B45E3A2e895B0e1562f3431328", "UnsafeBlockSigner": "0x05a220507e8F4c73a446DbAfC5607016A7D5Eab0" }, + "28882": { + "AddressManager": "0xC62C429390B7bCE9960fa647d5556CA7238168AB", + "AnchorStateRegistryProxy": "0x0B13DAf233542e01cA7fb527D725578E4875F652", + "BatchSubmitter": "0xf598b6388eC06945021699F0bbb23dfCFc5edbE8", + "Challenger": "0x17070B4AF21625106E7971983Aa524f59EA40c57", + "DelayedWETHProxy": "0x386023521b8379CCbB6Edbc6C01A9EB32e693f62", + "DisputeGameFactoryProxy": "0x29Bd67B23cAC0E6bbDe1373E3859Dd25510f3331", + "FaultDisputeGame": "0x5D20776Fb8D91181873F210bFb89eAA694217c0b", + "Guardian": "0x66930dd34EA64bD4B9F32464e363511b49966C5D", + "L1CrossDomainMessengerProxy": "0x9253E76E2fA3f72aF18e08914b3528F725779495", + "L1ERC721BridgeProxy": "0x13B397A08322973B45e063F29746Fb278f189916", + "L1StandardBridgeProxy": "0x244d7b81EE3949788Da5F1178D911e83bA24E157", + "L2OutputOracleProxy": "0xdBdb238185f9BB40f742aE249f9a083381EC39eC", + "MIPS": "0xC331b49Ac58dcaD21063177C735FD5215309BAE1", + "OptimismMintableERC20FactoryProxy": "0xE6ebece6936528804BB4c43AdcA10c2623919852", + "OptimismPortalProxy": "0xB079E6FA9B3eb072fEbf7F746044834eab308dB6", + "PermissionedDisputeGame": "0x49A14B793Dd55099111E3Fe9c9DF34c927d2193D", + "PreimageOracle": "0xF68050E774c2C26C1f1587522e6Df1f684eb1A58", + "Proposer": "0xC5125722937c0Fea053c602261238bF9f3B2450F", + "ProxyAdmin": "0x66930dd34EA64bD4B9F32464e363511b49966C5D", + "ProxyAdminOwner": "0x17070B4AF21625106E7971983Aa524f59EA40c57", + "SuperchainConfig": "0x029A23c6E9D3026f984cd1Fd9C47906e4F5327F3", + "SystemConfigOwner": "0x17070B4AF21625106E7971983Aa524f59EA40c57", + "SystemConfigProxy": "0xfDC9bCE032cEF55a71b4fde9B9a2198ad1551965", + "UnsafeBlockSigner": "0x274a47436C7C896827633805d924d41BBa1D19e9" + }, "291": { "AddressManager": "0x87630a802a3789463eC4b00f89b27b1e9f6b92e9", "BatchSubmitter": "0xf8dB8Aba597fF36cCD16fECfbb1B816B3236E9b8", diff --git a/superchain/extra/genesis/sepolia/boba.json.gz b/superchain/extra/genesis/sepolia/boba.json.gz new file mode 100755 index 000000000..27485e37f Binary files /dev/null and b/superchain/extra/genesis/sepolia/boba.json.gz differ diff --git a/validation/genesis/validation-inputs/28882/deploy-config.json b/validation/genesis/validation-inputs/28882/deploy-config.json new file mode 100755 index 000000000..d068224f0 --- /dev/null +++ b/validation/genesis/validation-inputs/28882/deploy-config.json @@ -0,0 +1,79 @@ +{ + "finalSystemOwner": "0xe62B0E3a9F715493301eBdEC8310C899eae5b30c", + "superchainConfigGuardian": "0xe62B0E3a9F715493301eBdEC8310C899eae5b30c", + + "l1StartingBlockTag": "0x632d8caedbfd573e09c1b49134bd5147147e0904e0f04eba15c662be0258f517", + + "l1ChainID": 11155111, + "l1BlockTime": 12, + "l2ChainID": 28882, + "l2BlockTime": 2, + + "maxSequencerDrift": 600, + "sequencerWindowSize": 3600, + "channelTimeout": 300, + + "p2pSequencerAddress": "0x274a47436C7C896827633805d924d41BBa1D19e9", + "batchInboxAddress": "0xfFf0000000000000000000000000000000028882", + "batchSenderAddress": "0xf598b6388eC06945021699F0bbb23dfCFc5edbE8", + + "l2OutputOracleSubmissionInterval": 120, + "l2OutputOracleStartingBlockNumber": 511, + "l2OutputOracleStartingTimestamp": 1705600788, + + "l2OutputOracleProposer": "0xc5125722937c0fea053c602261238bf9f3b2450f", + "l2OutputOracleChallenger": "0x17070B4AF21625106E7971983Aa524f59EA40c57", + + "finalizationPeriodSeconds": 12, + + "proxyAdminOwner": "0xe62B0E3a9F715493301eBdEC8310C899eae5b30c", + "baseFeeVaultRecipient": "0x7Aa0289De18100Ca74E00F545480776E820aC8a6", + "l1FeeVaultRecipient": "0x7Aa0289De18100Ca74E00F545480776E820aC8a6", + "sequencerFeeVaultRecipient": "0x7Aa0289De18100Ca74E00F545480776E820aC8a6", + + "baseFeeVaultMinimumWithdrawalAmount": "0x0", + "l1FeeVaultMinimumWithdrawalAmount": "0x0", + "sequencerFeeVaultMinimumWithdrawalAmount": "0x0", + "baseFeeVaultWithdrawalNetwork": 0, + "l1FeeVaultWithdrawalNetwork": 0, + "sequencerFeeVaultWithdrawalNetwork": 0, + + "gasPriceOracleOverhead": 2100, + "gasPriceOracleScalar": 1000000, + + "enableGovernance": false, + "governanceTokenSymbol": "OP", + "governanceTokenName": "Optimism", + "governanceTokenOwner": "0x0000000000000000000000000000000000000000", + + "l2GenesisBlockGasLimit": "0x1C9C380", + "l2GenesisBlockBaseFeePerGas": "0xF4240", + + "eip1559Denominator": 50, + "eip1559Elasticity": 6, + "eip1559DenominatorCanyon": 250, + + "l1BobaTokenAddress": "0x33faF65b3DfcC6A1FccaD4531D9ce518F0FDc896", + + "requiredProtocolVersion": "0x0000000000000000000000000000000000000000000000000000000000000000", + "recommendedProtocolVersion": "0x0000000000000000000000000000000000000000000000000000000000000000", + + "l2GenesisRegolithTimeOffset": "0x0", + "l2GenesisCanyonTimeOffset": "0x0", + + "systemConfigStartBlock": 5669592, + + "faultGameAbsolutePrestate": "0x0398e9d1f3bd09cb54d49276bd7f3337fd7e9bf9d75038ceaecdef1e9ad0abf8", + "faultGameMaxDepth": 73, + "faultGameClockExtension": 10800, + "faultGameMaxClockDuration": 302400, + "faultGameGenesisBlock": 8515831, + "faultGameGenesisOutputRoot": "0x87d724ad1668b86c08608a022fc09366329a7a3545e47fe678b3c69ead6a91f8", + "faultGameSplitDepth": 30, + "faultGameWithdrawalDelay": 604800, + "preimageOracleMinProposalSize": 126000, + "preimageOracleChallengePeriod": 86400, + "proofMaturityDelaySeconds": 604800, + "disputeGameFinalityDelaySeconds": 302400, + "respectedGameType": 0 +} diff --git a/validation/genesis/validation-inputs/28882/meta.toml b/validation/genesis/validation-inputs/28882/meta.toml new file mode 100755 index 000000000..bb5f94988 --- /dev/null +++ b/validation/genesis/validation-inputs/28882/meta.toml @@ -0,0 +1,4 @@ +genesis_creation_commit = "33f06d2d5e4034125df02264a5ffe84571bd0359" +node_version = "18.12.1" +monorepo_build_command = "pnpm" +genesis_creation_command = "opnode2"