Воспроизводимые примеры¶
Тип материала — лабораторные сценарии. HYPOTHETICAL — fixture-значения и правила.
python scripts/check_igaming_examples.py
| Проверка | Оракул |
|---|---|
| Concurrent bet requests | Два потока с разными SQLite connections одновременно ставят по 70 при доступных 100. Один hold и остаток 30 |
| Bet idempotency | Два потока с тем же ключом получают один outcome. В таблице одна ставка. Другой payload отклоняется |
| Odds version | Новый запрос со старой версией получает requote. Повтор ранее принятой команды возвращает исходное принятие |
| State machine и settlement | Requote нельзя settle. Повтор первой revision не создаёт второй credit. Изменённый payload конфликтует |
| Settlement reconciliation | Четыре legs балансируются. Wallet change равен net выигрыша. Reserve закрыт |
| Velocity | На полуоткрытом окне 19 уникальных событий ниже порога, 20 достигают порога. Дубликат и события вне окна не учитываются |
| Replay-safe analytics | Новая revision обновляет view. Старый replay игнорируется. Journal и исходная сумма ставки сохраняются |
Fixture использует один quote и одну валюту. SQLite сериализует writers на уровне БД. Ledger journal в примере включает stake debit и gross credit. Выплата через PSP, multi-session PostgreSQL, Redis timeout, Flink checkpoint и Kafka replay остаются отдельными интеграционными проверками. Аналитическая correction меняет только проекцию. Финансовый resettlement требует новой операции с approval.
Для проверки выбранного production-протокола адаптируйте существующие лаборатории к bet/hold identity и проверьте lost ACK, stale writer и payouts отдельно. PostgreSQL concurrency · Redis recovery · SQL reconciliation · Outbox