The delay app enables Aragon organizations to require a configurable delay between when an intent is sent and when it is executed.
🚨 Security Review Status: Contract audited
The Delay app keeps track of the time left until scripts can be executed, the script to execute, and the time that the script was paused at.
The Delay app is initialized with the _executionDelay
parameter. This defines the default length that a user will have to wait to execute a delayed script, provided it is not paused at some point during the delay.
The Delay app should implement the following roles:
SET_DELAY_ROLE
: This allows for changing theexecutionDelay
period.Note: Changing the execution delay does not affect current delays.
DELAY_EXECUTION_ROLE
: Any entity with this role can delay an intent.PAUSE_EXECUTION_ROLE
: This allows for pausing a delay.RESUME_EXECUTION_ROLE
: This allows for resuming a paused delay.CANCEL_EXECUTION_ROLE
: This allows for cancelling a delay.
Check out our user guide to go through the functionality of the app.
Git clone this repo.
git clone https://github.com/1Hive/delay-app.git
Navigate into the delay-app
directory.
cd delay-app
Install npm dependencies.
npm i
Deploy a dao with Delay app installed on your local environment.
npm run start:template
For a detailed step by step guide you can see our installation guide
To deploy to an organization you can use the aragonCLI.
aragon dao install <dao-address> delay.aragonpm.eth --app-init-args <delay-execution>
We welcome community contributions!
Please check out our open Issues to get started.
If you discover something that could potentially impact security, please notify us immediately. The quickest way to reach us is via the #dev channel in our team Keybase chat. Just say hi and that you discovered a potential security vulnerability and we'll DM you to discuss details.