1.7 KiB
FAIL
crates/ely-lok/src/worker/input.rs:180 — HTML 仅验证 UTF-8(:161),随后以撤销深度增加判定导入成功;内嵌图片解码失败仍返回成功,并丢失原选区,违反 LOK-06 与失败保留输入要求。场景:固定引擎加载正文为 Hello 世界 的 FODT,执行 .uno:SelectAll,再粘贴 MIME text/html、载荷 <html><body><img src="data:image/png;base64,dGhpcyBpcyBub3QgYSBwbmc="></body></html>(图片数据为 this is not a png)。worker 回复 OK,保存后的段落为 [""]、<draw:image 数量为 0,原选区消失;将同一 HTML 的图片数据换成有效 PNG,导入后图片数量为 1。隔离回归的失败回传与正文保留断言失败。修复方向:验证 HTML 中实际导入的载荷与内核导入结果,对失败执行完整回滚并恢复选区;补充有选区时损坏 HTML 内嵌图片的回归。
crates/ely-lok/src/worker/input.rs:178 — 使用 UndoCount 的长度差判断成功及计算回滚步数,在撤销历史达到容量后将成功粘贴判成失败,回滚循环执行 0 次,文档已被修改。场景:固定引擎加载 Hello 世界,在正文开头连续粘贴 100 次 MIME text/plain;charset=utf-8、载荷依次为 paste1 至 paste100 ,均成功;第 101 次粘贴 paste101 返回 the engine did not paste text/plain;charset=utf-8。保存正文已包含 paste101 ,日志为 failed, 0 steps undone;两个独立 worker 均复现,隔离回归的有效粘贴成功断言失败。修复方向:按实际操作结果确认粘贴,以能识别历史容量变化的事务边界记录回滚范围;补充撤销历史满时的粘贴成功及失败回滚回归。