Basic Modules

FundingManager:

(NEW) Bonding Curve Module

Authorizer:

List Based Authorizer: Gnosis Safe as only whitelisted address

Single Vote Governance: BCRG as addresses allowed to vote

PaymentProcessor:

Simple Payment Processor: “One-off” transfers

Streaming Payment Processor: Funds are released over time

Logic Modules:

Modified Bounty Module: Bounties can be set up and submitted by the BCRG.

Milestone Module: The BCRG sets up sprint-like milestones with a set of participants. Rewards for those Milestones are paid out/streamed optimistically.

Recurring Payment Module: New funds become claimable in fixed time intervals.

Bonding Curve MVP Module:

The solution shall integrate a Fund to Mint bonding curve mechanism into the Inverter module tech stack for to create a continuous fundraising mechanism that rewards donors with tokens.

Function Requirements Description
ERC 20 Creation The solution shall enable the creation of a new ERC 20 Token
Uncapped BCRG Supply It shall enable an uncapped supply of the ERC 20 token, where supply is dictated by donations and tokens minted.
Minting Function The solution will allow the authorizers to mint extra tokens at their discretion. This can happen at the ERC-20 level, and does not need to be part of the bonding curve.
Virtual Supply The solution shall enable a parameter called virtual supply that allows the BCRG team to adjust the total supply of BCRG tokens to reflect any that might be minted. The curve will exclusively use the virtual supply parameter in it’s internal workings
Virtual Balance The solution shall have a vitual balance parameter that enables the authorizers to adjust the digital balance of the reserve pool. Since the actual underlying collateral is going to be spent, the Bonding Curve must rely exclusively on virtual balance.
No Reserve Pool The bonding curve will not support redeeming the token for underlying collateral since funds will be spent elsewhere.
Bonding Curve Bancor Formula The Bonding Curve shall utilize the Bancor formula to create two distinct bonding curves for funding to mint and burning to withdraw https://blog.giveth.io/deep-dive-augmented-bonding-curves-3f1f7c1fa751
Deactivated Burn Function Initially, the bonding curve will not allow users to burn tokens (and therefore reduce price, even there are no funds being sent from the reserve pool). If this function is nonexistent or just deactivated in the MVP is up to the implementation team.

Bonding Curve Equations & Parameters: