Skip to content

feat(client): spawn LH ProposerPreferencesService with AnchorValidatorStore backend - #1144

Merged
mergify[bot] merged 1 commit into
sigp:epbsfrom
petarjuki7:feat/proposer-preferences-service
Jul 22, 2026
Merged

feat(client): spawn LH ProposerPreferencesService with AnchorValidatorStore backend#1144
mergify[bot] merged 1 commit into
sigp:epbsfrom
petarjuki7:feat/proposer-preferences-service

Conversation

@petarjuki7

Copy link
Copy Markdown
Member

Part of #1064 (ePBS Proposer Preferences duty milestone, SIP-94 §5).

Wires Lighthouse's ProposerPreferencesService (with AnchorValidatorStore as the backend) into client startup, inside the existing is_gloas_scheduled() gate next to PayloadAttestationService. Completes the Anchor-side pipeline: LH's service drives sign_proposer_preferences (#1063) per validator per epoch, dispatching both proposal_data and the signing through Anchor's ValidatorStore impl.

No new tests: the client crate has none and no sibling spawned service is tested — the behavior is LH's; Anchor's role is wiring (compile + startup).

Stacked on #1125 (#1063) — those commits drop out of this diff once it merges.

End-to-end SIP-94 §5 behavior additionally needs the upstream LH fix that schedules newly-added (dependent_root, proposal_slot, validator) tuples (the current key is (epoch, dependent_root) only); tracked in the issue.

@petarjuki7
petarjuki7 requested review from jnhsigmap and shane-moore and removed request for jnhsigmap July 16, 2026 09:49
@codecov-commenter

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 92.88538% with 18 lines in your changes missing coverage. Please review.
⚠️ Please upload report for BASE (epbs@078dd90). Learn more about missing BASE report.

Files with missing lines Patch % Lines
anchor/client/src/lib.rs 0.00% 9 Missing ⚠️
anchor/validator_store/src/lib.rs 90.74% 5 Missing ⚠️
...alidator_store/src/testing/proposer_preferences.rs 98.27% 3 Missing ⚠️
anchor/validator_store/src/instrumentation.rs 75.00% 1 Missing ⚠️
Additional details and impacted files
@@           Coverage Diff           @@
##             epbs    #1144   +/-   ##
=======================================
  Coverage        ?   67.85%           
=======================================
  Files           ?      164           
  Lines           ?    30720           
  Branches        ?        0           
=======================================
  Hits            ?    20844           
  Misses          ?     9876           
  Partials        ?        0           
Flag Coverage Δ
rust 67.85% <92.88%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

…rStore backend

Construct Lighthouse's ProposerPreferencesService with AnchorValidatorStore
and start it via start_update_service(), inside the existing
is_gloas_scheduled() gate next to PayloadAttestationService. Completes the
Anchor-side ProposerPreferences pipeline: LH's service drives
sign_proposer_preferences (sigp#1063) per validator per epoch, dispatching both
proposal_data and signing through Anchor's ValidatorStore impl.

Part of sigp#1064.
@petarjuki7
petarjuki7 force-pushed the feat/proposer-preferences-service branch from 95254b7 to d09f9d1 Compare July 22, 2026 13:49

@shane-moore shane-moore left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@mergify

mergify Bot commented Jul 22, 2026

Copy link
Copy Markdown

Queued — the merge queue status continues in this comment ↓.

@mergify

mergify Bot commented Jul 22, 2026

Copy link
Copy Markdown

Merge Queue Status

This pull request spent 41 minutes 5 seconds in the queue, including 39 minutes 1 second running CI.

Required conditions to merge
  • check-success=cli-reference-check
  • check-success=run-local-testnet
  • check-success=test-suite-success

@mergify mergify Bot added the queued label Jul 22, 2026
@mergify
mergify Bot merged commit 854ad11 into sigp:epbs Jul 22, 2026
22 checks passed
@mergify mergify Bot removed the queued label Jul 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants