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

14 lines
3.7 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/remotes.rs:110:强制推送计划只固定远端租约,源仍是执行时的分支引用,实际覆盖范围可超出确认内容,违反 PRD §13.3。复现:本地与远端 `main` 都在 `base -> keep-me`,读取计划得到 `lost=[]`;确认前从终端把本地 `main` 重置到 `base`,再执行原计划。随附 Git 实测推送成功,远端分支退回 `base`,确认框遗漏了被移除的 `keep-me`。修复方向:记录源提交,以固定源提交计算覆盖清单;在写队列执行前核对计划所属分支与源提交,变化后重新预览、确认,推送使用已确认的源提交。增加确认期间本地引用变化的测试。
apps/ely-tree/src/places.rs:273:储藏、远程与工作树表单执行时使用当前活动仓库,表单状态缺少发起仓库身份;`asks_places.rs:131` 的推送远程及上游选择也沿用当前仓库。窗口探针复现:在 A 发起 B 的异步打开,随后立即打开 A 的储藏对话框并填入 `for A`;B 打开完成后仍显示原对话框,提交后 A 的储藏数为 0,B 为 1,B 的改动被收走。修复方向:表单、选择和工作树路径选择回调携带发起仓库 ID,通过该 ID 入队;所属仓库关闭时使请求失效。增加异步打开其他仓库期间提交这些对话框的测试。
apps/ely-tree/src/running.rs:58:按冒号前缀合并所有 stderr 行,会删掉独立的错误与 hook 说明,违反 PRD §13.3 的完整失败输出要求,也与 agents.md C13.5 的输出声明冲突。复现:真实本地远端的 `pre-receive` hook 依次输出 `POLICY_A required`、`POLICY_B required` 并退出 1;随附 Git 推送的实时输出包含两行,`follow` 返回的错误仅保留 `remote: POLICY_B required`,`POLICY_A` 被删除。修复方向:根据实际 CR 重写与 LF 换行保留记录,独立换行的诊断全部保留;增加真实 hook 连续同前缀报错的断言。
apps/ely-tree/src/network.rs:211:首次推送的远程名称前缺少 `--`,`remotes.rs:109` 的强制推送同样如此,合法名称被解析成选项;agents.md C13.5 声明的参数隔离在这两处失效。复现:通过应用支持的 `remote add -- -dash <path>` 添加远程,新分支推送时选择 `-dash`;实际参数 `push --progress --set-upstream -dash refs/heads/main:refs/heads/main` 被随附 Git 拒绝,报 `unknown switch 'a'`。修复方向:两个推送入口均在远程位置参数前放入 `--`,覆盖以连字符开头的远程名称。
apps/ely-tree/src/stash.rs:41:过滤全部空字段破坏了合法空 reflog 说明的三字段记录,导致整个储藏列表读失败,违反 TREE-10。复现:修改文件后执行 `oid=$(git stash create)`、`git stash store -m '' "$oid"`;Git 能正常列出这个储藏,实际 `stash::list` 返回 `InvalidData`,其字段只剩提交号和时间。修复方向:按 NUL 分隔的固定三字段记录解析,仅处理记录流末尾的分隔符,保留空说明;增加空说明与普通储藏混合列表的测试。
reference/Ely-GPUI-Components/src/git/refs.rs:230:共用行调用 `focus_ring` 却没有边框宽度,键盘聚焦行时焦点框无法绘制;同文件第 290 行还把行内动作及其焦点框放在仅悬停时显示的透明层中,违反 UX-03 和 PRD §20.3。钉住的 1c96a3c 组件窗口探针复现:鼠标位于列表外,依次 Tab 到储藏行、应用、弹出、删除,四步可见边框绘制数均为 0,Enter 仍会执行透明动作;分支与标签共用此行布局。修复方向:给行的焦点框提供边框宽度,并在键盘焦点进入动作时显示动作层;增加鼠标离开列表时逐个 Tab 停靠点的绘制与执行断言。