54 lines
2.0 KiB
Markdown
54 lines
2.0 KiB
Markdown
# Reasonix Batch A3 Worker A:local folder empty-trash UI smoke
|
||||
|
|
|
|||
|
|
Project root: `/mnt/Data1T/mnote`
|
|||
|
|
|
|||
|
|
## 目标
|
|||
|
|
|
|||
|
|
补齐 `4-34` 中 local folder empty-trash UI 证据:本地文件夹垃圾箱页面能分别清空页面垃圾箱和资源垃圾箱,且不触发非预期浏览器导航。
|
|||
|
|
|
|||
|
|
## Ownership
|
|||
|
|
|
|||
|
|
允许修改:
|
|||
|
|
|
|||
|
|
- 新增 `scripts/task474-local-folder-empty-trash-ui-smoke.js`
|
|||
|
|
- `design/04-tree-domain/process/4-34-filetree-trash-dual-browser-no-refresh-v1.md`
|
|||
|
|
- `.codex/reasonix-tasks/results/batch-a3-worker-a-empty-trash.md`
|
|||
|
|
|
|||
|
|
禁止:
|
|||
|
|
|
|||
|
|
- 不修改 Rust 源码。
|
|||
|
|
- 不修改 `4-46` 或移动任何 design 文件。
|
|||
|
|
- 不提交 git。
|
|||
|
|
- 不把 reload 型刷新标为 no-refresh。
|
|||
|
|
|
|||
|
|
## 要求
|
|||
|
|
|
|||
|
|
1. 新增 browser smoke,参考 `task464` / `task473` 的登录、local root、trash workbench 写法。
|
|||
|
|
2. 创建临时 local folder root:
|
|||
|
|
- 至少一个 Markdown 页面进入本地垃圾箱。
|
|||
|
|
- 至少一个非 md 资源进入本地垃圾箱。
|
|||
|
|
3. 打开 `/trash?sourceKind=local_folder&rootUri=file://...`。
|
|||
|
|
4. 点击“清空页面垃圾箱”,接受 confirm,断言页面类 trash row 消失、trash index 对应 entry 清理、trash 文件/目录不存在。
|
|||
|
|
5. 点击“清空资源垃圾箱”,接受 confirm,断言资源类 trash row 消失、trash index 对应 entry 清理、trash 文件不存在。
|
|||
|
|
6. 记录 main frame navigation delta,清空按钮操作不得触发非预期导航。
|
|||
|
|
7. 结果写入 `tmp/task474-local-folder-empty-trash-ui-smoke/result.json`。
|
|||
|
|
8. 更新 `4-34` 对 local folder empty-trash 覆盖状态,但不要移动文件。
|
|||
|
|
|
|||
|
|
## 验收命令
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
node --check scripts/task474-local-folder-empty-trash-ui-smoke.js
|
|||
|
|
PLAYWRIGHT_CHROMIUM_EXECUTABLE_PATH=/usr/bin/google-chrome-stable node scripts/task474-local-folder-empty-trash-ui-smoke.js
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
如果 3000 不是最新,可只做 `node --check` 并说明需要 Codex 用临时端口复跑。
|
|||
|
|
|
|||
|
|
## 最终输出
|
|||
|
|
|
|||
|
|
写入 `.codex/reasonix-tasks/results/batch-a3-worker-a-empty-trash.md`,包含:
|
|||
|
|
|
|||
|
|
- 修改文件
|
|||
|
|
- smoke 覆盖内容
|
|||
|
|
- 验证命令和结果
|
|||
|
|
- 未完成项 / 风险
|