# 在恢复会话时选择 reset 到旧 commit 或继续恢复

## 使用场景

当系统发现当前代码版本和会话保存时不一致时，你可以自己决定：要不要先把仓库回到当时的版本，再恢复会话。

## 操作步骤

1. 先回到原项目目录并启动 Jarvis。
2. 如果当前入口支持会话恢复，在对话输入框中输入 `'<RestoreSession>'`，再按 `Ctrl+J` 或 `Ctrl+]` 提交。
3. 按提示选择要恢复的历史会话后，如果系统发现当前仓库 commit 与会话保存时不一致，就会给出两个选项：
   - `[1] Reset 到保存的 commit`
   - `[2] 继续恢复（可能不一致）`
4. 如果你输入 `1`，系统会尝试把仓库直接 reset 到旧 commit，再继续恢复。
5. 如果你输入 `2`，系统会保留当前仓库状态，继续恢复旧会话。

## 你会看到的提示与反馈

- 进入恢复后，你会先看到：`是否恢复会话？（输入序号恢复，直接回车跳过）:`
- 出现 commit 不一致时，系统会继续提示：`请选择操作: [1] Reset 到保存的 commit  [2] 继续恢复（可能不一致）:`
- 选择 reset 时，系统会提示：`正在 reset 到 commit ...`
- reset 成功后，系统会提示：`✅ 已成功 reset 到会话保存时的 commit`
- reset 失败时，系统会提示：`❌ Reset 失败: ...`，并继续问你是否仍然恢复会话
- 如果你选择继续恢复，系统会给出风险提示后继续执行

## 注意事项

- reset 会直接修改当前工作区状态，执行前要确认你真的愿意回到旧版本。
- 如果当前工作区还有你没处理的改动，贸然 reset 可能带来损失。
- 如果当前入口不支持 `'<RestoreSession>'`，你需要换到支持会话恢复的入口再继续操作。
