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

Support dry run mode in the FuelVM #691

Open
xgreenx opened this issue Mar 5, 2024 · 2 comments
Open

Support dry run mode in the FuelVM #691

xgreenx opened this issue Mar 5, 2024 · 2 comments

Comments

@xgreenx
Copy link
Collaborator

xgreenx commented Mar 5, 2024

Problem overview

The FuelVM has many rules regarding transaction validity and requirements for using specific opcodes. Each opcode that touches the contract requires this contract's existence in the transactions' inputs. Another example is the tro opcode that requires the existence of the Variable output.

All those rules make the usage harder and require dry-running transactions many times on the SDK side to fulfill all rules.

Solution

The FuelVM may support dry run mode, in which all validity rules will not abort the execution immediately. Instead, we will keep a record of what rules are failing and provide feedback at the end of the execution with all problems.

@xgreenx
Copy link
Collaborator Author

xgreenx commented Mar 5, 2024

We don't have plans to work on it before mainnet since it may bring vulnerabilities.

@MitchTurner
Copy link
Member

I think we need to be clearer about what the implementation would look like. And it also could be useful to get some feedback from SDK people about what features they would most like.

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

2 participants