fix(FN-5104): complete Step 3 — refresh stale useChat session before reattach
Fusion-Task-Id: FN-5104 Fusion-Task-Lineage: e92a26cb-a930-442a-98be-6ace9f376e73
This commit is contained in:
committed by
gsxdsm
parent
3baef3a266
commit
1fa22ac1b4
@@ -555,6 +555,27 @@ export function useChat(
|
||||
const session = sessionOverride ?? sessions.find((s) => s.id === id);
|
||||
setActiveSession(session || null);
|
||||
|
||||
if (id) {
|
||||
void fetchChatSession(id, projectId)
|
||||
.then(({ session: refreshedSession }) => {
|
||||
if (!refreshedSession.isGenerating || !refreshedSession.inFlightGeneration) {
|
||||
return;
|
||||
}
|
||||
setActiveSession((prev) => {
|
||||
if (!prev || prev.id !== id) {
|
||||
return prev;
|
||||
}
|
||||
return {
|
||||
...prev,
|
||||
...refreshedSession,
|
||||
};
|
||||
});
|
||||
})
|
||||
.catch(() => {
|
||||
// Ignore stale-cache recovery fetch failures.
|
||||
});
|
||||
}
|
||||
|
||||
// Reset transient state
|
||||
resetTransientComposerState();
|
||||
setHasMoreMessages(true);
|
||||
|
||||
Reference in New Issue
Block a user