Files
admin/.tasks/NEXT_SESSION.md
vitya fe41ee4422 backup(books-vds): daily 06:00 MSK pipeline to kreknin live 🟢
- scripts/books-vds-backup-daily-kreknin/ — run.sh + .env.example + README
- ES path.repo bootstrap (one-time stack edit, snapshot repo 'kreknin' registered)
- curl smtps://yandex:465 email (CRLF + Date headers, no msmtp dep on CentOS 7)
- StrictHostKeyChecking=yes + pre-populated known_hosts (CentOS 7 no accept-new)
- cron /etc/cron.d/books-vds-backup live, initial sync 4.87 GB in 13m28s, ntfy push sent
- wiki: entities/books-vds.md + sources/books-vds-backup-daily-kreknin-2026-05-25.md created
- wiki: concepts/books-ssh-access → vds-kzntsv-ssh-access (was lying about books on vds-kzntsv)
- .tasks/books-vds-backup-daily-kreknin.md closed 🟢 pending phone-side verify

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-25 09:37:16 +03:00

5.1 KiB
Raw Blame History

_last_updated_, session_id
_last_updated_ session_id
2026-05-25T09:35:00+03:00 2026-05-25-books-vds-backup-standup

Next session handoff

Recent commits

  • tasks(books-vds-backup-daily-kreknin): close 🟢 — daily 06:00 MSK pipeline live, 4.87GB initial sync (этот раунд, planned)
  • wiki(books-vds): create entity + source standup + rename misnamed concept books-ssh-access → vds-kzntsv-ssh-access (этот раунд, planned)
  • scripts(books-vds-backup-daily-kreknin): run.sh + .env.example + README (этот раунд, planned)
  • tasks: add stateful-split-volume-copy (moved from victor/books) (1eefb4d4)
  • tasks(unify-backup-notifications): close 🟢 (838f51da)

Open треки

Трек Готовность Entry-point
books-vds-backup-daily-kreknin 🟢 closed — phone-side ntfy + email verify pending user .tasks/books-vds-backup-daily-kreknin.md
stateful-split-volume-copy not started; playbook references books-db на books VDS (89.253.255.133), не на vds-kzntsv .tasks/stateful-split-volume-copy.md
iis-migration-to-ruvds 🟡 soak (kupimknigi + emspb DNS flipped 2026-05-24, 22 pending) .tasks/iis-migration-to-ruvds.md
infra-inventory ready, не начат — books VDS должен попасть в admin-detailed runbook .tasks/infra-inventory.md
books-bookva-user-whitelist-gathering ready, long-lead gathering .tasks/books-bookva-user-whitelist-gathering.md
books-vds-bookva-bootstrap 🔵 blocked on tenant-split Phase 4 .tasks/books-vds-bookva-bootstrap.md
books-dns-cutover-bookva 🔵 blocked on books-vds-bookva-bootstrap .tasks/books-dns-cutover-bookva.md

Спроси user'а

  • ntfy push BOOKS-VDS backup OK 2026-05-25 (tag green_circle, channel vds-backup) — пришёл на phone? Если нет — diagnose curl ntfy creds или phone subscription к каналу.
  • Email: пришёл ли [BOOKS-VDS] backup OK 2026-05-25 + standalone [BOOKS-VDS] SMTP fix verify (тестовый, отправлен после fix'а)? Inbox <OPS_NOTIFY_EMAIL> от noreply@snolla.com.
  • Migrate SSH-compose стеки под Portainer (user-promised after backup live): ES, mongo, minio, books-db, traefik, proxy-chain currently SSH-compose at /usr/docker/<svc>/. Делаем? Если да — это отдельная таска (books-vds-stacks-to-portainer).
  • stateful-split-volume-copy — playbook писан под прошлое assumption «books на vds-kzntsv». Real books VDS = 89.253.255.133, его books-db (не mariadb) — playbook fits OK, но container names в task-файле должны быть verify'нуты. Continue эту таску в next session?

Не делать (preemptive guards)

  • Не push без grant'а (project-discipline Rule 4). Session начинает ask-mode.
  • Не trust wiki blindlybooks-ssh-access.md (теперь vds-kzntsv-ssh-access.md) до 2026-05-25 врала что books на vds-kzntsv. Faktcheck через vds-ops + SSH probe + IP до построения предположений. Это уже applied в этом раунде; не забыть в будущих сессиях.
  • Не trigger полный backup для smoke на books VDS — 13m+ wall-clock, 4.87 GB initial. Smoke = только notify-channel тест через standalone curl call.
  • Не touch ES прод стек без user-approve — ES сейчас не используется (per user), но статус может measure. Если включат — recreate downtime неacceptable без window.
  • Не editit /usr/docker/<svc>/docker-compose.yml напрямую для production stacks — preferred path: migrate под Portainer, потом edit там. Текущий backup-script патчил ES — это был bootstrap, не daily ops.

Memory updates за сессию

  • Учить: books VDS ≠ vds-kzntsv. Wiki была ошибочно misnamed. Real books VDS = 89.253.255.133 (host4g.ru, CentOS 7). Documented в ../wiki/entities/books-vds.
  • Учить: pass entries one-file-per-host pattern — consolidate сервис-specific creds в <host>/full-env с section'ами (matches vds-kzntsv/full-env style). Не плодить <host>-<service>/full-env.
  • Учить: Yandex SMTP — port 465 = smtps:// (implicit TLS), port 587 = smtp:// + --ssl-reqd (STARTTLS). Не путать; mismatch = 30-sec curl timeout.
  • Учить: CentOS 7 OpenSSH 7.4 не имеет accept-new (added 7.6). Bootstrap step: ssh-keyscan host-key в known_hosts, потом StrictHostKeyChecking=yes.
  • Учить: docker-compose 1.29 + Docker 26 = KeyError: 'ContainerConfig' при recreate. Workaround: docker rm -f <renamed-stuck> + docker-compose up -d. Bigger fix: upgrade docker-compose to v2 plugin.
  • Reference: Portainer на books VDS = https://portainer.kzntsv.site (НЕ portainer.vds.kzntsv.site — тот для infra). PAT saved в pass show books-vds/full-env BOOKS_PORTAINER_API_KEY.