Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[EP 5.15][Social] Adding ProposalBond to ENS Governor to make proposing more accessible #305

Conversation

agora-gov-bot
Copy link
Contributor

Abstract

The proposal threshold for propose new executable ENS proposals is high, and rightly so. ENS is one of the most popular DAOs and community in the Web3 community and keeping the quality bar of proposals to the highest standard is very important. However, ENS also has the treasury and the desire to expand the community and make proposing easier and more accessible to enable more builders to come and build in ENS.

Agora proposes adding the functionality of the ProposalBond to the ENS DAO Governor that would allow a proposer to propose with a lower threshold, and then the community could vote [For, Against, Against with penalty, Abstain]. If the weight of Against with penalty + Against > For, then the proposer does not get their bond back and the proposal does not pass.

To clarify further: a bond is withheld only if a proposal is rejected (the sum of rejections are bigger than the approvals) AND if the “Against with penalty” is bigger than “Against”.

This way we align incentives to create good proposals.

Specification

A discussion in the DAO Meta-Gov working group titled: Seeking Feedback: ENS Governor Upgrade to make proposing more accessible, Agora proposed the following PR on the ENS Governor: Proposal Bond Pull Request which outlines the code needed to make this change happen.

Since the time of that PR and during the follow up discussions, the community has asked for the following additions:

  • Ensure that the ProposalBond work proposed by Agora works with the new Veto rules and security council. This covers the case of a proposal being vetod from within the timelock therefore making sure we have the code to handle that case. The default case here being that the bond would not be returned.
  • Work with OpenZeppelin to see if we can bring this functionality into OZ Governance Core
  • Collaborate with ScopeLift to bring in a few sensible defaults to the voting delay period which is currently set to only one block. This leaves the DAO open to attack and the MetaGov working group is agreed on a 24 hour delay to ensure the DAO time to protect itself if needed.

Agora is committed to building public goods and is already working closely with OpenZeppelin to bring innovations of Agora's Governor into OZ Governance Core.

Given that the proposal threshold of this new functionality will be the most important piece, there is a general consensus in the discussion group that 1,000 ENS is the right initial value. This parameter can later be set governance and moved up and down as we see fit.

Voting

We are putting this to a simple, for/again/abstain vote

Next Steps

Should the vote pass, Agora will be responsible for:

  • closing out the implementation
  • working with ScopeLift to review the code and add in the Voting Delay logic
  • securing and organizing the audits
  • making any changes raised by the auditors
  • getting the code ready for a governor upgrade

Auditing

Given the potential impact of the change, we are going to work with the ENS MetaGov stewards to do 2 audits on this code: one chosen by Agora, and the other chosen by the stewards.

Agora recommends using OpenZeppelin, a reputable and top quality auditor in the governance space.

Agora recommends that the MetaGov stewards pick from: CodeArena, Trail of Bits, Spearbit or Trust Security. Each of these are quality auditing firms with a proven track record of working with governance contracts.

Both of these audits will be funded by ENS, and code changes will be implemented by Agora as part of their service contract with ENS, at no additional charge.

Results and changes will be posted for everyone to see

Success Criteria

For this social proposal to pass, the following quorum and voting requirements must be met:

Quorum: The proposal must receive a minimum of 1% of the total supply of $ENS (1 million votes) in the form of "Yes" and "Abstain" votes combined. "No" votes do not count towards quorum.

Approval: Once the quorum is reached, the proposal requires a simple majority (>50%) of "Yes" votes among the "Yes" and "No" votes to pass. "Abstain" votes do not count towards the approval calculation.

@lucemans lucemans marked this pull request as draft October 1, 2024 09:27
@estmcmxci
Copy link
Contributor

@lucemans looks like Agora bot worked

@gskril gskril marked this pull request as ready for review October 5, 2024 11:49
@gskril gskril requested a review from svemat01 as a code owner October 5, 2024 11:49
@gskril gskril merged commit a380869 into ensdomains:master Oct 5, 2024
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants