# Funding proposal policy discussion

**URL:** <https://farmos.discourse.group/t/funding-proposal-policy-discussion/1843>\
**Category:** Community\
**Tags:** funding-proposal\
**Created:** [January 21, 2024, 12:37pm UTC](https://farmos.discourse.group/t/funding-proposal-policy-discussion/1843 "2024-01-21T12:37:28Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![mstenta](https://yyz2.discourse-cdn.com/free1/user_avatar/farmos.discourse.group/mstenta/32/4_2.png) [@mstenta](https://farmos.discourse.group/u/mstenta)\
**Post date:** [January 21, 2024, 12:37pm UTC](https://farmos.discourse.group/t/funding-proposal-policy-discussion/1843/1 "2024-01-21T12:37:28Z")

</div>

I’d like to discuss our current approach to farmOS “funding proposals”, which we use to propose expenditures from our OpenCollective balance: [farmOS - Open Collective](https://opencollective.com/farmOS)

We currently have a loosely defined policy/methodology, whereby someone can create a forum topic with the `funding-proposal` tag, which describes their proposal, and includes a poll to vote yes/no on it.

That’s worked fine so far. But I think it would be worth standardizing a bit more, and solidifying some of the policy rules to answer some “what ifs” and make it more clear when a proposal can be declared “accepted” or “declined”.

Perhaps we should create an official “funding proposal policy” document in the farmOS repo `/docs/community` directory (and link to it from `/donate` to show potential sponsors that we have a process), which outlines some of these basic rules. I don’t think it needs to be long or verbose with legalese. Just some bullet points to lay the ground rules, which we can add to or adjust over time if we need to.

This can be an active document that evolves over time. I don’t claim to be an expert on community governance or even simple voting mechanisms/strategies, so I welcome feedback! Consider this just a way to get the ball rolling… 🙂

---

<div class="post-metadata">

**Author:** ![mstenta](https://yyz2.discourse-cdn.com/free1/user_avatar/farmos.discourse.group/mstenta/32/4_2.png) [@mstenta](https://farmos.discourse.group/u/mstenta)\
**Post date:** [January 21, 2024, 1:09pm UTC](https://farmos.discourse.group/t/funding-proposal-policy-discussion/1843/2 "2024-01-21T13:09:49Z")

</div>

Copying some of my comments from [#farmOS](https://app.element.io/#/room/#farmOS:matrix.org) chat:

> PS: speaking of the “funding proposal policy”… I have an idea to improve that a bit. Right now we don’t really have strict rules about how it works. I might propose we solidify that a little bit more. What I was thinking is: we require that proposals specify a “deadline”, and we requires a certain number of “yes” votes by that date (or maybe a ratio of yes to no votes). AND we require that anyone who votes “no” leave a comment to justify their vote, otherwise it doesn’t get counted. So it is the responsibility of the proposer to justify the funds in their proposal, and it is the responsibility of “no” voters to justify their veto.

These are just some ideas that came to mind, but they are not perfect… I see issues with the idea of requiring “No” voters to justify their vote as well.

My original thinking was basically that it’s easy to understand “Yes” votes, because they agree with the proposal author’s summary and justifications, but understanding the reasoning of “No” votes without any justification is more opaque. And since all votes are essentially anonymous, it would be possible for someone to prevent proposals from going through by creating multiple accounts and flooding the poll with anonymous “No” votes. The same is true of “Yes” votes, though.

So maybe it would be better to just encourage “No” voters justify their vote. Requiring it is problematic.

And maybe the “anonymous vote flooding” problem is still too hypothetical to worry about at this stage. 🙂

---

<div class="post-metadata">

**Author:** ![mstenta](https://yyz2.discourse-cdn.com/free1/user_avatar/farmos.discourse.group/mstenta/32/4_2.png) [@mstenta](https://farmos.discourse.group/u/mstenta)\
**Post date:** [January 21, 2024, 1:41pm UTC](https://farmos.discourse.group/t/funding-proposal-policy-discussion/1843/3 "2024-01-21T13:41:41Z")

</div>

Here is a draft of what [farmOS.org/community/funding-proposals](http://farmOS.org/community/funding-proposals) might look like. Curious what others think…

> ### Funding proposal policy
> 
> The farmOS community has an established process for deciding how to spend funds from the [farmOS OpenCollective](https://opencollective.com/farmos) budget. If you would like to propose a new expense, follow the procedure outlined below.
> 
> 1. Create a new funding proposal topic in the farmOS Community Forum
> - Title: `Funding proposal: {{ Brief title/summary }}`
> - Category: `Community`
> - Tag: `funding-proposal`
> - Template:
> 
> ```auto
> # Funding Proposal
> 
> **Title:** {{ Brief title/summary }}
> **Submitted by:** {{ Proposal author(s) }}
> **Related links:**
> - {{ Url(s) w/ brief titles/descriptions (optional) }}
> **Cost:** ${{ Proposed dollar amount }}
> **Deadline:** {{ Date when votes will be tallied and the proposal will be approved or denied. }}
> 
> ## Description
> 
> {{ Detailed description of how the funds will be used and justification for why this is worthwhile. It is the responsibility of the proposer to make the case for spending funds. }}
> 
> ## Poll
> 
> Do you support funding this proposal?
> 
> [poll type=multiple results=always min=1 max=1 chartType=bar]
> * Yes
> * No
> [/poll]
> 
> **If you vote "No" you are encouraged to leave a comment comment explaining your decision.**
> 
> See [farmOS.org/community/funding-proposals](https://farmOS.org/community/funding-proposals) for official funding proposal process and policy.
> 
> ```
> 
> 1. Share the proposal with others in the community.
> 2. Wait for community to vote.
> 3. When the deadline arrives, tally the votes and declare the proposal as “approved” or “denied”.
> 4. If “approved”, the proposal author may create expense(s) in the farmOS OpenCollective up to the total proposal amount.
> 5. The farmOS OpenCollective administrators accept or decline the expense(s) (see guidelines below).
> 
> #### Guidelines:
> 
> - It is the responsibility of the proposal author(s) to justify the expenditure. Funding proposals **should** demonstrate their benefits to the farmOS community as a whole.
> - It is the responsibility of “No” voters to justify their decision to decline the proposal. A “No” vote **should** be accompanied by a comment on the forum topic explaining their reasoning for voting “No”.
> - A proposal **may** be edited/modified during the voting period in response to “No” votes. If the proposal author(s) edit their proposal they **must** leave a comment explaining their changes.
> - “No” votes **may** be changed to “Yes” votes in response to proposal edits/modifications. If this happens, the original “No” voter **should** leave a comment making it clear that they changed their vote.
> - If substantial changes are made during the voting period, the proposal deadline **may** be extended to allow votes to be changed.
> - The schedule of expense payments **should** be defined in the proposal. Some expenses may require payment immediately upon acceptance of the proposal. Others may require payment after services are performed, or as a reimbursement after related expenses are incurred by the author(s) (eg: from a third-party invoice).
> - The deadline for a proposal **should** be at least one month after the date of proposal submission to allow sufficient time for community voting. Exceptions may be made to this rule in circumstances where funding is needed sooner.
> - A proposal **must** have at least 3 “Yes” votes by the deadline to be approved.
> - “Yes” votes must outnumber “No” votes at the end of the voting period for a proposal to be approved.
> - Voting **must** end on the deadline and any votes after the deadline cannot be counted.
> - An administrator **must** summarize the vote results in a comment at the end of the voting period and declare the proposal as “approved” or “denied”.
> - The farmOS OpenCollective administrators have the final say over whether or not an expense is approved. They will follow the outcomes of proposal voting whenever possible, but may provide justification for a denial (eg: if there are not enough funds in the budget).
> - These guidelines **may** change at any time in response to specific cases as they come up. This is an evolving process, and these are community guidelines, not hard rules.

Do these guidelines make sense? Can we improve any of them? Are there other points or considerations we should highlight?

---

<div class="post-metadata">

**Author:** ![mstenta](https://yyz2.discourse-cdn.com/free1/user_avatar/farmos.discourse.group/mstenta/32/4_2.png) [@mstenta](https://farmos.discourse.group/u/mstenta)\
**Post date:** [January 24, 2024, 10:56am UTC](https://farmos.discourse.group/t/funding-proposal-policy-discussion/1843/4 "2024-01-24T10:56:07Z")

</div>

> [@mstenta](#):
>
> And since all votes are essentially anonymous

Actually, it looks like it’s possible to make polls public. Should that be a requirement for funding proposal polls?

> <https://github.com/discourse/discourse/pull/24332>
>
> In the vast majority of cases, people want poll voters to be public. Previously,… the checkbox for this was hidden behind the 'show advanced' settings in the poll builder UI.
> 
> This commit makes three changes to improve the experience:
> 
> 1. Add \`public=true|false\` to poll markup (previously it would only be added when true
> 
> 2. Bring the 'public' switch outside the 'show advanced' section for improved visibility
> 
> 3. Change the default to 'true'
> 
> \<img width="300" alt="SCR-20231110-nzvk" src="https://github.com/discourse/discourse/assets/6270921/33c5e562-dda4-4867-8dc2-137ed18cffa6"\>

---

<div class="post-metadata">

**Author:** ![mstenta](https://yyz2.discourse-cdn.com/free1/user_avatar/farmos.discourse.group/mstenta/32/4_2.png) [@mstenta](https://farmos.discourse.group/u/mstenta)\
**Post date:** [October 17, 2026, 12:22pm UTC](https://farmos.discourse.group/t/funding-proposal-policy-discussion/1843/5 "2026-10-17T12:22:47Z")

</div>

Perhaps another step of the proposal process should be announcing the proposal on OpenCollective, so that backers and sponsors are aware and can chime in.

---

<div class="post-metadata">

**Author:** ![mstenta](https://yyz2.discourse-cdn.com/free1/user_avatar/farmos.discourse.group/mstenta/32/4_2.png) [@mstenta](https://farmos.discourse.group/u/mstenta)\
**Post date:** [October 17, 2026, 12:25pm UTC](https://farmos.discourse.group/t/funding-proposal-policy-discussion/1843/6 "2026-10-17T12:25:55Z")

</div>


