fix(skill): coordinator-loop — шумные команды гейта через файл-лог
- Зачем:
- на прогоне 2026-07-05 make generator-test с зашитым pytest -v высыпал
в контекст координатора полный список из 181 теста: правило «только
сводка» было, а механики не было.
- Что:
- шаг 7: гейт координатор гоняет сам (не через субагента), шумные
команды — в файл-лог, в контекст только код возврата и итоговые
строки; интерпретация объёмного вывода — разборщику логов
экономного уровня.
- ведущее правило и чек-лист дополнены той же механикой.
- effort-levels: «разбор логов» добавлен в экономный ярус Claude Code.
- Проверка:
- вычитка SKILL.md; grep по pytest/сводка/файл-лог — противоречий нет.
This commit is contained in:
1 parent
16da5fe499
commit
03030d4f24
2 files changed
+17
-5
No files matched your search
@@ -18,6 +18,8 @@ description: >-
|
|||||||
твой контекст, — это **индекс**: находка, `файл:строка`, какой критерий нарушен,
|
твой контекст, — это **индекс**: находка, `файл:строка`, какой критерий нарушен,
|
||||||
минимальный путь воспроизведения. Полного diff, вывода тестов и нарратива ревью в твоём
|
минимальный путь воспроизведения. Полного diff, вывода тестов и нарратива ревью в твоём
|
||||||
контексте быть не должно — их читают субагенты у себя, а тебе возвращают индекс.
|
контексте быть не должно — их читают субагенты у себя, а тебе возвращают индекс.
|
||||||
|
Твоих собственных команд это тоже касается: шумный вывод гони в файл-лог, в контекст
|
||||||
|
бери код возврата и итоговые строки (механика — шаг 7).
|
||||||
Верификацию находок делает ревьюер, не ты. (Исключение — состав diff на коммит-гейте:
|
Верификацию находок делает ревьюер, не ты. (Исключение — состав diff на коммит-гейте:
|
||||||
`git diff --stat`/`--name-only`, какие файлы и в границах ли; это не полный текст, см.
|
`git diff --stat`/`--name-only`, какие файлы и в границах ли; это не полный текст, см.
|
||||||
шаг 7.) Проверяй себя каждый цикл: *в мой контекст попал полный текст вместо индекса?
|
шаг 7.) Проверяй себя каждый цикл: *в мой контекст попал полный текст вместо индекса?
|
||||||
@@ -102,8 +104,16 @@ worker-у их индексы **дословно**, без своих интер
|
|||||||
- независимо от споров больше **четырёх** кругов ревью на issue → стоп, вынеси
|
- независимо от споров больше **четырёх** кругов ревью на issue → стоп, вынеси
|
||||||
человеку вопрос «дробить issue или принимать риск».
|
человеку вопрос «дробить issue или принимать риск».
|
||||||
6. **Классифицируй по индексу — только chain-level** (см. «Классификация»).
|
6. **Классифицируй по индексу — только chain-level** (см. «Классификация»).
|
||||||
7. **Коммит-гейт.** Прогони полный тест-сет, но в контекст возьми **только сводку**: код
|
7. **Коммит-гейт.** Прогони полный тест-сет **сам**: код возврата, который ты видел
|
||||||
возврата и имена упавших тестов (`pytest -q`/хвост вывода), не полный вывод. Так же
|
своими глазами, — это и есть твоя проверка; прогон через субагента превращает гейт
|
||||||
|
обратно в чужой пересказ. Шумные команды гоняй через файл-лог
|
||||||
|
(`<команда> > /tmp/<лог> 2>&1`), в контекст возьми **только сводку**: код возврата
|
||||||
|
и итоговые строки (`tail`, имена упавших — `grep FAILED`). На «тихие» флаги вроде
|
||||||
|
`pytest -q` не полагайся: цель сборки может зашивать подробный вывод (эмпирика
|
||||||
|
2026-07-05: `make generator-test` с зашитым `pytest -v` высыпал в контекст
|
||||||
|
координатора полный список из 181 теста). Если сводки мало и вывод нужно
|
||||||
|
**интерпретировать** — лог сам не читай, спавни разборщика логов экономного уровня
|
||||||
|
([references/effort-levels.md](references/effort-levels.md)), он вернёт индекс. Так же
|
||||||
проверь **состав** diff (`git diff --stat`/`--name-only`: какие файлы, в границах ли —
|
проверь **состав** diff (`git diff --stat`/`--name-only`: какие файлы, в границах ли —
|
||||||
не полный текст) и коммить. Упали тесты — верни их worker-у по именам, трейсбеки в свой
|
не полный текст) и коммить. Упали тесты — верни их worker-у по именам, трейсбеки в свой
|
||||||
контекст не тащи. Сверь по журналу, что назначенный режим ревью выполнен: каждый
|
контекст не тащи. Сверь по журналу, что назначенный режим ревью выполнен: каждый
|
||||||
@@ -300,7 +310,9 @@ Per-finding триаж («реально / ложно / чинить») дела
|
|||||||
- [ ] Журнал ведётся append-only по ходу, каждая запись с меткой `HH:MM`; точки записи
|
- [ ] Журнал ведётся append-only по ходу, каждая запись с меткой `HH:MM`; точки записи
|
||||||
не пропущены.
|
не пропущены.
|
||||||
- [ ] Chain-level классификация сделана по индексу (риск / вне скоупа).
|
- [ ] Chain-level классификация сделана по индексу (риск / вне скоупа).
|
||||||
- [ ] Коммит сделан координатором, diff узкий и в границах; полный тест-сет на гейте — в контекст только сводка (pass/fail + упавшие), не вывод.
|
- [ ] Коммит сделан координатором, diff узкий и в границах; полный тест-сет на гейте
|
||||||
|
прогнал я сам, шумные команды — через файл-лог: в контекст только сводка
|
||||||
|
(pass/fail + упавшие), не вывод.
|
||||||
- [ ] Статусы закрытых issue переведены в `done` и ушли docs-коммитом вместе с журналом.
|
- [ ] Статусы закрытых issue переведены в `done` и ушли docs-коммитом вместе с журналом.
|
||||||
- [ ] PRD/трекер приведены **до** финального ревью; ревью на соответствие замыслу —
|
- [ ] PRD/трекер приведены **до** финального ревью; ревью на соответствие замыслу —
|
||||||
сильная модель на усиленном уровне; дрейф от спеки проверен.
|
сильная модель на усиленном уровне; дрейф от спеки проверен.
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# Уровни мышления и модели по ролям
|
# Уровни мышления и модели по ролям
|
||||||
|
|
||||||
Обновлено: 2026-07-04. Логика скилла оперирует относительными уровнями
|
Обновлено: 2026-07-05. Логика скилла оперирует относительными уровнями
|
||||||
(экономный / рабочий / усиленный) и «моделью по роли»; здесь — привязка к
|
(экономный / рабочий / усиленный) и «моделью по роли»; здесь — привязка к
|
||||||
конкретным настройкам хостов. Вышла новая модель или переименовались уровни —
|
конкретным настройкам хостов. Вышла новая модель или переименовались уровни —
|
||||||
правится этот файл, не `SKILL.md`.
|
правится этот файл, не `SKILL.md`.
|
||||||
@@ -37,7 +37,7 @@ issue), ревью — один короткий прогон; глубина д
|
|||||||
|
|
||||||
| Роль | Уровень | Настройка |
|
| Роль | Уровень | Настройка |
|
||||||
|---|---|---|
|
|---|---|---|
|
||||||
| worker на обычном issue; task-lens ревью, диагностика | экономный | модель ступень ниже, effort `low`–`medium` |
|
| worker на обычном issue; task-lens ревью, диагностика, разбор логов | экономный | модель ступень ниже, effort `low`–`medium` |
|
||||||
| любое code review; worker на гейтовом issue | рабочий | модель сессии, effort `high` |
|
| любое code review; worker на гейтовом issue | рабочий | модель сессии, effort `high` |
|
||||||
| узкий гейт по спору, финальное chain-ревью | усиленный | сильная модель, effort `xhigh`–`max` |
|
| узкий гейт по спору, финальное chain-ревью | усиленный | сильная модель, effort `xhigh`–`max` |
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user