Skip to content

fix(validator): bound XMSS preparation progress - #1213

Open
groverInnovate wants to merge 2 commits into
leanEthereum:mainfrom
groverInnovate:codex/validator-preparation-progress
Open

groverInnovate wants to merge 2 commits into
leanEthereum:mainfrom
groverInnovate:codex/validator-preparation-progress

Conversation

@groverInnovate

@groverInnovate groverInnovate commented Oct 6, 2026 •

Copy link
Copy Markdown

Description

The validator's preparation loop can repeatedly rebuild trees for a slot outside key activation or behind the prepared window. Reject those slots before advancing, and reject an advancement that makes no forward progress, so an impossible duty cannot keep the service busy indefinitely.

Add service-level regressions for both proposal and attestation keys: activation boundaries, a discarded preparation window, no-progress advancement, rejection followed by valid signing, and successful multi-window advancement with role isolation. Preparation does not track signing history; this change adds no non-reuse policy.

Validation: the new cases yield 8 failures and 2 passes on the base revision, and all pass with the fix. Full unit suite: 2,137 passed . just check and just deadcode pass using existing cached tooling.

Related Issues or PRs

Separate from the signing-history policy in #1204.

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.

1 participant