lighthouse
lighthouse copied to clipboard
Add builder_registration_pubkey_override to validator_definitions.yml
Issue Addressed
#3444
Proposed Changes
- Addition of builder_registration_pubkey_override to validator_definitions.yml
- if statement on publish_validator_registration_data that checks if builder_registration_pubkey_override is set for that specific validator if it is replace the local pubkey with the builder_registration_pubkey_override value
Additional Info
Required for compatability with distributed validators
hey @realbigsean thanks for all the help on the timestamp override for distributed validators https://github.com/sigp/lighthouse/pull/3445/files#diff-79106abede37aa138c12d928354bba4a13c50432e2f60365d34c0595b657b6b0
We discovered we have a similar issue with the pubkey field in the validator registration because each co-validator uses their local pubkey-share rather than the aggregated pubkey so the registration payloads don't match
unlike timestamp which could be a global override this time we'll need overrides for each specific container
thought process is to use validator_definitions.yml and add an optional field "builder_registration_pubkey_override"
if builder_registration_pubkey_override exist for the local pubkey then replace the pubkey field in the builder registration with builder_registration_pubkey_override otherwise continue as normal
I've had a go at drafting a rough PR but think i might be updating areas that don't need to be, some pointers on the PR in regards to which files don't need to be changed and the best way how to get access to the validator_definitions.yml within the preparation_service.rs would be greatly appreciated
Thanks for any help
Hey @ciaranmcveigh5, thanks for the contribution!
I pushed to your branch, to resolve some compilation issues and re-work the caching, I hope that's ok!
hey @realbigsean thanks so much for the help!
Once it's merged into unstable we can test it out in our ropsten cluster with the "latest-unstable" image and let you know how it goes!
really appreciate you guys supporting distributed validators!
I'm going to let someone else review this one as I've had my paws on it a bit too much
Note this version of lighthouse has been tested using @realbigsean container image
docker.io/seananderson33/lighthouse:builder-override
It was tested with a DV middleware on ropsten with 100 validators and I can confirm with this PR a distributed validator is able to register to the builder network and propose blinded blocks
Thanks for all the help and for supporting distributed validators!
Closing in favour of #4306