From a3f60910d5024d1ebcd69132124261acb034f1db Mon Sep 17 00:00:00 2001 From: Marco Allegretti Date: Wed, 11 Mar 2026 19:01:59 +0100 Subject: [PATCH] fix(appd): remove abort_sender on READY timeout early-return path The READY timeout branch killed the process and returned Ok(()) without calling remove_abort_sender(), leaving a spent entry in abort_senders. Add the call to keep it consistent with all other exit paths. --- crates/weft-appd/src/runtime.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/crates/weft-appd/src/runtime.rs b/crates/weft-appd/src/runtime.rs index e09e2b0..0f60bd8 100644 --- a/crates/weft-appd/src/runtime.rs +++ b/crates/weft-appd/src/runtime.rs @@ -248,6 +248,7 @@ pub(crate) async fn supervise( kill_portal(portal).await; let mut reg = registry.lock().await; reg.set_state(session_id, AppStateKind::Stopped); + reg.remove_abort_sender(session_id); let _ = reg.broadcast().send(Response::AppState { session_id, state: AppStateKind::Stopped,