diff --git a/core/forkid/forkid_test.go b/core/forkid/forkid_test.go index f29b10998..c2c97de82 100644 --- a/core/forkid/forkid_test.go +++ b/core/forkid/forkid_test.go @@ -135,6 +135,16 @@ func TestCreation(t *testing.T) { {6000000, ID{Hash: checksumToBytes(0xB8C6299D), Next: 0}}, // Future London block }, }, + // Sepolia test cases + { + params.SepoliaChainConfig, + params.SepoliaGenesisHash, + []testcase{ + {0, ID{Hash: checksumToBytes(0xfe3366e7), Next: 1735371}}, // Unsynced, last Frontier, Homestead, Tangerine, Spurious, Byzantium, Constantinople, Petersburg, Istanbul, Berlin and first London block + {1735370, ID{Hash: checksumToBytes(0xfe3366e7), Next: 1735371}}, // Last pre-MergeNetsplit block + {1735371, ID{Hash: checksumToBytes(0xb96cbd13), Next: 0}}, // First MergeNetsplit block + }, + }, } for i, tt := range tests { for j, ttt := range tt.cases { diff --git a/params/chainspecs/sepolia.json b/params/chainspecs/sepolia.json index ec4f75383..628a7440d 100644 --- a/params/chainspecs/sepolia.json +++ b/params/chainspecs/sepolia.json @@ -15,6 +15,6 @@ "berlinBlock": 0, "londonBlock": 0, "terminalTotalDifficulty": 17000000000000000, - "terminalBlockHash": "0x0000000000000000000000000000000000000000000000000000000000000000", + "mergeNetsplitBlock": 1735371, "ethash": {} } diff --git a/params/config.go b/params/config.go index faf6fa6fa..200af283c 100644 --- a/params/config.go +++ b/params/config.go @@ -405,7 +405,7 @@ func (c *ChainConfig) String() string { ) } - return fmt.Sprintf("{ChainID: %v, Homestead: %v, DAO: %v, DAO Support: %v, Tangerine Whistle: %v, Spurious Dragon: %v, Byzantium: %v, Constantinople: %v, Petersburg: %v, Istanbul: %v, Muir Glacier: %v, Berlin: %v, London: %v, Arrow Glacier: %v, Gray Glacier: %v, Terminal Total Difficulty: %v, Engine: %v}", + return fmt.Sprintf("{ChainID: %v, Homestead: %v, DAO: %v, DAO Support: %v, Tangerine Whistle: %v, Spurious Dragon: %v, Byzantium: %v, Constantinople: %v, Petersburg: %v, Istanbul: %v, Muir Glacier: %v, Berlin: %v, London: %v, Arrow Glacier: %v, Gray Glacier: %v, Terminal Total Difficulty: %v, Merge Netsplit: %v, Engine: %v}", c.ChainID, c.HomesteadBlock, c.DAOForkBlock, @@ -422,6 +422,7 @@ func (c *ChainConfig) String() string { c.ArrowGlacierBlock, c.GrayGlacierBlock, c.TerminalTotalDifficulty, + c.MergeNetsplitBlock, engine, ) } @@ -615,6 +616,7 @@ func (c *ChainConfig) CheckConfigForkOrder() error { {name: "londonBlock", block: c.LondonBlock}, {name: "arrowGlacierBlock", block: c.ArrowGlacierBlock, optional: true}, {name: "grayGlacierBlock", block: c.GrayGlacierBlock, optional: true}, + {name: "mergeNetsplitBlock", block: c.MergeNetsplitBlock, optional: true}, } { if lastFork.name != "" { // Next one must be higher number