Для filter right values с типом dcscor:DesignTimeValue, чьё значение
соответствует ref-pattern (Перечисление.X.Y / Справочник.X.Y / ПланСчетов.X.Y
и др.), compile auto-detect-ит DesignTimeValue из значения. Раньше
decompile всё равно сохранял valueType явно — лишний шум в DSL.
Применено к single-right и multi-right. Эффект на diff нулевой (compile
эмитит то же самое), но decompiled JSON становится компактнее и читабельнее.
DSL расширения (item-level — паттерн object form расширен):
- selection: {field, viewMode}
- order: {field, direction, viewMode} (новая object form)
- structure group: {type:group, viewMode, itemsViewMode}
DSL расширения (block-level на settings):
- selectionViewMode, filterViewMode, orderViewMode
- conditionalAppearanceViewMode
- itemsViewMode (на самих settings)
Compile эмитит viewMode/itemsViewMode только если явно задано в JSON —
это позволяет decompile сохранить точное наличие/отсутствие из XML и
получить bit-perfect round-trip (платформа эмитит эти теги
контекстно — на ABCXYZ-стиле для каждого блока, а в простых отчётах
без пользовательских настроек — не эмитит).
Дополнительно:
- Пустой LocalStringType теперь эмитится как self-closing (как платформа)
- Убран default order/selection=["Auto"] на StructureItemGroup
(раньше compile дефолтил, теперь эмитит только если задано)
В SKILL.md не упоминаем — фича редкая. Полное описание в spec.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Закрывает три gap'a, выявленных при полном прогоне ERP+ACC:
1. DataSetFieldFolder — поле-папка для UI-группировки полей в композиторе
настроек. Только dataPath + title, без valueType/role.
- DSL: object form поля с `folder: true`.
- Compile: при folder=true → <field xsi:type="DataSetFieldFolder">.
- Decompile: распознать xsi:type, эмитить object form.
2. GroupItemAuto — пустой <item xsi:type="GroupItemAuto"/> в groupItems
(auto-grouping, аналогично "Auto" в selection).
- DSL: строка "Auto" в groupFields.
- Compile/decompile: round-trip.
3. Empty <field/> в conditionalAppearance/selection (wildcard — apply
to all). Раньше — SelectionItem: sentinel. Теперь эмитим как "Auto"
(семантический эквивалент через SelectedItemAuto).
Новый тест dataset-folder-and-auto-group (round-trip).
Versions: compile v1.34→v1.35, decompile v0.16→v0.17.
На предыдущем прогоне ERP+ACC: 227 sentinel'ов (218 DataSetFieldFolder
+ 7 GroupItemAuto + 2 SelectionItem). После — 0.