diff --git a/packages/testing/src/execution_testing/client_clis/transition_tool.py b/packages/testing/src/execution_testing/client_clis/transition_tool.py index 99874f296df..aad9f89a921 100644 --- a/packages/testing/src/execution_testing/client_clis/transition_tool.py +++ b/packages/testing/src/execution_testing/client_clis/transition_tool.py @@ -266,6 +266,13 @@ def collect_traces( for i, r in enumerate(receipts): trace_file_name = f"trace-{i}-{r.transaction_hash}.jsonl" trace_file_path = temp_dir_path / trace_file_name + if not trace_file_path.exists(): + # Transaction was rejected mid-processing (e.g. EIP-3607 + # collision): the receipt exists but the tracer's + # TransactionEnd event never fired, so no trace file was + # written. Record an empty trace for this tx. + traces.append(TransactionTraces(traces=[])) + continue if debug_output_path: shutil.copy( trace_file_path,