agentic-flow 2.0.1-alpha.10 → 2.0.1-alpha.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -0
- package/dist/.tsbuildinfo +1 -1
- package/dist/intelligence/RuVectorIntelligence.d.ts.map +1 -1
- package/dist/intelligence/RuVectorIntelligence.js +2 -1
- package/dist/intelligence/RuVectorIntelligence.js.map +1 -1
- package/dist/utils/agentdb-runtime-patch.js +2 -2
- package/dist/utils/agentdb-runtime-patch.js.map +1 -1
- package/package.json +1 -1
- package/wasm/reasoningbank/reasoningbank_wasm_bg.js +2 -2
- package/wasm/reasoningbank/reasoningbank_wasm_bg.wasm +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RuVectorIntelligence.d.ts","sourceRoot":"","sources":["../../src/intelligence/RuVectorIntelligence.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"RuVectorIntelligence.d.ts","sourceRoot":"","sources":["../../src/intelligence/RuVectorIntelligence.ts"],"names":[],"mappings":"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"}
|
|
@@ -183,7 +183,8 @@ export class RuVectorIntelligence {
|
|
|
183
183
|
}
|
|
184
184
|
// Initialize training components (simplified - only optimizer needed)
|
|
185
185
|
try {
|
|
186
|
-
|
|
186
|
+
// AdamOptimizer requires: learning_rate, beta1, beta2, epsilon
|
|
187
|
+
this.optimizer = new AdamOptimizer(0.001, 0.9, 0.999, 1e-8);
|
|
187
188
|
}
|
|
188
189
|
catch (err) {
|
|
189
190
|
console.warn('[RuVectorIntelligence] Optimizer init failed:', err);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RuVectorIntelligence.js","sourceRoot":"","sources":["../../src/intelligence/RuVectorIntelligence.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * RuVector Unified Intelligence Layer\n *\n * Integrates the FULL power of RuVector ecosystem:\n *\n * @ruvector/sona - Self-Learning:\n * - Micro-LoRA: Ultra-fast rank-1/2 adaptations (~0.1ms)\n * - Base-LoRA: Deeper pattern adaptations\n * - EWC++: Elastic Weight Consolidation (catastrophic forgetting prevention)\n * - ReasoningBank: Pattern storage/retrieval via findPatterns\n * - Trajectory tracking: Learn from execution paths\n *\n * @ruvector/attention - Advanced Attention:\n * - MultiHeadAttention: Standard transformer attention\n * - FlashAttention: Memory-efficient O(n) attention\n * - HyperbolicAttention: Poincaré ball geometry for hierarchies\n * - MoEAttention: Mixture of Experts routing\n * - GraphRoPeAttention: Graph + Rotary Position Embeddings\n * - EdgeFeaturedAttention: Edge-aware graph attention\n * - DualSpaceAttention: Euclidean + Hyperbolic hybrid\n *\n * @ruvector/core - Vector Database:\n * - HNSW indexing: 150x faster than brute force\n * - Real vector similarity search\n * - Cosine/Euclidean/Dot product distance\n *\n * Performance:\n * - Micro-LoRA adaptation: ~0.1ms\n * - FlashAttention: O(n) complexity vs O(n²)\n * - HNSW search: O(log n) vs O(n)\n * - Background learning: Non-blocking\n */\n\n// Import from @ruvector/sona\nimport { SonaEngine, type JsSonaConfig, type JsLearnedPattern } from '@ruvector/sona';\n\n// Import from @ruvector/attention\nimport {\n MultiHeadAttention,\n FlashAttention,\n HyperbolicAttention,\n MoEAttention,\n GraphRoPeAttention,\n DualSpaceAttention,\n // Training (simplified - only AdamOptimizer needed)\n AdamOptimizer,\n // Utilities\n computeAttentionAsync,\n computeFlashAttentionAsync,\n computeHyperbolicAttentionAsync,\n // Hyperbolic math\n poincareDistance,\n projectToPoincareBall,\n // Types\n type MoEConfig,\n AttentionType,\n} from '@ruvector/attention';\n\n// Import from ruvector core (for HNSW)\nimport ruvector from 'ruvector';\n\n/**\n * Intelligence Layer Configuration\n */\nexport interface RuVectorIntelligenceConfig {\n /** Embedding dimension (default: 384 for all-MiniLM-L6-v2) */\n embeddingDim?: number;\n\n /** Hidden dimension for SONA (default: 256) */\n hiddenDim?: number;\n\n /** Enable SONA self-learning (default: true) */\n enableSona?: boolean;\n\n /** SONA configuration */\n sonaConfig?: Partial<JsSonaConfig>;\n\n /** Attention type for agent routing (default: 'moe') */\n attentionType?: 'multi_head' | 'flash' | 'hyperbolic' | 'moe' | 'graph' | 'dual';\n\n /** Number of attention heads (default: 8) */\n numHeads?: number;\n\n /** Number of MoE experts (default: 4) */\n numExperts?: number;\n\n /** Top-K experts to use (default: 2) */\n topK?: number;\n\n /** Hyperbolic curvature for hierarchical structures (default: 1.0) */\n curvature?: number;\n\n /** Enable HNSW vector index (default: true) */\n enableHnsw?: boolean;\n\n /** HNSW M parameter - connections per node (default: 16) */\n hnswM?: number;\n\n /** HNSW ef_construction (default: 200) */\n hnswEfConstruction?: number;\n\n /** Enable trajectory tracking (default: true) */\n enableTrajectories?: boolean;\n\n /** Quality threshold for learning (default: 0.5) */\n qualityThreshold?: number;\n\n /** Background learning interval in ms (default: 60000 = 1 min) */\n backgroundIntervalMs?: number;\n\n /** Maximum trajectories to keep in memory (default: 1000, LRU eviction) */\n maxTrajectories?: number;\n\n /** Trajectory TTL in ms (default: 1800000 = 30 min) */\n trajectoryTTLMs?: number;\n\n /** Maximum agent embeddings to cache (default: 500, LRU eviction) */\n maxAgentEmbeddings?: number;\n}\n\n/**\n * Trajectory for learning\n */\nexport interface Trajectory {\n id: number;\n query: string;\n embedding: number[];\n steps: TrajectoryStep[];\n route?: string;\n contexts: string[];\n startTime: number;\n}\n\nexport interface TrajectoryStep {\n action: string;\n activations: number[];\n attentionWeights: number[];\n reward: number;\n timestamp: number;\n}\n\n/**\n * Agent routing result\n */\nexport interface AgentRoutingResult {\n agentId: string;\n confidence: number;\n attentionWeights: Float32Array;\n expertWeights?: number[];\n latencyMs: number;\n usedHnsw: boolean;\n usedSona: boolean;\n}\n\n/**\n * Learning outcome\n */\nexport interface LearningOutcome {\n trajectoryId: number;\n success: boolean;\n quality: number;\n patternsLearned: number;\n adaptations: {\n microLora: boolean;\n baseLora: boolean;\n ewc: boolean;\n };\n}\n\n/**\n * RuVector Unified Intelligence Layer\n *\n * Combines SONA self-learning, advanced attention mechanisms,\n * and HNSW vector search for intelligent agent orchestration.\n */\n/**\n * Result wrapper for operations that can fail\n */\nexport interface OperationResult<T> {\n success: boolean;\n value?: T;\n error?: string;\n}\n\nexport class RuVectorIntelligence {\n private config: Required<RuVectorIntelligenceConfig>;\n private initialized = false;\n private initPromise: Promise<void> | null = null;\n\n // SONA Engine for self-learning\n private sona: SonaEngine | null = null;\n\n // Attention mechanisms\n private multiHeadAttention: MultiHeadAttention | null = null;\n private flashAttention: FlashAttention | null = null;\n private hyperbolicAttention: HyperbolicAttention | null = null;\n private moeAttention: MoEAttention | null = null;\n private graphAttention: GraphRoPeAttention | null = null;\n private dualSpaceAttention: DualSpaceAttention | null = null;\n\n // Training (simplified - removed unused scheduler/loss)\n private optimizer: AdamOptimizer | null = null;\n\n // HNSW index for vector search\n private hnswIndex: any = null;\n\n // Active trajectories with LRU tracking\n private trajectories: Map<number, Trajectory> = new Map();\n private trajectoryAccessOrder: number[] = []; // For LRU eviction\n private nextTrajectoryId = 0;\n\n // Agent embeddings with LRU tracking\n private agentEmbeddings: Map<string, Float32Array> = new Map();\n private agentAccessOrder: string[] = []; // For LRU eviction\n\n // Background learning timer\n private learningTimer: NodeJS.Timeout | null = null;\n\n // Cleanup timer for stale trajectories\n private cleanupTimer: NodeJS.Timeout | null = null;\n\n // Statistics\n private stats = {\n totalRoutings: 0,\n totalTrajectories: 0,\n totalLearningCycles: 0,\n avgRoutingLatencyMs: 0,\n patternsLearned: 0,\n hnswQueries: 0,\n sonaAdaptations: 0,\n evictedTrajectories: 0,\n evictedAgents: 0,\n };\n\n constructor(config?: RuVectorIntelligenceConfig) {\n this.config = {\n embeddingDim: config?.embeddingDim ?? 384,\n hiddenDim: config?.hiddenDim ?? 256,\n enableSona: config?.enableSona ?? true,\n sonaConfig: config?.sonaConfig ?? {},\n attentionType: config?.attentionType ?? 'moe',\n numHeads: config?.numHeads ?? 8,\n numExperts: config?.numExperts ?? 4,\n topK: config?.topK ?? 2,\n curvature: config?.curvature ?? 1.0,\n enableHnsw: config?.enableHnsw ?? true,\n hnswM: config?.hnswM ?? 16,\n hnswEfConstruction: config?.hnswEfConstruction ?? 200,\n enableTrajectories: config?.enableTrajectories ?? true,\n qualityThreshold: config?.qualityThreshold ?? 0.5,\n backgroundIntervalMs: config?.backgroundIntervalMs ?? 60000,\n // Memory limits with LRU eviction\n maxTrajectories: config?.maxTrajectories ?? 1000,\n trajectoryTTLMs: config?.trajectoryTTLMs ?? 1800000, // 30 min\n maxAgentEmbeddings: config?.maxAgentEmbeddings ?? 500,\n };\n\n // Initialize asynchronously to avoid race conditions\n this.initPromise = this.initializeAsync();\n }\n\n /**\n * Wait for initialization to complete\n */\n async waitForInit(): Promise<void> {\n if (this.initPromise) {\n await this.initPromise;\n }\n }\n\n /**\n * Initialize all components (async to avoid race conditions)\n */\n private async initializeAsync(): Promise<void> {\n if (this.initialized) return;\n\n const dim = this.config.embeddingDim;\n\n // Initialize SONA Engine\n if (this.config.enableSona) {\n try {\n // Ensure all values are explicitly defined (no undefined values)\n const sonaConfig: JsSonaConfig = {\n hiddenDim: this.config.hiddenDim ?? 256,\n embeddingDim: dim ?? 384,\n microLoraRank: 1, // Ultra-fast rank-1\n baseLoraRank: 8,\n microLoraLr: 0.001,\n baseLoraLr: 0.0001,\n ewcLambda: 1000.0, // EWC++ regularization\n patternClusters: 50,\n trajectoryCapacity: 10000,\n qualityThreshold: this.config.qualityThreshold ?? 0.5, // Ensure defined\n enableSimd: true,\n // Only spread defined values from sonaConfig\n ...(this.config.sonaConfig && Object.fromEntries(\n Object.entries(this.config.sonaConfig).filter(([, v]) => v !== undefined)\n )),\n };\n\n this.sona = SonaEngine.withConfig(sonaConfig);\n } catch (err) {\n console.warn('[RuVectorIntelligence] SONA init failed, using fallback:', err);\n this.sona = null;\n }\n }\n\n // Initialize attention mechanisms based on type\n try {\n switch (this.config.attentionType) {\n case 'multi_head':\n this.multiHeadAttention = new MultiHeadAttention(dim, this.config.numHeads ?? 8);\n break;\n\n case 'flash':\n this.flashAttention = new FlashAttention(dim);\n break;\n\n case 'hyperbolic':\n this.hyperbolicAttention = new HyperbolicAttention(dim, this.config.curvature ?? 1.0);\n break;\n\n case 'moe':\n const moeConfig: MoEConfig = {\n dim,\n numExperts: this.config.numExperts ?? 4,\n topK: this.config.topK ?? 2,\n };\n this.moeAttention = new MoEAttention(moeConfig);\n break;\n\n case 'graph':\n this.graphAttention = new GraphRoPeAttention(dim, 10000);\n break;\n\n case 'dual':\n this.dualSpaceAttention = new DualSpaceAttention(\n dim,\n this.config.curvature ?? 1.0,\n 0.5, // Euclidean weight\n 0.5 // Hyperbolic weight\n );\n break;\n }\n } catch (err) {\n console.warn('[RuVectorIntelligence] Attention init failed, using fallback:', err);\n }\n\n // Initialize training components (simplified - only optimizer needed)\n try {\n this.optimizer = new AdamOptimizer(0.001);\n } catch (err) {\n console.warn('[RuVectorIntelligence] Optimizer init failed:', err);\n }\n\n // Initialize HNSW index\n if (this.config.enableHnsw) {\n try {\n this.initializeHnsw();\n } catch (err) {\n console.warn('[RuVectorIntelligence] HNSW init failed:', err);\n }\n }\n\n // Start background learning\n if (this.config.enableSona) {\n this.startBackgroundLearning();\n }\n\n // Start cleanup timer for stale trajectories\n this.startCleanupTimer();\n\n this.initialized = true;\n }\n\n /**\n * Start cleanup timer for stale trajectories\n */\n private startCleanupTimer(): void {\n if (this.cleanupTimer) {\n clearInterval(this.cleanupTimer);\n }\n\n // Run cleanup every 5 minutes\n this.cleanupTimer = setInterval(() => {\n this.cleanupStaleTrajectories();\n }, 300000);\n }\n\n /**\n * Clean up trajectories older than TTL\n */\n private cleanupStaleTrajectories(): void {\n const now = Date.now();\n const ttl = this.config.trajectoryTTLMs;\n\n for (const [id, trajectory] of this.trajectories) {\n if (now - trajectory.startTime > ttl) {\n this.trajectories.delete(id);\n this.trajectoryAccessOrder = this.trajectoryAccessOrder.filter(t => t !== id);\n this.stats.evictedTrajectories++;\n }\n }\n }\n\n /**\n * LRU eviction for trajectories when limit exceeded\n */\n private evictOldestTrajectory(): void {\n if (this.trajectoryAccessOrder.length === 0) return;\n\n const oldestId = this.trajectoryAccessOrder.shift()!;\n this.trajectories.delete(oldestId);\n this.stats.evictedTrajectories++;\n }\n\n /**\n * LRU eviction for agent embeddings when limit exceeded\n */\n private evictOldestAgent(): void {\n if (this.agentAccessOrder.length === 0) return;\n\n const oldestId = this.agentAccessOrder.shift()!;\n this.agentEmbeddings.delete(oldestId);\n this.stats.evictedAgents++;\n }\n\n /**\n * Update LRU access order for trajectory\n */\n private touchTrajectory(id: number): void {\n const idx = this.trajectoryAccessOrder.indexOf(id);\n if (idx !== -1) {\n this.trajectoryAccessOrder.splice(idx, 1);\n }\n this.trajectoryAccessOrder.push(id);\n }\n\n /**\n * Update LRU access order for agent\n */\n private touchAgent(id: string): void {\n const idx = this.agentAccessOrder.indexOf(id);\n if (idx !== -1) {\n this.agentAccessOrder.splice(idx, 1);\n }\n this.agentAccessOrder.push(id);\n }\n\n /**\n * Initialize HNSW index for fast vector search\n */\n private initializeHnsw(): void {\n try {\n // Use ruvector core HNSW\n this.hnswIndex = new ruvector.HnswIndex({\n dim: this.config.embeddingDim,\n m: this.config.hnswM,\n efConstruction: this.config.hnswEfConstruction,\n distance: 'cosine',\n });\n } catch (error) {\n console.warn('HNSW initialization failed, falling back to brute force:', error);\n this.hnswIndex = null;\n }\n }\n\n /**\n * Register an agent with its embedding\n *\n * @param agentId - Unique agent identifier\n * @param embedding - Agent's semantic embedding\n * @param metadata - Optional metadata\n * @returns Operation result indicating success/failure\n */\n async registerAgent(\n agentId: string,\n embedding: number[] | Float32Array,\n metadata?: Record<string, any>\n ): Promise<OperationResult<void>> {\n await this.waitForInit();\n\n try {\n const embeddingArray = embedding instanceof Float32Array\n ? embedding\n : new Float32Array(embedding);\n\n // LRU eviction if at capacity\n while (this.agentEmbeddings.size >= this.config.maxAgentEmbeddings) {\n this.evictOldestAgent();\n }\n\n // Store in cache and update LRU order\n this.agentEmbeddings.set(agentId, embeddingArray);\n this.touchAgent(agentId);\n\n // Add to HNSW index\n if (this.hnswIndex) {\n try {\n await this.hnswIndex.add(agentId, embeddingArray);\n } catch (error) {\n console.warn(`Failed to add agent ${agentId} to HNSW:`, error);\n }\n }\n\n return { success: true };\n } catch (error) {\n return {\n success: false,\n error: error instanceof Error ? error.message : String(error),\n };\n }\n }\n\n /**\n * Route a task to the best agent using full intelligence stack\n *\n * Uses:\n * - HNSW for fast candidate retrieval\n * - Attention mechanism for ranking\n * - SONA for adaptive learning\n *\n * @param taskEmbedding - Task's semantic embedding\n * @param candidates - Optional candidate agent IDs\n * @param topK - Number of results\n */\n async routeTask(\n taskEmbedding: number[] | Float32Array,\n candidates?: string[],\n topK: number = 5\n ): Promise<AgentRoutingResult[]> {\n const startTime = performance.now();\n const query = taskEmbedding instanceof Float32Array\n ? taskEmbedding\n : new Float32Array(taskEmbedding);\n\n let results: AgentRoutingResult[] = [];\n let usedHnsw = false;\n let usedSona = false;\n\n // Step 1: Get candidates via HNSW (150x faster than brute force)\n let candidateAgents: Array<{ id: string; embedding: Float32Array; score: number }> = [];\n\n if (this.hnswIndex && this.agentEmbeddings.size > 10) {\n try {\n const hnswResults = await this.hnswIndex.search(query, Math.min(topK * 2, 20));\n candidateAgents = hnswResults.map((r: any) => ({\n id: r.id,\n embedding: this.agentEmbeddings.get(r.id)!,\n score: r.score,\n }));\n usedHnsw = true;\n this.stats.hnswQueries++;\n } catch (error) {\n // Fallback to all agents\n }\n }\n\n // Fallback: use provided candidates or all agents\n if (candidateAgents.length === 0) {\n const agentIds = candidates || Array.from(this.agentEmbeddings.keys());\n candidateAgents = agentIds\n .filter(id => this.agentEmbeddings.has(id))\n .map(id => ({\n id,\n embedding: this.agentEmbeddings.get(id)!,\n score: 0,\n }));\n }\n\n if (candidateAgents.length === 0) {\n return [];\n }\n\n // Step 2: Apply SONA Micro-LoRA transformation (~0.1ms)\n let transformedQuery = query;\n if (this.sona) {\n try {\n const loraResult = this.sona.applyMicroLora(Array.from(query));\n transformedQuery = new Float32Array(loraResult);\n usedSona = true;\n this.stats.sonaAdaptations++;\n } catch (error) {\n // Use original query\n }\n }\n\n // Step 3: Compute attention scores\n const keys = candidateAgents.map(c => c.embedding);\n const values = candidateAgents.map(c => c.embedding);\n\n let attentionOutput: Float32Array;\n let expertWeights: number[] | undefined;\n\n switch (this.config.attentionType) {\n case 'moe':\n if (this.moeAttention) {\n attentionOutput = this.moeAttention.compute(transformedQuery, keys, values);\n // MoE provides expert routing weights\n expertWeights = Array.from(attentionOutput.slice(0, this.config.numExperts));\n } else {\n attentionOutput = this.computeFallbackAttention(transformedQuery, keys, values);\n }\n break;\n\n case 'flash':\n if (this.flashAttention) {\n attentionOutput = this.flashAttention.compute(transformedQuery, keys, values);\n } else {\n attentionOutput = this.computeFallbackAttention(transformedQuery, keys, values);\n }\n break;\n\n case 'hyperbolic':\n if (this.hyperbolicAttention) {\n attentionOutput = this.hyperbolicAttention.compute(transformedQuery, keys, values);\n } else {\n attentionOutput = this.computeFallbackAttention(transformedQuery, keys, values);\n }\n break;\n\n case 'dual':\n if (this.dualSpaceAttention) {\n attentionOutput = this.dualSpaceAttention.compute(transformedQuery, keys, values);\n } else {\n attentionOutput = this.computeFallbackAttention(transformedQuery, keys, values);\n }\n break;\n\n default:\n if (this.multiHeadAttention) {\n attentionOutput = this.multiHeadAttention.compute(transformedQuery, keys, values);\n } else {\n attentionOutput = this.computeFallbackAttention(transformedQuery, keys, values);\n }\n }\n\n // Step 4: Compute similarity scores for ranking\n const scores = candidateAgents.map((agent, i) => {\n // Combine HNSW score with attention-weighted score\n const attentionScore = this.cosineSimilarity(\n attentionOutput,\n agent.embedding\n );\n const hnswScore = agent.score || 0;\n\n // Weighted combination\n const finalScore = usedHnsw\n ? 0.3 * hnswScore + 0.7 * attentionScore\n : attentionScore;\n\n return {\n agentId: agent.id,\n confidence: finalScore,\n attentionWeights: attentionOutput,\n expertWeights,\n latencyMs: 0,\n usedHnsw,\n usedSona,\n };\n });\n\n // Sort by confidence\n results = scores\n .sort((a, b) => b.confidence - a.confidence)\n .slice(0, topK);\n\n // Update latency\n const latencyMs = performance.now() - startTime;\n results.forEach(r => (r.latencyMs = latencyMs));\n\n // Update stats\n this.stats.totalRoutings++;\n this.stats.avgRoutingLatencyMs =\n (this.stats.avgRoutingLatencyMs * (this.stats.totalRoutings - 1) + latencyMs) /\n this.stats.totalRoutings;\n\n return results;\n }\n\n /**\n * Fallback attention using dot product\n */\n private computeFallbackAttention(\n query: Float32Array,\n keys: Float32Array[],\n values: Float32Array[]\n ): Float32Array {\n const dim = query.length;\n const result = new Float32Array(dim);\n let totalWeight = 0;\n\n for (let i = 0; i < keys.length; i++) {\n const similarity = this.cosineSimilarity(query, keys[i]);\n const weight = Math.exp(similarity * 10); // Temperature scaling\n totalWeight += weight;\n\n for (let j = 0; j < dim; j++) {\n result[j] += weight * values[i][j];\n }\n }\n\n // Normalize\n if (totalWeight > 0) {\n for (let j = 0; j < dim; j++) {\n result[j] /= totalWeight;\n }\n }\n\n return result;\n }\n\n /**\n * Cosine similarity between two vectors\n */\n private cosineSimilarity(a: Float32Array, b: Float32Array): number {\n let dot = 0;\n let normA = 0;\n let normB = 0;\n\n for (let i = 0; i < a.length; i++) {\n dot += a[i] * b[i];\n normA += a[i] * a[i];\n normB += b[i] * b[i];\n }\n\n const norm = Math.sqrt(normA) * Math.sqrt(normB);\n return norm > 0 ? dot / norm : 0;\n }\n\n // ==========================================================================\n // Trajectory Learning (SONA)\n // ==========================================================================\n\n /**\n * Begin a new trajectory for learning\n *\n * @param query - The task query\n * @param embedding - Query embedding\n * @returns Operation result with trajectory ID\n */\n beginTrajectory(query: string, embedding: number[]): OperationResult<number> {\n if (!this.config.enableTrajectories) {\n return {\n success: false,\n error: 'Trajectories are disabled in config',\n };\n }\n\n if (!this.sona) {\n return {\n success: false,\n error: 'SONA engine not initialized',\n };\n }\n\n try {\n // LRU eviction if at capacity\n while (this.trajectories.size >= this.config.maxTrajectories) {\n this.evictOldestTrajectory();\n }\n\n const trajectoryId = this.nextTrajectoryId++;\n\n // Start SONA trajectory\n const sonaId = this.sona.beginTrajectory(embedding);\n\n // Store local trajectory\n this.trajectories.set(trajectoryId, {\n id: sonaId,\n query,\n embedding,\n steps: [],\n contexts: [],\n startTime: Date.now(),\n });\n\n // Update LRU order\n this.touchTrajectory(trajectoryId);\n\n this.stats.totalTrajectories++;\n return { success: true, value: trajectoryId };\n } catch (error) {\n return {\n success: false,\n error: error instanceof Error ? error.message : String(error),\n };\n }\n }\n\n /**\n * Add a step to trajectory\n *\n * @param trajectoryId - Trajectory ID from beginTrajectory\n * @param action - Action taken (e.g., agent selected)\n * @param reward - Reward for this step (0-1)\n * @param activations - Optional activations\n * @param attentionWeights - Optional attention weights\n */\n addTrajectoryStep(\n trajectoryId: number,\n action: string,\n reward: number,\n activations?: number[],\n attentionWeights?: number[]\n ): void {\n const trajectory = this.trajectories.get(trajectoryId);\n if (!trajectory || !this.sona) {\n return;\n }\n\n const step: TrajectoryStep = {\n action,\n activations: activations || new Array(this.config.hiddenDim).fill(0),\n attentionWeights: attentionWeights || new Array(this.config.numHeads).fill(0),\n reward,\n timestamp: Date.now(),\n };\n\n trajectory.steps.push(step);\n\n // Add to SONA\n this.sona.addTrajectoryStep(\n trajectory.id,\n step.activations,\n step.attentionWeights,\n reward\n );\n }\n\n /**\n * Set the route (agent selected) for trajectory\n */\n setTrajectoryRoute(trajectoryId: number, route: string): void {\n const trajectory = this.trajectories.get(trajectoryId);\n if (!trajectory || !this.sona) {\n return;\n }\n\n trajectory.route = route;\n this.sona.setTrajectoryRoute(trajectory.id, route);\n }\n\n /**\n * Add context to trajectory\n */\n addTrajectoryContext(trajectoryId: number, contextId: string): void {\n const trajectory = this.trajectories.get(trajectoryId);\n if (!trajectory || !this.sona) {\n return;\n }\n\n trajectory.contexts.push(contextId);\n this.sona.addTrajectoryContext(trajectory.id, contextId);\n }\n\n /**\n * End trajectory and submit for learning\n *\n * @param trajectoryId - Trajectory ID\n * @param success - Whether the task succeeded\n * @param quality - Quality score (0-1)\n * @returns Learning outcome\n */\n endTrajectory(\n trajectoryId: number,\n success: boolean,\n quality: number\n ): LearningOutcome {\n const trajectory = this.trajectories.get(trajectoryId);\n if (!trajectory || !this.sona) {\n return {\n trajectoryId,\n success,\n quality,\n patternsLearned: 0,\n adaptations: { microLora: false, baseLora: false, ewc: false },\n };\n }\n\n // End SONA trajectory\n this.sona.endTrajectory(trajectory.id, quality);\n\n // Cleanup\n this.trajectories.delete(trajectoryId);\n\n return {\n trajectoryId,\n success,\n quality,\n patternsLearned: quality >= this.config.qualityThreshold ? 1 : 0,\n adaptations: {\n microLora: true, // Micro-LoRA always adapts\n baseLora: quality >= 0.7, // Base-LoRA for high quality\n ewc: quality >= 0.8, // EWC++ for very high quality\n },\n };\n }\n\n // ==========================================================================\n // Pattern Retrieval (ReasoningBank)\n // ==========================================================================\n\n /**\n * Find similar learned patterns\n *\n * Uses SONA's ReasoningBank for pattern retrieval\n *\n * @param embedding - Query embedding\n * @param k - Number of patterns to return\n */\n findPatterns(embedding: number[], k: number = 5): JsLearnedPattern[] {\n if (!this.sona) {\n return [];\n }\n\n return this.sona.findPatterns(embedding, k);\n }\n\n /**\n * Force a learning cycle\n */\n forceLearning(): string {\n if (!this.sona) {\n return 'SONA not enabled';\n }\n\n const result = this.sona.forceLearn();\n this.stats.totalLearningCycles++;\n return result;\n }\n\n // ==========================================================================\n // Background Learning\n // ==========================================================================\n\n /**\n * Start background learning timer\n */\n private startBackgroundLearning(): void {\n if (this.learningTimer) {\n clearInterval(this.learningTimer);\n }\n\n this.learningTimer = setInterval(() => {\n if (this.sona) {\n const result = this.sona.tick();\n if (result) {\n this.stats.totalLearningCycles++;\n this.stats.patternsLearned = this.getPatternsCount();\n }\n }\n }, this.config.backgroundIntervalMs);\n }\n\n /**\n * Get patterns count from SONA stats\n */\n private getPatternsCount(): number {\n if (!this.sona) return 0;\n\n try {\n const stats = JSON.parse(this.sona.getStats());\n return stats.patterns_count || 0;\n } catch {\n return 0;\n }\n }\n\n // ==========================================================================\n // Async Attention (for large batches)\n // ==========================================================================\n\n /**\n * Compute attention asynchronously\n *\n * Useful for large batches or when non-blocking is required\n */\n async computeAttentionAsync(\n query: Float32Array,\n keys: Float32Array[],\n values: Float32Array[],\n type?: 'flash' | 'hyperbolic' | 'standard'\n ): Promise<Float32Array> {\n switch (type) {\n case 'flash':\n return computeFlashAttentionAsync(query, keys, values);\n\n case 'hyperbolic':\n return computeHyperbolicAttentionAsync(\n query,\n keys,\n values,\n this.config.curvature\n );\n\n default:\n return computeAttentionAsync(query, keys, values, AttentionType.MultiHead);\n }\n }\n\n // ==========================================================================\n // Hyperbolic Operations (for hierarchical structures)\n // ==========================================================================\n\n /**\n * Compute Poincaré distance between two embeddings\n *\n * Useful for hierarchical agent structures\n */\n poincareDistance(a: Float32Array, b: Float32Array): number {\n return poincareDistance(a, b, this.config.curvature);\n }\n\n /**\n * Project embedding to Poincaré ball\n */\n projectToPoincare(embedding: Float32Array): Float32Array {\n return projectToPoincareBall(embedding, this.config.curvature);\n }\n\n // ==========================================================================\n // Statistics & Status\n // ==========================================================================\n\n /**\n * Get intelligence layer statistics\n */\n getStats(): typeof this.stats & { sonaStats?: any } {\n let sonaStats: any = null;\n\n if (this.sona) {\n try {\n sonaStats = JSON.parse(this.sona.getStats());\n } catch {}\n }\n\n return {\n ...this.stats,\n sonaStats,\n };\n }\n\n /**\n * Enable/disable the intelligence layer\n */\n setEnabled(enabled: boolean): void {\n if (this.sona) {\n this.sona.setEnabled(enabled);\n }\n }\n\n /**\n * Check if enabled\n */\n isEnabled(): boolean {\n return this.sona?.isEnabled() ?? false;\n }\n\n /**\n * Cleanup resources\n */\n dispose(): void {\n if (this.learningTimer) {\n clearInterval(this.learningTimer);\n this.learningTimer = null;\n }\n\n if (this.cleanupTimer) {\n clearInterval(this.cleanupTimer);\n this.cleanupTimer = null;\n }\n\n // Flush SONA\n if (this.sona) {\n this.sona.flush();\n }\n\n // Clear caches and LRU tracking\n this.trajectories.clear();\n this.trajectoryAccessOrder = [];\n this.agentEmbeddings.clear();\n this.agentAccessOrder = [];\n }\n}\n\n/**\n * Create a default intelligence layer\n */\nexport function createIntelligenceLayer(\n config?: RuVectorIntelligenceConfig\n): RuVectorIntelligence {\n return new RuVectorIntelligence(config);\n}\n\n/**\n * Presets for common configurations\n */\nexport const IntelligencePresets = {\n /** Fast routing with MoE and minimal learning */\n fast: {\n attentionType: 'moe' as const,\n numExperts: 4,\n topK: 2,\n enableTrajectories: false,\n backgroundIntervalMs: 300000, // 5 min\n },\n\n /** Balanced performance and learning */\n balanced: {\n attentionType: 'moe' as const,\n numExperts: 4,\n topK: 2,\n enableTrajectories: true,\n backgroundIntervalMs: 60000, // 1 min\n qualityThreshold: 0.5,\n },\n\n /** Maximum learning for development */\n learning: {\n attentionType: 'dual' as const,\n enableTrajectories: true,\n backgroundIntervalMs: 30000, // 30 sec\n qualityThreshold: 0.3,\n sonaConfig: {\n microLoraRank: 2,\n baseLoraRank: 16,\n trajectoryCapacity: 50000,\n },\n },\n\n /** Hierarchical structures (Poincaré geometry) */\n hierarchical: {\n attentionType: 'hyperbolic' as const,\n curvature: 1.0,\n enableTrajectories: true,\n },\n\n /** Graph-based reasoning */\n graph: {\n attentionType: 'graph' as const,\n enableTrajectories: true,\n },\n};\n"]}
|
|
1
|
+
{"version":3,"file":"RuVectorIntelligence.js","sourceRoot":"","sources":["../../src/intelligence/RuVectorIntelligence.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * RuVector Unified Intelligence Layer\n *\n * Integrates the FULL power of RuVector ecosystem:\n *\n * @ruvector/sona - Self-Learning:\n * - Micro-LoRA: Ultra-fast rank-1/2 adaptations (~0.1ms)\n * - Base-LoRA: Deeper pattern adaptations\n * - EWC++: Elastic Weight Consolidation (catastrophic forgetting prevention)\n * - ReasoningBank: Pattern storage/retrieval via findPatterns\n * - Trajectory tracking: Learn from execution paths\n *\n * @ruvector/attention - Advanced Attention:\n * - MultiHeadAttention: Standard transformer attention\n * - FlashAttention: Memory-efficient O(n) attention\n * - HyperbolicAttention: Poincaré ball geometry for hierarchies\n * - MoEAttention: Mixture of Experts routing\n * - GraphRoPeAttention: Graph + Rotary Position Embeddings\n * - EdgeFeaturedAttention: Edge-aware graph attention\n * - DualSpaceAttention: Euclidean + Hyperbolic hybrid\n *\n * @ruvector/core - Vector Database:\n * - HNSW indexing: 150x faster than brute force\n * - Real vector similarity search\n * - Cosine/Euclidean/Dot product distance\n *\n * Performance:\n * - Micro-LoRA adaptation: ~0.1ms\n * - FlashAttention: O(n) complexity vs O(n²)\n * - HNSW search: O(log n) vs O(n)\n * - Background learning: Non-blocking\n */\n\n// Import from @ruvector/sona\nimport { SonaEngine, type JsSonaConfig, type JsLearnedPattern } from '@ruvector/sona';\n\n// Import from @ruvector/attention\nimport {\n MultiHeadAttention,\n FlashAttention,\n HyperbolicAttention,\n MoEAttention,\n GraphRoPeAttention,\n DualSpaceAttention,\n // Training (simplified - only AdamOptimizer needed)\n AdamOptimizer,\n // Utilities\n computeAttentionAsync,\n computeFlashAttentionAsync,\n computeHyperbolicAttentionAsync,\n // Hyperbolic math\n poincareDistance,\n projectToPoincareBall,\n // Types\n type MoEConfig,\n AttentionType,\n} from '@ruvector/attention';\n\n// Import from ruvector core (for HNSW)\nimport ruvector from 'ruvector';\n\n/**\n * Intelligence Layer Configuration\n */\nexport interface RuVectorIntelligenceConfig {\n /** Embedding dimension (default: 384 for all-MiniLM-L6-v2) */\n embeddingDim?: number;\n\n /** Hidden dimension for SONA (default: 256) */\n hiddenDim?: number;\n\n /** Enable SONA self-learning (default: true) */\n enableSona?: boolean;\n\n /** SONA configuration */\n sonaConfig?: Partial<JsSonaConfig>;\n\n /** Attention type for agent routing (default: 'moe') */\n attentionType?: 'multi_head' | 'flash' | 'hyperbolic' | 'moe' | 'graph' | 'dual';\n\n /** Number of attention heads (default: 8) */\n numHeads?: number;\n\n /** Number of MoE experts (default: 4) */\n numExperts?: number;\n\n /** Top-K experts to use (default: 2) */\n topK?: number;\n\n /** Hyperbolic curvature for hierarchical structures (default: 1.0) */\n curvature?: number;\n\n /** Enable HNSW vector index (default: true) */\n enableHnsw?: boolean;\n\n /** HNSW M parameter - connections per node (default: 16) */\n hnswM?: number;\n\n /** HNSW ef_construction (default: 200) */\n hnswEfConstruction?: number;\n\n /** Enable trajectory tracking (default: true) */\n enableTrajectories?: boolean;\n\n /** Quality threshold for learning (default: 0.5) */\n qualityThreshold?: number;\n\n /** Background learning interval in ms (default: 60000 = 1 min) */\n backgroundIntervalMs?: number;\n\n /** Maximum trajectories to keep in memory (default: 1000, LRU eviction) */\n maxTrajectories?: number;\n\n /** Trajectory TTL in ms (default: 1800000 = 30 min) */\n trajectoryTTLMs?: number;\n\n /** Maximum agent embeddings to cache (default: 500, LRU eviction) */\n maxAgentEmbeddings?: number;\n}\n\n/**\n * Trajectory for learning\n */\nexport interface Trajectory {\n id: number;\n query: string;\n embedding: number[];\n steps: TrajectoryStep[];\n route?: string;\n contexts: string[];\n startTime: number;\n}\n\nexport interface TrajectoryStep {\n action: string;\n activations: number[];\n attentionWeights: number[];\n reward: number;\n timestamp: number;\n}\n\n/**\n * Agent routing result\n */\nexport interface AgentRoutingResult {\n agentId: string;\n confidence: number;\n attentionWeights: Float32Array;\n expertWeights?: number[];\n latencyMs: number;\n usedHnsw: boolean;\n usedSona: boolean;\n}\n\n/**\n * Learning outcome\n */\nexport interface LearningOutcome {\n trajectoryId: number;\n success: boolean;\n quality: number;\n patternsLearned: number;\n adaptations: {\n microLora: boolean;\n baseLora: boolean;\n ewc: boolean;\n };\n}\n\n/**\n * RuVector Unified Intelligence Layer\n *\n * Combines SONA self-learning, advanced attention mechanisms,\n * and HNSW vector search for intelligent agent orchestration.\n */\n/**\n * Result wrapper for operations that can fail\n */\nexport interface OperationResult<T> {\n success: boolean;\n value?: T;\n error?: string;\n}\n\nexport class RuVectorIntelligence {\n private config: Required<RuVectorIntelligenceConfig>;\n private initialized = false;\n private initPromise: Promise<void> | null = null;\n\n // SONA Engine for self-learning\n private sona: SonaEngine | null = null;\n\n // Attention mechanisms\n private multiHeadAttention: MultiHeadAttention | null = null;\n private flashAttention: FlashAttention | null = null;\n private hyperbolicAttention: HyperbolicAttention | null = null;\n private moeAttention: MoEAttention | null = null;\n private graphAttention: GraphRoPeAttention | null = null;\n private dualSpaceAttention: DualSpaceAttention | null = null;\n\n // Training (simplified - removed unused scheduler/loss)\n private optimizer: AdamOptimizer | null = null;\n\n // HNSW index for vector search\n private hnswIndex: any = null;\n\n // Active trajectories with LRU tracking\n private trajectories: Map<number, Trajectory> = new Map();\n private trajectoryAccessOrder: number[] = []; // For LRU eviction\n private nextTrajectoryId = 0;\n\n // Agent embeddings with LRU tracking\n private agentEmbeddings: Map<string, Float32Array> = new Map();\n private agentAccessOrder: string[] = []; // For LRU eviction\n\n // Background learning timer\n private learningTimer: NodeJS.Timeout | null = null;\n\n // Cleanup timer for stale trajectories\n private cleanupTimer: NodeJS.Timeout | null = null;\n\n // Statistics\n private stats = {\n totalRoutings: 0,\n totalTrajectories: 0,\n totalLearningCycles: 0,\n avgRoutingLatencyMs: 0,\n patternsLearned: 0,\n hnswQueries: 0,\n sonaAdaptations: 0,\n evictedTrajectories: 0,\n evictedAgents: 0,\n };\n\n constructor(config?: RuVectorIntelligenceConfig) {\n this.config = {\n embeddingDim: config?.embeddingDim ?? 384,\n hiddenDim: config?.hiddenDim ?? 256,\n enableSona: config?.enableSona ?? true,\n sonaConfig: config?.sonaConfig ?? {},\n attentionType: config?.attentionType ?? 'moe',\n numHeads: config?.numHeads ?? 8,\n numExperts: config?.numExperts ?? 4,\n topK: config?.topK ?? 2,\n curvature: config?.curvature ?? 1.0,\n enableHnsw: config?.enableHnsw ?? true,\n hnswM: config?.hnswM ?? 16,\n hnswEfConstruction: config?.hnswEfConstruction ?? 200,\n enableTrajectories: config?.enableTrajectories ?? true,\n qualityThreshold: config?.qualityThreshold ?? 0.5,\n backgroundIntervalMs: config?.backgroundIntervalMs ?? 60000,\n // Memory limits with LRU eviction\n maxTrajectories: config?.maxTrajectories ?? 1000,\n trajectoryTTLMs: config?.trajectoryTTLMs ?? 1800000, // 30 min\n maxAgentEmbeddings: config?.maxAgentEmbeddings ?? 500,\n };\n\n // Initialize asynchronously to avoid race conditions\n this.initPromise = this.initializeAsync();\n }\n\n /**\n * Wait for initialization to complete\n */\n async waitForInit(): Promise<void> {\n if (this.initPromise) {\n await this.initPromise;\n }\n }\n\n /**\n * Initialize all components (async to avoid race conditions)\n */\n private async initializeAsync(): Promise<void> {\n if (this.initialized) return;\n\n const dim = this.config.embeddingDim;\n\n // Initialize SONA Engine\n if (this.config.enableSona) {\n try {\n // Ensure all values are explicitly defined (no undefined values)\n const sonaConfig: JsSonaConfig = {\n hiddenDim: this.config.hiddenDim ?? 256,\n embeddingDim: dim ?? 384,\n microLoraRank: 1, // Ultra-fast rank-1\n baseLoraRank: 8,\n microLoraLr: 0.001,\n baseLoraLr: 0.0001,\n ewcLambda: 1000.0, // EWC++ regularization\n patternClusters: 50,\n trajectoryCapacity: 10000,\n qualityThreshold: this.config.qualityThreshold ?? 0.5, // Ensure defined\n enableSimd: true,\n // Only spread defined values from sonaConfig\n ...(this.config.sonaConfig && Object.fromEntries(\n Object.entries(this.config.sonaConfig).filter(([, v]) => v !== undefined)\n )),\n };\n\n this.sona = SonaEngine.withConfig(sonaConfig);\n } catch (err) {\n console.warn('[RuVectorIntelligence] SONA init failed, using fallback:', err);\n this.sona = null;\n }\n }\n\n // Initialize attention mechanisms based on type\n try {\n switch (this.config.attentionType) {\n case 'multi_head':\n this.multiHeadAttention = new MultiHeadAttention(dim, this.config.numHeads ?? 8);\n break;\n\n case 'flash':\n this.flashAttention = new FlashAttention(dim);\n break;\n\n case 'hyperbolic':\n this.hyperbolicAttention = new HyperbolicAttention(dim, this.config.curvature ?? 1.0);\n break;\n\n case 'moe':\n const moeConfig: MoEConfig = {\n dim,\n numExperts: this.config.numExperts ?? 4,\n topK: this.config.topK ?? 2,\n };\n this.moeAttention = new MoEAttention(moeConfig);\n break;\n\n case 'graph':\n this.graphAttention = new GraphRoPeAttention(dim, 10000);\n break;\n\n case 'dual':\n this.dualSpaceAttention = new DualSpaceAttention(\n dim,\n this.config.curvature ?? 1.0,\n 0.5, // Euclidean weight\n 0.5 // Hyperbolic weight\n );\n break;\n }\n } catch (err) {\n console.warn('[RuVectorIntelligence] Attention init failed, using fallback:', err);\n }\n\n // Initialize training components (simplified - only optimizer needed)\n try {\n // AdamOptimizer requires: learning_rate, beta1, beta2, epsilon\n this.optimizer = new AdamOptimizer(0.001, 0.9, 0.999, 1e-8);\n } catch (err) {\n console.warn('[RuVectorIntelligence] Optimizer init failed:', err);\n }\n\n // Initialize HNSW index\n if (this.config.enableHnsw) {\n try {\n this.initializeHnsw();\n } catch (err) {\n console.warn('[RuVectorIntelligence] HNSW init failed:', err);\n }\n }\n\n // Start background learning\n if (this.config.enableSona) {\n this.startBackgroundLearning();\n }\n\n // Start cleanup timer for stale trajectories\n this.startCleanupTimer();\n\n this.initialized = true;\n }\n\n /**\n * Start cleanup timer for stale trajectories\n */\n private startCleanupTimer(): void {\n if (this.cleanupTimer) {\n clearInterval(this.cleanupTimer);\n }\n\n // Run cleanup every 5 minutes\n this.cleanupTimer = setInterval(() => {\n this.cleanupStaleTrajectories();\n }, 300000);\n }\n\n /**\n * Clean up trajectories older than TTL\n */\n private cleanupStaleTrajectories(): void {\n const now = Date.now();\n const ttl = this.config.trajectoryTTLMs;\n\n for (const [id, trajectory] of this.trajectories) {\n if (now - trajectory.startTime > ttl) {\n this.trajectories.delete(id);\n this.trajectoryAccessOrder = this.trajectoryAccessOrder.filter(t => t !== id);\n this.stats.evictedTrajectories++;\n }\n }\n }\n\n /**\n * LRU eviction for trajectories when limit exceeded\n */\n private evictOldestTrajectory(): void {\n if (this.trajectoryAccessOrder.length === 0) return;\n\n const oldestId = this.trajectoryAccessOrder.shift()!;\n this.trajectories.delete(oldestId);\n this.stats.evictedTrajectories++;\n }\n\n /**\n * LRU eviction for agent embeddings when limit exceeded\n */\n private evictOldestAgent(): void {\n if (this.agentAccessOrder.length === 0) return;\n\n const oldestId = this.agentAccessOrder.shift()!;\n this.agentEmbeddings.delete(oldestId);\n this.stats.evictedAgents++;\n }\n\n /**\n * Update LRU access order for trajectory\n */\n private touchTrajectory(id: number): void {\n const idx = this.trajectoryAccessOrder.indexOf(id);\n if (idx !== -1) {\n this.trajectoryAccessOrder.splice(idx, 1);\n }\n this.trajectoryAccessOrder.push(id);\n }\n\n /**\n * Update LRU access order for agent\n */\n private touchAgent(id: string): void {\n const idx = this.agentAccessOrder.indexOf(id);\n if (idx !== -1) {\n this.agentAccessOrder.splice(idx, 1);\n }\n this.agentAccessOrder.push(id);\n }\n\n /**\n * Initialize HNSW index for fast vector search\n */\n private initializeHnsw(): void {\n try {\n // Use ruvector core HNSW\n this.hnswIndex = new ruvector.HnswIndex({\n dim: this.config.embeddingDim,\n m: this.config.hnswM,\n efConstruction: this.config.hnswEfConstruction,\n distance: 'cosine',\n });\n } catch (error) {\n console.warn('HNSW initialization failed, falling back to brute force:', error);\n this.hnswIndex = null;\n }\n }\n\n /**\n * Register an agent with its embedding\n *\n * @param agentId - Unique agent identifier\n * @param embedding - Agent's semantic embedding\n * @param metadata - Optional metadata\n * @returns Operation result indicating success/failure\n */\n async registerAgent(\n agentId: string,\n embedding: number[] | Float32Array,\n metadata?: Record<string, any>\n ): Promise<OperationResult<void>> {\n await this.waitForInit();\n\n try {\n const embeddingArray = embedding instanceof Float32Array\n ? embedding\n : new Float32Array(embedding);\n\n // LRU eviction if at capacity\n while (this.agentEmbeddings.size >= this.config.maxAgentEmbeddings) {\n this.evictOldestAgent();\n }\n\n // Store in cache and update LRU order\n this.agentEmbeddings.set(agentId, embeddingArray);\n this.touchAgent(agentId);\n\n // Add to HNSW index\n if (this.hnswIndex) {\n try {\n await this.hnswIndex.add(agentId, embeddingArray);\n } catch (error) {\n console.warn(`Failed to add agent ${agentId} to HNSW:`, error);\n }\n }\n\n return { success: true };\n } catch (error) {\n return {\n success: false,\n error: error instanceof Error ? error.message : String(error),\n };\n }\n }\n\n /**\n * Route a task to the best agent using full intelligence stack\n *\n * Uses:\n * - HNSW for fast candidate retrieval\n * - Attention mechanism for ranking\n * - SONA for adaptive learning\n *\n * @param taskEmbedding - Task's semantic embedding\n * @param candidates - Optional candidate agent IDs\n * @param topK - Number of results\n */\n async routeTask(\n taskEmbedding: number[] | Float32Array,\n candidates?: string[],\n topK: number = 5\n ): Promise<AgentRoutingResult[]> {\n const startTime = performance.now();\n const query = taskEmbedding instanceof Float32Array\n ? taskEmbedding\n : new Float32Array(taskEmbedding);\n\n let results: AgentRoutingResult[] = [];\n let usedHnsw = false;\n let usedSona = false;\n\n // Step 1: Get candidates via HNSW (150x faster than brute force)\n let candidateAgents: Array<{ id: string; embedding: Float32Array; score: number }> = [];\n\n if (this.hnswIndex && this.agentEmbeddings.size > 10) {\n try {\n const hnswResults = await this.hnswIndex.search(query, Math.min(topK * 2, 20));\n candidateAgents = hnswResults.map((r: any) => ({\n id: r.id,\n embedding: this.agentEmbeddings.get(r.id)!,\n score: r.score,\n }));\n usedHnsw = true;\n this.stats.hnswQueries++;\n } catch (error) {\n // Fallback to all agents\n }\n }\n\n // Fallback: use provided candidates or all agents\n if (candidateAgents.length === 0) {\n const agentIds = candidates || Array.from(this.agentEmbeddings.keys());\n candidateAgents = agentIds\n .filter(id => this.agentEmbeddings.has(id))\n .map(id => ({\n id,\n embedding: this.agentEmbeddings.get(id)!,\n score: 0,\n }));\n }\n\n if (candidateAgents.length === 0) {\n return [];\n }\n\n // Step 2: Apply SONA Micro-LoRA transformation (~0.1ms)\n let transformedQuery = query;\n if (this.sona) {\n try {\n const loraResult = this.sona.applyMicroLora(Array.from(query));\n transformedQuery = new Float32Array(loraResult);\n usedSona = true;\n this.stats.sonaAdaptations++;\n } catch (error) {\n // Use original query\n }\n }\n\n // Step 3: Compute attention scores\n const keys = candidateAgents.map(c => c.embedding);\n const values = candidateAgents.map(c => c.embedding);\n\n let attentionOutput: Float32Array;\n let expertWeights: number[] | undefined;\n\n switch (this.config.attentionType) {\n case 'moe':\n if (this.moeAttention) {\n attentionOutput = this.moeAttention.compute(transformedQuery, keys, values);\n // MoE provides expert routing weights\n expertWeights = Array.from(attentionOutput.slice(0, this.config.numExperts));\n } else {\n attentionOutput = this.computeFallbackAttention(transformedQuery, keys, values);\n }\n break;\n\n case 'flash':\n if (this.flashAttention) {\n attentionOutput = this.flashAttention.compute(transformedQuery, keys, values);\n } else {\n attentionOutput = this.computeFallbackAttention(transformedQuery, keys, values);\n }\n break;\n\n case 'hyperbolic':\n if (this.hyperbolicAttention) {\n attentionOutput = this.hyperbolicAttention.compute(transformedQuery, keys, values);\n } else {\n attentionOutput = this.computeFallbackAttention(transformedQuery, keys, values);\n }\n break;\n\n case 'dual':\n if (this.dualSpaceAttention) {\n attentionOutput = this.dualSpaceAttention.compute(transformedQuery, keys, values);\n } else {\n attentionOutput = this.computeFallbackAttention(transformedQuery, keys, values);\n }\n break;\n\n default:\n if (this.multiHeadAttention) {\n attentionOutput = this.multiHeadAttention.compute(transformedQuery, keys, values);\n } else {\n attentionOutput = this.computeFallbackAttention(transformedQuery, keys, values);\n }\n }\n\n // Step 4: Compute similarity scores for ranking\n const scores = candidateAgents.map((agent, i) => {\n // Combine HNSW score with attention-weighted score\n const attentionScore = this.cosineSimilarity(\n attentionOutput,\n agent.embedding\n );\n const hnswScore = agent.score || 0;\n\n // Weighted combination\n const finalScore = usedHnsw\n ? 0.3 * hnswScore + 0.7 * attentionScore\n : attentionScore;\n\n return {\n agentId: agent.id,\n confidence: finalScore,\n attentionWeights: attentionOutput,\n expertWeights,\n latencyMs: 0,\n usedHnsw,\n usedSona,\n };\n });\n\n // Sort by confidence\n results = scores\n .sort((a, b) => b.confidence - a.confidence)\n .slice(0, topK);\n\n // Update latency\n const latencyMs = performance.now() - startTime;\n results.forEach(r => (r.latencyMs = latencyMs));\n\n // Update stats\n this.stats.totalRoutings++;\n this.stats.avgRoutingLatencyMs =\n (this.stats.avgRoutingLatencyMs * (this.stats.totalRoutings - 1) + latencyMs) /\n this.stats.totalRoutings;\n\n return results;\n }\n\n /**\n * Fallback attention using dot product\n */\n private computeFallbackAttention(\n query: Float32Array,\n keys: Float32Array[],\n values: Float32Array[]\n ): Float32Array {\n const dim = query.length;\n const result = new Float32Array(dim);\n let totalWeight = 0;\n\n for (let i = 0; i < keys.length; i++) {\n const similarity = this.cosineSimilarity(query, keys[i]);\n const weight = Math.exp(similarity * 10); // Temperature scaling\n totalWeight += weight;\n\n for (let j = 0; j < dim; j++) {\n result[j] += weight * values[i][j];\n }\n }\n\n // Normalize\n if (totalWeight > 0) {\n for (let j = 0; j < dim; j++) {\n result[j] /= totalWeight;\n }\n }\n\n return result;\n }\n\n /**\n * Cosine similarity between two vectors\n */\n private cosineSimilarity(a: Float32Array, b: Float32Array): number {\n let dot = 0;\n let normA = 0;\n let normB = 0;\n\n for (let i = 0; i < a.length; i++) {\n dot += a[i] * b[i];\n normA += a[i] * a[i];\n normB += b[i] * b[i];\n }\n\n const norm = Math.sqrt(normA) * Math.sqrt(normB);\n return norm > 0 ? dot / norm : 0;\n }\n\n // ==========================================================================\n // Trajectory Learning (SONA)\n // ==========================================================================\n\n /**\n * Begin a new trajectory for learning\n *\n * @param query - The task query\n * @param embedding - Query embedding\n * @returns Operation result with trajectory ID\n */\n beginTrajectory(query: string, embedding: number[]): OperationResult<number> {\n if (!this.config.enableTrajectories) {\n return {\n success: false,\n error: 'Trajectories are disabled in config',\n };\n }\n\n if (!this.sona) {\n return {\n success: false,\n error: 'SONA engine not initialized',\n };\n }\n\n try {\n // LRU eviction if at capacity\n while (this.trajectories.size >= this.config.maxTrajectories) {\n this.evictOldestTrajectory();\n }\n\n const trajectoryId = this.nextTrajectoryId++;\n\n // Start SONA trajectory\n const sonaId = this.sona.beginTrajectory(embedding);\n\n // Store local trajectory\n this.trajectories.set(trajectoryId, {\n id: sonaId,\n query,\n embedding,\n steps: [],\n contexts: [],\n startTime: Date.now(),\n });\n\n // Update LRU order\n this.touchTrajectory(trajectoryId);\n\n this.stats.totalTrajectories++;\n return { success: true, value: trajectoryId };\n } catch (error) {\n return {\n success: false,\n error: error instanceof Error ? error.message : String(error),\n };\n }\n }\n\n /**\n * Add a step to trajectory\n *\n * @param trajectoryId - Trajectory ID from beginTrajectory\n * @param action - Action taken (e.g., agent selected)\n * @param reward - Reward for this step (0-1)\n * @param activations - Optional activations\n * @param attentionWeights - Optional attention weights\n */\n addTrajectoryStep(\n trajectoryId: number,\n action: string,\n reward: number,\n activations?: number[],\n attentionWeights?: number[]\n ): void {\n const trajectory = this.trajectories.get(trajectoryId);\n if (!trajectory || !this.sona) {\n return;\n }\n\n const step: TrajectoryStep = {\n action,\n activations: activations || new Array(this.config.hiddenDim).fill(0),\n attentionWeights: attentionWeights || new Array(this.config.numHeads).fill(0),\n reward,\n timestamp: Date.now(),\n };\n\n trajectory.steps.push(step);\n\n // Add to SONA\n this.sona.addTrajectoryStep(\n trajectory.id,\n step.activations,\n step.attentionWeights,\n reward\n );\n }\n\n /**\n * Set the route (agent selected) for trajectory\n */\n setTrajectoryRoute(trajectoryId: number, route: string): void {\n const trajectory = this.trajectories.get(trajectoryId);\n if (!trajectory || !this.sona) {\n return;\n }\n\n trajectory.route = route;\n this.sona.setTrajectoryRoute(trajectory.id, route);\n }\n\n /**\n * Add context to trajectory\n */\n addTrajectoryContext(trajectoryId: number, contextId: string): void {\n const trajectory = this.trajectories.get(trajectoryId);\n if (!trajectory || !this.sona) {\n return;\n }\n\n trajectory.contexts.push(contextId);\n this.sona.addTrajectoryContext(trajectory.id, contextId);\n }\n\n /**\n * End trajectory and submit for learning\n *\n * @param trajectoryId - Trajectory ID\n * @param success - Whether the task succeeded\n * @param quality - Quality score (0-1)\n * @returns Learning outcome\n */\n endTrajectory(\n trajectoryId: number,\n success: boolean,\n quality: number\n ): LearningOutcome {\n const trajectory = this.trajectories.get(trajectoryId);\n if (!trajectory || !this.sona) {\n return {\n trajectoryId,\n success,\n quality,\n patternsLearned: 0,\n adaptations: { microLora: false, baseLora: false, ewc: false },\n };\n }\n\n // End SONA trajectory\n this.sona.endTrajectory(trajectory.id, quality);\n\n // Cleanup\n this.trajectories.delete(trajectoryId);\n\n return {\n trajectoryId,\n success,\n quality,\n patternsLearned: quality >= this.config.qualityThreshold ? 1 : 0,\n adaptations: {\n microLora: true, // Micro-LoRA always adapts\n baseLora: quality >= 0.7, // Base-LoRA for high quality\n ewc: quality >= 0.8, // EWC++ for very high quality\n },\n };\n }\n\n // ==========================================================================\n // Pattern Retrieval (ReasoningBank)\n // ==========================================================================\n\n /**\n * Find similar learned patterns\n *\n * Uses SONA's ReasoningBank for pattern retrieval\n *\n * @param embedding - Query embedding\n * @param k - Number of patterns to return\n */\n findPatterns(embedding: number[], k: number = 5): JsLearnedPattern[] {\n if (!this.sona) {\n return [];\n }\n\n return this.sona.findPatterns(embedding, k);\n }\n\n /**\n * Force a learning cycle\n */\n forceLearning(): string {\n if (!this.sona) {\n return 'SONA not enabled';\n }\n\n const result = this.sona.forceLearn();\n this.stats.totalLearningCycles++;\n return result;\n }\n\n // ==========================================================================\n // Background Learning\n // ==========================================================================\n\n /**\n * Start background learning timer\n */\n private startBackgroundLearning(): void {\n if (this.learningTimer) {\n clearInterval(this.learningTimer);\n }\n\n this.learningTimer = setInterval(() => {\n if (this.sona) {\n const result = this.sona.tick();\n if (result) {\n this.stats.totalLearningCycles++;\n this.stats.patternsLearned = this.getPatternsCount();\n }\n }\n }, this.config.backgroundIntervalMs);\n }\n\n /**\n * Get patterns count from SONA stats\n */\n private getPatternsCount(): number {\n if (!this.sona) return 0;\n\n try {\n const stats = JSON.parse(this.sona.getStats());\n return stats.patterns_count || 0;\n } catch {\n return 0;\n }\n }\n\n // ==========================================================================\n // Async Attention (for large batches)\n // ==========================================================================\n\n /**\n * Compute attention asynchronously\n *\n * Useful for large batches or when non-blocking is required\n */\n async computeAttentionAsync(\n query: Float32Array,\n keys: Float32Array[],\n values: Float32Array[],\n type?: 'flash' | 'hyperbolic' | 'standard'\n ): Promise<Float32Array> {\n switch (type) {\n case 'flash':\n return computeFlashAttentionAsync(query, keys, values);\n\n case 'hyperbolic':\n return computeHyperbolicAttentionAsync(\n query,\n keys,\n values,\n this.config.curvature\n );\n\n default:\n return computeAttentionAsync(query, keys, values, AttentionType.MultiHead);\n }\n }\n\n // ==========================================================================\n // Hyperbolic Operations (for hierarchical structures)\n // ==========================================================================\n\n /**\n * Compute Poincaré distance between two embeddings\n *\n * Useful for hierarchical agent structures\n */\n poincareDistance(a: Float32Array, b: Float32Array): number {\n return poincareDistance(a, b, this.config.curvature);\n }\n\n /**\n * Project embedding to Poincaré ball\n */\n projectToPoincare(embedding: Float32Array): Float32Array {\n return projectToPoincareBall(embedding, this.config.curvature);\n }\n\n // ==========================================================================\n // Statistics & Status\n // ==========================================================================\n\n /**\n * Get intelligence layer statistics\n */\n getStats(): typeof this.stats & { sonaStats?: any } {\n let sonaStats: any = null;\n\n if (this.sona) {\n try {\n sonaStats = JSON.parse(this.sona.getStats());\n } catch {}\n }\n\n return {\n ...this.stats,\n sonaStats,\n };\n }\n\n /**\n * Enable/disable the intelligence layer\n */\n setEnabled(enabled: boolean): void {\n if (this.sona) {\n this.sona.setEnabled(enabled);\n }\n }\n\n /**\n * Check if enabled\n */\n isEnabled(): boolean {\n return this.sona?.isEnabled() ?? false;\n }\n\n /**\n * Cleanup resources\n */\n dispose(): void {\n if (this.learningTimer) {\n clearInterval(this.learningTimer);\n this.learningTimer = null;\n }\n\n if (this.cleanupTimer) {\n clearInterval(this.cleanupTimer);\n this.cleanupTimer = null;\n }\n\n // Flush SONA\n if (this.sona) {\n this.sona.flush();\n }\n\n // Clear caches and LRU tracking\n this.trajectories.clear();\n this.trajectoryAccessOrder = [];\n this.agentEmbeddings.clear();\n this.agentAccessOrder = [];\n }\n}\n\n/**\n * Create a default intelligence layer\n */\nexport function createIntelligenceLayer(\n config?: RuVectorIntelligenceConfig\n): RuVectorIntelligence {\n return new RuVectorIntelligence(config);\n}\n\n/**\n * Presets for common configurations\n */\nexport const IntelligencePresets = {\n /** Fast routing with MoE and minimal learning */\n fast: {\n attentionType: 'moe' as const,\n numExperts: 4,\n topK: 2,\n enableTrajectories: false,\n backgroundIntervalMs: 300000, // 5 min\n },\n\n /** Balanced performance and learning */\n balanced: {\n attentionType: 'moe' as const,\n numExperts: 4,\n topK: 2,\n enableTrajectories: true,\n backgroundIntervalMs: 60000, // 1 min\n qualityThreshold: 0.5,\n },\n\n /** Maximum learning for development */\n learning: {\n attentionType: 'dual' as const,\n enableTrajectories: true,\n backgroundIntervalMs: 30000, // 30 sec\n qualityThreshold: 0.3,\n sonaConfig: {\n microLoraRank: 2,\n baseLoraRank: 16,\n trajectoryCapacity: 50000,\n },\n },\n\n /** Hierarchical structures (Poincaré geometry) */\n hierarchical: {\n attentionType: 'hyperbolic' as const,\n curvature: 1.0,\n enableTrajectories: true,\n },\n\n /** Graph-based reasoning */\n graph: {\n attentionType: 'graph' as const,\n enableTrajectories: true,\n },\n};\n"]}
|
|
@@ -26,12 +26,12 @@ export function applyAgentDBPatch() {
|
|
|
26
26
|
// Find agentdb installation
|
|
27
27
|
const agentdbPath = findAgentDBPath();
|
|
28
28
|
if (!agentdbPath) {
|
|
29
|
-
|
|
29
|
+
// Silently skip - agentdb may not be installed or may be v2+
|
|
30
30
|
return false;
|
|
31
31
|
}
|
|
32
32
|
const controllerIndexPath = join(agentdbPath, 'dist', 'controllers', 'index.js');
|
|
33
33
|
if (!existsSync(controllerIndexPath)) {
|
|
34
|
-
|
|
34
|
+
// Silently skip - this is expected for agentdb v2+ which has different structure
|
|
35
35
|
return false;
|
|
36
36
|
}
|
|
37
37
|
// Read current content
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agentdb-runtime-patch.js","sourceRoot":"","sources":["../../src/utils/agentdb-runtime-patch.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * AgentDB Runtime Patch\n *\n * Automatically fixes AgentDB v1.3.9 import resolution issues at runtime.\n * This patch works in all contexts: npm install, npm install -g, and npx.\n *\n * Issue: agentdb v1.3.9 missing .js extensions in ESM exports\n * Solution: Patch the controller index.js file at runtime before first import\n */\n\nimport { readFileSync, writeFileSync, existsSync } from 'fs';\nimport { join, dirname } from 'path';\nimport { fileURLToPath } from 'url';\n\nlet patched = false;\nlet patchAttempted = false;\n\n/**\n * Apply AgentDB import fix at runtime\n * Safe to call multiple times - only patches once\n */\nexport function applyAgentDBPatch(): boolean {\n // Only attempt once per process\n if (patchAttempted) {\n return patched;\n }\n patchAttempted = true;\n\n try {\n // Find agentdb installation\n const agentdbPath = findAgentDBPath();\n if (!agentdbPath) {\n console.warn('[AgentDB Patch] Could not locate agentdb installation');\n return false;\n }\n\n const controllerIndexPath = join(agentdbPath, 'dist', 'controllers', 'index.js');\n\n if (!existsSync(controllerIndexPath)) {\n console.warn(`[AgentDB Patch] Controller index not found: ${controllerIndexPath}`);\n return false;\n }\n\n // Read current content\n let content = readFileSync(controllerIndexPath, 'utf8');\n\n // Check if already patched\n if (content.includes(\"from './ReflexionMemory.js'\")) {\n patched = true;\n return true;\n }\n\n // Apply patches\n const patches = [\n { from: \"from './ReflexionMemory'\", to: \"from './ReflexionMemory.js'\" },\n { from: \"from './SkillLibrary'\", to: \"from './SkillLibrary.js'\" },\n { from: \"from './EmbeddingService'\", to: \"from './EmbeddingService.js'\" },\n { from: \"from './CausalMemoryGraph'\", to: \"from './CausalMemoryGraph.js'\" },\n { from: \"from './CausalRecall'\", to: \"from './CausalRecall.js'\" },\n { from: \"from './NightlyLearner'\", to: \"from './NightlyLearner.js'\" }\n ];\n\n let modified = false;\n for (const patch of patches) {\n if (content.includes(patch.from) && !content.includes(patch.to)) {\n content = content.replace(new RegExp(patch.from, 'g'), patch.to);\n modified = true;\n }\n }\n\n if (modified) {\n try {\n writeFileSync(controllerIndexPath, content, 'utf8');\n patched = true;\n console.log('[AgentDB Patch] ✅ Successfully patched AgentDB imports');\n return true;\n } catch (writeError: any) {\n // If we can't write (npx temp dir permissions), that's OK - imports will fail gracefully\n console.warn('[AgentDB Patch] ⚠️ Could not write patch (read-only):', writeError.message);\n return false;\n }\n }\n\n return false;\n } catch (error: any) {\n console.warn('[AgentDB Patch] Error applying patch:', error.message);\n return false;\n }\n}\n\n/**\n * Find AgentDB installation directory\n * Checks multiple possible locations\n */\nfunction findAgentDBPath(): string | null {\n const possiblePaths = [\n // Local node_modules (most common)\n join(process.cwd(), 'node_modules', 'agentdb'),\n\n // Parent directory node_modules (monorepo)\n join(process.cwd(), '..', 'node_modules', 'agentdb'),\n\n // Global npm installation\n join(process.execPath, '..', '..', 'lib', 'node_modules', 'agentdb'),\n\n // Relative to this file (for bundled installations)\n ...(typeof __dirname !== 'undefined'\n ? [\n join(__dirname, '..', '..', 'node_modules', 'agentdb'),\n join(__dirname, '..', '..', '..', 'agentdb')\n ]\n : []),\n\n // Using import.meta.url (ESM)\n ...(typeof import.meta !== 'undefined' && import.meta.url\n ? (() => {\n try {\n const currentDir = dirname(fileURLToPath(import.meta.url));\n return [\n join(currentDir, '..', '..', 'node_modules', 'agentdb'),\n join(currentDir, '..', '..', '..', 'agentdb')\n ];\n } catch {\n return [];\n }\n })()\n : [])\n ];\n\n // Try each path\n for (const path of possiblePaths) {\n if (existsSync(join(path, 'package.json'))) {\n try {\n const pkg = JSON.parse(readFileSync(join(path, 'package.json'), 'utf8'));\n if (pkg.name === 'agentdb') {\n return path;\n }\n } catch {\n continue;\n }\n }\n }\n\n // Try require.resolve as fallback\n try {\n const resolved = require.resolve('agentdb/package.json');\n return dirname(resolved);\n } catch {\n // Not found via require.resolve\n }\n\n return null;\n}\n\n/**\n * Check if AgentDB patch is needed\n */\nexport function isAgentDBPatchNeeded(): boolean {\n const agentdbPath = findAgentDBPath();\n if (!agentdbPath) return false;\n\n const controllerIndexPath = join(agentdbPath, 'dist', 'controllers', 'index.js');\n if (!existsSync(controllerIndexPath)) return false;\n\n const content = readFileSync(controllerIndexPath, 'utf8');\n return !content.includes(\"from './ReflexionMemory.js'\");\n}\n\n/**\n * Get patch status information\n */\nexport function getAgentDBPatchStatus(): {\n needed: boolean;\n applied: boolean;\n attempted: boolean;\n location: string | null;\n} {\n return {\n needed: isAgentDBPatchNeeded(),\n applied: patched,\n attempted: patchAttempted,\n location: findAgentDBPath()\n };\n}\n\n/**\n * Apply ruvector VectorDB/VectorDb case mismatch fix at runtime\n * Issue: @ruvector/core exports VectorDb but ruvector expects VectorDB\n */\nlet ruvectorPatched = false;\nlet ruvectorPatchAttempted = false;\n\nexport function applyRuvectorPatch(): boolean {\n if (ruvectorPatchAttempted) {\n return ruvectorPatched;\n }\n ruvectorPatchAttempted = true;\n\n try {\n const ruvectorPath = findPackagePath('ruvector');\n if (!ruvectorPath) {\n return false;\n }\n\n const indexPath = join(ruvectorPath, 'dist', 'index.js');\n if (!existsSync(indexPath)) {\n return false;\n }\n\n let content = readFileSync(indexPath, 'utf8');\n\n // Check if already patched\n if (content.includes('implementation.VectorDb')) {\n ruvectorPatched = true;\n return true;\n }\n\n // Fix VectorDB vs VectorDb case mismatch\n const oldCheck = `if (typeof implementation.VectorDB !== 'function') {\n throw new Error('Native module loaded but VectorDB not found');\n }`;\n\n const newCheck = `if (typeof implementation.VectorDB !== 'function' && typeof implementation.VectorDb !== 'function') {\n throw new Error('Native module loaded but VectorDB not found');\n }\n // Normalize: if VectorDb exists but VectorDB doesn't, alias it\n if (!implementation.VectorDB && implementation.VectorDb) {\n implementation.VectorDB = implementation.VectorDb;\n }`;\n\n if (content.includes(oldCheck)) {\n content = content.replace(oldCheck, newCheck);\n try {\n writeFileSync(indexPath, content, 'utf8');\n ruvectorPatched = true;\n console.log('[Ruvector Patch] ✅ Fixed VectorDB/VectorDb case mismatch');\n return true;\n } catch (writeError: any) {\n console.warn('[Ruvector Patch] ⚠️ Could not write patch (read-only)');\n return false;\n }\n }\n\n return false;\n } catch (error: any) {\n console.warn('[Ruvector Patch] Error:', error.message);\n return false;\n }\n}\n\n/**\n * Generic package finder\n */\nfunction findPackagePath(packageName: string): string | null {\n const possiblePaths = [\n join(process.cwd(), 'node_modules', packageName),\n join(process.cwd(), '..', 'node_modules', packageName),\n join(process.execPath, '..', '..', 'lib', 'node_modules', packageName),\n ];\n\n // Using import.meta.url (ESM)\n if (typeof import.meta !== 'undefined' && import.meta.url) {\n try {\n const currentDir = dirname(fileURLToPath(import.meta.url));\n possiblePaths.push(\n join(currentDir, '..', '..', 'node_modules', packageName),\n join(currentDir, '..', '..', '..', packageName)\n );\n } catch {}\n }\n\n for (const path of possiblePaths) {\n if (existsSync(join(path, 'package.json'))) {\n try {\n const pkg = JSON.parse(readFileSync(join(path, 'package.json'), 'utf8'));\n if (pkg.name === packageName) {\n return path;\n }\n } catch {\n continue;\n }\n }\n }\n\n try {\n const resolved = require.resolve(`${packageName}/package.json`);\n return dirname(resolved);\n } catch {}\n\n return null;\n}\n\n// Auto-apply patch on module load (SYNCHRONOUS - must happen before any AgentDB imports)\n// This ensures the patch is applied before any imports\nif (typeof process !== 'undefined' && !process.env.SKIP_AGENTDB_PATCH) {\n // MUST be synchronous - async won't work because imports happen immediately\n try {\n applyAgentDBPatch();\n applyRuvectorPatch();\n } catch (error) {\n // Silently fail - patch will be attempted again on explicit call\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"agentdb-runtime-patch.js","sourceRoot":"","sources":["../../src/utils/agentdb-runtime-patch.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * AgentDB Runtime Patch\n *\n * Automatically fixes AgentDB v1.3.9 import resolution issues at runtime.\n * This patch works in all contexts: npm install, npm install -g, and npx.\n *\n * Issue: agentdb v1.3.9 missing .js extensions in ESM exports\n * Solution: Patch the controller index.js file at runtime before first import\n */\n\nimport { readFileSync, writeFileSync, existsSync } from 'fs';\nimport { join, dirname } from 'path';\nimport { fileURLToPath } from 'url';\n\nlet patched = false;\nlet patchAttempted = false;\n\n/**\n * Apply AgentDB import fix at runtime\n * Safe to call multiple times - only patches once\n */\nexport function applyAgentDBPatch(): boolean {\n // Only attempt once per process\n if (patchAttempted) {\n return patched;\n }\n patchAttempted = true;\n\n try {\n // Find agentdb installation\n const agentdbPath = findAgentDBPath();\n if (!agentdbPath) {\n // Silently skip - agentdb may not be installed or may be v2+\n return false;\n }\n\n const controllerIndexPath = join(agentdbPath, 'dist', 'controllers', 'index.js');\n\n if (!existsSync(controllerIndexPath)) {\n // Silently skip - this is expected for agentdb v2+ which has different structure\n return false;\n }\n\n // Read current content\n let content = readFileSync(controllerIndexPath, 'utf8');\n\n // Check if already patched\n if (content.includes(\"from './ReflexionMemory.js'\")) {\n patched = true;\n return true;\n }\n\n // Apply patches\n const patches = [\n { from: \"from './ReflexionMemory'\", to: \"from './ReflexionMemory.js'\" },\n { from: \"from './SkillLibrary'\", to: \"from './SkillLibrary.js'\" },\n { from: \"from './EmbeddingService'\", to: \"from './EmbeddingService.js'\" },\n { from: \"from './CausalMemoryGraph'\", to: \"from './CausalMemoryGraph.js'\" },\n { from: \"from './CausalRecall'\", to: \"from './CausalRecall.js'\" },\n { from: \"from './NightlyLearner'\", to: \"from './NightlyLearner.js'\" }\n ];\n\n let modified = false;\n for (const patch of patches) {\n if (content.includes(patch.from) && !content.includes(patch.to)) {\n content = content.replace(new RegExp(patch.from, 'g'), patch.to);\n modified = true;\n }\n }\n\n if (modified) {\n try {\n writeFileSync(controllerIndexPath, content, 'utf8');\n patched = true;\n console.log('[AgentDB Patch] ✅ Successfully patched AgentDB imports');\n return true;\n } catch (writeError: any) {\n // If we can't write (npx temp dir permissions), that's OK - imports will fail gracefully\n console.warn('[AgentDB Patch] ⚠️ Could not write patch (read-only):', writeError.message);\n return false;\n }\n }\n\n return false;\n } catch (error: any) {\n console.warn('[AgentDB Patch] Error applying patch:', error.message);\n return false;\n }\n}\n\n/**\n * Find AgentDB installation directory\n * Checks multiple possible locations\n */\nfunction findAgentDBPath(): string | null {\n const possiblePaths = [\n // Local node_modules (most common)\n join(process.cwd(), 'node_modules', 'agentdb'),\n\n // Parent directory node_modules (monorepo)\n join(process.cwd(), '..', 'node_modules', 'agentdb'),\n\n // Global npm installation\n join(process.execPath, '..', '..', 'lib', 'node_modules', 'agentdb'),\n\n // Relative to this file (for bundled installations)\n ...(typeof __dirname !== 'undefined'\n ? [\n join(__dirname, '..', '..', 'node_modules', 'agentdb'),\n join(__dirname, '..', '..', '..', 'agentdb')\n ]\n : []),\n\n // Using import.meta.url (ESM)\n ...(typeof import.meta !== 'undefined' && import.meta.url\n ? (() => {\n try {\n const currentDir = dirname(fileURLToPath(import.meta.url));\n return [\n join(currentDir, '..', '..', 'node_modules', 'agentdb'),\n join(currentDir, '..', '..', '..', 'agentdb')\n ];\n } catch {\n return [];\n }\n })()\n : [])\n ];\n\n // Try each path\n for (const path of possiblePaths) {\n if (existsSync(join(path, 'package.json'))) {\n try {\n const pkg = JSON.parse(readFileSync(join(path, 'package.json'), 'utf8'));\n if (pkg.name === 'agentdb') {\n return path;\n }\n } catch {\n continue;\n }\n }\n }\n\n // Try require.resolve as fallback\n try {\n const resolved = require.resolve('agentdb/package.json');\n return dirname(resolved);\n } catch {\n // Not found via require.resolve\n }\n\n return null;\n}\n\n/**\n * Check if AgentDB patch is needed\n */\nexport function isAgentDBPatchNeeded(): boolean {\n const agentdbPath = findAgentDBPath();\n if (!agentdbPath) return false;\n\n const controllerIndexPath = join(agentdbPath, 'dist', 'controllers', 'index.js');\n if (!existsSync(controllerIndexPath)) return false;\n\n const content = readFileSync(controllerIndexPath, 'utf8');\n return !content.includes(\"from './ReflexionMemory.js'\");\n}\n\n/**\n * Get patch status information\n */\nexport function getAgentDBPatchStatus(): {\n needed: boolean;\n applied: boolean;\n attempted: boolean;\n location: string | null;\n} {\n return {\n needed: isAgentDBPatchNeeded(),\n applied: patched,\n attempted: patchAttempted,\n location: findAgentDBPath()\n };\n}\n\n/**\n * Apply ruvector VectorDB/VectorDb case mismatch fix at runtime\n * Issue: @ruvector/core exports VectorDb but ruvector expects VectorDB\n */\nlet ruvectorPatched = false;\nlet ruvectorPatchAttempted = false;\n\nexport function applyRuvectorPatch(): boolean {\n if (ruvectorPatchAttempted) {\n return ruvectorPatched;\n }\n ruvectorPatchAttempted = true;\n\n try {\n const ruvectorPath = findPackagePath('ruvector');\n if (!ruvectorPath) {\n return false;\n }\n\n const indexPath = join(ruvectorPath, 'dist', 'index.js');\n if (!existsSync(indexPath)) {\n return false;\n }\n\n let content = readFileSync(indexPath, 'utf8');\n\n // Check if already patched\n if (content.includes('implementation.VectorDb')) {\n ruvectorPatched = true;\n return true;\n }\n\n // Fix VectorDB vs VectorDb case mismatch\n const oldCheck = `if (typeof implementation.VectorDB !== 'function') {\n throw new Error('Native module loaded but VectorDB not found');\n }`;\n\n const newCheck = `if (typeof implementation.VectorDB !== 'function' && typeof implementation.VectorDb !== 'function') {\n throw new Error('Native module loaded but VectorDB not found');\n }\n // Normalize: if VectorDb exists but VectorDB doesn't, alias it\n if (!implementation.VectorDB && implementation.VectorDb) {\n implementation.VectorDB = implementation.VectorDb;\n }`;\n\n if (content.includes(oldCheck)) {\n content = content.replace(oldCheck, newCheck);\n try {\n writeFileSync(indexPath, content, 'utf8');\n ruvectorPatched = true;\n console.log('[Ruvector Patch] ✅ Fixed VectorDB/VectorDb case mismatch');\n return true;\n } catch (writeError: any) {\n console.warn('[Ruvector Patch] ⚠️ Could not write patch (read-only)');\n return false;\n }\n }\n\n return false;\n } catch (error: any) {\n console.warn('[Ruvector Patch] Error:', error.message);\n return false;\n }\n}\n\n/**\n * Generic package finder\n */\nfunction findPackagePath(packageName: string): string | null {\n const possiblePaths = [\n join(process.cwd(), 'node_modules', packageName),\n join(process.cwd(), '..', 'node_modules', packageName),\n join(process.execPath, '..', '..', 'lib', 'node_modules', packageName),\n ];\n\n // Using import.meta.url (ESM)\n if (typeof import.meta !== 'undefined' && import.meta.url) {\n try {\n const currentDir = dirname(fileURLToPath(import.meta.url));\n possiblePaths.push(\n join(currentDir, '..', '..', 'node_modules', packageName),\n join(currentDir, '..', '..', '..', packageName)\n );\n } catch {}\n }\n\n for (const path of possiblePaths) {\n if (existsSync(join(path, 'package.json'))) {\n try {\n const pkg = JSON.parse(readFileSync(join(path, 'package.json'), 'utf8'));\n if (pkg.name === packageName) {\n return path;\n }\n } catch {\n continue;\n }\n }\n }\n\n try {\n const resolved = require.resolve(`${packageName}/package.json`);\n return dirname(resolved);\n } catch {}\n\n return null;\n}\n\n// Auto-apply patch on module load (SYNCHRONOUS - must happen before any AgentDB imports)\n// This ensures the patch is applied before any imports\nif (typeof process !== 'undefined' && !process.env.SKIP_AGENTDB_PATCH) {\n // MUST be synchronous - async won't work because imports happen immediately\n try {\n applyAgentDBPatch();\n applyRuvectorPatch();\n } catch (error) {\n // Silently fail - patch will be attempted again on explicit call\n }\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agentic-flow",
|
|
3
|
-
"version": "2.0.1-alpha.
|
|
3
|
+
"version": "2.0.1-alpha.11",
|
|
4
4
|
"description": "Production-ready AI agent orchestration platform with 66 specialized agents, 213 MCP tools, ReasoningBank learning memory, and autonomous multi-agent swarms. Built by @ruvnet with Claude Agent SDK, neural networks, memory persistence, GitHub integration, and distributed consensus protocols.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -258,7 +258,7 @@ export function log(message) {
|
|
|
258
258
|
wasm.log(ptr0, len0);
|
|
259
259
|
}
|
|
260
260
|
|
|
261
|
-
function
|
|
261
|
+
function __wbg_adapter_6(arg0, arg1, arg2) {
|
|
262
262
|
wasm.__wbindgen_export_5(arg0, arg1, addHeapObject(arg2));
|
|
263
263
|
}
|
|
264
264
|
|
|
@@ -540,7 +540,7 @@ export function __wbindgen_cast_2241b6af4c4b2941(arg0, arg1) {
|
|
|
540
540
|
|
|
541
541
|
export function __wbindgen_cast_8eb6fd44e7238d11(arg0, arg1) {
|
|
542
542
|
// Cast intrinsic for `Closure(Closure { dtor_idx: 62, function: Function { arguments: [Externref], shim_idx: 63, ret: Unit, inner_ret: Some(Unit) }, mutable: true }) -> Externref`.
|
|
543
|
-
const ret = makeMutClosure(arg0, arg1, 62,
|
|
543
|
+
const ret = makeMutClosure(arg0, arg1, 62, __wbg_adapter_6);
|
|
544
544
|
return addHeapObject(ret);
|
|
545
545
|
};
|
|
546
546
|
|
|
Binary file
|