Сессия 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>
7.1 KiB
7.1 KiB
_last_updated_, session_id, prev_session_id
| _last_updated_ | session_id | prev_session_id |
|---|---|---|
| 2026-07-13T19:50:00Z | 2026-07-13-tandemmebel-8df10ee-deploy | 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. giteacompare/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-truthhost-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
fe8e5882meta(tasks): close [tandemmebel-deploy-drop-fb-tw-gplus-buttons] in OpeItcLoc03/admin632c843fdeploy(tandemmebel): 8df10ee LIVE — drop FB/Twitter/Google+ share buttons94e5d77cmeta(tasks): create [tandemmebel-deploy-drop-fb-tw-gplus-buttons] in OpeItcLoc03/admin7e02d611docs(wiki): vds-kzntsv disk cleanup 94%→74% + container-log rotation guard8230f891/2e180029meta(tasks): vehicles-loader-redeploy-per-group-rate-diff (create + update)135da254chore: 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,
/healthz200. - На 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.