diff --git a/.tasks/NEXT_SESSION.md b/.tasks/NEXT_SESSION.md index 3252956..5939d69 100644 --- a/.tasks/NEXT_SESSION.md +++ b/.tasks/NEXT_SESSION.md @@ -1,43 +1,40 @@ --- -_last_updated_: 2026-08-23T09:00:00Z -session_id: migration-v2-complete-2026-08-23 +_last_updated_: 2026-08-23T09:40:00Z +session_id: books-deploy-done-2026-08-23 --- # Next session handoff -## Текущий статус: миграция .tasks v2 ЗАВЕРШЕНА ПОЛНОСТЬЮ +## Recent commits +- `6bd8781b` docs(handoff): books disable-legacy-task-runs-writes deploy DONE (base 0.11.0, images, VDS cleanup, verified) +- `551fd0c2`+`2b82a83c` meta(handoff): v2 migration fully complete (847 задач, counter=966) — прошлая сессия -Все директивы оператора выполнены. Этап 3 (`tasks-migration-47-projects`, #806) закрыт; follow-up по файлам/блокам — закрыт. +## Open треки +| Трек | Готовность | Entry-point | +|---|---|---| +| **books deploy.yml CORE_SHA gap** (новое) | 🔴 не починено | deploy.yml седит только `__TAG__`, bookva-overlay compose использует `${CORE_SHA}` → bookva sched-deploy падает (PUT 400). Рабочий костыль: CORE_SHA=master в env стека 51 (уже добавлен). Фикс: инъекция CORE_SHA в deploy.yml ИЛИ перевод overlay-compose на `__TAG__`. Решить: админ или books? | +| **sched live-sync не сработал на file-change** (новое) | 🔴 непроверено | После правки прод tasks.json демоны держали таску активной ~5 мин → потребовался `docker restart books-sched bookva-sched`. Либо доки sched неточны, либо sync требует триггера. Проверить против sched docs 03.tasks.md | +| books task #2 (disable-legacy-task-runs-writes) | 🟢 задеплоен+проверен | Закрытие — на books-доске (их задача); отчёт: `books/.agents/inbox/2026-08-23T09-36-00Z-admin.md` | +| meeting-room — merge-conflict (UU) | 🟡 | Разрешить → миграция 2 тасок + 12 файлов (номера 967+) | +| coworker-skill push на github | 🟡 ждёт решения | meta-leak риск; решение за оператором | +| projects-meta-mcp (архив) / yt-tools (untracked) / projects-wiki (дубль) | ✅ скипы | согласованы ранее | +| MCP-кэш (meta_status) | 🟡 stale | synced 2026-08-22; проверить `meta_status` | +| [#803 llm-web-proxy] (доска) | 🔴 active | next action в блоке STATUS.md (executors/translators из omniroute) | -### Итоговое состояние -- **Блоки на досках:** 829 (миграция) + 9 (кандидаты: sched r6 ×5, snolla, penrose, books ×2) + kreknin #830 + 8 (sched: storage-adapter ×2, chore-typecheck, live-sync, lock-heartbeat, run-log-offset, run-metadata-parity, runtime-task-api) = **847 задач**. -- **Файлы:** все в `yyyy-mm-dd-#####-.md` (144: 136 + 8 plan-компаньонов с номером родителя). Скан: 0 не-v2. -- **counter = 966** (agenda, сервер подтверждён). Следующая таска → #967. -- Запушено всё, кроме: **coworker-skill** (github remote — локально), скипы: meeting-room (merge-conflict), projects-meta-mcp (архив), yt-tools (untracked github), projects-wiki (дубль-клон .wiki). -- Скрипты в `.admin/scripts/`: `migrate-tasks-v2.mjs` (осн. миграция), `migrate-tasks-v2-files.mjs` (ренейм), `migrate-tasks-v2-numbers.mjs` (нумерация + восстановление блоков). -- Ключевые номера: kreknin-repair #830, shelf-sale #902, reprice-cli #934, reverse-engineer #936, admin-api-batch-info-wave #940, sched r6 #956-960, sched storage/etc #950-964. +## Спроси user'а +- CORE_SHA-фикс deploy.yml: делаю я (admin) или отдать books (рекомендую books — их workflow)? +- Закрытие books #2 — books-агент закроет сам по моему отчёту; если не закроет за N дней — пингануть. +- Ранее открытые решения (перенесены): судьба coworker-skill push; закрывать ли llm-web-proxy-qwen-web. -### Осталось (для будущих сессий, по убыванию) -1. **meeting-room** — merge-conflict (UU). Разрешить → миграция 2 тасок + 12 файлов отдельно (номера 967+). -2. **coworker-skill** — всё готово локально, решение по push на github (meta-leak риск) за оператором. -3. **projects-meta-mcp** (архив) / **yt-tools** (untracked) / **projects-wiki** (дубль) — согласованные скипы. -4. **MCP-кэш** — stale (synced 2026-08-22), обновится циклом поллера; проверить `meta_status` в следующей сессии. -5. **Решения оператора не закрыты:** судьба coworker-skill push; `llm-web-proxy-qwen-web` закрывать или нет. +## Не делать (preemptive guards) +- Не диспатчить сборки/деплои books без нового письма от books — деплой выполнен и проверен. +- Не включать `SCHED_LEGACY_TASK_RUNS` (дефолт off = in-memory envelope). +- Не перезаписывать прод tasks.json сгенерированным (правки точечные; бэкапы `.bak-*` на books-vds). +- Не трогать runtime-таски в sched-сторе (напр. «ozon stocks syncronization» ~65с) — пре-экзистинг, вне скоупа. +- Не архивировать handoff-файлы (sliding contract, история — git log). -### Инфра-память -- Номер = порядок создания (дата из git log first-add → слаг-история → created-by → mtime). -- Закрытые записи/архив: файлы имеют номера, но блоков нет (номер для однообразия имени). -- `-plan`-компаньоны: номер родительской таски (парно, counter не тратят). -- Блоки-восстановления: append в конец STATUS.md, формат `## [#n slug] — desc` + Status/Created/Where/Next/Branch. - -## 2026-08-23 — books deploy (disable-legacy-task-runs-writes) — DONE - -- Выполнен деплой по письму books (парк снят, юзер дал «го»): база sched-daemon:0.11.0 собрана+запушена, - books-task-runner / books-sched-daemon пересобраны (master-d57a310) и задеплоены на оба тенанта, - system-cleanup-task-runs выпилен из прод tasks.json (slovo + bookva), всё проверено живыми данными - (task_runs не растёт, retention off). Отчёт: books/.agents/inbox/2026-08-23T09-36-00Z-admin.md. -- **Открытые хвосты (по убыванию):** (1) deploy.yml несовместим с bookva ${CORE_SHA} — зашить инъекцию - CORE_SHA в workflow или перевести overlay-compose на __TAG__ (пока живёт ручной env-фикс стека 51); - (2) sched live-sync не зафайрился на file-change (потребовался restart демонов) — проверить доки sched; - (3) первый dispatch task-runner (run 560) отменился до старта без причин. -- Не забудь предыдущие пункты раздела «Осталось» (meeting-room merge-conflict и т.д.). +## Memory updates за сессию +- `sched-daemon:0.11.0` собран и в registry (base, apps/daemon, BuildKit secret, history 0 JWT). +- deploy.yml vs bookva `${CORE_SHA}` — известная несовместимость (см. Open треки). +- sched live-sync не реагирует на file-change tasks.json → рестарт демона перечитывает. +- Паттерн верификации envelope-фикса: task_runs MAX(created_at) должен остановиться на моменте старта нового контейнера (slovo 09:21:08→start 09:21:10; bookva 09:20:01→09:23:11).