opencode 实锤 bug:运行中断续跑后,用户消息被重复注入模型上下文
fluffyspace · ghdev · 2026-10-14
opencode v2.0.28 的 issue 报告了一个影响 agent 工程的典型上下文装配 bug。
- 现象:agent 运行中收到用户新消息后 run 被中断/恢复,同一条已持久化的用户消息会在后续每个 loop step 被重复注入 prompt。模型实际收到消息 A 的 4 份副本、消息 B 的 2 份,而数据库(sessionmessage)中各只有一行,UI 也只显示一条——重复只发生在 prompt 装配层。
- 复现路径:发一个跨多步工具调用的 prompt → 运行中追加消息 → 步边界被中断(idleoutcome='interrupted')→ 恢复后每步从 DB 重新 hydration 历史并重复 append。
- 影响:模型误以为用户在刷屏并「指责客户端坏了」、每步浪费输入 token、中断+恢复对聊天式前端实际不安全。
- 对做 agent 编排的人是很好的反面教材:持久层正确 ≠ prompt 装配正确,恢复逻辑要保证消息恰好注入一次。
「编程与Agent」频道最新
- 开源 AI 视频预演工具 CozyClay 获作者背书推荐 — cocktailpeanut · 2026-10-23
- Supabase 一键给应用装 MCP 服务器:ChatGPT/Claude 可直接调用你的应用 — dshukertjr · 2026-10-23
- Grok Bot 配「专属电脑」:浏览器+终端+云端文件系统直接干完任务 — nima_owji · 2026-10-23
- Neon 推出 TanStack AI 官方 AI Gateway 适配器,一个凭据调用多家模型 — matei_zaharia · 2026-10-23
- Reflection AI 演示 Beam 接入 opencode,自动微调 Gemma-4 准确率提升 66.5% — danielhanchen · 2026-10-23
- Cua 推出 Spaces SDK:让 Hermes 等 Agent 跑在你自己的电脑沙箱里 — Teknium · 2026-10-23