diff --git a/apps/el-gen/genesis_besu.py b/apps/el-gen/genesis_besu.py index 350ed7f..9d35bce 100644 --- a/apps/el-gen/genesis_besu.py +++ b/apps/el-gen/genesis_besu.py @@ -210,6 +210,13 @@ def add_alloc_entry(addr, account): else: out['config']['cancunTime'] = 0 + if 'blobSchedule' not in out['config']: + out['config']['blobSchedule'] = {} + out['config']['blobSchedule']['cancun'] = { + "target": data['target_blobs_per_block_cancun'], + "max": data['max_blobs_per_block_cancun'] + } + if 'electra_fork_epoch' in data: if data['electra_fork_epoch'] != 0: out['config']['pragueTime'] = \ @@ -219,6 +226,11 @@ def add_alloc_entry(addr, account): else: out['config']['pragueTime'] = 0 + out['config']['blobSchedule']['prague'] = { + "target": data['target_blobs_per_block_prague'], + "max": data['max_blobs_per_block_prague'] + } + if 'fulu_fork_epoch' in data: if data['fulu_fork_epoch'] != 0: out['config']['osakaTime'] = \ @@ -227,6 +239,11 @@ def add_alloc_entry(addr, account): int(data['fulu_fork_epoch']) * ( 32 if data['preset_base']=='mainnet' else 8 ) * int(data['slot_duration_in_seconds']) else: out['config']['osakaTime'] = 0 - + + out['config']['blobSchedule']['osaka'] = { + "target": data['target_blobs_per_block_osaka'], + "max": data['max_blobs_per_block_osaka'] + } + out['config']['ethash'] = {} print(json.dumps(out, indent=' ')) diff --git a/apps/el-gen/genesis_chainspec.py b/apps/el-gen/genesis_chainspec.py index 2d2e9b4..44d9197 100644 --- a/apps/el-gen/genesis_chainspec.py +++ b/apps/el-gen/genesis_chainspec.py @@ -261,6 +261,15 @@ def add_alloc_entry(addr, account): out['params']['eip1153TransitionTimestamp'] = 0 out['params']['eip5656TransitionTimestamp'] = 0 out['params']['eip6780TransitionTimestamp'] = 0 + # If blobSchedule is not in the config, add it + if 'blobSchedule' not in out['config']: + out['params']['blobSchedule'] = {} + + # if blobSchedule is in the config, add the cancun blobSchedule + out['params']['blobSchedule']['cancun'] = { + "target": data['target_blobs_per_block_cancun'], + "max": data['max_blobs_per_block_cancun'] + } if 'electra_fork_epoch' in data: if data['electra_fork_epoch'] != 0: @@ -283,6 +292,12 @@ def add_alloc_entry(addr, account): out['params']['eip7251TransitionTimestamp']= 0 out['params']['eip7702TransitionTimestamp']= 0 + # add the prague blobSchedule + out['params']['blobSchedule']['prague'] = { + "target": data['target_blobs_per_block_prague'], + "max": data['max_blobs_per_block_prague'] + } + if 'fulu_fork_epoch' in data: if data['fulu_fork_epoch'] != 0: out['params']['eip7692TransitionTimestamp'] = hex( @@ -293,4 +308,9 @@ def add_alloc_entry(addr, account): else: out['params']['eip7692TransitionTimestamp'] = 0 + # add the osaka blobSchedule + out['params']['blobSchedule']['osaka'] = { + "target": data['target_blobs_per_block_osaka'], + "max": data['max_blobs_per_block_osaka'] + } print(json.dumps(out, indent=' ')) diff --git a/apps/el-gen/genesis_geth.py b/apps/el-gen/genesis_geth.py index 5b9028c..423e8b3 100644 --- a/apps/el-gen/genesis_geth.py +++ b/apps/el-gen/genesis_geth.py @@ -198,7 +198,7 @@ def add_alloc_entry(addr, account): int(data['capella_fork_epoch']) * ( 32 if data['preset_base']=='mainnet' else 8 ) * int(data['slot_duration_in_seconds']) else: out['config']['shanghaiTime'] = 0 - + if 'deneb_fork_epoch' in data and not isNamedTestnet: if data['deneb_fork_epoch'] != 0: @@ -208,6 +208,13 @@ def add_alloc_entry(addr, account): int(data['deneb_fork_epoch']) * ( 32 if data['preset_base']=='mainnet' else 8 ) * int(data['slot_duration_in_seconds']) else: out['config']['cancunTime'] = 0 + + if 'blobSchedule' not in out['config']: + out['config']['blobSchedule'] = {} + out['config']['blobSchedule']['cancun'] = { + "target": data['target_blobs_per_block_cancun'], + "max": data['max_blobs_per_block_cancun'] + } if 'electra_fork_epoch' in data: if data['electra_fork_epoch'] != 0: @@ -218,8 +225,13 @@ def add_alloc_entry(addr, account): else: out['config']['pragueTime'] = 0 + out['config']['blobSchedule']['prague'] = { + "target": data['target_blobs_per_block_prague'], + "max": data['max_blobs_per_block_prague'] + } + if 'fulu_fork_epoch' in data: - if data['fulu_fork_epoch'] != 0: + if data['fulu_fork_epoch'] != 0: out['config']['osakaTime'] = \ int(data['genesis_timestamp']) + \ int(data['genesis_delay']) + \ @@ -227,4 +239,9 @@ def add_alloc_entry(addr, account): else: out['config']['osakaTime'] = 0 + out['config']['blobSchedule']['osaka'] = { + "target": data['target_blobs_per_block_osaka'], + "max": data['max_blobs_per_block_osaka'] + } + print(json.dumps(out, indent=' ')) diff --git a/config-example/el/genesis-config.yaml b/config-example/el/genesis-config.yaml index 258e993..a6ed797 100644 --- a/config-example/el/genesis-config.yaml +++ b/config-example/el/genesis-config.yaml @@ -37,3 +37,9 @@ capella_fork_epoch: ${CAPELLA_FORK_EPOCH} deneb_fork_epoch: ${DENEB_FORK_EPOCH} electra_fork_epoch: ${ELECTRA_FORK_EPOCH} fulu_fork_epoch: ${FULU_FORK_EPOCH} +target_blobs_per_block_cancun: 3 +max_blobs_per_block_cancun: 6 +target_blobs_per_block_prague: ${TARGET_BLOBS_PER_BLOCK_ELECTRA} +max_blobs_per_block_prague: ${MAX_BLOBS_PER_BLOCK_ELECTRA} +target_blobs_per_block_osaka: ${TARGET_BLOBS_PER_BLOCK_FULU} +max_blobs_per_block_osaka: ${MAX_BLOBS_PER_BLOCK_FULU}