Consensus power is currently granted at least
ChainFinality (=900) blocks after a sector is onboarded onchain via
This is due to
PowerTableLookback: at each epoch
t, leader election protocol selects SPs proportionally to their quality adjusted power at epoch
This means that on one side power activation is currently deferred by at least 900 epochs, but on the other hand sector power is retained after sector termination accordingly.
Effects on Network Power
Given collateral is given back at sector termination, in practice each sector has
PowerTableLookback epochs of power which are not covered by collateral.
This aspect is not ideal, as malicious parties could buy power for a limited window of time at cheap price.
t = termination epoch, from epoch
t to epoch
t + PowerTableLoobback only sector storage costs need to be paid by the SP in order to effectively benefit by sector power (given sector is indeed terminated,
WindowPost is needed collateral is already returned).
There are two fix that we can put in place in order to avoid the possibility of cheap power rental:
- Give back sector collateral
PowerTableLookbackepochs after termination. Note that this would translate into additional
PowerTableLookbackof capital cost with respect to the status quo
- Accounting power for not terminated sectors only. Note that this change would immediately translate into a loss of power for sectors of
PowerTableLookbackepochs, compared with the status quo.
None of the above solution is costless. Ideally, we could explore the possibility of allowing SP to opt-in, when onboarding a sector to any of the two alternatives, depending on which one fits best for them.
Before moving forward we should
- Understand how complex it is to put in place (any of) the two fixes proposed above
- Understand if it is doable to offer opt-in possibility to any of the two fixes when onboarding a new sector
Related topics: Sample only active sectors for WinningPost
In the process of proposing a longer
PowerTableLookback (from current 900 epochs to 7 days)
we acknowledged that this change would lead to an additional storage overhead for SP who want to keep the power for
PowerTableLookback epochs after termination (again from current 900 epochs to 7 day).
One idea which has been discussed was the following:
- At epoch
egrant power looking at the power table of epoch
e = PowerTableLookback( same way as today)
WinningPoStsector sampling purposes, consider only sectors which are active at epoch
While this would be beneficial for SP in terms of storage costs overhead (power is maintained for a window of time which has same length as sector lifetime, without the need to keep storing the sector for
PowerTableLookback after termination), this improvement would make the uncollateralized sector power issue highlighted above even worse.