2026-10-15.md 3.9 KB

Night shift 2026-10-15 (day)

Mёртвый BASE: ночные теги vLLM прунены, kindling не собирается

После вчерашнего чат-шаблонного фикса sm121 serve --build-node попытался rebuild spark-glm53:v10 (чексумма каталога сменилась) и упал: FROM vllm/vllm-openai:nightly-ddd6fbca… → not found. Docker Hub прунул всю старую схему nightly-<fullsha> (сейчас только nightly-dev-<arch>-<cuda>-<shortsha>), база прунена и с узлов (dgx1/2), дайджест нигде не записан (сентябрьский лог затёрт, реестр на Mac не включён, web-jobs чисты) → образ-база невосстановим.

Промежуточный ручной путь (тонкая обёртка FROM spark-glm53:v10 + новый шаблон + label) построен на dgx1, но отклонён оператором: sm121 должен уметь собрать всё с нуля, без ручных обходов.

Решение: репин BASE на релиз v0.31.0 (постоянный тег)

  • v0.31.0 (cut 2026-10-02) — первый релиз, содержащий коммит базы ddd6fbca (09-26); multi-arch, arm64 ✓.
  • Дрейф-аудит ddd6fbca..v0.31.0 (6 дней mainline, 239 файлов):
    • все файлы, которые патчат kindling-патчеры (mla/_fa_common, mla/_core, sparse_attn_indexer_kpool, kernel_warmup, shm_broadcast, platforms/cuda, reasoning, glm5next/*) — без изменений;
    • routed_experts.py: vllm#58720 вкатился upstream дословно (_index_expert_mapping идентичен) → vllm-58720-routed-experts.patch удалён из Dockerfile (verify-base.py по-прежнему ассертит наличие фикса);
    • requirements: flashinfer 0.7.0 → 0.7.0.post1 (mикро-бамп), torch/NCCL/ cutlass-dsl без изменений.
  • ARG BASE=vllm/vllm-openai:v0.31.0, ARG VLLM_REF=db9527a4… (коммит тега — FlashKDA shim компилится против того же исходника, что в base).
  • Коммит 546e7b2 (shared repo).

Сборка через sm121 — успешна

sm121 build --recipe glm53-kindling-2x --build-node dgx1.lan: 11 m 16 s (pull base 145 s + flashkda + патчи + verify-base гейт + --load). Гейт verify-base прошёл (Glm5Next, glm45, glm47_failclosed, sm_120, MiaAI SM90 + indexer, spin-wait, FlashKDA 17a037d, mentat). Образ c4bf0a1a…, label 74087ade… (= чексумма каталога), шаблон внутри 6c444d8b… (фикс). Каталог снова полностью воспроизводим с нуля.

2x serve

sm121 serve --recipe glm53-kindling-2x (pid 97998, /tmp/kindling-serve.log): sync dgx1→dgx2 автоматический, контейнеры стартовали 07:47 UTC, API http://192.168.100.14:30000, загрузка весов.

Замечания

  • karmic-kraken dirs (шаблон тоже обновлён): его BASE — дайджест-закреплённая CUDA (вечная), rebuild воспроизводим, но полный clone-at-pin (долгий, 45+ мин) — сработает при следующем serve полос, использующих karmic-kraken (glm53-kindling-4x-karmic, mimo26-flash-mopd-4x-vllm, mimo26-flash-mopd-4x-sparkring).
  • Патчеры со «вступлением» (MiaAI retarget под flashinfer 0.7.0) прошли на 0.7.0.post1 — якоря не съехали.
  • Ночные vLLM-теги имеют TTL: любая схема на nightly-* мёртва через недели. Базы должны быть релизными/дайджестными (karmic — образец).