botmux v3.13.0
本次发布累计合入 master 自 v3.12.1 以来的改动,覆盖 Dashboard 凭证、触发幂等、adopt 归因与卡片/会话体验修复。
主要变更:
- 修复 Dashboard 在软链 / 共享盘 / 异主祖先 HOME 下
botmux dashboard报 500 token_persist_failed:token ensure/rotate 改用一次性 pin 父目录 FD 的安全原语,Linux 走 /proc/self/fd 锚定、跳过对可写祖先的误判,非 Linux 保持严格祖先校验;同步收紧该原语生命周期(禁止句柄释放后使用,不再暴露原始路径能力)。 - 续会话轮新增 turn 级幂等键 turnIdempotencyKey,把 at-most-once 语义扩展到 follow-up;并前置与 idempotencyKey 的互斥校验。
- 修复 adopt 复核会把内部消息误归因、以及按版本号命名的 CLI 被误判已退出。
- daemon 把实际加载的 bots.json 钉给 CLI 子进程。
- Dashboard/卡片体验:建群与会话选 bot 改用可搜索多选组件;会话筛选优先展示已解析的聊天名;按 turn 受理时创建状态卡;跨目标触发通知补跳转链接。
✨ 新功能
- dashboard: 建群/会话选 bot 改用可搜索多选组件 (#813)
- trigger: 续会话轮 turn 级幂等键 turnIdempotencyKey(at-most-once 扩到 follow-up) (#818)
🐛 修复
- card: 按 turn 受理时创建状态卡 (#807)
- dashboard: 会话筛选优先展示已解析的聊天名,不再被原始 chatId 覆盖 (#811)
- herdr: adopt 复核回退进程 comm,修版本号命名的 CLI 被误判已退出 (#817)
- config: 非默认 HOME 下 daemon 与 CLI 子进程读到不同 bots.json (#753)
- trigger: turnIdempotencyKey/idempotencyKey 互斥校验前置,精确报文可达 (#825)
- traex: 阻止 adopt 误归因内部消息 (#820)
- dashboard: 软链/共享盘 HOME 下 token ensure/rotate 不再报 token_persist_failed (#827)
- schedule: 为跨目标触发通知添加跳转链接 (#824)
🙏 感谢贡献者
@xiaoxueSunn @nil-err @SidKwok @Ghost-LZW @zsnjuts
Full Changelog: v3.12.1...v3.13.0