From f011a67ff336e661dbb4674a438bce43d9ac649a Mon Sep 17 00:00:00 2001 From: BOHA Date: Mon, 8 Jun 2026 19:28:04 +0200 Subject: [PATCH] feat(odin): conversation query options --- src/admin/lib/queries/ai.ts | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/src/admin/lib/queries/ai.ts b/src/admin/lib/queries/ai.ts index 95cf1b3..f25a64a 100644 --- a/src/admin/lib/queries/ai.ts +++ b/src/admin/lib/queries/ai.ts @@ -32,6 +32,34 @@ export const aiUsageOptions = () => staleTime: 30_000, }); +export interface Conversation { + id: number; + title: string; + updated_at: string; +} + +export const aiConversationsOptions = () => + queryOptions({ + queryKey: ["ai", "conversations"], + queryFn: () => + jsonQuery<{ conversations: Conversation[] }>( + "/api/admin/ai/conversations", + ), + staleTime: 30_000, + }); + +export const aiConversationMessagesOptions = (id: number) => + queryOptions({ + queryKey: ["ai", "conversation", id, "messages"], + queryFn: () => + jsonQuery<{ messages: StoredChatMessage[] }>( + `/api/admin/ai/conversations/${id}/messages`, + ), + // Re-read the DB on each mount/selection (no stale-cache resurrection). + staleTime: Infinity, + gcTime: 0, + }); + export const aiHistoryOptions = () => queryOptions({ queryKey: ["ai", "history"],