Skip to content

refactor(reth-bench): make payload handling ethereum-only#23324

Merged
mattsse merged 9 commits into
paradigmxyz:mainfrom
mattsse:codex/pr-23262-eth-only
Apr 1, 2026
Merged

refactor(reth-bench): make payload handling ethereum-only#23324
mattsse merged 9 commits into
paradigmxyz:mainfrom
mattsse:codex/pr-23262-eth-only

Conversation

@mattsse
Copy link
Copy Markdown
Collaborator

@mattsse mattsse commented Apr 1, 2026

Reworks the current reth-bench refactor away from a generic payload converter and back to a simpler Ethereum-only implementation.

This removes the temporary OP-stack transaction and payload handling from the replay and standalone payload commands, deletes the new trait abstraction, and adds focused serializer tests around standard Ethereum V3/V4 engine_newPayload* encoding. Unsupported OP-style blocks now fail during conversion instead of being conditionally supported.

This keeps the scope on reth-bench without touching the broader repo-level op-alloy plumbing, which is still used elsewhere.

Checks:

  • cargo check -p reth-bench
  • cargo test -p reth-bench
  • cargo +nightly fmt --all --check
  • zepter
  • make lint-toml

decofe and others added 3 commits March 28, 2026 07:45
…er trait

Introduces a PayloadConverter trait that abstracts chain-specific block-to-payload
and payload-to-engine-params conversions. Provides EthereumPayloadConverter as the
default implementation, removing the need for op-alloy-consensus and
op-alloy-rpc-types-engine dependencies.

Co-authored-by: Matthias Seitz <19890894+mattsse@users.noreply.github.com>
Amp-Thread-ID: https://ampcode.com/threads/T-019d32ff-4f3d-761d-a844-5e5be8780a61
Co-Authored-By: Matthias Seitz <19890894+mattsse@users.noreply.github.com>
@github-project-automation github-project-automation Bot moved this to Backlog in Reth Tracker Apr 1, 2026
@mattsse mattsse changed the title refactor(reth-bench): remove temporary opstack support refactor(reth-bench): make payload handling ethereum-only Apr 1, 2026
@github-project-automation github-project-automation Bot moved this from Backlog to In Progress in Reth Tracker Apr 1, 2026
@mattsse mattsse added this pull request to the merge queue Apr 1, 2026
Merged via the queue into paradigmxyz:main with commit 90dfaac Apr 1, 2026
35 checks passed
@mattsse mattsse deleted the codex/pr-23262-eth-only branch April 1, 2026 12:15
@github-project-automation github-project-automation Bot moved this from In Progress to Done in Reth Tracker Apr 1, 2026
github-merge-queue Bot pushed a commit to tempoxyz/tempo that referenced this pull request Apr 3, 2026
Automated nightly update of reth dependencies from `paradigmxyz/reth`
main branch.

## Upstream reth changes


[`f8efc76...c82d435`](paradigmxyz/reth@f8efc76...c82d435)

🔗 Amp thread:
https://ampcode.com/threads/T-019d517e-981b-75fd-b3cf-8ad2455f38f6
**RPC**
- Remove `0x` prefix from `admin_peers` id and return keccak256 node ID
in `admin_nodeInfo.id` to match go-ethereum format
([#23318](paradigmxyz/reth#23318),
[#23319](paradigmxyz/reth#23319))
- Apply count filter only after `after` is consumed in pagination
([#23338](paradigmxyz/reth#23338))
- Pre-allocate vectors in `eth_feeHistory`
([#23334](paradigmxyz/reth#23334))
- Add `bal` RPC methods
([#23330](paradigmxyz/reth#23330))

**Engine**
- Include backpressure in reported `persistence_wait`, make wait-time
mimic CL slot time
([#23308](paradigmxyz/reth#23308))

**Perf**
- Reduce cacheline ping-pong in workers availability
([#23321](paradigmxyz/reth#23321))

**Net**
- Avoid itertools `Format` panic in tracing log
([#23331](paradigmxyz/reth#23331))

**DB**
- Cap `storage_v2` unwind history by MDBX tip
([#23335](paradigmxyz/reth#23335))

**Bench**
- Add warmup step for big blocks mode
([#23323](paradigmxyz/reth#23323))
- Make payload handling ethereum-only
([#23324](paradigmxyz/reth#23324))
- Use repository instead of GitHub Actions cache to track hourly runs
([#23306](paradigmxyz/reth#23306))
- Upload nightly regression results to ClickHouse
([#23344](paradigmxyz/reth#23344))

**Chore**
- Migrate `allow(clippy::` to `expect(clippy::`
([#23340](paradigmxyz/reth#23340))
- Remove unused return value from `dispatch_with_chunking`
([#23341](paradigmxyz/reth#23341))
- Update nixpkgs to 25.11 and refresh flake inputs
([#23342](paradigmxyz/reth#23342))

## Migrations

🔗 Amp thread:
https://ampcode.com/threads/T-019d517e-baf0-727b-a57e-0488240af973
- **Reth dependency bump**: All `reth-*` git dependencies updated from
rev `f8efc76` to `c82d435`
- **New `GetBlockAccessList` trait impl**: `TempoEthApi` now implements
`GetBlockAccessList` (imported from `reth_rpc_eth_api::helpers::bal`),
likely a new required trait added upstream in the reth update

[GitHub
Workflow](https://github.com/tempoxyz/tempo/actions/runs/23933027282)

---------

Co-authored-by: Arsenii Kulikov <klkvrr@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

4 participants