# Reasonix Batch A Worker B: task471 Local Folder Bulk Resource Trash

Project root: `/mnt/Data1T/mnote`

## 背景

用户要求按 `1-8` 分阶段推进。当前执行 Batch A / P0：清 FileTree action 与 Trash smoke 红灯。

事实源：

- 阶段 checklist：`design/04-tree-domain/process/4-46-batch-a-filetree-action-trash-smoke-execution-checklist-v1.md`
- 上游：`design/04-tree-domain/process/4-44-filetree-action-layer-paste-drop-delete-v1.md`
- 相关 smoke：`scripts/task471-local-folder-bulk-resource-trash-smoke.js`

## Ownership

你负责：

- `scripts/task471-local-folder-bulk-resource-trash-smoke.js`
- `design/04-tree-domain/process/4-44-filetree-action-layer-paste-drop-delete-v1.md`
- 必要时只追加 `.codex/reasonix-tasks/results/batch-a-worker-b-task471.md`

你不是独自在代码库中工作；不要回滚、覆盖、格式化或清理其他人的改动。不要提交 git。

## 任务

1. 实跑或修复 `task471`，确认 local folder 多选资源删除行为：
   - 两个资源行可通过 Ctrl/Meta 多选。
   - Delete 后确认文案包含附件数量。
   - 两个资源都通过 `/api/tree/commands` archive。
   - 文件进入 `.mnote/trash`，原路径消失。
   - DOM action 状态记录 `bulk-delete` / `archived` / 触发 row。
2. 如果 3000 / auth 环境不可用，记录为环境阻塞，不改业务语义。
3. 更新 `4-44` 的执行记录，不能把未实跑成功的浏览器项标为完成。

## 禁止事项

- 不修改 Rust 核心业务文件。
- 不把默认 delete 改为 purge。
- 不绕过 readonly / confirmation。
- 不移动 design 文件到 done。

## 验证

至少运行：

```bash
cd /mnt/Data1T/mnote
node --check scripts/task471-local-folder-bulk-resource-trash-smoke.js
```

如本机 3000 可用，再运行：

```bash
cd /mnt/Data1T/mnote
node scripts/task471-local-folder-bulk-resource-trash-smoke.js
```

## 最终回复格式

- 修改文件列表
- 完成的 checklist 项
- 运行过的命令和结果
- 未完成项 / 风险
