1c-code-review

Ревью BSL-кода по каталогу дефектов: каждая находка получает идентификатор карточки, важность и ключ локации. Триггеры: ревью BSL, проверь код по антипаттернам, code review 1С, проверь код перед комми

SKILL.md

GitHub

1c-code-review - ревью BSL по каталогу дефектов

Каталог дефектов - данные: карточки references/catalog/<ИДЕНТИФИКАТОР>.md, каждая с триггером, законной формой и фикстурой. Ревью идет от измененного кода к каталогу, а не пересказом карточек.

Порядок работы

  1. Архетипы правки. Определи архетипы измененного кода по списку: транзакция, блокировка, права, запрос, модуль формы, событие объекта, новый общий модуль, перехват в расширении, изменение метаданных, любой BSL. Архетипы задают, какие группы каталога просматривать в первую очередь.
  2. Находки инструментов. Прогони доступные инструменты и собери их находки до прохода по каталогу: code_review, diagnostics (get_project_errors с фильтром по измененным объектам), validate_query для запросов (AI-EDT), ask_1c_ai / check_1c_code (1c-naparnik). Состав и порядок обязательных проверок - code-review-checklist.md, раздел "Автоматические проверки". Инструменты недоступны - фиксируй это в разделе "Не проверено" отчета и продолжай проход по каталогу чтением.
  3. Проход по индексу. Открой references/catalog/INDEX.md. Для каждой строки таблицы проверь: есть ли триггер в измененном коде. Карточку читай ТОЛЬКО при попадании триггера - за формулировкой триггера, законной формой и способом чинить. Законная форма отсекает ложное срабатывание: код, совпадающий с ней, находкой не является.
  4. Отчет. Оформи по references/report-format.md: ключ находки <путь>::<Метод>:<строка>, одна локация - одна находка, важность по references/severity.md, разделы "Проверено" и "Не проверено" обязательны.

Границы

  • Вердикт "чисто" требует выполненных обязательных проверок: непроверенное - "с пробелами", не "чисто".
  • Детекторы карточек (раздел "Детекторы") описывают автоматическую проверку с уровнем доказательности (semantic, static, llm, read); значение "чтение" означает, что детерминированного детектора нет, дефект ловится проходом по индексу. Сводная матрица детекторов и пороги покрытия - references/detectors.md; гейтовый конфиг bsl-language-server с диагностиками карточек - assets/bsl-ls-gate.json (передача - assets/README.md).
  • Номера стандартов в карточках подтверждаются источником v8std по номеру; неподтвержденный номер не используется.