diff --git a/src/el/erigon/erigon_launcher.star b/src/el/erigon/erigon_launcher.star index 9aac7daa9..0a1493a39 100644 --- a/src/el/erigon/erigon_launcher.star +++ b/src/el/erigon/erigon_launcher.star @@ -314,6 +314,4 @@ def new_erigon_launcher(el_cl_genesis_data, jwt_file, networkid): el_cl_genesis_data=el_cl_genesis_data, jwt_file=jwt_file, networkid=networkid, - osaka_time=el_cl_genesis_data.osaka_time, - osaka_enabled=el_cl_genesis_data.osaka_enabled, ) diff --git a/src/el/geth/geth_launcher.star b/src/el/geth/geth_launcher.star index 0fa2b9490..4d120528e 100644 --- a/src/el/geth/geth_launcher.star +++ b/src/el/geth/geth_launcher.star @@ -235,8 +235,15 @@ def get_config( ) ) if constants.NETWORK_NAME.shadowfork in network_params.network: # shadowfork - if launcher.osaka_enabled: - cmd.append("--override.osaka=" + str(launcher.osaka_time)) + cmd.append( + "--override.osaka=" + str(launcher.shadowfork_times["osaka_time"]) + ) + cmd.append( + "--override.bpo1=" + str(launcher.shadowfork_times["bpo_1_time"]) + ) + cmd.append( + "--override.bpo2=" + str(launcher.shadowfork_times["bpo_2_time"]) + ) elif ( network_params.network not in constants.PUBLIC_NETWORKS @@ -364,6 +371,5 @@ def new_geth_launcher( el_cl_genesis_data=el_cl_genesis_data, jwt_file=jwt_file, networkid=networkid, - osaka_time=el_cl_genesis_data.osaka_time, - osaka_enabled=el_cl_genesis_data.osaka_enabled, + shadowfork_times=el_cl_genesis_data.shadowfork_times, ) diff --git a/src/package_io/input_parser.star b/src/package_io/input_parser.star index f26fcf82f..fda4d3208 100644 --- a/src/package_io/input_parser.star +++ b/src/package_io/input_parser.star @@ -1194,13 +1194,13 @@ def default_network_params(): "perfect_peerdas_enabled": False, "gas_limit": 0, "bpo_1_epoch": 18446744073709551615, - "bpo_1_max_blobs": 0, - "bpo_1_target_blobs": 0, - "bpo_1_base_fee_update_fraction": 0, + "bpo_1_max_blobs": 15, + "bpo_1_target_blobs": 10, + "bpo_1_base_fee_update_fraction": 8346193, "bpo_2_epoch": 18446744073709551615, - "bpo_2_max_blobs": 0, - "bpo_2_target_blobs": 0, - "bpo_2_base_fee_update_fraction": 0, + "bpo_2_max_blobs": 21, + "bpo_2_target_blobs": 14, + "bpo_2_base_fee_update_fraction": 11684671, "bpo_3_epoch": 18446744073709551615, "bpo_3_max_blobs": 0, "bpo_3_target_blobs": 0, diff --git a/src/participant_network.star b/src/participant_network.star index f728b0747..d0b396eb0 100644 --- a/src/participant_network.star +++ b/src/participant_network.star @@ -603,5 +603,5 @@ def launch_participant_network( el_cl_data.genesis_validators_root, el_cl_data.files_artifact_uuid, network_id, - el_cl_data.osaka_time, + el_cl_data.shadowfork_times["osaka_time"], ) diff --git a/src/prelaunch_data_generator/el_cl_genesis/el_cl_genesis_data.star b/src/prelaunch_data_generator/el_cl_genesis/el_cl_genesis_data.star index c750ed114..66923a96c 100644 --- a/src/prelaunch_data_generator/el_cl_genesis/el_cl_genesis_data.star +++ b/src/prelaunch_data_generator/el_cl_genesis/el_cl_genesis_data.star @@ -1,12 +1,10 @@ def new_el_cl_genesis_data( files_artifact_uuid, genesis_validators_root, - osaka_time=0, - osaka_enabled=False, + shadowfork_times={}, ): return struct( files_artifact_uuid=files_artifact_uuid, genesis_validators_root=genesis_validators_root, - osaka_time=osaka_time, - osaka_enabled=osaka_enabled, + shadowfork_times=shadowfork_times, ) 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 b4ddafd84..221669b1e 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 @@ -92,6 +92,8 @@ def generate_el_cl_genesis_data( tolerations=shared_utils.get_tolerations(global_tolerations=global_tolerations), node_selectors=global_node_selectors, ) + shadowfork_times = {} + osaka_time = plan.run_sh( name="read-osaka-time", description="Reading osaka time from genesis", @@ -101,20 +103,36 @@ def generate_el_cl_genesis_data( node_selectors=global_node_selectors, ) - osaka_enabled_check = plan.run_sh( - name="check-osaka-enabled", - description="Check if osaka time is enabled (not false)", - run="test \"$(jq '.config.osakaTime // false' /data/genesis.json | tr -d '\n')\" != \"false\" && echo true || echo false", + bpo_1_time = plan.run_sh( + name="read-bpo-1-time", + description="Reading bpo 1 time from genesis", + run="jq '.config.bpo1Time' /data/genesis.json | tr -d '\n'", files={"/data": genesis.files_artifacts[0]}, tolerations=shared_utils.get_tolerations(global_tolerations=global_tolerations), node_selectors=global_node_selectors, ) + bpo_2_time = plan.run_sh( + name="read-bpo-2-time", + description="Reading bpo 2 time from genesis", + run="jq '.config.bpo2Time' /data/genesis.json | tr -d '\n'", + files={"/data": genesis.files_artifacts[0]}, + tolerations=shared_utils.get_tolerations(global_tolerations=global_tolerations), + node_selectors=global_node_selectors, + ) + + shadowfork_times = { + "osaka_time": osaka_time.output, + "bpo_1_time": bpo_1_time.output, + "bpo_2_time": bpo_2_time.output, + } + + plan.print("Shadowfork times: {0}".format(shadowfork_times)) + result = el_cl_genesis_data.new_el_cl_genesis_data( genesis.files_artifacts[0], genesis_validators_root.output, - osaka_time.output, - osaka_enabled_check.output == "true", + shadowfork_times, ) return result