mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-08-29 22:49:41 +03:00
Проверки 16 и 20 выбирали уровень по наличию файла, тогда как платформа судит по составу конфигурации. Из-за этого валидатор ошибался в обе стороны: пропускал ссылку на форму объекта, которого в конфигурации нет (WARN, exit=0 — платформа такую выгрузку не грузит), и ложно отказывал на фрагменте частичной выгрузки, где файла формы нет намеренно. Единое правило: ChildObjects отвечает за существование объекта, наличие файла — только за полноту выгрузки. Нет в составе -> ERROR, в составе есть, а файла нет -> WARN. Уровень для фрагмента остаётся мягким сознательно: один и тот же фрагмент грузится или нет в зависимости от состояния конфигурации БД, которого валидатору не видно. Матрица снята на платформе 8.3.24.1691 (полная и частичная загрузка, семь ситуаций). Прогноз про загрузку убран из текста WARN — там он не гарантирован. Состав читается поиском подстроки в границах секции ChildObjects, без разбора XML: batch-режим порождает процесс на объект, и полная карта оплачивалась бы каждым объектом. Корпусный прогон по acc_8.3.24 и erp_8.3.24 (33 895 объектов): расхождений до/после нет. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
14 lines
928 B
JSON
14 lines
928 B
JSON
{
|
|
"name": "Чужой объект есть в составе конфигурации, но не выгружен — предупреждение, не ошибка",
|
|
"setup": "fixture:catalog-foreign-not-dumped",
|
|
"params": {
|
|
"objectPath": "Catalogs/Товары.xml"
|
|
},
|
|
"noSnapshot": "фикстура статична, meta-validate только читает и печатает — эталон зафиксировал бы саму фикстуру; проверяется stdout",
|
|
"skipPlatformVerify": "фикстура — неполная выгрузка: объект есть в составе, файла нет намеренно; полная загрузка такого дерева невозможна",
|
|
"expect": {
|
|
"stdoutContains": "есть в составе конфигурации, файла объекта в выгрузке нет",
|
|
"stdoutNotContains": "[ERROR]"
|
|
}
|
|
}
|