From 3e874a10f259e70677d03682cfc167e3efa343d6 Mon Sep 17 00:00:00 2001 From: Marius van der Wijden Date: Wed, 22 Apr 2026 12:01:38 +0200 Subject: [PATCH] tests: update blob schedule --- core/state/statedb.go | 1 + tests/block_test_util.go | 7 +++- tests/gen_btheader.go | 6 +++ tests/init.go | 79 +++++++++++++++++++++++++--------------- 4 files changed, 62 insertions(+), 31 deletions(-) diff --git a/core/state/statedb.go b/core/state/statedb.go index 5cdcc04eaa..d17f947a12 100644 --- a/core/state/statedb.go +++ b/core/state/statedb.go @@ -194,6 +194,7 @@ func NewWithReader(root common.Hash, db Database, reader Reader) (*StateDB, erro journal: newJournal(), accessList: newAccessList(), transientStorage: newTransientStorage(), + stateReadList: bal.NewStateAccessList(), } if db.Type().Is(TypeUBT) { sdb.accessEvents = NewAccessEvents() diff --git a/tests/block_test_util.go b/tests/block_test_util.go index bece8ae610..f0b64266a5 100644 --- a/tests/block_test_util.go +++ b/tests/block_test_util.go @@ -98,6 +98,7 @@ type btHeader struct { ExcessBlobGas *uint64 ParentBeaconBlockRoot *common.Hash SlotNumber *uint64 + BlockAccessListHash *common.Hash } type btHeaderMarshaling struct { @@ -225,8 +226,10 @@ func (t *BlockTest) genesis(config *params.ChainConfig) *core.Genesis { Coinbase: t.json.Genesis.Coinbase, Alloc: t.json.Pre, BaseFee: t.json.Genesis.BaseFeePerGas, - BlobGasUsed: t.json.Genesis.BlobGasUsed, - ExcessBlobGas: t.json.Genesis.ExcessBlobGas, + BlobGasUsed: t.json.Genesis.BlobGasUsed, + ExcessBlobGas: t.json.Genesis.ExcessBlobGas, + SlotNumber: t.json.Genesis.SlotNumber, + BlockAccessListHash: t.json.Genesis.BlockAccessListHash, } } diff --git a/tests/gen_btheader.go b/tests/gen_btheader.go index eb6d9a8271..b5fd9eec0c 100644 --- a/tests/gen_btheader.go +++ b/tests/gen_btheader.go @@ -39,6 +39,7 @@ func (b btHeader) MarshalJSON() ([]byte, error) { ExcessBlobGas *math.HexOrDecimal64 ParentBeaconBlockRoot *common.Hash SlotNumber *math.HexOrDecimal64 + BlockAccessListHash *common.Hash } var enc btHeader enc.Bloom = b.Bloom @@ -63,6 +64,7 @@ func (b btHeader) MarshalJSON() ([]byte, error) { enc.ExcessBlobGas = (*math.HexOrDecimal64)(b.ExcessBlobGas) enc.ParentBeaconBlockRoot = b.ParentBeaconBlockRoot enc.SlotNumber = (*math.HexOrDecimal64)(b.SlotNumber) + enc.BlockAccessListHash = b.BlockAccessListHash return json.Marshal(&enc) } @@ -91,6 +93,7 @@ func (b *btHeader) UnmarshalJSON(input []byte) error { ExcessBlobGas *math.HexOrDecimal64 ParentBeaconBlockRoot *common.Hash SlotNumber *math.HexOrDecimal64 + BlockAccessListHash *common.Hash } var dec btHeader if err := json.Unmarshal(input, &dec); err != nil { @@ -162,5 +165,8 @@ func (b *btHeader) UnmarshalJSON(input []byte) error { if dec.SlotNumber != nil { b.SlotNumber = (*uint64)(dec.SlotNumber) } + if dec.BlockAccessListHash != nil { + b.BlockAccessListHash = dec.BlockAccessListHash + } return nil } diff --git a/tests/init.go b/tests/init.go index 3db988a993..55dc2cf601 100644 --- a/tests/init.go +++ b/tests/init.go @@ -490,7 +490,7 @@ var Forks = map[string]*params.ChainConfig{ Cancun: params.DefaultCancunBlobConfig, Prague: params.DefaultPragueBlobConfig, Osaka: params.DefaultOsakaBlobConfig, - BPO1: bpo1BlobConfig, + BPO1: params.DefaultBPO1BlobConfig, }, }, "OsakaToBPO1AtTime15k": { @@ -519,7 +519,7 @@ var Forks = map[string]*params.ChainConfig{ Cancun: params.DefaultCancunBlobConfig, Prague: params.DefaultPragueBlobConfig, Osaka: params.DefaultOsakaBlobConfig, - BPO1: bpo1BlobConfig, + BPO1: params.DefaultBPO1BlobConfig, }, }, "BPO2": { @@ -549,8 +549,8 @@ var Forks = map[string]*params.ChainConfig{ Cancun: params.DefaultCancunBlobConfig, Prague: params.DefaultPragueBlobConfig, Osaka: params.DefaultOsakaBlobConfig, - BPO1: bpo1BlobConfig, - BPO2: bpo2BlobConfig, + BPO1: params.DefaultBPO1BlobConfig, + BPO2: params.DefaultBPO2BlobConfig, }, }, "BPO1ToBPO2AtTime15k": { @@ -580,8 +580,8 @@ var Forks = map[string]*params.ChainConfig{ Cancun: params.DefaultCancunBlobConfig, Prague: params.DefaultPragueBlobConfig, Osaka: params.DefaultOsakaBlobConfig, - BPO1: bpo1BlobConfig, - BPO2: bpo2BlobConfig, + BPO1: params.DefaultBPO1BlobConfig, + BPO2: params.DefaultBPO2BlobConfig, }, }, "BPO3": { @@ -612,8 +612,8 @@ var Forks = map[string]*params.ChainConfig{ Cancun: params.DefaultCancunBlobConfig, Prague: params.DefaultPragueBlobConfig, Osaka: params.DefaultOsakaBlobConfig, - BPO1: bpo1BlobConfig, - BPO2: bpo2BlobConfig, + BPO1: params.DefaultBPO1BlobConfig, + BPO2: params.DefaultBPO2BlobConfig, BPO3: params.DefaultBPO3BlobConfig, }, }, @@ -645,8 +645,8 @@ var Forks = map[string]*params.ChainConfig{ Cancun: params.DefaultCancunBlobConfig, Prague: params.DefaultPragueBlobConfig, Osaka: params.DefaultOsakaBlobConfig, - BPO1: bpo1BlobConfig, - BPO2: bpo2BlobConfig, + BPO1: params.DefaultBPO1BlobConfig, + BPO2: params.DefaultBPO2BlobConfig, BPO3: params.DefaultBPO3BlobConfig, }, }, @@ -679,8 +679,8 @@ var Forks = map[string]*params.ChainConfig{ Cancun: params.DefaultCancunBlobConfig, Prague: params.DefaultPragueBlobConfig, Osaka: params.DefaultOsakaBlobConfig, - BPO1: bpo1BlobConfig, - BPO2: bpo2BlobConfig, + BPO1: params.DefaultBPO1BlobConfig, + BPO2: params.DefaultBPO2BlobConfig, BPO3: params.DefaultBPO3BlobConfig, BPO4: params.DefaultBPO4BlobConfig, }, @@ -714,8 +714,8 @@ var Forks = map[string]*params.ChainConfig{ Cancun: params.DefaultCancunBlobConfig, Prague: params.DefaultPragueBlobConfig, Osaka: params.DefaultOsakaBlobConfig, - BPO1: bpo1BlobConfig, - BPO2: bpo2BlobConfig, + BPO1: params.DefaultBPO1BlobConfig, + BPO2: params.DefaultBPO2BlobConfig, BPO3: params.DefaultBPO3BlobConfig, BPO4: params.DefaultBPO4BlobConfig, }, @@ -750,11 +750,44 @@ var Forks = map[string]*params.ChainConfig{ Cancun: params.DefaultCancunBlobConfig, Prague: params.DefaultPragueBlobConfig, Osaka: params.DefaultOsakaBlobConfig, - BPO1: bpo1BlobConfig, - BPO2: bpo2BlobConfig, + BPO1: params.DefaultBPO1BlobConfig, + BPO2: params.DefaultBPO2BlobConfig, BPO3: params.DefaultBPO3BlobConfig, BPO4: params.DefaultBPO4BlobConfig, - Amsterdam: params.DefaultBPO4BlobConfig, // TODO update when defined + Amsterdam: params.DefaultBPO2BlobConfig, + }, + }, + "BPO2ToAmsterdamAtTime15k": { + ChainID: big.NewInt(1), + HomesteadBlock: big.NewInt(0), + EIP150Block: big.NewInt(0), + EIP155Block: big.NewInt(0), + EIP158Block: big.NewInt(0), + ByzantiumBlock: big.NewInt(0), + ConstantinopleBlock: big.NewInt(0), + PetersburgBlock: big.NewInt(0), + IstanbulBlock: big.NewInt(0), + MuirGlacierBlock: big.NewInt(0), + BerlinBlock: big.NewInt(0), + LondonBlock: big.NewInt(0), + ArrowGlacierBlock: big.NewInt(0), + MergeNetsplitBlock: big.NewInt(0), + TerminalTotalDifficulty: big.NewInt(0), + ShanghaiTime: u64(0), + CancunTime: u64(0), + PragueTime: u64(0), + OsakaTime: u64(0), + BPO1Time: u64(0), + BPO2Time: u64(0), + AmsterdamTime: u64(15_000), + DepositContractAddress: params.MainnetChainConfig.DepositContractAddress, + BlobScheduleConfig: ¶ms.BlobScheduleConfig{ + Cancun: params.DefaultCancunBlobConfig, + Prague: params.DefaultPragueBlobConfig, + Osaka: params.DefaultOsakaBlobConfig, + BPO1: params.DefaultBPO1BlobConfig, + BPO2: params.DefaultBPO2BlobConfig, + Amsterdam: params.DefaultBPO2BlobConfig, }, }, "Verkle": { @@ -778,18 +811,6 @@ var Forks = map[string]*params.ChainConfig{ }, } -var bpo1BlobConfig = ¶ms.BlobConfig{ - Target: 9, - Max: 14, - UpdateFraction: 8832827, -} - -var bpo2BlobConfig = ¶ms.BlobConfig{ - Target: 14, - Max: 21, - UpdateFraction: 13739630, -} - // AvailableForks returns the set of defined fork names func AvailableForks() []string { var availableForks []string