This note describes an idea for a mechanism of notifying the market actor of faults in deal-bearing sectors that could be extended to other, third-party markets in the future. It builds up by walking through a few alternatives first.

Take discussion to the FIPs repo:

Miner->market registrations for fault handling in deal markets · Discussion #265 · filecoin-project/FIPs

Problem

At present, the market actor doesn’t know about sector faults. Deal payments from clients to providers continue even while a sector is faulty, so long as it is recovered. While a good debate could be had about whether that is an appropriate policy for deal fees, it is not an appropriate policy for Filecoin Plus verified deal rewards if we implement the ‣.

We need a way to notify the market actor about faults so that it can withhold rewards, matching the current behaviour of quality-adjusted power. But we don’t want to privilege the built-in storage market actor with some capability that other markets could not replicate. We generally want to reduce coupling between the two for ‣.

Solution ideas

Market checks on sectors with cron

A simple but inefficient idea is for the market actor to check on the state of sectors with cron. If the market actor knew which sectors contained deals (it doesn’t, but could), it could periodically call the miner to check those sectors are healthy. Alternative markets (given access to cron) could do this too.

Good:

Bad:

Off-chain keepers

Off-chain parties could monitor sector state and inform the market when a deal-bearing sector faults. The market actor could the confirm those sectors’ state. Similarly, a party (probably the provider) would inform the market when the sector recovers. These off-chain parties (”keepers”) would need some incentive to do the work, like a piece of deal provider collateral or client fees.

Good:

Bad: