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
This commit is contained in:
2026-08-07 13:03:23 +03:00
parent 615d78932b
commit 03607d0d6e
2 changed files with 26 additions and 41 deletions

View File

@@ -1,62 +1,47 @@
---
_last_updated_: 2026-08-05T00:40:00Z
session_id: 2026-08-05-admin-namespace-migration-embed
prev_session_id: 2026-08-04-admin-s2-review
_last_updated_: 2026-08-07T13:00:00Z
session_id: 2026-08-07-admin-flat-fields-wave
prev_session_id: 2026-08-05-admin-namespace-migration-embed
---
# Next session handoff
## Главное за сессию
Эпик surface-normalization ЗАКРЫТ. Namespace-миграция ВЫПОЛНЕНА. Admin-api embed в pilonuxt ЗАВЕРШЁН.
Эпик **flat-fields** ЗАКРЫТ. `fields[]` убран — поля в корне объекта. Loader мигрирован.
- **S2+S3 review:** APPROVE (клиент 34/34, сервер 424/424, schema-gen 19/19)
- **Namespace-миграция:** `@snollajs/*``@snolla/*`, 14+ пакетов на Verdaccio. Все 8 сайтов бампнуты (7 руками + pilorama98). Stostayer заморожен.
- **Admin-api embed:** pilonuxt `e95d2d9`, `/admin/api/health` 200, стек 25 retire.
- **Loader:** адаптирован под camelCase-wire 0.2.0, dry-run 224/0/224. Ждёт vitya на прод-импорт.
## Коммиты сессии (в других репо)
| Репо | SHA | Что |
|---|---|---|
| labtools.ru | `cec15a2` | namespace bump |
| emspb.ru | `2ddd44c` | namespace bump |
| labtools.pro | `45006e2` | namespace bump |
| tandemmebel.ru | `423d1b0` | namespace bump |
| kupimknigi.spb.ru | `af00733` | namespace bump |
| on.snolla.com | `d892053` | namespace bump |
| maljarka.tandemmebel.ru | `7a37c29` | namespace bump |
| pilorama98.ru | `e95d2d9` | embed admin-api + namespace bump |
| pilorama98.ru | `325daa9` | prisma postinstall fix |
| pilorama98.ru | `b3e86db` | loader camelCase adaptation |
| snolla | `d9313e3` | S3 F1/F2 fix |
| snolla | `f37d736` | S2 F1-F3 fix |
- **@snolla/snolla@snolla/web** — 7 сайтов пересобраны и передеплоены (вторая волна ренеймов)
- **Content-Type гейтинг** — vendor-Accept (`application/vnd.snolla.admin+json`) только для web-админки. Default = корневые поля. Save: `Content` без vendor → 400.
- **fields[] → корневые поля** — admin-api 0.4.0 (read/write flat), client 0.5.2 (index-signature), schema-gen 0.2.1 (генератор flat). Вся тройка published+pushed.
- **Loader → flat root fields** — pilorama98 `0db46e1` в проде. Тесты 105/105. yml_category_id + short_description для required-полей.
- **Content-валидация** — admin-api 0.5.0 published (snolla), НЕ развёрнута на пилораме.
## Open треки
| Трек | Готовность | Entry-point |
|---|---|---|
| loader прод-импорт | ⚪ ready, ждёт vitya | pilorama98 loader |
| minio-retire старых данных (12G) | окно ~05.08 истекло — уточнить у vitya | из handoff 2026-08-04 |
| kreknin-repair-md3-rebuild | ⚪ ждёт Алексея | `.tasks/kreknin-repair-md3-rebuild.md` |
| P3 imgproxy stack 29 retire / A3 bookva-дубли | опционально | из handoff |
| admin-api 0.5.0 (валидация) → пилорама | published, ждёт волны | бамп в apps/web + деплой |
| yml_category_id — маппинг для YML-фида | эмпирически сверен, нужен production-тест | loader `bin/index.js` + фид |
| Коллизия `description` (контент-поле ↔ колонка) | на snolla/schema-gen | при следующей встрече |
| Loader прод-импорт (живой) | НЕ запускался после 0.4.0 | решение vitya |
## Спросить user'а
## Спроси user'а
- Запускать loader прод-импорт или ждать?
- minio-retire — окно ушло, переносим?
- kreknin — есть ли новости от Алексея?
- Деплоить admin-api 0.5.0 (валидация) на пилораму сейчас или со следующей фичей?
- Запускать живой импорт loader'а через новый flat API?
## Не делать (preemptive guards)
- НЕ деплоить стек 25 — удалён. Admin-api только через pilonuxt `/admin/api`.
- НЕ возвращать admin-api в отдельный контейнер.
- НЕ рассылать директивы другим сессиям без сверки с vitya.
- НЕ ротировать `sk_6a83…`.
- НЕ трогать stostayer (заморожен).
- НЕ слать vendor-Accept из loader'а — это только для web-админки snolla
- НЕ деплоить admin-api 0.5.0 без проверки required-полей (79/229 продуктов были без yml_category_id)
- Portainer PUT: НЕ использовать `Env:[]` — очищает секреты. Всегда fetch + re-supply.
- НЕ ротировать `sk_6a83…`
- НЕ слать директивы другим сессиям без сверки с vitya
## Memory updates за сессию
- `snolla-namespace-wins`новый: `@snolla` выживает, `@snollajs/*``@snolla/*`
- `snolla-namespace-wins`подтверждён: вторая волна ренеймов (@snolla/snolla→web)
- `admin-api-vds-deploy` — обновлён: стек 25 retire, admin-api в pilonuxt
- `no-cross-session-cancels-without-vitya` — подтверждён
- `portainer-env-empty-clears-secrets` — новый: Portainer PUT с Env:[] = потеря всех секретов
- `admin-api-content-gating-vendor-accept` — новый: vendor-Accept = web-admin only, default = flat fields
- `piloruxt-build-needs-generated-dir` — новый: src/generated/ gitignored, нужно scp перед docker build

View File

@@ -26,7 +26,7 @@
services:
pilonuxt:
container_name: pilonuxt
image: registry.kzntsv.site/pilonuxt:2c069de
image: registry.kzntsv.site/pilonuxt:0db46e1
restart: unless-stopped
environment:
NODE_ENV: production