fix(meta-compile,meta-decompile): не-дефолтный TypeReductionMode измерения и nil в FixedArray

Раундтрип по документам и регистрам УТ (1283 объекта) вскрыл два пробела.

TypeReductionMode измерения РС: декомпилятор значение захватывал, но парсер
измерения в компиляторе не переносил ключ дальше, и любое отклонение от
дефолта молча заменялось на TransformValues. Так терялось третье значение
свойства — DeleteData («Удалять данные»); всего у свойства три режима:
Преобразовывать значения (дефолт), Удалять данные, Запрещать.
Синтетика на матрице платформ: DeleteData принимается и переживает роундтрип
на 8.3.25, 8.3.26 и 8.3.27 — порог тот же, что у самого свойства (2.18).

nil-элемент внутри FixedArray (<v8:Value xsi:nil="true"/>) декомпилировался
пустой строкой, компилятор эмитил xs:string. Теперь это JSON null в обе
стороны. Конструкция не новая — есть уже в дампе 8.3.20.

Спеки: у TypeReductionMode перечислены все три значения с названиями из
конфигуратора; версия появления исправлена с 2.20 на 2.18.

Проверка: УТ tier-1 1283 объекта -> 1280 совпадений (было 1273),
сюита meta-compile 76/76 на обоих портах.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Nick Shirokov
2026-08-01 20:03:28 +03:00
co-authored by Claude Opus 5
parent 75e861da6e
commit 3d5c9e5bee
6 changed files with 36 additions and 4 deletions
+9 -1
View File
@@ -1713,7 +1713,15 @@ XML-элемент: `<WebService>`. Трёхуровневая вложенно
</xr:StandardAttribute>
```
Значения: `TransformValues` (преобразовывать значения) | `Deny` (запретить). У измерений его пишут только регистры сведений.
Свойство «Режим сокращения типа», три значения:
| XML | В конфигураторе |
|-----|-----------------|
| `TransformValues` | Преобразовывать значения (по умолчанию) |
| `DeleteData` | Удалять данные |
| `Deny` | Запрещать |
У измерений его пишут только регистры сведений. `DeleteData` в выгрузках редок (7 измерений на всю УТ 11.5.27, ни одного в БП) и принимается платформами 8.3.25–8.3.27 — тот же порог, что у самого свойства.
Свойство именно новое: платформа 8.3.24 при загрузке молча его отбраковывает («Свойство не входит в состав объекта метаданных»), сообщая при этом об успехе.