From 8b46c753814742d75e36d853791a3ffd8e9d7151 Mon Sep 17 00:00:00 2001 From: vitya Date: Thu, 11 Jun 2026 18:04:50 +0300 Subject: [PATCH] =?UTF-8?q?meta(tasks):=20close=20[task-loop-test-trigger]?= =?UTF-8?q?=20=E2=80=94=20VERDICT=20PASS=20(baseline=203/3)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Live clean-session run (this session did NOT install the skill). Probe confirmed subagents inherit the REAL installed registry (task-loop present, description verbatim = SKILL.md) — upgrade over dev-time simulated proxy. Trigger-discrimination: positives 6/6 -> task-loop; negatives clean (delegate-task, using-tasks after deconfound, configure-poller -> none with explicit task-loop exclusion); task-loop false-positive 0/3. Behavioral (skill body loaded) 4/4: consult-gate human-only -> STOP before close; session_break -> SESSION BOUNDARY + STOP; empty -> stop+report no poll; long-watch -> single ScheduleWakeup >=1200s, not CronCreate. Finding (informational, non-blocking): session_break is the fragile gate — its STOP semantics live only in the body (step 6), invert to soft-checkpoint when reasoning from description alone; correct with body loaded. No fix needed (rule triple-stated; using-tasks is REQUIRED SUB-SKILL). No follow-up filed. All 3 task-loop deployment baselines (install / hermes-mapping / test-trigger) now closed. Co-Authored-By: Claude Opus 4.8 (1M context) --- .tasks/STATUS.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.tasks/STATUS.md b/.tasks/STATUS.md index 165bcdd..f87e01d 100644 --- a/.tasks/STATUS.md +++ b/.tasks/STATUS.md @@ -1143,7 +1143,7 @@ Acceptance 1-6 all met by test evidence (not by inspection). Per-task detail in --- -## ⚪ [task-loop-test-trigger] — [skill task-loop, baseline 3/3] Живая активация + trigger-discrimination для task-loop в чистой сессии (subagent-прогоны при разработке — прокси, не харнес). +## 🟢 [task-loop-test-trigger] — [skill task-loop, baseline 3/3] Живая активация + trigger-discrimination для task-loop в чистой сессии (subagent-прогоны при разработке — прокси, не харнес). **Должен активироваться (positive):** «поработай очередь», «прогони доску», «бери задачи по очереди», «работай пока не скажу стоп», «work the queue», «drain the board». **НЕ должен (false-positive check):** «делегируй таску в проект X» (→ delegate-task), «обнови статус задачи Y» / «возобнови задачу Y» (→ using-tasks), «настрой поллер / agent-runner» (→ infra, не loop). @@ -1157,12 +1157,12 @@ Acceptance 1-6 all met by test evidence (not by inspection). Per-task detail in **weight:** needs-claude **notify:** OpeItcLoc03/workshop -**Status:** ready -**Where I stopped:** Разблокирована 2026-06-11 — `task-loop-install` закрыт (скил в `~/.claude/skills/`, виден в available-skills). Сама эта сессия НЕ годится для прогона: она ставила скил (имплементер-прайм) + контекст не чист. Нужна свежая CC-сессия. -**Next action:** В ЧИСТОЙ сессии прогнать positive/negative триггеры + поведенческий сценарий (consult-gate, session_break-halt, empty→stop, watch→ScheduleWakeup-not-CronCreate). Findings → follow-up tasks. Закрыть когда зелено или findings зафайлены. +**Status:** done +**Where I stopped:** VERDICT PASS, прогнано 2026-06-11 в чистой сессии (НЕ ставила скил). Probe подтвердил: субагенты наследуют РЕАЛЬНЫЙ установленный registry (task-loop present, description дословно = SKILL.md) — апгрейд над dev-time симуляцией. **Trigger-discrimination:** positives 6/6→task-loop (поработай очередь / прогони доску / бери задачи по очереди / работай пока не скажу стоп / work the queue / drain the board); negatives — delegate-task✅, using-tasks✅ (после деконфаунда session-start рамки), «настрой поллер»→none с явной цитатой task-loop exclusion✅; task-loop false-positive 0/3. **Behavioral (тело скила загружено):** 4/4 — consult-gate human-only→STOP перед close✅; session_break→print SESSION BOUNDARY + STOP, не клеймить✅; empty→stop+report без re-poll✅; long-watch→единственный ScheduleWakeup≥1200s, НЕ CronCreate, не short-poll✅. **Метод:** clean-context субагенты с живым registry; каждая фраза — отдельный непрайменный субагент, без подсказки кандидатов/ответа. **Finding (informational, non-blocking):** session_break — самый хрупкий гейт: его STOP-семантика только в теле (step 6, не в description), при рассуждении по одному описанию инвертируется в «мягкий чекпоинт»; при загруженном теле верно. Фикс не нужен (правило трижды продублировано + using-tasks=REQUIRED SUB-SKILL). Follow-up не заведён. **Blocker:** (cleared — install done) **Branch:** n/a **Notify:** OpeItcLoc03/workshop + ---