Files
ElyOffice/tasks/reviews/X-01-r1.md
T

4 lines
1.2 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
crates/ely-office/src/close.rs:50 — 主窗口的 Cmd+Q 和应用菜单“退出”会直接丢失未保存内容。GPUI 在窗口动作派发期间暂时取出当前窗口,此处同步 `handle.update` 返回 `window not found`,第 57–58 行随即调用 `cx.quit()`,跳过 `Host::quitting` 和未保存询问,并将恢复会话记为干净结束。实测:ElyDoc 新建文档,键入 `ZqxQuitProbe`,等待生成恢复点,保持主窗口聚焦后按 Cmd+Q;进程以 0 退出,询问未出现,`session.lock` 被删除;重新启动后恢复点从 1 个变成 0 个,文字丢失。独立点击应用菜单“退出”同样直接退出。设置窗口的两个入口均出现询问,取消后文字和恢复点保留。证据保存在 `/tmp/ely-x01-native-evidence.log`,违反 PRD §6.2 的保存、放弃、取消要求。新增测试 `apps/ely-doc/src/tests/more.rs:236` 直接在 App 更新中调用退出函数,绕过窗口动作派发,因此该测试通过。修复方向:将退出转发延后至当前窗口更新结束,确认宿主窗口确已关闭时才直接退出;回归测试通过主窗口和设置窗口实际派发退出动作,验证询问、取消及恢复点保留。