Reviews for P-14

This commit is contained in:
ZacharyZhang-NY committed 2026-10-10 00:29:44 -04:00
1 parent ca4a32f2fa
commit baba4593c0
3 files changed
+7

No files matched your search

+3
View File
@@ -0,0 +1,3 @@
FAIL
crates/ely-pdf-engine/shim/ely_text.c:320 — 字体名改用 `ely_json_string` 后,非 UTF-8 名称中的高位字节被原样写入 JSON,导致整页文字块读取失败,违反 PRD PDF-03。复现:单页 PDF 使用字体 `<< /Type /Font /Subtype /Type1 /BaseFont /Review#E9Font /Encoding /WinAnsiEncoding >>`,内容为 `BT /F1 24 Tf 72 700 Td (ABC) Tj ET`;真实 worker 的 `text` 正常返回 `ABC`,当前 `text_blocks` 报 `invalid unicode code point at line 1 column 71`。同一探针在旧 `%q` 实现下通过,返回文字 `ABC`、字体 `Review�Font`、`editable=true`。`ely_json_string` 按字节写出字体名中的 `0xE9`,使这类原本可编辑的页面无法取得文字块。修复方向:保证字体名经过明确的编码处理后产生有效 UTF-8,再进行包含控制字符的 JSON 转义;添加上述字体名称的真实 worker 回归测试。复现源码与前后日志:`/tmp/ely-p14-probe-source.log`、`/tmp/ely-p14-font-before.log`、`/tmp/ely-p14-probes.log`。
+3
View File
@@ -0,0 +1,3 @@
FAIL
crates/ely-pdf-engine/shim/ely_annot.c:26 — `fz_chartorune` 会接受 U+D800–U+DFFF,`fz_runetochar` 又将其原样编码,故共享 JSON 写入函数仍会输出非法 UTF-8,违反 PRD PDF-03。具体复现:单页 PDF 的字体为 `<< /Type /Font /Subtype /Type1 /BaseFont /Review#ED#A0#BD#ED#B8#80Font /Encoding /WinAnsiEncoding >>`,内容为 `BT /F1 24 Tf 72 700 Td (ABC) Tj ET`。真实 worker 的 `text` 返回 `ABC`,`text_blocks` 报 `invalid unicode code point at line 1 column 76`,整页文字块无法读取;隔离副本中只将字体输出恢复为原 `%q` 时,同一探针通过并返回 `Review😀Font`。修复方向:编码前校验 Unicode 标量,将代理码点等非法序列规范化为有效 Unicode,并增加上述多字节异常字体名的 worker 回归测试。上一轮 `/Review#E9Font` 已确认修复,旧按字节写法的变异测试会使新增测试失败;当前引擎 117 项测试通过,恢复源码并重建后原有 5 项字体测试通过,上述新增探针仍失败。证据:`/tmp/ely-p14-r2-probes.log`、`/tmp/ely-p14-r2-original-font-writer.log`、`/tmp/ely-p14-r2-byte-mutant.log`、`/tmp/ely-p14-r2-restored.log`、`/tmp/ely-p14-r2-reconfirmed.log`、`/tmp/ely-p14-r2-probe-source.log`。探针副本及其独立构建目录已删除。
+1
View File
@@ -0,0 +1 @@
PASS