Pre-Proposal: New system to submit and manage Budget Proposals. Better governance via code.

R

RGXDK

Guest
I believe we should aim to do our governance via code as much as possible. We vote yes or no and release the funds to the proposer. There are several deficiencies in this process and this idea aims to improve what we have today.

Idea:
I'm enumerating each part so you guys can comment on a particular point without having to quote the whole thing.
  1. Each proposal needs to have at least 1 milestone. A milestone is a verifiable goal that can be checked by MNOs.
  2. Each milestone will contain a title and description of what it is, how it is considered completed, and an approximate timeframe for completion.
  3. Payments are split into 1+ num_milestones. A proposal for 1,000 Dash with 4 milestones will receive 5 payments.
  4. Once a proposal is approved by the MNO, 100% of the funds are locked (reserved, transferred to a temporary budget address) and the first payment is released automatically.
  5. When proposers thinks a milestone is completed, he will inform the network. He will mark the milestone as completed, attach / link the results, or just explain why he thinks it has been completed.
  6. MNOs will then vote on whether the milestone has been reached or not and if the network will continue funding.
  7. Voting will go for 48h after the milestone is reported as completed by the proposer.
  8. MNO can release the funds even when milestones aren't reached, as long as the Team provides a reasonable explanation of the circumstances.
  9. This will force teams doing proposals to report status to MNO, so we should encourage a reasonable number of milestones (not too many so we don't create unnecessary bureaucracy).
  10. 15 days after the final milestone is completed, MNOs will have to chance to vote for a 0%, 5%, 10% or 20% Bonus payment.

Problems this idea aims to solve:
- Reduces scam risks from 100% to 100/(1+(1*num_milestones))%.
- Force proposers to give status to MNOs, instead of us having to chase them around.
- Encourage responsible use of the Network's treasury.
- Saves treasury by withholding funds from proposers that do not deliver.
- Encourage better planning as proposers have to show clearly defined milestones
- More transparency. MNO can just see that Proposal A has 3/5 milestones completed and know exactly on what proposers are currently working on.
- Encourage quality and professionalism
- Reward excellent work.


Let's go over an example:

Proposal for a Mobile Wallet for Android, Asking 1,000 Dash.

Milestones:
#1: layout of all screens (just the layout on psd files) - 15 days
#2: Working demo with no backend - 15 days
#3: working beta - 15 days
#4: final release - 10 days.

- 4 milestones so 5 payments. Proposal was approved by MNOs and proposer received 200 Dash.
- 15 days later, proposer attaches all psd files and request release of Milestone #1. MNOs approve and another 200 Dash is released.
- 20 days later, proposer provides a link for a demo with no backend, explaining why it took 15 and not 20 days. MNOs approve and another 200 Dash is released.
- 10 days later, proposer shows a link to a working demo. MNOs approve and another 200 Dash is released.
- 10 days later, proposer shows the final product, MNOs approve and the final 200 Dash is released.
- 15 days after everything has been completed, MNOs decide to give the proposer a 10% bonus for the excellent work


Notes:
- System should be open source, core has full access to source code.
- Instead of having MNO voting all the time, it might be a good idea to have a dedicated team of 1-3 public trusted individuals (John Smith, not banana_123) whose job is vote on milestones. In this case MNO will only vote to approve the initial proposal and the bonus, not on the milestones. This will be especially interesting with proposal with many milestones.

Looking forward do reading your comments.

Thanks.
 
Last edited:
Hi RGXDK
Good work. Been a problem for a long time:

Questions:
Each milestone will contain a title and description of what it is, how it is considered completed, and an approximate timeframe for completion.
1 Who decides if these milestones are reasonable? Do-able? PEC? E.g.: 5 milestones but 1st 3 can be reached in 2 days and used to rip us off while last 2 never gets done

Then MNO will vote on whether the milestone has been reached or not and if the network will continue funding.
Voting will go for 48h after the milestone is reported as completed by the proposer.

2. Don't think the MNO's will like the constant voting and this will need code change or another system and 48 hrs could be way to short.
Better if the PEC evaluator who dealt with them (or another one?) or a new 'Milestone Committee' ok's the completed milestones.

MNO can release the funds even when milestones aren't reached, as long as the Team provides a reasonable explanation of the circumstances.
3. I'm not even sure if I want the PEC to take on this responsibility. This will need a treasurer. Accounts dept? You'll have to talk to Ryan/Diaz and find out how they are doing it now.

15 days after the final milestone is completed, MNOs will have to chance to vote for a 0%, 5%, 10% or 20% Bonus payment
4. This is new - like it. Who decides if MNO's cant do it (too much voting)?

Just read your last sentence:
In this case MNO will only vote to approve the initial proposal and the bonus, not on the milestones. This will be especially interesting with proposal with many milestones.
5. Yes - I think this is the most practical solution
Whole idea will have to be very carefully planned to pre--empt corruption

6. Ideal would be to integrated it into Dash Central with @rango's help.

The more I think about this, it will need a committee, with short term MNO volunteers that get paid to do just this. Not PEC evaluators to minimise corruption possibilities. PEC could manage this, if you're interested...? , but I'll 1st have to discuss it with the PEC team.

Or would you like to set up your own team? If so PM me and we can skype and I'll give you a heads-up on the lessons I learned setting up the PEC.

Good luck
:)
 
