Skip to content

Commit c7cce7e

Browse files
authored
fix: bring back wait for capella fork epoch (ethpandaops#212)
if someone explicitly sets capella we can have breaks for the default seconds per slot as seen by @bharath-123 . I am wondering my `protocolberg` example goes through, I am guessing that reaches epoch 1 as the seconds per slot ar elower
1 parent ac25458 commit c7cce7e

File tree

1 file changed

+12
-5
lines changed

1 file changed

+12
-5
lines changed

main.star

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -51,12 +51,8 @@ def run(plan, args = {}):
5151
for participant in all_participants:
5252
all_el_client_contexts.append(participant.el_client_context)
5353
all_cl_client_contexts.append(participant.cl_client_context)
54-
5554

56-
if not args_with_right_defaults.launch_additional_services:
57-
return
5855

59-
6056
mev_endpoints = []
6157
# passed external relays get priority
6258
# perhaps add mev_type External or remove this
@@ -77,11 +73,22 @@ def run(plan, args = {}):
7773
first_cl_client = all_cl_client_contexts[0]
7874
first_client_beacon_name = first_cl_client.beacon_service_name
7975
mev_flood_module.launch_mev_flood(plan, mev_params.mev_flood_image, el_uri, genesis_constants.PRE_FUNDED_ACCOUNTS)
76+
epoch_recipe = GetHttpRequestRecipe(
77+
endpoint = "/eth/v2/beacon/blocks/head",
78+
port_id = HTTP_PORT_ID_FOR_FACT,
79+
extract = {
80+
"epoch": ".data.message.body.attestations[0].data.target.epoch"
81+
}
82+
)
83+
plan.wait(recipe = epoch_recipe, field = "extract.epoch", assertion = ">=", target_value = str(network_params.capella_fork_epoch), timeout = "20m", service_name = first_client_beacon_name)
8084
endpoint = mev_relay_launcher_module.launch_mev_relay(plan, mev_params, network_params.network_id, beacon_uris, genesis_validators_root, builder_uri, network_params.seconds_per_slot, network_params.slots_per_epoch)
8185
mev_flood_module.spam_in_background(plan, el_uri, mev_params.mev_flood_extra_args, mev_params.mev_flood_seconds_per_bundle, genesis_constants.PRE_FUNDED_ACCOUNTS)
8286
if args_with_right_defaults.mev_params.launch_custom_flood:
8387
mev_custom_flood_module.spam_in_background(plan, genesis_constants.PRE_FUNDED_ACCOUNTS[-1].private_key, genesis_constants.PRE_FUNDED_ACCOUNTS[0].address, el_uri)
84-
mev_endpoints.append(endpoint)
88+
mev_endpoints.append(endpoint)
89+
90+
if not args_with_right_defaults.launch_additional_services:
91+
return
8592

8693
plan.print("Launching transaction spammer")
8794
tx_spammer_params = args_with_right_defaults.tx_spammer_params

0 commit comments

Comments
 (0)