ChainSafe / ChainSafe/lodestar

Combine builder preferences and proposer preferences services

Open
#9,919 0 comments 0 reactions 0 assignees View on GitHub
spec-gloas
Dominant language
TypeScript
Stars
1.4k
Forks
483
Avg merge
1d 18h
Merged PRs (30d)
156

Description

`ProposerPreferencesService` and `BuilderPreferencesService` share the same structure, both submit ahead of upcoming proposals using the same submission window, track submissions per epoch keyed by the proposer shuffling dependent root and resubmit when it shifts. They only differ in what they sign and where they submit, `SignedProposerPreferences` broadcast via the beacon node vs `BuilderPreferencesRequest` submitted to each configured builder.

The shared duty window and dependent root tracking could be extracted, or the two services combined into one.

See https://github.com/ChainSafe/lodestar/pull/9832#discussion_r3863586847

Contributor guide

Open the contributing guide

Research direction

Locate ProposerPreferencesService and BuilderPreferencesService, then read the linked pull request discussion about their shared structure. Compare their duty-window and dependent-root tracking with their distinct signing and submission paths; done means the shared behavior is consolidated without changing either submission flow.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
blockchain
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.