/** * Version-Aware Cache Validator * Detects MCP version changes and triggers per-MCP cache invalidation */ import { CachePatcher, ToolMetadataCache } from './cache-patcher.js'; export interface MCPVersionChange { mcpName: string; cachedVersion: string; currentVersion: string; toolCount: number; requiresRefresh: boolean; } export declare class VersionAwareValidator { private cachePatcher; constructor(cachePatcher: CachePatcher); /** * Validate cache against current MCP versions and detect changes * Returns list of MCPs that need cache refresh * * Handles backwards compatibility: * - Skips MCPs with version='unknown' (old cache files) * - Only compares when both versions are known */ validateAndDetectVersionChanges(cache: ToolMetadataCache, currentMCPVersions: Record): Promise; /** * Invalidate cache for specific MCPs that have version changes * This allows selective cache refresh without invalidating entire profile */ invalidateMCPsInCache(mcpNames: string[]): Promise; /** * Invalidate embeddings cache for specific MCPs */ invalidateEmbeddingsForMCPs(mcpNames: string[]): Promise; /** * Get a summary of version changes */ getSummary(changes: MCPVersionChange[]): string; /** * Apply version changes by invalidating affected MCPs (atomic operation) * Ensures both metadata and embeddings are invalidated together */ applyVersionChanges(changes: MCPVersionChange[]): Promise; } //# sourceMappingURL=version-aware-validator.d.ts.map