Skip to content

Conversation

@petrokamin10
Copy link

Previously, when state_by_block_hash failed, the validator returned Ok(()), effectively skipping withdrawals root verification for blocks whose parent was not yet in the canonical chain.
This created a window where blocks could bypass a critical consensus check during reorgs or while processing non-canonical branches.

  • Fix OpEngineValidator::validate_block_post_execution_with_hashed_state to always validate the Isthmus withdrawals root, even when the parent block state is not yet canonical.
  • Resolve state lookups by first trying historical state and then pending state; if neither is available, return a consensus error instead of silently accepting the block.

@github-project-automation github-project-automation bot moved this to Backlog in Reth Tracker Nov 27, 2025
@petrokamin10 petrokamin10 marked this pull request as ready for review November 27, 2025 16:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Backlog

Development

Successfully merging this pull request may close these issues.

1 participant