You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: FIPS/fip-0100.md
+3-2Lines changed: 3 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -77,9 +77,10 @@ We introduce a per-sector fee, whose value is proportional to a fixed fraction o
77
77
In more detail, for any sector committed after this FIP is deployed we have:
78
78
79
79
- At ProveCommit time, we compute the per sector value as `dailyFee = k * CS(t) * sectorQAP`, where `k = 1.61817 E-25` is a system constant (a per-byte approximation of `5.56 E-15` per 32 GiB of QAP), `CS(t)` is the circulating supply value at the sector activation epoch, and `sectorQAP` is the quality adjusted power of the sector in bytes. The `dailyFee` value is stored but no payment is due at ProveCommit time.
80
-
- Then, at the end of each deadline, we compute: `dailyPayment = min (deadline_dailyFee, m * expected_day_reward)`, where `deadline_dailyFee` is the sum of `dailyFee` of all sectors in the deadline, `m = 0.5` is another system constant and `expected_day_reward` is the updated value for the daily expected block reward for all sectors in the deadline. The `dailyPayment` value is burnt. Note that only new[^1] sectors and old sectors extended or updated after this FIP is deployed count for the `deadline_dailyFee` (indeed, any other sector has no `dailyFee` defined), while all sectors count for the `expected_day_reward` value.
80
+
- Then, at the end of each deadline (except the final deadline of a sector's lifetime), we compute: `dailyPayment = min (deadline_dailyFee, m * expected_day_reward)`, where `deadline_dailyFee` is the sum of `dailyFee` of all sectors in the deadline, `m = 0.5` is another system constant and `expected_day_reward` is the updated value for the daily expected block reward for all sectors in the deadline. The `dailyPayment` value is burnt. Note that only new[^1] sectors and old sectors extended or updated after this FIP is deployed count for the `deadline_dailyFee` (indeed, any other sector has no `dailyFee` defined), while all sectors count for the `expected_day_reward` value.
81
+
-_Fee Charging Alignment:_ For each sector, the daily fee is charged at the end of each deadline period starting from the first deadline after the sector is onboarded until the second-to-last deadline of the sector's lifetime. At the sector's final deadline (the 60-epoch period during which a sector's expiration falls), neither the fee nor the sector's power are included in the fee payment or BR cap calculation. This implementation ensures that for a sector with `n` days duration, exactly `n` daily fees are paid, which aligns with the `n` days of estimated block rewards used for calculating the fee cap.
81
82
- If a sector is extended (via the method `ExtendSectorExpiration` or `ExtendSectorExpiration2`) or updated (via the method `ProveReplicaUpdates` or `ProveReplicaUpdates3`, "snaps"), the `dailyFee` value is updated using the new `sectorQAP` if the QAP changes (for example, when dropping claims during extension, or adding verified deals during replica updates), but the update is independent of the current CS value. That is: `new_dailyFee = old_dailyFee * new_sectorQAP/old_sectorQAP`.
82
-
- When the sector expires or gets terminated, the sector is no longer counted in the `deadline_dailyFee` value for the deadline.
83
+
- When the sector reaches its final deadline period (the 60-epoch period before expiration) or gets terminated, the sector is no longer counted in the `deadline_dailyFee` value for the deadline, ensuring alignment between the number of daily fees paid and the number of days of block rewards used for the cap calculation.
83
84
84
85
[^1]: We use "old sectors" for sectors committed before this FIP is deployed, and we use "new sectors" for sectors committed after this FIP is deployed.
0 commit comments