Files
cc-1c-skills/tests/skills/cases/mxl-decompile/roundtrip-cell-notes.json
T
Nick ShirokovandClaude Opus 5 4005f36cce feat(mxl-compile,mxl-decompile,mxl-validate): примечания к ячейкам
Ключ ячейки note описывает всплывающую подсказку: строкой, объектом
языков или полной формой с оформлением, признаком авторазмера и
геометрией окошка.

Из четырнадцати тегов, которые платформа пишет в примечание, настоящей
информации несут пять. drawingType, pictureSize и id — константы на всём
корпусе. Якорь конца это координаты самой ячейки (1087 примечаний из
1087), якорь начала — 1/1 (1085 из 1087, три исключения в одном макете
берёт раундтрип-ключ anchor). Остаётся текст, стиль, autoSize и четыре
смещения, причём autoSize описывает не наличие геометрии, а пересчёт
размера: при true координаты всё равно записаны и осмысленны.

Стиль примечания — обычная запись палитры; без своего стиля пишем тот,
что даёт Конфигуратор (926 примечаний корпуса из 1087). Формат
примечания добавлен в сбор именованных стилей декомпилятора и в перечень
владельцев формата: иначе стиль подсказки вырезался как неиспользуемый и
ссылка оставалась висячей.

mxl-validate: индекс формата примечания проверяется наравне с ячейкой,
строкой и колонкой.

Стенд СПримечанием собирается байт в байт обоими портами и добавлен в
платформенные фикстуры.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-15 14:47:23 +03:00

37 lines
1.4 KiB
JSON

{
"name": "Roundtrip — примечания к ячейкам",
"preRun": [
{
"script": "mxl-compile/scripts/mxl-compile",
"input": {
"columns": 4,
"textLanguages": ["ru"],
"styles": { "жёлтая-подсказка": { "verticalAlignment": "Top", "backColor": "#FFFAD9" } },
"areas": [
{
"name": "Примечания",
"rows": [
{ "cells": [
{ "col": 1, "text": "Итого", "note": "Сумма без НДС" },
{ "col": 2, "text": "Курс", "note": { "ru": "на дату", "en": "as of date" } },
{ "col": 3, "param": "Скидка", "note": { "text": "не более 20%", "style": "жёлтая-подсказка" } },
{ "col": 4, "note": { "text": "сдвинуто", "autoSize": false,
"box": { "top": 58, "left": -175, "bottom": 362, "right": 478 },
"anchor": { "row": 4, "col": 1 } } }
]}
]
}
]
},
"args": { "-JsonPath": "{inputFile}", "-OutputPath": "Template.xml" },
"cwd": "{workDir}"
}
],
"params": { "templatePath": "Template.xml" },
"args_extra": ["-OutputPath", "{workDir}/back.json"],
"expect": {
"files": ["back.json"],
"stdoutContains": "[OK] Decompiled:"
}
}