Hello,
+1 to this feature, we (Kiln) operate around 60K validators and having a way to have sets of keys target different sets of relayers is important at scale, this is the reason why we pushed for this feature in commit-boost (and why we use commit-boost in production).
We did an initial attempt a few years ago in mev-boost in this PR but it didn’t make it. To give more light on what it solves there is some explanation here as well in the commit-boost community call.
At a high level, the mev-boost’s config could look like defining policies:
policies:
- name: "lido-policy"
relayers:
- name: relayer-1
url: ...
http-header: ...
- name: relayer-2
url: ...
http-header: ...
And later using them:
mappings:
- name: "default"
policy: "all-relayers"
filters:
public_keys: ["0x..", "0x...", ...]
- name: "lido-keys"
policy: "lido-policy"
filters:
public_keys: ["0x..", "0x...", ...]
Commit-boost supports multiple filters like, lido_node_operator_id
, (will fetch all lido keys for the operator so you don’t have to specify the full list of keys), ssv_operator_ids
, you can imagine other types of filters as well.
I’m unsure how this will play out with ePBS as it’s unclear what’s coming up at this stage.