Hello everyone, I am attempting to filter and recreate internal transactions given a debug_traceTransaction response and the {tracer: "callTracer"} tracer. An example transaction can be found here: https://snowtrace.io/tx/0x20177106356d1d2d7c809dd870a7b68a12245c1a965ebd7a02aa987572616f44#internal

I understand that this is the Avalanche C-chain and not Ethereum, but both are EVMs and I assume that there is no significant difference. I have created a solution that filters calls given an output from the debug_traceTransaction that seemingly works fine, but I would like to confirm my findings with the community since my approach is only empirical. The filter I am applying:

  1. A call must not be at the top of the stack.
  2. A call must have a defined value associated with it.
  3. A call must have a value different from 0 associated with it.

The question

What is the minimum filter that can be applied to a debug_traceTransaction response with the {tracer: "callTracer"} tracer to uniquely identify and recreate internal transactions, such that the internal transactions recreated this way contain at least the fields from, to and value?


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.