-
由 Will Chen 提交于
<!-- CURSOR_SUMMARY --> > [!NOTE] > Modernizes chat data flow and caching. > > - Replaces Jotai chat list state and `getAllChats` with `useChats` using React Query (`CHATS_QUERY_KEY`), exposing `chats`, `loading`, and `invalidateChats` > - Updates `ChatList`, `ChatHeader`, `useStreamChat`, and `ChatActivity` to consume `useChats` and call `invalidateChats` after create/delete/stream events > - Simplifies `ChatActivityList` to build recent rows from `recentStreamChatIds` and `useChats(null)` > - Sets global `queries.staleTime=60_000` in `renderer.tsx`; removes per-hook `staleTime` in `useCheckName` > - Switches `useVersions` to `placeholderData` > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 8532c5919b25f77f3f38899a53bae80eb7e99c27. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Refactored chat fetching to use React Query and set a global 60s stale time for consistent caching. Simplifies chat state management and updates ChatActivity to use the new hook. - **Refactors** - Rewrote useChats using @tanstack/react-query with query key [CHATS_QUERY_KEY, appId]; exposes chats and loading, adds invalidateChats, and removes refreshChats. - Updated ChatList, ChatHeader, and useStreamChat to call invalidateChats after mutations. - Removed chatsAtom and chatsLoadingAtom; deleted getAllChats from lib/chat. - Updated ChatActivityList to use useChats and derive recent rows from recentStreamChatIds. - Set global queries.staleTime to 60_000 in queryClient; removed per-hook staleTime in useCheckName. - useVersions now uses placeholderData instead of initialData. <sup>Written for commit 8532c5919b25f77f3f38899a53bae80eb7e99c27. Summary will update automatically on new commits.</sup> <!-- End of auto-generated description by cubic. -->