Files
ElyOffice/tasks/reviews/R2.12-r2.md
T

10 lines
2.9 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
../Ely-GPUI-Components/src/git/rows.rs:128 — `CMakeLists.txt` 先命中扩展名分支,随后因 `txt` 属于 PROSE 返回 None;131 行为它设置的 `#` 分支永远到不了,CMake 主文件的语法着色整体丢失。复现:旧内容为 `# return 42\n`,新内容追加 `value = 1\n`,分别以 `CMakeLists.txt` 和 `build.cmake` 打开 DiffViewer。前者的注释使用正文色,后者使用注释色;原生窗口的行内、并排布局均复现,同一注释区域分别相差 896、1792 个像素。证据:/tmp/R2.12-r2-language.log、/tmp/R2.12-r2-render.log。修复方向:先识别特殊文件名,再执行扩展名分类,并覆盖 `CMakeLists.txt` 的实际着色。
../Ely-GPUI-Components/src/git/rows.rs:145 — 文件类型只被转换成注释起始符,实际着色仍共用 forms/code.rs 的跨语言关键字与常量表,上一轮要求的语言着色修复仍有遗漏。复现:`script.py` 中的有效代码 `assert ready and True` 将 `assert`、`and` 着为 variable,将 `True` 着为 type;`config.toml` 中有效的裸键 `return = 42` 将 `return` 着为 keyword。定向探针记录了实际 HighlightStyle,原生窗口两种布局均显示对应错误颜色。证据:/tmp/R2.12-r2-language.log、/tmp/R2.12-r2-native.log。修复方向:将语言类型传到着色层,按该语言识别关键字、常量及配置键,并加入这些输入的颜色回归断言。
../Ely-GPUI-Components/src/forms/code.rs:69 — 注释判定只检查当前位置是否以起始符开头,遗漏 Shell 的词边界条件,将普通参数的后半段吞成注释。复现:`run.sh` 内容为 `echo foo#bar 42`;实际 Bash 输出 `foo#bar 42`,DiffViewer 却将 `#bar 42` 整段着为 comment,原生窗口行内、并排布局均复现。证据:/tmp/R2.12-r2-language.log、/tmp/R2.12-r2-native.log。修复方向:按语言处理注释起始条件,Shell 的 `#` 在词中保持参数内容,补充真实注释和词中 `#` 的颜色断言。
../Ely-GPUI-Components/src/git/rows.rs:179 — 新测试直接调用 colors_of,上一轮指出的渲染接线回归覆盖仍然缺失。复现:在隔离副本中将 viewer.rs:197 改为 `let path: SharedString = "forced.rs".into();`,组件库 `cargo test --lib --features test-support --offline --locked git::` 仍为 35 项全过;实际 DiffViewer 的 Markdown 在行内、并排布局重新出现代码颜色,文本区域分别改变 890、1780 个像素,Python/TOML 行注释也重新出现关键字与数字颜色。证据:/tmp/R2.12-r2-mutation-test.log、/tmp/R2.12-r2-render.log。基线 ElyTree 检查、构建、111 项测试及组件库全量 1726 项测试均通过;探针副本与独立 target 已删除,两个原始仓库的源码散列与状态核对通过。修复方向:增加经过实际 DiffViewer 两种布局的文本颜色断言,使渲染器收到错误文件类型的突变触发失败。