Problem
ProvingWindow entities are written on every NextProvingPeriod event — up to MaxProvingWindowsPerEvent = 50 per event when a stale dataset resumes (subgraph/src/pdp-verifier.ts:849-865) — and loaded + updated on every PossessionProven (subgraph/src/pdp-verifier.ts:687-699).
The client never queries provingWindows (no reference anywhere in subgraph-client/src). All of this is write volume with no consumer.
Skipped windows are also fully derivable client-side: deadline = firstDeadline + deadlineCount × maxProvingPeriod, proofSubmitted = false, and DataSet.totalFaultedPeriods already carries the fault counts.
Proposal
Remove the ProvingWindow entity, the creation loop in handleNextProvingPeriod, the update in handlePossessionProven, and MaxProvingWindowsPerEvent from subgraph/utils/index.ts.
Acceptance criteria
Problem
ProvingWindowentities are written on everyNextProvingPeriodevent — up toMaxProvingWindowsPerEvent = 50per event when a stale dataset resumes (subgraph/src/pdp-verifier.ts:849-865) — and loaded + updated on everyPossessionProven(subgraph/src/pdp-verifier.ts:687-699).The client never queries
provingWindows(no reference anywhere insubgraph-client/src). All of this is write volume with no consumer.Skipped windows are also fully derivable client-side:
deadline = firstDeadline + deadlineCount × maxProvingPeriod,proofSubmitted = false, andDataSet.totalFaultedPeriodsalready carries the fault counts.Proposal
Remove the
ProvingWindowentity, the creation loop inhandleNextProvingPeriod, the update inhandlePossessionProven, andMaxProvingWindowsPerEventfromsubgraph/utils/index.ts.Acceptance criteria
NextProvingPeriodgraph buildfor both networks + tests pass