优化: L3事件总线入AppState(基建就位,emit双写留批3)
ai_event_bus字段独立于工作流event_bus,批2b仅入AppState+初始化。 emit点双写+前端订阅留批3:无后端订阅者(工作流独立域)+前端经ai-chat-event已收→全双写空转,待真实消费者(跨端/多模块)出现再针对性接入。渐进可回退。
This commit is contained in:
@@ -366,6 +366,16 @@ pub struct AppState {
|
|||||||
pub resolvers: Arc<ResolverRegistry>,
|
pub resolvers: Arc<ResolverRegistry>,
|
||||||
/// AI 会话状态
|
/// AI 会话状态
|
||||||
pub ai_session: Arc<Mutex<AiSession>>,
|
pub ai_session: Arc<Mutex<AiSession>>,
|
||||||
|
/// L3 AI 事件总线(pub-sub 域,独立于工作流 event_bus)。
|
||||||
|
///
|
||||||
|
/// 批2b:总线入 AppState 就绪(基建就位)。emit 点双写 + 前端订阅**留批3**:
|
||||||
|
/// 现阶段无后端订阅者(工作流独立域)+ 前端经 ai-chat-event 已收 → 全双写空转,
|
||||||
|
/// 待真实消费者(跨端透传/多模块订阅)出现再针对性双写(渐进接入,机制优先)。
|
||||||
|
///
|
||||||
|
/// dead_code:批2b 仅入 AppState,emit 点未双写(publish 无调用方);
|
||||||
|
/// 标 allow 保留作批3 接入(零调用方≠垃圾,预留保留)。
|
||||||
|
#[allow(dead_code)]
|
||||||
|
pub ai_event_bus: crate::commands::ai::event_bus::EventBus,
|
||||||
// ── 知识库 ──
|
// ── 知识库 ──
|
||||||
/// 知识库 Repo
|
/// 知识库 Repo
|
||||||
pub knowledge: KnowledgeRepo,
|
pub knowledge: KnowledgeRepo,
|
||||||
@@ -649,6 +659,8 @@ impl AppState {
|
|||||||
ai_messages: AiMessageRepo::new(&db),
|
ai_messages: AiMessageRepo::new(&db),
|
||||||
ai_tool_executions: AiToolExecutionRepo::new(&db),
|
ai_tool_executions: AiToolExecutionRepo::new(&db),
|
||||||
ai_session: Arc::new(Mutex::new(AiSession::new())),
|
ai_session: Arc::new(Mutex::new(AiSession::new())),
|
||||||
|
// L3 批2b:AI 事件总线入 AppState(独立于工作流 event_bus)。emit 双写留批3。
|
||||||
|
ai_event_bus: crate::commands::ai::event_bus::EventBus::new(),
|
||||||
knowledge: KnowledgeRepo::new(&db),
|
knowledge: KnowledgeRepo::new(&db),
|
||||||
knowledge_events: KnowledgeEventsRepo::new(&db),
|
knowledge_events: KnowledgeEventsRepo::new(&db),
|
||||||
knowledge_config: Arc::new(Mutex::new(KnowledgeConfig::default())),
|
knowledge_config: Arc::new(Mutex::new(KnowledgeConfig::default())),
|
||||||
|
|||||||
Reference in New Issue
Block a user