mirror of https://github.com/zcash/zips.git
227 lines
20 KiB
HTML
227 lines
20 KiB
HTML
<!DOCTYPE html>
|
||
<html>
|
||
<head>
|
||
<title>Draft ecc-community-and-coinholder: Community and Coinholder Funding Model</title>
|
||
<meta charset="utf-8" />
|
||
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/katex.min.css" integrity="sha384-nB0miv6/jRmo5UMMR1wu3Gz6NLsoTkbqJghGIsx//Rlm+ZU03BU6SQNC66uf4l5+" crossorigin="anonymous">
|
||
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/katex.min.js" integrity="sha384-7zkQWkzuo3B5mTepMUcHkMB5jZaolc2xDwL6VFqjFALcbeS9Ggm/Yr2r3Dy4lfFg" crossorigin="anonymous"></script>
|
||
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.11/dist/contrib/auto-render.min.js" integrity="sha384-43gviWU0YVjaDtb/GhzOouOXtZMP/7XUzwPTstBeZFe/+rCMvRwr4yROQP43s0Xk" crossorigin="anonymous" onload="renderMathInElement(document.body);"></script>
|
||
<meta name="viewport" content="width=device-width, initial-scale=1"><link rel="stylesheet" href="css/style.css">
|
||
</head>
|
||
<body>
|
||
<pre><code>ZIP: XXX
|
||
Title: Community and Coinholder Funding Model
|
||
Owners: Josh Swihart <josh@electriccoin.co>
|
||
Credits: Daira-Emma Hopwood
|
||
Kris Nuttycombe
|
||
Jack Grigg
|
||
Tatyana Peacemonger
|
||
Alex Bornstein
|
||
Jason McGee
|
||
Status: Draft
|
||
Category: Consensus / Process
|
||
Created: 2025-02-19
|
||
License: MIT
|
||
Pull-Request: <<a href="https://github.com/zcash/zips/pull/???">https://github.com/zcash/zips/pull/???</a>>
|
||
</code></pre>
|
||
|
||
<h1 id="terminology"><span class="section-heading">Terminology</span><span class="section-anchor"> <a rel="bookmark" href="#terminology"><img width="24" height="24" class="section-anchor" src="assets/images/section-anchor.png" alt=""></a></span></h1>
|
||
|
||
<p>The key words “MUST”, “SHOULD”, and “MAY” in this document are to be interpreted as described in BCP 14 <a href="#fn:1" id="fnref:1" title="see footnote" class="footnote"><sup>1</sup></a> when, and only when, they appear in all capitals.</p>
|
||
|
||
<p>The terms “Mainnet” and “Testnet” in this document are to be interpreted as defined in the Zcash protocol specification <a href="#fn:2" id="fnref:2" title="see footnote" class="footnote"><sup>2</sup></a>.</p>
|
||
|
||
<p>The terms “Electric Coin Company” (or “ECC”), “Bootstrap Project” (or “BP”) and “Zcash Foundation” (or “ZF”) in this document are to be interpreted as described in ZIP 1014 <a href="#fn:3" id="fnref:3" title="see footnote" class="footnote"><sup>3</sup></a>.</p>
|
||
|
||
<p>The terms “Zcash Community Grants” (or “ZCG”), “ZCG Committee”, “Financial Privacy Foundation” (or “FPF”), and “Deferred Dev Fund Lockbox” in this document are to be interpreted as defined in ZIP 1015 <a href="#fn:4" id="fnref:4" title="see footnote" class="footnote"><sup>4</sup></a>.</p>
|
||
|
||
<p>“Shielded Labs” refers to the Assocation of that name registered in the Swiss canton of Zug under the Unique Identifier CHE-243.302.798.</p>
|
||
|
||
<p>Protocol-defined Ecosystem Funding is funding from sources defined by the Zcash Protocol for development of the Zcash ecosystem. At the time of writing, Protocol-defined Ecosystem Funding is allocated from a portion of block rewards via Funding Streams <a href="#fn:5" id="fnref:5" title="see footnote" class="footnote"><sup>5</sup></a> and Lockbox Funding Streams <a href="#fn:6" id="fnref:6" title="see footnote" class="footnote"><sup>6</sup></a>.</p>
|
||
|
||
<p>“ZEC” refers to the native currency of Zcash on Mainnet.</p>
|
||
|
||
<h1 id="abstract"><span class="section-heading">Abstract</span><span class="section-anchor"> <a rel="bookmark" href="#abstract"><img width="24" height="24" class="section-anchor" src="assets/images/section-anchor.png" alt=""></a></span></h1>
|
||
|
||
<p>This proposal outlines a funding model that gives the community and coin holders distinct voices in determining what, if any, grants are provided to support Zcash’s development and community efforts.</p>
|
||
|
||
<p>In this model:</p>
|
||
|
||
<ul>
|
||
<li>8% of the block rewards will be allocated to the ZCG for grants by and for the Zcash Community.</li>
|
||
<li>12% of the block rewards will accrue to a fund controlled by decisions of coin holders, seeded by the Deferred Dev Fund Lockbox.</li>
|
||
</ul>
|
||
|
||
<p>The Coinholder-Controlled Fund may be used to distribute larger grants to ecosystem participants, or left at rest.</p>
|
||
|
||
<p>This model would be activated through until the 3rd halving, allowing enough time to determine whether it should be changed or codified for longer.</p>
|
||
|
||
<h1 id="motivation"><span class="section-heading">Motivation</span><span class="section-anchor"> <a rel="bookmark" href="#motivation"><img width="24" height="24" class="section-anchor" src="assets/images/section-anchor.png" alt=""></a></span></h1>
|
||
|
||
<p>If no action is taken, in November 2025 funds from block subsidies will stop being directed to Zcash Community Grants <a href="#fn:7" id="fnref:7" title="see footnote" class="footnote"><sup>7</sup></a> and to the Deferred Dev Fund Lockbox established by ZIP 2001 <a href="#fn:6" title="see footnote" class="footnote"><sup>6</sup></a>. If the block subsidies stop, it will risk a gap in funding of Zcash development organisations, either via ZCG grants or via potential future disbursements from the Deferred Dev Fund Lockbox.</p>
|
||
|
||
<p>This proposal aims to:</p>
|
||
|
||
<ul>
|
||
<li>decentralize decision-making,</li>
|
||
<li>hold stakeholders accountable for outcomes,</li>
|
||
<li>be dynamic enough to allow for change, and</li>
|
||
<li>provide clarity on decision-making.</li>
|
||
</ul>
|
||
|
||
<p>It would immediately increase coinholders’ voice, minimize governance confusion, and simplify decision-making.</p>
|
||
|
||
<h1 id="requirements"><span class="section-heading">Requirements</span><span class="section-anchor"> <a rel="bookmark" href="#requirements"><img width="24" height="24" class="section-anchor" src="assets/images/section-anchor.png" alt=""></a></span></h1>
|
||
|
||
<ul>
|
||
<li>There is a well-defined, publically agreed, process for evaluation and community feedback on grant proposals.</li>
|
||
<li>Funds are held in a multisig resistant to compromise of some of the parties' keys, up to a given threshold.</li>
|
||
<li>No single party’s non-cooperation or loss of keys is able to cause any Protocol-defined Ecosystem Funding to be locked up unrecoverably.</li>
|
||
<li>During the period of this proposal, the block rewards are distributed as described in the <a href="#abstract">Abstract</a> above.</li>
|
||
<li>The funds from the 8% funding stream will be usable immediately on activation of this ZIP.</li>
|
||
<li>The funds in the Deferred Dev Fund Lockbox will be usable immediately on activation of this ZIP.</li>
|
||
<li>Any use of Deferred Dev Fund Lockbox funds is consistent with the purpose specified in <a href="#fn:8" id="fnref:8" title="see footnote" class="footnote"><sup>8</sup></a> of “funding grants to ecosystem participants”.</li>
|
||
</ul>
|
||
|
||
<h1 id="non-requirements"><span class="section-heading">Non-requirements</span><span class="section-anchor"> <a rel="bookmark" href="#non-requirements"><img width="24" height="24" class="section-anchor" src="assets/images/section-anchor.png" alt=""></a></span></h1>
|
||
|
||
<ul>
|
||
<li>Any changes to the ZCG or its governance, such as its expansion to include more members, may be desired but are specifically outside this proposal’s scope.</li>
|
||
<li>Any changes to Zcash protocol governance, specifically what changes are made to consensus node software, are outside this proposal’s scope.</li>
|
||
</ul>
|
||
|
||
<h1 id="specification"><span class="section-heading">Specification</span><span class="section-anchor"> <a rel="bookmark" href="#specification"><img width="24" height="24" class="section-anchor" src="assets/images/section-anchor.png" alt=""></a></span></h1>
|
||
|
||
<p>This proposal empowers both the community (through ZCG) and coin holders to independently determine what, if anything, should be funded through development fund grants.</p>
|
||
|
||
<p>The funding streams described below will be defined in a new revision of ZIP 214 <a href="#fn:9" id="fnref:9" title="see footnote" class="footnote"><sup>9</sup></a>.</p>
|
||
|
||
<h2 id="zcashcommunitygrants"><span class="section-heading">Zcash Community Grants</span><span class="section-anchor"> <a rel="bookmark" href="#zcashcommunitygrants"><img width="24" height="24" class="section-anchor" src="assets/images/section-anchor.png" alt=""></a></span></h2>
|
||
|
||
<p>A funding stream will be established for Zcash Community Grants, consisting of 8% of the block subsidy, and subject to all of the same rules currently specified in ZIP 1015 <a href="#fn:7" title="see footnote" class="footnote"><sup>7</sup></a>.</p>
|
||
|
||
<p>This funding stream will start on expiry of the existing <code>FS_FPF_ZCG</code> funding stream <a href="#fn:10" id="fnref:10" title="see footnote" class="footnote"><sup>10</sup></a>, and last for a further 1,260,000 blocks (approximately 3 years), ending at Zcash’s 3rd halving.</p>
|
||
|
||
<h2 id="coinholder-controlledfund"><span class="section-heading">Coinholder-Controlled Fund</span><span class="section-anchor"> <a rel="bookmark" href="#coinholder-controlledfund"><img width="24" height="24" class="section-anchor" src="assets/images/section-anchor.png" alt=""></a></span></h2>
|
||
|
||
<p>A pool of multisig-controlled funds, seeded from the existing contents of the ZIP 1015 Deferred Dev Fund Lockbox <a href="#fn:8" title="see footnote" class="footnote"><sup>8</sup></a> and supplemented with a funding stream consising of 12% of the block subsidy for the same time period as the Zcash Community Grants stream, forms a new Coinholder-Controlled Fund. The mechanisms for the creation and management of this fund are described by the Deferred Dev Fund Lockbox Disbursement proposal <a href="#fn:11" id="fnref:11" title="see footnote" class="footnote"><sup>11</sup></a>. This proposal sets the <span class="math">\(\mathsf{stream\_value}\)</span> parameter of that proposal to 12%, and the <span class="math">\(\mathsf{stream\_end\_height}\)</span> parameter to Mainnet block height 4406400, equal to that of the Zcash Community Grants stream so that both streams end at Zcash’s 3rd halving.</p>
|
||
|
||
<h3 id="requirementsonuseofthecoinholder-controlledfund"><span class="section-heading">Requirements on use of the Coinholder-Controlled Fund</span><span class="section-anchor"> <a rel="bookmark" href="#requirementsonuseofthecoinholder-controlledfund"><img width="24" height="24" class="section-anchor" src="assets/images/section-anchor.png" alt=""></a></span></h3>
|
||
|
||
<p>The Key-Holder Organizations SHALL be bound by a legal agreement to only use funds held in the Coinholder-Controlled Fund according to the specifications in this ZIP, expressed in suitable legal language. In particular, all requirements on the use of Deferred Dev Fund Lockbox funds in ZIP 1015 <a href="#fn:8" title="see footnote" class="footnote"><sup>8</sup></a> MUST be followed for the Coinholder-Controlled Fund.</p>
|
||
|
||
<p>The Key-Holder Organizations collectively administer the Coinholder-Controlled Fund based on decisions taken by coinholder voting, following a model decided by the community and specified in another ZIP [TBD].</p>
|
||
|
||
<h3 id="disbursementprocess"><span class="section-heading">Disbursement process</span><span class="section-anchor"> <a rel="bookmark" href="#disbursementprocess"><img width="24" height="24" class="section-anchor" src="assets/images/section-anchor.png" alt=""></a></span></h3>
|
||
|
||
<ol>
|
||
<li>Anyone can submit a grant application via a process agreed upon by the Key-Holder Organizations.</li>
|
||
<li>Coinholders will vote on grant applications every three months. Grant applications must be submitted for community review 30 days prior to coinholder voting.</li>
|
||
<li>If a grant application is not <a href="#veto-process">vetoed</a> and proceeds to a coinholder vote according to the agreed process, then coinholders will be asked to vote on it.</li>
|
||
<li>If the vote passes, then as payments are scheduled for the grant, then (subject to the <a href="#vetoprocess">Veto process</a>) the Key-Holder Organizations SHOULD sign the corresponding transactions for disbursement from the Coinholder-Controlled Fund.</li>
|
||
</ol>
|
||
|
||
<p>For coinholder votes, a minimum of 420,000 ZEC (2% of the total eventual supply) MUST be voted, with a simple majority cast in favor, for a grant proposal to be approved. Upon approval, the grants are paid to the recipient per the terms of the grant proposal. In the case that multiple grant proposals are submitted that are in competition with one another, a single winner will be selected by holding a separate coinholder vote for each proposal, with the approved proposal having the highest total ZEC value committed in support being the winner. It is the responsibility of the Key-Holder Organizations to determine whether proposals are in competition with one another when organizing coinholder votes.</p>
|
||
|
||
<p>Each coinholder vote (including in cases where multiple grants are in competition) is independent, and coins used in one vote are also allowed to be used in another; this approach is necessary to avoid vote-splitting scenarios that can result in an option being selected that achieves only a plurality (not a majority) of coinholder support.</p>
|
||
|
||
<p>Coinholders SHOULD take account of the same factors considered by the ZCG Committee (described in points 2, 3, and 4 of <a href="#fn:7" title="see footnote" class="footnote"><sup>7</sup></a>) in deciding whether to fund a grant. If any contentious issue arises in connection with a grant (such as milestones not being met), or periodically for grants of indefinite duration, the Key-Holder Organizations SHOULD hold additional coinholder votes to determine whether funding should continue.</p>
|
||
|
||
<p>Coinholders are not obligated to fund any grants and MAY leave the funds at rest.</p>
|
||
|
||
<p>No organizations or individuals are restricted from voting their coins.</p>
|
||
|
||
<h3 id="vetoprocess"><span class="section-heading">Veto process</span><span class="section-anchor"> <a rel="bookmark" href="#vetoprocess"><img width="24" height="24" class="section-anchor" src="assets/images/section-anchor.png" alt=""></a></span></h3>
|
||
|
||
<p>A grant is vetoed if:</p>
|
||
|
||
<ul>
|
||
<li>any Key-Holder Organization declares that funding the grant would violate any of its legal or reporting obligations; or</li>
|
||
<li>two or more Key-Holder Organizations declare that they have a principled objection to it on the basis of potential harm to Zcash users, or because it is antithetical to the values of the Zcash community.</li>
|
||
</ul>
|
||
|
||
<p>If a grant is vetoed after passing a coinholder vote, then payments for it MUST be stopped. This is expected to be an unusual situation that would only occur if new adverse information came to light, or in the case of a change in the law or unanticipated legal proceedings.</p>
|
||
|
||
<p>The Key-holder Organizations cannot veto coinholder rejection of a proposal.</p>
|
||
|
||
<p>Vetos are intended for exceptional cases and SHOULD be accompanied by a thorough rationale.</p>
|
||
|
||
<h2 id="administrativeobligationsandconstraints"><span class="section-heading">Administrative obligations and constraints</span><span class="section-anchor"> <a rel="bookmark" href="#administrativeobligationsandconstraints"><img width="24" height="24" class="section-anchor" src="assets/images/section-anchor.png" alt=""></a></span></h2>
|
||
|
||
<p>All provisions of ZIP 1015 imposing obligations and constraints on Bootstrap Project, Electric Coin Company, Zcash Foundation, Financial Privacy Foundation, the ZCG Committee, and grant recipients relating to the previous <code>FS_FPF_ZCG</code> funding stream, SHALL continue in effect for Zcash Community Grants.</p>
|
||
|
||
<p>These obligations and constraints will be extended to all Key-Holder Organizations in respect of the Coinholder-Controlled Fund.</p>
|
||
|
||
<p>The provisions after the first paragraph of the section “Zcash Community Grants (ZCG)” also apply to the Key-Holder Organizations' administration of the Coinholder-Controlled Fund, with coinholder voting replacing the role of the ZCG Committee.</p>
|
||
|
||
<p>Note: Nothing forces developers of Zcash consensus node software to implement any particular proposal. The aim of a process specification like this one is only to indicate social consensus. It fundamentally cannot affect the autonomy of developers of Zcash consensus node software to publish (or not) the software they want to publish, or the autonomy of node operators to run (or not) the software they want to run.</p>
|
||
|
||
<h2 id="securityprecautions"><span class="section-heading">Security precautions</span><span class="section-anchor"> <a rel="bookmark" href="#securityprecautions"><img width="24" height="24" class="section-anchor" src="assets/images/section-anchor.png" alt=""></a></span></h2>
|
||
|
||
<p>The Key-Holder Organizations and the ZCG Committee MUST take appropriate precautions to safeguard funds from theft or accidental loss. Any theft or loss of funds, or any loss or compromise of key material MUST be reported to the Zcash community as promptly as possible after applying necessary mitigations.</p>
|
||
|
||
<h2 id="testnet-specificconsiderations"><span class="section-heading">Testnet-specific considerations</span><span class="section-anchor"> <a rel="bookmark" href="#testnet-specificconsiderations"><img width="24" height="24" class="section-anchor" src="assets/images/section-anchor.png" alt=""></a></span></h2>
|
||
|
||
<p>In order to allow the mechanism and process for coinholder voting to be tested, this process SHOULD be rehearsed on Testnet. The threshold of 420,000 ZEC applied to Mainnet coinholder votes does not apply to these rehearsals.</p>
|
||
|
||
<h1 id="openquestions"><span class="section-heading">Open questions</span><span class="section-anchor"> <a rel="bookmark" href="#openquestions"><img width="24" height="24" class="section-anchor" src="assets/images/section-anchor.png" alt=""></a></span></h1>
|
||
|
||
<ul>
|
||
<li>Is 420,000 ZEC the right threshold for coinholder votes?</li>
|
||
</ul>
|
||
|
||
<h1 id="references"><span class="section-heading">References</span><span class="section-anchor"> <a rel="bookmark" href="#references"><img width="24" height="24" class="section-anchor" src="assets/images/section-anchor.png" alt=""></a></span></h1>
|
||
|
||
<div class="footnotes">
|
||
<hr />
|
||
<ol>
|
||
|
||
<li id="fn:1">
|
||
<p><a href="https://www.rfc-editor.org/info/bcp14">Information on BCP 14 — “RFC 2119: Key words for use in RFCs to Indicate Requirement Levels” and “RFC 8174: Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words”</a> <a href="#fnref:1" title="return to body" class="reversefootnote"> ↩︎</a></p>
|
||
</li>
|
||
|
||
<li id="fn:2">
|
||
<p><a href="protocol/protocol.pdf#networks">Zcash Protocol Specification, Version 2024.5.1. Section 3.12: Mainnet and Testnet</a> <a href="#fnref:2" title="return to body" class="reversefootnote"> ↩︎</a></p>
|
||
</li>
|
||
|
||
<li id="fn:3">
|
||
<p><a href="zip-1014">ZIP 1014: Establishing a Dev Fund for ECC, ZF, and Major Grants</a> <a href="#fnref:3" title="return to body" class="reversefootnote"> ↩︎</a></p>
|
||
</li>
|
||
|
||
<li id="fn:4">
|
||
<p><a href="zip-1015">ZIP 1015: Block Subsidy Allocation for Non-Direct Development Funding</a> <a href="#fnref:4" title="return to body" class="reversefootnote"> ↩︎</a></p>
|
||
</li>
|
||
|
||
<li id="fn:5">
|
||
<p><a href="zip-0207">ZIP 207: Funding Streams</a> <a href="#fnref:5" title="return to body" class="reversefootnote"> ↩︎</a></p>
|
||
</li>
|
||
|
||
<li id="fn:6">
|
||
<p><a href="zip-2001">ZIP 2001: Lockbox Funding Streams</a> <a href="#fnref:6" title="return to body" class="reversefootnote"> ↩︎</a></p>
|
||
</li>
|
||
|
||
<li id="fn:7">
|
||
<p><a href="zip-1015#zcash-community-grants-zcg">ZIP 1015: Block Subsidy Allocation for Non-Direct Development Funding — Zcash Community Grants</a> <a href="#fnref:7" title="return to body" class="reversefootnote"> ↩︎</a></p>
|
||
</li>
|
||
|
||
<li id="fn:8">
|
||
<p><a href="zip-1015#lockbox">ZIP 1015: Block Subsidy Allocation for Non-Direct Development Funding — Lockbox</a> <a href="#fnref:8" title="return to body" class="reversefootnote"> ↩︎</a></p>
|
||
</li>
|
||
|
||
<li id="fn:9">
|
||
<p><a href="zip-0214">ZIP 214: Consensus rules for a Zcash Development Fund</a> <a href="#fnref:9" title="return to body" class="reversefootnote"> ↩︎</a></p>
|
||
</li>
|
||
|
||
<li id="fn:10">
|
||
<p><a href="zip-1015#funding-streams">ZIP 1015: Block Subsidy Allocation for Non-Direct Development Funding — Funding Streams</a> <a href="#fnref:10" title="return to body" class="reversefootnote"> ↩︎</a></p>
|
||
</li>
|
||
|
||
<li id="fn:11">
|
||
<p><a href="draft-ecc-lockbox-disbursement">draft-ecc-lockbox-disbursement: Deferred Dev Fund Lockbox Disbursement</a> <a href="#fnref:11" title="return to body" class="reversefootnote"> ↩︎</a></p>
|
||
</li>
|
||
|
||
</ol>
|
||
</div>
|
||
</body>
|
||
</html>
|