Introducing the Community Proposal Factory

Getty Hill
GFX Labs
Published in
4 min readMar 13, 2023

GFX Labs and its team have participated in protocol governance for over two years. In fact, Getty’s first governance proposal was a Compound Crowd Proposal, also known as a Compound Autonomous Proposal (CAP), in September 2020. At the time, to make a Compound Proposal a contributor needed 100k COMP (~$14m) votes. While that was unobtainable for most contributors, CAPs allowed anyone with 100 COMP ($14k) to make an Autonomous Proposal.

At its core, a CAP is a defined voter with a single purpose: to make a proposal through the protocol’s primary governance contract. Once the CAP was created, the creator needed to lobby community members to delegate their voting power to the CAP, and once that voting weight reached 100k, it was eligible to become a proposal for the DAO.

In concept, CAPs were a great solution to get small, intelligent, and valuable participants engaged in protocol governance. Most delegates, however, could not delegate their COMP tokens to a CAP. Unfortunately, because delegations cannot be re-delegated except by the token holder, CAPs only democratized proposal power at the margins. We’ve also seen this at Uniswap for those who remember fish.vote.

To solve this problem, we are introducing the Community Proposal Factory (CPF), the next iteration of the CAP. The CPF is effectively a sub-DAO of a larger protocol with a significantly lower proposal threshold and the same proposal functionality. Anyone who meets the proposal threshold can create a Community Proposal. Governance token holders can vote on proposals like any other proposal. If the CPF receives a sufficient number of votes to initiate a standard proposal, the Community Proposal can be passed up to the primary governance contract. This structure removes the need for new delegations to be made for each CAP, and instead, governance token holders may leave their delegation on the CPF.

Community Proposal Factories effectively lower the proposal threshold without the increase in security risks to the DAO. In doing so, we feel CPFs will represent a big step in democratizing proposal power. Anyone can deploy a CPF for a DAO. Once deployed, it can be used. Anyone can craft a proposal with executable code without needing a large amount of capital (or commanding the delegated votes of a large amount of capital), and the broader governance tokenholder community can judge whether the proposal should advance to a full vote.

The Community Proposal Factory is compatible with Governor Bravo-based DAOs and can be easily deployed by anyone. Each deployer can configure the factory to their DAO and only requires minor configurations. In addition, this concept could be applied to other common governance frameworks such as OpenZeppelin’s Governor. Deployed CPFs can spin up an interface easily using Tally.

The above diagram is an example of how a Community Proposal Factory could be applied to Uniswap. In this example, the factory is deployed with the Uniswap Governor Bravo contract as the parent DAO contract, the UNI token as the governance token for the factory, a proposal threshold of 10k UNI votes, and a quorum of 10m UNI. Anyone with 10k UNI can create a proposal on the CPF. Similar to a regular vote, if the proposal reaches the necessary quorum (10m UNI), then the proposal is deemed successful. If the proposal is successful and if the Uniswap CPF has the required 2.5m votes, the execute function will create the proposal on the Uniswap Governor Bravo contract.

At this point, the governance process is identical to any other vote. The proposal will go through the standard review, voting — and, if successful — timelock before execution.

Deployment and proposal process

  1. Configure CPF and deploy. Anyone can do this, and you only need to do it once. Parameters such as the proposal threshold and quorum can be changed by the CPF’s voters.
  2. Announce the deployment to your community and rally the necessary delegations to reach quorum on the parent contract. Ideally, you only have to do this once. A few ideas to acquire the necessary voting power are to ask existing large token holders to delegate to the CPF, the DAO could allocate some tokens from the DAO’s treasury to be delegated to the CPF, or you could build a collective of small token holders who all delegate to the CPF.
  3. Anyone who possesses the required number of votes to make a proposal on the CPF may do so. (10k in the example above)
  4. Voters can vote on CPF proposals similar to their DAO’s primary governance system. If the For votes cast exceed the set quorum and outnumber the Against votes, then the proposal can be proposed by the CPF to the parent governance contract. At this point, the CPF must have the sufficient votes delegated to it to make the proposal on the parent contract and must maintain the voting power for the duration of the standard proposal.
  5. After the standard proposal is made, it is up to the DAO’s standard process to determine if the proposal is executed.

--

--