# Фаза 52. Учебник на уроке ## Зависимости - [Фаза 48](48-lesson-teacher-present.md) - [Фаза 35](../07-inventory/35-appropriateness.md) ## Зачем Утренний `RepackBag` уже кладёт учебники сегодняшних предметов в сумку. Урок начинает это проверять. ## Задачи - [x] Рост урока полный, только если в **сумке** есть экземпляр с `subject` этого предмета - [x] Шкафчик и дом не считаются: ученик в кабинете - [x] Нет учебника — множитель `BehaviorDef.lessonNoTextbookFactor`, ваниль 0.5 - [x] Валидатор: число 0–1 - [x] Лог `lesson-no-textbook` один раз на предмет в сутки; `thingDef` — предмет - [x] `docs/protocol.md` — тип лога ## Тесты, без которых фаза не закрыта - [x] Учебник математики в сумке → полный рост (при учителе на месте) - [x] Тот же учебник в шкафчике или дома → рост как с коэффициентом 0.5 - [x] Учебник другого предмета в сумке не закрывает этот урок - [x] Одна строка лога за сутки на предмет, не по числу тиков - [x] Пак без поля — 0.5, каталог не падает ## Критерий готовности - Слабая переноска, учебник остался дома — на уроке растут хуже одноклассника с книгой - `dotnet test` проходит ## Стоп Не заставлять идти за учебником отдельной целью. Не замедлять ходьбу перегрузом. Не тратить деньги на замену.