Dependencies between a selection of protocol changes related to storage utility and flexibility: reducing onboarding frictions, improving programmability, while maintaining safety and network revenue. Some proposals support or are required by some others.
This is not intending to be a complete list of protocol changes for consideration or prioritisation, just a view of some of them related to storage utility and safety.
graph TD
DataPenalty -->|supports| TerminationFee[Simpler Termination Fees]
DataPenalty[Data Termination Penalty] -->|required by| FreeCommD
ProofFees -->|should precede| FreeCommD[Free CommD]
ProofFees -->|required by| GasLanes[Pseudo Gas Lanes]
FreeCommD -->|required by| CheapDeals[Cheap Deals]
FreeCommD -->|required by| LargeDeals[Large Deals]
FreeCommD -->|required by| LongDeals[Long Deals]
FreeCommD -->|required by| ScalableFIL+[Scalable FIL+]
SyncActivation[Sync Activation] -->|required by| SectorEvents[Sector Events]
CommDOnChain[CommD On Chain] -->|causes| MinerAPIChange[Miner API Change]
SyncActivation -->|causes| MinerAPIChange
SectorEvents -->|causes| MinerAPIChange
Outcomes
- Proof Fees: FIPs #557 and #587
- Network revenue indexed to use of storage, independent of possible gas commoditization.
- Pseudo Gas Lanes: HackMD, FIPs #679.
- Protect core storage operations from gas competition with apps. Support increasing FVM revenue without threatening storage.
- Data termination penalty: write-up
- Data/deal assurance independent of built-in market.
- Free CommD: write-up
- Flexible storage, data DAOs and storage apps, cheaper and more capable deals.
- Simpler Termination Fees: write-up
- Reduced SP costs and lender risks, reduced barriers to onboarding, simpler core.
- Synchronous Activation: FIPs #689
- Removal of cron subsidy for single activations, potentially support SAAS.
- CommD On Chain: FIPs #496
- Storage/data applications can inspect sector content.
- Sector Events: write-up
- On-chain push events from onboarding to storage/data applications.
Change | Direct beneficiaries | Impact | Work |
Proof fees | Holders, Core Devs | High long term | Med/High |
Pseudo gas lanes | SPs, Clients (indirect) | High | Med |
Data termination penalty | SPs, Clients, Core Devs | Low (but a pre-req) | Low |
Free CommD | SPs, Clients, FVM Devs, Core Devs | Med/High | Med/High |
Simpler termination fees | SPs, Core Devs | Med short and term | Low/Med |
Synchronous activation | Safety | Med short and long term | Low |
CommD on chain | FVM Devs | Med long term | Low |
Sector events | FVM Devs | Med long term | Med |
At best guess, none of these are super complicated changes, but they haven’t been designed in detail yet. Dragons may lurk.
Because miner API change is costly, we might try to make one API change that supports all the planed improvements at once, then deliver functionality incrementally.
Dependency details
- Proof Fees may replace Network Data Collateral because token-locking benefits could be replaced with a data fee charged at proof verification.
- Proof Fees are required by Free CommD to provide a mechanism for network revenue when deals are made in alternative or off-chain markets (data fees).
- Proof Fees are required by Gas Lanes to capture revenue from demand without the batch balancer.
- Network Data Collateral is required by Free CommD if we want to maintain a minimum network-level deal collateral requirement (which is arguable). Alternatively, just remove mandatory deal collateral.
- Network Data Collateral supports Simpler Termination Fees because it can meet any client assurance role of termination fees, if necesary.
- Synchronous Activation is required for Sector Events because we can’t call untrusted code from cron.