Context
The pricing/termination/calldata-limits work stream requires coordinated changes across Synapse, filecoin-services (FWSS), PDPVerifier, and Curio. These changes need end-to-end validation in foc-devnet before mainnet rollout.
Upstream work:
Done Criteria
Deploy custom PDPVerifier, FWSS, and Curio into devnet. Use new Synapse to run through the new flows covering the scenarios below. All scenarios should be validated (either manually or via automated scenario scripts).
Onboarding
Pricing
Termination — Agreed (immediate)
Termination — Standard (30-day lockup)
Termination — Abandonment
Calldata Limits
Edge Cases
Why Important
These are sequential, coordinated contract changes across multiple repos with announce/execute deploy gates. Validating in devnet before mainnet rollout is critical to avoid production issues. The contracts can't be easily rolled back once executed on mainnet.
Notes
- Contracts have announce/execute deploy pattern — we want to get PDPVerifier and FWSS deployment announced and a compatible Curio commit ready ASAP so we can execute the upgrade on our schedule after full devnet validation.
- The
DeleteDataSet → TerminateService 712 typehash rename will break existing SDK session keys — devnet is the right place to validate this transition.
- Discussion origin: https://filecoinproject.slack.com/archives/C08TVNKJV7C (2026-05-20, biglep + rvagg)
Context
The pricing/termination/calldata-limits work stream requires coordinated changes across Synapse, filecoin-services (FWSS), PDPVerifier, and Curio. These changes need end-to-end validation in foc-devnet before mainnet rollout.
Upstream work:
Done Criteria
Deploy custom PDPVerifier, FWSS, and Curio into devnet. Use new Synapse to run through the new flows covering the scenarios below. All scenarios should be validated (either manually or via automated scenario scripts).
Onboarding
createDataSetcollects the new SP cleanup deposit (0.1 FIL bond) and the updated client feesPricing
Termination — Agreed (immediate)
terminateServicewith validextraDatadeleteDataSet+cleanupPiecescleanupPiecescompletesterminateService)Termination — Standard (30-day lockup)
extraData) takes the 30-day pathdeleteDataSet+cleanupPieces)Termination — Abandonment
terminateService, anyone can calldeleteDataSetdataSetDeletedcallbackCalldata Limits
Edge Cases
cleanupPiecesbatching works for large data setsWhy Important
These are sequential, coordinated contract changes across multiple repos with announce/execute deploy gates. Validating in devnet before mainnet rollout is critical to avoid production issues. The contracts can't be easily rolled back once executed on mainnet.
Notes
DeleteDataSet→TerminateService712 typehash rename will break existing SDK session keys — devnet is the right place to validate this transition.