Add a governor module to protect against late quorum (#2973)

Co-authored-by: Francisco Giordano <frangio.1@gmail.com>
This commit is contained in:
Hadrien Croubois
2021-12-01 17:56:31 +01:00
committed by GitHub
parent 6089f11c2f
commit abf6024faf
7 changed files with 446 additions and 13 deletions

View File

@ -42,6 +42,8 @@ Other extensions can customize the behavior or interface in multiple ways.
* {GovernorSettings}: Manages some of the settings (voting delay, voting period duration, and proposal threshold) in a way that can be updated through a governance proposal, without requiering an upgrade.
* {GovernorPreventLateQuorum}: Ensures there is a minimum voting period after quorum is reached as a security protection against large voters.
In addition to modules and extensions, the core contract requires a few virtual functions to be implemented to your particular specifications:
* <<Governor-votingDelay-,`votingDelay()`>>: Delay (in number of blocks) since the proposal is submitted until voting power is fixed and voting starts. This can be used to enforce a delay after a proposal is published for users to buy tokens, or delegate their votes.
@ -74,6 +76,8 @@ NOTE: Functions of the `Governor` contract do not include access control. If you
{{GovernorSettings}}
{{GovernorPreventLateQuorum}}
{{GovernorCompatibilityBravo}}
=== Deprecated