• Will Chen's avatar
    refactor usechats and set global stale time (#2020) · 74665598
    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. -->
    74665598
名称
最后提交
最后更新
.cursor/rules 正在载入提交数据...
.devcontainer 正在载入提交数据...
.github 正在载入提交数据...
.husky 正在载入提交数据...
assets 正在载入提交数据...
docs 正在载入提交数据...
drizzle 正在载入提交数据...
e2e-tests 正在载入提交数据...
packages/@dyad-sh 正在载入提交数据...
scaffold 正在载入提交数据...
scripts 正在载入提交数据...
shared 正在载入提交数据...
src 正在载入提交数据...
testing 正在载入提交数据...
tools 正在载入提交数据...
worker 正在载入提交数据...
workers/tsc 正在载入提交数据...
.cursorignore 正在载入提交数据...
.env.example 正在载入提交数据...
.eslintrc.json 正在载入提交数据...
.gitattributes 正在载入提交数据...
.gitignore 正在载入提交数据...
.oxlintrc.json 正在载入提交数据...
.prettierignore 正在载入提交数据...
.prettierrc 正在载入提交数据...
AGENTS.md 正在载入提交数据...
CONTRIBUTING.md 正在载入提交数据...
LICENSE 正在载入提交数据...
README.md 正在载入提交数据...
SECURITY.md 正在载入提交数据...
biome.json 正在载入提交数据...
components.json 正在载入提交数据...
drizzle.config.ts 正在载入提交数据...
forge.config.ts 正在载入提交数据...
forge.env.d.ts 正在载入提交数据...
index.html 正在载入提交数据...
merge.config.ts 正在载入提交数据...
package-lock.json 正在载入提交数据...
package.json 正在载入提交数据...
playwright.config.ts 正在载入提交数据...
tsconfig.app.json 正在载入提交数据...
tsconfig.json 正在载入提交数据...
tsconfig.node.json 正在载入提交数据...
vite.main.config.mts 正在载入提交数据...
vite.preload.config.mts 正在载入提交数据...
vite.renderer.config.mts 正在载入提交数据...
vite.worker.config.mts 正在载入提交数据...
vitest.config.ts 正在载入提交数据...