Skip to content

feat(client-clis): add besu EIP-8250 keyed nonce exception mappings - #3805

Merged
spencer-tb merged 1 commit into
ethereum:eips/bogota/eip-8250from
jflo:besu-keyed-nonce-mappings
Oct 13, 2026
Merged

spencer-tb merged 1 commit into
ethereum:eips/bogota/eip-8250from
jflo:besu-keyed-nonce-mappings

Conversation

@jflo

@jflo jflo commented Oct 13, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds Besu exception mappings for EIP-8250 keyed nonces, so consume classifies Besu's keyed nonce rejections. Without them they're reported as unmapped errors.

Exception Besu message
TYPE_6_INVALID_FRAME_FORMAT invalid nonce key count, nonce keys not strictly increasing, zero nonce key alongside other keys, nonce key exceeds 2^256-1, nonce sequence exceeds 2^64-1
NONCE_MISMATCH_TOO_LOW transaction nonce N below nonce key 0x… sequence M
NONCE_MISMATCH_TOO_HIGH transaction nonce N above nonce key 0x… sequence M

The existing account-nonce patterns are unchanged. The keyed-mismatch messages name the key and its sequence, which tells the two cases apart.

Testing

Besu's EIP-8250 implementation is on besu-eth/besu@bogota-devnet-1. With Besu's in-tree mirror of these patterns, tests-frames-devnet@v1.0.0's eip8250_keyed_nonces passes 92/92 in evmtool engine-test. Before the mapping, 19 of those cases were correct rejections reported as unmapped. I also checked each regex against the literal Besu messages from those runs.

Targeted at eips/bogota/eip-8250, following #3682, which landed the EIP-8141 mappings on the EIP branch.

🤖 Generated with Claude Code

Map Besu's keyed nonce errors: the malformed key-set and over-wide nonce
field messages to TYPE_6_INVALID_FRAME_FORMAT, and a keyed sequence
mismatch to NONCE_MISMATCH_TOO_LOW / NONCE_MISMATCH_TOO_HIGH. The
existing account-nonce patterns are kept for legacy transactions.
@jflo
jflo marked this pull request as ready for review October 13, 2026 16:45
@codecov

codecov Bot commented Oct 13, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
⚠️ Please upload report for BASE (eips/bogota/eip-8250@f1bd9f0). Learn more about missing BASE report.

Additional details and impacted files
@@                   Coverage Diff                   @@
##             eips/bogota/eip-8250    #3805   +/-   ##
=======================================================
  Coverage                        ?   95.01%           
=======================================================
  Files                           ?      678           
  Lines                           ?    41930           
  Branches                        ?     3933           
=======================================================
  Hits                            ?    39841           
  Misses                          ?     1453           
  Partials                        ?      636           
Flag Coverage Δ
unittests 95.01% <ø> (?)

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.

@spencer-tb
spencer-tb merged commit 3a876d5 into ethereum:eips/bogota/eip-8250 Oct 13, 2026
26 checks passed
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.

2 participants