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

General fund spending guidelines #41

Merged
merged 10 commits into from
Jun 6, 2020
109 changes: 109 additions & 0 deletions text/0000-general-fund.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,109 @@

- Title: general-fund-spending-guidelines
- Authors: [Yeastplume](mailto:[email protected])
- Start date: [Feb 07, 2020]
- RFC PR: Edit if merged: [mimblewimble/grin-rfcs#0000](https://github.com/mimblewimble/grin-rfcs/pull/0000)·
- Tracking issue: [Edit if merged with link to tracking github issue]

---

# Summary
[summary]: #summary

This RFC establishes a set of guidelines for spending the Grin Development Fund, the procedure via which funding requests can be made, and a set of procedures for managing and reporting on the fund.

# Motivation
[motivation]: #motivation

Previously there were no clear guidelines on how the Grin Development Fund could be spent and what types of activities could and could not be financed from the fund. This RFC presents a set of non-exhaustive guidelines intended to ensure that:

* Donators have a clear understanding of how their donations are likely to be spent.
* Those with funding ideas have a clear reference point to understand what types of proposals are likely to be considered for funding.
* Those with funding ideas have a specific process through which they can apply for funding.
* The team making spending decisions has clear, community-established guidelines against which to consider new funding requests.
* The decision-making process through which funding requests are granted is as fair, consistent and transparent as it can reasonably be.
* The wider community understands how the fund is managed and that transparency is evident.

Note that this document does not establish hard-and-fast rules for how the fund's contents can be spent. It is meant to be an indicative focal point for the community, and is intended to evolve with the needs of the project.

# Community-level explanation
[community-level-explanation]: #community-level-explanation

## Appropriate and inappropriate uses of the Grin Development Fund

Although spending decisions will always be made on a case-by-case basis, it is understood that the Grin Development Fund is to be used mainly to finance the development needs of the Grin project and the advancement of Grin/Mimblewimble as a whole.

There is scope for interpretation as to what this actually means, but the following presents (non-exhaustive) guidelines as to the types of activities that would be considered appropriate to finance from the fund.

* Activities related to the continuing development needs of the Grin code-base and related projects under the GitHub [mimblewimble](github.com/mimblewimble) organization. This can include:
lehnberg marked this conversation as resolved.
Show resolved Hide resolved
* Fixed-term development or project-management contracts
* Infrastructure and other incidental costs
* Security audit costs
* Costs incurred for any legal matters that may arise for either the project or individual contributors
arising directly from their work in good faith on the Grin project
* Running budgets for Grin teams (with funds spent at their own discretion)
* Technological research in areas that may be relevant to Grin in the future
* Cryptographic research related to Grin or Mimblewimble in general
* Supporting non-profit, community-driven and inclusive promotional efforts for the Grin Project (e.g. Grincon)
* Charitable donations toward important causes relevant to the Grin or cryptocurrency communities as a whole

While the guidelines above give plenty of flexibility in how funds can be employed toward the advancement of the Grin project, certain types of funding requests will not be considered:

* Marketing or promotional 'offers' where a party is taking a profit or gains some financial benefit to promote Grin (regardless of how the 'opportunity' is presented)
* Cryptocurrency speculation or any kind of investment

## Request for Funding Process

All requests for funding should be made in the [Governance Section](https://forum.grin.mw/c/governance) of the Grin forum. Topics should be clearly titled "Request for Funding: " followed by a short description of the request.

There is no set template for what the contents of the funding request should include, however a better reception can be attained by including:

* The exact amount requested, what the funding covers and for what time period (if applicable)
* A clear description of what will be provided to the Grin project in return, including:
* Details of any work or research that will be performed during the period
* The expected deliverable, if applicable (for a research project, for instance)
* Background information on the person making the request

Amounts can be stated in local currency equivalents, if desired, with the exact Cryptocurrency amount determined by the rate at the time of transfer.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To avoid a repeat of the recent forum fiasco, I propose narrowing this to requests being made in USD or BTC only.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think it was the change of exchange rate that led to the 'forum fiasco' as you call it, it was more a failure from my side to clearly outline in my original request that the change would result in a net raise in USD terms.

I don't mind enforcing USD / BTC (and / GRIN) only in requests, but it's not clear to me what problem it solves: In my particular example, if that would be the case, I would still state my preferred GBP amount on the request, convert it to USD according to the x-rate of that day, and then have the equivalent of that paid out in BTC amount once the request is approved. And I reckon I would then still need to field questions about "why last quarter you asked for $x and now you ask for $y", to which the answer then would be: x-rate fluctuations.

But perhaps this makes things a bit easier for the project, as it outsources fiat currency calculations to the requestor and makes it easier for people to review the amounts? I don't know if this is a big issue. If somebody raises a request in some obscure currency without some expression of what this equates to in a currency that people can relate to, it's not helping their chances getting support for their request, so there's no incentive to do so.

Perhaps there could be some sub-set of international currencies in that case (USD, GBP, EUR, JPY, CNY perhaps?), to make it clear that we're welcoming people from all parts of the world to ask in whatever (major) currency they prefer. But then it might become a question of "Hey why can't I ask in Swiss francs, or Canadian dollars, or Russian Roubles"? And yeah, why can't they? They will still only get paid in the currency of what's available in the fund, currently BTC or GRIN.

Copy link
Contributor

@DavidBurkett DavidBurkett Feb 13, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it's not clear to me what problem it solves

It feels more transparent. Most people in the crypto industry are already used to dealing in terms of USD and BTC (and yes, we should accept requests in GRIN).

I reckon I would then still need to field questions

Probably, yes. But at least then the questions would be about why you're asking for a salary increase, and not why you're trying to hide the salary increase. That's much better than the conversation beginning with the fundee being accused of wrongdoing. It's merely a change in salary at that point, which can easily be justified by "cost of living increase/decrease".

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe just something like I am requesting ______ (currency of choice) per month, which at the time of writing is equivalent to _____ BTC & $_____ USD per month. Just mandate a reference to BTC & USD at the time of writing, which might be different when paid out. I am not sure if it would help or hurt, but you could also consider paying out the entire approved sum at one time rather than monthly, which would reduce accounting headaches in a volatile market.


All community discussion on the funding request should be made within the forum thread itself, and the final decision on the request will be made by members of the core team at a public governance meeting, to take place at least one week after the request is made. The community is encouraged to display their support (or lack thereof) of a funding request at these Governance meetings, however the decision rests with the core team.
lehnberg marked this conversation as resolved.
Show resolved Hide resolved

It should also be noted that decisions should never be considered final. Those making funding requests are encouraged to revise or refine proposals based on whatever feedback is given during the request process and submit them for consideration again.

## Decision Process

While everyone and anyone is encouraged to create a funding request, those making requests should understand that not all funding decisions will be approved simply on the basis of them conforming to the guidelines above. Many other factors will be considered for each request, including (but not limited to):

* How well known in the community is the person making the funding request?
* Have too many similar requests been funded recently?
* How tangible is the value proposition to Grin?
* How much risk is involved relative to the size of the ask and the potential return.

Everyone is welcome to weigh in on the merits of a funding request in the forum thread and during the public governance meeting where the funding request is finalized. The core team will strive to ensure there's a community consensus for each request, however the final decision rests with the core team. Other Grin teams who have been allocated budgets can spend funds at their own discretion, but are strongly encouraged to consider the guidelines in this RFC during their decision making process.

## Tips on effective proposals

* You proposal is likely to be better received if you're already known to the Grin community or the wider cryptocurrency community. Even more so if you've already contributed to Grin in some meaningful way.
* It might be better to keep your initial funding request small and focused, particularly if your idea is something new and radical, or if you're unknown to the Grin community.
* Be specific, professional and thorough with your proposal.
* Be respectful and professional in your response to any feedback and criticism on the proposal thread

# Payout Process
lehnberg marked this conversation as resolved.
Show resolved Hide resolved

* At the time of payout, an amount of Bitcoin equivalent to the funding amount is paid out to an address provided by the funding requestor only.
lehnberg marked this conversation as resolved.
Show resolved Hide resolved
* The payout address should be provided to the core team by the requestor via a secure, verifiable channel (with cryptographic proof of identity if deemed necessary).
* The exchange rate between BTC and the target currency is determined by the exchange rate at the time of the funding transaction, without exception.
lehnberg marked this conversation as resolved.
Show resolved Hide resolved
* To minimize the effects of currency fluctuations on accounting transparency, all payments should be performed at pre-arranged "signing parties" in which mu-sig holders sample the current exchange rate. The transaction should be created, signed and broadcast as quickly as possible, with the transaction and rate reported back to the core team for tracking.
* Mu-sig holders will verify the address provided by the funding requestor several times during transction creation and broadcasting. However, the core team is not responsible for errors or incorrect addresses provided by the requestor.

## Transparency and processes
lehnberg marked this conversation as resolved.
Show resolved Hide resolved

The result of all funding decisions will be published in the meeting notes found in the [Grin Project Management](https://github.com/mimblewimble/grin-pm) repository.

The core team is obliged to publish a detailed spending log of all transactions made in and out of the fund, as well as quarterly spending reports summarizing all income and spending. These reports will also be made available in the Grin PM Repository.
lehnberg marked this conversation as resolved.
Show resolved Hide resolved

## Unresolved questions
lehnberg marked this conversation as resolved.
Show resolved Hide resolved

* This RFC is put together on the understanding that the fundamental question of 'who appoints the core team' is still outstanding. This point should be discussed separately and this RFC assumes there is an acceptable answer in place.

# Future possibilities
lehnberg marked this conversation as resolved.
Show resolved Hide resolved