Skip to content

FIP-0100: artificially bump calibnet circulating supply up further to match mainnet#1133

Merged
rvagg merged 2 commits intomasterfrom
rvagg/fip-0100/calibnet-tweak
Mar 14, 2025
Merged

FIP-0100: artificially bump calibnet circulating supply up further to match mainnet#1133
rvagg merged 2 commits intomasterfrom
rvagg/fip-0100/calibnet-tweak

Conversation

@rvagg
Copy link
Copy Markdown
Member

@rvagg rvagg commented Mar 7, 2025

900M is the correct value for InitialFilReserved on calibration net, which is what we're trying to address to make circulating supply non-negative. But it lands us at a CS value of ~386M. This change proposes to artificially raise InitialFilReserved by another 300M to bring CS to ~686M which is very close to the current mainnet CS value (~686M). It is expected that these numbers will continue to diverge over time, but having them close together is useful to increase the fidelity of testing change implementations, particularly for this FIP right now.

Coming out of some discussion in filecoin-project/lotus#12938

@BigLep BigLep requested a review from Stebalien March 11, 2025 23:12
Comment thread FIPS/fip-0100.md Outdated
Comment on lines +397 to +398
| `InitialFilReserved` | 300,000,000 | 1,200,000,000 |
| `FilReserveDisbursed` | 17,066,619 | 300,721,729 |
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

We're increasing the reserve by 300k, but then increasing dispersed by 270k. Is that what we mean to do? It looks like it'll work, I just wanted to double check.

Copy link
Copy Markdown
Member Author

@rvagg rvagg Mar 12, 2025

Choose a reason for hiding this comment

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

Yeah, though I got this wrong and need to update it, I added an extra 0 instead of a a 3 when pushing it up by another 300k:

Suggested change
| `InitialFilReserved` | 300,000,000 | 1,200,000,000 |
| `FilReserveDisbursed` | 17,066,619 | 300,721,729 |
| `InitialFilReserved` | 300,000,000 | 1,200,000,000 |
| `FilReserveDisbursed` | 17,066,619 | 330,721,729 |

This gets us to ~695M circulating supply.

The real number for FilReserveDisbursed right now on calibnet with this adjustment would be 330,855,429, but the original is close enough. I just need to confirm the 695M / 686M discrepancy between this doc and my current calcs, it seems a bit large.

Equation details written up in long-form and code here: filecoin-project/lotus#12938, the juicy bits are:


The basic equation for circulating supply is:

$$CS = \max(0, FilVested + FilMined + FilReserveDisbursed - FilBurnt - FilLocked)$$

FilReserveDisbursed is the thing we're going to tinker with, it's further broken down as:

$$CS = \max(0, FilVested + FilMined + (InitialFilReserved - FilReserved) - FilBurnt - FilLocked)$$

...

Calibnet 300M -> 1.2B

$$CS = \max(0, 330780229228386605786661888 + 70513551539223285753426670 + (1200000000000000000000000000 - 869144570890006671285774984) - 32241695511329683287634028 - 4227151872445836887470146)$$ $$CS = 695M$$

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

ok, so the discrepancy is calibnet growth since I got the original numbers

# Current CS:
323483605 + 68672646 + (300000000 - 869278271) - 32117860 - 3893484 = -213133364
# FIP-0100 CS:
323483605 + 68672646 + (900000000 - 869278271) - 32117860 - 3893484 = 386866636
# This change:
323483605 + 68672646 + (1200000000 - 869278271) - 32117860 - 3893484 = 686866636
# This change w/ current calibnet numbers:
332296928 + 70878601 + (1200000000 - 869278271) - 33776947 - 4250794 = 695869517

rvagg added 2 commits March 14, 2025 11:37
… match mainnet

900M is the correct value for `InitialFilReserved` on calibration net, which is
what we're trying to address to make circulating supply non-negative. But it
lands us at a CS value of ~386M. This change proposes to artificially raise
`InitialFilReserved` by another 300M to bring CS to ~686M which is very close
to the current mainnet CS value (~686M). It is expected that these numbers will
continue to diverge over time, but having them close together is useful to
increase the fidelity of testing change implementations, particularly for this
FIP right now.
@rvagg rvagg force-pushed the rvagg/fip-0100/calibnet-tweak branch from 4cde32a to cf71492 Compare March 14, 2025 00:37
@rvagg rvagg merged commit aec4580 into master Mar 14, 2025
@rvagg rvagg deleted the rvagg/fip-0100/calibnet-tweak branch March 14, 2025 00:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants