From 879957d989d90a5819fb6a92df97601465f87b85 Mon Sep 17 00:00:00 2001 From: OpeItcLoc03 Date: Wed, 6 May 2026 20:43:25 +0000 Subject: [PATCH] meta(tasks): update [using-tasks-close-coverage-gate] in claude-skills --- .tasks/STATUS.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/.tasks/STATUS.md b/.tasks/STATUS.md index 6eb14ed..891be15 100644 --- a/.tasks/STATUS.md +++ b/.tasks/STATUS.md @@ -276,11 +276,17 @@ version: 0.1.0 --- -## ⚪ [using-tasks-close-coverage-gate] — `using-tasks` SKILL должен явно требовать coverage-проверку acceptance-criteria тестами **перед** вызовом `tasks_close`. Surfaced 2026-05-06 в код-ревью factory-bootstrap fallout: 3 из 4 common-фиксов закрыты по «150/150 / 151/151 tests pass» (existing suite), но новые behaviour не покрыты — нет теста на `cached = null` invalidation, нет теста на `AggregateStatusEnum` validation error, partial test на archived-filter end-to-end. Acceptance criteria явно требовали regression-тестов — пропущены. Также: после `feat:`/`fix:` коммита skill должен подсказывать «эта работа закрывает таску ``?» — иначе видим случай когда код shipped (`215afdd`, `23431c5` в claude-skills), но `extend-project-discipline-brainstorm-workspaces` и `project-creation-lifecycle-skill` всё ещё ⚪ ready. Парный фикс к `common#tasks-close-normalize-body` — там фикс tooling, тут — фикс policy/skill. После закрытия: новые hermes-таски попадут в починенный flow. +## ⚪ [using-tasks-close-coverage-gate] — Расширяет `using-tasks` SKILL **двумя коррелированными правилами для decision-points** (изначально таска была только про close-coverage; scope-priority добавлен 2026-05-06 после session-start ревью отчёта claude-skills агента). + +**Часть A — Pre-close coverage gate** (исходный scope). `using-tasks` должен явно требовать coverage-проверку acceptance-criteria тестами **перед** вызовом `tasks_close`. Surfaced 2026-05-06 в код-ревью factory-bootstrap fallout: 3 из 4 common-фиксов закрыты по «150/150 / 151/151 tests pass» (existing suite), но новые behaviour не покрыты — нет теста на `cached = null` invalidation, нет теста на `AggregateStatusEnum` validation error, partial test на archived-filter. Acceptance criteria требовали regression-тестов — пропущены. Также: после `feat:`/`fix:` коммита skill должен подсказывать «эта работа закрывает таску ``?» — иначе код shipped (`215afdd`, `23431c5` в claude-skills) при stale ⚪ ready статусе (`extend-project-discipline-brainstorm-workspaces`, `project-creation-lifecycle-skill`). + +**Часть B — Scope priority at recommendation time** (added 2026-05-06). При session-start (или любой триггер «что делать дальше / куда копаем»), рекомендации должны идти **в порядке**: сначала ranked-список из cwd-проекта (🔴 active → 🟡 paused → ⚪ ready), потом — **одна footnote-строка** «есть 🔴 в других проектах: , см. `tasks_aggregate`», если релевантно. Cross-project — информация, не driver рекомендации. Surfaced когда другой агент в claude-skills cwd рапортовал «Срочные — 3 🔴 в других проектах (stostayer.new, modules-db, crsc.web)» — выводя cross-project в первую строку, хотя у юзера cwd был claude-skills и интересовали локальные таски. `using-projects-meta` уже декларирует local-first для **чтений** — нужно распространить на **recommendation phase**. + +Парный фикс к `common#tasks-close-normalize-body` (там tooling, тут policy/skill). После закрытия: новые hermes-таски попадут в починенный close-flow + рекомендации фокусируются в cwd-проекте. **Status:** ready **Where I stopped:** (not started) -**Next action:** Открыть `skills/using-tasks/SKILL.md`; добавить секцию «Pre-close coverage gate»: (1) перед `tasks_close` агент проверяет, что для каждого acceptance-criteria пункта есть соответствующий тест в diff'е/working-tree (явный grep-walk или manual checklist); (2) после `git commit -m "feat:"` / `"fix:"` — prompt пользователю «эта работа закрывает таску ``?» с вытаскиванием возможного slug'а из ветки или recent task list; PATCH bump version. Smoke-test на следующей реальной close-операции. +**Next action:** Открыть `skills/using-tasks/SKILL.md`. **Часть A** — добавить секцию «Pre-close coverage gate»: (1) перед `tasks_close` агент проверяет, что для каждого acceptance-criteria пункта есть соответствующий тест в diff'е/working-tree (явный grep-walk или manual checklist); (2) после `git commit -m "feat:"` / `"fix:"` — prompt пользователю «эта работа закрывает таску ``?». **Часть B** — добавить секцию «Scope priority at recommendation time»: при триггере «что делать дальше» — сначала cwd-проекта board ranked (active → paused → ready), затем одна footnote про cross-project urgents (если N>0). PATCH bump version. Smoke-test: (1) на close-операции — coverage-проверка триггерится; (2) на session-start в claude-skills cwd с активными 🔴 в других репах — рекомендация всё равно ведёт claude-skills tasks first. **Branch:** master