--- name: role-validate description: Валидация роли 1С. Используй после создания или модификации роли для проверки корректности argument-hint: [-Detailed] [-MaxErrors 30] allowed-tools: - Bash - Read --- # /role-validate — валидация роли 1С Проверяет корректность `Rights.xml` роли: формат XML, namespace, глобальные флаги, типы объектов, имена прав, RLS-ограничения, шаблоны. Опционально проверяет метаданные роли (UUID, имя, синоним). ## Параметры | Параметр | Обяз. | Умолч. | Описание | |--------------|:-----:|---------|-------------------------------------------------| | RightsPath | да | — | Путь к роли (директория или `Rights.xml`) | | Detailed | нет | — | Подробный вывод (все проверки, включая успешные) | | MaxErrors | нет | 30 | Макс. ошибок до остановки (по умолчанию 30) | | OutFile | нет | — | Записать результат в файл (UTF-8 BOM) | ## Команда ```powershell powershell.exe -NoProfile -File ".opencode/skills/role-validate/scripts/role-validate.ps1" -RightsPath "Roles/МояРоль" ``` ## Что считается ошибкой Ошибка (код возврата 1), а не предупреждение: - тип объекта, не имеющий прав в ролях (`Enum`, `CommonModule`, `CommonPicture`, `ScheduledJob` и т.п.) — конфигурация с блоком прав на перечисление не загружается в базу, конфигуратор зависает без сообщений; - незнакомый тип объекта (опечатка); - имя права, которого у этого типа нет; - вид вложенности, невозможный у данного типа, и недопустимое право у вложенного объекта; - право на сервис целиком (`HTTPService.Имя` и т.п.) — платформа проверяет вложенный объект (метод шаблона URL, операцию, канал), а роль с правом на корень молча не работает: маршруты отвечают `403 Недостаточно прав`. Полные списки «тип → права» и виды вложенности — в `role-compile/dsl-reference.md`.