mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-07-13 22:35:16 +03:00
fb67b1b80d
multilang-base/Template.xml содержал <editFormat xsi:type="v8:LocalStringType"> на <field xsi:type="DataSetFieldField">, что нелегально по XDTO-схеме DCS — 1С Designer падал с "Исключение XDTO" при загрузке через LoadExternalDataProcessorOrReportFromFiles. Snapshot-тесты этого не ловили (только byte-equality), а platform-verify (tests/skills/verify-snapshots.mjs) ронялся на трёх кейсах с этой фикстурой. Заменил <editFormat> на реалистичный <appearance> блок с вложенным <dcscor:item xsi:type="dcsset:SettingsParameterValue"> и многоязычным <dcscor:value> (ru + en) — структура взята из типовой ERP-выгрузки. Это даёт более правильный test для preserve-unknown-children: <appearance> содержит вложенный multi-lang xsi:type-узел, который точно прошёл бы через DOM round-trip с искажениями, если бы _unknownChildren не работал. preserve-unknown-children-modify-field: shorthand изменён с "@ignoreNullsInGroups" на "@dimension" (no-op по составу role, но триггерит rebuild). Прежний @ignoreNullsInGroups без @dimension давал комбинацию, которую Designer отвергает (ignoreNullsInGroups валиден только в контексте resource-роли). 39/39 snapshot suite (PS+PY) + 39/39 platform verify через erf-build → Designer. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
14 lines
466 B
JSON
14 lines
466 B
JSON
{
|
|
"name": "modify-field сохраняет неизвестные дочерние элементы (<appearance> со всеми вложениями) — структура из ERP",
|
|
"setup": "fixture:multilang-base",
|
|
"params": {
|
|
"templatePath": "Template.xml",
|
|
"operation": "modify-field",
|
|
"value": "Контрагент @dimension"
|
|
},
|
|
"expect": {
|
|
"stdoutContains": "Field \"Контрагент\" modified"
|
|
},
|
|
"idempotent": true
|
|
}
|