From 17d4fff55437d62910a3bc1ba62c40fb8829c1d1 Mon Sep 17 00:00:00 2001 From: Barnabas Busa Date: Tue, 13 May 2025 17:15:56 +0200 Subject: [PATCH 1/7] feat: add bpo --- .github/tests/minimal-fulu.yaml | 62 ++++++++++ .github/tests/peerdas-devnet-7.yaml | 4 +- README.md | 54 +++++++-- network_params.yaml | 23 +++- src/package_io/input_parser.star | 109 ++++++++++++++++-- src/package_io/sanity_check.star | 23 +++- .../el_cl_genesis_generator.star | 23 +++- .../el-cl/values.env.tmpl | 23 +++- 8 files changed, 288 insertions(+), 33 deletions(-) create mode 100644 .github/tests/minimal-fulu.yaml diff --git a/.github/tests/minimal-fulu.yaml b/.github/tests/minimal-fulu.yaml new file mode 100644 index 000000000..e38a70a4c --- /dev/null +++ b/.github/tests/minimal-fulu.yaml @@ -0,0 +1,62 @@ +participants: + - el_type: geth + el_image: ethpandaops/geth:peerdas-devnet-7 + el_extra_params: ["--miner.extradata=lighthouseFromLocal"] + cl_type: lighthouse + cl_image: ethpandaops/lighthouse:peerdas-devnet-7 + supernode: true + + - el_type: nethermind + el_image: ethpandaops/nethermind:feature-peerdas + el_extra_params: ["--Blocks.ExtraData=TekuFromLocal"] + cl_type: teku + cl_image: ethpandaops/teku:das + + - el_type: reth + el_image: ethpandaops/reth:rkrasiuk-peerdas + el_extra_params: ["--builder.extradata=lodestarFromLocal"] + cl_type: lodestar + cl_image: ethpandaops/lodestar:peerDAS + + - el_type: geth + el_image: ethpandaops/geth:peerdas-devnet-7 + el_extra_params: ["--miner.extradata=prysmFromLocal"] + cl_type: prysm + cl_image: ethpandaops/prysm-beacon-chain:peerDAS-minimal + vc_image: ethpandaops/prysm-validator:peerDAS-minimal + + - el_type: nethermind + el_image: ethpandaops/nethermind:feature-peerdas + el_extra_params: ["--Blocks.ExtraData=nimbusFromLocal"] + cl_type: nimbus + cl_image: ethpandaops/nimbus-eth2:gbv2-minimal + + - el_type: reth + el_image: ethpandaops/reth:rkrasiuk-peerdas + el_extra_params: ["--builder.extradata=grandineFromLocal"] + cl_type: grandine + cl_image: ethpandaops/grandine:hangleang-peerdas-devnet-7-minimal + cl_extra_env_vars: {"RUST_MIN_STACK": "5242880"} + +additional_services: + - dora + - tx_fuzz + - spamoor +# - assertoor + +network_params: + min_validator_withdrawability_delay: 1 + shard_committee_period: 1 + churn_limit_quotient: 16 + #fulu_fork_epoch: 10 + genesis_delay: 120 + preset: minimal + +assertoor_params: + tests: + - file: https://raw.githubusercontent.com/ethpandaops/assertoor/refs/heads/master/playbooks/pectra-dev/kurtosis/fillup-all-el-queues.yaml + config: + requestCount: 1000 # total number of requests + walletCount: 2 # number of wallets to send from for each request type + throughputPerWallet: 2 # number of transactions per slot, type and wallet + maxPendingPerWallet: 10 # max number of pending requests per type diff --git a/.github/tests/peerdas-devnet-7.yaml b/.github/tests/peerdas-devnet-7.yaml index 9d737b24c..4984a6b68 100644 --- a/.github/tests/peerdas-devnet-7.yaml +++ b/.github/tests/peerdas-devnet-7.yaml @@ -29,8 +29,8 @@ participants_matrix: network_params: fulu_fork_epoch: 1 - max_blobs_per_block_fulu: 9 - target_blobs_per_block_fulu: 6 + bpo_1_max_blobs: 9 + bpo_1_target_blobs: 6 additional_services: - dora - spamoor diff --git a/README.md b/README.md index 452ae5a31..0faeeebc1 100644 --- a/README.md +++ b/README.md @@ -598,13 +598,6 @@ network_params: # Base fee update fraction for Electra fork (default 5007716) base_fee_update_fraction_electra: 5007716 - # Maximum number of blobs per block for Fulu fork (default 12) - max_blobs_per_block_fulu: 12 - # Target number of blobs per block for Fulu fork (default 9) - target_blobs_per_block_fulu: 9 - # Base fee update fraction for Fulu fork (default 5007716) - base_fee_update_fraction_fulu: 5007716 - # EIP-7732 fork epoch # Defaults to 18446744073709551615 eip7732_fork_epoch: 18446744073709551615 @@ -671,6 +664,53 @@ network_params: # Do not confuse with genesis_gaslimit which sets the gas limit at the genesis file level gas_limit: 0 + # BPO + # BPO1 epoch (default 18446744073709551615) + bpo_1_epoch: 18446744073709551615 + # Maximum number of blobs per block for BPO1 (default 12) + bpo_1_max_blobs: 12 + # Target number of blobs per block for BPO1 (default 9) + bpo_1_target_blobs: 9 + # Base fee update fraction for BPO1 (default 5007716) + bpo_1_base_fee_update_fraction: 5007716 + + # BPO2 epoch (default 18446744073709551615) + bpo_2_epoch: 18446744073709551615 + # Maximum number of blobs per block for BPO2 (default 12) + bpo_2_max_blobs: 12 + # Target number of blobs per block for BPO2 (default 9) + bpo_2_target_blobs: 9 + # Base fee update fraction for BPO2 (default 5007716) + bpo_2_base_fee_update_fraction: 5007716 + + # BPO3 epoch (default 18446744073709551615) + bpo_3_epoch: 18446744073709551615 + # Maximum number of blobs per block for BPO3 (default 12) + bpo_3_max_blobs: 12 + # Target number of blobs per block for BPO3 (default 9) + bpo_3_target_blobs: 9 + # Base fee update fraction for BPO3 (default 5007716) + bpo_3_base_fee_update_fraction: 5007716 + + # BPO4 epoch (default 18446744073709551615) + bpo_4_epoch: 18446744073709551615 + # Maximum number of blobs per block for BPO4 (default 12) + bpo_4_max_blobs: 12 + # Target number of blobs per block for BPO4 (default 9) + bpo_4_target_blobs: 9 + # Base fee update fraction for BPO4 (default 5007716) + bpo_4_base_fee_update_fraction: 5007716 + + # BPO5 epoch (default 18446744073709551615) + bpo_5_epoch: 18446744073709551615 + # Maximum number of blobs per block for BPO5 (default 12) + bpo_5_max_blobs: 12 + # Target number of blobs per block for BPO5 (default 9) + bpo_5_target_blobs: 9 + # Base fee update fraction for BPO5 (default 5007716) + bpo_5_base_fee_update_fraction: 5007716 + + # Global parameters for the network # By default includes diff --git a/network_params.yaml b/network_params.yaml index ece46d599..bada1ae5f 100644 --- a/network_params.yaml +++ b/network_params.yaml @@ -96,12 +96,29 @@ network_params: max_blobs_per_block_electra: 9 target_blobs_per_block_electra: 6 base_fee_update_fraction_electra: 5007716 - max_blobs_per_block_fulu: 12 - target_blobs_per_block_fulu: 9 - base_fee_update_fraction_fulu: 5007716 additional_preloaded_contracts: {} devnet_repo: ethpandaops prefunded_accounts: {} + bpo_1_epoch: 18446744073709551615 + bpo_1_max_blobs: 12 + bpo_1_target_blobs: 9 + bpo_1_base_fee_update_fraction: 5007716 + bpo_2_epoch: 18446744073709551615 + bpo_2_max_blobs: 12 + bpo_2_target_blobs: 9 + bpo_2_base_fee_update_fraction: 5007716 + bpo_3_epoch: 18446744073709551615 + bpo_3_max_blobs: 12 + bpo_3_target_blobs: 9 + bpo_3_base_fee_update_fraction: 5007716 + bpo_4_epoch: 18446744073709551615 + bpo_4_max_blobs: 12 + bpo_4_target_blobs: 9 + bpo_4_base_fee_update_fraction: 5007716 + bpo_5_epoch: 18446744073709551615 + bpo_5_max_blobs: 12 + bpo_5_target_blobs: 9 + bpo_5_base_fee_update_fraction: 5007716 additional_services: [] dora_params: image: "" diff --git a/src/package_io/input_parser.star b/src/package_io/input_parser.star index 5a0eb09b6..ee1fa0784 100644 --- a/src/package_io/input_parser.star +++ b/src/package_io/input_parser.star @@ -359,14 +359,65 @@ def input_parser(plan, input_args): base_fee_update_fraction_electra=result["network_params"][ "base_fee_update_fraction_electra" ], - max_blobs_per_block_fulu=result["network_params"][ - "max_blobs_per_block_fulu" + bpo_1_epoch=result["network_params"][ + "bpo_1_epoch" ], - target_blobs_per_block_fulu=result["network_params"][ - "target_blobs_per_block_fulu" + bpo_1_max_blobs=result["network_params"][ + "bpo_1_max_blobs" ], - base_fee_update_fraction_fulu=result["network_params"][ - "base_fee_update_fraction_fulu" + bpo_1_target_blobs=result["network_params"][ + "bpo_1_target_blobs" + ], + bpo_1_base_fee_update_fraction=result["network_params"][ + "bpo_1_base_fee_update_fraction" + ], + bpo_2_epoch=result["network_params"][ + "bpo_2_epoch" + ], + bpo_2_max_blobs=result["network_params"][ + "bpo_2_max_blobs" + ], + bpo_2_target_blobs=result["network_params"][ + "bpo_2_target_blobs" + ], + bpo_2_base_fee_update_fraction=result["network_params"][ + "bpo_2_base_fee_update_fraction" + ], + bpo_3_epoch=result["network_params"][ + "bpo_3_epoch" + ], + bpo_3_max_blobs=result["network_params"][ + "bpo_3_max_blobs" + ], + bpo_3_target_blobs=result["network_params"][ + "bpo_3_target_blobs" + ], + bpo_3_base_fee_update_fraction=result["network_params"][ + "bpo_3_base_fee_update_fraction" + ], + bpo_4_epoch=result["network_params"][ + "bpo_4_epoch" + ], + bpo_4_max_blobs=result["network_params"][ + "bpo_4_max_blobs" + ], + bpo_4_target_blobs=result["network_params"][ + "bpo_4_target_blobs" + ], + bpo_4_base_fee_update_fraction=result["network_params"][ + "bpo_4_base_fee_update_fraction" + ], + bpo_5_epoch=result["network_params"][ + "bpo_5_epoch" + ], + bpo_5_max_blobs=result["network_params"][ + "bpo_5_max_blobs" + ], + bpo_5_target_blobs=result["network_params"][ + "bpo_5_target_blobs" + ], + bpo_5_base_fee_update_fraction=result["network_params"][ + "bpo_5_base_fee_update_fraction" ], preset=result["network_params"]["preset"], additional_preloaded_contracts=result["network_params"][ @@ -954,9 +1005,26 @@ def default_network_params(): "max_blobs_per_block_electra": 9, "target_blobs_per_block_electra": 6, "base_fee_update_fraction_electra": 5007716, - "max_blobs_per_block_fulu": 12, - "target_blobs_per_block_fulu": 9, - "base_fee_update_fraction_fulu": 5007716, + "bpo_1_epoch": 18446744073709551615, + "bpo_1_max_blobs": 12, + "bpo_1_target_blobs": 9, + "bpo_1_base_fee_update_fraction": 5007716, + "bpo_2_epoch": 18446744073709551615, + "bpo_2_max_blobs": 12, + "bpo_2_target_blobs": 9, + "bpo_2_base_fee_update_fraction": 5007716, + "bpo_3_epoch": 18446744073709551615, + "bpo_3_max_blobs": 12, + "bpo_3_target_blobs": 9, + "bpo_3_base_fee_update_fraction": 5007716, + "bpo_4_epoch": 18446744073709551615, + "bpo_4_max_blobs": 12, + "bpo_4_target_blobs": 9, + "bpo_4_base_fee_update_fraction": 5007716, + "bpo_5_epoch": 18446744073709551615, + "bpo_5_max_blobs": 12, + "bpo_5_target_blobs": 9, + "bpo_5_base_fee_update_fraction": 5007716, "preset": "mainnet", "additional_preloaded_contracts": {}, "devnet_repo": "ethpandaops", @@ -1001,9 +1069,6 @@ def default_minimal_network_params(): "max_blobs_per_block_electra": 9, "target_blobs_per_block_electra": 6, "base_fee_update_fraction_electra": 5007716, - "max_blobs_per_block_fulu": 12, - "target_blobs_per_block_fulu": 9, - "base_fee_update_fraction_fulu": 5007716, "preset": "minimal", "additional_preloaded_contracts": {}, "devnet_repo": "ethpandaops", @@ -1011,6 +1076,26 @@ def default_minimal_network_params(): "max_payload_size": 10485760, "perfect_peerdas_enabled": False, "gas_limit": 0, + "bpo_1_epoch": 18446744073709551615, + "bpo_1_max_blobs": 12, + "bpo_1_target_blobs": 9, + "bpo_1_base_fee_update_fraction": 5007716, + "bpo_2_epoch": 18446744073709551615, + "bpo_2_max_blobs": 12, + "bpo_2_target_blobs": 9, + "bpo_2_base_fee_update_fraction": 5007716, + "bpo_3_epoch": 18446744073709551615, + "bpo_3_max_blobs": 12, + "bpo_3_target_blobs": 9, + "bpo_3_base_fee_update_fraction": 5007716, + "bpo_4_epoch": 18446744073709551615, + "bpo_4_max_blobs": 12, + "bpo_4_target_blobs": 9, + "bpo_4_base_fee_update_fraction": 5007716, + "bpo_5_epoch": 18446744073709551615, + "bpo_5_max_blobs": 12, + "bpo_5_target_blobs": 9, + "bpo_5_base_fee_update_fraction": 5007716, } diff --git a/src/package_io/sanity_check.star b/src/package_io/sanity_check.star index 23eb0e887..852768bf6 100644 --- a/src/package_io/sanity_check.star +++ b/src/package_io/sanity_check.star @@ -170,10 +170,7 @@ SUBCATEGORY_PARAMS = { "custody_requirement", "max_blobs_per_block_electra", "target_blobs_per_block_electra", - "max_blobs_per_block_fulu", - "target_blobs_per_block_fulu", "base_fee_update_fraction_electra", - "base_fee_update_fraction_fulu", "preset", "additional_preloaded_contracts", "devnet_repo", @@ -181,6 +178,26 @@ SUBCATEGORY_PARAMS = { "max_payload_size", "perfect_peerdas_enabled", "gas_limit", + "bpo_1_epoch", + "bpo_1_max_blobs", + "bpo_1_target_blobs", + "bpo_1_base_fee_update_fraction", + "bpo_2_epoch", + "bpo_2_max_blobs", + "bpo_2_target_blobs", + "bpo_2_base_fee_update_fraction", + "bpo_3_epoch", + "bpo_3_max_blobs", + "bpo_3_target_blobs", + "bpo_3_base_fee_update_fraction", + "bpo_4_epoch", + "bpo_4_max_blobs", + "bpo_4_target_blobs", + "bpo_4_base_fee_update_fraction", + "bpo_5_epoch", + "bpo_5_max_blobs", + "bpo_5_target_blobs", + "bpo_5_base_fee_update_fraction", ], "blockscout_params": [ "image", diff --git a/src/prelaunch_data_generator/el_cl_genesis/el_cl_genesis_generator.star b/src/prelaunch_data_generator/el_cl_genesis/el_cl_genesis_generator.star index 7d350c8c2..fe58d9ef5 100644 --- a/src/prelaunch_data_generator/el_cl_genesis/el_cl_genesis_generator.star +++ b/src/prelaunch_data_generator/el_cl_genesis/el_cl_genesis_generator.star @@ -156,15 +156,32 @@ def new_env_file_for_el_cl_genesis_data( "MaxBlobsPerBlockElectra": network_params.max_blobs_per_block_electra, "TargetBlobsPerBlockElectra": network_params.target_blobs_per_block_electra, "BaseFeeUpdateFractionElectra": network_params.base_fee_update_fraction_electra, - "MaxBlobsPerBlockFulu": network_params.max_blobs_per_block_fulu, - "TargetBlobsPerBlockFulu": network_params.target_blobs_per_block_fulu, - "BaseFeeUpdateFractionFulu": network_params.base_fee_update_fraction_fulu, "Preset": network_params.preset, "AdditionalPreloadedContractsFile": GENESIS_VALUES_PATH + "/" + GENESIS_CONTRACTS_FILENAME, "PrefundedAccounts": json.encode(network_params.prefunded_accounts), "MaxPayloadSize": network_params.max_payload_size, + "Bpo1Epoch": "{0}".format(network_params.bpo_1_epoch), + "Bpo1MaxBlobs": network_params.bpo_1_max_blobs, + "Bpo1TargetBlobs": network_params.bpo_1_target_blobs, + "Bpo1BaseFeeUpdateFraction": network_params.bpo_1_base_fee_update_fraction, + "Bpo2Epoch": "{0}".format(network_params.bpo_2_epoch), + "Bpo2MaxBlobs": network_params.bpo_2_max_blobs, + "Bpo2TargetBlobs": network_params.bpo_2_target_blobs, + "Bpo2BaseFeeUpdateFraction": network_params.bpo_2_base_fee_update_fraction, + "Bpo3Epoch": "{0}".format(network_params.bpo_3_epoch), + "Bpo3MaxBlobs": network_params.bpo_3_max_blobs, + "Bpo3TargetBlobs": network_params.bpo_3_target_blobs, + "Bpo3BaseFeeUpdateFraction": network_params.bpo_3_base_fee_update_fraction, + "Bpo4Epoch": "{0}".format(network_params.bpo_4_epoch), + "Bpo4MaxBlobs": network_params.bpo_4_max_blobs, + "Bpo4TargetBlobs": network_params.bpo_4_target_blobs, + "Bpo4BaseFeeUpdateFraction": network_params.bpo_4_base_fee_update_fraction, + "Bpo5Epoch": "{0}".format(network_params.bpo_5_epoch), + "Bpo5MaxBlobs": network_params.bpo_5_max_blobs, + "Bpo5TargetBlobs": network_params.bpo_5_target_blobs, + "Bpo5BaseFeeUpdateFraction": network_params.bpo_5_base_fee_update_fraction, } diff --git a/static_files/genesis-generation-config/el-cl/values.env.tmpl b/static_files/genesis-generation-config/el-cl/values.env.tmpl index 0d3acbeb3..04670ff0a 100644 --- a/static_files/genesis-generation-config/el-cl/values.env.tmpl +++ b/static_files/genesis-generation-config/el-cl/values.env.tmpl @@ -41,9 +41,26 @@ export CUSTODY_REQUIREMENT={{ .CustodyRequirement }} export MAX_BLOBS_PER_BLOCK_ELECTRA={{ .MaxBlobsPerBlockElectra }} export TARGET_BLOBS_PER_BLOCK_ELECTRA={{ .TargetBlobsPerBlockElectra }} export BASEFEE_UPDATE_FRACTION_ELECTRA={{ .BaseFeeUpdateFractionElectra }} -export MAX_BLOBS_PER_BLOCK_FULU={{ .MaxBlobsPerBlockFulu }} -export TARGET_BLOBS_PER_BLOCK_FULU={{ .TargetBlobsPerBlockFulu }} -export BASEFEE_UPDATE_FRACTION_FULU={{ .BaseFeeUpdateFractionFulu }} export ADDITIONAL_PRELOADED_CONTRACTS={{ .AdditionalPreloadedContractsFile }} export EL_PREMINE_ADDRS={{ .PrefundedAccounts }} export MAX_PAYLOAD_SIZE={{ .MaxPayloadSize }} +export BPO_1_EPOCH="{{ .Bpo1Epoch }}" +export BPO_1_MAX_BLOBS={{ .Bpo1MaxBlobs }} +export BPO_1_TARGET_BLOBS={{ .Bpo1TargetBlobs }} +export BPO_1_BASE_FEE_UPDATE_FRACTION={{ .Bpo1BaseFeeUpdateFraction }} +export BPO_2_EPOCH="{{ .Bpo2Epoch }}" +export BPO_2_MAX_BLOBS={{ .Bpo2MaxBlobs }} +export BPO_2_TARGET_BLOBS={{ .Bpo2TargetBlobs }} +export BPO_2_BASE_FEE_UPDATE_FRACTION={{ .Bpo2BaseFeeUpdateFraction }} +export BPO_3_EPOCH="{{ .Bpo3Epoch }}" +export BPO_3_MAX_BLOBS={{ .Bpo3MaxBlobs }} +export BPO_3_TARGET_BLOBS={{ .Bpo3TargetBlobs }} +export BPO_3_BASE_FEE_UPDATE_FRACTION={{ .Bpo3BaseFeeUpdateFraction }} +export BPO_4_EPOCH="{{ .Bpo4Epoch }}" +export BPO_4_MAX_BLOBS={{ .Bpo4MaxBlobs }} +export BPO_4_TARGET_BLOBS={{ .Bpo4TargetBlobs }} +export BPO_4_BASE_FEE_UPDATE_FRACTION={{ .Bpo4BaseFeeUpdateFraction }} +export BPO_5_EPOCH="{{ .Bpo5Epoch }}" +export BPO_5_MAX_BLOBS={{ .Bpo5MaxBlobs }} +export BPO_5_TARGET_BLOBS={{ .Bpo5TargetBlobs }} +export BPO_5_BASE_FEE_UPDATE_FRACTION={{ .Bpo5BaseFeeUpdateFraction }} From bce5b2c20b26200268bea166fd93237d47560c19 Mon Sep 17 00:00:00 2001 From: Barnabas Busa Date: Tue, 13 May 2025 20:56:14 +0200 Subject: [PATCH 2/7] bump egg --- README.md | 2 +- network_params.yaml | 2 +- src/package_io/constants.star | 2 +- src/package_io/input_parser.star | 60 ++++++++------------------------ 4 files changed, 18 insertions(+), 48 deletions(-) diff --git a/README.md b/README.md index 0faeeebc1..ccf4fc6c0 100644 --- a/README.md +++ b/README.md @@ -1048,7 +1048,7 @@ spamoor_params: # Ethereum genesis generator params ethereum_genesis_generator_params: # The image to use for ethereum genesis generator - image: ethpandaops/ethereum-genesis-generator:4.0.4 + image: ethpandaops/ethereum-genesis-generator:4.1.0 # Global parameter to set the exit ip address of services and public ports port_publisher: diff --git a/network_params.yaml b/network_params.yaml index bada1ae5f..10277d2d2 100644 --- a/network_params.yaml +++ b/network_params.yaml @@ -203,7 +203,7 @@ keymanager_enabled: false checkpoint_sync_enabled: false checkpoint_sync_url: "" ethereum_genesis_generator_params: - image: ethpandaops/ethereum-genesis-generator:4.0.4 + image: ethpandaops/ethereum-genesis-generator:4.1.0 port_publisher: nat_exit_ip: KURTOSIS_IP_ADDR_PLACEHOLDER el: diff --git a/src/package_io/constants.star b/src/package_io/constants.star index 749279541..fc6d97c75 100644 --- a/src/package_io/constants.star +++ b/src/package_io/constants.star @@ -95,7 +95,7 @@ DEFAULT_SPAMOOR_IMAGE = "ethpandaops/spamoor:latest" DEFAULT_ASSERTOOR_IMAGE = "ethpandaops/assertoor:latest" DEFAULT_SNOOPER_IMAGE = "ethpandaops/rpc-snooper:latest" DEFAULT_ETHEREUM_GENESIS_GENERATOR_IMAGE = ( - "ethpandaops/ethereum-genesis-generator:4.0.4" + "ethpandaops/ethereum-genesis-generator:4.1.0" ) DEFAULT_YQ_IMAGE = "linuxserver/yq" DEFAULT_FLASHBOTS_RELAY_IMAGE = "ethpandaops/mev-boost-relay:main" diff --git a/src/package_io/input_parser.star b/src/package_io/input_parser.star index ee1fa0784..c4207314d 100644 --- a/src/package_io/input_parser.star +++ b/src/package_io/input_parser.star @@ -359,63 +359,33 @@ def input_parser(plan, input_args): base_fee_update_fraction_electra=result["network_params"][ "base_fee_update_fraction_electra" ], - bpo_1_epoch=result["network_params"][ - "bpo_1_epoch" - ], - bpo_1_max_blobs=result["network_params"][ - "bpo_1_max_blobs" - ], - bpo_1_target_blobs=result["network_params"][ - "bpo_1_target_blobs" - ], + bpo_1_epoch=result["network_params"]["bpo_1_epoch"], + bpo_1_max_blobs=result["network_params"]["bpo_1_max_blobs"], + bpo_1_target_blobs=result["network_params"]["bpo_1_target_blobs"], bpo_1_base_fee_update_fraction=result["network_params"][ "bpo_1_base_fee_update_fraction" ], - bpo_2_epoch=result["network_params"][ - "bpo_2_epoch" - ], - bpo_2_max_blobs=result["network_params"][ - "bpo_2_max_blobs" - ], - bpo_2_target_blobs=result["network_params"][ - "bpo_2_target_blobs" - ], + bpo_2_epoch=result["network_params"]["bpo_2_epoch"], + bpo_2_max_blobs=result["network_params"]["bpo_2_max_blobs"], + bpo_2_target_blobs=result["network_params"]["bpo_2_target_blobs"], bpo_2_base_fee_update_fraction=result["network_params"][ "bpo_2_base_fee_update_fraction" ], - bpo_3_epoch=result["network_params"][ - "bpo_3_epoch" - ], - bpo_3_max_blobs=result["network_params"][ - "bpo_3_max_blobs" - ], - bpo_3_target_blobs=result["network_params"][ - "bpo_3_target_blobs" - ], + bpo_3_epoch=result["network_params"]["bpo_3_epoch"], + bpo_3_max_blobs=result["network_params"]["bpo_3_max_blobs"], + bpo_3_target_blobs=result["network_params"]["bpo_3_target_blobs"], bpo_3_base_fee_update_fraction=result["network_params"][ "bpo_3_base_fee_update_fraction" ], - bpo_4_epoch=result["network_params"][ - "bpo_4_epoch" - ], - bpo_4_max_blobs=result["network_params"][ - "bpo_4_max_blobs" - ], - bpo_4_target_blobs=result["network_params"][ - "bpo_4_target_blobs" - ], + bpo_4_epoch=result["network_params"]["bpo_4_epoch"], + bpo_4_max_blobs=result["network_params"]["bpo_4_max_blobs"], + bpo_4_target_blobs=result["network_params"]["bpo_4_target_blobs"], bpo_4_base_fee_update_fraction=result["network_params"][ "bpo_4_base_fee_update_fraction" ], - bpo_5_epoch=result["network_params"][ - "bpo_5_epoch" - ], - bpo_5_max_blobs=result["network_params"][ - "bpo_5_max_blobs" - ], - bpo_5_target_blobs=result["network_params"][ - "bpo_5_target_blobs" - ], + bpo_5_epoch=result["network_params"]["bpo_5_epoch"], + bpo_5_max_blobs=result["network_params"]["bpo_5_max_blobs"], + bpo_5_target_blobs=result["network_params"]["bpo_5_target_blobs"], bpo_5_base_fee_update_fraction=result["network_params"][ "bpo_5_base_fee_update_fraction" ], From 3629caca9f947049db6aaba0930b89566b40f68f Mon Sep 17 00:00:00 2001 From: Barnabas Busa Date: Tue, 13 May 2025 20:57:13 +0200 Subject: [PATCH 3/7] Update minimal-fulu.yaml Signed-off-by: Barnabas Busa --- .github/tests/minimal-fulu.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/tests/minimal-fulu.yaml b/.github/tests/minimal-fulu.yaml index e38a70a4c..b269d2c09 100644 --- a/.github/tests/minimal-fulu.yaml +++ b/.github/tests/minimal-fulu.yaml @@ -42,13 +42,13 @@ additional_services: - dora - tx_fuzz - spamoor -# - assertoor + - assertoor network_params: min_validator_withdrawability_delay: 1 shard_committee_period: 1 churn_limit_quotient: 16 - #fulu_fork_epoch: 10 + fulu_fork_epoch: 10 genesis_delay: 120 preset: minimal From de64bfdb8d34bf5ae596856c0f340c45b4d9da4f Mon Sep 17 00:00:00 2001 From: Barnabas Busa Date: Wed, 14 May 2025 21:55:19 +0200 Subject: [PATCH 4/7] add bpo test --- .github/tests/bpo.yaml | 48 ++++++++++++++++++++++++++++++++ README.md | 2 +- network_params.yaml | 2 +- src/package_io/constants.star | 2 +- src/package_io/input_parser.star | 8 +++--- 5 files changed, 55 insertions(+), 7 deletions(-) create mode 100644 .github/tests/bpo.yaml diff --git a/.github/tests/bpo.yaml b/.github/tests/bpo.yaml new file mode 100644 index 000000000..806551eb7 --- /dev/null +++ b/.github/tests/bpo.yaml @@ -0,0 +1,48 @@ +participants_matrix: + el: + - el_type: nethermind + el_image: ethpandaops/nethermind:feature-peerdas + - el_type: reth + el_image: ethpandaops/reth:rkrasiuk-peerdas + - el_type: geth + el_image: ethpandaops/geth:peerdas-devnet-7 + cl: + - cl_type: teku + cl_image: ethpandaops/teku:das + supernode: true + - cl_type: nimbus + cl_image: ethpandaops/nimbus-eth2:gbv2 + supernode: true + - cl_type: grandine + cl_image: ethpandaops/grandine:hangleang-peerdas-devnet-7 + supernode: true + cl_extra_env_vars: {"RUST_MIN_STACK": "5242880"} + - cl_type: prysm + cl_image: ethpandaops/prysm-beacon-chain:peerDAS + supernode: true + - cl_type: lighthouse + cl_image: ethpandaops/lighthouse:peerdas-devnet-7 + supernode: true + - cl_type: lodestar + cl_image: ethpandaops/lodestar:peerDAS + supernode: true + +network_params: + fulu_fork_epoch: 1 + bpo_1_fork_epoch: 1 + bpo_1_max_blobs: 9 + bpo_1_target_blobs: 6 +additional_services: + - dora + - spamoor + +spamoor_params: + image: ethpandaops/spamoor:latest + max_mem: 4000 + spammers: + - scenario: eoatx + config: + throughput: 200 + - scenario: blobs + config: + throughput: 20 diff --git a/README.md b/README.md index ccf4fc6c0..33f7dbf60 100644 --- a/README.md +++ b/README.md @@ -1048,7 +1048,7 @@ spamoor_params: # Ethereum genesis generator params ethereum_genesis_generator_params: # The image to use for ethereum genesis generator - image: ethpandaops/ethereum-genesis-generator:4.1.0 + image: ethpandaops/ethereum-genesis-generator:4.1.1 # Global parameter to set the exit ip address of services and public ports port_publisher: diff --git a/network_params.yaml b/network_params.yaml index 10277d2d2..87ad106e4 100644 --- a/network_params.yaml +++ b/network_params.yaml @@ -203,7 +203,7 @@ keymanager_enabled: false checkpoint_sync_enabled: false checkpoint_sync_url: "" ethereum_genesis_generator_params: - image: ethpandaops/ethereum-genesis-generator:4.1.0 + image: ethpandaops/ethereum-genesis-generator:4.1.1 port_publisher: nat_exit_ip: KURTOSIS_IP_ADDR_PLACEHOLDER el: diff --git a/src/package_io/constants.star b/src/package_io/constants.star index fc6d97c75..af45128e1 100644 --- a/src/package_io/constants.star +++ b/src/package_io/constants.star @@ -95,7 +95,7 @@ DEFAULT_SPAMOOR_IMAGE = "ethpandaops/spamoor:latest" DEFAULT_ASSERTOOR_IMAGE = "ethpandaops/assertoor:latest" DEFAULT_SNOOPER_IMAGE = "ethpandaops/rpc-snooper:latest" DEFAULT_ETHEREUM_GENESIS_GENERATOR_IMAGE = ( - "ethpandaops/ethereum-genesis-generator:4.1.0" + "ethpandaops/ethereum-genesis-generator:4.1.1" ) DEFAULT_YQ_IMAGE = "linuxserver/yq" DEFAULT_FLASHBOTS_RELAY_IMAGE = "ethpandaops/mev-boost-relay:main" diff --git a/src/package_io/input_parser.star b/src/package_io/input_parser.star index c4207314d..4fe0f94c0 100644 --- a/src/package_io/input_parser.star +++ b/src/package_io/input_parser.star @@ -18,7 +18,7 @@ DEFAULT_EL_IMAGES = { DEFAULT_CL_IMAGES = { "lighthouse": "sigp/lighthouse:latest", - "teku": "consensys/teku:latest", + "teku": "consensys/teku:develop", "nimbus": "statusim/nimbus-eth2:multiarch-latest", "prysm": "gcr.io/prysmaticlabs/prysm/beacon-chain:stable", "lodestar": "chainsafe/lodestar:latest", @@ -27,7 +27,7 @@ DEFAULT_CL_IMAGES = { DEFAULT_CL_IMAGES_MINIMAL = { "lighthouse": "ethpandaops/lighthouse:stable", - "teku": "consensys/teku:latest", + "teku": "consensys/teku:develop", "nimbus": "ethpandaops/nimbus-eth2:stable-minimal", "prysm": "ethpandaops/prysm-beacon-chain:develop-minimal", "lodestar": "chainsafe/lodestar:latest", @@ -39,7 +39,7 @@ DEFAULT_VC_IMAGES = { "lodestar": "chainsafe/lodestar:latest", "nimbus": "statusim/nimbus-validator-client:multiarch-latest", "prysm": "gcr.io/prysmaticlabs/prysm/validator:stable", - "teku": "consensys/teku:latest", + "teku": "consensys/teku:develop", "grandine": "sifrai/grandine:stable", "vero": "ghcr.io/serenita-org/vero:master", } @@ -49,7 +49,7 @@ DEFAULT_VC_IMAGES_MINIMAL = { "lodestar": "chainsafe/lodestar:latest", "nimbus": "ethpandaops/nimbus-validator-client:stable-minimal", "prysm": "ethpandaops/prysm-validator:develop-minimal", - "teku": "consensys/teku:latest", + "teku": "consensys/teku:develop", "grandine": "ethpandaops/grandine:develop-minimal", "vero": "ghcr.io/serenita-org/vero:master", } From 3b02df3ff17fc63bd22ea5c09e9ef17da499ba21 Mon Sep 17 00:00:00 2001 From: Barnabas Busa Date: Wed, 14 May 2025 22:26:29 +0200 Subject: [PATCH 5/7] fix nimbus image --- src/package_io/input_parser.star | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/package_io/input_parser.star b/src/package_io/input_parser.star index 4fe0f94c0..dc78562e7 100644 --- a/src/package_io/input_parser.star +++ b/src/package_io/input_parser.star @@ -13,7 +13,7 @@ DEFAULT_EL_IMAGES = { "besu": "hyperledger/besu:latest", "reth": "ghcr.io/paradigmxyz/reth", "ethereumjs": "ethpandaops/ethereumjs:master", - "nimbus": "ethpandaops/nimbus-eth1:master", + "nimbus": "statusim/nimbus-eth1:master", } DEFAULT_CL_IMAGES = { From a376aaf0e938d712bd63a40d4638c91e26641ad2 Mon Sep 17 00:00:00 2001 From: pk910 Date: Wed, 14 May 2025 23:58:11 +0200 Subject: [PATCH 6/7] bump egg --- README.md | 2 +- network_params.yaml | 2 +- src/package_io/constants.star | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 33f7dbf60..154772e90 100644 --- a/README.md +++ b/README.md @@ -1048,7 +1048,7 @@ spamoor_params: # Ethereum genesis generator params ethereum_genesis_generator_params: # The image to use for ethereum genesis generator - image: ethpandaops/ethereum-genesis-generator:4.1.1 + image: ethpandaops/ethereum-genesis-generator:4.1.2 # Global parameter to set the exit ip address of services and public ports port_publisher: diff --git a/network_params.yaml b/network_params.yaml index 87ad106e4..c6ec4f96c 100644 --- a/network_params.yaml +++ b/network_params.yaml @@ -203,7 +203,7 @@ keymanager_enabled: false checkpoint_sync_enabled: false checkpoint_sync_url: "" ethereum_genesis_generator_params: - image: ethpandaops/ethereum-genesis-generator:4.1.1 + image: ethpandaops/ethereum-genesis-generator:4.1.2 port_publisher: nat_exit_ip: KURTOSIS_IP_ADDR_PLACEHOLDER el: diff --git a/src/package_io/constants.star b/src/package_io/constants.star index af45128e1..7a281261f 100644 --- a/src/package_io/constants.star +++ b/src/package_io/constants.star @@ -95,7 +95,7 @@ DEFAULT_SPAMOOR_IMAGE = "ethpandaops/spamoor:latest" DEFAULT_ASSERTOOR_IMAGE = "ethpandaops/assertoor:latest" DEFAULT_SNOOPER_IMAGE = "ethpandaops/rpc-snooper:latest" DEFAULT_ETHEREUM_GENESIS_GENERATOR_IMAGE = ( - "ethpandaops/ethereum-genesis-generator:4.1.1" + "ethpandaops/ethereum-genesis-generator:4.1.2" ) DEFAULT_YQ_IMAGE = "linuxserver/yq" DEFAULT_FLASHBOTS_RELAY_IMAGE = "ethpandaops/mev-boost-relay:main" From 12f8a9af125ab994c2f966e21e2426119c64c7c3 Mon Sep 17 00:00:00 2001 From: Barnabas Busa Date: Thu, 15 May 2025 10:06:09 +0200 Subject: [PATCH 7/7] fix: hex typo --- .github/tests/bpo.yaml | 3 ++- README.md | 2 +- network_params.yaml | 2 +- src/package_io/constants.star | 2 +- 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/.github/tests/bpo.yaml b/.github/tests/bpo.yaml index 806551eb7..c8de935e1 100644 --- a/.github/tests/bpo.yaml +++ b/.github/tests/bpo.yaml @@ -29,7 +29,7 @@ participants_matrix: network_params: fulu_fork_epoch: 1 - bpo_1_fork_epoch: 1 + bpo_1_epoch: 1 bpo_1_max_blobs: 9 bpo_1_target_blobs: 6 additional_services: @@ -46,3 +46,4 @@ spamoor_params: - scenario: blobs config: throughput: 20 + diff --git a/README.md b/README.md index 154772e90..9718eb6f0 100644 --- a/README.md +++ b/README.md @@ -1048,7 +1048,7 @@ spamoor_params: # Ethereum genesis generator params ethereum_genesis_generator_params: # The image to use for ethereum genesis generator - image: ethpandaops/ethereum-genesis-generator:4.1.2 + image: ethpandaops/ethereum-genesis-generator:4.1.3 # Global parameter to set the exit ip address of services and public ports port_publisher: diff --git a/network_params.yaml b/network_params.yaml index c6ec4f96c..51ac6a794 100644 --- a/network_params.yaml +++ b/network_params.yaml @@ -203,7 +203,7 @@ keymanager_enabled: false checkpoint_sync_enabled: false checkpoint_sync_url: "" ethereum_genesis_generator_params: - image: ethpandaops/ethereum-genesis-generator:4.1.2 + image: ethpandaops/ethereum-genesis-generator:4.1.3 port_publisher: nat_exit_ip: KURTOSIS_IP_ADDR_PLACEHOLDER el: diff --git a/src/package_io/constants.star b/src/package_io/constants.star index 7a281261f..24064aac3 100644 --- a/src/package_io/constants.star +++ b/src/package_io/constants.star @@ -95,7 +95,7 @@ DEFAULT_SPAMOOR_IMAGE = "ethpandaops/spamoor:latest" DEFAULT_ASSERTOOR_IMAGE = "ethpandaops/assertoor:latest" DEFAULT_SNOOPER_IMAGE = "ethpandaops/rpc-snooper:latest" DEFAULT_ETHEREUM_GENESIS_GENERATOR_IMAGE = ( - "ethpandaops/ethereum-genesis-generator:4.1.2" + "ethpandaops/ethereum-genesis-generator:4.1.3" ) DEFAULT_YQ_IMAGE = "linuxserver/yq" DEFAULT_FLASHBOTS_RELAY_IMAGE = "ethpandaops/mev-boost-relay:main"