fix(usage): resolve auto-query interval timing issue

Problem:
- User configured 5-minute auto-query interval
- Actual queries executed every 10 minutes instead of 5

Root Cause:
- staleTime (5 min) conflicted with refetchInterval (5 min)
- React Query skipped refetch when data was still within staleTime
- First interval trigger at T+5min: data considered "fresh", skipped
- Second interval trigger at T+10min: data "stale", executed

Solution:
- Set staleTime to 0 for usage queries
- Ensures refetchInterval executes precisely as configured
- Auto-query is meant to fetch fresh data periodically, not use cache

Technical Details:
- Modified useUsageQuery in src/lib/query/queries.ts
- Changed: staleTime: 5 * 60 * 1000 → staleTime: 0
- Added explanatory comment in Chinese
- Manual queries still work via refetch() button
This commit is contained in:
Jason
2025-11-05 22:02:12 +08:00
parent a428e618d2
commit ce24b37b39

View File

@@ -105,7 +105,7 @@ export const useUsageQuery = (
: false,
refetchOnWindowFocus: false,
retry: false,
staleTime: 5 * 60 * 1000, // 5分钟
staleTime: 0, // 不使用缓存策略,确保 refetchInterval 准确执行
});
return {