Skip to content

fix(metering): pass parent_beacon_block_root for EIP-4788 compliance#481

Merged
niran merged 1 commit intomainfrom
fix/metering-eip4788-parent-beacon-root
Jan 15, 2026
Merged

fix(metering): pass parent_beacon_block_root for EIP-4788 compliance#481
niran merged 1 commit intomainfrom
fix/metering-eip4788-parent-beacon-root

Conversation

@niran
Copy link
Copy Markdown
Contributor

@niran niran commented Jan 14, 2026

Summary

  • Fix base_meterBundle RPC failing with "EIP-4788 parent beacon block root missing"
  • Add parent_beacon_block_root parameter to meter_bundle() function
  • Extract parent beacon block root from flashblock base payload (CL-provided) in RPC handler, falling back to header value

Context

Pending flashblock headers may omit the parent_beacon_block_root field, but EIP-4788 requires this value for block execution. The fix prefers the CL-provided value from the flashblock base payload when available.

Test plan

  • New unit test meter_bundle_requires_parent_beacon_block_root verifies behavior with and without the root
  • All existing metering tests pass
  • Re-run flashblocks-e2e metering tests against deployed node

The `base_meterBundle` RPC was failing on Cancun-activated chains with
"EIP-4788 parent beacon block root missing" because pending flashblock
headers may omit the parent_beacon_block_root field. This adds explicit
parameter passing from the flashblock base payload (CL-provided) to the
meter_bundle function, falling back to the header value if available.
@cb-heimdall
Copy link
Copy Markdown
Collaborator

cb-heimdall commented Jan 14, 2026

✅ Heimdall Review Status

Requirement Status More Info
Reviews 1/1
Denominator calculation
Show calculation
1 if user is bot 0
1 if user is external 0
2 if repo is sensitive 0
From .codeflow.yml 1
Additional review requirements
Show calculation
Max 0
0
From CODEOWNERS 0
Global minimum 0
Max 1
1
1 if commit is unverified 0
Sum 1

@niran niran marked this pull request as ready for review January 15, 2026 02:45
@niran niran added this pull request to the merge queue Jan 15, 2026
Merged via the queue into main with commit 1a696db Jan 15, 2026
16 checks passed
@niran niran deleted the fix/metering-eip4788-parent-beacon-root branch January 15, 2026 02:59
haardikk21 pushed a commit that referenced this pull request Mar 17, 2026
…481)

The `base_meterBundle` RPC was failing on Cancun-activated chains with
"EIP-4788 parent beacon block root missing" because pending flashblock
headers may omit the parent_beacon_block_root field. This adds explicit
parameter passing from the flashblock base payload (CL-provided) to the
meter_bundle function, falling back to the header value if available.
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