mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-08-14 15:33:20 +03:00
fix(mxl-compile): не эмитить fillType=Text, UUID для идентификатора раскладки
Две правки по корпусу и по 1С-сертификации. fillType=Text платформа практически не пишет: на выборке корпуса 344 981 текстовая ячейка из 348 023 (99,1%) ссылается на формат БЕЗ fillType — наличие <tl> и так означает текст. Parameter и Template платформа пишет, их оставляем. Правило то же, что и везде: эмитим то, что эмитит платформа, а не то, что верно в рантайме. Идентификатор колоночной раскладки платформа хранит как UUID и другой не принимает — макет с <id>узкая</id> она отвергала целиком. Имя, похожее на UUID (то есть пришедшее декомпиляцией), проходит насквозь, иначе поехал бы раундтрип; читаемое имя автора превращается в UUID ДЕТЕРМИНИРОВАННО, из хэша имени, чтобы повторная компиляция давала тот же файл. Оба порта дают одинаковый хэш. Дефект с идентификатором нашла 1С-сертификация: ни юнит-кейсы, ни раундтрип по корпусу его не видели — там идентификаторы приходят из исходных макетов и уже являются UUID. Дрейф 33 снэпшотов разобран построчно, посторонних строк нет: 116 сменившихся индексов формата, 49 удалённых fillType, 43 перестановки свойств внутри палитры, 16 границ <format> (палитра стала короче). Проверено: тесты 53/53 на обоих рантаймах, verify-snapshots 23/23. Замечание на будущее: на корпусе эта правка снимает лишь 170 расхождений из 64 865 в категории формата ячейки. Основная причина другая — платформа даёт неоформленной ячейке ссылку на формат по умолчанию, а компилятор заводит ей собственный формат с <font>. Это отдельный заход, он сдвинет снэпшоты повторно. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
8302b17814
commit
cbe7abdcbb
@@ -30,7 +30,7 @@
|
||||
<c>
|
||||
<i>0</i>
|
||||
<c>
|
||||
<f>4</f>
|
||||
<f>3</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -42,7 +42,7 @@
|
||||
<c>
|
||||
<i>1</i>
|
||||
<c>
|
||||
<f>4</f>
|
||||
<f>3</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -54,7 +54,7 @@
|
||||
<c>
|
||||
<i>3</i>
|
||||
<c>
|
||||
<f>4</f>
|
||||
<f>3</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -71,7 +71,7 @@
|
||||
<c>
|
||||
<i>1</i>
|
||||
<c>
|
||||
<f>6</f>
|
||||
<f>4</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -83,7 +83,7 @@
|
||||
<c>
|
||||
<i>2</i>
|
||||
<c>
|
||||
<f>6</f>
|
||||
<f>4</f>
|
||||
<tl>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
@@ -100,28 +100,28 @@
|
||||
<c>
|
||||
<i>0</i>
|
||||
<c>
|
||||
<f>7</f>
|
||||
<f>5</f>
|
||||
<parameter>Номер</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<i>1</i>
|
||||
<c>
|
||||
<f>7</f>
|
||||
<f>5</f>
|
||||
<parameter>Имя</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<i>2</i>
|
||||
<c>
|
||||
<f>7</f>
|
||||
<f>5</f>
|
||||
<parameter>Код</parameter>
|
||||
</c>
|
||||
</c>
|
||||
<c>
|
||||
<i>3</i>
|
||||
<c>
|
||||
<f>7</f>
|
||||
<f>5</f>
|
||||
<parameter>Сумма</parameter>
|
||||
</c>
|
||||
</c>
|
||||
@@ -208,15 +208,6 @@
|
||||
<bottomBorder>0</bottomBorder>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
</format>
|
||||
<format>
|
||||
<font>1</font>
|
||||
<leftBorder>0</leftBorder>
|
||||
<topBorder>0</topBorder>
|
||||
<rightBorder>0</rightBorder>
|
||||
<bottomBorder>0</bottomBorder>
|
||||
<horizontalAlignment>Center</horizontalAlignment>
|
||||
<fillType>Text</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<leftBorder>0</leftBorder>
|
||||
@@ -224,14 +215,6 @@
|
||||
<rightBorder>0</rightBorder>
|
||||
<bottomBorder>0</bottomBorder>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<leftBorder>0</leftBorder>
|
||||
<topBorder>0</topBorder>
|
||||
<rightBorder>0</rightBorder>
|
||||
<bottomBorder>0</bottomBorder>
|
||||
<fillType>Text</fillType>
|
||||
</format>
|
||||
<format>
|
||||
<font>0</font>
|
||||
<leftBorder>0</leftBorder>
|
||||
|
||||
Reference in New Issue
Block a user