Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

VM: Support EIP-3155 EVM trace specification #1215

Open
holgerd77 opened this issue Apr 21, 2021 · 6 comments
Open

VM: Support EIP-3155 EVM trace specification #1215

holgerd77 opened this issue Apr 21, 2021 · 6 comments

Comments

@holgerd77
Copy link
Member

There is a unified trace specification in the works with EIP-3155 which we should support.

@holgerd77
Copy link
Member Author

Once we have the debug logger from #1269 back in place we could actually relatively easily support this by adding a dedicated trace (or so, naming scheme has TBD) or so debug logger.

This would at least be some start and it could e.g. be used for our internal use cases but also by others. Not sure if this is sufficient and this should also be added as some kind of a) new event or b) as part of the step event or c) have the step event modified in a way that it get's compatible. 😄

Thoughts?

@ryanio
Copy link
Contributor

ryanio commented Jun 11, 2021

@jochem-brouwer mentioned in #1169 (comment) that he started thinking about how to implement this EIP, would be great to hear more info/details, I asked in a more recent comment further down on the issue (#1169 (comment))

@jochem-brouwer
Copy link
Member

@ryanio here are some edge cases which need further discussion, as they are either not in the EIP, or from my point of view they are inconsistent; magicians post.

@jochem-brouwer
Copy link
Member

#1553

@holgerd77
Copy link
Member Author

Old issue, needs to get an update how the whole discussion has evolved.

Absolutely no urgency.

@jochem-brouwer
Copy link
Member

Since Geth has recently updated their tracing specs such that (as far as I can see) they now match the spec, this is something which we can start on. It indeed has no urgency. However, it would be very nice if we have matching traces - if all clients would match a certain trace specification and implement tools to re-execute bad blocks and get their traces, then it would be incredibly helpful to quickly figure out where the clients diverge and thus fix this quickly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants