Skip to content

feat(tests): EIP-8037 reject when calldata_floor > TX_MAX_GAS_LIMIT#2898

Open
chfast wants to merge 1 commit into
ethereum:devnets/bal/7from
chfast:feat/eip-8037-intrinsic-cap-at-validation
Open

feat(tests): EIP-8037 reject when calldata_floor > TX_MAX_GAS_LIMIT#2898
chfast wants to merge 1 commit into
ethereum:devnets/bal/7from
chfast:feat/eip-8037-intrinsic-cap-at-validation

Conversation

@chfast
Copy link
Copy Markdown
Member

@chfast chfast commented May 22, 2026

🗒️ Description

EIP-8037 requires max(intrinsic_regular, calldata_floor) <= TX_MAX_GAS_LIMIT. The existing tx.gas_limit < total_intrinsic check already covers the intrinsic-regular arm, so only the calldata_floor arm is observably untested.

Parametrize types 1 and 2 over floor_binds, intrinsic_binds, and neither_binds.

🔗 Related Issues or PRs

N/A.

✅ Checklist

  • All: Ran fast static checks to avoid unnecessary CI fails, see also Code Standards and Enabling Pre-commit Checks:
    just static
  • All: PR title adheres to the repo standard - it will be used as the squash commit message and should start type(scope):.
  • All: Considered updating the online docs in the ./docs/ directory.
  • All: Set appropriate labels for the changes (only maintainers can apply labels).
  • Tests: Ran mkdocs serve locally and verified the auto-generated docs for new tests in the Test Case Reference are correctly formatted.
  • Tests: For PRs implementing a missed test case, update the post-mortem document to add an entry the list.
  • Ported Tests: All converted JSON/YML tests from ethereum/tests or tests/static have been assigned @ported_from marker.

EIP-8037 requires max(intrinsic_regular, calldata_floor) <=
TX_MAX_GAS_LIMIT. The existing `tx.gas_limit < total_intrinsic` check
already covers the intrinsic-regular arm, so only the calldata_floor
arm is observably untested.

Parametrize types 1 and 2 over floor_binds, intrinsic_binds, and
neither_binds. evmone amsterdam/main without fd35d839 fails the
floor_binds rows; geth bal-devnet-7 and EELS pass all.
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