From aea8d0b73b532d2c545f79ddb9387b68dd084af1 Mon Sep 17 00:00:00 2001 From: thibaud-lclr Date: Tue, 21 Apr 2026 11:34:53 +0200 Subject: [PATCH] fix(backend): remove nested tokio block_on in cancel commands --- src-tauri/src/commands/orchestrator.rs | 8 +++++--- src-tauri/src/commands/task.rs | 8 +++++--- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src-tauri/src/commands/orchestrator.rs b/src-tauri/src/commands/orchestrator.rs index 25a5ec2..7437673 100644 --- a/src-tauri/src/commands/orchestrator.rs +++ b/src-tauri/src/commands/orchestrator.rs @@ -3,7 +3,6 @@ use crate::models::ticket::ProcessedTicket; use crate::models::worktree::Worktree; use crate::AppState; use serde::Serialize; -use tauri::async_runtime; use tauri::State; #[derive(Debug, Clone, Serialize)] @@ -58,7 +57,10 @@ pub fn retry_ticket(state: State<'_, AppState>, ticket_id: String) -> Result<(), } #[tauri::command] -pub fn cancel_ticket(state: State<'_, AppState>, ticket_id: String) -> Result<(), AppError> { +pub async fn cancel_ticket( + state: State<'_, AppState>, + ticket_id: String, +) -> Result<(), AppError> { { let conn = state.db.lock().map_err(|e| AppError::from(e.to_string()))?; let ticket = ProcessedTicket::get_by_id(&conn, &ticket_id)?; @@ -71,7 +73,7 @@ pub fn cancel_ticket(state: State<'_, AppState>, ticket_id: String) -> Result<() } } - async_runtime::block_on(state.process_registry.cancel_ticket(&ticket_id)); + state.process_registry.cancel_ticket(&ticket_id).await; let conn = state.db.lock().map_err(|e| AppError::from(e.to_string()))?; let ticket = ProcessedTicket::get_by_id(&conn, &ticket_id)?; diff --git a/src-tauri/src/commands/task.rs b/src-tauri/src/commands/task.rs index 198e05e..b49580a 100644 --- a/src-tauri/src/commands/task.rs +++ b/src-tauri/src/commands/task.rs @@ -4,7 +4,6 @@ use crate::models::agent_task::AgentTask; use crate::models::module::{ProjectModule, MODULE_AGENT_TASK_RUNNER}; use crate::models::project::Project; use crate::AppState; -use tauri::async_runtime; use tauri::State; #[tauri::command] @@ -87,7 +86,10 @@ pub fn retry_agent_task(state: State<'_, AppState>, task_id: String) -> Result<( } #[tauri::command] -pub fn cancel_agent_task(state: State<'_, AppState>, task_id: String) -> Result<(), AppError> { +pub async fn cancel_agent_task( + state: State<'_, AppState>, + task_id: String, +) -> Result<(), AppError> { { let db = state .db @@ -103,7 +105,7 @@ pub fn cancel_agent_task(state: State<'_, AppState>, task_id: String) -> Result< } } - async_runtime::block_on(state.process_registry.cancel_task(&task_id)); + state.process_registry.cancel_task(&task_id).await; let db = state .db