crazyrabbitLTC / CompRFP

A market for COMP Community Autonomous Proposals

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Autonomous Proposal Markets

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

Autonomous Proposals

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.

Contracts

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.

Installation

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`

Testing

Jest contract tests are defined under the tests directory. To run the tests run:

yarn test

Deployment

To deploy autonomous proposal factory:

npx saddle deploy CrowdProposalFactory "COMP_address" "Governor_address" "100000000000000000000" --network ropsten

Discussion

For any concerns with the protocol, open an issue or visit us on Discord to discuss.

For security concerns, please email security@compound.finance.

© Copyright 2020, Compound Labs

About

A market for COMP Community Autonomous Proposals

License:BSD 3-Clause "New" or "Revised" License


Languages

Language:Solidity 56.6%Language:JavaScript 43.2%Language:Shell 0.2%