fix: IoT多设备支持 + Review Pipeline审查消息 + 意图分析快速通道优化

- IoT Provider: 重写Execute()支持多设备命令批量执行,修复persona路径
- Intent Analyzer: 新增isStrongIoTCommand快速通道,跳过LLM分析节省2-3s
- Orchestrator: parseReviewMessages()内联审查 + 快速通道扩展(chat/greeting跳过子会话)
- Gateway: SSE review_messages解析→WebSocket结构化消息转发(action/chat)
- Persona: 对话风格注入action格式指令(括号包裹动作描述)
- Frontend: sessionStore历史消息msgType映射
- 新增E2E测试脚本 + 调试标准文档 + 第4轮修复报告

E2E验证: IoT设备操控 Review消息拆分 快速通道 响应时间~3.4s

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
2026-05-22 22:51:27 +08:00
parent 773f19f009
commit a67b95cbc4
18 changed files with 1186 additions and 85 deletions
+10 -1
View File
@@ -159,7 +159,7 @@ func main() {
subManager.Register(subsession.NewMemoryProvider(memRetriever))
}
if iotClient != nil {
subManager.Register(subsession.NewIoTProvider(iotClient))
subManager.Register(subsession.NewIoTProvider(iotClient, personaDir))
}
subManager.Register(subsession.NewReviewProvider())
log.Printf("子会话管理器已就绪: %d 个提供者 (%v)", len(subManager.ListProviders()), subManager.ListProviders())
@@ -429,6 +429,15 @@ func handleChat(
fmt.Fprintf(w, "data: %s\n\n", segData)
flusher.Flush()
case model.StreamReview:
// 发送审查后的结构化消息(动作消息 + 聊天消息)
reviewData, _ := json.Marshal(map[string]interface{}{
"message_id": messageID,
"review_messages": event.ReviewMessages,
})
fmt.Fprintf(w, "data: %s\n\n", reviewData)
flusher.Flush()
case model.StreamDone:
// 下发结束标记
endData, _ := json.Marshal(map[string]interface{}{