Skip to content

Commit fdc3cc3

Browse files
committed
Merge branch 'main' into improve-http-handling
2 parents 24eeb8c + 7192cc2 commit fdc3cc3

2 files changed

Lines changed: 16 additions & 10 deletions

File tree

config.example.toml

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ min_bid_eth = 0.0
4949
# to force local building and miniminzing the risk of missed slots. See also the timing games section below
5050
# OPTIONAL, DEFAULT: 2000
5151
late_in_slot_time_ms = 2000
52-
# Whether to enable extra validation of get_header responses, if this is enabled you need to set `rpc_url`
52+
# Whether to enable extra validation of get_header responses, if this is enabled `rpc_url` must also be set
5353
# OPTIONAL, DEFAULT: false
5454
extra_validation_enabled = false
5555
# Execution Layer RPC url to use for extra validation
@@ -58,6 +58,9 @@ rpc_url = "https://ethereum-holesky-rpc.publicnode.com"
5858
# Timeout for any HTTP requests sent from the PBS module to other services, in seconds
5959
# OPTIONAL, DEFAULT: 10
6060
http_timeout_seconds = 10
61+
# Maximum number of retries for validator registrations per relay
62+
# OPTIONAL, DEFAULT: 3
63+
register_validator_retry_limit = 3
6164

6265
# The PBS module needs one or more [[relays]] as defined below.
6366
[[relays]]
@@ -117,23 +120,25 @@ validator_pubkeys = [
117120
"0x80c7f782b2467c5898c5516a8b6595d75623960b4afc4f71ee07d40985d20e117ba35e7cd352a3e75fb85a8668a3b745",
118121
"0xa119589bb33ef52acbb8116832bec2b58fca590fe5c85eac5d3230b44d5bc09fe73ccd21f88eab31d6de16194d17782e",
119122
]
120-
# Path to a file containing a list of validator pubkeys or details of a registry to load keys from.
121-
# Supported registries:
122-
# - Lido: NodeOperatorsRegistry
123-
# - SSV: SSV API
124-
# OPTIONAL
125-
loader = "./tests/data/mux_keys.example.json"
126-
# URL to HTTP endpoint returning JSON list of validator pubkeys
127-
# Example response:
123+
# Loader for validator pubkeys. Three types of loaders are supported:
124+
# - File: path to a file containing a list of validator pubkeys in JSON format
125+
# - URL: URL to an HTTP endpoint returning a list of validator pubkeys in JSON format
126+
# - Registry: details of a registry to load keys from. Supported registries:
127+
# - Lido: NodeOperatorsRegistry
128+
# - SSV: SSV API
129+
#
130+
# Example JSON list:
128131
# [
129132
# "0x80c7f782b2467c5898c5516a8b6595d75623960b4afc4f71ee07d40985d20e117ba35e7cd352a3e75fb85a8668a3b745",
130133
# "0xa119589bb33ef52acbb8116832bec2b58fca590fe5c85eac5d3230b44d5bc09fe73ccd21f88eab31d6de16194d17782e"
131134
#]
135+
# OPTIONAL
136+
loader = "./tests/data/mux_keys.example.json"
132137
# loader = { url = "http://localhost:8000/keys" }
133138
# loader = { registry = "lido", node_operator_id = 8 }
134139
# loader = { registry = "ssv", node_operator_id = 8 }
135-
timeout_get_header_ms = 900
136140
late_in_slot_time_ms = 1500
141+
timeout_get_header_ms = 900
137142
# For each mux, one or more [[mux.relays]] can be defined, which will be used for the matching validator pubkeys
138143
# Only the relays defined here will be used, and the relays defined in the main [[relays]] config will be ignored
139144
# The fields specified here are the same as in [[relays]] (headers, get_params, enable_timing_games, target_first_request_ms, frequency_get_header_ms)

crates/common/src/config/mux.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,7 @@ impl PbsMuxes {
9797
.unwrap_or(default_pbs.late_in_slot_time_ms),
9898
..default_pbs.clone()
9999
};
100+
config.validate(chain).await?;
100101
let config = Arc::new(config);
101102

102103
let runtime_config = RuntimeMuxConfig { id: mux.id, config, relays: relay_clients };

0 commit comments

Comments
 (0)