From be2f9eb869d31c72a4d1648458a695752f3889b5 Mon Sep 17 00:00:00 2001 From: OpeItcLoc03 Date: Thu, 18 Jun 2026 17:44:33 +0000 Subject: [PATCH] meta(tasks): create [deploy-pilorama-web-from-monorepo] in OpeItcLoc03/admin --- .tasks/STATUS.md | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/.tasks/STATUS.md b/.tasks/STATUS.md index 5e11115..941a5bd 100644 --- a/.tasks/STATUS.md +++ b/.tasks/STATUS.md @@ -792,3 +792,36 @@ Approach ратифицирован человеком (вариант A): ко --- + +## ⚪ [deploy-pilorama-web-from-monorepo] — Раскатать на прод текущий `apps/web` из монорепы `victor/pilorama98.ru` — содержит SEO on-page фиксы (тех-аудит 2026-06-18): `buildProductSeo` (172 товарных title+meta, commit `03c250b`) + `seoOverrides` (16 category/service title + 8 meta, commit `b73c7c8`). На проде их пока НЕТ. + +**Ключевое — перенацелить источник сборки.** Пайплайн исторически собирал из `victor/pilonuxt` (см. web-вики `apps/web/.wiki/concepts/docker-deploy.md`). После консолидации 2026-06-18 код в `victor/pilorama98.ru/apps/web/` (Dockerfile приехал с subtree, там же). Сборку надо перенаправить: clone монорепы, build-контекст = `apps/web/`. + +## Acceptance criteria +1. Build из `victor/pilorama98.ru`, контекст `apps/web/` (двухстадийный Nitro node-server; VERDACCIO_TOKEN как docker build-secret — живой JWT len~300, npmAlwaysAuth:true; порядок COPY scripts/ + src/generated/ до install — всё в docker-deploy + verdaccio-token-lifecycle). +2. Деплой образа на VDS (Portainer стек за Traefik) — обычный re-deploy. +3. **Smoke на проде (verify, не «собралось=работает»):** товарная `…/shop/products/` → `` ≤60 вида «{товар} — купить в СПб» + meta description уникальная с «доставка по СПб и ЛО»; категория `…/catalog/planken` → короткий title «Планкен прямой и скошенный — купить в СПб»; `…/shipping` и блог-пост → непустая meta. +4. Зафиксировать в web-вики (docker-deploy.md / log), что build-источник теперь монореп `apps/web`. + +## Sequencing (важно) +Перенацелить пайплайн на монореп **ДО** архива `victor/pilonuxt` (таска `archive-pilorama-source-repos`). Иначе после архива деплой со старого репо не подхватит SEO-фиксы — их в pilonuxt нет. Архив pilonuxt — только после зелёного деплоя с монорепы. + +## Обязательные скилы — вызвать до начала +- invoke `using-tasks` — статус задачи +- invoke `project-discipline` — коммиты/пуши +- invoke `verify` — РЕАЛЬНО открыть прод-URL и глазами увидеть title/meta, не доверять «собралось» +- invoke `using-projects-meta` — отчёт обратно + +**TDD:** нет — deploy/ops-задача (verification = smoke на проде). +**Разрешения:** интерны: нет | автопуш: да +**weight:** needs-human +**notify:** pilorama98.ru + +**Status:** ready +**Where I stopped:** (not started) — делегировано из pilorama98.ru 2026-06-18; SEO-фиксы закоммичены в монореп, ждут раскатки на прод +**Next action:** Перенацелить deploy-пайплайн на монореп `victor/pilorama98.ru` (build-контекст `apps/web/`, Dockerfile там же), пересобрать образ (VERDACCIO_TOKEN build-secret, живой JWT, npmAlwaysAuth:true), задеплоить на VDS, smoke на проде (title ≤60 + уникальная meta на товарных/категориях). +**Branch:** n/a +**Notify:** victor/pilorama98.ru +<!-- created-by: OpeItcLoc03@DESKTOP-NSEF0UK / from: victor/pilorama98.ru / 2026-06-18T17:44:33.214Z --> + +---