v2.7.3 — 统一 Thinking 剥离 + 拒绝检测增强 + Docker 部署优化
🔧 核心改进:统一 Thinking 剥离逻辑
重大架构优化:无论客户端是否请求 thinking,现在都始终剥离 <thinking> 标签,避免 thinking 内容泄漏到最终输出文本中。
- 之前:只有客户端显式请求 thinking 时才剥离标签,否则保留在正文中
- 现在:始终剥离,差异仅在于客户端请求 thinking 时发送 thinking content block,否则静默丢弃
- 修复流式响应中
leadingBuffer未 flush 导致极短响应丢失内容的问题 - 重试后也正确剥离 thinking 标签,避免重试响应中遗留标签
🛡️ 拒绝检测增强
- 拒绝检测现在始终在 thinking-stripped 文本上执行,消除 thinking 中反思性语言的误判
- 移除冗余的
getTextForRefusalCheck()/stripThinkingTags()调用,逻辑更清晰 sanitizeResponse()新增 "accidentally called Cursor tool" 幻觉清洗规则converter.ts扩展历史上下文清洗正则:增加accidentally called/calling、Cursor documentation模式
🐳 Docker 部署优化
- Dockerfile:不再将
config.yaml打包进镜像,改为通过 volume 挂载(更安全、更灵活) - Dockerfile:新增
/app/logs日志目录创建和VOLUME声明 - docker-compose.yml:新增日志持久化 volume 挂载 (
./logs:/app/logs) - docker-compose.yml:补全所有环境变量注释说明(AUTH_TOKEN、THINKING_ENABLED、COMPRESSION、LOG、FP 等)
📋 包含的提交
70d8da2feat: implement proper OpenAI Responses API streaming format for Codex compatibility85d8666fix: 修复纯字符串 content 中的图片路径无法提取的根因 (#39)292c8c4fix: 修复 CC 自动压缩后模型丢失任务上下文的问题e2acdd1fix: 修复 OpenClaw/Telegram 等客户端图片处理失败问题 (#39)
Full Changelog: v2.7.2...v2.7.3