Add report template codec roadmap
This commit is contained in:
@@ -61,6 +61,21 @@ parameters, layouts, nested schemas и settings. Макет оформления
|
|||||||
контракт: регионы, шрифты, цвета, границы и правила оформления; его нельзя
|
контракт: регионы, шрифты, цвета, границы и правила оформления; его нельзя
|
||||||
обрабатывать методом `scd.patch`.
|
обрабатывать методом `scd.patch`.
|
||||||
|
|
||||||
|
## Долгосрочный план и критерии готовности
|
||||||
|
|
||||||
|
| Этап | Результат | Критерий перехода |
|
||||||
|
| --- | --- | --- |
|
||||||
|
| 1. Инвентарь | Реестр `Report → Template` с identity, container, SHA-1 и состоянием active/saved | У каждого fixture есть подтверждённая цепочка owner → template → payload, без имени формы в качестве подстановки. |
|
||||||
|
| 2. СКД read | Lossless контейнерный decoder с XML-путями для datasets, links, calculated fields, resources, parameters, layouts, nested schemas и settings | XML корректно читается на нескольких живых схемах; неизвестные XML узлы сохраняются в raw-carrier и не теряются. |
|
||||||
|
| 3. СКД write | Минимальный scalar writer (`dataset.query`, expression) и resolver `Report + Template` | `plan`, точная проверка SHA-1 и `apply_and_rollback` проходят на выделенной fixture; активность подтверждает человек в Configurator. |
|
||||||
|
| 4. Оформление СКД | Отдельный decoder/encoder XML оформления: regions, style rules, fonts, colors, borders, indents | Не используется путь `scd.patch`; один контролируемый before/after fixture доказывает carrier и round-trip. |
|
||||||
|
| 5. Прочие типы | Отдельная карточка codec-а на каждый из десяти platform types | Для Spreadsheet/Text/HTML/Geo/Graphical доказан собственный round-trip или выставлен explicit `unsupported`; Binary/Active/AddIn остаются opaque до отдельного доказательства. |
|
||||||
|
| 6. Report aggregate | API `report.inspect` возвращает identity, modules/forms/templates, main-SCD relation, overlay state и capability по каждому компоненту | Отчёт без подтверждённой СКД возвращает `unresolved`, а не выбирает форму или первый поток. |
|
||||||
|
| 7. Регрессия и выпуск | Fixture manifest, hash-baselines, unit tests, live SQL smoke и документация публичного контракта | Каждый write codec проходит план → rollback → SQL readback; ни один результат не заявляет применение в Configurator без ручного подтверждения. |
|
||||||
|
|
||||||
|
Работа выполняется последовательно по этому реестру: новый тип не получает
|
||||||
|
write endpoint до собственной fixture и доказанного обратного carrier codec-а.
|
||||||
|
|
||||||
## Ближайшая реализация
|
## Ближайшая реализация
|
||||||
|
|
||||||
Первый кодовый результат — resolver, который умеет различать форму и макет,
|
Первый кодовый результат — resolver, который умеет различать форму и макет,
|
||||||
|
|||||||
Reference in New Issue
Block a user