Skip to content

miniproject - feat(spec-specs,tooling): run EELS under hive consume engine (amsterdam) - #3363

Draft
spencer-tb wants to merge 3 commits into
ethereum:forks/amsterdamfrom
spencer-tb:amsterdam-execution-engine
Draft

miniproject - feat(spec-specs,tooling): run EELS under hive consume engine (amsterdam)#3363
spencer-tb wants to merge 3 commits into
ethereum:forks/amsterdamfrom
spencer-tb:amsterdam-execution-engine

Conversation

@spencer-tb

@spencer-tb spencer-tb commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Description

EELS side of running the spec as a client under hive's consume engine
(Amsterdam only).

Two layers:

  • src/ethereum/forks/amsterdam/execution_engine/: the consensus-layer
    ExecutionEngine interface, ported from projects/zkevm (minus the
    stateless/witness parts). verify_and_notify_new_payload validates an
    engine_newPayloadV5-shaped payload (block hash, blob versioned
    hashes) and applies it via state_transition.
  • src/ethereum_spec_tools/engine_server/: ethereum-spec-engine, a
    JSON-RPC server wrapping the interface. Loads a hive genesis file,
    serves engine_newPayloadV5 / engine_forkchoiceUpdatedV4 (JWT
    authenticated) plus the eth methods the simulator calls, and maps
    malformed params and execution-request/BAL encoding violations to the
    Engine API error codes (-32602, -38005).

Verified by replaying 625 filled blockchain_tests_engine fixtures
(push0, invalid BALs, withdrawals, deposits, blob txs) through the
server over HTTP with the execution_testing EngineRPC/EthRPC
clients, following the exact consume engine simulator sequence:
0 failures, including errorCode and INVALID-status expectations.

Follow-up (hive repo): a clients/eels definition that builds and
starts ethereum-spec-engine.

Related Issues or PRs

N/A.

Checklist

  • Ran fast static checks to avoid CI fails, see Code Standards & Verifying Changes: just static
  • PR title has the form <type>(<area>): <title>, where <type> and <area> come from an appropriate C-<type>, respectively A-<area>, label. The title should match the target squash commit message.

Cute Animal Picture

Put a link to a cute animal picture inside the parenthesis-->

@codecov

codecov Bot commented Aug 12, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 0% with 238 lines in your changes missing coverage. Please review.
✅ Project coverage is 80.99%. Comparing base (6e48089) to head (5e50a52).
⚠️ Report is 2 commits behind head on forks/amsterdam.

Files with missing lines Patch % Lines
...ereum/forks/amsterdam/execution_engine/requests.py 0.00% 113 Missing ⚠️
...um/forks/amsterdam/execution_engine/new_payload.py 0.00% 42 Missing ⚠️
...ethereum/forks/amsterdam/execution_engine/types.py 0.00% 35 Missing ⚠️
...s/amsterdam/execution_engine/validation_helpers.py 0.00% 33 Missing ⚠️
...ereum/forks/amsterdam/execution_engine/__init__.py 0.00% 5 Missing ⚠️
...ks/amsterdam/execution_engine/forkchoice_update.py 0.00% 5 Missing ⚠️
...um/forks/amsterdam/execution_engine/get_payload.py 0.00% 3 Missing ⚠️
src/ethereum/state_mpt.py 0.00% 2 Missing ⚠️

❗ There is a different number of reports uploaded between BASE (6e48089) and HEAD (5e50a52). Click for more details.

HEAD has 2 uploads less than BASE
Flag BASE (6e48089) HEAD (5e50a52)
unittests 6 4
Additional details and impacted files
@@                 Coverage Diff                  @@
##           forks/amsterdam    #3363       +/-   ##
====================================================
- Coverage            93.53%   80.99%   -12.55%     
====================================================
  Files                  624      631        +7     
  Lines                37070    37312      +242     
  Branches              3394     3420       +26     
====================================================
- Hits                 34675    30220     -4455     
- Misses                1645     6672     +5027     
+ Partials               750      420      -330     
Flag Coverage Δ
unittests 80.99% <0.00%> (-12.55%) ⬇️

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 changed the title feat(spec-specs): add consensus-layer execution engine interface to amsterdam feat(spec-specs,tooling): run EELS under hive consume engine (amsterdam) Aug 12, 2026
@spencer-tb spencer-tb changed the title feat(spec-specs,tooling): run EELS under hive consume engine (amsterdam) miniproject - feat(spec-specs,tooling): run EELS under hive consume engine (amsterdam) Aug 12, 2026
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