go-ethereum/eth/tracers
Daniel Liu 296d612167
fix(eth): align traceBlockParallel with Prague parent-hash pre-exec (#2067)
traceBlockParallel replays transactions from the parent state to build per-tx prestate for tracers. In the previous flow, Prague's parent-hash system contract processing was not applied before replay, so the prepared state could diverge from canonical block execution semantics.

This commit keeps the parallel tracing path consistent with block processing rules by applying ProcessParentBlockHash before tx replay when Prague is active.

The regression test TestTraceBlockParallelPragueParentHashSystemCall is strengthened to assert the actual EIP-2935 history slot value (ring-buffer key for block-1) equals block.ParentHash(), instead of relying on an indirect EXTCODESIZE side effect. This makes the test deterministic and directly tied to the bug.

Validation: go test ./eth/tracers -run TestTraceBlockParallelPragueParentHashSystemCall
2026-02-17 15:00:55 +05:30
..
internal refactor(all): rework EVM constructor #30745 (#2065) 2026-02-17 14:35:18 +05:30
js refactor(all): rework EVM constructor #30745 (#2065) 2026-02-17 14:35:18 +05:30
live eth/tracers: various fixes #30540 (#1491) 2025-09-17 09:04:38 +08:00
logger refactor(all): rework EVM constructor #30745 (#2065) 2026-02-17 14:35:18 +05:30
native core, core/types: rename AuthList to SetCodeAuthorizations #30935 (#1884) 2025-12-23 15:40:53 +05:30
api.go fix(eth): align traceBlockParallel with Prague parent-hash pre-exec (#2067) 2026-02-17 15:00:55 +05:30
api_test.go fix(eth): align traceBlockParallel with Prague parent-hash pre-exec (#2067) 2026-02-17 15:00:55 +05:30
dir.go eth/tracers: various fixes #30540 (#1491) 2025-09-17 09:04:38 +08:00
live.go eth/tracers: various fixes #30540 (#1491) 2025-09-17 09:04:38 +08:00
tracers_test.go refactor(all): rework EVM constructor #30745 (#2065) 2026-02-17 14:35:18 +05:30
tracker.go eth/traces: add state limit #25812 (#1300) 2025-09-09 07:03:24 +08:00
tracker_test.go eth/traces: add state limit #25812 (#1300) 2025-09-09 07:03:24 +08:00