Покрытие заголовков
Полнорепозиторный обход от 2026-06-10, произведённый
uv run python tools/license_header.py check против каждого дерева — отслеживаемые
файлы, частные исследовательские деревья, дерево доказательств, и сгенерированные
выводы сборки. Gate заново выводит эту классификацию из байтов на диске при каждом
pre-commit и прогоне CI; эта страница фиксирует ратифицированную базовую линию.
Результат
| Классификация | Файлы | Значение |
|---|---|---|
| has-inline | 293 | Комментируемый файл, несущий свой канонический однострочный заголовок в правильной позиции |
| blanket-covered | 107,891 | Файлы данных, активов, маркеров, и сгенерированные, покрытые REUSE.toml и проектным LICENSE (включая машинно-эмитированные записи под локальными слоями рабочего пространства экспериментов) |
| MISSING | 0 | — |
| unregistered | 0 | — |
| Итого | 108,184 |
reuse lint независимо сообщает, что отслеживаемое дерево соответствует REUSE 3.3
(359/359 файлов, несущих как лицензионную, так и копирайт-информацию).
Закрыто во время обхода
Обход выявил и закрыл восемь пробелов: шесть частных страниц несли нестандартный
многострочный блок атрибуции вместо однострочного стандарта (канонический заголовок
внедрён, нестандартный блок удалён); один стиль-лист нёс свой идентификатор внутри
неправильно сформированного многострочного блока (нормализован к канонической форме
первой строки); семь портальных .mdx-страниц и модуль маршрута site-index были
ратифицированы под их правильными формами комментариев (JSX-комментарий после
frontmatter; форма строчного комментария), а не неправильно классифицированы.
Предотвращение повторения
Отсутствующий или незарегистрированный заголовок где угодно проваливает check с
exit 1. Gate выполняется как pre-commit-хук (покрывая все локальные деревья) и как
шаг CI рядом с reuse lint, так что свежий файл без заголовка не может приземлиться
тихо.