# Запись и лист ожидания

Источник: https://docs.novapoker.ru/product/registration/
Дорожка: продукт
Сверено с кодом: Mon Aug 24
Код: repos/poker-api/apps/server/src/registrations/registrations.service.ts, docs/superpowers/specs/2026-08-22-product-spec-as-built.md

---

Запись — это точка, где игрок берёт на себя обязательство прийти. Отсюда растут
и лист ожидания, и страйки: место конечно, и занятое зря место кого-то не пустило.

## Как это выглядит для игрока

Игрок открывает карточку турнира и нажимает «Записаться». Дальше возможны два
исхода, и выбирает не он:

- **мест хватает** — он в основном составе;
- **мест нет** — он в листе ожидания.

Лист ожидания — честная очередь по времени записи. Освободилось место — поднимается
первый в очереди, и ему приходит пуш «ты прошёл из листа ожидания». **Свою позицию
в очереди игрок не видит** — только сам факт, что он в ней.

Отменился и записался снова — встал в конец очереди заново. Это не наказание, а
следствие того, что очередь считается по времени записи, а отмена его сбрасывает.

## Правила

**Записаться можно один раз и только пока турнир открыт на запись.** Мест ровно
столько, сколько задал организатор: переполнения основного состава не бывает даже
при одновременных попытках — решение о месте принимается под блокировкой турнира.

**Отмена до дедлайна — без последствий.** Дедлайн задаёт клуб, по умолчанию это
3 часа до старта.

**Отмена после дедлайна с занятого места — страйк.** С места в листе ожидания —
нет: человек ничего не занимал.

**Не пришёл и не отменился — неявка и тоже страйк.** Он выставляется в момент
старта турнира.

**Отмена самого турнира гасит все живые записи без страйков.** Виноват не игрок.

## Страйки и блокировка

Страйк — метка за то, что игрок занял место и не сыграл. Организатор может
**простить** страйк: предупредил заранее, уважительная причина. Прощённый страйк
перестаёт считаться.

**Два непрощённых страйка за 30 дней закрывают запись на 14 дней.** Это не бан
аккаунта: приложение работает, рейтинг на месте, недоступна только кнопка записи.
Все три числа — настраиваемые правила платформы, их меняет админ в разделе
«Рейтинг». Прощение страйка пересчитывает блокировку и снимает её, если активных
страйков стало меньше порога.

## Walk-in и опоздавшие

Организатор может посадить человека прямо у входа — по телефону и имени, даже
без аккаунта. Walk-in работает и пока идёт запись, и **пока турнир уже идёт**:
это же и поздняя дорегистрация.

Две особенности, которые стоит знать продукту:

- **Вместимость при walk-in не проверяется.** Это намеренно: сажать сверх лимита
  решает ТД на месте. Следствие — турнир может уйти за заявленное число мест, а
  человек в листе ожидания этого не поймёт.
- **Ограничение по уровню поздней регистрации не применяется.** Поле в структуре
  блайндов есть, эффекта у него нет: посадить можно на любом уровне, пока турнир идёт.

## Статусы записи

| Статус | Что значит |
|---|---|
| `registered` | место в основном составе |
| `waitlist` | в очереди, места пока нет |
| `checked_in` | пришёл, отмечен организатором |
| `no_show` | не пришёл; выставляется при старте, даёт страйк |
| `cancelled` | запись отменена |

Переходы: запись даёт `registered` или `waitlist`; из `waitlist` поднимает в
`registered` освободившееся место; чек-ин переводит в `checked_in`; старт турнира
переводит неявившихся в `no_show`.

**Отмена чек-ина возвращает человека туда, откуда его сажали.** Если он попал за
стол из листа ожидания — вернётся в `waitlist`, а не в `registered`. Иначе при
старте он получил бы неявку и страйк за турнир, куда его не звали.

## Что рядом

- [Запись: контракт и переходы](https://docs.novapoker.ru/dev/registration.md) — та же механика со стороны кода.
- [День игры и чек-ин](https://docs.novapoker.ru/product/game-day.md) — что происходит дальше.
- [Продукт и действующие лица](https://docs.novapoker.ru/product.md) — кто есть кто.
