Propose
Create a Proposal to change the protocol. E.g., A proposal can set a aToken's interest rate model or risk parameters on the Comptroller.
Proposals will be voted on by delegated voters. If there is sufficient support before the voting period ends, the proposal shall be automatically enacted. Enacted proposals are queued and executed in the Agile Timelock contract.
The sender must hold more AGL than the current proposal threshold (proposalThreshold()
) as of the immediately previous block. If the threshold is 100,000 AGL, the sender must have been delegated more than 1% of all AGL in order to create a proposal. The proposal can have up to 10 actions (based on proposalMaxOperations()
).
The proposer cannot create another proposal if they currently have a pending or active proposal. It is not possible to queue two identical actions in the same block (due to a restriction in the Timelock), therefore actions in a single proposal must be unique, and unique proposals that share an identical action must be queued in different blocks.
Governor Alpha
targets
: The ordered list of target addresses for calls to be made during proposal execution. This array must be the same length as all other array parameters in this function.values
: The ordered list of values (i.e. msg.value) to be passed to the calls made during proposal execution. This array must be the same length as all other array parameters in this function.signatures
: The ordered list of function signatures to be passed during execution. This array must be the same length as all other array parameters in this function.calldatas
: The ordered list of data to be passed to each individual function call during proposal execution. This array must be the same length as all other array parameters in this function.description
: A human readable description of the proposal and the changes it will enact.RETURN
: The ID of the newly created proposal.
Solidity
Web3 1.2.6
Last updated