Technical Implementations

Proposal Structure

Create a folder for each new proposal under the proposals_in_review/ and have the following files:
  • addresses.js - has all the proposal-related addresses grouped by chains (for testnet, mainnet, etc.).
  • proposal.js - contains the actual logic and content of the proposal.
  • submitProposal.js - the script to submit the proposal.
  • test/ - the test folder contains all the testing and simulation scripts.

Steps to create, test, and submit a proposal

  • Write the proposal logic and content in proposal.js , and add related addresses in addresses.js file
  • Create tests and simulations in the test/ folder
  • Run tests with yarn test
  • Run the simulations with yarn sim:in_review
  • Submit the proposal to the testnet: yarn submit --network kovan proposals_in_review/NEW_PROPOSAL/submitProposal.js
  • Manual test and review the proposal on testnet
  • Submit the proposal to mainnet: yarn submit --network mainnet proposals_in_review/NEW_PROPOSAL/submitProposal.js