agentic-qe 2.5.9 → 2.5.10

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.
Files changed (42) hide show
  1. package/CHANGELOG.md +75 -0
  2. package/README.md +2 -2
  3. package/dist/agents/BaseAgent.d.ts +119 -0
  4. package/dist/agents/BaseAgent.d.ts.map +1 -1
  5. package/dist/agents/BaseAgent.js +288 -0
  6. package/dist/agents/BaseAgent.js.map +1 -1
  7. package/dist/agents/FlakyTestHunterAgent.d.ts +15 -0
  8. package/dist/agents/FlakyTestHunterAgent.d.ts.map +1 -1
  9. package/dist/agents/FlakyTestHunterAgent.js +93 -0
  10. package/dist/agents/FlakyTestHunterAgent.js.map +1 -1
  11. package/dist/agents/SecurityScannerAgent.d.ts +19 -0
  12. package/dist/agents/SecurityScannerAgent.d.ts.map +1 -1
  13. package/dist/agents/SecurityScannerAgent.js +137 -0
  14. package/dist/agents/SecurityScannerAgent.js.map +1 -1
  15. package/dist/cli/commands/ruvector/index.d.ts +13 -0
  16. package/dist/cli/commands/ruvector/index.d.ts.map +1 -0
  17. package/dist/cli/commands/ruvector/index.js +308 -0
  18. package/dist/cli/commands/ruvector/index.js.map +1 -0
  19. package/dist/cli/index.js +5 -0
  20. package/dist/cli/index.js.map +1 -1
  21. package/dist/cli/init/index.d.ts.map +1 -1
  22. package/dist/cli/init/index.js +11 -0
  23. package/dist/cli/init/index.js.map +1 -1
  24. package/dist/core/memory/HNSWVectorMemory.js +1 -1
  25. package/dist/core/memory/HNSWVectorMemory.js.map +1 -1
  26. package/dist/mcp/server-instructions.d.ts +1 -1
  27. package/dist/mcp/server-instructions.d.ts.map +1 -1
  28. package/dist/mcp/server-instructions.js +1 -1
  29. package/dist/mcp/server-instructions.js.map +1 -1
  30. package/dist/memory/RuVectorPatternStore.d.ts +258 -0
  31. package/dist/memory/RuVectorPatternStore.d.ts.map +1 -0
  32. package/dist/memory/RuVectorPatternStore.js +525 -0
  33. package/dist/memory/RuVectorPatternStore.js.map +1 -0
  34. package/dist/providers/RuVectorPostgresAdapter.d.ts +134 -0
  35. package/dist/providers/RuVectorPostgresAdapter.d.ts.map +1 -0
  36. package/dist/providers/RuVectorPostgresAdapter.js +504 -0
  37. package/dist/providers/RuVectorPostgresAdapter.js.map +1 -0
  38. package/dist/providers/index.d.ts +2 -0
  39. package/dist/providers/index.d.ts.map +1 -1
  40. package/dist/providers/index.js +7 -1
  41. package/dist/providers/index.js.map +1 -1
  42. package/package.json +4 -2
