Halve lesson gain when the bag has no textbook for the subject.

Locker and home do not count. A pack without the field keeps vanilla 0.5.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Leonid Pershin
2026-08-20 09:27:46 +03:00
co-authored by Cursor
parent f4a793aca4
commit 1b3479f984
13 changed files with 252 additions and 20 deletions
+11 -11
View File
@@ -12,20 +12,20 @@
## Задачи
- [ ] Рост урока полный, только если в **сумке** есть экземпляр с `subject` этого предмета
- [ ] Шкафчик и дом не считаются: ученик в кабинете
- [ ] Нет учебника — множитель `BehaviorDef.lessonNoTextbookFactor`, ваниль 0.5
- [ ] Валидатор: число 0–1
- [ ] Лог `lesson-no-textbook` один раз на предмет в сутки; `thingDef` — предмет
- [ ] `docs/protocol.md` — тип лога
- [x] Рост урока полный, только если в **сумке** есть экземпляр с `subject` этого предмета
- [x] Шкафчик и дом не считаются: ученик в кабинете
- [x] Нет учебника — множитель `BehaviorDef.lessonNoTextbookFactor`, ваниль 0.5
- [x] Валидатор: число 0–1
- [x] Лог `lesson-no-textbook` один раз на предмет в сутки; `thingDef` — предмет
- [x] `docs/protocol.md` — тип лога
## Тесты, без которых фаза не закрыта
- [ ] Учебник математики в сумке → полный рост (при учителе на месте)
- [ ] Тот же учебник в шкафчике или дома → рост как с коэффициентом 0.5
- [ ] Учебник другого предмета в сумке не закрывает этот урок
- [ ] Одна строка лога за сутки на предмет, не по числу тиков
- [ ] Пак без поля — 0.5, каталог не падает
- [x] Учебник математики в сумке → полный рост (при учителе на месте)
- [x] Тот же учебник в шкафчике или дома → рост как с коэффициентом 0.5
- [x] Учебник другого предмета в сумке не закрывает этот урок
- [x] Одна строка лога за сутки на предмет, не по числу тиков
- [x] Пак без поля — 0.5, каталог не падает
## Критерий готовности