Skip to content

Quorum Documentation#

Informational

Compound governance quorum is determined by the following condition:

proposal.forVotes < quorumVotes

Where quorumVotes is an immutable constant.

By contrast, PVFD fork quorum is determined by

(proposalVote.forVotes + proposalVote.againstVotes + proposalVote.abstainVotes) < proposal.quorum

Where proposal.quorum is determined at proposal time as a function of token supply and quorum bips set by meta-governance.

The break from Compound convention of quorum being solely determined by forVotes is worth documenting at the state function level as well as in communications to users. End users might have expectations around what determines quorum that differ from this implementation.

It is also worth noting that governance UIs such as Tally expect a quorumVotes constant for their quorum display.

Recommendation#

  • Document the unique quorum calculation in the state function in natspec format
  • If perfect compatibility with governance UIs is desired, there may need to be more substantial revision to the quorum mechanic.