Files
ElyOffice/tasks/reviews/C13.3-r1.md
T

18 lines
4.8 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
apps/ely-tree/src/tree.rs:107 — 提交草稿与 amend 状态由所有仓库共用,标签切换直接改变 active(view.rs:60),随后 committing.rs:80 把共用状态用于当前仓库。场景:在 A 勾选修改最近提交,等待读完,再切到干净的 B 点击提交;隔离窗口探针确认 B 的 HEAD 被改写,提交信息变成 A 的信息。真窗口还确认 A 的迟到读取会填进 B 的 Summary。违反 TREE-05 的提交对象一致性。修复方向:按仓库保存提交框、草稿与 amend 目标,切换时恢复对应状态,并核对读取所属仓库;补充双仓库 amend 回归。
apps/ely-tree/src/committing.rs:58 — amend 读取缺少请求序号与取消校验,每次成功回调都会填入信息并设 amend=true。场景:最近提交读取较慢时连续点击两次勾选框,放行第一次读取后取消勾选,再放行第二次读取;真窗口 AX 从取消后的 Commit to master 变回 Amend master,Summary 再次成为 A commit。隔离探针 set_amend(true)→set_amend(false) 同样被迟到回复重新开启。修复方向:保存发起时的草稿,为读取分配序号,取消时使待处理请求失效,回调核对当前请求与用户选择;测试重复点击和取消期间的迟到回复。
apps/ely-tree/src/work.rs:243 — 提交完成调用 committed(),committing.rs:88 无条件清空当前提交框,丢失提交期间新增的输入,也会清空用户切换到另一仓库后输入的草稿。场景:提交信息为 submitted,提交尚在执行时把摘要改为 next draft;隔离窗口探针确认 Git 保存 submitted,完成后摘要却成为空串。修复方向:提交请求携带所属仓库和草稿修订,只清理此次已提交且仍保持同一修订的输入;补充慢 hook 期间继续键入及切换仓库的测试。
apps/ely-tree/src/look.rs:186 — Blame 回调仅比较路径,文件历史回调(75)同样只比较路径,文件历史差异回调(141)只增加列表下标校验,均遗漏仓库与读取实例。场景:延迟 A/clean.txt 的读取,切到 B 并打开同名文件,先显示 B 的结果再放行 A;真实 Git、真窗口 AX 确认 Blame 的 B commit 被 A commit 替换,文件历史也从 B commit 变成 A commit。两个隔离窗口探针分别复现。违反 agents.md:181 声明的仓库、提交与文件核对。修复方向:三个回调均核对仓库和面板实例序号,差异读取再核对提交身份;关闭、重开或换仓库时使旧请求失效,增加迟到结果回归。
apps/ely-tree/src/work.rs:85 — commit -F - 沿用 commit.cleanup,用户配置 strip 时会删掉提交说明中以 # 开头的正文,与 agents.md:181 的保留承诺冲突。场景:设置 commit.cleanup=strip,输入 probe\n\n# required body 并提交;随附 Git 2.56.0 的隔离探针读回的信息只有 probe。原有提交测试只覆盖默认清理设置。修复方向:明确采用保留正文 # 行的 cleanup 模式,并覆盖用户已配置 strip 的提交与 amend。
apps/ely-tree/src/pane.rs:253 — 历史提交的文件差异走 view_only(),其 headless() 路径提供的操作缺少文件历史和 Blame;这两个功能的唯一入口位于改动文件的头部(117)。场景:打开只有已提交 clean.txt 的干净仓库,在 History 选提交、再选 clean.txt;真窗口截图与 AX 确认文件差异已显示,所有菜单和该文件界面均缺少 File History / Blame,用户须先修改文件才能访问 TREE-06 功能。修复方向:在已有提交文件列表或差异中接入文件历史和适用的 Blame 操作,覆盖干净仓库的实际入口测试。
apps/ely-tree/src/hist_pane.rs:70 — 提交详情的 DescriptionList 和文本节点缺少 AX 文本语义,作者、完整提交号、签名、引用与说明落不到辅助技术;组件 src/git/commits.rs:115 的引用标签也只参与绘制。场景:真窗口选择 Native history fixture,再选择 clean.txt;截图显示 Review <review@example.test>、完整提交号、Not signed、HEAD → master,AX 树仅包含提交摘要与 clean.txt,以上字段均缺失。违反 UX-12,也与 agents.md:181 声明的 AX 提交详情和引用验证冲突。修复方向:给详情与引用提供对应的名称、角色、文本和状态,使用真实 AX 对具体字段值断言;当前 ElyTree 43 项与组件 Git 27 项测试全部通过,未覆盖这些缺失。
../Ely-GPUI-Components/src/git/blame.rs:68 — 范围内注释超过十词:此处为 40 词,blame.rs:17、27、39、80 分别为 21、12、18、11 词;commits.rs:17、30、188 分别为 18、20、26 词;changes.rs:19、40、62、101、127、333、338 分别为 14、11、35、12、13、12、30 词。按空白分词的源码检查直接复现,违反本轮明确要求的单行十词上限。修复方向:压缩这些注释至十词以内,保留必要说明。