v0.11.0
v0.11.0
Контуры
code: чеклист дополнен 12 стандартами — блокировки в транзакции (#std659, #std661),
запись и активность движений (#std450, #std633), регистры (#std792, #std708,
#std663, #std664), таймауты внешних ресурсов (#std748), поведение формы
(#std492, #std710), реквизит «Комментарий» (#std531). Свойства метаданных
помечены отдельно: проверяются по XML объекта, а не по тексту модуля.
AI-07 дополнен: ЗаполнитьЗначенияСвойств копией структуры не является.
arch: без изменений.
xml: исправлено ложное срабатывание role-validate.py — право Use у точки вызова
сервиса (HTTPService.<имя>.URLTemplate.<шаблон>.Method.<метод>,
WebService.<имя>.Operation.<имя>) разбиралось как вложенный реквизит и
требовало View/Edit. Типы без объектных прав (Enum, ScheduledJob) названы
прямо вместо «неизвестного типа». Добавлены два справочника: модель прав
ролей и семантика заимствования в расширении (собственный элемент опознаётся
по отсутствию тега ObjectBelonging). Новый раздел «Дефекты, которые проходят
валидацию»: Autofill с вложенным ExtendedTooltip внутри AutoCommandBar
таблицы вешает загрузку обработки, а form-validate.py даёт «OK».
hygiene: без изменений.
оркестратор: запись scope получает обязательное поле config — применённая настройка
проекта (default либо custom:<секция>[+<секция>]). Строку печатает
tools/config.mjs show; валидатор пересчитывает поле сам и отвергает
расхождение с фактической настройкой.
Ломающие изменения
Поле config записи scope обязательно для снятия гейта. Отчёт, собранный версией 0.10.0,
гейт не снимет — прогон надо повторить. Чтение и линт прежних отчётов сохранены:
при обычном линте отсутствие поля даёт предупреждение, а не ошибку.
Миграция
Правок в .1c-quality-gate.json не требуется. Проектам с переопределёнными порогами
ничего настраивать не нужно: перечень изменённых секций плагин считает сам.
Закреплённая версия анализатора
0.2.66
Минимальная версия Claude Code
не изменилась