Files
cc-1c-skills/.claude/skills/xdto-validate/SKILL.md
T
Nick ShirokovandClaude Opus 5 1d49c16a67 docs(xdto): устранить противоречие «как править пакет» между навыками
На один и тот же вопрос четыре инструкции отвечали по-разному: decompile
объявлял себя «основным способом менять пакет», edit сам себя занижал
до варианта для маленьких пакетов, compile про edit не упоминал вовсе,
а workflow валидатора его не знал. Модель получала бы разный ответ
в зависимости от того, на какой файл попала, причём два из них уводили
от единственного навыка, созданного ровно для этой задачи.

Единое правило проведено через все четыре: точечная правка — xdto-edit;
переработка схемы целиком или знакомство с ней — decompile → compile.
Заодно в decompile добавлена развилка на xdto-info, чтобы разграничить
«нужна схема» и «нужна сводка для кода».

Мелочи: грамматика в xdto-edit, служебное значение -Mode auto убрано
из таблицы параметров (пользователь его не пишет), описан флаг [до N].

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-07-26 12:58:07 +03:00

45 lines
2.6 KiB
Markdown

---
name: xdto-validate
description: Валидация пакета XDTO 1С. Используй после создания или модификации пакета XDTO для проверки корректности
argument-hint: <PackagePath> [-ConfigDir <каталог>] [-Detailed] [-MaxErrors N] [-OutFile <файл>]
allowed-tools:
- Bash
- Read
- Glob
---
# /xdto-validate — Валидация пакета XDTO
Проверяет модель пакета, объект метаданных и его связь с конфигурацией.
Каждая находка выводится отдельной строкой с объяснением. Exit code `1` при ошибках.
## Параметры
| Параметр | Обязательный | Описание |
|----------|--------------|----------|
| `PackagePath` | да | Каталог пакета, `Ext/Package.bin` или `<Имя>.xml` объекта метаданных. Псевдоним — `-Path` |
| `ConfigDir` | нет | Корень исходников. По умолчанию определяется по расположению пакета |
| `Detailed` | нет | Показывать успешные проверки, а не только проблемы |
| `MaxErrors` | нет | Остановиться после N ошибок. По умолчанию 20 |
| `OutFile` | нет | Записать отчёт в файл |
```powershell
powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/xdto-validate.ps1" -PackagePath "<путь>"
```
`[ERROR]` — платформа такой пакет не примет либо примет неправильно.
`[WARN]` — пакет рабочий, но есть риск, о котором стоит знать.
## Зачем запускать, если пакет и так грузится
Часть дефектов платформа не диагностирует: неразрешённый тип из чужого пространства
имён она молча подменяет на `xs:anyType`, и пакет выглядит загруженным, пока
`ФабрикаXDTO` не отдаст в рантайме бесструктурное значение. Такие вещи видно только
статически — до загрузки в базу.
## Типичный workflow
1. `/xdto-compile`, `/xdto-edit` или переработка через `/xdto-decompile``/xdto-compile -Force`
2. `/xdto-validate <путь>` — до загрузки в базу
3. `/db-load-xml` + `/db-update`