From 3ad5ad446a41ce45dcb347ff4373ef3b162391dc Mon Sep 17 00:00:00 2001 From: OpeItcLoc03 Date: Fri, 19 Jun 2026 06:43:46 +0000 Subject: [PATCH] meta(tasks): create [deploy-gsc-product-name-fix] in OpeItcLoc03/admin --- .tasks/STATUS.md | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/.tasks/STATUS.md b/.tasks/STATUS.md index 74b4d61..ce46a8e 100644 --- a/.tasks/STATUS.md +++ b/.tasks/STATUS.md @@ -837,3 +837,38 @@ Approach ратифицирован человеком (вариант A): ко --- + +## ⚪ [deploy-gsc-product-name-fix] — Собрать и переразвернуть прод-образ pilonuxt из master (commit `c4e34d4`) — критический GSC-фикс: микроразметка Product `name` (товары выпадали из выдачи Google «Описания товара → отсутствует поле name»). + +## Что деплоим +- Источник: `victor/pilorama98.ru` master @ `c4e34d4` (уже запушен в git.kzntsv.site). +- Фикс затрагивает только `apps/web/app/pages/shop/products/[slug].vue` (SSR-микроданные Product). + +## Шаги (по concept .wiki/concepts/docker-deploy.md) +1. Build из корня монорепы: контекст = корень, `-f apps/web/Dockerfile`, `yarn workspace nuxt-app build`. VERDACCIO_TOKEN — живой JWT через build-secret. `src/generated/` gitignored — собирать из populated dir (или `yarn schema-gen` заранее), иначе COPY упадёт. Порядок COPY: scripts/ до install. sharp @img: runner копирует полный `@img` из builder. +2. ⚠️ **ПУЛЛ ИЗ РЕЕСТРА.** Push образа в `registry.kzntsv.site/pilonuxt:c4e34d4`, затем стек 16 в Portainer **должен подтянуть свежий образ из registry** (re-pull, не крутить кэш старого тега). Без явного pull задеплоится старый код. +3. Перекат Portainer-стека 16 за Traefik. + +## Acceptance +- Rich Results Test / view-source на товарной странице (`/shop/products/*`) в контейнере/на проде показывает непустой `` внутри `schema.org/Product`. +- Verify ТОЛЬКО в контейнере/на проде (локальный node .output на Windows маскирует баг фоллбэком в корневой node_modules). +- После деплоя отписать в inbox `victor/pilorama98.ru` — владелец нажмёт «Проверить устранение» в GSC. + +## Обязательные скилы — вызвать до начала +- invoke `using-tasks` — управление статусом задачи +- invoke `project-discipline` — дисциплина коммитов/деплоя +- свериться с `.wiki/concepts/docker-deploy.md` (в repo pilorama98.ru, apps/web) — runbook деплоя: грабли sharp @img, порядок COPY, verdaccio-token + +**TDD:** н/п — ops-деплой; код-фикс уже с тестами в исходном проекте (46 зелёных). +**Разрешения:** интерны: н/п | автопуш: н/п (ops, в наш repo уже запушено). +**weight:** needs-human (deploy-инфра: docker/registry/Portainer/Traefik). +**notify:** victor/pilorama98.ru + +**Status:** ready +**Where I stopped:** (not started) +**Next action:** Build образа из master c4e34d4 → push в registry.kzntsv.site/pilonuxt:c4e34d4 → стек 16 в Portainer подтягивает СВЕЖИЙ образ из registry (не кэш) → перекат за Traefik +**Branch:** n/a +**Notify:** victor/pilorama98.ru + + +---