4.4 KiB
Проверенные фазы «Вне очереди»
Портреты 60–62. Соседей по папке (уроки, DX) этот журнал не закрывает.
Портреты. Модели, слои промпта, LoRA и embeddings
- Фазы: 60–61
- Проверен на:
5e23d1f, 2026-08-20 - Пути:
src/HSchool.Server/Game/SwarmUiSettingsStore.cs,src/HSchool.Server/Game/SwarmUiLoraFormatter.cs,src/HSchool.Server/Game/SwarmUiClient.cs,src/HSchool.Server/Game/SwarmUiDiscovery.cs,src/HSchool.Server/Game/PortraitPromptBuilder.cs,src/HSchool.Server/Game/PortraitService.cs,src/HSchool.Server/Api/SettingsEndpoints.cs,src/HSchool.Server/swarmui.json,src/HSchool.Client/src/ui/swarmUiSettingsDialog.ts,src/HSchool.Client/src/net/api.ts,tests/HSchool.Server.Tests,tests/HSchool.AppHost.Tests/PortraitApiTests.cs,docs/protocol.md,docs/design/off-queue/portrait-models.md,docs/design/off-queue/portrait-loras-embeds.md - Итог: обещания фаз 60–61 совпадают с кодом и тестами; сокет не бампили (
ProtocolConstants.Version/PROTOCOL_VERSION= 9). Дописаны проверки cfg без оверрайда, склейки negative и смены модели в диалоге. ХостовыеPortraitApiTestsв этом проходе не гонялись (общий AppHost / живой сервер). Расхождений с дизайном нет.
Фаза 60
Лифт positive → style и kind positive → shotType, пикер Swarm ∩ каталог, слои промпта (модель → стиль → кадр → promptExtra → пустая поза → внешность → одежда), HTTP GET/PUT /api/settings/swarmui с models и копией в сейв при create — на месте. Resolve без оверрайда берёт steps/cfg с модели; с оверрайдом — с пресета.
Фаза 61
Discovery читает models.Embedding (офлайн — пустой список). LoRA и embeddings склеиваются модель → пресет → кадр. Промпт содержит <embed:…> и не содержит <lora:. Generate шлёт loras и loraweights раздельно. В диалоге поля embeddings есть у модели и у вида кадра.
Открытое
Ничего, что требовало бы решения. swarmui.json на диске не пишет ключи embeddings — после NormalizeAfterLoad списки пустые, как в Catalog().
Портреты. Промпт и Krea-модели
- Фазы: 62
- Проверен на:
d093ea3, 2026-08-20 - Пути:
src/HSchool.Server/Game/PortraitPromptBuilder.cs,src/HSchool.Server/Game/SwarmUiSettingsStore.cs,src/HSchool.Server/swarmui.json,tests/HSchool.Server.Tests/PortraitPromptBuilderTests.cs,tests/HSchool.Server.Tests/SwarmUiSettingsStoreTests.cs,tests/HSchool.AppHost.Tests/PortraitApiTests.cs,docs/design/off-queue/portrait-prompt-craft.md - Итог: обещания фазы 62 совпадают с кодом. Сокет не бампили (
ProtocolConstants.Version/PROTOCOL_VERSION= 9). Realism v2.0 в каталог не входит. Живые сейвы приCloneне получают Muse/v2.5. Позы в UI нет. Дописаны сверкаswarmui.jsonсCatalog(), отказ лифтить старую копию и прозаwith black hair. ХостовыеPortraitApiTestsв этом проходе не гонялись (общий AppHost / живой сервер). Расхождений с дизайном нет.
Фаза 62
Каталог: четыре SDXL плюс Muse GGUF и Realism v2.5 INT8 с knobs 8 / CFG 1 / euler / simple; swarmui.json совпадает с CreateDefault(). Пресет default — v2.5, стиль и shotType прозой, negative без (word:1.4); child — DreamShaper. Внешность и одежда: N years old, with black hair, wearing a white shirt; слои и custom extra прежние.
Открытое
Хостовый GetPortraitPrompt_ReturnsBuiltPositiveAndNegative больше не ищет подстроку age (она есть в teenage); проверка \bage \d+ в этом проходе не гонялась.