# Задачи из аудита и ревью Ревью и аудиты — код-ревью, архитектурный проход, аудит безопасности, любой разбор другим агентом — порождают находки, часть которых становится задачами беклога. Это отдельный интейк со своей опасностью, **зеркальной** интейку из диалога. - Интейк из диалога грешит переполнением: из одной мысли рождается пять файлов. - Интейк из ревью грешит сваливанием: сорок сырых находок превращаются в сорок файлов. Беклог раздувается, а следующий груминг склеивает их обратно. Защита от сваливания — та же, что в самом ревью: **кластеризация по причине, а не файл-на-находку.** Если у ревью был триаж — половина работы уже сделана, бери его выход. Если нет — триажируй сам, прежде чем заводить. ## Находка агента — не задача Мнение агента — **гипотеза, пока у неё нет свидетельства** (падающий тест, воспроизводимый шаг, положение гайда). Согласие нескольких находок само по себе достоверность не повышает: это один источник, высказавшийся несколько раз. Отсюда фильтр входа, поверх обычного «не делаем сейчас + пожалеем о потере»: - **Находка со свидетельством**, отложенная к исполнению → **задача**. Свидетельство и последствие переносим в тело — это её «почему», то самое, что переживает запись. - **Находка без свидетельства / низкой уверенности** → **идея** (`[idea]`), а не задача. Она не заработала приоритизацию: сравнивать неподтверждённое не с чем. Её судьба — штурм, где либо найдётся подтверждение, либо она уедет на кладбище. - **Уже починено по ходу ревью** → **ничего**. Починенное не заводим. - **Развилка, решённая при ревью** → ничего; решённая «потом» → задача с зафиксированным вопросом. ## Порядок 1. **Возьми выход триажа, а не сырые находки.** Сырой отчёт — это симптомы до дедупликации; в нём одна причина размазана по нескольким строкам. 2. **Кластеризуй по причине.** Пять находок об одном отсутствующем инварианте — одна задача, а не пять. Класс мелочи (nits, косметика) — **один пакетный файл** со списком пунктов, а не файл на каждую запятую. 3. **Дедуп против беклога и кладбища.** Аудит переоткрывает уже заведённое и уже выкинутое. Нашлось в беклоге — дописываем находку в существующий файл. Нашлось на кладбище — это сигнал: причина отказа могла устареть, выноси пользователю, а не заводи молча заново. 4. **Покажи карту до создания файлов.** Кластер → задача / идея / строка в пакетный файл / уже в беклоге / отброшено — пачкой через `AskUserQuestion`. Это тот же барьер, что и «три кандидата» в интейке из диалога: массовое заведение файлов без подтверждения — ровно тот отказ, ради которого интейк из ревью и выделен. Дешёвая мелочь по явному согласию может заводиться и без поштучного вопроса — но карта пользователю всё равно предъявляется. 5. **Заводи утверждённое** через `backlog.py add`, с двумя добавками: - **тег партии** — `add … --tag review-ГГГГ-ММ-ДД` (или `audit-<тема>`), чтобы весь заход груминга поднимался одной командой `backlog.py list --tag …`; - **провенанс в теле** — кто нашёл, каким проходом, с каким свидетельством. Без него через месяц не отличить проверенную находку от догадки. 6. `backlog.py check`. ## Отображение серьёзности на приоритет Правило концептуальное, от полей конкретного отчёта не зависит: - **выше серьёзность → выше приоритет.** Самый тяжёлый класс находок → верхняя секция индекса, следующий → следующая. Отображать словарь серьёзности отчёта на словарь приоритетов проекта точно нечем — при сомнении спрашивай пользователя. - **низкая уверенность или нет свидетельства → идея**, не задача. - **мелочь → строка в пакетный файл**, не отдельный. - **уже починено / развилка решена сейчас → ничего.** Если у ревью структурированный отчёт с полями серьёзности, уверенности, свидетельства и предписанного действия (например, конвейер ревью jellybit даёт `Severity`/`Confidence`/`Оракул`/`Действие: инлайн|развилка`) — правило выше ложится на эти поля механически. Но это пример одного формата, а не требование к источнику: тот же фильтр применяется к находкам в свободной форме. Границы покрытия отчёта — то, что ревью проверить **не смогло**, — не находки и в задачи не идут: у них нет предмета. Их место — в докладе, не в беклоге. ## Доклад - Источник (какое ревью/аудит, сколько находок на входе). - Свёрнуто в задачи: N кластеров из M находок, со слагами и тегом партии. - Что не заведено и почему: починено инлайн, уже в беклоге, ушло в идеи, на кладбище. - `backlog.py check`.