Repository navigation
Plugin skills are stale: audit-session documents 6 of 12 finding types #92
Description
⚠️ Выводы не проверены человеком — доверия к ним нет. Ишью заведено по аудиту, который сделал Claude Code. Автор репозитория просил считать эти выводы непроверенными: прежде чем чинить, дважды сверьте каждый пункт с кодом и отметьте результат в разделе «Перепроверка». Claude проверил один раз (grep по SKILL.md противFindingType); это не засчитывается.
Скиллы — это то, по чему Claude Code сам читает аудит и даёт рекомендации. Если скилл отстал от CLI, агент молча игнорирует половину findings или трактует их неверно.
Наблюдение
skills/audit-session/SKILL.md описывает 6 типов (duplicate_call, failed_call, oversized_output, context_spike, cache_dead, thinking_heavy) + !SLOW. В FindingType (src/cli/analyzeSession.ts:109) их 12. Не описаны:
long_turn,loop_streak,stall_streak,wait_loop,cycle_motif,probe_no_progress;- флаг
--turn Nи вердикт «цикл или длинный ход»; thinking (estimate)описан как надёжная оценка, хотя он сейчас ≈0 (thinking_heavy measures returned thinking text, not billed thinking tokens #83, Ledger drops content blocks: keep-last dedup treats split response lines as snapshots #88);- правило «jumps usually trace to the tools listed on that row» неверно (context_spike blames the wrong tool: the spike comes from the previous round's results #89).
skills/sessions-inventory/SKILL.md не упоминает --min-turn-minutes и --min-streak (есть в pnpm analyze:sessions --help).
Как проверить
for t in $(grep -oE "'[a-z_]+'" src/cli/analyzeSession.ts | sed -n '/duplicate_call/,/probe_no_progress/p' | tr -d "'" | sort -u); do
printf "%-18s %s\n" "$t" "$(grep -c "$t" skills/audit-session/SKILL.md)"; done
pnpm -s analyze:session --help; pnpm -s analyze:sessions --help # сравнить с флагами в SKILL.mdЧто сделать
- Дописать в таблицу findings все 12 типов: что значит, когда это потеря, а когда наблюдение (
long_turn), что рекомендовать. - Описать
--turn Nи вердикт. - Убрать или пометить ненадёжные места до исправления thinking_heavy measures returned thinking text, not billed thinking tokens #83 / Ledger drops content blocks: keep-last dedup treats split response lines as snapshots #88 / context_spike blames the wrong tool: the spike comes from the previous round's results #89.
- Дописать недостающие флаги в
sessions-inventory. - Тест: каждый член
FindingTypeупомянут вskills/audit-session/SKILL.md— чтобы скилл не отставал снова.
Перепроверка (каждый пункт — дважды, независимо)
- 6 из 12 типов не описаны — проверка №1
- то же — проверка №2
- Флаги
--turn,--min-turn-minutes,--min-streakотсутствуют в скиллах — проверка №1 - то же — проверка №2
Acceptance
- Все типы
FindingTypeи все флаги из--helpописаны в скиллах - Тест на полноту скилла в
pnpm test -
claude plugin validate .проходит
Activity
axisrow commentedon Oct 12, 2026
Перепроверка (аудит-верификация, 2026-10-12)
Проверено дважды независимыми методами: №1 — grep-подсчёт по
skills/audit-session/SKILL.md, №2 — ручное сопоставление сFindingTypeв исходнике. Код не менялся.✅ 6 из 12 типов не описаны — проверка №1 (grep) и №2 (чтение) — подтверждено
FindingType—src/cli/analyzeSession.ts:181-193— 12 типов:duplicate_call,failed_call,oversized_output,context_spike,cache_dead,thinking_heavy,long_turn,loop_streak,stall_streak,wait_loop,cycle_motif,probe_no_progress.В
SKILL.mdупомянуты ровно 6 (таблица findings, строки 30–36). Отсутствуют все шесть «поведенческих»:long_turn,loop_streak,stall_streak,wait_loop,cycle_motif,probe_no_progress.Примечание: ссылка ишью на
analyzeSession.ts:109устарела — файл вырос, определение теперь на строке 181.✅ Флаги отсутствуют в скиллах — проверка №1 (grep) и №2 (чтение) — подтверждено
--turn N(вердикт «цикл или длинный ход») существует:src/cli/analyzeSession.ts:12(doc),:1131(parse),:1451(help) — вSKILL.mdотсутствует (перечень флагов, строка 17).--min-turn-minutes/--min-streakсуществуют:src/cli/sessionInventory.ts:9-10(doc),:434-439(parse),:509-510(help) — вskills/sessions-inventory/SKILL.md(перечень фильтров, строки 13–19) отсутствуют.SKILL.mdпоtest/— пусто. Acceptance не выполнен.SKILL.md:22-23теперь дают правильную атрибуцию («A jump … traces to what landed between the requests … not to the tools called on the later row»).thinkingTokensOf,src/cli/analyzeSession.ts:272-279), «≈0» больше не соответствует. Но thinking_heavy measures returned thinking text, not billed thinking tokens #83 остаётся открытой: оценка меряет длину возвращённого thinking-текста, а не billed tokens —SKILL.md:35подаёт её без этой оговорки. Этот остаток пункта жив.Вердикт
VALID — оставить открытым. Ядро ишью подтверждено дважды: 6 из 12 типов не документированы,
--turn Nи оба inventory-флага отсутствуют в скиллах. Убрать из объёма работ пункт про #89 и пересформулировать thinking-пункт под #83 (мера возвращённого текста, а не «≈0»).