fix: v0.8.0 修订 — 思考用户意图优先 · 移除元信息硬门控 · 实施清单入库
CI / 类型检查 + Lint + 单元测试 (push) Failing after 9m8s
CI / 全量测试 (Electron ABI) (push) Failing after 6m8s
CI / 产物编译验证 (push) Successful in 11m1s

- DeepSeek/MiMo/Agnes 移除 supportsThinking 元信息硬门控:思考参数完全遵循用户配置
  (事故复盘中 vision-exp 元信息标注不支持思考、实际产生了 8189 token 推理内容,
  元信息不可靠;预算耗尽由引擎降级重试兜底,元信息不符仅告警不拦截)
- Ollama 保留 /api/show 能力探测门控(服务端硬协议约束:向不支持思考的模型发
  think 每次请求 400,属协议正确性而非意图覆盖),探测失败 fail-open
- LLM 设置提示文案修订:元信息不符仍按用户配置发送,降级重试自动兜底
- 测试契约反向钉住:vision-exp + 用户开启→照发 enabled+reasoning_effort;
  关闭/未配置→显式 disabled;Ollama 探测 false→不发 think / null→fail-open
- 补录 docs/v0.8.0-迭代实施清单.md(含逐项验证记录与本次修订记录;
  首次提交时该文件因故未入库,本次补齐)
- 验证:typecheck 0 错误 / lint 0 问题 / 系统 Node 2146 通过 / thinking 矩阵 101 用例全绿
This commit is contained in:
2026-09-05 20:49:20 +08:00
parent 5b9d4d19b3
commit 839860083f
9 changed files with 312 additions and 56 deletions
+1 -1
View File
@@ -59,7 +59,7 @@
| 特性 | 说明 |
|:---|:---|
| 🔒 **流结束契约(根治"思考中会话停止")** | finish_reason 全链路贯通:`length` 截断不再被静默判定为完成;零产出流自动重试;思考耗尽输出预算时自动降级(关闭思考)重试一次,仍失败则给出 OUTPUT_LENGTH_EXCEEDED 结构化错误与修复建议 |
| 🧠 **思考参数 × 模型能力门控** | `supportsThinking:false` 的模型(如 deepseek-v4-flash-vision-exp)不再发送思考参数,防止思考烧光输出预算;设置页同步提示 |
| 🧠 **思考用户意图优先 + 预算自愈** | 思考参数完全遵循用户配置(模型元信息仅告警不拦截);若思考耗尽输出预算(`finish_reason=length` 空回复),自动关闭思考重试一次,仍失败给出 `OUTPUT_LENGTH_EXCEEDED` 明确报错;Ollama 保留服务端能力探测门控(向不支持思考的模型发 `think` 会被服务端 400 拒绝) |
| 🪟 **后台会话回放缓冲** | 切走会话后其运行内容不再丢失,切回时自动恢复;abort 失败自愈、收尾兜底、中断卡片清扫三重防线 |
| 🗑️ **会话回收站** | 删除改为软删除,30 天自动清理;支持恢复与彻底删除 |
| 🎬 **会话回放播放器** | TRACE JSONL 录制可视化回放(时间轴 / 步进 / 变速) |