Files
admin/.tasks/NEXT_SESSION.md

36 lines
3.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
_last_updated_: 2026-08-18T19:20:00Z
session_id: 2026-08-18-pi-sched-openapi-client-fnf
---
# Next session handoff
## Recent commits
- (this commit) handoff: openapi-client F&F закрыт — репорт sched отправлен 19:15Z, коммит e89e868 (sched repo)
- e89e868 (sched repo) feat(examples): python admin client from spec — 15 путей/21 операция, 24/24, smoke 19/19
- b56da997 handoff: паблиш-волна sched принята (ретест Node 24 зелёный, 18-29Z)
## Что сделано в этой сессии (openapi-client F&F, таска от sched 18-55Z)
- Спеку взял из verdaccio `@sched/admin-api@0.1.2` (tarball = идентична репо, 15 путей/12 схем).
- Клиент: **Python, openapi-generator 7.24.0** (JDK 25; системная Java 8 не годится — JAVA_HOME обязателен) — «одной командой» из спеки.
- TDD: сьют до клиента (RED) → после генерации **24/24 GREEN** (3 прогона стабильно), **smoke 19/19**.
- Код: `sched/examples/admin-client-python/` (README+F&F-таблица, generate.ps1, openapi.json pinned, sched_admin_client/ checked-in, tests/, smoke.py, raw_ops.py).
- **Репорт**: `sched/.agents/inbox/2026-08-18T19-15-43Z-admin-fnf-openapi-client-report.md` — находки F-1..F-5, НЕ чинил (их импл).
## Open треки
| Трек | Готовность | Entry-point |
|---|---|---|
| **sched openapi-client F&F — находки F-1..F-5** | 🔵 жду их импла: F-1 /health auth-контрадикция (спека security:[], daemon с ключом 401-ит даже health); F-2 mutation-ответы {} вместо {task/run/schedule:…} (главный, ломает генераторы); F-3 const:true→строковый enum; F-4 Schedule oneOf не десериализуется; F-5 top-level dedupKey молча игнорится. По фиксам — ретест. | письмо sched 19:15Z |
| sched CLI-F&F раунд | ✅ ЗАКРЫТ | — |
| books-sched-integration (Phase 3) | ⚪ их работа; приёмка только по их пингу | — |
## Стенды (все живы на конец сессии)
- **:8127** — МОЙ scratch-стенд openapi-client F&F: published daemon 0.3.4, NO AUTH, db `/tmp/sched-acpy-stand/acpy.db`. Гасить можно.
- **:8080** — sched CLI-F&F стенд (0.3.4, `SCHED_ADMIN_KEY=dev-key` — ключ НАШЁЛ в старом handoff, для F&F он был нужен, но я обошёлся :8127).
- **:8123** — dev-билд, **СТЕЙЛ** (health 0.1.8): нет POST /tasks, /schedules в легаси-формате. Для контракта не годен.
## Заметки на будущее
- openapi-generator + 3.1-спека: const:true → строковый enum; ответы {} → wrapped-тело валит десериализацию; oneOf+discriminator → actual_instance=None. Обход: raw-транспорт + model_validate. (Кандидат в .wiki-концепт.)
- Windows: порты 8090/8091 в excluded range (Hyper-V) — EACCES. `netsh interface ipv4 show excludedportrange`.
- Триггер долгого process-раннера (POST run) синхронный — ответ приходит после завершения процесса; для cancel-теста дёргать в фоновом треде.