ревью: скилл review-pipeline — стадии, профили, контракт находок, храповик
Конвейер собран по типу проходов, а не по ролям: гейт (детерминированный, блокирующий) → сверка с дельта-спеками в обе стороны → generative-проходы → архитектура → враждебные постановки → обязательный триаж. Профили quick / standard / deep / design с правилом выбора по факту изменения. Контракт находок: заголовок через последствие, обязательное поле «Последствие», critical без оракула или построенного пути не существует, потолок 7 пунктов и разметка «инлайн | развилка» — отчёт читает оркестратор и молча реализует прочитанное, поэтому потолок защищает код от незаказанных правок. Храповик находка → конвенция → правило → удаление из прозы и промптов; журнал проскочивших дефектов и калибровка инъекцией с вердиктами keep/retune/drop. Секция границ покрытия обязательна: отчёт без неё потребляет ощущение проверенности, ничего не гарантируя. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
# Журнал проскочивших дефектов
|
||||
|
||||
Всё, что прошло конвейер ревью и всплыло позже — на ручном просмотре, при
|
||||
отладке, на umbar в проде. Это лучший эвал-сет, который вообще возможен:
|
||||
синтетические дефекты смещены в сторону тех, которые уже умеешь придумывать, а
|
||||
журнал — каталог реальных слепых пятен.
|
||||
|
||||
**Заполнять сразу, по горячим следам.** Ретроспективные записи бесполезны:
|
||||
теряется именно то, ради чего журнал заведён, — причина непоймания. Через неделю
|
||||
остаётся «ну, не заметил».
|
||||
|
||||
Каждая запись превращается в пробу для
|
||||
[калибровки](../../.claude/skills/review-pipeline/references/calibration.md) того
|
||||
прохода, который должен был поймать дефект.
|
||||
|
||||
## Как заполнять
|
||||
|
||||
Одна запись — один дефект, новые сверху. Шаблон:
|
||||
|
||||
```markdown
|
||||
## YYYY-MM-DD — <краткое последствие>
|
||||
|
||||
- **Класс дефекта:** <поведение вне спеки / гонка / отсутствующая наблюдаемость / деградация зависимости / форма решения / …>
|
||||
- **Где всплыл:** <ручной просмотр / отладка / прод umbar / отчёт пользователя>
|
||||
- **Стоимость обнаружения:** <минуты отладки, потерянные данные, часы простоя>
|
||||
- **Что произошло:** <симптом → причина, со ссылкой на файл:строку и коммит>
|
||||
- **Какой проход должен был поймать:** <имя агента>
|
||||
- **Почему не смог:** <не было во входе / не было в чек-листе / оракул был недоступен / проход не запускался в этом профиле / принципиально недоступно>
|
||||
- **Был ли доступен оракул:** <да, какой / нет>
|
||||
- **Действие:** <проба добавлена в калибровку / конвенция / правило линтера / профиль изменён / признано неавтоматизируемым>
|
||||
```
|
||||
|
||||
Поле «Почему не смог» — главное. Если ответ «не было в чек-листе», лечится
|
||||
generative-проходом, а не удлинением чек-листа. Если «не было во входе» — лечится
|
||||
входом. Если «оракул был недоступен» — лечится гейтом. Если «принципиально
|
||||
недоступно» — запись всё равно нужна: она пополняет раздел честного предела в
|
||||
скилле и отвечает на будущий вопрос «почему ревью это не поймало».
|
||||
|
||||
## Записи
|
||||
|
||||
Пока пусто — журнал заведён 2026-07-23 вместе с переработкой конвейера.
|
||||
Накопленные до этой даты случаи вносятся по мере того, как вспоминаются, с
|
||||
пометкой «восстановлено постфактум, причина непоймания недостоверна».
|
||||
Reference in New Issue
Block a user