Checks the correctness of Rights.xml role: XML format, namespace, global flags, object types, right names, RLS restrictions, templates. Optionally checks role metadata (UUID, name, synonym).
Parameters
| Parameter | Required | Default | Description |
|---|---|---|---|
| RightsPath | yes | — | Path to the role (directory or Rights.xml) |
| Detailed | no | — | Verbose output (all checks, including successful ones) |
| MaxErrors | no | 30 | Max. errors before stopping (default 30) |
| OutFile | no | — | Write the result to a file (UTF-8 BOM) |
Command
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/role-validate.ps1" -RightsPath "Roles/МояРоль"
What is considered an error
An error (return code 1), not a warning:
- an object type that has no rights in roles (
Enum,CommonModule,CommonPicture,ScheduledJobetc.) — a configuration with a rights block on an enumeration does not load into the database, the configurator hangs without messages; - an unknown object type (typo);
- a right name that this type does not have;
- a nesting kind that is impossible for this type, and an invalid right on a nested object;
- a right to the service as a whole (
HTTPService.Имяetc.) — the platform checks the nested object (URL template method, operation, channel), and a role with a right to the root silently does not work: routes respond403 Недостаточно прав.
Full lists of “type → rights” and nesting kinds are in role-compile/dsl-reference.md.