Сессия 2026-07-13-tandemmebel-8df10ee-deploy завершена. Deploy на прод GREEN,
задача закрыта (fe8e5882). NEXT_SESSION.md дополнен этой сессией поверх прежних
pending-треков (vehicles-loader 0.4.1 verify ждёт 07-14 06:21 MSK, books-vds
консолидация, ntfy pin). Loose end: Portainer stack 20 устаревшие STAGING-комменты
(косметика, rule line уже LIVE).
Co-Authored-By: Claude <noreply@anthropic.com>
73 lines
7.1 KiB
Markdown
73 lines
7.1 KiB
Markdown
---
|
||
_last_updated_: 2026-07-13T19:50:00Z
|
||
session_id: 2026-07-13-tandemmebel-8df10ee-deploy
|
||
prev_session_id: 2026-07-13-stostayer-loader-deploy
|
||
---
|
||
|
||
# Next session handoff
|
||
|
||
## Эта сессия — tandemmebel 8df10ee deploy (DONE, прод живой)
|
||
|
||
🟢 **[tandemmebel-deploy-drop-fb-tw-gplus-buttons] ЗАКРЫТА.** In-place template bump
|
||
`0cd9351 → 8df10ee` на проде (стек 20), убраны FB/Twitter/Google+ share-кнопки
|
||
(экстремистистская символика РФ), оставлены ВК+Одноклассники. Template-only
|
||
(`apps/web/views/social_buttons.liquid`, 1 file 12 delet), snolla 0.42.1 НЕ менялся.
|
||
|
||
- **Верификация поймала расхождение:** tandemmebel-записка утверждала live=`ed96b18`/0.42.0,
|
||
фактически `0cd9351`/0.42.1. gitea `compare/0cd9351...8df10ee`=`total_commits:1` → фикс на
|
||
правильной 0.42.1 базе, yarn.lock идентичен → регрессии sitemap нет.
|
||
- Build на VDS (чистый gitea-архив 8df10ee, build-arg VERDACCIO_TOKEN=books-ci JWT), digest
|
||
`sha256:30a7e5ab82f2bf371042f1b5fa0cd7ac5ceda71379d1da59e148dee8166bd560`.
|
||
- Completeness-gate: sitemap NEW==PROD **184=184 identical**, 0 регрессий. Live-smoke 4
|
||
share-block страницы → vk+ok / fb-tw-gp=0. TLS-серт не дёрнут.
|
||
- Swap через Portainer JWT (API-key `ptr_*` даёт 401 → workaround JWT), env 8/8 preserve,
|
||
`prune:false, pullImage:true`. Tandemmebel-сессия подтвердила, discrepancy-урок усвоен.
|
||
- **Records:** STATUS.md _Updated 2026-07-13; runbook секция In-place bump 8df10ee
|
||
(`.wiki/concepts/tandemmebel-vds-deploy-runbook.md`); compose source-of-truth
|
||
`host-stacks/vds-kzntsv/tandemmebel.compose.yml` = 8df10ee. Коммиты `632c843f` (records)
|
||
+ `fe8e5882` (tasks_close).
|
||
- **Откат:** PUT стека 20 → `0cd9351` (0.42.1, {% order %} fix) / `ed96b18` (0.42.0, в registry,
|
||
стёрт с VDS при disk-cleanup 2026-07-13 — `pullImage:true` дотянет) / `b02ca18`; ИЛИ revert
|
||
DNS→80.64.31.36 (RUVDS IIS жив).
|
||
|
||
### Loose end (low priority, НЕ блокер)
|
||
- **Portainer stack 20 file — устаревшие STAGING-комменты** (строки 16-17 «Домен: STAGING»,
|
||
53 «STAGING-RULE. Cutover: после flip DNS сменить на Host(...)»). Сама `traefik...rule`
|
||
(строка 55) уже LIVE, совпадает с label'ом контейнера — функционально нейтрально. При
|
||
деплое 8df10ee обновлён только image-line коммент. При следующем full-sync выровнять
|
||
Portainer file под git source-of-truth (косметика).
|
||
|
||
## Recent commits
|
||
- fe8e5882 meta(tasks): close [tandemmebel-deploy-drop-fb-tw-gplus-buttons] in OpeItcLoc03/admin
|
||
- 632c843f deploy(tandemmebel): 8df10ee LIVE — drop FB/Twitter/Google+ share buttons
|
||
- 94e5d77c meta(tasks): create [tandemmebel-deploy-drop-fb-tw-gplus-buttons] in OpeItcLoc03/admin
|
||
- 7e02d611 docs(wiki): vds-kzntsv disk cleanup 94%→74% + container-log rotation guard
|
||
- 8230f891 / 2e180029 meta(tasks): vehicles-loader-redeploy-per-group-rate-diff (create + update)
|
||
- 135da254 chore: gitignore .zcode/
|
||
|
||
## Open треки
|
||
|
||
| Трек | Готовность | Entry-point |
|
||
|---|---|---|
|
||
| vehicles-loader 0.4.1 runtime verify | 🔴 active — deployed, verify pending | После **07-14 06:21 MSK**: SSH `new.stostayer.ru:20435` (victor, креды `pass stostayer/client`), проверить новый `importRun` `status=ok` + `counts.serviceGenerationRate={replaced:<сотни>, skipped:<~41k>}`, `serviceModificationRate={replaced:<сотни>, skipped:<~5k>}`, `duration < ~93 мин`. Если `replaced` ~44k/6.7k — образ из старого кода (но code-verify уже GREEN: rateDiff.js/replaceGroup.js в образе есть). Откат: `docker tag docker.stostayer.ru/vehicles-loader:0.4.0 vehicles-loader:latest`. User сказал «завтра посмотрим вместе». |
|
||
| books-vds → vds-kzntsv консолидация | оценено, НЕ хватает ресурсов | RAM: .94 free 1.7 GiB (swap=0) vs books 2–3+ GiB (на .133 уходит 3.3 GiB в swap). Диск: .94 было 11 GiB free (94%), после чистки 39 GiB; books тащит ~15–20 GiB. CPU хватает (6 ядер idle). Решение за user. |
|
||
| ntfy push.kzntsv.site cert-pinning | починено на телефоне (pin убран) | Повтор при каждом LE-renewal ~90д, если pin снова включат. Сервер НЕ трогать. |
|
||
|
||
## Спроси user'а
|
||
|
||
- **books-vds консолидация**: свежий Ubuntu-VDS под books, апгрейд тарифа .94 (Rusonyx: +RAM/+disk), или оставить на EOL CentOS 7 (.133)? Оценка этой сессии — на .94 не лезет (RAM+диск).
|
||
- **Durable build-fix в stostayer.new** (cross-project): `packages/vehicles-loader/Dockerfile` — добавить `ENV VERDACCIO_TOKEN=unused` в deps-стейдж (сеть off → токен не нужен) + закоммитить root `.dockerignore`. Сейчас build ломается на unresolved `${VERDACCIO_TOKEN}` (committed в `393b7d3` после Dockerfile) и тащит жирный контекст (node_modules/.worktrees). Делаем коммит в `victor/stostayer.new`?
|
||
|
||
## Не делать (preemptive guards)
|
||
|
||
- **НЕ retry-push** в `docker.stostayer.ru` — один push, сбой → стоп + к человеку. Инцидент 2026-06-17: retry-шторм забанил VPN-IP, весь дом→хост :443 лёг.
|
||
- **НЕ деплоить vehicles-loader** из кода без rateDiff (`85ca936`). Перед deploy — verify что в образе есть `src/sync/rateDiff.js` (rateSetsEqual) + `src/sync/replaceGroup.js` (replaceRatesForGroups).
|
||
- **НЕ чинить ntfy-пин на сервере** — это client-side (телефон). Сервер: cert валиден, ntfy healthy, `/healthz` 200.
|
||
- На **vds-kzntsv НЕ netplan** (anti-pattern, outage 2026-05-28).
|
||
- **НЕ сжимать** books-стек на .94 — RAM/disk не хватает (оценено этой сессией).
|
||
- **pull перед работой** — admin чист (local==origin `7e02d611`); stostayer.new на `b86ed40`. Не забывать pull (user поправлял этой сессией).
|
||
|
||
## Memory updates за сессию
|
||
|
||
- **new**: `ntfy-android-cert-pinning-breaks-on-le-renewal.md` — LE-renewal (~90д) ломает pinned ntfy-клиент («fingerprint mismatch / connection lost»); фикс на телефоне (re-pin или отключить pinning → system CA), сервер не трогать.
|
||
- **wiki**: `entities/vds-kzntsv.md` — Known issues += 2026-07-13 disk cleanup (контейнерные логи 19 GiB, owncloud 13 GiB) + logrotate guard (`/etc/logrotate.d/docker-containers`, copytruncate 200M hourly) + hourly cron; Open issues — GC-cron срочность снижена (94%→74%), container-log rotation DONE. |