go-ethereum/eth/tracers/native
felipe b9c5fe6d26
eth/tracers: fix evm trace for t8n (#34862)
The mux tracer fanned out every standard hook to its children but never
forwarded OnSystemCall{Start,End}. Tracers that rely on these - like
`logger.jsonLogger`, which uses the start hook to silence its opcode
hook for the duration of a system call - never got the signal when
wrapped behind a mux.

In evm t8n, combining `--trace` with `--opcode-count` (default for geth
with exec specs) produces exactly that wrapping. The first system call
(e.g. `ProcessBeaconBlockRoot`) then fires `OnOpcode` on the json logger
before any `OnTxStart` has run, dereferencing a nil env and crashing
t8n.

Forward both hooks through the mux. The V2 fan-out falls back to V1 for
children that only implement the legacy hook, mirroring the precedence
already used in `core/state_processor.go`.
2026-05-01 16:38:33 +02:00
..
4byte.go eth/tracers: various fixes (#30540) 2024-10-17 06:51:47 +02:00
call.go eth/tracers/native: add index to callTracer log (#33629) 2026-01-28 13:32:27 +01:00
call_flat.go all: update license comments and AUTHORS (#31133) 2025-02-05 23:01:17 +01:00
call_flat_test.go eth/tracers: various fixes (#30540) 2024-10-17 06:51:47 +02:00
erc7562.go eth/tracers/native: include SWAP16 in default ignored opcodes (#33381) 2025-12-10 15:13:47 +08:00
gen_account_json.go eth/tracers: fix codehash in prestate diffmode (#34675) 2026-04-16 16:51:26 +08:00
gen_callframe_json.go eth/tracers/native: set created address to nil in case of failure (#26779) 2023-03-07 14:39:11 +01:00
gen_callframewithopcodes_json.go eth/tracers/native: add erc7562 tracer (#31006) 2025-05-20 15:38:33 +02:00
gen_flatcallaction_json.go eth/tracers: add native flatCallTracer (aka parity style tracer) (#26377) 2023-02-28 13:54:37 +03:30
gen_flatcallresult_json.go eth/tracers: add native flatCallTracer (aka parity style tracer) (#26377) 2023-02-28 13:54:37 +03:30
keccak256_preimage.go eth/tracers/native: add keccak256preimage tracer (#32569) 2025-09-26 18:05:27 +02:00
keccak256_preimage_test.go eth/tracers/native: add keccak256preimage tracer (#32569) 2025-09-26 18:05:27 +02:00
mux.go eth/tracers: fix evm trace for t8n (#34862) 2026-05-01 16:38:33 +02:00
noop.go eth/tracers: various fixes (#30540) 2024-10-17 06:51:47 +02:00
opcode_counter.go cmd/evm: add --opcode.count flag to t8n (#33800) 2026-02-17 20:42:53 +01:00
prestate.go eth/tracers: fix codehash in prestate diffmode (#34675) 2026-04-16 16:51:26 +08:00