Skip to content

FWSS v1.3.0

Latest

Choose a tag to compare

@rjan90 rjan90 released this 07 Jun 18:58
c2ff7f8

Status: Released as latest. Calibnet and Mainnet v1.3.0 implementations are live, proxy/StateView checks pass, Calibnet SP-relayed terminateService validation passed, and Mainnet Synapse SDK storage E2E/createDataSet validation is recorded. Remaining close-out follow-ups are tracked in #509.

The operator runbook is #509.

🧩 Component Versions

Component Version Status
filecoin-services stack v1.3.0 Frozen at c2ff7f8
FilecoinWarmStorageService 1.3.0 Live on both networks; corrected deployments linked against v1.3.0 libraries
SignatureVerificationLib v1.3.0 Calibnet corrected library 0x8408502033C418E1bbC97cE9ac48E5528F371A9f; Mainnet corrected library 0xBbd3b82a9396156a997111D42c5356718522ed2D
Rails v1.3.0 Calibnet library 0x05BB7B022645a68fB9c97A7afaD1017EC5B252B2; Mainnet library 0x25649D27D556c64708D0BF9b20EC214Ec991E223
PDPVerifier v3.4.0 Unchanged; already live from the v1.2.1 compatibility rollout

🚦 Rollout Status

Network FWSS Proxy FWSS Implementation StateView Announce Execute Status
Calibnet 0x0292...7CA0 0x9e4e...0B46 0xF4B4...700a 0x69c6...8ff0 0xb785...d6c2 Live. SP-relayed terminateService validated.
Mainnet 0x8408...1A9f 0xaF99...1492 0xAD28...8B5e 0x0fbe...0533 0x4b00...3f11 Live. setViewContract updated via 0xd963...15cc; implementation slot, VERSION(), nextUpgrade(), and getPriceList() checked on 2026-06-12; Synapse SDK storage E2E/createDataSet validation recorded on 2026-06-12 (data set 1271, commit tx [0x40e9...743bf](https://filecoin.blockscout.com/tx/0x40e9152bb6690e2aa2686f63dda7773dcd2b714b15fcaf44fc4888c5cdd743bf

📝 Summary

This FWSS contract upgrade coincides with Filecoin Onchain Cloud's General Availability. It includes breaking integration changes around pricing, lifecycle fees, and termination behavior.

The v1.3.0 source release remains unchanged. Corrective deployment work is complete on both networks: the live proxies now point at the corrected v1.3.0 implementations, and both networks use the final v1.3.0 StateView contracts.

Notable changes:

  • Removed calculateRatePerEpoch(), updatePricing(), and updateServiceCommission() from the FWSS ABI. Integrations must stop calling those methods; use FilecoinWarmStorageServiceStateView.getPriceList() for price discovery.
  • Removed the PricingUpdated, RailRateUpdated, CDNPaymentRailsToppedUp, and CDNServiceTerminated events from the FWSS ABI. Indexers, dashboards, SDKs, and alerting jobs that subscribe to those events need to update their event handling.
  • Replaced the previous minimum monthly storage-rate floor with a size-proportional storage rate plus a flat per-dataset fee of 0.024 USDFC/month.
  • Added lifecycle reserve and one-time operation fees for dataset lifecycle actions.
  • Consent-based terminateService(dataSetId, extraData) now terminates the PDP rail immediately by setting its lockup period to zero.
  • CDN rails now persist until data-set deletion instead of being terminated by terminateService.

See the changelog for the full release notes.

⚠️ Action Required For Integrators

  • Continue using the existing FWSS proxy addresses; this rollout upgrades the implementation behind each proxy.
  • Stop calling removed FWSS pricing helpers such as calculateRatePerEpoch(), updatePricing(), and updateServiceCommission().
  • Use FilecoinWarmStorageServiceStateView.getPriceList() for price discovery now that the upgraded implementation is live on both networks.
  • Update funding and allowance calculations for lifecycle reserve, data-set creation, add-pieces, removal scheduling, and consent-based termination fees.
  • Update indexers, dashboards, SDKs, and alerting jobs that consume removed pricing/CDN events.
  • Update termination assumptions: consent-based terminateService(dataSetId, extraData) terminates the PDP rail immediately, while CDN rails persist until data-set deletion.