mirror of
https://github.com/OpenHands/OpenHands.git
synced 2025-12-26 05:48:36 +08:00
fix(frontend): agent status shows “Disconnected” when starting a new conversation until sandbox initializes (#11612)
This commit is contained in:
parent
7cfe667a3f
commit
a6385b4059
@ -2,6 +2,7 @@ import { useMemo } from "react";
|
||||
import { useWsClient, V0_WebSocketStatus } from "#/context/ws-client-provider";
|
||||
import { useActiveConversation } from "#/hooks/query/use-active-conversation";
|
||||
import { useConversationWebSocket } from "#/contexts/conversation-websocket-context";
|
||||
import { useConversationId } from "#/hooks/use-conversation-id";
|
||||
|
||||
/**
|
||||
* Unified hook that returns the current WebSocket status
|
||||
@ -9,11 +10,15 @@ import { useConversationWebSocket } from "#/contexts/conversation-websocket-cont
|
||||
* - For V1 conversations: Returns status from ConversationWebSocketProvider
|
||||
*/
|
||||
export function useUnifiedWebSocketStatus(): V0_WebSocketStatus {
|
||||
const { conversationId } = useConversationId();
|
||||
const { data: conversation } = useActiveConversation();
|
||||
const v0Status = useWsClient();
|
||||
const v1Context = useConversationWebSocket();
|
||||
|
||||
const isV1Conversation = conversation?.conversation_version === "V1";
|
||||
// Check if this is a V1 conversation:
|
||||
const isV1Conversation =
|
||||
conversationId.startsWith("task-") ||
|
||||
conversation?.conversation_version === "V1";
|
||||
|
||||
const webSocketStatus = useMemo(() => {
|
||||
if (isV1Conversation) {
|
||||
@ -33,7 +38,13 @@ export function useUnifiedWebSocketStatus(): V0_WebSocketStatus {
|
||||
}
|
||||
}
|
||||
return v0Status.webSocketStatus;
|
||||
}, [isV1Conversation, v1Context, v0Status.webSocketStatus]);
|
||||
}, [
|
||||
isV1Conversation,
|
||||
v1Context,
|
||||
v0Status.webSocketStatus,
|
||||
conversationId,
|
||||
conversation,
|
||||
]);
|
||||
|
||||
return webSocketStatus;
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user