agent-Specialization/static
JOJO e29ccb318e fix(multi-agent): 修复情况2主消息池派发链路
修复多智能体模式下主智能体空闲时收不到子智能体输出推送的一系列 bug:

1. poll_multi_agent_notifications 死锁:原实现先等所有 running 实例
   退出再 drain 消息池,导致 ask_master 在 await 期间永远等不到主对话
   回答。改为池优先:pool 有消息立即派发,不管 running 状态。

2. _dispatch_multi_agent_idle_messages 缺 import:调用
   inject_multi_agent_master_message 但文件顶部从未导入,NameError
   被外层 except 吞掉,task 永远建不起来。

3. dispatch 内调试日志引用 rec 错位:dispatch_ma_idle_sender_user_message
   被放到 create_chat_task 之前,触发 UnboundLocalError,task 同样建不起来。

4. session_data['auto_user_message_payload'] / preceding_user_notices
   payload 漏写 auto_message_type:前端 isMultiAgentMessage() 只认
   auto_message_type.startsWith('multi_agent_'),空字符串走 fallback
   通知渲染。

5. dispatch 第①步重复持久化:对包含 last 的全部消息都调
   inject_multi_agent_master_message 落盘,之后 task 又在 handle_task_with_sender
   再 add_conversation,导致历史里出现两条相同 user 消息(前一条多智能体渲染,
   后一条通知渲染)。前置 N-1 条只持久化一次,最后一条交给后续 task 自己持久化。

6. last 赋值时机错位:last_emit_payload 在 last=parsed_messages[-1] 之前引用,
   UnboundLocalError 再次吃掉后续链路。

7. handle_task_with_sender 多智能体分支漏写 visibility='chat':
   _user_message_ui_defaults('sub_agent') 默认 visibility='compact',
   透传到落盘 metadata 后,前端从后端加载历史时走通知渲染分支。显式
   user_message_metadata['visibility']='chat' 强制走多智能体专用渲染。
2026-07-13 20:05:02 +08:00
..
admin_api feat: add api admin ui and container status fix 2026-01-25 10:49:52 +08:00
admin_dashboard fix: repair admin monitor auth and add invite CRUD 2026-04-07 18:23:09 +08:00
admin_policy feat: polish admin policy UI and tool selection 2026-01-05 13:34:00 +08:00
custom_tools feat: add custom tools guide and id validation 2026-01-05 21:46:55 +08:00
demo feat(branding): 将产品名统一为 Astrion 2026-07-07 18:17:48 +08:00
easter-eggs feat: modularize easter egg effects 2025-11-22 13:07:54 +08:00
file_manager chore: snapshot before usage menu update 2025-11-24 00:47:17 +08:00
icons Add fold/expand and hover actions to user message bubbles 2026-06-28 00:15:07 +08:00
liquid-glass-demo feat: stable version before virtual monitor timing fix 2025-12-13 17:12:12 +08:00
logo feat: 整合test/agents功能并更新配置 2026-04-13 17:47:19 +08:00
old_version_backup feat: modularize frontend layout 2025-11-25 22:41:15 +08:00
src fix(multi-agent): 修复情况2主消息池派发链路 2026-07-13 20:05:02 +08:00
vendor chore: initial import 2025-11-14 16:44:12 +08:00
debug-theme.html chore: snapshot current changes 2026-03-10 23:48:40 +08:00
index.html feat(branding): 将产品名统一为 Astrion 2026-07-07 18:17:48 +08:00
liquid-glass-demo.html feat: stable version before virtual monitor timing fix 2025-12-13 17:12:12 +08:00
liquid-glass-kube.html feat: stable version before virtual monitor timing fix 2025-12-13 17:12:12 +08:00
login.html feat(branding): 将产品名统一为 Astrion 2026-07-07 18:17:48 +08:00
mobile-overlay-demo.html feat(branding): 将产品名统一为 Astrion 2026-07-07 18:17:48 +08:00
mobile-overlay-fab.html feat(branding): 将产品名统一为 Astrion 2026-07-07 18:17:48 +08:00
register.html feat(branding): 将产品名统一为 Astrion 2026-07-07 18:17:48 +08:00
resource_busy.html feat: containerize terminals and add resource controls 2025-11-23 18:49:35 +08:00
security.js chore: snapshot before usage menu update 2025-11-24 00:47:17 +08:00
style.css chore: drop legacy css fallback 2025-11-25 21:15:32 +08:00
terminal.html feat(branding): 将产品名统一为 Astrion 2026-07-07 18:17:48 +08:00
voice_test.html feat: 添加语音输入按钮,位于发送按钮左侧 2026-06-08 14:14:19 +08:00