Files
ElyOffice/tasks/reviews/R4.2-r3.md
T

14 lines
4.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
FAIL
1. [P2] `../Ely-GPUI-Components/src/documents/tree/mod.rs:125` — HTML 关闭标签只匹配 `tag: Some(...)`,认不到 Markdown 生成的元素,仍不符合本轮明确采用的浏览器修复语义。`a *inside</em> outside* end` 实测将 `inside outside` 全部设为斜体(`2..16`);CommonMark 输出经 HTML5 解析后只有 `inside` 是斜体(`2..8`)。`**inside</strong> outside**` 同样错误。应让原始关闭标签也能结束 Markdown 生成的同名元素,并正确处理随后到来的 Markdown 结束事件;补这两种交叉测试。失败断言在 `.work/R4.2-r3/confirmed-probes.log`,独立解析结果在 `html-oracle.log`;规则见 [HTML5 树构造](https://html.spec.whatwg.org/multipage/parsing.html#parsing-main-inbody)。
2. [P2] `../Ely-GPUI-Components/src/documents/tree/mod.rs:372` — 退出 Markdown 容器时无区别地保留全部 HTML 标签,把浏览器不会重建的 `mark`、`kbd`、`del` 也延续到了容器外。`a **bold <mark>marked** outside</mark> end` 实测连 `outside` 都被高亮;浏览器在 `</strong>` 处关闭 `mark`,`outside` 应无高亮。换成 `kbd` 或 `del`,代码底色或删除线也错误延伸。应区分 HTML5 的活动格式元素与普通元素,按实际关闭与重建规则计算范围;补不同类别标签的交叉测试。`mark`、`kbd` 的失败断言及 `del` 的独立对照见 `.work/R4.2-r3/confirmed-probes.log`、`html-oracle.log`;规则见 [HTML5 活动格式元素](https://html.spec.whatwg.org/multipage/parsing.html#the-list-of-active-formatting-elements)。
3. [P2] `../Ely-GPUI-Components/src/documents/tree/mod.rs:139` — 新的 `<a>` 直接入栈,没有按 HTML5 结束已打开的锚点,产生重叠链接并让后文仍可点击。`[one <a href='/inner'>two</a> three](/outer)` 实测外链范围为 `0..13`,内链为 `4..7`;浏览器及 GitHub 实际输出仅让 `one ` 链到 `/outer`(`0..4`)、`two` 链到 `/inner`,` three` 不属于链接。应在新锚点开始时关闭已有锚点,包括 Markdown 链接,并断言完整链接范围与目标。失败及两套对照在 `.work/R4.2-r3/confirmed-probes.log`、`html-oracle.log`、`github-oracle.log`;规则见 [HTML5 锚点处理](https://html.spec.whatwg.org/multipage/parsing.html#parsing-main-inbody)。
4. [P2] `../Ely-GPUI-Components/src/documents/tree/mod.rs:310` — 表情替换只避开自动链接和 Markdown 代码节点,未避开 HTML `code` 内的文字。`a <code>:smile:</code> b` 实测显示 `a 😄 b`;GitHub 官方 Markdown API 的实际结果保留代码中的 `:smile:`。应根据当前 HTML `code` 上下文保留代码文字,覆盖代码内与代码外同一短码的测试;不能仅按共用的 `Style::Code` 判断,因为 `kbd` 内仍应转换。失败断言与 [GitHub Markdown API](https://docs.github.com/en/rest/markdown/markdown?apiVersion=2022-11-28) 的原始响应在 `.work/R4.2-r3/confirmed-probes.log`、`github-oracle.log`。
5. [P2] `../Ely-GPUI-Components/src/documents/tree/html.rs:215` — 仍用源码是否字面写出短码来决定转换,与最新「读法不同随 GitHub」决定冲突。`Show \:smile: now.`、`Show &#58;smile: now.`、`Show :sm&#105;le: now.` 在当前实现中保留 `:smile:`;GitHub 官方 Markdown API(`mode=gfm`)将三种写法都显示为 😄。现有转义测试反而固定了旧的 Typora 行为。应按当前决定对解码后的普通正文识别短码,保留代码等实际上下文的排除规则,并调整对应回归断言。失败及 [GitHub Markdown API](https://docs.github.com/en/rest/markdown/markdown?apiVersion=2022-11-28) 原始响应见 `.work/R4.2-r3/confirmed-probes.log`、`github-oracle.log`。
清理例外:自动审批审查拒绝了 PowerShell 删除暂存副本的命令,仅返回 `blocked by policy`。已用 Cargo 定向清理两个独立构建目录,共释放约 5.3 GiB;仍留有项目内 `.work/R4.2-r3/source/`、`parser/`、`html-oracle/`、`tmp/`、`source.tar`。完整库测试 1882 项、原生与 WebAssembly Clippy、格式及画廊元数据检查通过;上一轮六项的逐项核验与本轮证据在 `.work/R4.2-r3/validation.log`。