feat(validate): brief output by default, -Detailed for verbose

All 10 validation skills (meta, epf, skd, cf, cfe, form, mxl, role,
subsystem, interface) now output a single summary line on success:
=== Validation OK: Type.Name (N checks) ===

Errors/warnings always shown. Full per-check [OK] output behind -Detailed flag.
Removed all N/A check lines. Unified role-validate output format.
Trimmed SKILL.md files from 42-119 to 51-67 lines.
Version bumps: meta-validate v1.2, all others v1.1.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Nick Shirokov
2026-03-09 18:14:44 +03:00
co-authored by Claude Opus 4.6
parent 93e4130ff2
commit 422e397381
30 changed files with 685 additions and 816 deletions
+34 -20
View File
@@ -1,7 +1,7 @@
---
name: subsystem-validate
description: Валидация подсистемы 1С. Используй после создания или модификации подсистемы для проверки корректности
argument-hint: <SubsystemPath> [-MaxErrors 30]
argument-hint: <SubsystemPath> [-Detailed] [-MaxErrors 30]
allowed-tools:
- Bash
- Read
@@ -12,13 +12,23 @@ allowed-tools:
Проверяет структурную корректность XML-файла подсистемы из выгрузки конфигурации.
## Параметры и команда
## Использование
| Параметр | Описание |
|----------|----------|
| `SubsystemPath` | Путь к XML-файлу подсистемы |
| `MaxErrors` | Максимум ошибок до остановки (по умолчанию 30) |
| `OutFile` | Записать результат в файл |
```
/subsystem-validate <SubsystemPath>
/subsystem-validate Subsystems/Продажи.xml
```
## Параметры
| Параметр | Обяз. | Умолч. | Описание |
|---------------|:-----:|---------|--------------------------------------------|
| SubsystemPath | да | — | Путь к XML-файлу подсистемы |
| Detailed | нет | — | Показывать [OK] для каждой проверки |
| MaxErrors | нет | 30 | Остановиться после N ошибок |
| OutFile | нет | — | Записать результат в файл |
## Команда
```powershell
powershell.exe -NoProfile -File '.claude/skills/subsystem-validate/scripts/subsystem-validate.ps1' -SubsystemPath '<путь>'
@@ -26,16 +36,20 @@ powershell.exe -NoProfile -File '.claude/skills/subsystem-validate/scripts/subsy
## Проверки (13)
1. XML well-formedness + root structure (MetaDataObject/Subsystem)
2. Properties — 9 обязательных свойств
3. Name — непустой, валидный идентификатор
4. Synonym — непустой (хотя бы один v8:item)
5. Булевы свойства — содержат true/false
6. Content — формат xr:Item, xsi:type
7. Content — нет дубликатов
8. ChildObjects — элементы непустые
9. ChildObjects — нет дубликатов
10. ChildObjects → файлы существуют
11. CommandInterface.xml — well-formedness
12. Picture — формат ссылки
13. UseOneCommand=true → ровно 1 элемент в Content
| # | Проверка | Серьёзность |
|---|----------|-------------|
| 1 | XML well-formedness + root structure (MetaDataObject/Subsystem) | ERROR |
| 2 | Properties — 9 обязательных свойств | ERROR |
| 3 | Name — непустой, валидный идентификатор | ERROR |
| 4 | Synonym — непустой (хотя бы один v8:item) | WARN |
| 5 | Булевы свойства — содержат true/false | ERROR |
| 6 | Content — формат xr:Item, xsi:type | ERROR |
| 7 | Content — нет дубликатов | WARN |
| 8 | ChildObjects — элементы непустые | ERROR |
| 9 | ChildObjects — нет дубликатов | WARN |
| 10 | ChildObjects → файлы существуют | WARN |
| 11 | CommandInterface.xml — well-formedness | ERROR |
| 12 | Picture — формат ссылки | ERROR |
| 13 | UseOneCommand=true → ровно 1 элемент в Content | ERROR |
Exit code: 0 = OK, 1 = есть ошибки. По умолчанию краткий вывод. `-Detailed` для поштучной детализации.