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

Priority Funding Proposals #73

Open
elenadimitrova opened this issue Sep 28, 2017 · 0 comments
Open

Priority Funding Proposals #73

elenadimitrova opened this issue Sep 28, 2017 · 0 comments
Labels

Comments

@elenadimitrova
Copy link
Contributor

elenadimitrova commented Sep 28, 2017

8.2.11 Priority Funding Proposals

A priority funding proposal (PFP) is a funding proposal that can request funds to be reallocated from any pot to any other at any rate. PFPs begin in the inactive state and can only become active via an explicit vote. The vote is based on reputation in the domain that is the most recent common ancestor of the two pots that money is being transferred between.
We imagine PFPs will be used to:

  • reclaim funds from child domains.
  • reclaim funds from cancelled tasks.
  • fund tasks across domains.
  • set aside funds designated as a person’s salary.
  • make large, one-off payments.

8.2.12 PFPs and the Funding Queue

Active Priority Funding Proposals take priority over Basic Funding Proposals and so they are placed at the top of the funding queue. They are ordered by the total reputation of the domain that voted to activate it and, in case there is a tie, by the actual amount of reputation that voted to activate.
Thus PFPs that are higher in the domain hierarchy come before those lower down.
As with BFPs, any user can ‘ping’ an active PFP at the top of the queue to cause the contract to update the funds available to the recipient pot. TotalPaid, LastUpdated and CurrentState are updated as required.

8.2.13 The 24h waiting period for PFP updates

Priority Funding Proposals take precedence over Regular Funding Proposals. To avoid the situation
in which long running PFPs block the BFP process entirely, a limit is placed on how often and
PFP can be updated (‘pinged’). We say a PFP can only be pinged when it is first activated* and
when its LastUpdated time is at least 24 hours old.
The result of this rule is that fast payments are still possible — in such a case the PFP’s rate is set very high and the proposal is fully funded at the initial ping, while also allowing long-term lower-rate PFPs that do not block the entire BFP process.

In this initial update the time elapsed since last update is taken to be 24 hours.

8.2.14 When is a Funding Proposal eligible to receive funding?

A Regular Funding Proposal may receive funds when pinged if it is active and at the top of the BFP funding queue and when the LastUpdated time of the PFPs are less than 24 hours old. A Priority Funding Proposal may receive funds when pinged if it is active and all PFP ahead of it in the funding queue have been updated less than 24 hours ago.*

In order to avoid hitting the gas limit due to unbounded loops, it will be necessary to maintain two orderings for the PFPs, one by priority and one by LastUpdated.

@elenadimitrova elenadimitrova added this to the Colony Network Token Sale MVP milestone Sep 28, 2017
@elenadimitrova elenadimitrova removed this from the Colony Network Token Sale MVP milestone Feb 1, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant