Remove off-queue.md and add new design documentation files including README.md, defs.md, near-term.md, projects.md, runtime.md, people.md, staffing.md, and schedule.md to outline the structure and agreements for the game's design phases.

This commit is contained in:
Leonid Pershin
2026-08-20 12:26:13 +03:00
parent 12cc36b4dd
commit a37a5eb82d
101 changed files with 1015 additions and 921 deletions
+42
View File
@@ -0,0 +1,42 @@
# Журнал ревью
Сводка: [`../reviewed.md`](../reviewed.md). Индекс среза: [`README.md`](README.md).
## Срез 5. Жизнь школы
- **Фазы:** 1821
- **Проверен на:** `cbe739a`, 2026-08-20
- **Пути:** `src/HSchool.Ai`, `src/HSchool.Simulation/{PresenceSystem,ActivitySystem,LessonLearningSystem,School}.cs`,
`src/HSchool.Protocol` (кадр `Presence`, пропуск в кадре часов),
`src/HSchool.Server/Game/PresenceFrame.cs`, `src/HSchool.Client/src/ui/gameScreen.ts`,
`src/HSchool.Server/mods/core/defs/{actions,behavior,needs}`, `tests/HSchool.Ai.Tests`,
`tests/HSchool.Simulation.Tests/{PresenceTests,DecisionTests,ActivityTests,NeedDecayTests,LunchTests}.cs`,
`tests/HSchool.AppHost.Tests/GameSocketTests.cs`
- **Итог:** все 32 теста из списков фаз на месте; дописаны 2 теста явки; `SetTimetable` сбрасывает
планы дня. Голод закрыт данными. AppHost после правки не гонялся — Aspire держал DLL.
Что подтверждено:
- Ходьба: 13 тестов списка фазы 18 (маршрут, `travelMinutes`, воскресенье/каникулы, звонок,
детерминизм, пропуск пустого времени, лето, промотанная неделя).
- Присутствие: раскладка с обеих сторон, круговой прогон, люди не в снимке карты, пропуск в
учебное время отбрасывается. На паузе кадры **идут** (occupancy + подписи урока); людей в них
может не быть.
- Нужды: декей, обед, стулья, ночь вне школы, неизвестная нужда, детерминизм.
`Hunger` восстанавливается вне школы, в столовой 112 стульев, обед — смена по параллелям.
`SleepAndHunger_ReturnToMaxOffCampus`, `AfterASchoolDay_NobodyIsLeftStarving`.
- Решения: восемь тестов фазы 21, в том числе туалет с урока и возврат, потолок отложенных,
детерминизм за неделю. `HSchool.Ai` без Arch/ASP.NET/`DateTime.Now`.
Дописано:
- `HireAndAssignMath_DuringLessonThree_PutsSomeoneOnCampus`
- `AssigningMath_AfterDayPlansWereBuilt_PutsSomeoneOnCampus`
Исправлено:
- `School.SetTimetable` обнуляет `PlanDay`. Иначе после назначения предмета без смены численности
`EnsurePlans` считает планы актуальными, `AppearAt` остаётся `null`, кампус пуст. Найм это
маскировал (численность растёт).
- `OpeningASchoolDuringAMathLesson_...` после снятия паузы сразу ждал людей и съедал бюджет на
паузные кадры. Теперь ждёт `clock.Running`, потом людей.