docs(kupimknigi): v3 cutover LIVE — runbook progress + handoff update
B3-v3 kupimknigi.spb.ru done (2/6 sites). 4 remain (labtools/labtools.pro/ emspb/tandemmebel). Rollback=9608ff6. Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -1,12 +1,26 @@
|
||||
---
|
||||
_last_updated_: 2026-07-30T11:34:14Z
|
||||
session_id: 2026-07-30-on-snolla-v3-cutover
|
||||
prev_session_id: 2026-07-30-minio-split-on-snolla-pilot
|
||||
_last_updated_: 2026-07-30T13:05:00Z
|
||||
session_id: 2026-07-30-kupimknigi-v3-cutover
|
||||
prev_session_id: 2026-07-30-on-snolla-v3-cutover
|
||||
---
|
||||
|
||||
# Next session handoff
|
||||
|
||||
## Эта сессия — on.snolla.com v3 cutover (конечная цель). ЗАВЕРШЁН ✅
|
||||
## Предыдущая сессия — on.snolla.com v3 cutover (конечная цель). ЗАВЕРШЁН ✅
|
||||
|
||||
## Эта сессия — kupimknigi.spb.ru v3 cutover. ЗАВЕРШЁН ✅
|
||||
|
||||
Второй сайт тиража (после on-snolla пилота). Тот же паттерн, отработан чисто.
|
||||
|
||||
### Что сделано
|
||||
- **Bump:** `@snollajs/snolla 0.42.0→0.43.2` в `apps/web/package.json` + resolutions-блок в root `package.json` (commit `5364353`, pushed victor/kupimknigi.spb.ru master). yarn install: single `@smithy/signature-v4@5.3.11` (deduped).
|
||||
- **Build на VDS:** `git archive` (gitea-SSH нет) → `~/build/kupimknigi` → `docker build -f deploy/Dockerfile --build-arg VERDACCIO_TOKEN` → `registry.kzntsv.site/kupimknigi:5364353` (+latest), EXIT=0.
|
||||
- **Staging :5079 parity-gate GREEN:** throwaway контейнер из env живого стека 21. `/` byte-identical с real Host (`Host: kupimknigi.spb.ru`), theme asset `toolbox.css` 200 35799 B byte-identical (v3 aws-sdk v3 S3-direct read из vds MinIO 2025), robots 200, `/callback-order/`→301. 3-байт diff без Host = form hidden `url`=request-URL (benign request-context).
|
||||
- **Portainer PUT stack 21 LIVE:** node in-memory `put-stack` (НЕ PS — кириллица compose), JWT re-auth перед PUT, env-preserving 8/8, `prune:false pullImage:true mem_limit 512m`. PUT 200. Source-of-truth compose синхронно закоммичен (admin `6f6fab1d`).
|
||||
- **Live smoke GREEN:** `/` 200 17708 B, H1 «Скупка книг на дому в СПб…», robots/sitemap 200, `/callback-order/`→301, theme asset 200 35799 B. Контейнер `5364353` healthy. TLS LE до Oct 3 (не тронут). **Rollback = `9608ff6`** (v2, жив в registry).
|
||||
- **Bundles a83e2a9 endpoint fix** (minio.kzntsv.site→minio.vds.kzntsv.site) — был в репо с 2026-07-29, но в бегущем образе 9608ff6 его не было; v3 cutover заодно перевёл S3-direct read на vds minio.
|
||||
|
||||
## Предыдущая сессия — on.snolla.com v3 cutover (конечная цель). ЗАВЕРШЁН ✅
|
||||
|
||||
User разворот 2026-07-30: v3 (aws-sdk v2→v3) — **конечная цель**, v2-пилот был промежуточным
|
||||
доказательством. on.snolla.com = v3-пилот. Скоординировано с snolla-сессией (peer, inter-session):
|
||||
@@ -49,14 +63,15 @@ snolla опубликовала v3, admin зарезал боевой cutover.
|
||||
## Open треки
|
||||
| Трек | Готовность | Entry-point |
|
||||
|---|---|---|
|
||||
| **B3 v3 — остальные 5 сайтов** (kupimknigi/labtools/labtools.pro/emspb/tandemmebel) | ⏳ TODO — v3-паттерн отработан на on-snolla (пилот GREEN) | `.wiki/concepts/minio-split-cutover-runbook.md` §B3-v3 + `on-snolla-vds-deploy-runbook.md` In-place bumps |
|
||||
| **B3 v3 — kupimknigi** | ✅ LIVE 2026-07-30 | эта сессия — см. ↑ §Эта сессия |
|
||||
| **B3 v3 — остальные 4 сайта** (labtools/labtools.pro/emspb/tandemmebel) | ⏳ TODO — v3-паттерн отработан на on-snolla + kupimknigi (2 GREEN) | `.wiki/concepts/minio-split-cutover-runbook.md` §B3-v3 + `on-snolla-vds-deploy-runbook.md` In-place bumps |
|
||||
| MinIO split Track A (books-vds minio 2020→2025) | ⏳ TODO — transparent, отдельно | runbook §Track A |
|
||||
| MinIO split B4 .NET catch-all админ s3 endpoint | ⏳ TODO — `C:\sites\snolla\Web.config` serviceURL → minio.vds.kzntsv.site | runbook §B4 |
|
||||
| MinIO split B5 Obsidian Remotely Save endpoint | ⏳ TODO — obsidian бакет смиррорен, можно менять | runbook §B5; memory `obsidian-remotely-save-endpoint-after-mirror` |
|
||||
| books-task-runner-registry-auth-cred | 🔵 blocked — cred в config-volume, рабочий образ содержит СТАРЫЙ registryGc; тега master-a3734d5 в реестре нет | `.tasks/STATUS.md` §books-task-runner |
|
||||
|
||||
## Спроси user'а
|
||||
- Какой следующий сайт из 5 бампить на v3? Паттерн: bump `@snollajs/snolla→0.43.2` + resolutions (optional) → build на VDS → staging :50XX parity-gate → Portainer PUT env-preserving. tandemmebel был BLOCKED (sharp-staging дефект) — проверить перед бампом.
|
||||
- Какой следующий сайт из 4 бампить на v3? Паттерн: bump `@snollajs/snolla→0.43.2` + resolutions (optional) → build на VDS → staging :50XX parity-gate → Portainer PUT env-preserving. tandemmebel был BLOCKED (sharp-staging дефект) — проверить перед бампом. kupimknigi + on-snolla GREEN (2/6).
|
||||
- stostayer v3-трек (0.43.1/0.7.8/0.17.2) — HOLD, snolla-scope, НЕ подхватывать без GO user (snolla ждёт stostayer-specific).
|
||||
|
||||
## Не делать (preemptive guards)
|
||||
|
||||
@@ -32,7 +32,8 @@ updated: 2026-07-30
|
||||
| B2 DNS-flip `imgproxy.kzntsv.site` → 89.253.255.94 | ✅ LIVE | imgproxy.kzntsv.site/<pilorama98-image> → 200 webp (vds imgproxy ← vds minio); CMS-сайты берут картинки через vds |
|
||||
| **B3 on-snolla v2-пилот (S3-direct-path)** | ✅ LIVE 2026-07-30 | in-place bump стека 22 `473923e494db→07db7e3` (snolla 0.42.1 v2, config endpoint → minio.vds.kzntsv.site, без бампа package.json). Theme-assets `/themes/c406…/…` → 200 97324 B == live (aws-sdk v2 → vds minio 2025 — compat подтверждена, главный риск закрыт). Sitemap 3/3 parity, `/c` 404 parity. Rollback-тег `473923e494db` в registry. **Промежуточный** шаг — v2 совместим, но v3 — конечная цель (user 2026-07-30). |
|
||||
| **B3v3 on-snolla v3-пилот** | ✅ LIVE 2026-07-30 | `@snollajs/snolla 0.43.2` published (verdaccio latest). Live MinIO verify ЗЕЛЁНЫЙ (snolla, оба конфига). **v3 cutover 2026-07-30T11:28Z**: bump `@snollajs/snolla 0.42.1→0.43.2` + resolutions (root package.json), commit `eb8c143` pushed, build на VDS → `registry.kzntsv.site/on-snolla:eb8c143`, Portainer PUT stack 22 env-preserving (8/8), prune:false pullImage:true, mem_limit 512m. Throwaway staging :5078 parity-gate GREEN (theme asset 200 97324 B byte-identical, sitemapindex+3 sub-sitemaps byte-identical, /c 404 parity). Live smoke GREEN: / 200, robots/sitemap/sub-sitemaps 200, /yandex 200, theme asset 200 97324 B (v3 aws-sdk v3 S3-direct read из vds MinIO 2025). TLS не тронут (LE до Oct 18). Rollback = образ-тег `07db7e3` (v2, жив). |
|
||||
| B3 остальные 5 сайтов (kupimknigi/tandemmebel/labtools/labtools.pro/emspb) | ⏳ TODO | после v3-пилота on-snolla; тот же паттерн (bump @snollajs/snolla→0.43.2 + **resolutions** + rebuild). tandemmebel BLOCKED (визуальный дефект sharp-staging); kupimknigi — проверить cutover-статус |
|
||||
| **B3v3 kupimknigi.spb.ru** | ✅ LIVE 2026-07-30 | bump `@snollajs/snolla 0.42.0→0.43.2` + resolutions (commit `5364353`, apps/web + root). Build на VDS (archive → `~/build/kupimknigi`) → `registry.kzntsv.site/kupimknigi:5364353`(+latest). Bundles a83e2a9 endpoint fix (minio.vds.kzntsv.site) — был в репо, но в бегущем образе 9608ff6 (v2) его не было. Throwaway staging :5079 parity-gate GREEN: `/` byte-identical с real Host, theme asset `toolbox.css` 200 35799 B byte-identical (v3 aws-sdk v3 S3-direct read из vds MinIO 2025), robots 200, `/callback-order/`→301. Portainer PUT stack 21 env-preserving (8/8, node in-memory put-stack), `prune:false pullImage:true mem_limit 512m`. Live smoke GREEN: `/` 200, robots/sitemap 200, H1 «Скупка книг на дому в СПб…», theme asset 200 35799 B. TLS LE до Oct 3 (не тронут). **Rollback = `9608ff6`** (v2, жив в registry). |
|
||||
| B3 остальные 4 сайта (tandemmebel/labtools/labtools.pro/emspb) | ⏳ TODO | тот же паттерн (bump @snollajs/snolla→0.43.2 + **resolutions** + rebuild). tandemmebel BLOCKED (визуальный дефект sharp-staging) — проверить перед бампом |
|
||||
| Track A (books-vds minio 2020→2025) | ⏳ TODO | transparent, отдельно от Track B |
|
||||
| B4 .NET catch-all админ s3 endpoint | ⏳ TODO | `C:\sites\snolla\Web.config` serviceURL → minio.vds.kzntsv.site |
|
||||
| B5 Obsidian Remotely Save endpoint | ⏳ TODO | после B1 миррора obsidian (готово) — менять endpoint |
|
||||
|
||||
Reference in New Issue
Block a user