Settlement
Two-phase randomness, request ordering and how to verify an acquisition.
Acquisition settles in two phases. Splitting the request from the settlement is what stops anyone — including the protocol authority — from seeing an outcome before it is committed.
The two phases
Request
You pay the acquisition price and the program records a randomness request on-chain. The request captures the inventory snapshot it will be resolved against.
Settle
The randomness callback selects one position, transfers the asset to you and removes it from the pool in a single atomic instruction. A failed transfer reverts the whole thing.
Ordering
Requests settle in the order they were made. Callback timing cannot let a later request jump ahead of an earlier one or reshape the earlier request's selection pool. That property is what makes a queue of pending acquisitions fair.
Verifying a settlement
Each settlement records a randomness seed, a slot index and a transaction signature. All three appear on the result screen and in the activity feed, so any acquisition can be replayed against the inventory that existed at that slot.
- The authority cannot see the outcome before the purchaser does.
- The inventory cannot be reordered between request and settlement.
- The authority can pause future activity and change the price for future acquisitions. Settled results are never affected.
No refunds