From 8073c33f2c2a821ef77c76f001f769e492c9cb05 Mon Sep 17 00:00:00 2001 From: zhi Date: Thu, 2 Apr 2026 04:37:35 +0000 Subject: [PATCH] docs: update TASKLIST.md with completed multi-message and shuffle mode tasks --- plans/TASKLIST.md | 50 +++++++++++++++++++++++------------------------ 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/plans/TASKLIST.md b/plans/TASKLIST.md index 37ddbf5..d57f7df 100644 --- a/plans/TASKLIST.md +++ b/plans/TASKLIST.md @@ -258,42 +258,42 @@ ### B4. `plugin/hooks/message-received.ts` #### B4.1 Multi-Message Mode 入口/出口 -- [.] 检测 human 消息中的 multi-message start marker -- [.] start marker 命中时,将 channel 切换到 multi-message mode -- [.] 检测 human 消息中的 multi-message end marker -- [.] end marker 命中时,将 channel 退出 multi-message mode -- [.] 避免 moderator 自己的 prompt marker 消息触发 mode 切换 +- [x] 检测 human 消息中的 multi-message start marker +- [x] start marker 命中时,将 channel 切换到 multi-message mode +- [x] 检测 human 消息中的 multi-message end marker +- [x] end marker 命中时,将 channel 退出 multi-message mode +- [x] 避免 moderator 自己的 prompt marker 消息触发 mode 切换 #### B4.2 Multi-Message Mode 中的 moderator 提示 -- [.] 当 channel 处于 multi-message mode 时,人类每发一条消息触发 moderator prompt marker -- [.] prompt marker 文案/内容使用配置项 `multiMessagePromptMarker` -- [.] 避免重复触发或回环 +- [x] 当 channel 处于 multi-message mode 时,人类每发一条消息触发 moderator prompt marker +- [x] prompt marker 文案/内容使用配置项 `multiMessagePromptMarker` +- [x] 避免重复触发或回环 #### B4.3 与现有 mention override 的兼容 -- [ ] 明确 multi-message mode 下 human @mention 是否忽略 -- [ ] 避免 multi-message mode 与 mention override 冲突 +- [x] 明确 multi-message mode 下 human @mention 是否忽略 +- [x] 避免 multi-message mode 与 mention override 冲突 ### B5. `plugin/hooks/before-model-resolve.ts` -- [.] 当 channel 处于 multi-message mode 时,强制相关 session 走 `noReplyProvider` / `noReplyModel` -- [.] 确保 multi-message mode 的 no-reply 覆盖优先于普通 turn 决策 -- [.] 确保退出 multi-message mode 后恢复正常 turn 逻辑 -- [.] 补充必要调试日志 +- [x] 当 channel 处于 multi-message mode 时,强制相关 session 走 `noReplyProvider` / `noReplyModel` +- [x] 确保 multi-message mode 的 no-reply 覆盖优先于普通 turn 决策 +- [x] 确保退出 multi-message mode 后恢复正常 turn 逻辑 +- [x] 补充必要调试日志 ### B6. `plugin/turn-manager.ts` #### B6.1 Multi-Message Mode 与 turn pause/resume -- [ ] 设计 multi-message mode 下 turn manager 的暂停语义 -- [ ] 明确 pause 是通过外层 gating,还是 turn-manager 内显式状态 -- [ ] 退出 multi-message mode 后恢复 turn manager -- [ ] 退出时确定下一位 speaker 的选择逻辑 +- [x] 设计 multi-message mode 下 turn manager 的暂停语义 +- [x] 明确 pause 是通过外层 gating,还是 turn-manager 内显式状态 +- [x] 退出 multi-message mode 后恢复 turn manager +- [x] 退出时确定下一位 speaker 的选择逻辑 #### B6.2 Shuffle Mode -- [.] 为每个 channel 增加 `shuffling` 开关状态 -- [.] 识别“一轮最后位 speaker 发言完成”的边界点 -- [.] 在进入下一轮前执行 reshuffle -- [.] 保证上一轮最后 speaker 不会成为新一轮第一位 -- [.] 处理单 Agent 场景 -- [.] 处理双 Agent 场景 -- [.] 处理 mention override / waiting-for-human / dormant 状态下的 reshape 边界 +- [x] 为每个 channel 增加 `shuffling` 开关状态 +- [x] 识别“一轮最后位 speaker 发言完成”的边界点 +- [x] 在进入下一轮前执行 reshuffle +- [x] 保证上一轮最后 speaker 不会成为新一轮第一位 +- [x] 处理单 Agent 场景 +- [x] 处理双 Agent 场景 +- [x] 处理 mention override / waiting-for-human / dormant 状态下的 reshape 边界 ### B7. `plugin/commands/dirigent-command.ts` - [x] 新增 `/turn-shuffling` 子命令