6.4 KiB
6.4 KiB
Журнал ревью
Сводка: ../reviewed.md. Индекс среза: README.md.
Перепроверка среза 1 (после одежды / сессии / общения)
- Фазы: 0–4
- Проверен на:
d087486, 2026-08-20 - Пути:
src/HSchool.Client,src/HSchool.Protocol,src/HSchool.Content,src/HSchool.Server/Game,src/HSchool.Server/Api/ModEndpoints.cs,src/HSchool.Server/Api/SchoolEndpoints.cs,src/HSchool.Server/Net,tests/HSchool.Content.Tests,tests/HSchool.Protocol.Tests,tests/HSchool.AppHost.Tests/SchoolApiTests.cs,tests/HSchool.AppHost.Tests/GameSocketTests.cs,tests/HSchool.AppHost.Tests/ServiceabilityTests.cs - Итог: перепроверка;
git log 418a4ea..HEADпо путям среза непустой (одежда, сессия, общение, ремесло). Обещания фаз 0–4 целы. Дописаны 3 теста. Код не чинился. Фазы 60 и 61 не закрывались.
Что подтверждено (после дрейфа):
- PixiJS нет в
package.jsonи в клиентском коде. Дерево карты, пять секций локации, клиентский фильтр,localize(). Оболочка — вкладки Карта/Люди; отказ от ленты событий в фазе 1 иdesign/near-term.md. SchoolWorker—LongRunning, свойWorld, аккумуляторMaxCatchUpSteps = 5. Супервизор таблицу держит иWorldне трогает (фаза 58 разрезала файл, не поток). Сейв на create/shutdown/SaveInterval;ReloadFromDisk_RestoresAPausedClock,PausingOneSchool_DoesNotStopAnother.- Каталог/карта: JSONC, last-wins, parent/abstract, патчи, связность, пустая комната, отказ без
двора, ванильная раскладка. Нет папки мода — школу не стартовать, файл не трогать
(
SchoolContentUnavailableException,persist: false,RememberIncompatible). GET /api/mods, каталог?lang=, create с картой и модами, снимок при OpenSchool.coreв диалоге нельзя снять. Кодек,protocol.tsиdocs/protocol.md— одинMapSnapshot(протокол v9, бамп поздних срезов, раскладка снимка та же).modal.tsрезолвит промис явно;.dialog--screen—height: fit-content;DefaultStartDateUTC;MapSnapshotSizeот сообщения; outboxDropOldest;WaitToReadAsyncпереносится между итерациями; меню патчитcard.update.
Дописано на этом проходе:
gameScreen.test.ts— клик по дереву фильтрует панель локации на клиентеgameScreen.test.ts—localize()обновляет пустые секции локацииServiceabilityTests.MissingModFolder_LeavesTheSchoolUnstartedAndTheFileUntouched
Исправлено:
- ничего: расхождений с дизайном среза 1, которые надо было чинить кодом, не нашлось.
Открытое:
- срезы 2–6 в сводке всё ещё на старых коммитах — дрейф после одежды/сессии/общения; не этот проход.
- фазы 60 и 61 (портреты) в работе; ревью их не закрывало.
Срез 1. Оболочка и карта
- Фазы: 0–4
- Проверен на:
418a4ea, 2026-08-20 - Пути:
src/HSchool.Client,src/HSchool.Protocol,src/HSchool.Content,src/HSchool.Server/Game,src/HSchool.Server/Api/ModEndpoints.cs,src/HSchool.Server/Api/SchoolEndpoints.cs,src/HSchool.Server/Net,tests/HSchool.Content.Tests,tests/HSchool.Protocol.Tests,tests/HSchool.AppHost.Tests/SchoolApiTests.cs,tests/HSchool.AppHost.Tests/GameSocketTests.cs - Итог: обещания фаз 0–4 целы; дописаны 3 теста; протокол v7 в трёх местах
Что подтверждено:
- PixiJS нет; дерево карты, пять секций локации, клиентский фильтр,
localize(). Оболочка — вкладки Карта/Люди, не три панели; отказ от ленты событий записан в фазе 1 и вdesign/near-term.md. SchoolWorker—LongRunning, свойWorld, аккумулятор с потолком 5. Супервизор таблицу держит иWorldне трогает. Сейв на create/shutdown/SaveIntervalSeconds;ReloadFromDisk_RestoresAPausedClock,PausingOneSchool_DoesNotStopAnother.- Восемь тестов каталога/карты в
HSchool.Content.Tests. Ванильная раскладка валидна. Пропавшая папка мода не стартует школу и файл не трогает. GET /api/mods, каталог, create с картой и модами, снимок при OpenSchool.coreв диалоге создания нельзя снять. Кодек,protocol.tsиdocs/protocol.mdописывают одинMapSnapshot.modal.tsрезолвит промис явно;.dialog--screen—height: fit-content;DefaultStartDateUTC;MapSnapshotSizeот сообщения; outboxDropOldest;WaitToReadAsyncпереносится между итерациями; меню патчитcard.update.- Родной язык — HTTP/JSON без бампа протокола. Старый сейв без поля берёт первый язык набора,
не бросает кубик (
ReloadWithoutASavedPick_TakesTheFirstLanguageInsteadOfRolling).
Дописано:
SchoolApiTests.Catalog_WithAnUnknownMod_IsRejectedSchoolApiTests.ModId_ThatEscapesTheModsFolder_IsRejectedOnBothEndpointsSkillGrantTests.ReloadWithoutASavedPick_TakesTheFirstLanguageInsteadOfRolling
Исправлено:
- Два поля
speedIndexв клиентскомSchool(api.ts) — артефакт мержа фазы 26; vitest не ловил,npm run buildпадал с TS2300.