fix(ai): keep replies visible on legacy WebView

This commit is contained in:
知食分子 authored and GitHub committed 2026-08-12 12:35:10 +08:00
1 parent 0e42de5f7f
commit e9e0d04a2c
5 files changed
+71 -5

No files matched your search

+10 -1
View File
@@ -123,6 +123,13 @@ use dbx_core::agent_loop::{run_agent_loop, AgentLoopContext};
use dbx_core::ai_cli_agent::CliAgentCommandSpec;
use dbx_core::models::connection::DatabaseType;
#[derive(serde::Serialize)]
struct AiAgentEventPayload {
session_id: String,
#[serde(flatten)]
event: AgentEvent,
}
#[tauri::command]
pub async fn ai_cancel_stream(session_id: String) -> Result<bool, String> {
Ok(dbx_core::ai::cancel_stream(&session_id).await)
@@ -214,8 +221,10 @@ pub async fn ai_agent_stream(
&agent_ctx,
{
let app = app.clone();
let event_session_id = session_id.clone();
move |event: AgentEvent| {
let _ = app.emit("ai-agent-event", &event);
let payload = AiAgentEventPayload { session_id: event_session_id.clone(), event };
let _ = app.emit("ai-agent-event", &payload);
}
},
&cancelled,