Gitea #9. Patch 0049 moves inline pictures and OLE objects with their run's w:position. Patches 0050 and 0051 turn EQ fields into Math objects; unreadable fields show their code. Round 3 findings (lowercase \s\do tail, split subscripts, \ai/\di, italics through OMML) fixed and covered by word.rs; no fourth review. Co-Authored-By: Claude <noreply@anthropic.com>
2.5 KiB
FAIL
-
patches/libreoffice/0050-writer-eq-field-parser.patch:327 — [P1] An incomplete final array row silently loses operands. Reproduced with
EQ \a\co2(a,b,c): the generated StarMath has unequal row lengths, the actual MathML contains onlyaandb, and saving DOCX writes only those two operands into OMML. The annotation still containsc, so checking annotation text alone misses the loss. Pad the final row or reject the conversion visibly; test actual rendered/exported formula content. Evidence:.work/r82-r2/edge-probe.log,array_three. -
patches/libreoffice/0050-writer-eq-field-parser.patch:340 — [P1] The parser consumes custom operator switches but silently substitutes an integral. Reproduced with
EQ \i\fc\∑(1,5,x): the resulting formula isint from{"1"} to{"5"} {"x"}, and its MathML operator is∫. The specified summation operator has changed mathematical meaning. Honor the supplied symbol or fail parsing so the original field code remains visible; cover both\fcand\vc. These switches specify the operator character in ECMA-376 Part 4 §14.10.4.6. Evidence:.work/r82-r2/edge-probe.log,operator_sigma. -
patches/libreoffice/0050-writer-eq-field-parser.patch:141 — [P1] Unrecognized bracket characters silently become invisible delimiters. Reproduced with
EQ \b\lc\⌊\rc\⌋(x): import succeeds asleft none {"x"} right none; the actual MathML contains onlyx, losing the floor operation. The character options are defined by ECMA-376 Part 4 §14.10.4.6. Preserve the delimiters or report the command unreadable instead of replacing them withnone, and add a regression. Evidence:.work/r82-r2/edge-probe.log,floor. -
patches/libreoffice/0050-writer-eq-field-parser.patch:194 — [P2] General field switches are imported as visible equation text. Reproduced with
EQ \f(a,b) \* MERGEFORMAT: the fraction acquires the literal suffix* MERGEFORMATin both StarMath and MathML;\* CHARFORMATbehaves likewise. Microsoft documents these as formatting switches, with MERGEFORMAT added by default by the field dialog. Parse general switches separately from equation content and add regressions asserting they do not appear in the formula result. Evidence:.work/r82-r2/probe.log,mergeformatandcharformat.