Update web UX when server side error or hit stop + no task running

- Ack websocket interrupt even when no task running
  Otherwise chat UX isn't updated to indicate query has stopped
  processing for this edge case

- Mark chat request as not being procesed on server side error
This commit is contained in:
Debanjum
2025-08-18 23:26:37 -07:00
parent 222cc19b7f
commit e0007a31bb
2 changed files with 4 additions and 1 deletions

View File

@@ -359,6 +359,7 @@ export default function Chat() {
return;
} else if (controlMessage.error) {
console.error("WebSocket error:", controlMessage.error);
setProcessQuerySignal(false);
return;
}
} catch {

View File

@@ -1526,6 +1526,8 @@ async def chat_ws(
ack_type = "interrupt_acknowledged"
await websocket.send_text(json.dumps({"type": ack_type}))
else:
ack_type = "interrupt_acknowledged"
await websocket.send_text(json.dumps({"type": ack_type}))
logger.info(f"No ongoing task to interrupt for user {websocket.scope['user'].object.id}")
continue
@@ -1704,8 +1706,8 @@ async def process_chat_request(
logger.debug(f"Chat request cancelled for user {websocket.scope['user'].object.id}")
raise
except Exception as e:
logger.error(f"Error processing chat request: {e}", exc_info=True)
await websocket.send_text(json.dumps({"error": "Internal server error"}))
logger.error(f"Error processing chat request: {e}", exc_info=True)
raise