Description
197 PDP datasets at provider 24 (sp-playground, 0xE3e842B9D89ed2Ee3976b9b8916827302618c29e) on calibration are stuck in a "chain-live but SP-HTTP 409" state. The SP returns "Data set has been terminated due to unrecoverable proving failure" on every add-pieces attempt, while FWSS still reports the datasets live. Dealbot keeps selecting them and burns USDFC lockup.
All 197 are paid by the dealbot calibnet Safe (0x305025D07c1DEe47F25a4990179eFf2becddCA0B). On-chain termination by that Safe is the only valid path; the FWSS contract gates terminateService to msg.sender ∈ {payer, payee}, and the existing dealbot session-key path cannot reach this method.
Action
9 batched Safe transactions are queued, totaling 197 terminateService(uint256) calls against FWSS calibnet (0x02925630df557F957f70E112bA06e50965417CA0). Threshold is 2, currently 1 sig each. Execute in nonce order (7..15).
Queue: https://safe.filecoin.io/transactions/queue?safe=filecoin-calibration:0x305025D07c1DEe47F25a4990179eFf2becddCA0B
Builder script: apps/backend/scripts/build-safe-terminate-batches.mjs
Batch JSON files: apps/backend/scripts/safe-batches/provider-24-batch-{01..09}-of-09.json
Validation
Each queued multisig tx was fetched via the Filecoin Safe gateway, the MultiSend payload decoded, and every sub-call compared against the locally generated batch files. All 197 sub-calls match exactly: target is FWSS calibnet, selector is terminateService, dataSetIds align with the on-chain payer filter.
Expected outcome
Post-termination follow-up
After all 9 batches execute, dealbot deals rows for the terminated datasets still have cleaned_up = false. They need to be flipped so dealbot stops treating them as live work.
Detail memo
Full probe evidence, root-cause analysis for why the auto-repair path is blocked (Lotus #13470, synapse-core DefaultFwssPermissions, strip-from transport), batch table, and follow-up list:
https://gist.github.com/SgtPooki/cef4e7edf26d5abb7180f3f22d3dc8a3
References
Description
197 PDP datasets at provider 24 (sp-playground,
0xE3e842B9D89ed2Ee3976b9b8916827302618c29e) on calibration are stuck in a "chain-live but SP-HTTP 409" state. The SP returns "Data set has been terminated due to unrecoverable proving failure" on every add-pieces attempt, while FWSS still reports the datasets live. Dealbot keeps selecting them and burns USDFC lockup.All 197 are paid by the dealbot calibnet Safe (
0x305025D07c1DEe47F25a4990179eFf2becddCA0B). On-chain termination by that Safe is the only valid path; the FWSS contract gatesterminateServicetomsg.sender ∈ {payer, payee}, and the existing dealbot session-key path cannot reach this method.Action
9 batched Safe transactions are queued, totaling 197
terminateService(uint256)calls against FWSS calibnet (0x02925630df557F957f70E112bA06e50965417CA0). Threshold is 2, currently 1 sig each. Execute in nonce order (7..15).Queue: https://safe.filecoin.io/transactions/queue?safe=filecoin-calibration:0x305025D07c1DEe47F25a4990179eFf2becddCA0B
Builder script:
apps/backend/scripts/build-safe-terminate-batches.mjsBatch JSON files:
apps/backend/scripts/safe-batches/provider-24-batch-{01..09}-of-09.jsonValidation
Each queued multisig tx was fetched via the Filecoin Safe gateway, the MultiSend payload decoded, and every sub-call compared against the locally generated batch files. All 197 sub-calls match exactly: target is FWSS calibnet, selector is
terminateService, dataSetIds align with the on-chain payer filter.Expected outcome
ServiceTerminatedeventsPost-termination follow-up
After all 9 batches execute, dealbot
dealsrows for the terminated datasets still havecleaned_up = false. They need to be flipped so dealbot stops treating them as live work.Detail memo
Full probe evidence, root-cause analysis for why the auto-repair path is blocked (Lotus #13470, synapse-core
DefaultFwssPermissions, strip-from transport), batch table, and follow-up list:https://gist.github.com/SgtPooki/cef4e7edf26d5abb7180f3f22d3dc8a3
References
data_set_creationrepair handlersafeReadTransportworkaround