deploy(labtools.pro): LIVE на snolla 0.42.1 — in-place bump живого прода (стек 19)

Финал тиража 0.42.1 (3/3 live-редеплоя закрыты: labtools.ru+emspb+labtools.pro).
Оператор дал отмашку на боевой apply.

- labtools-pro:0610432 (0.28.7→0.42.1, digest 3d543fc). Acceptance С VDS на
  новом образе: 25 sitemap page-locs все 200, 0 потерь контента.
- Order-парити 3 секции MATCH (фикс liquid 0.10.2): presses=plg-20,plg-12;
  milling=milling-jars,grinding-media; press-forms=13 == прод.
- Live-smoke GREEN, TLS CN=labtools.pro не тронут. Rollback labtools-pro:7bd9fae.

Compose source-of-truth обновлён. Прог квитирован.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-07-05 12:04:04 +03:00
parent 55a873731f
commit bcb4dc36be
3 changed files with 9 additions and 6 deletions

View File

@@ -12,7 +12,9 @@ session_id: 2026-07-04-tandemmebel-deploy-snolla-0-42-0
- **`labtools.ru`** — 🟢 **DONE.** Стек 17, образ `labtools:566d41c` (0.28.2→0.42.1). Acceptance С VDS на новом образе: sitemap 38 page-locs (0.42.1 починил дефицитный sitemap sections 1→6/products 2→24), order-фикс `plg-20,plg-12,plg-25,pgr-10` == прод, 0 потерь контента. Live-smoke зелёный, TLS не тронут. Rollback тег `labtools:43e28ba`. Прог квитировал.
- **`emspb.ru`** — 🟢 **DONE.** Стек 18, образ `emspb:95a5c42` (0.28.4→0.42.1). Acceptance С VDS: 29 sitemap-роутов все 200, 0 потерь. Live-smoke зелёный. TLS = SAN-серт (CN косметически staging-хост, но SAN покрывает emspb.ru/www, curl validates). Rollback тег `emspb:b6e361a`.
- **`labtools.pro`** — **ЖДЁМ.** Deploy-таска ещё НЕ прилетела (прог `blocked` был на liquid-фиксе). УЖЕ CUTOVER'НУТ на VDS (стек 19 `labtools-pro`, образ `labtools-pro:7bd9fae`, snolla 0.28.7). Редеплой in-place → 0.42.1, тот же паттерн: build на VDS → acceptance-gate С VDS (каталог! порядок изделий by list_priority) → PUT стека 19 env-preserve → live-smoke. Rollback `labtools-pro:7bd9fae`/DNS→RUVDS. Рунбук: `.wiki/concepts/labtools.pro-vds-deploy-runbook.md`.
- **`labtools.pro`** — 🟢 **DONE.** Стек 19, образ `labtools-pro:0610432` (0.28.7→0.42.1). Acceptance С VDS: 25 sitemap page-locs все 200, 0 потерь; order-парити 3 секции MATCH (presses=plg-20,plg-12; milling=milling-jars,grinding-media; press-forms=13 == прод). Live-smoke зелёный, TLS CN=labtools.pro не тронут. Rollback тег `labtools-pro:7bd9fae`.
### ✅✅ ТИРАЖ 0.42.1 ЗАВЕРШЁН (2026-07-05): все 3 live-редеплоя закрыты (labtools.ru + emspb + labtools.pro). Осталось из тиража только tandemmebel (staging GREEN, ждёт DNS-отмашку владельца — ниже).
**Рецепт live-редеплоя (отработан на labtools.ru+emspb):** `git -C ~/projects/<site> archive <sha> | ssh vitya@89.253.255.94 tar -x -C ~/build/<site>``VERDACCIO_TOKEN=<pass> docker build -f deploy/Dockerfile --build-arg VERDACCIO_TOKEN -t registry.kzntsv.site/<img>:<sha> . && push` → throwaway-staging из env живого стека (`docker inspect <c> --format {{.Config.Env}}``--env-file`, порт 127.0.0.1:50XX) → completeness-gate С VDS (expand sitemap-индекс → реальные page-locs, статус на новом образе + content-not-lost vs прод-оракул) → PUT стека через `scratchpad/put-stack.js` (env preserve, `META=/tmp/stNN.json`, swap тега) → wait healthy → live-smoke боевого домена. Notify = сам сайт.

