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
  • Functions
  • proposalCount() → uint256
  • propose(address[] targets, uint256[] values, string[] signatures, bytes[] calldatas, string description) → uint256
  • queue(uint256 proposalId)
  • execute(uint256 proposalId)
  • cancel(uint256 proposalId)
  • getActions(uint256 proposalId) → address[], uint256[], string[], bytes[]
  • getReceipt(uint256 proposalId, address voter) → struct IGovernor.Receipt
  • state(uint256 proposalId) → enum IGovernor.ProposalState
  • castVote(uint256 proposalId, uint8 support)
  • castVoteWithReason(uint256 proposalId, uint8 support, string reason)
  • castVoteBySig(uint256 proposalId, uint8 support, uint8 v, bytes32 r, bytes32 s)
  • Events
  • ProposalCreated(uint256 id, address proposer, address[] targets, uint256[] values, string[] signatures, bytes[] calldatas, uint256 startBlock, uint256 endBlock, string description)
  • UnionTokenSet(address oldUnionToken, address newUnionToken)
  • TimelockSet(address oldTimelock, address newTimelock)
  • VotingDelaySet(uint256 oldVotingDelay, uint256 newVotingDelay)
  • VotingPeriodSet(uint256 oldVotingPeriod, uint256 newVotingPeriod)
  • ProposalThresholdSet(uint256 oldProposalThreshold, uint256 newProposalThreshold)
  • VoteCast(address voter, uint256 proposalId, uint8 support, uint256 votes, string reason)
  • ProposalCanceled(uint256 id)
  • ProposalQueued(uint256 id, uint256 eta)
  • ProposalExecuted(uint256 id)
  • NewPendingAdmin(address oldPendingAdmin, address newPendingAdmin)
  • NewAdmin(address oldAdmin, address newAdmin)

Was this helpful?

Edit on GitHub
  1. Developers
  2. Governance

Governor

Governor is the governance module of the protocol. It allows addresses with more than 1% of the current supply of Union token to propose changes to the protocol. Addresses that hold voting weight, at the start of the proposal, invoked through the getPriorVotes() function, can submit their votes during a 3-day voting period. If quorum is met, and the majority of votes are cast for the proposal, the proposal succeeds. It is then queued in the Timelock and can be implemented after 2 days.

Functions

proposalCount() → uint256

No description

propose(address[] targets, uint256[] values, string[] signatures, bytes[] calldatas, string description) → uint256

No description

queue(uint256 proposalId)

No description

execute(uint256 proposalId)

No description

cancel(uint256 proposalId)

No description

getActions(uint256 proposalId) → address[], uint256[], string[], bytes[]

No description

getReceipt(uint256 proposalId, address voter) → struct IGovernor.Receipt

No description

state(uint256 proposalId) → enum IGovernor.ProposalState

No description

castVote(uint256 proposalId, uint8 support)

No description

castVoteWithReason(uint256 proposalId, uint8 support, string reason)

No description

castVoteBySig(uint256 proposalId, uint8 support, uint8 v, bytes32 r, bytes32 s)

No description

Events

ProposalCreated(uint256 id, address proposer, address[] targets, uint256[] values, string[] signatures, bytes[] calldatas, uint256 startBlock, uint256 endBlock, string description)

No description

UnionTokenSet(address oldUnionToken, address newUnionToken)

No description

TimelockSet(address oldTimelock, address newTimelock)

No description

VotingDelaySet(uint256 oldVotingDelay, uint256 newVotingDelay)

No description

VotingPeriodSet(uint256 oldVotingPeriod, uint256 newVotingPeriod)

No description

ProposalThresholdSet(uint256 oldProposalThreshold, uint256 newProposalThreshold)

No description

VoteCast(address voter, uint256 proposalId, uint8 support, uint256 votes, string reason)

No description

ProposalCanceled(uint256 id)

No description

ProposalQueued(uint256 id, uint256 eta)

No description

ProposalExecuted(uint256 id)

No description

NewPendingAdmin(address oldPendingAdmin, address newPendingAdmin)

No description

NewAdmin(address oldAdmin, address newAdmin)

No description

PreviousOpUnionNextTimelock

Last updated 1 year ago

Was this helpful?

🔨