EVMScript Simulator: an Aragon Voting Simulation Tool

EVMScript Simulator

TLDR

dont guestimate if your vote will successfully execute if it passes, simulate the result first

Repo: EVMScript-Simulator

Quick Start: npx evmscript-sim

Why

If you have managed an Aragon Classic DAO for any length of time and been responsible for creating complex evmscripts then you have surely run into the dreaded “cannot execute” error. This happens when for whatever reason, something in the script will cause the transaction to revert.

When this happens it can be incredibly frustrating as the issue only presents itself after a successful vote which can involve many DAO participants and depending on the setup, maybe a week after you submit the script.

but even more frustrating is the tedious process of actually debugging the failing transaction. The fact that the error message is so broad doesn’t help

What is EVMScript Simulator

EVMScript Simulator uses the tenderly.co SDK to simulate and debug EVMScrips. I wrote this as an internal tool over the weekend so it’s not polished, but im not aware of anything else like it so im sure it will benefit the wider Aragon community.

Currently, it doesn’t support EVMCrispr or app installs, only batched external contract calls from Agent. It also does not simulate the flow of forwarding calls throughout the DAO, only the final EVMScript the agent will execute. However, if the community find this useful, then im down to work on it further and extend it for Zaragoza.

1 Like

Yay for builders @Joan_Arus @sembrestels @ramon tagging others that may know who best to discuss this with

1 Like