chore: checkpoint 第一版
ci / verify (push) Canceled after 0s

This commit is contained in:
Codex Local
2026-09-06 17:04:11 +08:00
parent a8cdec98d1
commit 0c2151ace9
659 changed files with 185855 additions and 554 deletions
+5 -1
View File
@@ -11,9 +11,12 @@
| 事件类型 | 产生条件 | 资源类型 | 状态示例 |
|---|---|---|---|
| `device.presence.changed` | 首次有效心跳使设备上线,或后台发现心跳超时使设备离线 | `device` | `online`、`offline` |
| `device.binding.reset` | 设备主动恢复出厂并解除当前用户绑定 | `device` | `CLAIMABLE` |
| `conversation.started` | 通话进入`ACTIVE` | `conversation` | `ACTIVE` |
| `conversation.completed` | 通话进入`COMPLETED` | `conversation` | `COMPLETED` |
| `conversation.failed` | 通话进入`FAILED` | `conversation` | `FAILED` |
上述通话事件由`conversation.status`统一触发,与底层运行时无关;`legacy_voicechat`和`volc_hardware_agent`都会产生同一套家庭侧SSE语义。硬件智能体的周期`session_updated`只作为平台租约和诊断证据,不逐次生成SSE事件。
| `story.created` | 新故事候选建立 | `story` | 故事当前状态 |
| `story.revised` | 故事版本增加 | `story` | 故事当前状态 |
| `media.upload.completed` | 媒体上传批次完成 | `upload_batch` | `COMPLETED` |
@@ -105,7 +108,8 @@ sequenceDiagram
3. 设备此前不存在在线记录或已离线时,写入一次`online`事件;连续心跳只延长最后出现时间。
4. Redis继续承担低延迟在线查询,PostgreSQL状态表承担状态转换和事件可靠性。
5. Worker每个心跳周期扫描一次;最后出现时间超过两倍会话租约的记录切换为`offline`并只写入一次事件。
6. 新的有效心跳可再次把离线记录切回在线并产生新的上线事件。
6. 设备恢复出厂时,平台在同一事务内把旧用户侧在线状态改为`offline`、发送`device.binding.reset`并解除绑定。
7. 新的有效心跳可再次把离线记录切回在线并产生新的上线事件;恢复出厂后的设备要先完成重新绑定。
## 7. 浏览器重连与去重