mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-07-16 07:45:17 +03:00
feat(meta-validate): проверка существования ссылочных типов (Фаза 1.2, v1.8)
Check 16: все <v8:Type> вида CatalogRef.X / DocumentRef / EnumRef / DefinedType / ChartOf*Ref / BusinessProcessRef / ExchangePlanRef / TaskRef проверяются на наличие объекта в конфигурации (Dir/X.xml или папка Dir/X). WARN-уровень, не error: ложное срабатывание на частичных выгрузках хуже пропуска. Расширения (CFE) пропускаются по маркеру ConfigurationExtensionPurpose — их типы ссылаются на объекты базовой конфигурации, отсутствующие в выгрузке расширения. Дедуп по ref-ключу; маппинг тип→каталог согласован с TYPE_TO_DIR (verify-snapshots). Тесты: valid-reftype-resolves (self-ref, -Detailed, OK) + warn-reftype-missing (WARN, exit 0). meta-validate 18/18 ps1+py. Анти-дрейф OK. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"name": "Ссылочный тип реквизита разрешается в объект конфигурации (Check 16)",
|
||||
"setup": "empty-config",
|
||||
"preRun": [
|
||||
{
|
||||
"script": "meta-compile/scripts/meta-compile",
|
||||
"input": { "type": "Catalog", "name": "ТестСсылка", "attributes": ["Связанный: CatalogRef.ТестСсылка"] },
|
||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
||||
}
|
||||
],
|
||||
"params": { "objectPath": "Catalogs/ТестСсылка" },
|
||||
"args_extra": ["-Detailed"],
|
||||
"expect": {
|
||||
"stdoutContains": "16. Reference types:",
|
||||
"stdoutNotContains": "16. Ссылочный тип"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
{
|
||||
"name": "Валидатор предупреждает о несуществующем ссылочном типе реквизита (Check 16)",
|
||||
"setup": "empty-config",
|
||||
"preRun": [
|
||||
{
|
||||
"script": "meta-compile/scripts/meta-compile",
|
||||
"input": { "type": "Catalog", "name": "ТестСсылкаБитая", "attributes": ["Контрагент: CatalogRef.НетТакогоСправочника"] },
|
||||
"args": { "-JsonPath": "{inputFile}", "-OutputDir": "{workDir}" }
|
||||
}
|
||||
],
|
||||
"params": { "objectPath": "Catalogs/ТестСсылкаБитая" },
|
||||
"expect": {
|
||||
"stdoutContains": "16. Ссылочный тип 'CatalogRef.НетТакогоСправочника'"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user