meta(handoff): labtools cylindrical CLOSED (catalog provider core 0.26.6 live GREEN); kreknin tomorrow; MinIO split next session
Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -1,46 +1,44 @@
|
||||
---
|
||||
_last_updated_: 2026-08-03T10:05:00Z
|
||||
session_id: 2026-08-03-labtools-cylindrical-rootcause-handoff
|
||||
prev_session_id: 2026-08-02-kreknin-rescue-sdd-restore
|
||||
_last_updated_: 2026-08-03T13:08:14Z
|
||||
session_id: 2026-08-03-labtools-catalog-provider-live
|
||||
prev_session_id: 2026-08-03-labtools-cylindrical-rootcause-handoff
|
||||
---
|
||||
|
||||
# Next session handoff
|
||||
|
||||
## Эта сессия — labtools.ru cylindrical: root-cause найден в коде snolla, таска поставлена. Крекнин-ремонт не тронут (ждёт координации).
|
||||
## Эта сессия — labtools cylindrical ЗАКРЫТ (catalog provider core 0.26.6, LIVE GREEN). Крекнин — завтра (Алексей готов). MinIO split Track A — следующая сессия (директива user'а).
|
||||
|
||||
### 1. labtools.ru cylindrical — 🔵 → корень найден, отдано snolla. ✅ сделано
|
||||
Симптом (live): `/products/press-forms/cylindrical` — 8 карточек `href=""`/`src=""`. `cylindrical.liquid:30-31` единственный из 9 читает Linked-item accessor `product_link.product.item` (остальные 8 — прямой `product`, работают). НЕ v3-регрессия (v2-образ 0.42.1 тоже пустой).
|
||||
### 1. labtools.ru cylindrical — 🟢 CLOSED, LIVE GREEN
|
||||
Отмашка snolla (core 0.26.5, store-only) НЕ чинила: labtools — **catalog-модуль**, store нет, provider = `LinkedCatalogProductsProvider`. Реализован полный диспетчер `packages/core/lib/viewModels/linkedItemResolver.js` (порт legacy `ILinkedEntitiesProvider`): dispatch по provider-строке → catalog (`CatalogsService.findProductById`) / blog (`findPostByGlobalId`) / page (`getPageById`) / store (fallback). **core 0.26.6** published (verdaccio), сьют **263/263**, commit `5f0f996`. labtools `yarn.lock` → 0.26.6 (`d263e1c`), стек 17 swap (env 8/8), **LIVE GREEN**: cylindrical 0 empty href/src, 8 карточек гидратированы (round-xrf/vacuum-ir/…). Таска `content-page-linked-products-hydration` закрыта; snolla подтвердил + вики-ингест (`related-products-linked-items.md`). **Rollback = `0dc0b4e`.**
|
||||
|
||||
**Корень в коде snolla:** `packages/core/lib/viewModels/contentPages.js` `getPageViewModel` зовёт `fillViewModel(...)` **БЕЗ `fillOpts`** → `viewModels/index.js:696` `resolveLinkedItem = async () => null` → у `linkedItemEditorTemplate`-полей `buildLinkedItemField` даёт `{id,title,link,item}` с `item:null` → `.product.item` пуст. Образец фикса: ecommerce.js:107-117 + blogs.js:142 (это фикс `blog-related-hydration` core 0.13.6).
|
||||
### 2. Крекнин-ремонт — ЗАВТРА (координация с Алексеем)
|
||||
План готов (`.tasks/kreknin-repair-md3-rebuild.md` + `.wiki/entities/kreknin-synology.md`): power-off → перетык SATA (sdb питание+data) → power-on → Repair md3 → btrfs scrub → VMM. **Бэкапы выключены с 31.07** (vds-backup 05:00 + books-vds-backup 06:00, cron закомментированы) — вернуть после ремонта, это критичный хвост. Rescue-диск `/mnt/rescue` (1.1TB) — НЕ отключать до конца ремонта. Решение: оставить как доп. копию или отключить — после ремонта.
|
||||
|
||||
**Сделано:**
|
||||
- Таска `victor/snolla/content-page-linked-products-hydration` (ready, needs-claude) — закоммичена в snolla `.tasks/STATUS.md`
|
||||
- Инбокс-письмо: `snolla/.claude-inbox/2026-08-03T09-53-51Z-admin.md`
|
||||
- Локальная доска `.admin/.tasks/STATUS.md` — 🔵 запись связана с таской snolla
|
||||
### 3. MinIO split Track A — СЛЕДУЮЩАЯ СЕССИЯ (user directive)
|
||||
books-vds 2020 → vds 2025. Сделано: bucket `variant-cache` (2026-07-31). Остальное TODO. Runbook: `.wiki/concepts/minio-split-cutover-runbook.md`.
|
||||
|
||||
**Хвост:** ждать релиз core → передеплой стека 17 (labtools, Portainer) → смоук cylindrical (8 непустых href/src). Тему НЕ править (parity движка), прод-стек 17 healthy.
|
||||
|
||||
### 2. Крекнин-ремонт — НЕ в этой сессии, открыто (⚪, из прошлого хэндоффа). Подробности: `.tasks/kreknin-repair-md3-rebuild.md` + `.wiki/entities/kreknin-synology.md`
|
||||
- **Ремонт:** power-off (graceful) → перетык SATA (sda/sdc свежие кабели, sdb питание+data) → power-on → если sdb ожил → DSM Storage Manager Repair md3 → ребилд (мониторить `/proc/mdstat`, не трогать кабели) / sdb дохлый → 4TB замена → `btrfs scrub /volume1` → проверить VMM.
|
||||
- **Вернуть бэкапы** (шаг 8): vds-kzntsv `/etc/cron.d/vds-backup` 05:00 + books-vds `/etc/cron.d/books-vds-backup` 06:00 — раскомментировать строки `#DISABLED-kreknin-sick`, снять `.bak.20260731`, прогнать ручной rsync green. **Бэкапы выключены с 31.07 — это критичный хвост.**
|
||||
- Rescue-диск `/mnt/rescue` (1.1TB, полная копия) — НЕ отключать до конца ремонта.
|
||||
### 4. Кэш тасков стейл — refresh ОТЛОЖЕН
|
||||
projects-meta `tasks.json` synced 2026-07-22 (12 дней, `stale: true`). `meta_restart_poller force=false` отказал: 4 активных агента (victor/tandemmebel.ru, victor/O_C-Phazerville, victor/snolla, victor/pilorama98.ru). **force=true убьёт их работу — НЕ делать.** Когда агенты освободятся → graceful restart → кэш обновится.
|
||||
|
||||
### Спроси user'а
|
||||
- **Когда power-off для перетыка кабелей kreknin?** (координация с Алексеем). План готов, данные спасены.
|
||||
- Rescue-диск `/mnt/rescue` после ремонта — оставить как доп. копию / отключить?
|
||||
- Крекнин: подтвердить время power-off с Алексеем (завтра). Rescue-диск после ремонта — оставить/отключить?
|
||||
|
||||
### Открытые треки
|
||||
- `labtools.ru cylindrical` → таска `victor/snolla/content-page-linked-products-hydration` (ready). Ждём релиза core.
|
||||
- `on-snolla-vds-migration` — помечен ⚪ ready на доске, но on.snolla LIVE с 07-20 → **обновить на closed** (не забыть).
|
||||
- MinIO split Track A (books-vds 2020→2025) — variant-cache bucket создан, остальное TODO.
|
||||
- Кросс-проектный кэш тасков стейл (последний sync 2026-07-22) — при обзоре «что ещё» освежить.
|
||||
| Трек | Готовность | Entry-point |
|
||||
|---|---|---|
|
||||
| MinIO split Track A | открыт | `minio-split-cutover-runbook` |
|
||||
| kreknin-repair-md3-rebuild | завтра | `.tasks/kreknin-repair-md3-rebuild.md` |
|
||||
| Кэш тасков refresh | отложен | `meta_restart_poller` после освобождения агентов |
|
||||
|
||||
### Не делать (preemptive guards)
|
||||
- **Ребутить kreknin пока sda-кабель не зафикшен** — cold-start риск, что md3 умрёт. Кабели зафиксировать ДО Repair md3.
|
||||
- **НЕ трогать/отключать rescue-диск пока ремонт не закончен.**
|
||||
- **НЕ забыть вернуть бэкапы** (vds-backup + books-vds-backup раскомментировать).
|
||||
- **НЕ править тему labtools** для cylindrical — parity движка, фикс на стороне snolla.
|
||||
- НЕ PS для Portainer (кириллица), креды → `pass`. kreknin: `pass kreknin/full-env`, ключ `id_ed25519_kreknin`.
|
||||
- **НЕ force-restart поллера** пока активные агенты — убивает чужую работу.
|
||||
- **НЕ лезть в snolla-код самому** — через snolla-сессию (таска/инбокс), .admin только деплоит (память admin-hands-snolla-repo-work-to-snolla-session).
|
||||
- Ребутить kreknin пока sda-кабель не зафикшен; не трогать rescue-диск; не забыть вернуть бэкапы.
|
||||
- НЕ PS для Portainer (кириллица); креды → `pass`.
|
||||
|
||||
### Коммиты сессии (.admin)
|
||||
- (не коммичено: `.tasks/STATUS.md` изменён — связать 🔵 cylindrical с таской snolla. Закоммитить с хэндоффом.)
|
||||
- `61f6afd2` compose → d263e1c; `c0a8d12b` cylindrical CLOSED; (с этим хэндоффом: on-snolla-vds-migration CLOSED + NEXT_SESSION).
|
||||
|
||||
### Memory updates
|
||||
- `snolla-two-product-modules-store-vs-catalog` — catalog-сайты без store; linked-item dispatch по provider-строке.
|
||||
- `admin-hands-snolla-repo-work-to-snolla-session` — snolla-код не трогать, через snolla-сессию.
|
||||
|
||||
Reference in New Issue
Block a user