--- _last_updated_: 2026-08-18T15:16:00Z session_id: 2026-08-18-pi-sched-fnf-r8-entity --- # Next session handoff ## Recent commits - (нет коммитов в этой сессии — F&F r8 №1 отчёт отправлен письмом, стенд-скрипты в .tmp) ## Open треки | Трек | Готовность | Entry-point | |---|---|---| | sched F&F r8 (schedule-as-entity) | 🟢 **r8 №2 ЗАКРЫТ 15-16Z** — движок на schedule-строках проверен: 75/75 (ceiling, claim-порядок, ретраи на строках, watchdog/recover оба набора локов, scheduleId/data, async-poll). Находок нет, отчёт отправлен в sched-инбокс. Ждём их решения (№3 / закрытие раунда). | `sched/.agents/inbox/.read/2026-08-18T12-55-44Z-sched-fnf-r8-entity-intro.md` (лестница 1–5) | | sched F&F r1–r7 | 🟢 **цикл ЗАКРЫТ** | `sched/.agents/inbox/.read/2026-08-18T09-44-00Z-sched-fnf-r7-closed.md` | | docs-polish раунд (предложение sched) | ⚫ **отклонено юзером** («пока не делаем») | — | | llm-router / routerai | ⚫ **выброшено** — юзер: «забудь, сделано». НЕ трогать | — | | books-sched-integration (Phase 3, сторона sched) | ⚪ их работа; приёмка только по их пингу | — | ## F&F r8 стенд (важно для следующей сессии) - Стенд: `C:\Users\vitya\projects\.admin\.tmp\sched-r8\` — package.json (**core 0.40.1 / daemon 0.2.0 / storage-* 0.3.1** из verdaccio), `legacy/` (старый core 0.35.1 для генерации v0.6-БД), docker-контейнеры `sched-*-test` (mysql :3308, mariadb :3307, pg :5433, mongo :27017; root:test / postgres:test — как в CI sched). - Репро-скрипты: `migration-test.mjs` (sqlite v0.6→v0.7 ✅), `adapter-migration-test.mjs` (**F2**: mysql/pg v5 синтез=1, due стреляет ✅), `priority-order-test.mjs` (**F1**: priority 10 впереди ✅), `tasks-json-test.mjs` (модель ✅, **на Windows: rmSync до DatabaseSync — иначе EBUSY**), `adapters-spotcheck.mjs` (12/12 ✅), `daemon-e2e.mjs` ✅, `mongo-synthesis-test.mjs` (**F2 mongo**: first-open синтез, no-dup, gate; легаси-док в `sched_tasks` с config.data + paused/disabled). - **№2 движок (75/75)**: `engine-runs-test.mjs` (16 — scheduleId/data/trigger/manual/retryRun), `engine-due-claim-test.mjs` (10 — priority-порядок, ceiling с блокирующим раннером, pause, once, catch-up), `engine-retry-test.mjs` (27 — ретраи на строках, override, onRunFinal-семантика), `engine-watchdog-test.mjs` (14 — reap оба набора, heartbeat real-clock, recover), `engine-async-test.mjs` (8 — async poll через schedule, poll timeout). ВАЖНО для тестов движка: фейк-часы монотонны; отдельный DB на сценарий; async-тест rmSync'ит db в начале (иначе флак). - `contract-parity.test.mjs` (vitest): sqlite 49/49 + mongo 49/49 ✅; mysql/pg/mariadb на этом хосте непрактичны (~11s DDL на open > vitest 10s timeout) — НЕ гейт. - Убитые в этой сессии висельники прошлой: tmp-retest*.mjs ×4, daemon.mjs, стенд-daemon (sched.db), vitest-воркер.