Skip to content

Conversation

@dmitrylavrenov
Copy link
Contributor

@dmitrylavrenov dmitrylavrenov commented May 7, 2025

No description provided.

@dmitrylavrenov dmitrylavrenov force-pushed the evm-tracing-runtime branch 16 times, most recently from e7d721a to 25340f5 Compare May 9, 2025 10:47
@dmitrylavrenov dmitrylavrenov force-pushed the evm-tracing-runtime branch 2 times, most recently from 7949d23 to 13c0618 Compare June 17, 2025 09:32
@dmitrylavrenov dmitrylavrenov changed the title Integrate EVM tracer related logic at runtime level Integrate EVM tracer Jun 17, 2025
@dmitrylavrenov dmitrylavrenov changed the title Integrate EVM tracer Integrate EVM debug tracing logic Jun 18, 2025
@dmitrylavrenov dmitrylavrenov changed the title Integrate EVM debug tracing logic [helper] Integrate EVM debug tracing logic at runtime level Jun 18, 2025
@dmitrylavrenov dmitrylavrenov changed the base branch from master to evm-debug-trace June 18, 2025 09:39
@dmitrylavrenov dmitrylavrenov changed the title [helper] Integrate EVM debug tracing logic at runtime level Integrate EVM debug tracing logic at runtime level Jun 18, 2025
@dmitrylavrenov dmitrylavrenov force-pushed the evm-tracing-runtime branch 2 times, most recently from d6d5db8 to 6054bed Compare June 20, 2025 09:48
@dmitrylavrenov dmitrylavrenov mentioned this pull request Jun 20, 2025
9 tasks
@MOZGIII MOZGIII requested a review from Copilot June 23, 2025 15:12
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR integrates EVM debug tracing support at the runtime level by adding new modules, runtime APIs, and event propagation for EVM, gasometer, and runtime events. Key changes include updates to feature definitions (adding new tracing modules), the implementation of a new runtime interface for EVM tracing in primitives-evm-tracing-ext, and modifications in humanode-runtime to integrate and expose the evm-debug-api functionalities.

Reviewed Changes

Copilot reviewed 14 out of 15 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
utils/checks/snapshots/features.yaml Added new feature entries for evm-debug-api, primitives-evm-tracing-events, and primitives-evm-tracing-ext.
crates/primitives-evm-tracing-ext/src/lib.rs Introduced the EvmTracingExt trait with host function wrappers for decoding and emitting EVM events.
crates/primitives-evm-tracing-events/* Added event definitions and conversion functions for EVM events, gasometer events, and runtime events.
crates/humanode-runtime/src/lib.rs Integrated EVM tracing into runtime APIs (trace_transaction, trace_block, trace_call).
crates/humanode-runtime/src/evm_tracer.rs Implemented the EvmTracer that sets up event listener proxies and calls corresponding host functions.
Remaining Cargo.toml files Updated dependencies and feature flags to support the new EVM tracing functionality.
crates/evm-debug-api/* Exposed the runtime API for the EVM debug logic using sp_api.
Comments suppressed due to low confidence (1)

crates/humanode-runtime/src/lib.rs:1518

  • The new EVM tracing integration in the extrinsics loop lacks explicit test coverage. Consider adding unit or integration tests to verify that EVM transactions and non-Ethereum extrinsics are traced correctly.
                    RuntimeCall::Ethereum(transact { transaction }) => {

@dmitrylavrenov dmitrylavrenov force-pushed the evm-tracing-runtime branch 2 times, most recently from 975b1d8 to e096ced Compare August 26, 2025 18:13
@dmitrylavrenov dmitrylavrenov marked this pull request as ready for review August 26, 2025 18:34
Copy link
Contributor

@MOZGIII MOZGIII left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm up-to-date with the changes here; ping me please when the rest of the comments are resolved

@dmitrylavrenov dmitrylavrenov force-pushed the evm-tracing-runtime branch 4 times, most recently from 777a763 to 4c81348 Compare August 27, 2025 10:39
Copy link
Contributor

@MOZGIII MOZGIII left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good with the exception of the features confusion - if we address that we'd be good to go imo

@dmitrylavrenov dmitrylavrenov force-pushed the evm-tracing-runtime branch 3 times, most recently from 81ef962 to 222ee96 Compare August 27, 2025 13:06
@dmitrylavrenov dmitrylavrenov merged commit f6c3c65 into evm-debug-trace Aug 28, 2025
22 of 23 checks passed
@dmitrylavrenov dmitrylavrenov deleted the evm-tracing-runtime branch August 28, 2025 14:56
dmitrylavrenov added a commit that referenced this pull request Sep 15, 2025
dmitrylavrenov added a commit that referenced this pull request Dec 3, 2025
github-merge-queue bot pushed a commit that referenced this pull request Dec 4, 2025
* Add CI check for build with evm-tracing feature

* Add evm-tracing feature to humanode-runtime

* [evm-tracing-0] add evm-tracing test suite to e2e ts tests (#1574)

* Add build for evm-tracing at e2e code job

* Skip bash tests for evm-tracing test suite

* Add template for evm-tracing test suite

* [evm-tracing-0-1] add debug e2e tests logic implementation (#1575)

* [evm-tracing-1] runtime level implementation (#1544)

Runtime level implementation

* [evm-tracing-2] сlient-side implementation (#1565)

Client-side implementation

* [evm-tracing-3] implement RPC side (#1568)

Implement RPC side

* [evm-tracing-4] cli part implementation (#1572)

* [evm-tracing] Add more e2e tests (#1622)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

4 participants