Union Protocol (v2)
  • Introduction
  • Important Links
  • 🌐Protocol Overview
    • How Union Works
    • Plain English (Detailed)
    • Use Cases
    • v1->v2 changelog
    • FAQ
  • ⚖️Governance
    • UNION DAO
      • Community Delegates
      • Gaurdians & Multisigs
    • UNION Token
    • Governance Process
      • Technical Implementations
    • Glossary of Terms
  • 🔨Developers
    • Union Contracts Overview
    • Contract ABIs & Addresses
    • Core Components
      • UserManager
        • UserManagerERC20
        • UserManagerDAI
      • uToken
        • UDai
        • UErc20
      • AssetManager
      • Comptroller
      • MarketRegistry
      • InterestRateModel
      • PureTokenAdapter
      • AaveV3Adapter
    • Governance
      • UnionToken
        • ArbUnionWrapper
        • ArbUnion
        • OpUnion
      • Governor
      • Timelock
    • Union SDK
    • Union Data
      • Documentation
    • Peripheral & Fun Contracts
    • GraphQL Endpoints
  • 🚴User Guides
    • Becoming a Member
    • How Bridging Tokens Works
      • Bridge UNION token from Arbitrum to Ethereum
    • Voting & Delegation
      • Delegation from Gnosis
    • Vouching & Lending
  • 👩‍💻Developer Guides
    • In Progress
  • ⚠️Risk
    • Types of Risk
Powered by GitBook
On this page
  • Proposal Structure
  • Steps to create, test, and submit a proposal

Was this helpful?

Edit on GitHub
  1. Governance
  2. Governance Process

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

PreviousGovernance ProcessNextGlossary of Terms

Last updated 1 year ago

Was this helpful?

⚖️