Difficulty
Hard — production engineering across multiple components; a small cleanup or test-only patch does not complete this issue.
Context
The contract permits up to 500 bidders while settle iterates over all bidders and performs transfers in one call. Extend existing conservation tests into a bounded settlement protocol whose progress survives separate transactions.
Starting points
Scope
- Design explicit payout progress with bounded batch size for settlement and void refunds.
- Freeze the clearing result before payouts and preserve current winner, tie-breaking and refund amounts.
- Prevent already-paid entries from being paid again under repeated or overlapping permissionless calls.
- Update generated bindings, SDK/keeper orchestration and user-visible progress.
Acceptance criteria
Verification
Run contract property/model tests and a 500-bidder resource regression fixture. Interrupt the keeper between every batch and compare final balances with the original settlement model. Document deployment/ABI compatibility without deploying.
Out of scope
Changing bid ranking, fees, token choice, introducing discretionary withdrawals, or executing public-network deployments.
Difficulty
Hard — production engineering across multiple components; a small cleanup or test-only patch does not complete this issue.
Context
The contract permits up to 500 bidders while settle iterates over all bidders and performs transfers in one call. Extend existing conservation tests into a bounded settlement protocol whose progress survives separate transactions.
Starting points
contracts/round/src/lib.rscontracts/round/src/storage.rscontracts/round/src/types.rspackages/sdk/src/client.tsScope
Acceptance criteria
Verification
Run contract property/model tests and a 500-bidder resource regression fixture. Interrupt the keeper between every batch and compare final balances with the original settlement model. Document deployment/ABI compatibility without deploying.
Out of scope
Changing bid ranking, fees, token choice, introducing discretionary withdrawals, or executing public-network deployments.