docs: 更新协议文档并清理过时计划文件
This commit is contained in:
@@ -2,6 +2,8 @@
|
||||
|
||||
本文档描述 `GET /api/v1/agent/runs/{thread_id}/events` 的事件协议。
|
||||
|
||||
> 当前协议要求 SSE 订阅显式携带 `runId`,事件输出按 run 隔离。
|
||||
|
||||
---
|
||||
|
||||
## 1) 事件管道
|
||||
@@ -13,7 +15,7 @@
|
||||
3. 事件同时:
|
||||
- 持久化到数据库(用于 history)
|
||||
- 发布到 Redis Stream(用于 SSE)
|
||||
4. `/runs/{thread_id}/events` 从 Redis Stream 读取并输出 SSE
|
||||
4. `/runs/{thread_id}/events` 从 Redis Stream 读取并输出 SSE(仅输出目标 `runId` 事件)
|
||||
|
||||
---
|
||||
|
||||
@@ -30,6 +32,7 @@ data: <json>
|
||||
|
||||
- `id` 可用于断点续流(`Last-Event-ID`)
|
||||
- `event` 与 JSON 内 `type` 一致(例如 `RUN_STARTED`)
|
||||
- 仅当 payload 中 `runId` 与 query `runId` 一致时才会对外发送
|
||||
- 空闲时可能出现 keep-alive 注释帧:
|
||||
|
||||
```text
|
||||
@@ -41,6 +44,15 @@ data: <json>
|
||||
|
||||
## 3) 事件类型(当前实现)
|
||||
|
||||
### 3.0 过滤与终止规则
|
||||
|
||||
- 请求参数 `runId` 为本次订阅目标 run。
|
||||
- 服务端只转发 `event.runId == runId` 的事件。
|
||||
- SSE 连接仅在目标 run 收到 terminal 事件后结束:
|
||||
- `RUN_FINISHED`
|
||||
- `RUN_ERROR`
|
||||
- 其他 run 的事件(包括 terminal)不会结束当前连接。
|
||||
|
||||
### 3.1 Run 生命周期
|
||||
|
||||
#### `RUN_STARTED`
|
||||
|
||||
Reference in New Issue
Block a user