@@ -0,0 +1,504 @@
1
+ "use strict";
2
+ /**
3
+ * RuVectorPostgresAdapter - PostgreSQL adapter for RuVector Docker integration
4
+ *
5
+ * Provides direct PostgreSQL connectivity to the RuVector Docker container
6
+ * for GNN-enhanced vector search with LoRA learning capabilities.
7
+ *
8
+ * This adapter unlocks the full self-learning features:
9
+ * - GNN (Graph Neural Network) reranking
10
+ * - LoRA (Low-Rank Adaptation) parameter updates
11
+ * - EWC++ (Elastic Weight Consolidation) for catastrophic forgetting prevention
12
+ *
13
+ * @module providers/RuVectorPostgresAdapter
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.RUVECTOR_POSTGRES_ADAPTER_VERSION = exports.RuVectorPostgresAdapter = void 0;
17
+ exports.createRuVectorPostgresAdapter = createRuVectorPostgresAdapter;
18
+ exports.createDockerRuVectorAdapter = createDockerRuVectorAdapter;
19
+ const pg_1 = require("pg");
20
+ const RuVectorClient_1 = require("./RuVectorClient");
21
+ /**
22
+ * RuVector PostgreSQL Adapter
23
+ *
24
+ * Provides direct PostgreSQL integration with RuVector Docker container
25
+ * for full self-learning capabilities.
26
+ *
27
+ * @example
28
+ * ```typescript
29
+ * const adapter = new RuVectorPostgresAdapter({
30
+ * host: 'localhost',
31
+ * port: 5432,
32
+ * database: 'ruvector_db',
33
+ * user: 'ruvector',
34
+ * password: 'ruvector',
35
+ * learningEnabled: true,
36
+ * cacheThreshold: 0.8,
37
+ * loraRank: 8,
38
+ * ewcEnabled: true
39
+ * });
40
+ *
41
+ * await adapter.initialize();
42
+ * const result = await adapter.search(embedding, 5);
43
+ * ```
44
+ */
45
+ class RuVectorPostgresAdapter {
46
+ constructor(config) {
47
+ this.initialized = false;
48
+ this.queryCount = 0;
49
+ this.cacheHits = 0;
50
+ this.totalLatency = 0;
51
+ this.config = {
52
+ connectionString: config.connectionString ?? '',
53
+ host: config.host ?? 'localhost',
54
+ port: config.port ?? 5432,
55
+ database: config.database ?? 'ruvector_db',
56
+ user: config.user ?? 'ruvector',
57
+ password: config.password ?? 'ruvector',
58
+ tableName: config.tableName ?? 'qe_patterns',
59
+ embeddingDimension: config.embeddingDimension ?? 768,
60
+ poolSize: config.poolSize ?? 10,
61
+ learningEnabled: config.learningEnabled ?? true,
62
+ cacheThreshold: config.cacheThreshold ?? 0.85,
63
+ loraRank: config.loraRank ?? 8,
64
+ ewcEnabled: config.ewcEnabled ?? true,
65
+ timeout: config.timeout ?? 30000,
66
+ maxRetries: config.maxRetries ?? 3,
67
+ retryDelay: config.retryDelay ?? 1000,
68
+ debug: config.debug ?? false
69
+ };
70
+ this.tableName = this.config.tableName;
71
+ const poolConfig = this.config.connectionString
72
+ ? { connectionString: this.config.connectionString }
73
+ : {
74
+ host: this.config.host,
75
+ port: this.config.port,
76
+ database: this.config.database,
77
+ user: this.config.user,
78
+ password: this.config.password,
79
+ max: this.config.poolSize,
80
+ idleTimeoutMillis: 30000,
81
+ connectionTimeoutMillis: this.config.timeout
82
+ };
83
+ this.pool = new pg_1.Pool(poolConfig);
84
+ this.log('RuVectorPostgresAdapter initialized', {
85
+ host: this.config.host,
86
+ port: this.config.port,
87
+ database: this.config.database
88
+ });
89
+ }
90
+ /**
91
+ * Initialize the adapter and create required tables
92
+ */
93
+ async initialize() {
94
+ if (this.initialized)
95
+ return;
96
+ const client = await this.pool.connect();
97
+ try {
98
+ // Verify RuVector extension is available
99
+ const extCheck = await client.query("SELECT ruvector_version() as version");
100
+ this.log('RuVector extension version', { version: extCheck.rows[0]?.version });
101
+ // Create patterns table if not exists
102
+ await client.query(`
103
+ CREATE TABLE IF NOT EXISTS ${this.tableName} (
104
+ id TEXT PRIMARY KEY,
105
+ content TEXT NOT NULL,
106
+ embedding ruvector(${this.config.embeddingDimension}),
107
+ metadata JSONB DEFAULT '{}',
108
+ confidence REAL DEFAULT 0.0,
109
+ created_at TIMESTAMPTZ DEFAULT NOW(),
110
+ updated_at TIMESTAMPTZ DEFAULT NOW(),
111
+ usage_count INTEGER DEFAULT 0,
112
+ last_used TIMESTAMPTZ DEFAULT NOW()
113
+ )
114
+ `);
115
+ // Enable learning on the table
116
+ if (this.config.learningEnabled) {
117
+ try {
118
+ await client.query(`SELECT ruvector_enable_learning($1)`, [this.tableName]);
119
+ this.log('Learning enabled for table', { tableName: this.tableName });
120
+ }
121
+ catch (e) {
122
+ // Learning might already be enabled
123
+ this.log('Learning enable warning (may already be enabled)', {
124
+ error: e.message
125
+ });
126
+ }
127
+ }
128
+ this.initialized = true;
129
+ this.log('Adapter initialized successfully');
130
+ }
131
+ finally {
132
+ client.release();
133
+ }
134
+ }
135
+ /**
136
+ * Search for similar patterns using RuVector's cosine distance
137
+ */
138
+ async search(embedding, k = 10, options) {
139
+ this.validateEmbedding(embedding);
140
+ await this.ensureInitialized();
141
+ const startTime = Date.now();
142
+ const minConfidence = options?.minConfidence ?? 0.0;
143
+ try {
144
+ // Convert embedding to RuVector format
145
+ const embeddingStr = `[${embedding.join(',')}]`;
146
+ const result = await this.pool.query(`
147
+ SELECT
148
+ id,
149
+ content,
150
+ embedding::text,
151
+ metadata,
152
+ confidence,
153
+ ruvector_cosine_distance(embedding, $1::ruvector) as distance
154
+ FROM ${this.tableName}
155
+ WHERE embedding IS NOT NULL
156
+ ORDER BY ruvector_cosine_distance(embedding, $1::ruvector)
157
+ LIMIT $2
158
+ `, [embeddingStr, k]);
159
+ const latency = Date.now() - startTime;
160
+ // Convert distance to similarity (cosine distance to confidence)
161
+ const results = result.rows
162
+ .map(row => ({
163
+ id: row.id,
164
+ content: row.content,
165
+ embedding: this.parseEmbedding(row.embedding),
166
+ confidence: Math.max(0, 1 - row.distance), // Convert distance to similarity
167
+ metadata: row.metadata
168
+ }))
169
+ .filter(r => r.confidence >= minConfidence);
170
+ this.log('Search completed', {
171
+ k,
172
+ resultsCount: results.length,
173
+ latency,
174
+ topConfidence: results[0]?.confidence
175
+ });
176
+ return results;
177
+ }
178
+ catch (error) {
179
+ throw this.handleError('search', error, { k, embeddingSize: embedding.length });
180
+ }
181
+ }
182
+ /**
183
+ * Store a pattern with automatic LoRA learning
184
+ */
185
+ async store(pattern, options) {
186
+ this.validateEmbedding(pattern.embedding);
187
+ await this.ensureInitialized();
188
+ const id = options?.id ?? this.generateId();
189
+ const embeddingStr = `[${pattern.embedding.join(',')}]`;
190
+ try {
191
+ await this.pool.query(`
192
+ INSERT INTO ${this.tableName} (id, content, embedding, metadata, confidence)
193
+ VALUES ($1, $2, $3::ruvector, $4, 1.0)
194
+ ON CONFLICT (id) DO UPDATE SET
195
+ content = EXCLUDED.content,
196
+ embedding = EXCLUDED.embedding,
197
+ metadata = EXCLUDED.metadata,
198
+ updated_at = NOW(),
199
+ usage_count = ${this.tableName}.usage_count + 1
200
+ `, [id, pattern.content, embeddingStr, JSON.stringify(pattern.metadata)]);
201
+ // Record feedback for learning if enabled
202
+ if (this.config.learningEnabled && options?.triggerLearning) {
203
+ try {
204
+ // Get the stored pattern's embedding as real[] for feedback
205
+ await this.pool.query(`
206
+ SELECT ruvector_record_feedback(
207
+ $1,
208
+ (SELECT embedding::text FROM ${this.tableName} WHERE id = $2 LIMIT 1)::real[],
209
+ ARRAY[$3]::bigint[],
210
+ ARRAY[]::bigint[]
211
+ )
212
+ `, [this.tableName, id, 1]); // Mark as relevant
213
+ }
214
+ catch (e) {
215
+ // Feedback recording is best-effort
216
+ this.log('Feedback recording failed (non-critical)', {
217
+ error: e.message
218
+ });
219
+ }
220
+ }
221
+ this.log('Pattern stored', { id, contentLength: pattern.content.length });
222
+ return id;
223
+ }
224
+ catch (error) {
225
+ throw this.handleError('store', error, { embeddingSize: pattern.embedding.length });
226
+ }
227
+ }
228
+ /**
229
+ * Query with automatic learning and LLM fallback
230
+ */
231
+ async queryWithLearning(query, embedding, llmFallback) {
232
+ const startTime = Date.now();
233
+ this.queryCount++;
234
+ try {
235
+ // Search for similar patterns
236
+ const results = await this.search(embedding, 5);
237
+ const topResult = results[0];
238
+ // Check confidence threshold
239
+ if (topResult && topResult.confidence > this.config.cacheThreshold) {
240
+ this.cacheHits++;
241
+ const latency = Date.now() - startTime;
242
+ this.totalLatency += latency;
243
+ // Update usage count
244
+ await this.pool.query(`
245
+ UPDATE ${this.tableName}
246
+ SET usage_count = usage_count + 1, last_used = NOW()
247
+ WHERE id = $1
248
+ `, [topResult.id]);
249
+ this.log('Cache hit', {
250
+ query,
251
+ confidence: topResult.confidence,
252
+ threshold: this.config.cacheThreshold,
253
+ latency
254
+ });
255
+ return {
256
+ content: topResult.content,
257
+ source: 'cache',
258
+ confidence: topResult.confidence,
259
+ latency,
260
+ metadata: topResult.metadata
261
+ };
262
+ }
263
+ // Cache miss - call LLM
264
+ this.log('Cache miss, calling LLM fallback', {
265
+ query,
266
+ topConfidence: topResult?.confidence ?? 0,
267
+ threshold: this.config.cacheThreshold
268
+ });
269
+ const llmResponse = await llmFallback();
270
+ const latency = Date.now() - startTime;
271
+ this.totalLatency += latency;
272
+ // Store for future learning
273
+ if (this.config.learningEnabled) {
274
+ await this.store({
275
+ embedding,
276
+ content: llmResponse,
277
+ metadata: {
278
+ query,
279
+ timestamp: new Date().toISOString(),
280
+ source: 'llm',
281
+ originalConfidence: topResult?.confidence ?? 0
282
+ }
283
+ }, { triggerLearning: true });
284
+ }
285
+ return {
286
+ content: llmResponse,
287
+ source: 'llm',
288
+ confidence: 1.0,
289
+ latency,
290
+ metadata: {
291
+ query,
292
+ cachedResultConfidence: topResult?.confidence
293
+ }
294
+ };
295
+ }
296
+ catch (error) {
297
+ throw this.handleError('queryWithLearning', error, { query });
298
+ }
299
+ }
300
+ /**
301
+ * Get learning metrics from PostgreSQL
302
+ */
303
+ async getMetrics() {
304
+ await this.ensureInitialized();
305
+ try {
306
+ const countResult = await this.pool.query(`
307
+ SELECT COUNT(*) as count FROM ${this.tableName}
308
+ `);
309
+ const sizeResult = await this.pool.query(`
310
+ SELECT pg_size_pretty(pg_total_relation_size($1)) as size
311
+ `, [this.tableName]);
312
+ // Try to get learning stats
313
+ let learningStats = {};
314
+ try {
315
+ const statsResult = await this.pool.query(`
316
+ SELECT ruvector_learning_stats($1) as stats
317
+ `, [this.tableName]);
318
+ learningStats = statsResult.rows[0]?.stats ?? {};
319
+ }
320
+ catch {
321
+ // Learning stats may not be available
322
+ }
323
+ return {
324
+ cacheHitRate: this.queryCount > 0 ? this.cacheHits / this.queryCount : 0,
325
+ totalQueries: this.queryCount,
326
+ loraUpdates: learningStats.totalFeedback ?? 0,
327
+ averageLatency: this.queryCount > 0 ? this.totalLatency / this.queryCount : 0,
328
+ patternCount: parseInt(countResult.rows[0]?.count ?? '0', 10),
329
+ memoryUsageMB: this.parseSize(sizeResult.rows[0]?.size ?? '0'),
330
+ gnnMetrics: undefined // GNN metrics require more complex queries
331
+ };
332
+ }
333
+ catch (error) {
334
+ throw this.handleError('getMetrics', error);
335
+ }
336
+ }
337
+ /**
338
+ * Force learning consolidation
339
+ */
340
+ async forceLearn() {
341
+ await this.ensureInitialized();
342
+ const startTime = Date.now();
343
+ try {
344
+ // Trigger learning consolidation by analyzing all patterns
345
+ const result = await this.pool.query(`
346
+ SELECT COUNT(*) as count
347
+ FROM ${this.tableName}
348
+ WHERE updated_at > NOW() - INTERVAL '1 hour'
349
+ `);
350
+ const duration = Date.now() - startTime;
351
+ const updatedCount = parseInt(result.rows[0]?.count ?? '0', 10);
352
+ this.log('Learning consolidation completed', { updatedCount, duration });
353
+ return {
354
+ success: true,
355
+ updatedParameters: updatedCount,
356
+ duration
357
+ };
358
+ }
359
+ catch (error) {
360
+ throw this.handleError('forceLearn', error);
361
+ }
362
+ }
363
+ /**
364
+ * Health check
365
+ */
366
+ async healthCheck() {
367
+ const startTime = Date.now();
368
+ try {
369
+ // Check PostgreSQL connection
370
+ const versionResult = await this.pool.query("SELECT ruvector_version() as version");
371
+ // Check pattern count
372
+ const countResult = await this.pool.query(`
373
+ SELECT COUNT(*) as count FROM ${this.tableName}
374
+ `);
375
+ const uptime = Date.now() - startTime;
376
+ return {
377
+ status: 'healthy',
378
+ version: versionResult.rows[0]?.version ?? 'unknown',
379
+ uptime,
380
+ gnnStatus: 'active', // GNN is always available via ruvector functions
381
+ loraStatus: this.config.learningEnabled ? 'active' : 'inactive',
382
+ vectorCount: parseInt(countResult.rows[0]?.count ?? '0', 10)
383
+ };
384
+ }
385
+ catch (error) {
386
+ return {
387
+ status: 'unhealthy',
388
+ version: 'unknown',
389
+ uptime: 0,
390
+ gnnStatus: 'inactive',
391
+ loraStatus: 'inactive',
392
+ vectorCount: 0,
393
+ lastError: error.message
394
+ };
395
+ }
396
+ }
397
+ /**
398
+ * Close the connection pool
399
+ */
400
+ async close() {
401
+ await this.pool.end();
402
+ this.initialized = false;
403
+ this.log('Connection pool closed');
404
+ }
405
+ /**
406
+ * Reset metrics
407
+ */
408
+ resetMetrics() {
409
+ this.queryCount = 0;
410
+ this.cacheHits = 0;
411
+ this.totalLatency = 0;
412
+ this.log('Metrics reset');
413
+ }
414
+ // Private helper methods
415
+ async ensureInitialized() {
416
+ if (!this.initialized) {
417
+ await this.initialize();
418
+ }
419
+ }
420
+ validateEmbedding(embedding) {
421
+ if (!Array.isArray(embedding) || embedding.length === 0) {
422
+ throw new RuVectorClient_1.RuVectorError('Embedding must be a non-empty array', 'INVALID_EMBEDDING');
423
+ }
424
+ if (embedding.length !== this.config.embeddingDimension) {
425
+ throw new RuVectorClient_1.RuVectorError(`Embedding dimension mismatch: expected ${this.config.embeddingDimension}, got ${embedding.length}`, 'INVALID_EMBEDDING');
426
+ }
427
+ if (!embedding.every(v => typeof v === 'number' && !isNaN(v))) {
428
+ throw new RuVectorClient_1.RuVectorError('Embedding must contain only valid numbers', 'INVALID_EMBEDDING');
429
+ }
430
+ }
431
+ parseEmbedding(embeddingStr) {
432
+ // Handle binary format (\x...) by returning empty array
433
+ if (embeddingStr.startsWith('\\x')) {
434
+ return [];
435
+ }
436
+ // Parse [1,2,3] format
437
+ try {
438
+ const cleaned = embeddingStr.replace(/[\[\]]/g, '');
439
+ return cleaned.split(',').map(v => parseFloat(v.trim()));
440
+ }
441
+ catch {
442
+ return [];
443
+ }
444
+ }
445
+ parseSize(sizeStr) {
446
+ const match = sizeStr.match(/^([\d.]+)\s*(\w+)?$/);
447
+ if (!match)
448
+ return 0;
449
+ const value = parseFloat(match[1]);
450
+ const unit = (match[2] ?? 'B').toUpperCase();
451
+ const multipliers = {
452
+ 'B': 1 / (1024 * 1024),
453
+ 'KB': 1 / 1024,
454
+ 'MB': 1,
455
+ 'GB': 1024,
456
+ 'TB': 1024 * 1024
457
+ };
458
+ return value * (multipliers[unit] ?? 1);
459
+ }
460
+ generateId() {
461
+ return `pat_${Date.now()}_${Math.random().toString(36).substring(2, 11)}`;
462
+ }
463
+ handleError(operation, error, context) {
464
+ if (error instanceof RuVectorClient_1.RuVectorError) {
465
+ return error;
466
+ }
467
+ const message = error instanceof Error ? error.message : String(error);
468
+ const ruVectorError = new RuVectorClient_1.RuVectorError(`${operation} failed: ${message}`, 'OPERATION_FAILED', undefined, { originalError: error, context });
469
+ this.log(`Error in ${operation}`, { error: message, context });
470
+ return ruVectorError;
471
+ }
472
+ log(message, data) {
473
+ if (this.config.debug) {
474
+ const timestamp = new Date().toISOString();
475
+ console.log(`[RuVectorPostgres] ${timestamp} - ${message}`, data ?? '');
476
+ }
477
+ }
478
+ }
479
+ exports.RuVectorPostgresAdapter = RuVectorPostgresAdapter;
480
+ /**
481
+ * Factory function to create a PostgreSQL adapter
482
+ */
483
+ function createRuVectorPostgresAdapter(config) {
484
+ return new RuVectorPostgresAdapter(config);
485
+ }
486
+ /**
487
+ * Create adapter with Docker defaults
488
+ */
489
+ function createDockerRuVectorAdapter(options) {
490
+ return new RuVectorPostgresAdapter({
491
+ host: 'localhost',
492
+ port: 5432,
493
+ database: 'ruvector_db',
494
+ user: 'ruvector',
495
+ password: 'ruvector',
496
+ learningEnabled: true,
497
+ cacheThreshold: 0.85,
498
+ loraRank: 8,
499
+ ewcEnabled: true,
500
+ ...options
501
+ });
502
+ }
503
+ exports.RUVECTOR_POSTGRES_ADAPTER_VERSION = '1.0.0';
504
+ //# sourceMappingURL=RuVectorPostgresAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RuVectorPostgresAdapter.js","sourceRoot":"","sources":["../../src/providers/RuVectorPostgresAdapter.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,8 @@ export { OpenRouterProvider, OpenRouterConfig, OpenRouterModel, createOpenRouter
17
17
  export { HybridRouter, HybridRouterConfig, RuVectorCacheConfig, RequestPriority, TaskComplexity, RoutingStrategy, RoutingDecision, CostSavingsReport } from './HybridRouter';
