aboutsummaryrefslogtreecommitdiff
path: root/building_guide/concurrency.md
diff options
context:
space:
mode:
Diffstat (limited to 'building_guide/concurrency.md')
-rw-r--r--building_guide/concurrency.md11
1 files changed, 6 insertions, 5 deletions
diff --git a/building_guide/concurrency.md b/building_guide/concurrency.md
index f0b8b06..40be4d9 100644
--- a/building_guide/concurrency.md
+++ b/building_guide/concurrency.md
@@ -125,11 +125,12 @@ there is no cross-file crash window to reconcile.
- **Wager** — debits chips then credits and appends a `PendingWager` (its
wallet handle plus the exact chips/credits debited) in the SAME save. The
entry stays until the round resolves.
-- **Settlement** — `PayStakeCover` credits the payout and removes the stakes
- it returns in the same save (a table hand includes its stake return in the
- payout). `PayCredits` credits winnings that carry no stake linkage (a slot
- spin: the stake was consumed by the round) and the game then resolves the
- stake with `ResolveStake`/`ResolveStakes`.
+- **Settlement** — `PayCredits(amount, stakeIDs...)` credits the payout and
+ removes the listed stakes in the same save. A table passes the hand's stake
+ IDs (its payout includes their return); a slot win passes its triggering
+ stake (its payout is winnings only). Either way the credit and the stake
+ consumption are atomic, so a crash can never pay the win and refund the
+ stake.
- **Loss/forfeit** — `ResolveStake`/`ResolveStakes` consume the pending
stakes in one save; the round resolved and the stake is gone.
- **Refund** — `RefundOutstanding` returns every pending stake (chips in