# v7.8.4 一键恢复专用启动入口修复

## 从 v7.8.3 现场日志确认的真实故障

云端 #14 快照下载和校验成功，待恢复 ZIP/marker 也成功写入多个候选目录，
但自动重启后日志完全没有 `apply_enter`、`pending_selected`、
`apply_package_extracted` 等阶段。

这说明故障发生在“第一次自动重启 -> 进入恢复执行器”之间：
恢复包存在，但新的 EXE 进程没有真正执行 `apply_pending_restore()`。

## v7.8.4 修复

1. 第一次自动重启改为显式：
   `QQ频道本地多QQ运营台.exe --apply-cloud-restore`
2. `run.py` 检测到该参数后，在编译版 EXE 中会在以下逻辑之前强制执行恢复：
   - bootstrap
   - 热更新检查
   - 卡密验证
   - 桌面主界面初始化
   - 数据库工作线程启动
3. 如果 `os.execv` 直接重启失败，PowerShell 后台辅助重启也会携带
   `--apply-cloud-restore`，不会退化成普通启动。
4. 新增 `backups/cloud_restore_early_boot.log`：
   即使 `app.cloud_backup` 尚未成功导入，也能记录：
   - EXE
   - PID
   - CWD
   - root
   - argv
   - 是否检测到恢复参数
5. 恢复真正写入数据库以后，第二次启动仍为普通“干净启动”，不携带恢复参数，
   避免重复恢复。

## 与 #14 快照有关的说明

#14 快照本身并非空备份，manifest 显示：
- accounts: 1
- channels: 25
- growth_feed_snapshots: 116
- growth_guild_snapshots: 25
- posts: 0

但该快照来自 v7.8.1：
- includes_login_state: false
- account_homes: false

因此 v7.8.4 可以恢复其业务数据，但 QQ 登录态仍可能需要重新扫码。
之后使用 v7.8.2+ 新生成的云备份才会包含登录态。
