Proposal
Every time a proposal is made, we create a proposal entity that is related to the DAO. Most of the logic in our apps are related to proposal state changes. A proposal can be canceled, sponsored, be in voting period, grace period, pass, fail, processed. Each time these change we update the state of the proposal.
id
Unique identifier and primary key of the entity
id: ID!
createdAt
Block timestamp when the proposal was submitted
createdAt: String!
createdBy
Address that submitted the proposal
createdBy: Bytes!
dao
Related DAO entity
dao: Dao!
proposalId
ID of the proposal
proposalId: BigInt!
prevProposalId
ID of the previous proposal, set at sponsorship
prevProposalId: BigInt!
txHash
Transaction hash of the proposal
txHash: Bytes!
proposalDataHash
Hash of raw transaction data that will be executed if the proposal passes
proposalDataHash: Bytes!
proposalData
Raw transaction data that will be executed if the proposal passes
proposalData: Bytes!
votingPeriod
Duration of the voting period for this proposal in seconds
votingPeriod: BigInt!
votingStarts
UNIX timestamp of when the voting period starts
votingStarts: BigInt!
votingEnds
UNIX timestamp of when the voting period ends
votingEnds: BigInt!
gracePeriod
Duration in seconds of the grace period for this proposal in seconds
gracePeriod: BigInt!
votingPlusGraceDuration
Duration in seconds of the grace and voting periods for this proposal in seconds
votingPlusGraceDuration: BigInt!
graceEnds
UNIX timestamp of when the grace period ends
graceEnds: BigInt!
expiration
UNIX timestamp after which proposal should be considered invalid and skipped
expiration: BigInt!
actionGasEstimate
Estimated gas needed to execute the proposal actions
actionGasEstimate: BigInt!
details
String with human readable description of the proposal
details: String!
selfSponsor
Indicates if the proposal was automatically sponsored
selfSponsor: Boolean!
sponsored
Indicates if the proposal is sponsored
sponsored: Boolean!
sponsor
Address that sponsored the proposal
sponsor: Bytes
sponsorTxHash
Transaction hash of the proposal sponsor
sponsorTxHash: Bytes
sponsorTxAt
UNIX timestamp of when the proposal was sponsored
sponsorTxAt: BigInt
cancelled
Indicates if the proposal is cancelled
cancelled: Boolean!
cancelledTxHash
Transaction hash of the cancelled proposal
cancelledTxHash: Bytes
cancelledTxAt
UNIX timestamp of when the proposal was cancelled
cancelledTxAt: BigInt
cancelledBy
Address that cancelled the proposal
cancelledBy: Bytes
processed
Indicates if the proposal is processed
processed: Boolean!
processTxHash
Transaction hash of processing the proposal
processTxHash: Bytes
processTxAt
UNIX timestamp of when the proposal was processed
processTxAt: BigInt
processedBy
Address that processed the proposal
processedBy: Bytes
actionFailed
Process function was run and execution of proposal action failed
actionFailed: Boolean!
passed
Indicates if the proposal passed
passed: Boolean!
proposalOffering
Amount of native token provided as tribute when proposal was submitted
proposalOffering: BigInt!
yesVotes
Number of current yes votes
yesVotes: BigInt!
noVotes
Number of current no votes
noVotes: BigInt!
yesBalance
Amount of current shares that have voted yes
yesBalance: BigInt!
noBalance
Amount of current shares that have voted no
noBalance: BigInt!
currentlyPassing
Proposal is currently passing quorum and has more yes votes than no votes
currentlyPassing: Boolean!
maxTotalSharesAndLootAtYesVote
Highest share+loot count during any individual yes vote
maxTotalSharesAndLootAtYesVote: BigInt!
The following tribute fields will only have values if the proposal was submitted through the trbute minion contract.
tributeToken
Token address in tribute proposals
tributeToken: Bytes
tributeOffered
Amount of tribute token offered
tributeOffered: BigInt
tributeTokenSymbol
Symbol of the tribute token
tributeTokenSymbol: String
tributeTokenDecimals
Decimal places of the tribute token
tributeTokenDecimals: BigInt
tributeEscrowRecipient
Applicant submitting the tribute proposal
tributeEscrowRecipient: Bytes
proposalType
Proposal type derived from the details field
proposalType: String!
title
Proposal title derived from the details field
title: String
description
Proposal description derived from the details field
description: String
contentURI
Proposal content URI derived from the details field
contentURI: String
contentURIType
Proposal content URI type (ipfs hash, url) derived from the details field
contentURIType: String
votes
Votes scoped to this proposal
votes: [Vote!]