Files
h-school/docs/phases/11-events/reviewed.md
T

3.7 KiB
Raw Blame History

Журнал ревью — срез 11

Сводка: ../reviewed.md. Индекс среза: README.md.

Срез 11. Этап A — только Krea 2

  • Фазы: 63
  • Проверен на: 1002aeb, 2026-08-21
  • Пути: src/HSchool.Server/swarmui.json, src/HSchool.Server/Game/SwarmUiSettingsStore.cs, tests/HSchool.Server.Tests/SwarmUiSettingsStoreTests.cs, tests/HSchool.AppHost.Tests/PortraitApiTests.cs
  • Итог: обещания фазы 63 совпадают с кодом. Сокет в коммите фазы не бампили. Живые сейвы с SDXL в models не лифтятся; пустой models поднимает id с пресетов, а не подменяет каталог Krea. Дописаны границы возраста 6–11, сверка shotType child с файлом и отказ лифтить сейв без списка моделей. Хостовые PortraitApiTests в этом проходе не гонялись (общий AppHost / живой сервер). Этапы B–D (64–67) в этот проход не входили.

63. Каталог Krea 2

Catalog() — только museByStableYogi_v30TurboGguf.gguf и realismByStableYogi_v25INT8Turbo.safetensors (8 / CFG 1 / euler / simple). swarmui.json совпадает после NormalizeAfterLoad. Пресеты default и child — Realism v2.5; стиль, negative и shotType child — проза без (low quality и :1.4). ageRules 611 → child. Константы babes / DreamShaper / epicrealism / lustify остались для живых копий, в ванильный список не входят. v2.0 GGUF нет.

NormalizeAfterLoad не переписывает непустой SDXL-каталог; Clone не подмешивает Muse/v2.5. Если models пуст, LiftModelsFromPresets копирует id с пресетов до подстановки Catalog() — иначе DreamShaper в пресете резолвился бы в Muse.

HTTP: GET /api/settings/swarmui и create копируют два Krea-id (тесты в PortraitApiTests на месте; здесь не прогонялись). Пикер — Swarm ∩ каталог (AllowedModelIds / allowedSwarmModels). Сокет: коммит 6fb6efb не трогал ProtocolConstants.Version / PROTOCOL_VERSION; текущая 10 — от фазы 64. Абзац каталога в protocol.md описывает Krea 2 без четырёх SDXL.

dotnet test tests/HSchool.Server.Tests --filter FullyQualifiedName~SwarmUiSettingsStoreTests: 20 зелёных.

Дописано:

  • Resolve_AgeRuleCoversSixThroughElevenInclusive — 6 и 11 → child, 5 и 12 → default, модель v2.5
  • CreateDefault_SeedsCatalogModelsageRules ровно 611 / child
  • SwarmUiJson_MatchesCatalogAndDefaultPresets — shotType avatar/fullBody у child
  • NormalizeAfterLoad_EmptyModelsKeepSdxlPresetIdsInsteadOfKreaCatalog — пустой models не становится Krea

Код фазы не чинился.

Открытое

  • Пример JSON у GET .../portrait/prompt в protocol.md всё ещё с cinematic photo, age 12 и (low quality, worst quality:1.4) — это HTTP промпта/сцены (этапы C–D), не каталог. Здесь не правился: соседний проход трогает protocol.md.
  • Хостовый GET/create на Krea-id не перегонялся в этом worktree.
  • Этапы B–D (тосты, пауза, сборщик сцены, generateImage) — не этот проход.