Skip to content

Support the debug_traceCall API #5778

Open
@Federico2014

Description

@Federico2014

Background

debug_traceCall is a method in the EVM that allows developers and users to trace the execution of a particular transaction or contract function call. This functionality is primarily used for debugging purposes, to understand how smart contracts are behaving during execution or to diagnose issues with transactions.

The EVM then executes the transaction or call in a special mode where it records detailed information about each step of the execution process. This information typically includes details such as:

  1. Opcode: The specific operation being executed.
  2. Gas consumption: The amount of gas consumed by each operation.
  3. Stack and memory state: The state of the EVM's stack and memory at each step.
  4. Contract calls: Details of any calls made to other contracts during execution.
  5. Storage changes: Any changes made to contract storage during execution.

The account abstract ERC4337 specification need to run debug_traceCall to enforce the validation rules on opcode and storage access, as well as to verify the entire batch transaction, and use the consumed gas for the actual transaction execution.

But debug_traceCall is not supported on Tron currently, so it may influence the implement of account abstract infrastracture on TRON.

Rationale

Smart contract wallets containing arbitrary verification logic instead of EOAs will be more and more popular in Web3, it is necessary to support account abstract on TRON. The Bundler module of account abstract infrastracture needs the debug_traceCall to enforce the user operation validation rules according to ERC4337 specification. So it may be necessary to support the debug_traceCall API on TRON.

Metadata

Metadata

Assignees

Type

No type

Projects

Status

To Do

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions