Skip to content
Draft
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 29 additions & 0 deletions automations/livekit-agent/2026-08-10.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# LiveKit Agents 工程日报

**Date range covered:** 2026-08-09 00:02 UTC → 2026-08-10 00:02 UTC

**仓库:** [livekit/agents](https://github.com/livekit/agents)(upstream/main)

---

## 关键变更

- **Cartesia WebSocket 握手失败时 API Key 不再泄漏至日志** — [#6740](https://github.com/livekit/agents/pull/6740) 修复 [#6739](https://github.com/livekit/agents/issues/6739):将 Cartesia TTS/STT 握手失败包装为 `APIStatusError`/`APIConnectionError` 时不再链式保留 aiohttp 异常(`RequestInfo` 中含 `X-API-Key`);`ConnectionPool.prewarm()` 改为吞掉连接失败并以 `str` 记录,避免未检索的 task 异常把密钥写入日志。新增 `tests/test_connection_pool.py`(+62 行)与 `tests/test_plugin_cartesia_tts.py`(+78 行)。影响:生产环境 Cartesia 认证失败时日志安全性显著提升。

- **STT 重试逻辑尊重 `retryable=False`** — [#6759](https://github.com/livekit/agents/pull/6759) 修复 AGT-3238:Cartesia 将 WebSocket 握手失败包装为 `APIStatusError(retryable=False)` 后,STT 重试循环此前仍重试 4 次并最终抛出 `APIConnectionError`;现改为立即失败并保留原始状态错误。改动覆盖 `stt/stt.py`、`connection_pool.py` 与 Cartesia 三个 stream 文件;`tests/test_stt_base.py` 新增 24 行覆盖。影响:401/403 等不可重试错误不再无谓延迟和掩盖真实原因。

- **两日安全/可靠性修复形成主题** — 上述两个 PR 均触及 `connection_pool.py` 与 Cartesia 插件层,且 #6759 在 #6740 合入后同日跟进,清理了 credential-redaction 补丁中的叙述性注释并补齐非重试错误路径。upstream 当日仅 **2** 个 commit 合入,`main` HEAD 仍为 **1.6.9**([#6753](https://github.com/livekit/agents/pull/6753)),无新版本发布。

- **Voice 音频 playout 修复栈活跃推进(未合入)** — [#6728](https://github.com/livekit/agents/pull/6728)(暂停 RoomIO 后不再将已丢弃音频计为已播放,修复 AGT-3231,+409 行)与堆叠其上的 [#6757](https://github.com/livekit/agents/pull/6757)(替换 audio sink 前先 flush 活跃段,修复 AGT-3250)均在 8 月 9 日 18:34 UTC 更新。影响:一旦合入将修正 RecorderIO 用户轨 padding 与 sink 替换时的中断状态残留。

- **ChatItem 序列化统一 PR 同日更新** — [#6756](https://github.com/livekit/agents/pull/6756) 将 `remote_session` 与 `telemetry/traces` 两套 ChatItem proto 序列化合并至 `_proto.py`,修复 `FunctionCallOutput.id` 等字段丢失,并将 message `content` 从 `\\n` 拼接改为逐 part 发送(与 agents-js 对齐)。8 月 9 日 15:18 UTC 仍有推送,尚未合入。

---

## Watchlist

1. **Voice 生命周期修复栈仍未合入** — [#6745](https://github.com/livekit/agents/pull/6745)(playout 启动时挂起 pending replies)自 8 月 8 日后无新推送;[#6728](https://github.com/livekit/agents/pull/6728)/[#6757](https://github.com/livekit/agents/pull/6757) 同日活跃更新但仍在 review。realtime 打断/转写/playout 回归风险持续,建议关注合并顺序与 e2e 覆盖。

2. **#6756 proto 序列化行为变更** — 合入后 RemoteSession 路径的 message `content` 格式与 timestamp 精度(`FromNanoseconds`)将变化,需确认下游消费者(livekit-cli、telemetry 管道)兼容性;`MetricsReport.playback_latency` 仍无 proto 字段,两 SDK 均无法携带。

3. **Fork 落后 upstream 410 commits** — `origin/main` 未同步 1.6.9 及本周 Cartesia 安全修复;升级生产环境前建议对齐 upstream 并验证 Cartesia 凭证配置。