Last edited:
Hi RGXDK
Good work. Been a problem for a long time:

Questions:
Each milestone will contain a title and description of what it is, how it is considered completed, and an approximate timeframe for completion.
1 Who decides if these milestones are reasonable? Do-able? PEC? E.g.: 5 milestones but 1st 3 can be reached in 2 days and used to rip us off while last 2 never gets done

Then MNO will vote on whether the milestone has been reached or not and if the network will continue funding.
Voting will go for 48h after the milestone is reported as completed by the proposer.

2. Don't think the MNO's will like the constant voting and this will need code change or another system and 48 hrs could be way to short.
Better if the PEC evaluator who dealt with them (or another one?) or a new 'Milestone Committee' ok's the completed milestones.

MNO can release the funds even when milestones aren't reached, as long as the Team provides a reasonable explanation of the circumstances.
3. I'm not even sure if I want the PEC to take on this responsibility. This will need a treasurer. Accounts dept? You'll have to talk to Ryan/Diaz and find out how they are doing it now.

15 days after the final milestone is completed, MNOs will have to chance to vote for a 0%, 5%, 10% or 20% Bonus payment
4. This is new - like it. Who decides if MNO's cant do it (too much voting)

Just read your last sentence:
In this case MNO will only vote to approve the initial proposal and the bonus, not on the milestones. This will be especially interesting with proposal with many milestones.
5. Yes - I think this is the most practical solution
Whole idea will have to be very carefully planned to pre--empt corruption

6. Ideal would be to integrated it into Dash Central with @rango's help.

Good luck
:)


Thanks for the reply and for enumerating them too.

1. PEC stands for? MNOs can chose not to approve proposals with badly designed milestones.

2. I haven't thought about it enough but yes I am inclined to agree that a Milestone Committee will be better at that. I like the name too.

3. I don't get it as I don't know what you mean by PEC.

4. I don't get it either, can you rephrase the last sentence?

5. Excellent

6. Is DashCentral fully open source? Can I see the source?

Thanks for your comments @Biltong
 
Thanks for the reply and for enumerating them too.

1. PEC stands for? MNOs can chose not to approve proposals with badly designed milestones.
2. I haven't thought about it enough but yes I am inclined to agree that a Milestone Committee will be better at that. I like the name too.
3. I don't get it as I don't know what you mean by PEC.
4. I don't get it either, can you rephrase the last sentence?
5. Excellent
6. Is DashCentral fully open source? Can I see the source?
Thanks for your comments @Biltong
We were typing at the same time :( - edited/added more afterwards
PEC? Sorry - my ego: Proposal Evaluation Committee
4. Who will decide the size of the bonus? MNO's cannot do it with existing budget vote - they can just vote yes/no every 28 days
6. No idea - will have to ping @rango, but only after this idea has been developed a lot more or he might just ignore you :rolleyes:

Go well
 
3. What I meant is that MNO can still release funds if the proposer has a reasonable reason for not having completed the milestone and needing the funds.

4. Well can we change this voting mechanism? Instead of giving Y/N, can we change it to allow a multiple choice answer? (i.e. bonus of a)0% , b)5% , c) 10%)?

6. pinging @rango .
 
If to release the funds associated with a Milestone you only need a simple majority instead of 10% positive net votes. That would reduce the work required by MNs quite a bit.
I wouldn't mind a committee of sorts to vote on it as long as it is integrated into actually Budget System (code) and not an external entity. One way to do that "kinda" that might also improve other aspects would be the ability to delegate votes to other MNs.
 
I don't think that releasing funds in incremental steps should be the job of the MNs. If the proposal requires an escrow of some kind, proposal owners are going to want to have a contract with an actual legal entity. Having a legally binding contract makes accountability much more enforceable and it is not possible to sign a contract directly with the network. I would much rather have the MNs fund an organization that is delegated to act for escrow, legal contract services.
 
3. What I meant is that MNO can still release funds if the proposer has a reasonable reason for not having completed the milestone and needing the funds.
4. Well can we change this voting mechanism? Instead of giving Y/N, can we change it to allow a multiple choice answer? (i.e. bonus of a)0% , b)5% , c) 10%)?
6. pinging @rango .
"MNO can still release funds " OK
"change this voting mechanism?" Discussed a number of times AFA can remember: the code change was possible, but just not a priority... Evo is. Search for 'voting mechanism'' ?
 
Back
Top