diff --git a/ui/src/components/CompanyRail.tsx b/ui/src/components/CompanyRail.tsx index 8aaec808..b5e7ea2a 100644 --- a/ui/src/components/CompanyRail.tsx +++ b/ui/src/components/CompanyRail.tsx @@ -158,6 +158,14 @@ export function CompanyRail() { sortByStoredOrder(companies).map((c) => c.id) ); + // Re-sync orderedIds from localStorage whenever companies changes. + // Handles initial data load (companies starts as [] before query resolves) + // and subsequent refetches triggered by live updates. + useEffect(() => { + if (companies.length === 0) return; + setOrderedIds(sortByStoredOrder(companies).map((c) => c.id)); + }, [companies]); + // Sync order across tabs via the native storage event useEffect(() => { const handleStorage = (e: StorageEvent) => {