From 25414901291a82cb2af75c65d5d20fe9e80f3c6b Mon Sep 17 00:00:00 2001 From: lawvs <18554747+lawvs@users.noreply.github.com> Date: Tue, 4 Nov 2025 15:48:09 +0800 Subject: [PATCH] chore: only refetch chat session when user has task --- .../layer/renderer/src/modules/ai-chat-session/query.ts | 7 +++++-- .../ai-chat/components/layouts/TaskReportDropdown.tsx | 7 +++++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/apps/desktop/layer/renderer/src/modules/ai-chat-session/query.ts b/apps/desktop/layer/renderer/src/modules/ai-chat-session/query.ts index fbb867c8c..249e344ec 100644 --- a/apps/desktop/layer/renderer/src/modules/ai-chat-session/query.ts +++ b/apps/desktop/layer/renderer/src/modules/ai-chat-session/query.ts @@ -25,11 +25,14 @@ export const aiChatSessionKeys = { // Queries -export const useAIChatSessionListQuery = (filters?: ListSessionsQuery) => { +export const useAIChatSessionListQuery = ({ + refetchInterval, + filters, +}: { refetchInterval?: number | false; filters?: ListSessionsQuery } = {}) => { const { data } = useQuery({ queryKey: aiChatSessionKeys.list(filters), queryFn: () => followApi.aiChatSessions.list(filters).then((res) => res.data), - refetchInterval: 1 * 60 * 1000, // 1 minute + refetchInterval, }) return data } diff --git a/apps/desktop/layer/renderer/src/modules/ai-chat/components/layouts/TaskReportDropdown.tsx b/apps/desktop/layer/renderer/src/modules/ai-chat/components/layouts/TaskReportDropdown.tsx index e9665d411..c2fd8aa69 100644 --- a/apps/desktop/layer/renderer/src/modules/ai-chat/components/layouts/TaskReportDropdown.tsx +++ b/apps/desktop/layer/renderer/src/modules/ai-chat/components/layouts/TaskReportDropdown.tsx @@ -23,7 +23,7 @@ import { useDeleteAIChatSessionMutation, useMarkChatSessionSeenMutation, } from "~/modules/ai-chat-session/query" -import { AITaskModal, useCanCreateNewAITask } from "~/modules/ai-task" +import { AITaskModal, useAITaskListQuery, useCanCreateNewAITask } from "~/modules/ai-task" import { useSettingModal } from "~/modules/settings/modal/use-setting-modal-hack" import { AI_SETTING_SECTION_IDS } from "~/modules/settings/tabs/ai" @@ -103,7 +103,10 @@ const EmptyState = () => { } export const TaskReportDropdown = ({ triggerElement, asChild = true }: TaskReportDropdownProps) => { - const sessions = useAIChatSessionListQuery() + const tasks = useAITaskListQuery() + const sessions = useAIChatSessionListQuery({ + refetchInterval: tasks?.length ? 1 * 60 * 1000 : false, // 1 minute + }) const currentChatId = useCurrentChatId() const chatActions = useChatActions() const shouldDisableTimelineSummary = useTimelineSummaryAutoContext()