diff --git a/.tasks/NEXT_SESSION.md b/.tasks/NEXT_SESSION.md index 88311d9..07ee23e 100644 --- a/.tasks/NEXT_SESSION.md +++ b/.tasks/NEXT_SESSION.md @@ -37,7 +37,7 @@ session_id: 2026-05-26-bookva-tenant-deep-debug | Трек | Готовность | Entry-point | |---|---|---| -| **`ops-mcp-multi-tenant-stack-activate`** ⚪ NEW micro-task — image `books-ops-mcp:master` уже rebuilt (master-1da3093) с multi-tenant code + VDS host config `/opt/books/books-ops-mcp/config/default.json` уже на новой schema. **TODO:** PUT Portainer stack 26 с pullImage:true + добавить `BOOKVA_MARIADB_PASSWORD` env (same value as `MARIADB_PASSWORD` — bookva-db = cp -a of books-db, ops_ro password identical). Compose `.admin/host-stacks/books-vds/ops-mcp.compose.yml` уже declared в этом session'е. | TBD `.tasks/ops-mcp-multi-tenant-stack-activate.md` (или inline в session) | +| ~~`ops-mcp-multi-tenant-stack-activate`~~ ✅ **DONE same session** — stack 26 PUT с pullImage:true + `BOOKVA_MARIADB_PASSWORD` env. Container `books-ops-mcp@master-f5f295b` running. Smoke: `ops.mariadb.query tenant=slovo` → АФО2/Главная26/НК11 (slovo data); `tenant=bookva` → Главная26/Ира/НК11 (bookva data); `ops.mongo.count tenant=bookva collection=agendaJobs` → 2818. | n/a | | `books-api-shutdown` (ранее заведённая micro-task) | 24-48h soak with bookva LIVE — нужно проверить если still applicable (books-api всё ещё нужен для slovo на bookva.kzntsv.site fallback пути?). | TBD | | `bookva-ozon-mcp-image-build` | image отсутствует в registry, bookva-ozon-mcp stack не создан. Если service не используется — skip навсегда. | TBD | | `bookva-mongo-cleanup` ⚪ (user-deferred) | 2817 agendaJobs в bookva-mongo from cp-a — user сказал «8 не трогай не стирай». Когда будет готов rotate — отдельная таска. | TBD | diff --git a/.tasks/STATUS.md b/.tasks/STATUS.md index 9313a03..f19e1bd 100644 --- a/.tasks/STATUS.md +++ b/.tasks/STATUS.md @@ -1,4 +1,6 @@ # Admin Task Board +_Updated: 2026-05-27 (ночь, после re-open) — ops-mcp multi-tenant **activated** (stack 26 PUT + BOOKVA_MARIADB_PASSWORD env). Smoke verified: slovo/bookva DB queries возвращают tenant-specific data (АФО2 vs Ира warehouses), bookva agendaJobs count=2818. Один host-level books-ops-mcp видит обе tenant DBs._ + _Updated: 2026-05-27 (ночь) — bookva-tenant deep-debug session. 6 багов одной природы (incomplete cutover-prep): (1) bookva-web без config volume → slovo DB leak; (2) bookva-{api,scheduler,task-runner} mount path /app→/usr/src/app; (3) NITRO/NUXT env не reference'или в compose; (4) bookva-scheduler без RECONCILER_ENABLED → dry-run handlers; (5) bookva-scheduler без healthcheck → CI timeout; (6) deploy.yml svc=job-scheduler vs secret=SCHEDULER mismatch. + composite agendaJobId display fix + books-web config mount (slovo also missed) + jobs.post.js agenda.db.collection→MongoClient. Ingested wiki concept tenant-overlay-config-volume-mount-path-pitfall (shared). ops-mcp multi-tenant код в image готов но stack 26 ещё не пере-PUT'нут (next session)._ _Updated: 2026-05-26 (поздний вечер) — `books-ops-mcp-host-promote` 🟢 **closed** в ту же сессию следом за заведением. Stack 26 (books-ops-mcp) in-place PUT в host-level compose без container churn. Stack 43 (bookva-ops-mcp) deleted. 2 Gitea secrets revoked. `victor/books ae3ab14` + `victor/bookva-overlay 50f5bbb` + `.admin` host-stacks/books-vds/ops-mcp.compose.yml. ops-mcp теперь management-plane (manual Portainer)._