/cfe-validate — валидация расширения конфигурации (CFE)
Проверяет структурную корректность расширения: XML-формат, свойства, состав, заимствованные объекты. Аналог /cf-validate, но для расширений.
Параметры
| Параметр |
Обяз. |
Умолч. |
Описание |
| ExtensionPath |
да |
— |
Путь к каталогу или Configuration.xml расширения |
| Detailed |
нет |
— |
Показывать [OK] для каждой проверки |
| MaxErrors |
нет |
30 |
Остановиться после N ошибок |
| OutFile |
нет |
— |
Записать результат в файл |
Команда
powershell.exe -NoProfile -File .claude/skills/cfe-validate/scripts/cfe-validate.ps1 -ExtensionPath "src"
powershell.exe -NoProfile -File .claude/skills/cfe-validate/scripts/cfe-validate.ps1 -ExtensionPath "src/Configuration.xml"
Проверки (13 шагов)
| # |
Проверка |
Уровень |
| 1 |
XML well-formedness, MetaDataObject/Configuration, version |
ERROR |
| 2 |
InternalInfo: 7 ContainedObject, валидные ClassId |
ERROR |
| 3 |
Extension properties: ObjectBelonging=Adopted, Name, Purpose, NamePrefix, KeepMapping |
ERROR |
| 4 |
Enum-значения: ConfigurationExtensionCompatibilityMode, DefaultRunMode, ScriptVariant, InterfaceCompatibilityMode |
ERROR |
| 5 |
ChildObjects: валидные типы (44), нет дубликатов, каноничный порядок |
ERROR/WARN |
| 6 |
DefaultLanguage ссылается на Language в ChildObjects |
ERROR |
| 7 |
Файлы языков существуют |
WARN |
| 8 |
Каталоги объектов существуют |
WARN |
| 9 |
Заимствованные объекты: ObjectBelonging=Adopted, ExtendedConfigurationObject UUID |
ERROR/WARN |
| 10 |
Sub-items: Attribute, TabularSection (InternalInfo + вложенные), EnumValue, Form-ссылки |
ERROR |
| 11 |
Заимствованные формы: метаданные, Form.xml, Module.bsl, BaseForm version |
ERROR/WARN |
| 12 |
Зависимости форм: CommonPicture, StyleItem (с whitelist платформенных), Enum DesignTimeRef |
WARN |
| 13 |
TypeLink: human-readable Items.* DataPath (должны быть удалены) |
WARN |
Exit code: 0 = OK, 1 = есть ошибки. По умолчанию краткий вывод. -Detailed для поштучной детализации.
1---2name: cfe-validate3description: Валидация расширения конфигурации 1С (CFE). Используй после создания или модификации расширения для проверки корректности4---5
6# /cfe-validate — валидация расширения конфигурации (CFE)
7
8Проверяет структурную корректность расширения: XML-формат, свойства, состав, заимствованные объекты. Аналог `/cf-validate`, но для расширений.
9
10## Параметры
11
12| Параметр | Обяз. | Умолч. | Описание |
13|---------------|:-----:|---------|-------------------------------------------------|
14| ExtensionPath | да | — | Путь к каталогу или Configuration.xml расширения |
15| Detailed | нет | — | Показывать [OK] для каждой проверки |
16| MaxErrors | нет | 30 | Остановиться после N ошибок |
17| OutFile | нет | — | Записать результат в файл |
18
19## Команда
20
21```powershell
22powershell.exe -NoProfile -File .claude/skills/cfe-validate/scripts/cfe-validate.ps1 -ExtensionPath "src"
23powershell.exe -NoProfile -File .claude/skills/cfe-validate/scripts/cfe-validate.ps1 -ExtensionPath "src/Configuration.xml"
24```
25
26## Проверки (13 шагов)
27
28| # | Проверка | Уровень |
29|---|----------|---------|
30| 1 | XML well-formedness, MetaDataObject/Configuration, version | ERROR |
31| 2 | InternalInfo: 7 ContainedObject, валидные ClassId | ERROR |
32| 3 | Extension properties: ObjectBelonging=Adopted, Name, Purpose, NamePrefix, KeepMapping | ERROR |
33| 4 | Enum-значения: ConfigurationExtensionCompatibilityMode, DefaultRunMode, ScriptVariant, InterfaceCompatibilityMode | ERROR |
34| 5 | ChildObjects: валидные типы (44), нет дубликатов, каноничный порядок | ERROR/WARN |
35| 6 | DefaultLanguage ссылается на Language в ChildObjects | ERROR |
36| 7 | Файлы языков существуют | WARN |
37| 8 | Каталоги объектов существуют | WARN |
38| 9 | Заимствованные объекты: ObjectBelonging=Adopted, ExtendedConfigurationObject UUID | ERROR/WARN |
39| 10 | Sub-items: Attribute, TabularSection (InternalInfo + вложенные), EnumValue, Form-ссылки | ERROR |
40| 11 | Заимствованные формы: метаданные, Form.xml, Module.bsl, BaseForm version | ERROR/WARN |
41| 12 | Зависимости форм: CommonPicture, StyleItem (с whitelist платформенных), Enum DesignTimeRef | WARN |
42| 13 | TypeLink: human-readable Items.* DataPath (должны быть удалены) | WARN |
43
44Exit code: 0 = OK, 1 = есть ошибки. По умолчанию краткий вывод. `-Detailed` для поштучной детализации.