# 工作台回滚请求排查清单

当用户请求"回滚到某时间点"时，按此清单逐一排查。

## 排查顺序（优先级从高到低）

### 1. Git 版本控制
```bash
cd ~/Desktop/Hermes输出-工作类
git log --oneline -20          # 查看提交历史
git log --before="2026-07-26T01:20:00" --oneline -5  # 目标时间点前的提交
git diff <commit> -- 工具/销售工作台.html  # 查看差异
```
若为 Git 仓库：`git checkout <commit> -- <file>` 即可恢复。

### 2. Time Machine 本地快照
```bash
tmutil listlocalsnapshots /        # 列出本地快照
tmutil listbackups                  # 列出 Time Machine 备份（需备份盘）
```
若有快照：进入 Time Machine 恢复单个文件。

### 3. APFS 快照
```bash
diskutil apfs listSnapshots /       # 列出 APFS 卷快照
```
用户可能手动创建过 APFS 快照（`tmutil localsnapshot`）。

### 4. 手动备份文件
```bash
find ~/Desktop/Hermes输出-工作类/ -name "*backup*" -o -name "*bak*" -o -name "*_2026*" | sort
```
当前已知备份：`销售工作台_backup_20260725.html`。

### 5. 自动备份 cron
```bash
cat ~/.hermes/cron/jobs.json | python3 -m json.tool | grep -A5 "backup\|备份"
```
当前无文件级备份 cron（仅 MCP 数据刷新）。

### 6. 文件修改时间确认
```bash
# 确认目标时间点后有哪些文件被修改
find ~/Desktop/Hermes输出-工作类/ -newermt "2026-07-26 01:20:00" -type f -exec ls -lt {} +
```
若输出为空 → 当前文件即目标时间点状态，无需回滚。

### 7. Session 历史（不可靠）
```bash
# 尝试从会话记录中重建当时的状态
session_search(query="工作台 修改 部署", limit=5)
```
**已知问题**：state.db 可能损坏（`database disk image is malformed`），.bak 可能同样损坏。

### 8. OneDrive / iCloud 版本历史
检查文件是否在 OneDrive 或 iCloud Drive 同步范围内：
```bash
ls -la ~/Library/Group\ Containers/*OneDrive*/  # OneDrive
brctl log -w  # iCloud 同步状态
```

## 全部失败时的回退策略

1. **明确问题**：问用户具体哪些改动需要撤销（HTML 页面？数据文件？后端脚本？）
2. **手动逆操作**：如果改动范围小，针对性修复
3. **从最接近的备份出发**：用现有备份 + 增量正确修改重建目标状态
4. **重新拉取数据**：如果只是数据被错误覆盖，直接从飞书 MCP 重拉

## 防范措施

每次重大修改前手动创建备份：
```bash
cp 销售工作台.html 销售工作台_backup_$(date +%Y%m%d_%H%M).html
```
