Commit Graph

96 Commits

Author SHA1 Message Date
88f1bb5fe2 wiki: закрыта gitea-задача на kreknin (DNS-override через RCI, hairpin не чинится)
- DNS-записи git.kreknin.site/kreknin.site → 192.168.1.43 добавлены через POST /rci/ parse (ip host)
- KeeneticOS 5.1.3 hairpin НЕ чинит (проверено) — DNS-override это решение
- Концепт keenetic-rci-api + ссылка на офиц. CLI-документацию
- Handoff: задача полностью закрыта
2026-08-12 18:47:04 +03:00
fe540f7674 chore: drop use-superpowers trigger (catalog sovereign) 2026-08-12 17:19:02 +03:00
03607d0d6e meta(handoff): flat-fields wave CLOSED; session end
- 7 sites @snolla/snolla→web redeployed
- admin-api 0.4.0 (flat fields) + client 0.5.2 + schema-gen 0.2.1 published
- pilorama98 0db46e1 live: loader flat + catalog + yml/short_description
- admin-api 0.5.0 (validation) published, not deployed to pilorama98
- coordinator role active: snolla ↔ pilorama98
2026-08-07 13:03:23 +03:00
bb4d441f5a meta(handoff): namespace migration + admin-api embed CLOSED; session end
Сессия 2026-08-04/05: S2+S3 review APPROVE, неймспейс-миграция
@snollajs→@snolla (8 сайтов), admin-api embed в pilonuxt,
стек 25 retire. Wiki обновлён.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-05 00:28:55 +03:00
543b10a464 docs(wiki): namespace-consolidation + admin-api-embed concepts
Документированы два крупнейших изменения сессии 2026-08-04/05:
- Неймспейс-миграция @snollajs→@snolla (17 пакетов, 8 сайтов)
- Admin-api embed в pilonuxt /admin/api, retire стека 25

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-05 00:24:42 +03:00
1becee760c meta(handoff): S2 review APPROVE (ed7da15), publish+deploy held; роль координатор+ревьювер продолжается в след. сессии
- клиент 20/20 + schema-gen 19/19 + tsc 0 (прогнано сам); покрытие 52/52 non-F; /move сверен с сервером
- финайдинги F1-F3 (минорные) отправлены snolla; publish НЕ дан (hold vitya)
- vitya: в след. сессии тот же координатор+ревьювер этого проекта

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-04 21:33:24 +03:00
6fe728aa21 meta(handoff): S2 ПРОДОЛЖАЕТСЯ — отмена camel отозвана (vitya: «Продолжать S2»)
- 219a8b3d («camel ОТМЕНЁН») был ошибочной интерпретацией; vitya подтвердил snolla «Продолжать S2»
- S2 (@snolla/admin-api-client 0.3.x camel) идёт у snolla; деплой = один срез в конце эпика, live ca0dfa3 до готовности
- урок: не рассылать другим сессиям письма-отмены по своему прочтению — вмешательство в их работу

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-04 21:14:25 +03:00
219a8b3d43 meta(handoff): camel-эпик ОТМЕНЁН (vitya) — деплой-парковки нет, live ca0dfa3 (Pascal) остаётся
- vitya: «после S2 деплой не нужен» — весь camel-эпик (S1 wire + S2 клиент 0.3.x + loader re-миграция) отменён
- loader уже мигрирован на Pascal-провод (клиент 0.2.1), прод-импорт done — переделывать нечего
- 2ffd66a — мусор (собран, не запушен); деплой не отдельная веха, релиз = часть выпуска фичи
- письмо snolla отправлено (18-10-26Z): S2 не стартуем
- урок: не строить rework-эпик на работающем проводе без потребителя

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-04 21:11:51 +03:00
c5166d88f0 meta(handoff): S1 APPROVE + деплой отложен до S2 (полный срез); урок про деплой-гейты
S1 (camel-нормализация admin-api) — ревью APPROVE, финайдинги закрыты (F1 page-part-templates
переведён). Деплой ОТЛОЖЕН по решению snolla+оператор: S1 без camel-клиента не выкатываем,
деплой одним срезом после S2. Образ 2ffd66a собран на VDS, не запушен, live = ca0dfa3.
pilorama98 auto-numbering прогнан (таска 🟢). Память: optional-other-project-task-not-a-deploy-gate.
2026-08-04 21:00:36 +03:00
5d66a86ee3 meta(handoff): loader-migration + admin-api deploy CLOSED; handoff на next session
Эта сессия: координация loader-migrate-to-admin-api-client завершена (identity PASS +
прод-импорт через API, 0 ошибок), admin-api стек 25 LIVE. Coord-таска финал. Handoff
пишет на следующий разворот: MinIO-retire (≈05.08) + kreknin-ремонт + вернуть бэкапы.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-04 19:37:06 +03:00
d1ad3ebe3a meta(handoff): MinIO config flip sweep DONE (2026-08-04) — 5 репо + snolla framework + локальные gitignored
Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-04 14:44:40 +03:00
f49481b80c meta(admin): MinIO split Track A DONE — books-vds minio 2020→2025 (shared + bookva), backup paths updated
- shared minio (stack 30): mirror 17 buckets → /usr/docker/minio/data-new, Portainer swap, traefik/imgproxy/books apps GREEN
- bookva-minio (stack 49): mirror books (38692 obj) → volume bookva-minio-data-new (docker volume rename unavailable on old daemon)
- backup script (repo + host /opt/stacks/backup/run.sh) repointed to live paths
- runbook Track A progress + gotchas (mc --disable-multipart, sequential mirrors on 3.8G host, CRLF secret)
- handoff for next session (retire old data in 48h, kreknin tomorrow)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-03 17:29:35 +03:00
a37c3ba98b meta(handoff): labtools cylindrical CLOSED (catalog provider core 0.26.6 live GREEN); kreknin tomorrow; MinIO split next session
Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-03 16:08:31 +03:00
4a1728c449 meta(handoff): labtools cylindrical root-cause found in snolla code — task posted (content-page-linked-products-hydration) + inbox letter 2026-08-03 13:29:11 +03:00
1a901b1396 meta(handoff): kreknin rescue session — sdd/VM-volume restore + full rescue to USB + backups paused (→ repair)
- kreknin Xpenology degraded after compressor dusting (sdb cable lost, md3 degraded, sda/sdc flaky cables)
- sdd/VM-volume (md2, /volume2) restored: DSM Repair + "Convert to read/write", scrub 0 errors
- full rescue 2026-08-02 → USB 2TB btrfs /mnt/rescue (netbackup/*.tar incl. diskstation_1.hbk 430G + 5 user shares)
- daily backups DISABLED (vds-kzntsv 05:00 + books-vds 06:00) — re-enable after repair
- wiki entity kreknin-synology: disk inventory, incident, repair, rescue, plan
- task kreknin-repair-md3-rebuild created (power-off → reseat cables → Repair md3 → re-enable backups)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-08-03 12:40:51 +03:00
0346d5243b meta(handoff): session 2026-07-31 — maljarka restore + variant-cache fix + labtools-cylindrical (→ workshop)
maljarka.tandemmebel.ru восстановлен (7-й сайт, стек 23, LIVE).
variant-cache bucket создан на vds 2025 (shared v3-регрессия sharp-images).
labtools cylindrical product-cards: snolla Linked-item VM bug → handoff victor/snolla
(не v3-регрессия; мой фикс откат, prod не тронут).

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-31 10:47:57 +03:00
22f9748b4c meta(handoff): maljarka restore session — 7/7 тираж GREEN (stack 23)
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-31 06:16:04 +03:00
18c27ab8f5 meta(handoff): MinIO-split B4 fully closed — gallery preview fixed (MoreThenCms 09cb072d)
B4 endpoint flip + pre-existing S3-provider KeyNotFoundException bug (gallery preview
ownerId) fixed via drop-in DLL. Preview confirmed live by user. Runbook §B4 + NEXT_SESSION
updated with root cause + fix reference.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-30 19:49:59 +03:00
84c2d6e981 meta(handoff): MinIO-split B4 DONE — .NET catch-all админ Web.config endpoint → vds minio
Web.config 6/6 fileStorageClients endpoint minio.kzntsv.site → minio.vds.kzntsv.site
(AWSSDK 1.3.19, us-east-1, forcePathStyle). Pre-flip verify: MINIO_ROOT_USER ==
Web.config accessKey (reuse, no rotation); mc read galleries/assets/themes OK
(B1 mirror live). IIS auto-recycle; https://internal.snolla.com/admin/account/login
200 <title>SNOLLA</title>, login form renders (app boots clean). Asset Manager
preview (authenticated) — user-confirm pending. Backup: Web.config.b4.bak.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-30 19:33:28 +03:00
1be1ed9ded meta(handoff): B5 Obsidian Remotely Save endpoint DONE — verified flipped to vds minio
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-30 19:27:07 +03:00
94b0ae04ea meta(handoff): tandemmebel v3 cutover LIVE — тираж v3 завершён 6/6 GREEN
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-30 19:01:45 +03:00
fd48df6225 feat(emspb): v3 cutover LIVE — snolla 0.42.1→0.43.2 (aws-sdk v2→v3)
5-й сайт тиража v3 (5/6 GREEN). In-place bump стека 18 (DNS на VDS с
2026-07-02). Commit victor/emspb.ru 5afd8a1 (bump + resolutions + yarn.lock
реген). Build на VDS → registry.kzntsv.site/emspb:5afd8a1 digest 72bb59fc.
Staging :5082 parity-gate GREEN (29/29 routes 200, theme assets 7/7 md5
IDENTICAL — v3 S3-direct read из vds MinIO 2025). Portainer PUT stack 18
env-preserving (8/8, node in-memory put-stack), prune:false pullImage:true.
Live smoke GREEN. Rollback = 95a5c42 (v2).

- emspb.compose.yml: 95a5c42→5afd8a1
- emspb-vds-deploy-runbook: §0.43.2
- minio-split-cutover-runbook: progress-table emspb , остался tandemmebel
- NEXT_SESSION: 5/6 GREEN, остался tandemmebel (стек 20, был BLOCKED на
  sharp-staging дефекте — проверить перед бампом)

Остался 1 сайт: tandemmebel.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-30 17:46:19 +03:00
c3c79b996a feat(labtools.pro): v3 cutover LIVE — snolla 0.42.1→0.43.2 (aws-sdk v2→v3)
4-й сайт тиража v3 (on-snolla, kupimknigi, labtools.ru, labtools.pro — 4/6 GREEN).
Stack 19 image 0610432→a106622, env 8/8 preserved, mem_limit 512m.

Staging :5081 parity-gate GREEN: theme lato.css 200 9994B md5-identical
(v3 aws-sdk v3 S3-direct read из vds MinIO 2025), sitemap 7 детей == live,
order-parity press-forms 12 изделий, / 4-байт diff = og:url/og:image
request-host (benign). Live smoke GREEN, TLS CN=labtools.pro не тронут.
Rollback = labtools-pro:0610432 (0.42.1, жив в registry).

Compose source-of-truth + runbook v3 секция + handoff обновлены.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-30 17:36:36 +03:00
ff87bc5205 meta(handoff): next session pick = labtools.pro (user chose, not started)
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-30 17:22:50 +03:00
387560c9f8 feat(labtools): v3 cutover LIVE — snolla 0.42.1→0.43.2 (aws-sdk v2→v3)
3rd site of v3 тираж (after on-snolla + kupimknigi, 3/6 GREEN).
Bump 0dc0b4e: apps/web snolla→0.43.2 + resolutions (root). Endpoint fix
4f3314f (minio.vds.kzntsv.site) was in master but not in running v2 image
566d41c — v3 cutover also moved S3-direct read to vds minio.

Staging :5080 parity-gate GREEN (home/theme byte-identical, sitemap 38
locs == live, order-parity). Portainer PUT stack 17 env-preserving 8/8,
mem_limit 512m, prune:false pullImage:true. Live smoke GREEN, TLS untouched.
Rollback = 566d41c (v2, in registry).

Compose source-of-truth 566d41c→0dc0b4e. Runbook + handoff updated.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-30 17:19:26 +03:00
7795fa4dee meta(handoff): next session pick = labtools (user chose, not started)
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-30 17:11:27 +03:00
60bb09b4c0 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>
2026-07-30 17:10:00 +03:00
7dfd8dba7b meta(handoff): NEXT_SESSION — on-snolla v3 cutover LIVE (end-goal), 5 sites v3 TODO
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-30 14:34:46 +03:00
f56eb2f800 feat(on-snolla): v3 cutover LIVE — snolla 0.43.2 (aws-sdk v2→v3) + runbook migration
v3 pilot on.snolla.com end-goal (user 2026-07-30): bump @snollajs/snolla
0.42.1→0.43.2 + @smithy resolutions (root package.json, on.snolla.com eb8c143).
Portainer PUT stack 22 → registry.kzntsv.site/on-snolla:eb8c143, env-preserving
8/8, mem_limit 512m. Live smoke GREEN: theme asset 200 97324 B (v3 aws-sdk v3
S3-direct read из vds MinIO 2025), sitemap+sub-sitemaps byte-identical, /c 404.
Rollback = 07db7e3 (v2, жив).

runbook migration (дисциплина): scripts/minio-split-cutover/runbook.md →
.wiki/concepts/minio-split-cutover-runbook.md (конвенция: runbook'и в .wiki/concepts/).
Creds normalized → pass show minio-vds/full-env (wiki-конвенция, не plaintext).
+ index.md, log.md, on-snolla-vds-deploy-runbook v3-секция.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-30 14:30:38 +03:00
afb6e5f0d6 meta(handoff): fix stale tandemmebel "blocked" — it's LIVE on VDS since 2026-07-12 (cutover complete, image 8df10ee/0.42.1), candidate for B3 not blocked
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-30 13:26:36 +03:00
8cd1201046 meta(handoff): NEXT_SESSION — MinIO split B3 on-snolla pilot LIVE, 5 sites + Track A/B4/B5 TODO
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-30 13:24:24 +03:00
43aa674e5b wiki(stostayer): ingest markdown-render-404 incident postmortem + NEXT_SESSION
Постмортем инцидента 2026-07-24: 404/500 на body_repair_service (stostayer.ru) =
двойной корень. (1) код-баг snolla: viewModels/index.js `import markdown from
'markdown-it'; markdown();` — инстанс выброшен, markdown.render undefined, краш на
markdown-поле-шаблонах (латентный ~3 мес с коммита 1e3f897 2026-04-21). (2) упаковка
exact-pin-staleness: @snollajs/content-api@0.8.0 `workspace:*` запёк
@snollajs/snolla:0.7.4 exact → фиксовая 0.7.7 легла top-level, content-api юзал
nested баговую 0.7.4. yarn resolutions/patch не форсят exact-pin опубликованного
пакета — решено публикацией @snollajs/content-api@0.8.2 (^0.7.7).

Деплой stostayer-web:0.3.22 через pscp SSH:20435 + sudo docker load + Portainer PUT
pullImage:false (без push в docker.stostayer.ru:443, бана нет). 4 URL → 200 публично.
Pre-build чек yarn.lock single-snolla ловит класс. Cleanup
workspace-caret-interpackage-deps — за vitya+snolla.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-24 14:37:53 +03:00
23b1a47c14 wiki(stostayer): ingest stostayer-admin-minio-config — :8090 admin on stostayer MinIO
Fix 2026-07-22: local .NET admin (C:\sites\stostayer\Web.config) S3 providers
re-pointed to stostayer MinIO. 3 bugs in original config: wrong creds
(AKIAJ2YJP72W6ZHCRE6Q = books-vds root, not stayer_minio), wrong endpoint
(minio.stostayer.ru is not S3 API port; prod uses minio-api.stostayer.ru),
wrong region (local -> AmazonS3Exception expecting us-west-1). Creds NOT in
pass — live in stostayer.new config/default.json. Admin now shares prod
storage; manual App_Data mirroring retired.

+ index.md, log.md. Also carries pending handoff (NEXT_SESSION) + runbook
update from 2026-07-21 stostayer-web 0.3.20 deploy session.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-22 10:45:13 +03:00
95168e301a meta(handoff): NEXT_SESSION — RUVDS DECOMM 2026-07-21, rimiz DNS flipped, 0 public domains on RUVDS
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-21 10:18:52 +03:00
vitya
50e263860d ops(on-snolla): rename site alias on->internal (admin at internal.snolla.com/admin)
- Sites.Alias+LoweredAlias on->internal (siteId B9ECDB50; PrimaryDomain on.snolla.com kept).
- Web.config primaryAlias on->internal (catch-all default-site; without it the whole
  catch-all NRE-500s on every request — primaryAlias references the renamed alias).
- hosts: on.snolla.com->internal.snolla.com under # snolla-local-admin marker.
- setup-local-snolla-admin.ps1 aliases array updated.
- runbook + NEXT_SESSION + memory updated.

VDS prod on.snolla.com unaffected (snolla-app uses config.siteId, not alias) — verified
byte-identical + smoke GREEN after rename. Incident: elevated hosts edit emptied hosts
to 0B (Get-Content -Raw returned null in RunAs context) — restored from Windows default
header + snolla-local-admin block. Memory snolla-catch-all-primaryalias-depends-on-alias.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-20 13:33:09 +03:00
vitya
bec7784ffa meta(handoff): write NEXT_SESSION — Task B (on-snolla) CUTOVER DONE 2026-07-20
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-20 13:18:47 +03:00
dcc84cec4b meta(handoff): lock Task B decisions — repo victor/on.snolla.com, admin creds in DB
Task B deferred to next session. Operator decisions locked:
- repo = victor/on.snolla.com
- admin creds in MoreThenCms.dbo.Accounts (read via snolla user / SA)

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-20 10:31:08 +03:00
863b11be28 meta(handoff): write NEXT_SESSION — Task A DONE, Task B unblocked
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-20 10:11:19 +03:00
d4278e79f9 meta(handoff): write NEXT_SESSION — snolla local admin + on-snolla design
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-20 09:45:32 +03:00
ee7f5a2d18 chore(handoff): tandemmebel 8df10ee deploy DONE + loose end (Portainer STAGING-comments)
Сессия 2026-07-13-tandemmebel-8df10ee-deploy завершена. Deploy на прод GREEN,
задача закрыта (fe8e5882). NEXT_SESSION.md дополнен этой сессией поверх прежних
pending-треков (vehicles-loader 0.4.1 verify ждёт 07-14 06:21 MSK, books-vds
консолидация, ntfy pin). Loose end: Portainer stack 20 устаревшие STAGING-комменты
(косметика, rule line уже LIVE).

Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-13 22:52:47 +03:00
816c0e027d chore(handoff): next-session note — vehicles-loader 0.4.1 verify pending + books-vds consolidation eval
Co-Authored-By: Claude <noreply@anthropic.com>
2026-07-13 18:46:56 +03:00
d3d0ff48ed feat(tandemmebel): cutover LIVE on VDS — last snolla site migrated
DNS reg.ru flipped, traefik Host-rule staging->prod, LE cert issued.
Live-smoke GREEN: all pages 200, sitemap 184 locs, sharp media OK.
Gotham-Pro.css latent prod bug fixed by cutover (0B->4436B).
Snolla 0.42.x tirazh now fully alive (5/5 stacks on VDS).
2026-07-12 12:48:20 +03:00
3adbe839f2 meta(handoff): mem_limit 512m тираж snolla + durable-конвенция; tandemmebel ждёт DNS
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-05 14:45:39 +03:00
3bc9992350 meta(handoff): тираж snolla 0.42.1 закрыт (3 live-редеплоя + вика); остался tandemmebel на DNS-отмашке
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-05 12:18:43 +03:00
0fd1c69515 fix(labtools.pro): press-forms счётчик 13→12 (прог-сверка против прод — прод-истина 12, мой ручной счёт задвоил тайл; парити не задет)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-05 12:07:08 +03:00
bcb4dc36be 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>
2026-07-05 12:04:04 +03:00
55a873731f deploy(labtools.ru+emspb): LIVE на snolla 0.42.1 — in-place bump живого прода (стеки 17/18)
Тираж 0.42.1, оператор дал отмашку на боевой apply. Оба = редеплой ЖИВОГО
прода in-place (не greenfield), acceptance на новом образе С VDS ДО swap.

- labtools.ru: labtools:566d41c (0.28.2→0.42.1). 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 GREEN, TLS не тронут. Rollback labtools:43e28ba.
- emspb.ru: emspb:95a5c42 (0.28.4→0.42.1). 29 sitemap-роутов все 200,
  0 потерь. Live-smoke GREEN. TLS SAN-серт валиден. Rollback emspb:b6e361a.

Compose source-of-truth обновлён на новые теги. Оба прога квитированы.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-05 11:59:08 +03:00
78f23a6561 cutover(kupimknigi): LIVE на VDS — DNS reg.ru→89.253.255.94, боевой Host в стек 21, LE-серт GREEN
Оператор флипнул DNS, подтверждён на ns1+ns2.reg.ru. Боевой Host(kupimknigi.spb.ru)
в стек 21 (staging-host убран), LE-серт CN=kupimknigi.spb.ru valid Jul5→Oct3.
Live-smoke GREEN: /→200 H1, robots/тема-css 200, callback 301. RUVDS=rollback.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-05 10:50:35 +03:00
96ae400941 meta(handoff): поправка — тираж не завершён, ещё 3 сайта (labtools.ru/pro/emspb) в полёте на 0.42.0
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-05 10:34:07 +03:00
6f79ffc64e meta(handoff): kupimknigi добавлен в тираж (стек 21, 9608ff6) — оба сайта staging GREEN, ждут cutover
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-05 10:32:27 +03:00