Files
ElyOffice/tasks/reviews/C09.5-r3.md
T

2.0 KiB

FAIL

apps/ely-table/src/text.rs:158 — 预览与列类型推断使用的 CSV 解析语义与实际导入的 Calc 语义存在差异,导致确认过的内容在导入时改变。实测打开 UTF-8 文件 Id,Note\n "00123",x\n,预览第二行是 [" \"00123\"", "x"],第一列判为 Standard;提交后 A2 实际为 123,前导零丢失,临时应用回归 r3_probe_code_quote_after_space 断言失败。普通空行同样存在差异:Id\n\n00123\n 的预览省略空行,内核保留空行。违反 TABLE-12 的导入前可检查性与编号保留要求。修复方向:使预览、整文件类型推断与内核实际导入采用一致的字段和记录解析规则;无法保证一致的输入显式阻止,并加入引号前空格及空记录的应用回归。

apps/ely-table/src/text.rs:180 — 编号识别只移除加号,负号使后续纯数字判定失败,因此负号开头的超长编号和带前导零编号始终默认 Standard。实测导入 Id\n-12345678901234567890\n,预览保留原字符串,提交后 A2 变为 -1.23456789012346E+019,临时应用回归 r3_probe_code_signed_long_number 断言失败。违反 TABLE-12、§9.3 的长编号保留与禁止自动科学计数法转换要求,以及 agents.md 的超过 15 位数字列默认文本约定。修复方向:按数字主体检查符号、前导零与位数,对会损失编号的列推断为 Text;加入负号长编号与负号前导零的实际导入回归。

patches/libreoffice/0021-lok-calc-page-setup-protection.patch:201 — 新增 lcl_PutSpan 时把原有透视表函数的注释留在插入点,补丁应用后形成两行相邻 ///,且第一行把该辅助函数描述为透视表。按补丁新侧含上下文重建注释检查可直接复现,违反 agents.md 的注释一行规则;现有 comments.py 只匹配新增行,漏过这处结果源码中的连续注释。修复方向:将透视表说明移回 lcl_PivotTable 前,让每个函数保持独立的一行说明,并按补丁应用后的上下文核验注释规则。