From c0afaeca4e516999e63260d36f4f1ddfb3fc1f0f Mon Sep 17 00:00:00 2001 From: vitya Date: Mon, 29 Jun 2026 23:08:17 +0300 Subject: [PATCH] meta(handoff): session 2026-06-29 pilonuxt deploys (40bb383 + cf2bba2) Co-Authored-By: Claude Opus 4.8 (1M context) --- .tasks/NEXT_SESSION.md | 38 +++++++++++++++++++++----------------- 1 file changed, 21 insertions(+), 17 deletions(-) diff --git a/.tasks/NEXT_SESSION.md b/.tasks/NEXT_SESSION.md index 64eefd4..453b0fa 100644 --- a/.tasks/NEXT_SESSION.md +++ b/.tasks/NEXT_SESSION.md @@ -1,33 +1,37 @@ --- -_last_updated_: 2026-06-18T00:00:00Z -session_id: 2026-06-17-stostayer-web-complaint-form-deploy +_last_updated_: 2026-06-29T20:05:00Z +session_id: 2026-06-29-pilonuxt-deploys --- # Next session handoff ## Recent commits -- `5ffca969` docs(wiki): runbook stostayer-web deploy + park complaint-form task -- `5be0855f` meta(tasks): create [stostayer-web-complaint-form-deploy] (от victor/stostayer.new) -- `c677b23f` docs(wiki): live-state stostayer IIS на windows-recovery-host +- `685f2735` deploy(pilonuxt): cf2bba2 LIVE — forms-api + full @snollajs/snolla drop (ADR-0010) +- `dca1bf77` deploy(pilonuxt): 40bb383 LIVE — staticPages + robots.txt from DB (ADR-0009) +- `c3e84583` wiki(books-vds): document public bookva-db endpoint :33306 + +## Что произошло (сжато) +Два последовательных деплоя pilonuxt на прод (Portainer стек 16, vds-kzntsv 89.253.255.94), оба по наряду от victor/pilorama98.ru через inbox: +1. **40bb383** — DB-backed staticPages + robots.txt (ADR-0009). Smoke 6/6. +2. **cf2bba2** — forms на `@snollajs/forms-api`, полный дроп `@snollajs/snolla`, core@0.1.1 (Buffer вместо btoa). Tree-check `.output` 4/4 (0× snolla, 0× btoa, 1× data@0.9.1) + smoke зелёный (SSR 200, robots/yandex из БД, форма 422/404). + +Оба наряда 🟢 closed, notify отправлены. **Текущий прод pilonuxt = `cf2bba2`.** Откат: стек 16 → `40bb383` (образ на VDS цел). ## Open треки | Трек | Готовность | Entry-point | |---|---|---| -| stostayer-web-complaint-form-deploy | 🔵 **parked на web4-cutover** — деплой легаси web НЕВОЗМОЖЕН (ESM-стена), фикс формы `120bc07` поедет только с переездом формы в web4 | `.tasks/STATUS.md` блок + `.wiki/concepts/stostayer-web-deploy-runbook.md` | -| (на стороне stostayer.new) web4-complaint-form-port | ⚪ ready у них — порт формы в web4 ($fetch/useToast). Свистнут когда дойдёт до деплоя | `victor/stostayer.new/.tasks/` | - -## Что произошло (сжато) -Пытался выкатить фикс формы жалоб `120bc07` на прод `www.stostayer.ru` (легаси `packages/web`, Nuxt2). Образ собрался (cherry-pick на pre-ESM `d02f740`), запушился, передеплоил Portainer-стек 16 → **краш-луп `ERR_REQUIRE_ESM`**. Откатил на `0.3.18`, сайт восстановлен. Вердикт (подтверждён stostayer.new): легаси web require-ит 5 ESM-ставших депов → не пересобрать ни с какого свежего дерева, `0.3.18` заморожен. Канал деплоя + ESM-стена задокументированы в вики-ранбуке. +| (нет активных 🔴) | — | борд чист по pilonuxt | +| backlog/blocked без изменений | ⚪/🔵/🟡 | STATUS.md: harden-books-vds-exposed-ports ⚪, kreknin-self-backup ⚪, books-* bootstrap/cutover 🔵, fix-nl-vds-reality 🟡 (ждёт client-side от vitya) | ## Спроси / подтверди -- **Push handoff:** этот `NEXT_SESSION.md` закоммичен, но НЕ запушен (Rule 4 — нужна отмашка). Board синкается на другие машины через Gitea → стоит запушить. -- web4-cutover — планирование на стороне vitya. Деплой формы разблокируется только после переезда формы в web4. +- (нет на этом раунде) — обе задачи закрыты, ничего mid-task не висит. ## Не делать (preemptive guards) -- **НЕ пытаться пересобрать легаси `packages/web` с master/любого свежего дерева** — ESM-стена, бесполезно (5 ESM-депов). Только web4-путь. -- **На client-инфру `stostayer.ru`: один `docker push`, БЕЗ retry-циклов** — retry-шторм засветил egress VPN, хостер забанил наш VPN-IP (выглядело как «сайт лёг»). Сбой → стоп и к vitya. -- **Дохлый `0.3.19` в `docker.stostayer.ru` НЕ удалять** — оставлен по решению vitya (под откат не нужен, есть 0.3.18). -- **Код в `stostayer.new` сам не правлю** — ops-only, проблемы кода → inbox `victor/stostayer.new`. +- **Notify victor/pilorama98.ru → ТОЛЬКО `~/projects/pilorama98.ru/.claude-inbox/`** (монореп, живой, метётся в `.read/`). НЕ dotted `~/projects/.pilorama98.ru/` (мёртвый, сообщения копятся непрочитанными). Промахнулся раз на 40bb383-notify. См. memory `pilorama98-inbox-is-monorepo-not-dotted`. +- **Автопуш был выдан на ЭТУ сессию** — на старте следующей сбросить в ask-mode (project-discipline Rule 4). +- **pilonuxt build-канал:** push с дома гарантированно 499 на `.output`-слое → сразу `docker save | ssh -i ~/.ssh/id_ed25519 vitya@89.253.255.94 'sudo docker load'` + push с VDS (registry локален). Не тратить время на home-push. +- **forms-api smoke:** 422 только с `Accept: application/json` (иначе `prefersJson` false → 404, не баг). +- **Деплой pilonuxt всегда требует ФОРС-регенерации клиента:** `rm -rf apps/web/src/generated` + `yarn workspace nuxt-app schema-gen` (egress в MSSQL) перед docker build — иначе ensure-schema skip соберёт stale-клиент. ## Memory updates за сессию -- Стостайер-знание идёт **в вики (`.wiki/concepts/stostayer-web-deploy-runbook.md`), НЕ в агентскую память** — по явному указанию vitya. Память-файлы, что я было создал, снёс. +- Создана `pilorama98-inbox-is-monorepo-not-dotted.md` (reference) + строка в MEMORY.md — куда слать notify pilorama98.