From 467083d8795416cc081a6b45de336af912b2ccf7 Mon Sep 17 00:00:00 2001 From: jnthnvctr Date: Mon, 23 Sep 2024 17:23:17 -0400 Subject: [PATCH 1/4] Create fip-0093.md --- FIPS/fip-0093.md | 74 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 FIPS/fip-0093.md diff --git a/FIPS/fip-0093.md b/FIPS/fip-0093.md new file mode 100644 index 00000000..cd3c0d47 --- /dev/null +++ b/FIPS/fip-0093.md @@ -0,0 +1,74 @@ +--- +fip: "0093" +title: Set the Mining Reserve to Zero +author: jnthnvctr (@jnthnvctr) +discussions-to: https://github.com/filecoin-project/FIPs/discussions/1030 +status: Draft +type: Technical +category: Core +created: 2024-07-25 +--- + + + +# FIP-0093: Set the Mining Reserve to Zero + + +## Simple Summary + +This proposal aims to remove the mining reserve tokens [282.9m](https://filfox.info/en/address/f090) by setting its balance to 0. This does not preclude other FIPs from being proposed to create new tokens (as future incentives, funding iniatives etc). After this FIP, the total supply of FIL should be ~1717066618.96 (2b minus the current amt in [f090](https://filfox.info/en/address/f090)). + + +## Abstract + +The [mining reserve](https://spec.filecoin.io/systems/filecoin_token/token_allocation/) was intended to be a reserve of tokens to incentivize future types of mining. In the spec, this is noted to potentially "[not] be enough" and that the community will "decide... whether to make adjustments with unmined tokens" (last line of the paragraph on the [mining reserve](https://spec.filecoin.io/systems/filecoin_token/token_allocation/)). + +This proposal seeks to remove the mining reserve by setting `f090` to have a balance of 0. This does not preclude new tokens from being created - rather that any new incentives should be created at the point when new forms of mining are introduced rather than relying on a set of pre-minted tokens. + +## Change Motivation + +There are a number of reasons why the mining reserve can be viewed as a net cost: +1. The role of the mining reserve is non-standard - at the time of authoring, no other L1 has this amount of supply left up to potential release (~50% of the current supply, 15% of the total max supply) which creates a large gap between the FDV and Market Cap. +2. The mining reserve reinforces an anchor around Filecoin being a fixed supply currency. Given there is always the ability for the community to fork to change the supply, this is an unnecessary meme to reinforce - but constricts discussion. 300m should not be assumed to be the default (in either direction as a maximum or minimum) for the amount of tokens available for new mining - any new proposal should include its own assessment for the tokens required. +3. The mining reserve requires a FIP to use (the same process for creating new tokens) - in the event these tokens are needed; its unclear there would be any _less_ pushback in the community if were to create new sources of dilution. +4. Filecoin's inflation is already quite high relative to other ecosystems - removing the mining reserve should change the default from creating net new sources of inflation to bring new value flows into the ecosystem (vs optimizing the inflation already in the network) + + +## Spec + +1. Set balance of `f090` to 0. +2. Adjust all circulating supply dependencies and the invariant checks to recognize the total supply is no longer 2b given the mining reserve has been set to 0. + +## Rationale + +The proposal aims to move away from relying a fixed amount of tokens in the mining reserve that might be used for new mining, to having new FIPs be proposed explicitly creating (or redistributing existing) incentives. + +There has been some discussion about whether this should be achieved by setting f090 to 0 or by burning the tokens in f090. + +One pro to burning is that there is a "narrative" value to saying the network is burning 15% of its max supply. However, this has a related con - in that it may overly anchor the ecosystem to only destroying tokens without considering how inflation can be used to productively grow the ecosystem. + +One pro to setting f090 to 0 is that it functionally has the same effect as burning - without the same connotations of simply destroying tokens for the sake of it. One slight con, is that it may not have the same "shock" value as saying burn. + +For the intended purposes, listed above in Change Motivation, setting the mining reserve to 0 achieves the main goals (and in the author's opinion doesn't substantially sacrifice a narrative goal as the total supply of the network is still decereasing). However, it should be noted that the difference between these two in practical terms seems very slight and is mostly subjective. + +## Product Considerations + +This should not affect the product as these are not tokens that are being used. Any future proposal that might need new sources of inflation is not blocked from including new incentives in their proposals. + +## Security Considerations + +This should not affect the security as these tokens are not used to incentivize any action. Any future proposal that might need new sources of inflation to help incentivize / secure new mechanisms are not blocked from including new incentives in their proposals. + +## Incentive Considerations + +The proposed change requires future explicit proposals (aiming to incentivize new forms of mining) to explicitly mint new tokens. This should not change the difficulty of making such proposals, as both (using the mining reserve, creating new tokens) would have the short term effect of diluting stakeholders. + +## Implementations + +1. Set the balance of `f090` to 0. +2. Adjust all circulating supply dependencies and the invariant checks to recognize the total supply is no longer 2b given the mining reserve has been set to 0. The total supply of the token should be the total supply of FIL should be ~1717066618.96 (2b minus the current amt in [f090](https://filfox.info/en/address/f090)). + + +## Copyright Waiver + +Copyright and related rights waived via [CC0](https://creativecommons.org/publicdomain/zero/1.0/). From 8c138a8982d7c7c67018c7d64358a38b963e81d9 Mon Sep 17 00:00:00 2001 From: jnthnvctr Date: Mon, 23 Sep 2024 17:31:25 -0400 Subject: [PATCH 2/4] Update fip-0093.md --- FIPS/fip-0093.md | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/FIPS/fip-0093.md b/FIPS/fip-0093.md index cd3c0d47..fb7aabd6 100644 --- a/FIPS/fip-0093.md +++ b/FIPS/fip-0093.md @@ -16,7 +16,7 @@ created: 2024-07-25 ## Simple Summary -This proposal aims to remove the mining reserve tokens [282.9m](https://filfox.info/en/address/f090) by setting its balance to 0. This does not preclude other FIPs from being proposed to create new tokens (as future incentives, funding iniatives etc). After this FIP, the total supply of FIL should be ~1717066618.96 (2b minus the current amt in [f090](https://filfox.info/en/address/f090)). +This proposal aims to remove the mining reserve tokens. This does not preclude other FIPs from being proposed to create new tokens (as future incentives, funding iniatives etc). After this FIP, the total supply of FIL should be ~1717066618.96 (2b minus the current amt in [f090](https://filfox.info/en/address/f090)) - though future FIPs may change this number. ## Abstract @@ -29,9 +29,8 @@ This proposal seeks to remove the mining reserve by setting `f090` to have a bal There are a number of reasons why the mining reserve can be viewed as a net cost: 1. The role of the mining reserve is non-standard - at the time of authoring, no other L1 has this amount of supply left up to potential release (~50% of the current supply, 15% of the total max supply) which creates a large gap between the FDV and Market Cap. -2. The mining reserve reinforces an anchor around Filecoin being a fixed supply currency. Given there is always the ability for the community to fork to change the supply, this is an unnecessary meme to reinforce - but constricts discussion. 300m should not be assumed to be the default (in either direction as a maximum or minimum) for the amount of tokens available for new mining - any new proposal should include its own assessment for the tokens required. -3. The mining reserve requires a FIP to use (the same process for creating new tokens) - in the event these tokens are needed; its unclear there would be any _less_ pushback in the community if were to create new sources of dilution. -4. Filecoin's inflation is already quite high relative to other ecosystems - removing the mining reserve should change the default from creating net new sources of inflation to bring new value flows into the ecosystem (vs optimizing the inflation already in the network) +2. The mining reserve requires a FIP to use (the same process for creating new tokens) - in the event these tokens are needed; its unclear there would be any _less_ pushback in the community if were to create new sources of dilution. + ## Spec @@ -49,11 +48,11 @@ One pro to burning is that there is a "narrative" value to saying the network is One pro to setting f090 to 0 is that it functionally has the same effect as burning - without the same connotations of simply destroying tokens for the sake of it. One slight con, is that it may not have the same "shock" value as saying burn. -For the intended purposes, listed above in Change Motivation, setting the mining reserve to 0 achieves the main goals (and in the author's opinion doesn't substantially sacrifice a narrative goal as the total supply of the network is still decereasing). However, it should be noted that the difference between these two in practical terms seems very slight and is mostly subjective. +For the intended purposes, listed above in Change Motivation, setting the mining reserve to 0 achieves the main goals (and in the author's opinion doesn't substantially sacrifice a narrative goal as the total supply of the network is still decreasing). However, it should be noted that the difference between these two in practical terms seems very slight and is mostly subjective. ## Product Considerations -This should not affect the product as these are not tokens that are being used. Any future proposal that might need new sources of inflation is not blocked from including new incentives in their proposals. +Depending on perspective this may affect the product. These tokens were intended to be used to incentivize future types of mining. However, any future proposal that might need new sources of inflation is not blocked from including new incentives in their proposals - and this could include using incentives for other forms of more productive activity (that are not specifically mining - e.g. a product development funds) ## Security Considerations @@ -61,7 +60,7 @@ This should not affect the security as these tokens are not used to incentivize ## Incentive Considerations -The proposed change requires future explicit proposals (aiming to incentivize new forms of mining) to explicitly mint new tokens. This should not change the difficulty of making such proposals, as both (using the mining reserve, creating new tokens) would have the short term effect of diluting stakeholders. +The proposed change requires future explicit proposals (aiming to incentivize new forms of mining) to explicitly mint new tokens. This should not change the difficulty of making such proposals, as both (using the mining reserve, creating new tokens) would have the short term effect of diluting stakeholders. This changes the optics of having large amounts of potential dilution that do not have a definite time horizon to entering the supply (which can have a negative signal). ## Implementations From a415978abb4d66cf95268fe66484eb9b23f84035 Mon Sep 17 00:00:00 2001 From: jnthnvctr Date: Mon, 23 Sep 2024 17:52:01 -0400 Subject: [PATCH 3/4] Update fip-0093.md --- FIPS/fip-0093.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/FIPS/fip-0093.md b/FIPS/fip-0093.md index fb7aabd6..fca586b1 100644 --- a/FIPS/fip-0093.md +++ b/FIPS/fip-0093.md @@ -44,9 +44,9 @@ The proposal aims to move away from relying a fixed amount of tokens in the mini There has been some discussion about whether this should be achieved by setting f090 to 0 or by burning the tokens in f090. -One pro to burning is that there is a "narrative" value to saying the network is burning 15% of its max supply. However, this has a related con - in that it may overly anchor the ecosystem to only destroying tokens without considering how inflation can be used to productively grow the ecosystem. +One pro to burning is that there is a "narrative" value to saying the network is burning 15% of its max supply. However, this has a related con - in that it may overly anchor the ecosystem to only destroying tokens without considering how inflation can be used to productively grow the ecosystem. Specifically, others in the community have proposed repurposing the Mining Reserve to incentvize other parts of the "value chain" - eg incentives to bring paid revenue on chain, acquire / incorporate protocols, fund future research and development. If the tokens are simply burned (and the community anchors to 2b as the max supply), these initiatives may be harder to fund in the future. -One pro to setting f090 to 0 is that it functionally has the same effect as burning - without the same connotations of simply destroying tokens for the sake of it. One slight con, is that it may not have the same "shock" value as saying burn. +One pro to setting f090 to 0 is that it functionally has the same effect as burning - without the same connotations of simply destroying tokens for the sake of it. If the goal is to not anchor heavily to 2b, this nudges slightly closer to treating the supply as a dynamic number. One slight con, is that it may not have the same "shock" value as saying burn. For the intended purposes, listed above in Change Motivation, setting the mining reserve to 0 achieves the main goals (and in the author's opinion doesn't substantially sacrifice a narrative goal as the total supply of the network is still decreasing). However, it should be noted that the difference between these two in practical terms seems very slight and is mostly subjective. From e17b24f4767eb99f06d729036703259358817769 Mon Sep 17 00:00:00 2001 From: jnthnvctr Date: Mon, 23 Sep 2024 18:19:18 -0400 Subject: [PATCH 4/4] Update README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index fed9d3d8..47444d9e 100644 --- a/README.md +++ b/README.md @@ -129,5 +129,6 @@ This improvement protocol helps achieve that objective for all members of the Fi | [0090](https://github.com/filecoin-project/FIPs/blob/master/FIPS/fip-0090.md) | Non-Interactive PoRep | FIP | luca (@lucaniz), kuba (@Kubuxu), nicola (@nicola), nemo (@cryptonemo), volker (@vmx), irene (@irenegia) | Superseded by [FIP0092](https://github.com/filecoin-project/FIPs/blob/master/FIPS/fip-0092.md) | | [0091](https://github.com/filecoin-project/FIPs/blob/master/FIPS/fip-0091.md) | Add support for Homestead and EIP-155 Ethereum Transactions ("legacy" Ethereum Transactions) | FIP | Aarsh (@aarshkshah1992)| Accepted | | [0092](https://github.com/filecoin-project/FIPs/blob/master/FIPS/fip-0092.md) | Non-Interactive PoRep | FIP | luca (@lucaniz), kuba (@Kubuxu), nicola (@nicola), nemo (@cryptonemo), volker (@vmx), irene (@irenegia), Alex North (@anorth), orjan (@Phi-rjan) | Final | +| [0093](https://github.com/filecoin-project/FIPs/blob/master/FIPS/fip-0093.md) | Set the Mining Reserve to Zero | FIP | jnthnvctr (@jnthvnctr) | Draft | | [0094](https://github.com/filecoin-project/FIPs/blob/master/FIPS/fip-0094.md) | Add Support for EIP-5656 (MCOPY Opcode) in the FEVM | FIP | Michael Seiler (@snissn), Raúl Kripalani (@raulk), Steven Allen (@stebalien) | Last Call | | [0095](https://github.com/filecoin-project/FIPs/blob/master/FIPS/fip-0095.md) | Add FEVM precompile to fetch beacon digest from chain history | FIP | @ZenGround0, Alex North (@anorth) | Last Call |