chore(tasks): sched-fnf-02 accepted, sched-fnf-03 done — report sent
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
# Admin Task Board
|
||||
_Updated: 2026-08-16 (12) — 🟢 **[sched-fnf-02-docker-runner] ACCEPTED + 🟡 [sched-fnf-03-async-poll] DONE (репорт отправлен).** Приёмка №2 (14:24Z): оба замечания стали фичами — validateConfig-хук (allowlist на load, abort при старте, core 0.12.2) + ntfy basic auth (user+password в createAlerts, daemon 0.1.3), сьют 362 ✓. №3 async/poll: свой воркер (:8293) envelope accepted+poll — happy path queued→running(50)→succeeded (progress 100, 3.5s), timeout-кейс hung → failed «poll timeout after 15000ms» (через createEngine, т.к. daemon не пробрасывает pollTimeoutMs — замечание в репорт). Фиксы №2 подтверждены (abort на load + ntfy basic в коде). Репорт: `victor/sched/.agents/inbox/2026-08-16T14-27-54Z-admin-fnf-03-report.md`._
|
||||
_Updated: 2026-08-16 (11) — 🟢 **[sched-fnf-01-dir-size-watch] ACCEPTED + 🟡 [sched-fnf-02-docker-runner] DONE (репорт отправлен).** Приёмка №1 (13:54Z): 3 бага дистрибутива починены — exports-map `@sched/daemon` (0.1.2), UI в `@sched/ui` 0.1.1 с бином `sched-ui serve` (daemon headless, --admin-static удалён), токен-бокс в морде, /api/health доки. №2 docker-runner: one-shot alpine:3.20 `wget --spider` на pilorama98.ru → ntfy sched-fnf, exit code → status (0=succeeded / 1=failed+алерт). Обе ветки + allowlist (busybox → fail-fast «not in allowlist», контейнер не спавнился) + новый UI (sched-ui serve --proxy, токен-бокс localStorage, Runs=2). Репорт: `victor/sched/.agents/inbox/2026-08-16T14-17-55Z-admin-fnf-02-report.md`. 2 замечания: allowlist проверяется на dispatch не на load (доки 03.tasks.md обещают load-time validation); createAlerts ntfy только Bearer, basic не поддержан._
|
||||
_Updated: 2026-08-16 (10) — 🟡 **[sched-fnf-01-dir-size-watch] DONE (репорт отправлен, жду приёмки).** F&F sched №1 выполнен: custom runner `dirSizeWatch` (createDaemon, @sched/core 0.12.1 + @sched/daemon 0.1.1 из verdaccio, стенд `.tmp/sched-fnf-01/`), задача «раз в 6ч размер C:\sites\snolla\App_Data → ntfy sched-fnf, алерт при >1MB». Обе ветки проверены: 1MB-порог → `⚠️ THRESHOLD EXCEEDED` (priority 5) в ntfy, 100MB-порог → обычное сообщение (37.5 MB). Run succeeded в истории, admin UI отрендерен (скриншот ui.png). **3 косяка доки/дистрибутива в репорт sched:** (1) `03.custom.md` импортирует `createDaemon` из `@sched/core` — его там нет (живёт в `@sched/daemon/dist/daemon.js`, пакет без main/exports); (2) published `@sched/daemon` не содержит `sched-ui.bundle.js` — admin UI 404 из коробки, нужен `uiBundlePath`; (3) морда не передаёт token в веб-компоненты — при SCHED_ADMIN_KEY UI показывает unauthorized, ввести ключ негде. Репорт: `victor/sched/.agents/inbox/2026-08-16T13-21-11Z-admin-fnf-01-report.md`._
|
||||
_Updated: 2026-08-16 (9) — 🟢 **[pilonuxt-restart-cache-volume-price] DONE.** По запросу прогера (письмо 14:40Z): после перезаливки volume_price (`38c26c7` + admin-api 0.11.0) часть карточек не показывала цену за м³ — content-api держал старый viewModel в памяти контейнера (в БД `voulme_price: 38000` массив, во фронте null). Рестарт контейнера (стек 16, образ `64c2539` без пересборки) → кэш сброшен. Verify мимо LAN-DNS: `/shop/products/imitaciya-brusa-podnyatyj-vors-20-145-6000` 200, `volume_price: 38000` в payload + «Цена за м³» + 38 000 в HTML; категории skandinavskaya-doska/imitaciya-brusa/brus/doska 200, регресс `/`/`/services` 200 + `/services/building` 404. Отписано прогеру (14:55Z)._
|
||||
@@ -1712,14 +1713,26 @@ Cutover DNS уже сделан (07-02) — тут только смена об
|
||||
|
||||
---
|
||||
|
||||
## 🟡 [sched-fnf-02-docker-runner] — F&F-тест sched №2: docker runner. Суть: периодический one-shot контейнер через docker runner (read-only проверка, результат/алерт в ntfy), путь — по докам 06.runners/02.docker.md. Проверить: exit code → status, env-мост (data → SCREAMING_SNAKE + SCHED_RUN_ID/SCHED_TASK_NAME), image allowlist, историю ранов в admin UI (теперь @sched/ui sched-ui serve + токен-бокс). Косяки доки/кода — репорт в inbox victor/sched, не чинить самому.
|
||||
## 🟢 [sched-fnf-02-docker-runner] — F&F-тест sched №2: docker runner. Суть: периодический one-shot контейнер через docker runner (read-only проверка, результат/алерт в ntfy), путь — по докам 06.runners/02.docker.md. Проверить: exit code → status, env-мост (data → SCREAMING_SNAKE + SCHED_RUN_ID/SCHED_TASK_NAME), image allowlist, историю ранов в admin UI (теперь @sched/ui sched-ui serve + токен-бокс). Косяки доки/кода — репорт в inbox victor/sched, не чинить самому.
|
||||
|
||||
**Status:** paused
|
||||
**Where I stopped:** DONE (2026-08-16) — alpine:3.20 one-shot `wget --spider` на pilorama98.ru → ntfy sched-fnf (OK priority 2 / FAIL priority 5). Обе ветки: succeeded rc=0 / failed exit 1. Allowlist: busybox → fail-fast «not in allowlist» до спавна. UI: sched-ui serve --proxy :8082, токен-бокс localStorage (фикс №3 подтверждён), Runs=2, скрин ui2.png. 2 замечания в репорт (allowlist load-time, createAlerts basic ntfy).
|
||||
**Next action:** ждать приёмки №2 → таска №3 (async/poll или custom/embedded).
|
||||
**Status:** done
|
||||
**Where I stopped:** ACCEPTED (2026-08-16 14:24Z) — оба замечания стали фичами (validateConfig allowlist на load + ntfy basic auth, core 0.12.2/daemon 0.1.3, сьют 362 ✓). Работа: alpine:3.20 one-shot `wget --spider` pilorama98.ru → ntfy sched-fnf (OK p2 / FAIL p5), succeeded rc=0 / failed exit 1, allowlist busybox → fail-fast, UI sched-ui serve + токен-бокс (ui2.png).
|
||||
**Next action:** (закрыта — приёмка получена, таска №3 выдана)
|
||||
**Branch:** n/a
|
||||
**Notify:** victor/sched
|
||||
<!-- created-by: OpeItcLoc03@DESKTOP-NSEF0UK / from: victor/sched / 2026-08-16T14:00:00Z -->
|
||||
<!-- closed-by: OpeItcLoc03@DESKTOP-NSEF0UK / 2026-08-16T14:30:00Z / note: accepted 14:24Z; both remarks became features -->
|
||||
|
||||
---
|
||||
|
||||
## 🟡 [sched-fnf-03-async-poll] — F&F-тест sched №3: async/poll envelope-протокол. Суть: свой мини-воркер-эндпоинт (HTTP accepted + poll), happy path + опционально timeout-кейс. Путь — по докам 06.runners/01.http.md (envelope) + 05.protocol.md. Проверить: envelope body {task,data} + x-sched-run-id, accepted→queued→poll→running(progress)→succeeded, pollTimeoutMs на hung-run. Косяки — репорт в inbox victor/sched.
|
||||
|
||||
**Status:** paused
|
||||
**Where I stopped:** DONE (2026-08-16) — воркер :8293 (POST /jobs → 202 accepted + statusUrl, GET /status → running 50% 3с → succeeded). Happy: queued→running(50)→succeeded (progress 100, workedMs 3519). Timeout: hung → failed «poll timeout after 15000ms» (через createEngine: pollTimeoutMs не пробрасывается daemon'ом — замечание). Фиксы №2 подтверждены (validateConfig abort на load, ntfy basic в коде). ui3.png.
|
||||
**Next action:** ждать приёмки №3 → таска №4 (custom/embedded).
|
||||
**Branch:** n/a
|
||||
**Notify:** victor/sched
|
||||
<!-- created-by: OpeItcLoc03@DESKTOP-NSEF0UK / from: victor/sched / 2026-08-16T14:30:00Z -->
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user