docs/RELEASE_NOTES_v0.1.4.md
Rama main · réplica de lectura del repositorio original.
# v0.1.4 发布说明
百灵中枢 `v0.1.4` 为网页聊天补齐真实的模型增量输出,并定义可重连的 SSE 事件协议。该版本把“模型正在生成”从轮询终态改为可观察的实时过程,同时保持最终结果、会话记录、回调与审计仍以任务库中的权威终态为准。
## 主要变化
### 1. OpenAI-compatible 模型流式调用
`llm` 目标默认尝试使用 `stream:true`:
- 持续解析提供商返回的文本增量;
- 将首段延迟、分片数、字符数和结束原因写入 trace 元数据;
- 不把逐片正文写入 trace、审计或会话总账;
- 只有提供商明确拒绝 streaming 时,才自动重试一次非流式请求。
如某个兼容端点不适合流式调用,可在对应 `target_config` 中设置 `streaming:false`。
### 2. 可重连 SSE 事件协议
新增 `bailing.chat.stream.v1`,网页聊天流除既有终态事件外,还可以发送:
- `phase`:当前执行阶段;
- `reset`:丢弃尚未完成的临时文本;
- `delta`:追加一段临时文本;
- `done`:从任务库最终结果生成的权威终态。
每个任务使用单调递增的事件序号。客户端断线重连时可通过 `Last-Event-ID` 请求短期有界回放;无法完整回放时,服务端发送 `reset`,避免客户端把不连续文本误拼成完整回答。
### 3. 网页组件实时呈现
零依赖网页组件现在可以在任务完成前展示模型输出,并在重连、重置或终态到达时正确收敛。旧客户端无需修改:忽略未知事件并继续只消费 `done` 即可。
## 安全与审计边界
- 增量文本是临时传输数据,不是业务终态,也不是审批或授权证据;
- 会话历史、回调、送达与审计正文不逐片持久化;
- `done` 始终以任务库最终记录为来源;
- 业务系统仍保留最终授权权力,streaming 不改变 ACC、工具签名或审批边界。
## 兼容性
- 无数据库迁移;
- `/run`、SDK、工具签名和执行器协议不变;
- 新 SSE 事件向后兼容,旧客户端可继续只处理终态;
- 非流式模型目标和现有聊天入口保持原有行为。
## 验证
发布前通过:
- `npm run typecheck`
- `npm test`
- `npm --prefix web-admin run build`
- `npm run docs:check`
- `npm run release:check`