From af779a36e28cec2e5e738741e76751d5204b01e1 Mon Sep 17 00:00:00 2001 From: vitya Date: Tue, 16 Jun 2026 17:05:40 +0300 Subject: [PATCH] =?UTF-8?q?meta(handoff):=20pilonuxt=2037412d0=20deploy=20?= =?UTF-8?q?closed=20=E2=80=94=20offers=20live,=20Portainer=20registry=20fi?= =?UTF-8?q?x=20noted?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.8 (1M context) --- .tasks/NEXT_SESSION.md | 36 ++++++++++++++++-------------------- 1 file changed, 16 insertions(+), 20 deletions(-) diff --git a/.tasks/NEXT_SESSION.md b/.tasks/NEXT_SESSION.md index 41490c4..b59b18c 100644 --- a/.tasks/NEXT_SESSION.md +++ b/.tasks/NEXT_SESSION.md @@ -1,33 +1,29 @@ --- -_last_updated_: 2026-06-15T00:35:00Z -session_id: 2026-06-15-pilonuxt-cutover +_last_updated_: 2026-06-16T14:05:00Z +session_id: 2026-06-16-pilonuxt-gsc-offers --- # Next session handoff ## Recent commits +- `67abd6fa` feat(deploy): pilonuxt 37412d0 — offers в микроразметку Product, GSC-фикс live +- `e66a8b8d` meta(tasks): create [redeploy-pilonuxt-gsc-offers] - `b4cbb6dc` meta(tasks): решение — старый IIS 80.64.31.36 держим для отката -- `9add1ac1` feat(deploy): pilonuxt CUTOVER LIVE на www.pilorama98.ru — задача closed -- `2911f2b3` feat(deploy): pilonuxt 961a838 content-api fixed, full re-smoke -- `637942e9` fix(deploy): retract false-green — content-api 500 на CMS-страницах -- `38e84ce2` feat(deploy): pilonuxt VDS Portainer stack compose +- `9add1ac1` feat(deploy): pilonuxt CUTOVER LIVE на www.pilorama98.ru ## Open треки | Трек | Готовность | Entry-point | |---|---|---| -| deploy-pilonuxt-vds | 🟢 closed 2026-06-15 — кат живой на www.pilorama98.ru (Portainer stack 16, tag 125a3e2) | `.tasks/STATUS.md` блок + Closure note | -| (потенциальный follow-up) снять pilorama98-биндинг со старого IIS после soak | not started, ждёт отмашку vitya | STATUS follow-ups блока deploy-pilonuxt-vds | +| redeploy-pilonuxt-gsc-offers | 🟢 closed 2026-06-16 — `37412d0` в проде, offers-микроразметка live, smoke green | `.tasks/STATUS.md` блок + Closure note | +| (ждёт pilonuxt) GSC «Проверить устранение» на отчёте «Описания товара» | на стороне victor/pilonuxt | inbox `pilonuxt/.claude-inbox/...-admin.md` | +| (потенциальный follow-up) снять pilorama98-биндинг со старого IIS 80.64.31.36 после soak | not started, ждёт отмашку vitya | NEXT_SESSION 2026-06-15 guards | -## Спроси user'а -- Через 1-2 дня soak'а: подтвердить что pilorama98 на новом фронте стабилен → тогда завести отдельную таску на снятие pilorama98-биндинга со старого IIS. НЕ раньше отмашки. -- Опц.: нужен ли apex→www 301 canonical (легаси так делал; сейчас apex отдаёт фронт напрямую) — SEO-nicety. +## Спроси / подтверди +- **Push:** коммит `67abd6fa` НЕ запушен (per-session автопуш не выдан в эту сессию). Board синкается на другие машины через Gitea → стоит запушить, чтобы делегирующая сессия victor/pilonuxt увидела closure. Ждёт «разреши автопуш» / явного go. +- НЕ выводить старый IIS 80.64.31.36 (snolla catch-all на 25 хостнеймов) — решение vitya, держим для отката pilorama98. -## Не делать (preemptive guards) -- **НЕ выводить старый IIS 80.64.31.36** — решение vitya: держим для отката. И целиком гасить нельзя — это snolla catch-all на 25 хостнеймов (emspb/kupimknigi/labtools/…), снимается только биндинг pilorama98. -- Rollback pilorama98 (если кат поедет): DNS reg.ru `pilorama98.ru`+`www` → `80.64.31.36`, TTL низкий. Старый сайт+cert живы. -- Стек pilonuxt = Portainer **stack 16** на vds-kzntsv; правки ТОЛЬКО через Portainer API/UI (VDS-rule, не ssh+compose). Сохранённый `PORTAINER_API_KEY` протух (401) — auth через `POST /api/auth` admin-credsами из `pass vds-kzntsv/full-env`. -- НЕ верить home-curl по pilorama98.ru (домашний DPI + DNS-кэш отдают старый IIS) — проверять с VDS или `curl --resolve …:443:89.253.255.94` и смотреть `x-powered-by: Nuxt` (новый) vs `Server: Microsoft-IIS` (старый). -- compose source-of-truth: `host-stacks/vds-kzntsv/pilonuxt.compose.yml` (роутер на 3 хоста, GTM прод-дефолт). - -## Memory updates за сессию -- Новая memory: [[smoke-crawl-real-pages-not-two-routes]] — smoke = весь меню + data-эндпоинты (viewModel), не 2 happy-роута. Урок из фальш-green на этом кате (объявил green по /+/catalog, vitya поймал content-api 500). +## Что усвоено за сессию (gotchas) +- **Portainer pull приватного образа:** в Portainer на vds-kzntsv не был зарегистрирован НИ ОДИН registry → перекат стека с `PullImage` падал `no basic auth credentials`. Прошлые каты держались на host `docker login`, который слетел. Фикс: зарегистрирован `registry.kzntsv.site` (Custom, Id 1, креды из `pass vds-kzntsv/full-env` REGISTRY_*) → Portainer инжектит auth при pull. Теперь перекаты приватных образов на vds-kzntsv работают без host-login. +- Сохранённый `PORTAINER_API_KEY` протух (401) → auth через `POST /api/auth` admin-кредами (`PORTAINER_ADMIN_USER/PASS`). +- pilonuxt build = на workstation (не VDS): `docker build --secret id=verdaccio_token,env=VERDACCIO_TOKEN -t registry.kzntsv.site/pilonuxt: .` из чекаута нужного sha; `src/generated/` gitignored но populated в working dir → ensure-schema пропускает schema-gen, build в mssql не лезет. +- Smoke pilorama98 ТОЛЬКО через `curl --resolve www.pilorama98.ru:443:89.253.255.94` (дома DPI/DNS отдают старый IIS). Меню линкует /catalog,/services,/contacts,/payment; /delivery — НЕ пункт меню (404 ожидаем).