This is a fork of the Compound Autonomous Proposals that adds the ability to do a "Request for Proposal" with a bounty as an incentive.
The goal behind this idea is to create a market where governance experts can sell their talents to Liquidity Providers and other interested parties who might not have the expertise to craft COMP proposals in house.
With RFP anyone can set a bounty, create a description of what they are looking for, and publish a request. Providers can submit fully crafted executable COMP Governance proposals onchain, and the publisher of the RFP can award a winning proposal with the bounty and have it submitted to the Compound Autonomous Proposals contract where it can garnish vote support from the community.
This is untested and early proof of concept.
Created by Dennison Bertram
Compound Autonomous Proposals allow anyone with enough COMP stake (currently 100; subject to change) to create an autonomous proposal and gather public support by receiving delegations to the autonomous proposal contract.
The staked COMP tokens are locked into the autonomous proposal contract, and act as the first 100 votes for the future governance proposal.
Once the autonomous proposal reaches the governance proposal threshold (currently 100k votes; subject to change), anyone can call the propose method, setting it up for a public vote in the Compound Governance system.
One block after the proposal is created (or, longer if the delay parameter changes in the Governance system), anyone can call the vote function, casting FOR votes on the proposal.
After the successful proposal execution or if the autonomous proposal author doesn’t feel like the proposal will succeed, they can call the terminate method, terminating autonomous proposal and returning their staked COMP tokens.
We detail a few of the core contracts in the Autonomous Proposals v1.0:
- CrowdProposalFactory
- The proposal factory contract, which creates autonomous proposals and transfer intitial staked COMP tokens to them with createCrowdProposal method.
- CrowdProposal
- The Autonomous Proposal contract that contains propose, vote and terminate methods.
To run autonomous proposals, pull the repository from GitHub and install its dependencies. You will need yarn or npm installed.
git clone https://github.com/compound-finance/autonomous-proposals
cd autonomous-proposals
yarn install --lock-file # or `npm install`
Jest contract tests are defined under the tests directory. To run the tests run:
yarn test
To deploy autonomous proposal factory:
npx saddle deploy CrowdProposalFactory "COMP_address" "Governor_address" "100000000000000000000" --network ropsten
For any concerns with the protocol, open an issue or visit us on Discord to discuss.
For security concerns, please email [email protected].
© Copyright 2020, Compound Labs