mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-07-28 07:31:00 +03:00
fix(xdto-compile,xdto-validate): признак фиксированного значения без самого значения
В модели XDTO fixed — булев признак, а значение лежит в default; в XML-схеме fixed="V" совмещает и признак, и значение. Компилятор оба идиома принимал, но не проверял принятое: зеркало xdto:fixed="true" без default собиралось молча в пакет, который платформа отвергает («Отсутствует фиксированное значение свойства»). Прощающий ввод был сделан наполовину. xdto-validate v1.1 — два ERROR: значение попало в признак (fixed не булев) и признак без значения. Формулировка второго повторяет платформенную дословно, чтобы отказ загрузки и наш вывод читались как одно и то же. xdto-compile v1.1 — то же условие предупреждением на сборке, то есть на шаг раньше db-update, где починить дешевле. Кейсы: оба идиома плюс только default и атрибут (загружается в базу); зеркало без значения — проверка диагностики, из платформенной верификации исключено штатным skipPlatformVerify, пакет невалиден by design. Правило откалибровано корпусом (760 пакетов, оба рантайма): 0 ложных срабатываний, состав предупреждений не изменился. Round-trip остался 760/760 байт-в-байт. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
20d86ae10f
commit
79beba2d1f
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"name": "fixed без значения и значение внутри fixed — платформа такой пакет отвергает",
|
||||
"caseFiles": [
|
||||
"pkg-fixed/XDTOPackages/fixedbad.xml",
|
||||
"pkg-fixed/XDTOPackages/fixedbad/Ext/Package.bin"
|
||||
],
|
||||
"params": { "packagePath": "pkg-fixed/XDTOPackages/fixedbad" },
|
||||
"expectError": true,
|
||||
"expect": {
|
||||
"stdoutContains": [
|
||||
"Отсутствует фиксированное значение свойства 'БезЗначения'",
|
||||
"Свойство \"ЗначениеВПризнаке\": fixed=\"Р\""
|
||||
],
|
||||
"stdoutNotContains": ["Правильное", "НеФиксированное"]
|
||||
},
|
||||
"noSnapshot": "навык только читает — сравнивать нечего, проверка через stdoutContains"
|
||||
}
|
||||
Reference in New Issue
Block a user