Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
3.2 KiB
FAIL
-
../Ely-GPUI-Components/src/documents/document/place.rs:202— [P2] 同名标题的出现序号不能标识原来按下的标题。可视模式打开before\n\n[toc]\n\n# A\n\ntext\n\n## B\n,将首块改成## B,重绘后 Ctrl+按原目录中的 B:写回后实际跳到新 B(第 1 行),而不是按下的原 B(第 9 行)。Split 模式在等待解析时插入同名标题也会跳错。两个 GPUI 探针均失败,且按下前、按下与松开之间均有绘制;普通写回对照通过。应通过实际编辑映射原目标的位置或身份,不能仅按标题文字、层级与旧序号重选;补插入、删除同名标题的回归测试。证据:.work/R4.3-r2-review/toc-tests.log、toc-probe-source.log。 -
../Ely-GPUI-Components/src/documents/tree/blocks.rs:178— [P2] 新增的空白结算循环每次遍历全部未关闭元素,重新引入平方复杂度。输入为<div>加重复 N 次的<div>a再加</div>;直接编入实际解析模块的 release 探针中,N=8000、16000、32000、64000 分别约 10、43、217、989 ms;980011 字节的输入耗时 7.07 秒,父提交同输入仅 34 ms。新增增长测试没有带文字、空白与不断增长的栈,因而仍通过。应只更新当前位置确实需要移位的元素,避免每次空白结算扫描全栈,并用此类输入检验增长率。证据:.work/R4.3-r2-review/growth.log、base-growth.log、growth-1mb.log、base-growth-1mb.log。 -
../Ely-GPUI-Components/src/documents/tree/mod.rs:159— [P2] 被过滤标签的原文进入push_text后仍会替换表情短码,违反本轮“照原文显示”的规则。a <script title=":smile:">x</script> c在 GitHub API 中保留:smile:,本实现却显示<script title="😄">;HTML 块里的run.words(written)也有同一问题。应将过滤标签作为不进行表情替换的字面文本输出,补行内与块内属性值的回归测试。GitHub 对照与失败断言见.work/R4.3-r2-review/github-probes-extra.log、parser-tests.log。 -
../Ely-GPUI-Components/src/documents/tree/blocks.rs:119— [P2] 标签过滤使用被截短的名称,误把其他标签当成九种过滤标签。html::tag遇到冒号或感叹号便停止读取名称,所以<div>a<script:custom>x</script:custom>b<script!>y</script!>c</div>实际显示这些标签原文;GitHub API 输出为<div>axbyc</div>,符合其余标签只显示文字的要求。应按完整标签名及 GFM 的合法名称边界判断是否过滤,不能接受名称前缀;补这些反例。证据:.work/R4.3-r2-review/github-probes.log、parser-tests.log。 -
../Ely-GPUI-Components/src/documents/tree/blocks.rs:125— [P2] 块开始标签只压栈,没有执行 HTML 的隐式闭合,内部格式仍会越出容器。<ul><li><mark>x<li>y</ul>z将x\ny都标记为 Mark,GitHub 只标记 x;<div><p><mark>x<div>y</div>z</div>则把x\ny\nz全部标记,GitHub 同样只标记 x。kbd 也会跨过新的 p。应在打开 li、p 或会结束 p 的块元素时,先按 HTML 规则结束前一容器及其内部元素,保留必要的格式重开规则,并补隐式闭合测试。GitHub 输出与样式范围断言见.work/R4.3-r2-review/github-probes.log、parser-tests.log。