View File

@@ -1524,7 +1524,7 @@ tandemmebel-staging (стек 20) потеряет featured-вотермарк
---
## [labtools-pro-deploy-snolla-0-42-1] — Обновить ЖИВОЙ прод labtools.pro in-place → snolla 0.42.1 (собрать образ из sha 0610432, перепрогнать гейты на образе, operator-gated apply на боевой стек 19, rollback=7bd9fae).
## 🟢 [labtools-pro-deploy-snolla-0-42-1] — Обновить ЖИВОЙ прод labtools.pro in-place → snolla 0.42.1 (собрать образ из sha 0610432, перепрогнать гейты на образе, operator-gated apply на боевой стек 19, rollback=7bd9fae).
## Goal
Обновить **ЖИВОЙ прод** labtools.pro in-place на движке `@snollajs/snolla@0.42.1` (core 0.24.1 / data 0.14.1 / liquid 0.10.2). Класс = обновление живого прода (как labtools.ru), **НЕ staging-first greenfield**. Сайт уже боевой на VDS: Portainer стек **19**, текущий образ `labtools-pro:7bd9fae`, cutover'нут 2026-07-02, DNS→89.253.255.94.
@@ -1564,11 +1564,12 @@ Build-рецепт (зеркало tandemmebel): `git -C ~/projects/labtools.pro
Cutover DNS уже сделан (07-02) — тут только смена образа на существующем боевом стеке, НЕ новый DNS-флип.
**Status:** ready
**Where I stopped:** (not started) — код-часть закрыта проггером, sha 0610432 (master, pushed)
**Next action:** git archive 0610432 → VDS; docker build образ labtools-pro:0610432 на @snollajs/snolla@0.42.1; push в registry.kzntsv.site; перепрогнать acceptance-гейты на НОВОМ образе ДО подмены; затем operator-gated apply на живой стек 19.
**Status:** 🟢 done — 2026-07-05. labtools.pro LIVE на snolla 0.42.1, стек 19, образ `registry.kzntsv.site/labtools-pro:0610432` (digest `3d543fc…`). Оператор дал отмашку на боевой apply (+пуш).
**Where I stopped:** GREEN. Собрал `labtools-pro:0610432` на VDS (BUILD_EXIT=0, secret-guard OK). Acceptance на НОВОМ образе (throwaway-staging из env стека 19, С VDS против прод-оракула): completeness — **25 sitemap page-locs все 200** (0 non-2xx/3xx; +robots+sitemap.xml = 27 прогерских), content-not-lost 25/25 (0 потерь). **Order-парити ВСЕ секции MATCH** (фикс liquid 0.10.2): presses=`plg-20,plg-12`, milling=`milling-jars,grinding-media`, press-forms=13 изделий — все == прод.
**Next action:** — (закрыто). Боевой swap: PUT стека 19 (env 8/8 сохранён, pullImage=true) → healthy на 0610432 → **live-smoke labtools.pro зелёный** (/,robots,about,contacts,presses,press-forms=200; order вживую plg-20,plg-12; sitemap 25). TLS CN=labtools.pro Jul2→Sep30 не тронут. Rollback = тег `labtools-pro:7bd9fae` (0.28.7) / стек 19 PUT назад / DNS→RUVDS. Compose source-of-truth обновлён на 0610432.
**Branch:** master
**Notify:** victor/labtools.pro
<!-- created-by: OpeItcLoc03@DESKTOP-NSEF0UK / from: victor/labtools.pro / 2026-07-05T08:57:28.335Z -->
<!-- closed-by: vitya@.admin-exec / 2026-07-05 / live-prod in-place bump 0.28.7→0.42.1, operator-approved, acceptance GREEN (order-parity 3 секции), live-smoke GREEN -->
---