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

Foundary style VM test tracing, native actor tooling brainstorm #843

Open
ZenGround0 opened this issue Nov 15, 2022 · 3 comments
Open

Foundary style VM test tracing, native actor tooling brainstorm #843

ZenGround0 opened this issue Nov 15, 2022 · 3 comments

Comments

@ZenGround0
Copy link
Contributor

ZenGround0 commented Nov 15, 2022

Solidity tooling is quite good and should inspire us to do better for native FVM actor development starting with the builtin actors. I'm using the foundry toolset and particulary forge which is essentially cargo for solidity and its test tracing looks as below:

Screen Shot 2022-11-15 at 9 41 12 AM

This should be feasible to add to builtin actors vm testing as we already have most of the data inside the invocation context used internall. Maybe a variant for unit test is worth pursuing too.

A tool like foundary would be a great thing to target for general native actor development. We have a great first use case of improving builtin actor development experience to develop against. Then tools could be released for the broader development community.

@anorth
Copy link
Member

anorth commented Nov 15, 2022

See also filecoin-project/ref-fvm#1080. I agree we should be able to get this all with a fake VM, but it would be ace to use a common tracing structure etc with actual VM tests too

@jennijuju
Copy link
Member

@anorth am I right to assume this is the effort that's described as the AI in filecoin-project/FIPs#535 & should land upon nv18? if so - id like to assign the issue and have it on our board

@anorth
Copy link
Member

anorth commented Nov 24, 2022

This issue isn't (because no gas metering), but it's related.

I think this issue is intended as brainstorm/discussion rather than being concretely actionable (yet).

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

No branches or pull requests

3 participants