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
@@ -0,0 +1,42 @@
# Фаза 56. Слои одной пачкой
## Зависимости
Нет. Запреты уже размазаны по четырём тестовым проектам.
## Зачем
Инвариант 4 и таблица в [`projects.md`](../../design/01-shell/projects.md) должны ломаться одним красным
тестом, а не «забыли дописать пятую копию». Content и Protocol сейчас молчат.
## Задачи
- [ ] Проект `tests/HSchool.Architecture.Tests` в solution, `IsTestProject`, без AppHost и без
нового NuGet. Ссылки на Protocol, Content, People, Schedule, Ai, Simulation
- [ ] Тесты ссылок: каждая библиотека из таблицы в [`craft.md`](../../design/10-craft/craft.md) — этап A
- [ ] Тесты исходников: в `src/HSchool.{Protocol,Content,People,Schedule,Ai,Simulation}` нет
`DateTime.Now` / `DateTime.UtcNow`
- [ ] Удалить копипасты `Assembly_DoesNotReference*` и `Sources_DoNotUseWallClock` из People,
Ai, Schedule, Simulation (остальные факты тех файлов не трогать)
- [ ] Testing policy в `AGENTS.md`: слои — `HSchool.Architecture.Tests`, не хост
- [ ] README: школа не «ещё пустая»; потолок create — слоты игрока, не «шесть»
## Тесты, без которых фаза не закрыта
- [ ] Protocol не ссылается на Arch, ASP.NET, Sockets, Content, Simulation
- [ ] Content не ссылается на Arch, ASP.NET, Sockets, Protocol, Simulation
- [ ] People, Schedule, Ai не ссылаются на Arch, ASP.NET, Sockets
- [ ] Simulation не ссылается на ASP.NET и Sockets (Arch — можно)
- [ ] Исходники шести библиотек выше не содержат `DateTime.Now` / `DateTime.UtcNow`
- [ ] В People/Ai/Schedule/Simulation.Tests больше нет этих двух фактов
## Критерий готовности
- `dotnet test tests/HSchool.Architecture.Tests` проходит
- Добавить `using System.Net.Http` в `HSchool.Content` — слой красный
- Старые проекты тестов без этих фактов по-прежнему собираются
## Стоп
Не подключать NetArchTest. Не гонять AppHost. Не резать `SchoolWorker`. Не ссылаться на
`HSchool.Server`. Не бампить протокол, не трогать сейв.