Просмотр исходного кода

history: 2026-10-02 night — kindling 4x e2e (spec-config doubling, triple-quote form, upstream 27cf839 re-vendor, GB10 UMA gate coin flip fixed via GMU 0.86 + last-moment drop_caches mod), serve-boot-triage skill, headless dgx6/7/8, upstream sweep (MiMo/GLM/DFlash2 pins current, eugr nightly-20261001 new)

Alexander Korolev 3 недель назад
Родитель
Сommit
571a5499f1
1 измененных файлов с 71 добавлено и 0 удалено
  1. 71 0
      history/night-shifts/2026-10-02.md

+ 71 - 0
history/night-shifts/2026-10-02.md

@@ -0,0 +1,71 @@
+# Night shift 2026-10-02
+
+Оператор: «заставь kindling-конструкцию работать», «сверь апстримы того, что
+используем», «скилл для триажа», «headless на узлах». Все 8 узлов активны,
+агент переключен на «плуту» (macOS).
+
+## kindling glm53-kindling-4x — e2e-ночь (mode B)
+
+Хронология запусков на `dgx58-switch` (dgx5–8), образ `spark-glm53:v9`
+(checksum d285a3f…):
+
+1. **Краш #1** (ночь 10-01): `--speculative-config` в TOML задублирован
+   (генератор вставил JSON дважды) → vLLM не парсит mash-up.
+2. **Форма кавычек**: значение должно быть `"""` + newline + `'{JSON}'` +
+   `"""` с закрывающим `"""` **на той же строке** (форма mimo-рецептов);
+   trailing newline перед `"""` → лаунчер не снимает апострофы →
+   `cannot be converted to loads`. Фикс во всех 3 рецептах, argv
+   провалидированы in-image (at4: argparse пройден, движок ушёл в загрузку).
+3. **Апстрим kindling**: +3 коммита (27cf839): их фикс #64 — ровно наш баг
+   (второй `--speculative-config` в EXTRA выигрывал; теперь `SPEC_EXTRA`,
+   второй конфиг запрещён), megamoe #67, kindling.json #68. Ре-вендорен
+   (наш build.sh/README сохранены, README.upstream.md обновлён).
+4. **UMA-гейт** (главная находка): `Free memory on device cuda:0 (106.28/
+   106.92/121.63 GiB) ... less than desired GPU memory utilization (0.88,
+   107.03 GiB)` — на СЛУЧАЙНЫХ узлах (rank1/rank2 в одну секунду), маржа
+   0.11–0.75 GiB. Встроенный drop_caches (config, default true) не спасает:
+   к worker-init контейнерный стек (torch+CUDA+code page cache) уже
+   дописал ~11 GiB. Фикс: **GMU 0.88→0.86** (нужно 104.60, маржа ≥1.68) +
+   **mods-`drop_caches`** вплотную к exec; жёсткий `--kv-cache-memory`
+   26 GiB не тронут → пул KV не меняется.
+5. **Итог**: все 4 контейнера Up, веса 33/33 shards за 648 с (NAS), их
+   W4/FP8-конверсия работает; далее draft + autotune (первый запуск на
+   узлах, /tmp-кэш автотюна) → готовность ~09:00–09:20.
+
+Процесс-улучшения:
+- **Скилл `.agents/skills/serve-boot-triage/`** — триаж: `--keep` (контейнер
+  переживает крах, логи читаются), detached serve, per-node матрица,
+  hard rules (IP только из config; base64-скрипты; runlock).
+- Серв-вызовы: **follow-режим по умолчанию** — без `--no-follow` serve
+  блокируется в логах (это и было «зависание 600 с», не баг лаунчера).
+- Длинный foreground-вызов (make check + serve в одном) уходит в
+  interruption — serve в отдельном коротком вызове.
+
+## Headless + уборка
+
+- X/gdm (`graphical.target`) найден на **dgx6/7/8** (dgx1–5 уже multi-user);
+  переключено: `systemctl set-default multi-user.target` + `stop gdm`.
+  Оператор: «это явная ошибка конфигурации».
+- searxng-контейнер на dgx6 удалён (мусор чужого эксперимента, по запросу).
+- runlock: закрыты stale `gemma4-12b` (09-30) и
+  `mimo26-flash-mopd-4x-sparkring` (09-30).
+
+## Апстрим-сверка (что используем)
+
+| Стек | Статус |
+|---|---|
+| kindling `glm-5.3-flash-gx10` | +3 коммита → ре-вендор 27cf839 (см. выше) |
+| tool-eval-bench | без изменений с пина v2.7.0 (544afb576b3) |
+| MiMo Flash/Pro MOPD (HF) | refs/main == наши пины (2479e2d0 / adea8e2c) |
+| nvidia GLM-5.3-Flash-NVFP4 | refs/main == да920bb0 (наш) |
+| incoai DFlash2 | refs/main == bf582e4e (наш) |
+| eugr/spark-vllm-b12x | **новый nightly-20261001** (+0930) — vllm-лейн подхватит при следующем старте (floating :latest) |
+| sparkring (ghcr) | наш пин = `glm53-shared-74275757` (f25cdb6b); есть ещё два тега `glm53-shared-{a8aeff2,8b32ef2}` — новые сборки, adoption = ре-пин по digest + re-bench (отложено) |
+| vLLM upstream | PR #58846/#58720 (flashkda fp32) merged; открытые spec-decode багфиксы не трогать (форк) |
+
+## Ожидания
+
+1. Готовность kindling 4x (~09:00–09:20), smoke (chat + structured output).
+2. Bench-кампания (hardmode, c1+c2) — до возвращения оператора.
+3. При хорошем результате: ребилд образа на 27cf839 (megamoe #67) +
+   A/B с lab GLM53; TP6--bootstrap (make_padded.py) — в следующем окне.