18
18
  export { RuVectorClient, RuVectorConfig, RuVectorError, createRuVectorClient, RUVECTOR_CLIENT_VERSION } from './RuVectorClient';
19
19
  export type { SearchResult as RuVectorSearchResult, Pattern as RuVectorPattern, QueryResult as RuVectorQueryResult, LearningMetrics as RuVectorLearningMetrics, HealthCheckResponse as RuVectorHealthCheckResponse } from './RuVectorClient';
20
+ export { RuVectorPostgresAdapter, createRuVectorPostgresAdapter, createDockerRuVectorAdapter, RUVECTOR_POSTGRES_ADAPTER_VERSION } from './RuVectorPostgresAdapter';
21
+ export type { RuVectorPostgresConfig } from './RuVectorPostgresAdapter';
20
22
  export { RuvllmPatternCurator, createRuvllmPatternCurator } from './RuvllmPatternCurator';
21
23
  export type { RuvllmPatternCuratorConfig } from './RuvllmPatternCurator';
22
24
  export { LLMProviderFactory, LLMProviderFactoryConfig, ProviderType, ProviderSelectionCriteria, ProviderUsageStats, EnvironmentSignals, getGlobalLLMFactory, setGlobalLLMFactory } from './LLMProviderFactory';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,cAAc,EACd,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,wBAAwB,EACzB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,eAAe,EACf,eAAe,EACf,iBAAiB,EAClB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,cAAc,EACd,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,uBAAuB,EACxB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EACV,YAAY,IAAI,oBAAoB,EACpC,OAAO,IAAI,eAAe,EAC1B,WAAW,IAAI,mBAAmB,EAClC,eAAe,IAAI,uBAAuB,EAC1C,mBAAmB,IAAI,2BAA2B,EACnD,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC3B,MAAM,wBAAwB,CAAC;AAChC,YAAY,EACV,0BAA0B,EAC3B,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,YAAY,EACZ,yBAAyB,EACzB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,YAAY,CAAC,CAsBnE;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,CAAC,EAAE;IAClD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,gBAAgB,CAAC,EAAE,GAAG,CAAC;CACxB,GAAG,OAAO,CAAC,YAAY,CAAC,CAaxB;AAED;;;GAGG;AACH,wBAAsB,6BAA6B,CAAC,MAAM,CAAC,EAAE;IAC3D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAW9B;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAG/D;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,GAAG,SAAS,CAGpD;AAED;;GAEG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,OAAO,sBAAsB,EAAE,eAAe,EAAE,CAAC,CAGrG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,cAAc,EACd,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EACpB,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,wBAAwB,EACzB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EACf,cAAc,EACd,eAAe,EACf,eAAe,EACf,iBAAiB,EAClB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,cAAc,EACd,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,uBAAuB,EACxB,MAAM,kBAAkB,CAAC;AAC1B,YAAY,EACV,YAAY,IAAI,oBAAoB,EACpC,OAAO,IAAI,eAAe,EAC1B,WAAW,IAAI,mBAAmB,EAClC,eAAe,IAAI,uBAAuB,EAC1C,mBAAmB,IAAI,2BAA2B,EACnD,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EACL,uBAAuB,EACvB,6BAA6B,EAC7B,2BAA2B,EAC3B,iCAAiC,EAClC,MAAM,2BAA2B,CAAC;AACnC,YAAY,EACV,sBAAsB,EACvB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC3B,MAAM,wBAAwB,CAAC;AAChC,YAAY,EACV,0BAA0B,EAC3B,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EACL,kBAAkB,EAClB,wBAAwB,EACxB,YAAY,EACZ,yBAAyB,EACzB,kBAAkB,EAClB,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,YAAY,CAAC,CAsBnE;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,CAAC,EAAE;IAClD,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,gBAAgB,CAAC,EAAE,GAAG,CAAC;CACxB,GAAG,OAAO,CAAC,YAAY,CAAC,CAaxB;AAED;;;GAGG;AACH,wBAAsB,6BAA6B,CAAC,MAAM,CAAC,EAAE;IAC3D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAW9B;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAG/D;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,GAAG,SAAS,CAGpD;AAED;;GAEG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,OAAO,sBAAsB,EAAE,eAAe,EAAE,CAAC,CAGrG"}
