Register slice 12 and mark phase 68 in progress.

EOF

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Leonid Pershin
2026-08-21 09:26:06 +03:00
co-authored by Cursor
parent c3d17cafc6
commit 99eca80d6d
10 changed files with 426 additions and 0 deletions
@@ -0,0 +1,46 @@
# Фаза 70. Вызов к директору и очередь
## Зависимости
- [Фаза 69](69-offense-memory.md)
- [Фаза 21](../05-ai/21-decisions.md)
- [Фаза 18](../05-ai/18-presence-walking.md)
## Зачем
Проступок гонит ученика к директору сам: ходьба, ожидание в коридоре, один в кабинете.
## Задачи
- [ ] Авто-триггер вызова из фактов (обрыв драки / выговор и пороги в `BehaviorDef`); кнопки
игрока нет
- [ ] Временное состояние «вызван» — сильная обязанность дойти до `PrincipalsOffice`, пройти
приём, сняться
- [ ] Нет директора в штате или нет узла кабинета — вызов не стартует / гаснет по правилу в данных
- [ ] Кабинет занят приёмом → ждут в коридорном узле у ребра к кабинету, не внутри
- [ ] В кабинете один на приём; очередь FIFO с детерминированным порядком
- [ ] Приём — короткое действие; мнение о директоре падает; при необходимости допись в список
проступков (69)
- [ ] Обычная ходьба и `travelMinutes`; телепорта нет
- [ ] Skip / утро не оставляют вечный «вызван» без разрешения (явное правило в коде фазы)
- [ ] Очередь и вызовы только на потоке школы (инвариант 3)
## Тесты, без которых фаза не закрыта
- [ ] После qualifying-проступка ученик получает обязанность к кабинету (при живом директоре)
- [ ] Двое вызванных: один в кабинете, второй в коридоре у входа, не оба внутри
- [ ] Освобождение кабинета впускает следующего из очереди
- [ ] Тот же сид и те же события → тот же порядок очереди
- [ ] Без директора вызов не зависает навечно
- [ ] Игрок не может послать вызов по HTTP/сокету (нет такого намерения)
## Критерий готовности
- Драка с обрывом → ученик идёт к директору; второй вызванный ждёт в коридоре; после приёма
оба снова живут обычным днём
- Отфильтрованные тесты по Testing policy проходят
## Стоп
Не собрания. Не тосты (если нужны — фаза 71). Не присутствие-протокол без нужды — только если
без нового статуса UI врёт; бамп версии тогда в этом коммите.