From c6c92b55fa81f720c0a0f73a6e4b3d61909167e0 Mon Sep 17 00:00:00 2001 From: OpeItcLoc03 Date: Tue, 18 Aug 2026 19:00:48 +0000 Subject: [PATCH] meta(tasks): create [sched-admin-client-openapi] in OpeItcLoc03/admin --- .tasks/STATUS.md | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/.tasks/STATUS.md b/.tasks/STATUS.md index fee0583..5876f91 100644 --- a/.tasks/STATUS.md +++ b/.tasks/STATUS.md @@ -1894,3 +1894,34 @@ Rollback: вернуть прежний образ стека либо реве --- + +## ⚪ [sched-admin-client-openapi] — Цель: написать admin-клиент для sched на ЛЮБОМ другом языке (не TypeScript/JavaScript) строго по OpenAPI-спеке @sched/admin-api, проверить живым smoke по методике F&F. Это живая проверка claim'а openapi-spec: «клиент на любом ЯП одной командой». Клиент пишется В РЕПО SCHED (C:\Users\vitya\projects\sched, папка examples/admin-client-/, по образцу examples/workers/), ПУШ РАЗРЕШЁН — решение vitya 2026-08-18 (явное исключение из fnf-testing-procedure «внешний агент не пушит в наш репо»). + +## Acceptance criteria +1. Язык — любой, кроме TS/JS (свободный выбор: Python/Go/C#/Java/…). Путь свободный: сгенерированный (openapi-generator/swagger-codegen/lang-tool) ИЛИ рукописный — но источник истины ОДИН: openapi.json (subpath-export @sched/admin-api/openapi.json, опубликован 0.1.2 в verdaccio; в репо: packages/admin-api/openapi.json), не чтение нашего TS-исходника. +2. Покрытие: ВСЕ пути спеки (openapi.json 3.1, 15 путей: /health, /tasks (+run|pause|resume|schedule), /schedules (+/:id|pause|resume), /runs (+/:id|retry), artifacts; securityScheme Bearer). +3. Живой smoke против реального admin-api: свой стенд (verdaccio-пакеты, свой порт — конвенция .admin/.tmp/) или наш :8080 (живой, Node 24). Каждый путь дёрнут минимум раз, результат — в репорте. +4. Репорт по F&F-формату: что делал → что ожидал → что получил (вывод/стек) → ссылка на раздел доки + «гладкое». Находки/пробелы спеки-доков — в репорт, НЕ чинить (имплим мы). +5. TDD: unit-тесты клиента на контракт спеки + smoke-харнесс. + +## Обязательные скилы — вызвать до начала работы + +- invoke `tdd-criteria` — до написания кода +- invoke `using-tasks` — управление статусом задачи +- invoke `project-discipline` — дисциплина коммитов/пушей (в чужом репо аккуратно: только свои файлы examples/admin-client-/) +- invoke `using-context7` — актуальные доки/SDK выбранного ЯП +- invoke `using-wiki` после закрытия — заингесть .wiki/concepts/sched-admin-client-openapi.md + +**TDD:** да — контракт-тесты + smoke +**Разрешения:** интерны: нет | автопуш: да +**weight:** needs-claude +**notify:** victor/sched + +**Status:** ready +**Where I stopped:** (not started) +**Next action:** Выбрать язык (любой кроме TS/JS), прочитать openapi.json из @sched/admin-api (verdaccio 0.1.2), написать клиент в examples/admin-client-/ репо sched (TDD), прогнать живой smoke против admin-api (свой стенд или :8080), отправить F&F-репорт в victor/sched инбокс. +**Branch:** n/a +**Notify:** victor/sched + + +---