# Reasonix Browser Test: Batch A task473 Local Folder Restore No-refresh Focus Gap

项目根目录：`/mnt/Data1T/mnote`

请先阅读并遵守：`/home/lix/.codex/skills/reasonix-browser-tester/SKILL.md`

## 角色

你是浏览器测试员，不是代码修改员。

禁止修改源码、禁止 git commit、禁止回滚文件。只允许创建测试输出目录、临时测试数据和截图。

## 测试目标

验证新增 `task473-local-folder-trash-restore-no-refresh-focus-gap-smoke.js` 的 local folder trash restore no-refresh 行为，并确认 restore 后 focus/active/selected 仍是明确缺口。

## 前置

- 被测入口：`http://127.0.0.1:3000`
- 使用真实浏览器或 Playwright。
- 使用全新的 isolated browser context / userDataDir；测试开始前清空 cookies、localStorage、sessionStorage、IndexedDB、Cache Storage。

## 操作

1. 运行：`node --check scripts/task473-local-folder-trash-restore-no-refresh-focus-gap-smoke.js`
2. 运行：`node scripts/task473-local-folder-trash-restore-no-refresh-focus-gap-smoke.js`
3. 读取 `tmp/task473-local-folder-trash-restore-no-refresh-focus-gap-smoke/result.json`。
4. 截图 local folder trash workbench 或复现流程中的 filetree 恢复后状态。
5. 记录：
   - `restoreNavFree.delta`
   - `fileReappearsInFiletree`
   - `focusAfterRestore`
   - 步骤 9 是否显示 `data-active=false` / `data-selected=false`

## 输出目录

`/mnt/Data1T/mnote/tmp/reasonix-batch-a-browser-task473-2026-05-21/`

必须输出：

- `result.json`
- `final.md`
- 至少 1 张截图；失败时必须截图。

## 判定

- `PASS_WITH_KNOWN_GAP`：语法检查和 smoke 实跑 exit 0，`result.json.ok=true`，`restoreNavFree.delta=0`，文件行恢复，但 `focusAfterRestore` 显示没有 active/selected/focused。
- `FAIL`：脚本退出非 0 或 no-refresh / 文件恢复断言失败。
- `BLOCKED`：3000 不可达或浏览器无法启动。
