Files
mnote/design/04-tree-domain/done/4-47-batch-a3-local-folder-trash-final-smoke-checklist-v1.md
T

5.2 KiB
Raw Blame History

4-47 [process] Batch A3 Local Folder Trash Final Smoke Checklist v1

创建时间:2026-05-21

上位入口:design/01-tree-first-graph-kernel/process/1-8-mvp-post-process-execution-order-v1.md

阶段:Batch A / P0 剩余 local folder trash smoke 收口

当前状态:DONE

1. 目标

关闭 4-344-46 中 Batch A 剩余的 local folder 垃圾箱验证缺口:

  • local folder empty-trash UI smoke。
  • local folder Markdown 页面自身的 archive / restore / purge smoke。
  • 根据真实 smoke 结果判断 4-34 / 4-46 是否可归档到 done/

本阶段不改 delete 默认进入垃圾箱的语义,不把 reload 型刷新伪装成 no-refresh,不扩新产品面。

2. 当前剩余缺口

  • 4-34 中 local folder 非 md 资源 empty-trash 已由 task474 覆盖。
  • 4-34 中 local folder Markdown 自身 trash lifecycle 已由 task475 覆盖。
  • 4-46 Batch A 执行总 checklist 已满足归档条件。

3. Reasonix Worker 拆分

Worker Alocal folder empty-trash UI smoke

Owner

  • 可新增 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

目标:

  • 构造 local folder 临时 root,同时放入 markdown 页面和非 md 资源。
  • 通过 tree command 或 UI 将它们移动到 .mnote/trash
  • 打开 /trash?sourceKind=local_folder&rootUri=...,分别点击“清空页面垃圾箱”和“清空资源垃圾箱”。
  • 断言对应行消失、文件系统 trash 文件消失、trash-index.json 对应 entry 清理。
  • 记录点击清空期间无非预期 browser navigation。

验收:

node --check scripts/task474-local-folder-empty-trash-ui-smoke.js
MNOTE_WEB_SMOKE_BASE_URL=http://127.0.0.1:<port> PLAYWRIGHT_CHROMIUM_EXECUTABLE_PATH=/usr/bin/google-chrome-stable node scripts/task474-local-folder-empty-trash-ui-smoke.js

Worker Blocal folder Markdown trash lifecycle smoke

Owner

  • 可新增 scripts/task475-local-folder-markdown-trash-lifecycle-smoke.js
  • design/04-tree-domain/process/4-34-filetree-trash-dual-browser-no-refresh-v1.md
  • .codex/reasonix-tasks/results/batch-a3-worker-b-markdown-lifecycle.md

目标:

  • 构造 loose Markdown 和/或 bundled Markdown 页面。
  • 通过 /api/tree/commands 验证 Markdown 页面的 delete / restore / purge
  • 断言 canonical command、源路径、trash 路径、trash-index.json 和恢复后的 documentId 与文件系统一致。
  • 这是生命周期 smoke,不要求 UI 截图;浏览器可见性由 Worker A 和后续 Browser Worker 覆盖。

验收:

node --check scripts/task475-local-folder-markdown-trash-lifecycle-smoke.js
MNOTE_WEB_SMOKE_BASE_URL=http://127.0.0.1:<port> node scripts/task475-local-folder-markdown-trash-lifecycle-smoke.js

Worker C:文档归档审查

Owner

  • design/04-tree-domain/process/4-34-filetree-trash-dual-browser-no-refresh-v1.md
  • design/04-tree-domain/process/4-46-batch-a-filetree-action-trash-smoke-execution-checklist-v1.md
  • 如条件满足,可移动到 design/04-tree-domain/done/
  • .codex/reasonix-tasks/results/batch-a3-worker-c-doc-archive.md

目标:

  • 在 Worker A/B smoke 结果可复核后,判断 4-34 是否满足归档条件。
  • 判断 4-46 是否已经完成 Batch A P0,是否可以归档。
  • 若仍有缺口,必须写明 blocker 与下一步,不得强行移动。

验收:

git diff --name-status

4. Codex 复核项

  • 读取 Worker A/B 输出;Worker C 由 Codex 本地完成归档审查。
  • 独立审查 diff,确认无越权修改。
  • 运行新增脚本 node --check
  • 在最新 mnote-web 临时端口 3014 上实跑新增 smoke。
  • 完成后拆 Browser Worker 复测关键 UI smoke 并核验截图。
  • git diff --checkcodegraph sync . 后提交。

5. 完成条件

  • task474 或等价 smoke 覆盖 local folder empty-trash UI。
  • task475 或等价 smoke 覆盖 local folder Markdown archive / restore / purge。
  • 4-34 / 4-46 状态与真实证据一致。
  • 浏览器 worker 输出截图和 result.json 已由 Codex 复核。
  • 本阶段完成后由 Codex 提交 git。

6. 执行结果

  • task474-local-folder-empty-trash-ui-smoke.js 新增并通过:local folder 页面垃圾箱与资源垃圾箱清空 UI、confirm、无导航、trash-index 清理、文件删除。
  • task475-local-folder-markdown-trash-lifecycle-smoke.js 新增并通过:loose Markdown 页面 delete / restore / purge 生命周期与文件系统一致。
  • Codex 复核命令:
    • node --check scripts/task474-local-folder-empty-trash-ui-smoke.js
    • node --check scripts/task475-local-folder-markdown-trash-lifecycle-smoke.js
    • MNOTE_WEB_SMOKE_BASE_URL=http://127.0.0.1:3014 PLAYWRIGHT_CHROMIUM_EXECUTABLE_PATH=/usr/bin/google-chrome-stable node scripts/task474-local-folder-empty-trash-ui-smoke.js
    • MNOTE_WEB_SMOKE_BASE_URL=http://127.0.0.1:3014 node scripts/task475-local-folder-markdown-trash-lifecycle-smoke.js
  • Reasonix Browser Worker 复测输出:tmp/reasonix-batch-a3-browser-task474-empty-trash-2026-05-21/,核心截图 trash-workbench-empty.png 已由 Codex 查看。