Description
report reconciles the aggregates table against on-chain pieces, so it covers the provider-pull path only. A migration done with upload (#71) records its state in the uploads table, which report never reads — running it after an upload-based migration reports nothing committed.
Impact
The campaign runbook cannot use report for verification and instead tells agents to check the explorer and spot-check retrievals by hand. That works, but the on-chain reconciliation and --check-ipni sampling report already implements are exactly what verification wants.
Proposed next step
Teach report to read the uploads table too: reconcile each (piece, provider) row against activePieceCids of its data set, and keep the IPNI sampling unchanged.
Description
reportreconciles the aggregates table against on-chain pieces, so it covers the provider-pull path only. A migration done withupload(#71) records its state in theuploadstable, whichreportnever reads — running it after an upload-based migration reports nothing committed.Impact
The campaign runbook cannot use
reportfor verification and instead tells agents to check the explorer and spot-check retrievals by hand. That works, but the on-chain reconciliation and--check-ipnisamplingreportalready implements are exactly what verification wants.Proposed next step
Teach
reportto read theuploadstable too: reconcile each (piece, provider) row againstactivePieceCidsof its data set, and keep the IPNI sampling unchanged.