diff --git a/src/components/moderation/ModerationQueue.tsx b/src/components/moderation/ModerationQueue.tsx index ab9f8431..139cac54 100644 --- a/src/components/moderation/ModerationQueue.tsx +++ b/src/components/moderation/ModerationQueue.tsx @@ -757,7 +757,7 @@ export const ModerationQueue = forwardRef((props, ref) => { // Initial fetch on mount and filter changes useEffect(() => { - if (!user) return; + if (!userRef.current) return; // Phase 1: Initial fetch (run once) if (!hasInitialFetchRef.current) { @@ -780,8 +780,8 @@ export const ModerationQueue = forwardRef((props, ref) => { debouncedFetchItems(debouncedEntityFilter, debouncedStatusFilter, true, activeTabRef.current); } // eslint-disable-next-line react-hooks/exhaustive-deps - }, [debouncedEntityFilter, debouncedStatusFilter, user]); - // Note: fetchItems and debouncedFetchItems are stable callbacks and should NOT trigger this effect + }, [debouncedEntityFilter, debouncedStatusFilter]); + // Note: user object reference changes shouldn't trigger filter refetch - using stable userRef instead // Polling for auto-refresh (only if realtime is disabled) useEffect(() => {