← ClaudeAtlas

file-hygienelisted

Контур гигиены файлов 1С: кодировка, BOM, недопустимые управляющие символы, тире вместо ASCII-дефиса, согласованность переводов строк. Дешёвая байтовая проверка, выполняется при любом изменении файлов 1С. Вызывается оркестратором quality-gate; напрямую — по з��просу «проверь кодировки», «почему платформа не принимает файл», «проверь BOM».
Romandredan/1c-quality-gate · ★ 24 · Code & Development · score 74
Install: claude install-skill Romandredan/1c-quality-gate
# file-hygiene — контур гигиены файлов Самый дешёвый контур: читает байты изменённых файлов. Выполняется при **любом** классе изменения, включая косметический, потому что стоимость околонулевая, а ловит он класс дефектов, который проявляется позже всего и объясняется хуже всего. Типичная картина: файл выглядит правильно в редакторе, проходит все остальные проверки, а платформа его не принимает — либо принимает, но ведёт себя не так. Причина невидима глазом. ## Запуск ```bash node "$QG/tools/hygiene-check.mjs" <файл> [<файл> ...] ``` Только по **явному списку изменённых файлов**. Обход всего дерева выгрузки занимает минуты и в гейте недопустим. Коды возврата: 0 — чисто, 1 — предупреждения, 2 — ошибки. ## Что проверяется | Проверка | Уровень | Почему это важно | |---|---|---| | Валидность UTF-8 | 🔴 | запись в однобайтовой кодировке ломает кириллицу необратимо | | Наличие BOM у модулей и XML | 🟠 | выгрузка 1С хранит их с BOM; без него возможны проблемы с кириллицей | | Управляющие символы | 🔴 | ��опадают при программной записи, невидимы в редакторе, ломают разбор | | Тире вместо ASCII-дефиса | 🟡 | платформа считает недопустимым символом в тексте модуля | | Смешанные переводы строк | 🟡 | сравнение версий показывает изменённым весь файл | ### Про тире — важная тонкость Проверка различает контекст: тире ищется **в коде и комментариях**, но не в строковых литералах. В текстах, предназначенных пользователю, длинное тире уместно и встречается даже в типовых модулях конф