From d8e0dbc7f75596dc4dcc23ee328f37e964c4839f Mon Sep 17 00:00:00 2001 From: han0110 Date: Sat, 21 Mar 2026 15:40:45 +0000 Subject: [PATCH 1/2] feat: replace ews with zkboost --- .github/tests/ews.yaml | 12 -- .github/tests/zkboost.yaml | 19 ++ main.star | 20 +- src/ews/ews_launcher.star | 186 ------------------- src/package_io/constants.star | 2 +- src/package_io/input_parser.star | 36 ++-- src/package_io/sanity_check.star | 11 +- src/static_files/static_files.star | 4 +- src/zkboost/zkboost_launcher.star | 146 +++++++++++++++ static_files/ews-config/config.toml.tmpl | 21 --- static_files/zkboost-config/config.toml.tmpl | 17 ++ 11 files changed, 225 insertions(+), 249 deletions(-) delete mode 100644 .github/tests/ews.yaml create mode 100644 .github/tests/zkboost.yaml delete mode 100644 src/ews/ews_launcher.star create mode 100644 src/zkboost/zkboost_launcher.star delete mode 100644 static_files/ews-config/config.toml.tmpl create mode 100644 static_files/zkboost-config/config.toml.tmpl diff --git a/.github/tests/ews.yaml b/.github/tests/ews.yaml deleted file mode 100644 index 4daf550be..000000000 --- a/.github/tests/ews.yaml +++ /dev/null @@ -1,12 +0,0 @@ -participants: - - count: 3 - - el_type: dummy - cl_type: lighthouse - cl_image: ethpandaops/lighthouse:eth-act-optional-proofs - cl_extra_params: - - --activate-zkvm - -additional_services: - - ews - - dora -mev_type: flashbots diff --git a/.github/tests/zkboost.yaml b/.github/tests/zkboost.yaml new file mode 100644 index 000000000..f745cdb30 --- /dev/null +++ b/.github/tests/zkboost.yaml @@ -0,0 +1,19 @@ +participants: + - count: 2 + el_type: reth + cl_type: lighthouse + +additional_services: + - zkboost + - dora + +zkboost_params: + zkvms: + - kind: mock + proof_type: reth-zisk + mock_proving_time_ms: 5000 + mock_proof_size: 1024 + - kind: mock + proof_type: ethrex-zisk + mock_proving_time_ms: 5000 + mock_proof_size: 1024 diff --git a/main.star b/main.star index ead736ce2..4595b1526 100644 --- a/main.star +++ b/main.star @@ -64,7 +64,7 @@ get_prefunded_accounts = import_module( ) spamoor = import_module("./src/spamoor/spamoor.star") slashoor = import_module("./src/slashoor/slashoor_launcher.star") -ews = import_module("./src/ews/ews_launcher.star") +zkboost = import_module("./src/zkboost/zkboost_launcher.star") GRAFANA_USER = "admin" GRAFANA_PASSWORD = "admin" @@ -1018,23 +1018,25 @@ def run(plan, args={}): args_with_right_defaults.additional_services, ) plan.print("Successfully launched slashoor") - elif additional_service == "ews": - plan.print("Launching execution-witness-sentry") - ews_config_template = read_file(static_files.EWS_CONFIG_TEMPLATE_FILEPATH) - ews.launch_ews( + elif additional_service == "zkboost": + plan.print("Launching zkboost") + zkboost_config_template = read_file( + static_files.ZKBOOST_CONFIG_TEMPLATE_FILEPATH + ) + zkboost.launch_zkboost( plan, - ews_config_template, + zkboost_config_template, all_participants, args_with_right_defaults.participants, - network_params, - args_with_right_defaults.ews_params, + args_with_right_defaults.zkboost_params, global_node_selectors, global_tolerations, args_with_right_defaults.port_publisher, index, args_with_right_defaults.docker_cache_params, + {}, ) - plan.print("Successfully launched execution-witness-sentry") + plan.print("Successfully launched zkboost") else: fail("Invalid additional service %s" % (additional_service)) if launch_prometheus_grafana: diff --git a/src/ews/ews_launcher.star b/src/ews/ews_launcher.star deleted file mode 100644 index 427d5f7b5..000000000 --- a/src/ews/ews_launcher.star +++ /dev/null @@ -1,186 +0,0 @@ -shared_utils = import_module("../shared_utils/shared_utils.star") -constants = import_module("../package_io/constants.star") - -SERVICE_NAME = "ews" - -HTTP_PORT_NUMBER = 3000 - -EWS_CONFIG_FILENAME = "config.toml" - -EWS_CONFIG_MOUNT_DIRPATH_ON_SERVICE = "/config" - -MIN_CPU = 100 -MAX_CPU = 1000 -MIN_MEMORY = 256 -MAX_MEMORY = 2048 - -USED_PORTS = { - constants.HTTP_PORT_ID: shared_utils.new_port_spec( - HTTP_PORT_NUMBER, - shared_utils.TCP_PROTOCOL, - shared_utils.HTTP_APPLICATION_PROTOCOL, - wait=None, - ) -} - - -def launch_ews( - plan, - config_template, - participant_contexts, - participant_configs, - network_params, - ews_params, - global_node_selectors, - global_tolerations, - port_publisher, - additional_service_index, - docker_cache_params, -): - tolerations = shared_utils.get_tolerations(global_tolerations=global_tolerations) - - first_real_el_info = None - head_subscription_cl_info = None - dummy_cl_client_info = [] - - for index, participant in enumerate(participant_contexts): - full_name, cl_client, el_client, _ = shared_utils.get_client_names( - participant, index, participant_contexts, participant_configs - ) - el_type = participant_configs[index].el_type - - if el_type == "dummy": - dummy_cl_client_info.append( - new_cl_client_info( - full_name, - cl_client.beacon_http_url, - ) - ) - else: - if first_real_el_info == None: - first_real_el_info = new_el_client_info( - full_name, - "http://{0}:{1}".format(el_client.dns_name, el_client.rpc_port_num), - "ws://{0}:{1}".format(el_client.dns_name, el_client.ws_port_num), - ) - head_subscription_cl_info = new_cl_client_info( - full_name, - cl_client.beacon_http_url, - ) - - template_data = new_config_template_data( - network_params.network, - ews_params.retain, - ews_params.num_proofs, - first_real_el_info, - head_subscription_cl_info, - dummy_cl_client_info, - ) - - template_and_data = shared_utils.new_template_and_data( - config_template, template_data - ) - template_and_data_by_rel_dest_filepath = {} - template_and_data_by_rel_dest_filepath[EWS_CONFIG_FILENAME] = template_and_data - - config_files_artifact_name = plan.render_templates( - template_and_data_by_rel_dest_filepath, "ews-config" - ) - config = get_config( - config_files_artifact_name, - ews_params, - global_node_selectors, - tolerations, - port_publisher, - additional_service_index, - docker_cache_params, - ) - - plan.add_service(SERVICE_NAME, config) - - -def get_config( - config_files_artifact_name, - ews_params, - node_selectors, - tolerations, - port_publisher, - additional_service_index, - docker_cache_params, -): - config_file_path = shared_utils.path_join( - EWS_CONFIG_MOUNT_DIRPATH_ON_SERVICE, - EWS_CONFIG_FILENAME, - ) - - public_ports = shared_utils.get_additional_service_standard_public_port( - port_publisher, - constants.HTTP_PORT_ID, - additional_service_index, - 0, - ) - - IMAGE_NAME = shared_utils.docker_cache_image_calc( - docker_cache_params, - ews_params.image, - ) - - return ServiceConfig( - image=IMAGE_NAME, - ports=USED_PORTS, - public_ports=public_ports, - files={ - EWS_CONFIG_MOUNT_DIRPATH_ON_SERVICE: config_files_artifact_name, - }, - entrypoint=["/app/execution-witness-sentry"], - cmd=["--config", config_file_path], - env_vars=ews_params.env, - min_cpu=MIN_CPU, - max_cpu=MAX_CPU, - min_memory=MIN_MEMORY, - max_memory=MAX_MEMORY, - node_selectors=node_selectors, - tolerations=tolerations, - # ready_conditions=ReadyCondition( - # recipe=GetHttpRequestRecipe( - # port_id=constants.HTTP_PORT_ID, - # endpoint="/health", - # ), - # field="code", - # assertion="==", - # target_value=200, - # ), - ) - - -def new_config_template_data( - network, - retain, - num_proofs, - el_client_info, - head_subscription_cl_info, - zkvm_cl_client_info, -): - return { - "Network": network, - "Retain": retain, - "NumProofs": num_proofs, - "ELClientInfo": el_client_info, - "HeadSubscriptionCLInfo": head_subscription_cl_info, - "ZkvmCLClientInfo": zkvm_cl_client_info, - } - - -def new_el_client_info(full_name, el_http_url, el_ws_url): - return { - "FullName": full_name, - "EL_HTTP_URL": el_http_url, - "EL_WS_URL": el_ws_url, - } - - -def new_cl_client_info(full_name, cl_http_url): - return { - "FullName": full_name, - "CL_HTTP_URL": cl_http_url, - } diff --git a/src/package_io/constants.star b/src/package_io/constants.star index 794a86f7c..69c4be0cf 100644 --- a/src/package_io/constants.star +++ b/src/package_io/constants.star @@ -119,7 +119,7 @@ DEFAULT_COMMIT_BOOST_MEV_BOOST_IMAGE = "ghcr.io/commit-boost/pbs:latest" DEFAULT_MOCK_MEV_IMAGE = "ethpandaops/rustic-builder:main" DEFAULT_BUILDOOR_IMAGE = "ethpandaops/buildoor:main" DEFAULT_HELIX_RELAY_IMAGE = "ghcr.io/gattaca-com/helix-relay:main" -DEFAULT_EWS_IMAGE = "ghcr.io/eth-act/zkboost/execution-witness-sentry:latest" +DEFAULT_ZKBOOST_IMAGE = "ghcr.io/eth-act/zkboost/zkboost-server:latest" DEFAULT_MEV_PUBKEY = "0xa55c1285d84ba83a5ad26420cd5ad3091e49c55a813eee651cd467db38a8c8e63192f47955e9376f6b42f6d190571cb5" DEFAULT_MEV_SECRET_KEY = ( "0x607a11b45a7219cc61a3d9c5fd08c7eebd602a6a19a977f8d3771d5711a550f2" diff --git a/src/package_io/input_parser.star b/src/package_io/input_parser.star index dd73048b8..18596a766 100644 --- a/src/package_io/input_parser.star +++ b/src/package_io/input_parser.star @@ -91,7 +91,7 @@ ATTR_TO_BE_SKIPPED_AT_ROOT = ( "slashoor_params", "bootnodoor_params", "mempool_bridge_params", - "ews_params", + "zkboost_params", "buildoor_params", "ethereum_genesis_generator_params", ) @@ -133,7 +133,7 @@ def input_parser(plan, input_args): result["spamoor_params"] = get_default_spamoor_params() result["slashoor_params"] = get_default_slashoor_params() result["mempool_bridge_params"] = get_default_mempool_bridge_params() - result["ews_params"] = get_default_ews_params() + result["zkboost_params"] = get_default_zkboost_params() result["buildoor_params"] = get_default_buildoor_params() if constants.NETWORK_NAME.shadowfork in result["network_params"]["network"]: @@ -232,10 +232,10 @@ def input_parser(plan, input_args): for sub_attr in input_args["checkpointz_params"]: sub_value = input_args["checkpointz_params"][sub_attr] result["checkpointz_params"][sub_attr] = sub_value - elif attr == "ews_params": - for sub_attr in input_args["ews_params"]: - sub_value = input_args["ews_params"][sub_attr] - result["ews_params"][sub_attr] = sub_value + elif attr == "zkboost_params": + for sub_attr in input_args["zkboost_params"]: + sub_value = input_args["zkboost_params"][sub_attr] + result["zkboost_params"][sub_attr] = sub_value elif attr == "buildoor_params": for sub_attr in input_args["buildoor_params"]: sub_value = input_args["buildoor_params"][sub_attr] @@ -976,11 +976,14 @@ def input_parser(plan, input_args): max_mem=result["bootnodoor_params"]["max_mem"], extra_args=result["bootnodoor_params"]["extra_args"], ), - ews_params=struct( - image=result["ews_params"]["image"], - retain=result["ews_params"]["retain"], - num_proofs=result["ews_params"]["num_proofs"], - env=result["ews_params"]["env"], + zkboost_params=struct( + image=result["zkboost_params"]["image"], + witness_timeout_secs=result["zkboost_params"]["witness_timeout_secs"], + proof_timeout_secs=result["zkboost_params"]["proof_timeout_secs"], + proof_cache_size=result["zkboost_params"]["proof_cache_size"], + witness_cache_size=result["zkboost_params"]["witness_cache_size"], + zkvms=result["zkboost_params"]["zkvms"], + env=result["zkboost_params"]["env"], ), buildoor_params=struct( image=result["buildoor_params"]["image"], @@ -1985,11 +1988,14 @@ def get_default_bootnodoor_params(): } -def get_default_ews_params(): +def get_default_zkboost_params(): return { - "image": constants.DEFAULT_EWS_IMAGE, - "retain": 10, - "num_proofs": 1, + "image": constants.DEFAULT_ZKBOOST_IMAGE, + "witness_timeout_secs": 12, + "proof_timeout_secs": 12, + "proof_cache_size": 128, + "witness_cache_size": 128, + "zkvms": [], "env": {}, } diff --git a/src/package_io/sanity_check.star b/src/package_io/sanity_check.star index c7c61c8c8..32fb99391 100644 --- a/src/package_io/sanity_check.star +++ b/src/package_io/sanity_check.star @@ -446,10 +446,13 @@ SUBCATEGORY_PARAMS = { "max_mem", "extra_args", ], - "ews_params": [ + "zkboost_params": [ "image", - "retain", - "num_proofs", + "witness_timeout_secs", + "proof_timeout_secs", + "proof_cache_size", + "witness_cache_size", + "zkvms", "env", ], "buildoor_params": [ @@ -487,7 +490,7 @@ ADDITIONAL_SERVICES_PARAMS = [ "rakoon", "slashoor", "spamoor", - "ews", + "zkboost", ] ADDITIONAL_CATEGORY_PARAMS = { diff --git a/src/static_files/static_files.star b/src/static_files/static_files.star index f64a920f1..200188036 100644 --- a/src/static_files/static_files.star +++ b/src/static_files/static_files.star @@ -142,4 +142,6 @@ MEMPOOL_BRIDGE_CONFIG_TEMPLATE_FILEPATH = ( ) HELIX_RELAY_CONFIG_FILEPATH = STATIC_FILES_DIRPATH + "/mev/helix/config.yaml.tmpl" -EWS_CONFIG_TEMPLATE_FILEPATH = STATIC_FILES_DIRPATH + "/ews-config/config.toml.tmpl" +ZKBOOST_CONFIG_TEMPLATE_FILEPATH = ( + STATIC_FILES_DIRPATH + "/zkboost-config/config.toml.tmpl" +) diff --git a/src/zkboost/zkboost_launcher.star b/src/zkboost/zkboost_launcher.star new file mode 100644 index 000000000..17dfd54ba --- /dev/null +++ b/src/zkboost/zkboost_launcher.star @@ -0,0 +1,146 @@ +shared_utils = import_module("../shared_utils/shared_utils.star") +constants = import_module("../package_io/constants.star") + +SERVICE_NAME = "zkboost" + +HTTP_PORT_NUMBER = 3000 + +ZKBOOST_CONFIG_FILENAME = "config.toml" + +ZKBOOST_CONFIG_MOUNT_DIRPATH_ON_SERVICE = "/config" + +MIN_CPU = 100 +MAX_CPU = 1000 +MIN_MEMORY = 256 +MAX_MEMORY = 2048 + +USED_PORTS = { + constants.HTTP_PORT_ID: shared_utils.new_port_spec( + HTTP_PORT_NUMBER, + shared_utils.TCP_PROTOCOL, + shared_utils.HTTP_APPLICATION_PROTOCOL, + wait=None, + ) +} + + +def launch_zkboost( + plan, + config_template, + participant_contexts, + participant_configs, + zkboost_params, + global_node_selectors, + global_tolerations, + port_publisher, + additional_service_index, + docker_cache_params, +): + tolerations = shared_utils.get_tolerations(global_tolerations=global_tolerations) + + first_real_el_endpoint = None + for index, participant in enumerate(participant_contexts): + el_type = participant_configs[index].el_type + if el_type != "dummy": + el_client = participant.el_context + first_real_el_endpoint = "http://{0}:{1}".format( + el_client.dns_name, el_client.rpc_port_num + ) + break + + zkvms = [] + for zkvm in zkboost_params.zkvms: + entry = { + "Kind": zkvm["kind"], + "ProofType": zkvm["proof_type"], + } + if zkvm["kind"] == "external": + fail("TODO: external zkvm kind is not yet supported") + elif zkvm["kind"] == "mock": + entry["MockProvingTimeMs"] = zkvm.get("mock_proving_time_ms", 5000) + entry["MockProofSize"] = zkvm.get("mock_proof_size", 1024) + zkvms.append(entry) + + template_data = { + "ELEndpoint": first_real_el_endpoint, + "WitnessTimeoutSecs": zkboost_params.witness_timeout_secs, + "ProofTimeoutSecs": zkboost_params.proof_timeout_secs, + "ProofCacheSize": zkboost_params.proof_cache_size, + "WitnessCacheSize": zkboost_params.witness_cache_size, + "Zkvms": zkvms, + } + + template_and_data = shared_utils.new_template_and_data( + config_template, template_data + ) + template_and_data_by_rel_dest_filepath = {} + template_and_data_by_rel_dest_filepath[ZKBOOST_CONFIG_FILENAME] = template_and_data + + config_files_artifact_name = plan.render_templates( + template_and_data_by_rel_dest_filepath, "zkboost-config" + ) + config = get_config( + config_files_artifact_name, + zkboost_params, + global_node_selectors, + tolerations, + port_publisher, + additional_service_index, + docker_cache_params, + ) + + plan.add_service(SERVICE_NAME, config) + + +def get_config( + config_files_artifact_name, + zkboost_params, + node_selectors, + tolerations, + port_publisher, + additional_service_index, + docker_cache_params, +): + config_file_path = shared_utils.path_join( + ZKBOOST_CONFIG_MOUNT_DIRPATH_ON_SERVICE, + ZKBOOST_CONFIG_FILENAME, + ) + + public_ports = shared_utils.get_additional_service_standard_public_port( + port_publisher, + constants.HTTP_PORT_ID, + additional_service_index, + 0, + ) + + IMAGE_NAME = shared_utils.docker_cache_image_calc( + docker_cache_params, + zkboost_params.image, + ) + + return ServiceConfig( + image=IMAGE_NAME, + ports=USED_PORTS, + public_ports=public_ports, + files={ + ZKBOOST_CONFIG_MOUNT_DIRPATH_ON_SERVICE: config_files_artifact_name, + }, + entrypoint=["/usr/local/bin/zkboost-server"], + cmd=["--config", config_file_path], + env_vars=zkboost_params.env, + min_cpu=MIN_CPU, + max_cpu=MAX_CPU, + min_memory=MIN_MEMORY, + max_memory=MAX_MEMORY, + node_selectors=node_selectors, + tolerations=tolerations, + ready_conditions=ReadyCondition( + recipe=GetHttpRequestRecipe( + port_id=constants.HTTP_PORT_ID, + endpoint="/health", + ), + field="code", + assertion="==", + target_value=200, + ), + ) diff --git a/static_files/ews-config/config.toml.tmpl b/static_files/ews-config/config.toml.tmpl deleted file mode 100644 index 83e0e4c96..000000000 --- a/static_files/ews-config/config.toml.tmpl +++ /dev/null @@ -1,21 +0,0 @@ -output_dir = "." -chain = "{{ .Network }}" -retain = {{ .Retain }} -num_proofs = {{ .NumProofs }} - -[[endpoints]] -name = "{{ .ELClientInfo.FullName }}" -el_url = "{{ .ELClientInfo.EL_HTTP_URL }}" -el_ws_url = "{{ .ELClientInfo.EL_WS_URL }}" - -[[cl_endpoints]] -name = "{{ .HeadSubscriptionCLInfo.FullName }}" -url = "{{ .HeadSubscriptionCLInfo.CL_HTTP_URL }}" -zkvm = false - -{{ range $clClient := .ZkvmCLClientInfo }} -[[cl_endpoints]] -name = "{{ $clClient.FullName }}" -url = "{{ $clClient.CL_HTTP_URL }}" -zkvm = true -{{ end }} diff --git a/static_files/zkboost-config/config.toml.tmpl b/static_files/zkboost-config/config.toml.tmpl new file mode 100644 index 000000000..49df1d206 --- /dev/null +++ b/static_files/zkboost-config/config.toml.tmpl @@ -0,0 +1,17 @@ +el_endpoint = "{{ .ELEndpoint }}" +witness_timeout_secs = {{ .WitnessTimeoutSecs }} +proof_timeout_secs = {{ .ProofTimeoutSecs }} +proof_cache_size = {{ .ProofCacheSize }} +witness_cache_size = {{ .WitnessCacheSize }} +{{ range $zkvm := .Zkvms }} +[[zkvm]] +kind = "{{ $zkvm.Kind }}" +proof_type = "{{ $zkvm.ProofType }}" +{{- if eq $zkvm.Kind "external" }} +endpoint = "{{ $zkvm.Endpoint }}" +{{- end }} +{{- if eq $zkvm.Kind "mock" }} +mock_proving_time_ms = {{ $zkvm.MockProvingTimeMs }} +mock_proof_size = {{ $zkvm.MockProofSize }} +{{- end }} +{{ end }} From dbf50775458f4296e190d6b0f7e5fc5403ff082f Mon Sep 17 00:00:00 2001 From: han0110 Date: Mon, 23 Mar 2026 15:23:55 +0000 Subject: [PATCH 2/2] fix: update document; fix input_parser.star; tweak config ordering --- README.md | 39 +++++++++++++++++++++---------- src/package_io/input_parser.star | 15 ++++-------- src/package_io/sanity_check.star | 2 +- src/zkboost/zkboost_launcher.star | 2 +- 4 files changed, 33 insertions(+), 25 deletions(-) diff --git a/README.md b/README.md index 7a849b971..a6bbe6520 100644 --- a/README.md +++ b/README.md @@ -961,7 +961,7 @@ additional_services: - dora - dugtrio - erpc - - ews + - zkboost - forkmon - forky - full_beaconchain_explorer @@ -1084,18 +1084,33 @@ bootnodoor_params: # A list of optional extra args the bootnodoor container should spin up with extra_args: [] -# Configuration place for execution-witness-sentry (ews) - https://github.com/eth-act/zkboost -ews_params: - # EWS docker image to use +# Configuration place for zkboost - https://github.com/eth-act/zkboost +zkboost_params: + # zkboost docker image to use # Defaults to the latest image - image: "ghcr.io/eth-act/zkboost/execution-witness-sentry:latest" - # Number of execution witnesses to retain - # Defaults to 10 - retain: 10 - # Number of proofs to generate - # Defaults to 1 - num_proofs: 1 - # A list of optional extra env_vars the ews container should spin up with + image: "ghcr.io/eth-act/zkboost/zkboost-server:latest" + # Timeout in seconds for witness fetching + # Defaults to 12 + witness_timeout_secs: 12 + # Timeout in seconds for proof generation + # Defaults to 12 + proof_timeout_secs: 12 + # Number of witnesses to cache + # Defaults to 128 + witness_cache_size: 128 + # Number of proofs to cache + # Defaults to 128 + proof_cache_size: 128 + # List of zkVM configurations + # Each entry has: kind (mock/external), proof_type, and kind-specific options + # Example: + # zkvms: + # - kind: mock + # proof_type: reth-zisk + # mock_proving_time_ms: 5000 + # mock_proof_size: 1024 + zkvms: [] + # A list of optional extra env_vars the zkboost container should spin up with env: {} # Configuration place for tempo tracing backend diff --git a/src/package_io/input_parser.star b/src/package_io/input_parser.star index 18596a766..e6c985dd5 100644 --- a/src/package_io/input_parser.star +++ b/src/package_io/input_parser.star @@ -475,21 +475,14 @@ def input_parser(plan, input_args): ) ) - if "ews" in result["additional_services"]: + if "zkboost" in result["additional_services"]: has_non_dummy_el = False - has_dummy_el = False for participant in result["participants"]: if participant["el_type"] != "dummy": has_non_dummy_el = True - else: - has_dummy_el = True if not has_non_dummy_el: fail( - "ews (execution-witness-sentry) is enabled but all participants are using dummy EL. At least one participant must use a real EL client (geth, reth, nethermind, etc.) to produce blocks." - ) - if not has_dummy_el: - fail( - "ews (execution-witness-sentry) is enabled but no participants are using dummy EL. At least one participant must use dummy EL to receive execution witnesses." + "zkboost is enabled but all participants are using dummy EL. At least one participant must use a real EL client (geth, reth, nethermind, etc.) to produce blocks." ) if ( @@ -980,8 +973,8 @@ def input_parser(plan, input_args): image=result["zkboost_params"]["image"], witness_timeout_secs=result["zkboost_params"]["witness_timeout_secs"], proof_timeout_secs=result["zkboost_params"]["proof_timeout_secs"], - proof_cache_size=result["zkboost_params"]["proof_cache_size"], witness_cache_size=result["zkboost_params"]["witness_cache_size"], + proof_cache_size=result["zkboost_params"]["proof_cache_size"], zkvms=result["zkboost_params"]["zkvms"], env=result["zkboost_params"]["env"], ), @@ -1993,8 +1986,8 @@ def get_default_zkboost_params(): "image": constants.DEFAULT_ZKBOOST_IMAGE, "witness_timeout_secs": 12, "proof_timeout_secs": 12, - "proof_cache_size": 128, "witness_cache_size": 128, + "proof_cache_size": 128, "zkvms": [], "env": {}, } diff --git a/src/package_io/sanity_check.star b/src/package_io/sanity_check.star index 32fb99391..386333da5 100644 --- a/src/package_io/sanity_check.star +++ b/src/package_io/sanity_check.star @@ -450,8 +450,8 @@ SUBCATEGORY_PARAMS = { "image", "witness_timeout_secs", "proof_timeout_secs", - "proof_cache_size", "witness_cache_size", + "proof_cache_size", "zkvms", "env", ], diff --git a/src/zkboost/zkboost_launcher.star b/src/zkboost/zkboost_launcher.star index 17dfd54ba..aad6e5ece 100644 --- a/src/zkboost/zkboost_launcher.star +++ b/src/zkboost/zkboost_launcher.star @@ -65,8 +65,8 @@ def launch_zkboost( "ELEndpoint": first_real_el_endpoint, "WitnessTimeoutSecs": zkboost_params.witness_timeout_secs, "ProofTimeoutSecs": zkboost_params.proof_timeout_secs, - "ProofCacheSize": zkboost_params.proof_cache_size, "WitnessCacheSize": zkboost_params.witness_cache_size, + "ProofCacheSize": zkboost_params.proof_cache_size, "Zkvms": zkvms, }