[Bug]:API重试日志会污染聊天历史,导致永久会话冻结
作者: mrjjstudio创建于 2026年9月14日更新于 2026年9月14日
标签needs-triage
描述臭虫 当一个基本的模型提供者遇到速率限制或临时网络断开时,重试日志("重试(尝试 1/3,等待 2s)"...重试(尝试 2/3,等待 4s)")被直接流入对话转向并永久保存入聊天历史.
这导致连锁故障:
- ** 污染:** 数十个重试字符串被附加在助理消息有效载荷中.
- ** 冻结/流出** 在随后的转会中,每当用户发送新消息(甚至"你好"或"?")时,包含反复重试日志的膨胀的对话历史会被发回API.
- ** 永久死亡:** 会议进入了无法恢复的状态,多次以 " 这一请求未产生可见的答复 " 失败,将对话永久锁定。
- 重现步骤
- 与受费率限制的模型提供者开始一个会话(例如Gemini) flash或自定义终点).
- 执行一个触发多个连续API调用或大型上下文操作的任务.
- 当提供者返回一个速率限制或临时网络错误时, 观察聊天流附加: `重试(尝试1/3,等待2s).重试(尝试2/3,等待4s). ' 反复进入信息泡.
- 一旦复试失败并转弯结束,尝试在聊天中输入任何新消息.
- 会议完全没有答复,对随后的每一项投入都提出 " 这一请求没有得到明显答复 " 。
• 预期行为
- ** 伊菲美里语:** 重试和倒置状态只应显示为瞬态UI指标(如土司通知、内置自旋器或状态栏项目),** 不应被写入持续对话历史**。
- ** 清理失败和回滚:** 如果一个API的呼叫在所有重试后永久失效,则失败/被损坏的转弯应当回滚或打出干净的标记,而不是将被毒掉的块保存到消息数据库中.
- ** 诊断能见度:** 以"回转/重试"动作按钮,为根源提供清晰的能见度(如HTTP 429 速率限制,504 超时).
环境
- OS: macOS(苹果硅)
- AionUi版本:最新版本v2.x
- 后端:离子核/活性剂跑取器
内容来源: iOfficeAI/AionUi