Skip to content

Add client-initiated data deletion without SP cooperation #155

@rjan90

Description

@rjan90

Context:

Currently, clients cannot force the deletion of individual pieces from their datasets without storage provider (SP) cooperation. This creates a problematic scenario where:

  1. Client submits off-chain delete request → SP receives deletion request from client
  2. SP can refuse to process deletion on-chain → SP has economic incentive to ignore deletion since they get paid less after deletion
  3. Client has no recourse → No way for client to force the deletion on-chain themselves
  4. SP continues getting paid → For data that was supposed to be deleted

Approaches:

During the 2025-08-19 eng sync, two approaches were discussed:

Payment-Based Enforcement

Withhold/reduce payments until SP complies with deletion requests

  • Client signals deletion request, payment rail reduces funds for non-deleted pieces
  • SP incentivized to delete to resume full payment
  • Preferred because not all implementations use the same payment mechanisms

Service Freezing

Block proving progress until SP processes deletion

  • Next proving period is blocked until deletion requests are processed
  • SP cannot submit proofs until compliance, effectively shutting down service
  • No new proofs or payments processed until deletion completed

Based on the discussion, it leaned towards the payment-based enforcement approach. But @aarshkshah1992 will take ownership of this, and further flesh out the technical approach.

This change is also a breaking change, which means that we will need this to be completed in the M2.5 milestone.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

Status

🎉 Done

Relationships

None yet

Development

No branches or pull requests

Issue actions