diff --git a/src/composables/useConflictDetection.ts b/src/composables/useConflictDetection.ts index 036fb1bad..a80cca573 100644 --- a/src/composables/useConflictDetection.ts +++ b/src/composables/useConflictDetection.ts @@ -78,7 +78,9 @@ export function useConflictDetection() { try { // Get system stats from store (primary source of system information) const systemStatsStore = useSystemStatsStore() - await systemStatsStore.fetchSystemStats() + if (!systemStatsStore.systemStats) { + await systemStatsStore.fetchSystemStats() + } // Fetch version information from backend (with error resilience) const [frontendVersion] = await Promise.allSettled([ diff --git a/src/stores/comfyManagerStore.ts b/src/stores/comfyManagerStore.ts index 98c7b5df7..8d798c28b 100644 --- a/src/stores/comfyManagerStore.ts +++ b/src/stores/comfyManagerStore.ts @@ -5,6 +5,7 @@ import { ref, watch } from 'vue' import { useI18n } from 'vue-i18n' import { useCachedRequest } from '@/composables/useCachedRequest' +import { useConflictDetection } from '@/composables/useConflictDetection' import { useManagerQueue } from '@/composables/useManagerQueue' import { useServerLogs } from '@/composables/useServerLogs' import { useComfyManagerService } from '@/services/comfyManagerService' @@ -122,6 +123,10 @@ export const useComfyManagerStore = defineStore('comfyManager', () => { return key.split('@')[0] }) installedPacks.value = packsWithCleanedKeys + // Run conflict detection for all installed packages + // This ensures conflict status is always up-to-date when installed list changes + const { performConflictDetection } = useConflictDetection() + await performConflictDetection() } isStale.value = false }