From b5de60e6d5d2317e4d26228fcb360212dd103e87 Mon Sep 17 00:00:00 2001 From: chihlasm Date: Mon, 16 Mar 2026 00:59:26 -0400 Subject: [PATCH] refactor: use useMemo instead of useCallback for groups builder in CommandPalette Co-Authored-By: Claude Opus 4.6 (1M context) --- frontend/src/components/layout/CommandPalette.tsx | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/frontend/src/components/layout/CommandPalette.tsx b/frontend/src/components/layout/CommandPalette.tsx index 73110415..b995480f 100644 --- a/frontend/src/components/layout/CommandPalette.tsx +++ b/frontend/src/components/layout/CommandPalette.tsx @@ -1,4 +1,4 @@ -import { useState, useEffect, useRef, useCallback } from 'react' +import { useState, useEffect, useRef, useCallback, useMemo } from 'react' import { useNavigate } from 'react-router-dom' import { Search, Loader2, ArrowRight, FileText, Clock, @@ -136,7 +136,7 @@ export function CommandPalette({ open, onClose }: CommandPaletteProps) { }, [query]) // Build groups based on intent and search results - const groups = useCallback((): Group[] => { + const builtGroups = useMemo((): Group[] => { const trimmed = query.trim() const intent = detectIntent(trimmed) const lower = trimmed.toLowerCase() @@ -243,8 +243,6 @@ export function CommandPalette({ open, onClose }: CommandPaletteProps) { return result }, [query, searchFlows, searchSessions, user]) - const builtGroups = groups() - // Flatten all items for keyboard navigation const flatItems: PaletteItem[] = builtGroups.flatMap(g => g.items)