@@ -12,7 +12,7 @@
12
12
  * @version 2.0.0
13
13
  */
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.setGlobalLLMFactory = exports.getGlobalLLMFactory = exports.LLMProviderFactory = exports.createRuvllmPatternCurator = exports.RuvllmPatternCurator = exports.RUVECTOR_CLIENT_VERSION = exports.createRuVectorClient = exports.RuVectorError = exports.RuVectorClient = exports.RoutingStrategy = exports.TaskComplexity = exports.RequestPriority = exports.HybridRouter = exports.createOpenRouterProvider = exports.OpenRouterProvider = exports.RuvllmProvider = exports.ClaudeProvider = exports.isLLMProviderError = exports.LLMProviderError = void 0;
15
+ exports.setGlobalLLMFactory = exports.getGlobalLLMFactory = exports.LLMProviderFactory = exports.createRuvllmPatternCurator = exports.RuvllmPatternCurator = exports.RUVECTOR_POSTGRES_ADAPTER_VERSION = exports.createDockerRuVectorAdapter = exports.createRuVectorPostgresAdapter = exports.RuVectorPostgresAdapter = exports.RUVECTOR_CLIENT_VERSION = exports.createRuVectorClient = exports.RuVectorError = exports.RuVectorClient = exports.RoutingStrategy = exports.TaskComplexity = exports.RequestPriority = exports.HybridRouter = exports.createOpenRouterProvider = exports.OpenRouterProvider = exports.RuvllmProvider = exports.ClaudeProvider = exports.isLLMProviderError = exports.LLMProviderError = void 0;
16
16
  exports.createDefaultProvider = createDefaultProvider;
