Document off-queue lesson coherence (phases 48-52).

Teacher presence, teacher skill, warmth, textbooks and weather commute are already visible numbers that do not affect the lesson or the walk to school.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Leonid Pershin
2026-08-20 08:21:14 +03:00
co-authored by Cursor
parent 9d96108516
commit 254c43535e
8 changed files with 296 additions and 0 deletions
+38
View File
@@ -0,0 +1,38 @@
# Фаза 51. Учебник на уроке
## Зависимости
- [Фаза 48](48-lesson-teacher-present.md)
- [Фаза 35](35-appropriateness.md)
## Зачем
Утренний `RepackBag` уже кладёт учебники сегодняшних предметов в сумку. Урок начинает это
проверять.
## Задачи
- [ ] Рост урока полный, только если в **сумке** есть экземпляр с `subject` этого предмета
- [ ] Шкафчик и дом не считаются: ученик в кабинете
- [ ] Нет учебника — множитель `BehaviorDef.lessonNoTextbookFactor`, ваниль 0.5
- [ ] Валидатор: число 0–1
- [ ] Лог `lesson-no-textbook` один раз на предмет в сутки; `thingDef` — предмет
- [ ] `docs/protocol.md` — тип лога
## Тесты, без которых фаза не закрыта
- [ ] Учебник математики в сумке → полный рост (при учителе на месте)
- [ ] Тот же учебник в шкафчике или дома → рост как с коэффициентом 0.5
- [ ] Учебник другого предмета в сумке не закрывает этот урок
- [ ] Одна строка лога за сутки на предмет, не по числу тиков
- [ ] Пак без поля — 0.5, каталог не падает
## Критерий готовности
- Слабая переноска, учебник остался дома — на уроке растут хуже одноклассника с книгой
- `dotnet test` проходит
## Стоп
Не заставлять идти за учебником отдельной целью. Не замедлять ходьбу перегрузом. Не тратить
деньги на замену.