fix(mxl-compile): у неоформленной ячейки формата нет вовсе

Ячейка без собственного оформления ссылалась на формат по умолчанию. Платформа
в этом случае пишет <f>0</f>, где ноль — не индекс записи, а «формата нет»:
на корпусе так у 170 710 ячеек против 50 635, ссылающихся на умолчание, и
<f>0</f> встречается в 71% макетов.

Подтверждено контролируемым стендом: в макете, где колонкам заданы ширины, а
ячейки ничем не оформлены, платформа пишет ячейкам ноль.

На пилоте верхняя категория row[].cell[].fmt упала с 63 900 до 55 855 фактов,
совпадение строк документа выросло с 16.7% до 17.5%.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Nick Shirokov
2026-08-11 17:32:56 +03:00
co-authored by Claude Opus 5
parent 08503c72e9
commit ccbd488d63
24 changed files with 73 additions and 75 deletions
@@ -57,7 +57,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -68,7 +68,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -79,7 +79,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -63,7 +63,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -17,7 +17,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -17,7 +17,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -28,7 +28,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -39,7 +39,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -55,7 +55,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -66,7 +66,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -77,7 +77,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -94,7 +94,7 @@
<c>
<i>1</i>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -105,7 +105,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -121,7 +121,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -133,7 +133,7 @@
<c>
<i>2</i>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -17,7 +17,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -28,7 +28,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -39,7 +39,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -17,7 +17,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -17,7 +17,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -28,7 +28,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -39,7 +39,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -50,7 +50,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -17,7 +17,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -17,7 +17,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -28,7 +28,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -40,7 +40,7 @@
<c>
<i>3</i>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -57,7 +57,7 @@
<c>
<i>1</i>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -68,7 +68,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -17,7 +17,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -28,7 +28,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -39,7 +39,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -50,7 +50,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -17,7 +17,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -28,7 +28,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -39,7 +39,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -17,7 +17,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -32,7 +32,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -17,7 +17,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -28,7 +28,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -17,7 +17,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -28,7 +28,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -39,7 +39,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -55,7 +55,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -17,7 +17,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -28,7 +28,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -17,7 +17,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -17,7 +17,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -32,7 +32,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -17,7 +17,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -28,7 +28,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -39,7 +39,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -28,7 +28,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -17,7 +17,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -28,7 +28,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -39,7 +39,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -17,7 +17,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -44,7 +44,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -55,7 +55,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -66,7 +66,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -17,7 +17,7 @@
<row>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -28,7 +28,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>
@@ -39,7 +39,7 @@
</c>
<c>
<c>
<f>1</f>
<f>0</f>
<tl>
<v8:item>
<v8:lang>ru</v8:lang>