17
17
  exports.createHybridProvider = createHybridProvider;
18
18
  exports.createOpenRouterWithAutoRoute = createOpenRouterWithAutoRoute;
@@ -43,6 +43,12 @@ Object.defineProperty(exports, "RuVectorClient", { enumerable: true, get: functi
43
43
  Object.defineProperty(exports, "RuVectorError", { enumerable: true, get: function () { return RuVectorClient_1.RuVectorError; } });
44
44
  Object.defineProperty(exports, "createRuVectorClient", { enumerable: true, get: function () { return RuVectorClient_1.createRuVectorClient; } });
45
45
  Object.defineProperty(exports, "RUVECTOR_CLIENT_VERSION", { enumerable: true, get: function () { return RuVectorClient_1.RUVECTOR_CLIENT_VERSION; } });
46
+ // RuVector PostgreSQL adapter for Docker-based self-learning (Phase 0.5)
47
+ var RuVectorPostgresAdapter_1 = require("./RuVectorPostgresAdapter");
48
+ Object.defineProperty(exports, "RuVectorPostgresAdapter", { enumerable: true, get: function () { return RuVectorPostgresAdapter_1.RuVectorPostgresAdapter; } });
49
+ Object.defineProperty(exports, "createRuVectorPostgresAdapter", { enumerable: true, get: function () { return RuVectorPostgresAdapter_1.createRuVectorPostgresAdapter; } });
50
+ Object.defineProperty(exports, "createDockerRuVectorAdapter", { enumerable: true, get: function () { return RuVectorPostgresAdapter_1.createDockerRuVectorAdapter; } });
51
+ Object.defineProperty(exports, "RUVECTOR_POSTGRES_ADAPTER_VERSION", { enumerable: true, get: function () { return RuVectorPostgresAdapter_1.RUVECTOR_POSTGRES_ADAPTER_VERSION; } });
46
52
  // RuvLLM Pattern Curator integration (Phase 0 M0.6)
47
53
  var RuvllmPatternCurator_1 = require("./RuvllmPatternCurator");
48
54
  Object.defineProperty(exports, "RuvllmPatternCurator", { enumerable: true, get: function () { return RuvllmPatternCurator_1.RuvllmPatternCurator; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "agentic-qe",
3
- "version": "2.5.9",
4
- "description": "Agentic Quality Engineering Fleet System - AI-driven quality management platform with 46 QE skills, n8n workflow testing agents, learning, pattern reuse, ML-based flaky detection, Multi-Model Router (70-81% cost savings), streaming progress updates, 85 MCP tools with lazy loading (87% context reduction), and native TypeScript hooks",
3
+ "version": "2.5.10",
4
+ "description": "Agentic Quality Engineering Fleet System - AI-driven quality management platform with 46 QE skills, n8n workflow testing agents, learning, pattern reuse, ML-based flaky detection, Multi-Model Router (70-81% cost savings), streaming progress updates, 91 MCP tools with lazy loading (87% context reduction), and native TypeScript hooks",
5
5
  "main": "dist/cli/index.js",
6
6
  "types": "dist/cli/index.d.ts",
7
7
  "bin": {
@@ -132,6 +132,7 @@
132
132
  "@opentelemetry/semantic-conventions": "^1.28.0",
133
133
  "@ruvector/core": "^0.1.15",
134
134
  "@ruvector/ruvllm": "^0.2.3",
135
+ "@types/pg": "^8.16.0",
135
136
  "@types/ws": "^8.18.1",
136
137
  "@xenova/transformers": "^2.6.0",
137
138
  "agentdb": "^1.6.1",
@@ -151,6 +152,7 @@
151
152
  "inquirer": "^8.2.6",
152
153
  "openai": "^6.9.1",
153
154
  "ora": "^5.4.1",
155
+ "pg": "^8.16.3",
154
156
  "playwright": "^1.57.0",
155
157
  "ruvector": "0.1.24",
156
158
  "uuid": "^11.0.5",