agentic-qe 3.4.2 → 3.4.4
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/.claude/skills/README.md +126 -35
- package/package.json +1 -1
- package/v3/CHANGELOG.md +50 -0
- package/v3/README.md +18 -24
- package/v3/dist/cli/bundle.js +10693 -10285
- package/v3/dist/cli/commands/init.d.ts.map +1 -1
- package/v3/dist/cli/commands/init.js +5 -2
- package/v3/dist/cli/commands/init.js.map +1 -1
- package/v3/dist/cli/handlers/init-handler.d.ts +1 -0
- package/v3/dist/cli/handlers/init-handler.d.ts.map +1 -1
- package/v3/dist/cli/handlers/init-handler.js +10 -1
- package/v3/dist/cli/handlers/init-handler.js.map +1 -1
- package/v3/dist/init/agents-installer.d.ts.map +1 -1
- package/v3/dist/init/agents-installer.js +20 -16
- package/v3/dist/init/agents-installer.js.map +1 -1
- package/v3/dist/init/orchestrator.d.ts.map +1 -1
- package/v3/dist/init/orchestrator.js +1 -0
- package/v3/dist/init/orchestrator.js.map +1 -1
- package/v3/dist/init/phases/04-database.d.ts +14 -2
- package/v3/dist/init/phases/04-database.d.ts.map +1 -1
- package/v3/dist/init/phases/04-database.js +50 -48
- package/v3/dist/init/phases/04-database.js.map +1 -1
- package/v3/dist/init/phases/08-mcp.d.ts +6 -1
- package/v3/dist/init/phases/08-mcp.d.ts.map +1 -1
- package/v3/dist/init/phases/08-mcp.js +54 -28
- package/v3/dist/init/phases/08-mcp.js.map +1 -1
- package/v3/dist/init/phases/09-assets.d.ts.map +1 -1
- package/v3/dist/init/phases/09-assets.js +8 -3
- package/v3/dist/init/phases/09-assets.js.map +1 -1
- package/v3/dist/init/phases/10-workers.d.ts +11 -0
- package/v3/dist/init/phases/10-workers.d.ts.map +1 -1
- package/v3/dist/init/phases/10-workers.js +246 -11
- package/v3/dist/init/phases/10-workers.js.map +1 -1
- package/v3/dist/init/phases/phase-interface.d.ts +2 -0
- package/v3/dist/init/phases/phase-interface.d.ts.map +1 -1
- package/v3/dist/init/phases/phase-interface.js.map +1 -1
- package/v3/dist/init/skills-installer.d.ts +5 -0
- package/v3/dist/init/skills-installer.d.ts.map +1 -1
- package/v3/dist/init/skills-installer.js +77 -26
- package/v3/dist/init/skills-installer.js.map +1 -1
- package/v3/dist/integrations/agent-booster-wasm/index.d.ts +36 -19
- package/v3/dist/integrations/agent-booster-wasm/index.d.ts.map +1 -1
- package/v3/dist/integrations/agent-booster-wasm/index.js +32 -21
- package/v3/dist/integrations/agent-booster-wasm/index.js.map +1 -1
- package/v3/dist/integrations/agentic-flow/agent-booster/adapter.d.ts.map +1 -1
- package/v3/dist/integrations/agentic-flow/agent-booster/adapter.js +57 -4
- package/v3/dist/integrations/agentic-flow/agent-booster/adapter.js.map +1 -1
- package/v3/dist/mcp/bundle.js +143 -28
- package/v3/dist/strange-loop/healing-controller.d.ts.map +1 -1
- package/v3/dist/strange-loop/healing-controller.js +54 -2
- package/v3/dist/strange-loop/healing-controller.js.map +1 -1
- package/v3/dist/strange-loop/index.d.ts +2 -1
- package/v3/dist/strange-loop/index.d.ts.map +1 -1
- package/v3/dist/strange-loop/index.js +3 -1
- package/v3/dist/strange-loop/index.js.map +1 -1
- package/v3/dist/strange-loop/infra-healing/composite-action-executor.d.ts +39 -0
- package/v3/dist/strange-loop/infra-healing/composite-action-executor.d.ts.map +1 -0
- package/v3/dist/strange-loop/infra-healing/composite-action-executor.js +82 -0
- package/v3/dist/strange-loop/infra-healing/composite-action-executor.js.map +1 -0
- package/v3/dist/strange-loop/infra-healing/coordination-lock.d.ts +54 -0
- package/v3/dist/strange-loop/infra-healing/coordination-lock.d.ts.map +1 -0
- package/v3/dist/strange-loop/infra-healing/coordination-lock.js +104 -0
- package/v3/dist/strange-loop/infra-healing/coordination-lock.js.map +1 -0
- package/v3/dist/strange-loop/infra-healing/index.d.ts +20 -0
- package/v3/dist/strange-loop/infra-healing/index.d.ts.map +1 -0
- package/v3/dist/strange-loop/infra-healing/index.js +26 -0
- package/v3/dist/strange-loop/infra-healing/index.js.map +1 -0
- package/v3/dist/strange-loop/infra-healing/infra-action-executor.d.ts +70 -0
- package/v3/dist/strange-loop/infra-healing/infra-action-executor.d.ts.map +1 -0
- package/v3/dist/strange-loop/infra-healing/infra-action-executor.js +260 -0
- package/v3/dist/strange-loop/infra-healing/infra-action-executor.js.map +1 -0
- package/v3/dist/strange-loop/infra-healing/infra-aware-agent-provider.d.ts +56 -0
- package/v3/dist/strange-loop/infra-healing/infra-aware-agent-provider.d.ts.map +1 -0
- package/v3/dist/strange-loop/infra-healing/infra-aware-agent-provider.js +108 -0
- package/v3/dist/strange-loop/infra-healing/infra-aware-agent-provider.js.map +1 -0
- package/v3/dist/strange-loop/infra-healing/infra-healing-orchestrator.d.ts +102 -0
- package/v3/dist/strange-loop/infra-healing/infra-healing-orchestrator.d.ts.map +1 -0
- package/v3/dist/strange-loop/infra-healing/infra-healing-orchestrator.js +201 -0
- package/v3/dist/strange-loop/infra-healing/infra-healing-orchestrator.js.map +1 -0
- package/v3/dist/strange-loop/infra-healing/recovery-playbook.d.ts +74 -0
- package/v3/dist/strange-loop/infra-healing/recovery-playbook.d.ts.map +1 -0
- package/v3/dist/strange-loop/infra-healing/recovery-playbook.js +153 -0
- package/v3/dist/strange-loop/infra-healing/recovery-playbook.js.map +1 -0
- package/v3/dist/strange-loop/infra-healing/test-output-observer.d.ts +61 -0
- package/v3/dist/strange-loop/infra-healing/test-output-observer.d.ts.map +1 -0
- package/v3/dist/strange-loop/infra-healing/test-output-observer.js +339 -0
- package/v3/dist/strange-loop/infra-healing/test-output-observer.js.map +1 -0
- package/v3/dist/strange-loop/infra-healing/types.d.ts +253 -0
- package/v3/dist/strange-loop/infra-healing/types.d.ts.map +1 -0
- package/v3/dist/strange-loop/infra-healing/types.js +33 -0
- package/v3/dist/strange-loop/infra-healing/types.js.map +1 -0
- package/v3/dist/strange-loop/strange-loop.d.ts +63 -0
- package/v3/dist/strange-loop/strange-loop.d.ts.map +1 -1
- package/v3/dist/strange-loop/strange-loop.js +62 -0
- package/v3/dist/strange-loop/strange-loop.js.map +1 -1
- package/v3/dist/strange-loop/types.d.ts +2 -2
- package/v3/dist/strange-loop/types.d.ts.map +1 -1
- package/v3/dist/strange-loop/types.js.map +1 -1
- package/v3/dist/sync/embeddings/index.d.ts +9 -0
- package/v3/dist/sync/embeddings/index.d.ts.map +1 -0
- package/v3/dist/sync/embeddings/index.js +9 -0
- package/v3/dist/sync/embeddings/index.js.map +1 -0
- package/v3/dist/sync/embeddings/sync-embedding-generator.d.ts +101 -0
- package/v3/dist/sync/embeddings/sync-embedding-generator.d.ts.map +1 -0
- package/v3/dist/sync/embeddings/sync-embedding-generator.js +264 -0
- package/v3/dist/sync/embeddings/sync-embedding-generator.js.map +1 -0
- package/v3/dist/sync/index.d.ts +1 -0
- package/v3/dist/sync/index.d.ts.map +1 -1
- package/v3/dist/sync/index.js +2 -0
- package/v3/dist/sync/index.js.map +1 -1
- package/v3/dist/workers/workers/cloud-sync.d.ts +19 -0
- package/v3/dist/workers/workers/cloud-sync.d.ts.map +1 -0
- package/v3/dist/workers/workers/cloud-sync.js +177 -0
- package/v3/dist/workers/workers/cloud-sync.js.map +1 -0
- package/v3/dist/workers/workers/index.d.ts +12 -11
- package/v3/dist/workers/workers/index.d.ts.map +1 -1
- package/v3/dist/workers/workers/index.js +12 -11
- package/v3/dist/workers/workers/index.js.map +1 -1
- package/v3/package.json +8 -4
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sync Embedding Generator
|
|
3
|
+
* Cloud Sync Plan Phase 3: Generate embeddings for patterns
|
|
4
|
+
*
|
|
5
|
+
* Generates embeddings for patterns before cloud sync to enable
|
|
6
|
+
* vector similarity search in ruvector-postgres.
|
|
7
|
+
*/
|
|
8
|
+
import { EmbeddingGenerator } from '../../integrations/embeddings/base/EmbeddingGenerator.js';
|
|
9
|
+
import { resolve, dirname } from 'path';
|
|
10
|
+
import { fileURLToPath } from 'url';
|
|
11
|
+
import Database from 'better-sqlite3';
|
|
12
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
13
|
+
const __dirname = dirname(__filename);
|
|
14
|
+
/**
|
|
15
|
+
* Sync Embedding Generator
|
|
16
|
+
*
|
|
17
|
+
* Generates 384-dimensional embeddings for patterns using
|
|
18
|
+
* the all-MiniLM-L6-v2 model via @xenova/transformers.
|
|
19
|
+
*/
|
|
20
|
+
export class SyncEmbeddingGenerator {
|
|
21
|
+
generator;
|
|
22
|
+
dbPath;
|
|
23
|
+
initialized = false;
|
|
24
|
+
constructor(dbPath) {
|
|
25
|
+
// Default to root database
|
|
26
|
+
this.dbPath = dbPath || resolve(__dirname, '../../../../.agentic-qe/memory.db');
|
|
27
|
+
this.generator = new EmbeddingGenerator({
|
|
28
|
+
model: 'Xenova/all-MiniLM-L6-v2',
|
|
29
|
+
dimension: 384,
|
|
30
|
+
cacheEnabled: true,
|
|
31
|
+
onnxEnabled: true,
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Initialize the embedding generator
|
|
36
|
+
*/
|
|
37
|
+
async initialize() {
|
|
38
|
+
if (this.initialized)
|
|
39
|
+
return;
|
|
40
|
+
await this.generator.initialize();
|
|
41
|
+
this.initialized = true;
|
|
42
|
+
console.log('[SyncEmbedding] Model initialized');
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Generate embedding for a single pattern
|
|
46
|
+
*/
|
|
47
|
+
async generateForPattern(pattern) {
|
|
48
|
+
await this.initialize();
|
|
49
|
+
// Extract text content from pattern
|
|
50
|
+
const text = this.extractText(pattern);
|
|
51
|
+
// Generate embedding (use 'text' namespace as 'patterns' is not in EmbeddingNamespace)
|
|
52
|
+
const embedding = await this.generator.embed(text, {
|
|
53
|
+
namespace: 'text',
|
|
54
|
+
});
|
|
55
|
+
return {
|
|
56
|
+
id: pattern.id,
|
|
57
|
+
embedding: Array.isArray(embedding.vector)
|
|
58
|
+
? embedding.vector
|
|
59
|
+
: Array.from(embedding.vector),
|
|
60
|
+
text,
|
|
61
|
+
dimension: embedding.dimension,
|
|
62
|
+
generatedAt: new Date(),
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Generate embeddings for all patterns without embeddings
|
|
67
|
+
*/
|
|
68
|
+
async generateForAllPatterns(tableName = 'patterns', options = {}) {
|
|
69
|
+
const startTime = Date.now();
|
|
70
|
+
const stats = {
|
|
71
|
+
totalPatterns: 0,
|
|
72
|
+
patternsWithEmbeddings: 0,
|
|
73
|
+
patternsGenerated: 0,
|
|
74
|
+
patternsSkipped: 0,
|
|
75
|
+
errors: [],
|
|
76
|
+
durationMs: 0,
|
|
77
|
+
};
|
|
78
|
+
await this.initialize();
|
|
79
|
+
// Open database
|
|
80
|
+
const db = new Database(this.dbPath, { readonly: false });
|
|
81
|
+
try {
|
|
82
|
+
// Check if embedding column exists
|
|
83
|
+
const columns = db.prepare(`PRAGMA table_info(${tableName})`).all();
|
|
84
|
+
const hasEmbeddingColumn = columns.some((col) => col.name === 'embedding');
|
|
85
|
+
if (!hasEmbeddingColumn) {
|
|
86
|
+
// Add embedding column
|
|
87
|
+
db.prepare(`ALTER TABLE ${tableName} ADD COLUMN embedding TEXT`).run();
|
|
88
|
+
console.log(`[SyncEmbedding] Added embedding column to ${tableName}`);
|
|
89
|
+
}
|
|
90
|
+
// Get patterns
|
|
91
|
+
const query = options.force
|
|
92
|
+
? `SELECT * FROM ${tableName}`
|
|
93
|
+
: `SELECT * FROM ${tableName} WHERE embedding IS NULL OR embedding = ''`;
|
|
94
|
+
const patterns = db.prepare(query).all();
|
|
95
|
+
stats.totalPatterns = patterns.length;
|
|
96
|
+
if (options.verbose) {
|
|
97
|
+
console.log(`[SyncEmbedding] Processing ${patterns.length} patterns from ${tableName}`);
|
|
98
|
+
}
|
|
99
|
+
// Count existing embeddings
|
|
100
|
+
const existingCount = db
|
|
101
|
+
.prepare(`SELECT COUNT(*) as count FROM ${tableName} WHERE embedding IS NOT NULL AND embedding != ''`)
|
|
102
|
+
.get();
|
|
103
|
+
stats.patternsWithEmbeddings = existingCount.count;
|
|
104
|
+
// Prepare update statement
|
|
105
|
+
const updateStmt = db.prepare(`UPDATE ${tableName} SET embedding = ? WHERE id = ?`);
|
|
106
|
+
// Process in batches
|
|
107
|
+
const batchSize = options.batchSize || 50;
|
|
108
|
+
for (let i = 0; i < patterns.length; i += batchSize) {
|
|
109
|
+
const batch = patterns.slice(i, Math.min(i + batchSize, patterns.length));
|
|
110
|
+
for (const pattern of batch) {
|
|
111
|
+
try {
|
|
112
|
+
const result = await this.generateForPattern(pattern);
|
|
113
|
+
// Store as JSON array string
|
|
114
|
+
const embeddingJson = JSON.stringify(result.embedding);
|
|
115
|
+
updateStmt.run(embeddingJson, pattern.id);
|
|
116
|
+
stats.patternsGenerated++;
|
|
117
|
+
if (options.verbose && stats.patternsGenerated % 10 === 0) {
|
|
118
|
+
console.log(`[SyncEmbedding] Generated ${stats.patternsGenerated}/${patterns.length}`);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
catch (error) {
|
|
122
|
+
const errorMsg = error instanceof Error ? error.message : String(error);
|
|
123
|
+
stats.errors.push(`Pattern ${pattern.id}: ${errorMsg}`);
|
|
124
|
+
stats.patternsSkipped++;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
stats.durationMs = Date.now() - startTime;
|
|
129
|
+
if (options.verbose) {
|
|
130
|
+
console.log(`[SyncEmbedding] Completed: ${stats.patternsGenerated} generated, ${stats.patternsSkipped} skipped`);
|
|
131
|
+
console.log(`[SyncEmbedding] Duration: ${stats.durationMs}ms`);
|
|
132
|
+
}
|
|
133
|
+
return stats;
|
|
134
|
+
}
|
|
135
|
+
finally {
|
|
136
|
+
db.close();
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Search for similar patterns using vector similarity
|
|
141
|
+
*/
|
|
142
|
+
async findSimilarPatterns(query, options = {}) {
|
|
143
|
+
await this.initialize();
|
|
144
|
+
const limit = options.limit || 10;
|
|
145
|
+
const threshold = options.threshold || 0.5;
|
|
146
|
+
const tableName = options.tableName || 'patterns';
|
|
147
|
+
// Generate query embedding
|
|
148
|
+
const queryEmbedding = await this.generator.embed(query, { namespace: 'text' });
|
|
149
|
+
const queryVector = Array.isArray(queryEmbedding.vector)
|
|
150
|
+
? queryEmbedding.vector
|
|
151
|
+
: Array.from(queryEmbedding.vector);
|
|
152
|
+
// Get all patterns with embeddings
|
|
153
|
+
const db = new Database(this.dbPath, { readonly: true });
|
|
154
|
+
try {
|
|
155
|
+
const patterns = db
|
|
156
|
+
.prepare(`SELECT * FROM ${tableName} WHERE embedding IS NOT NULL AND embedding != ''`)
|
|
157
|
+
.all();
|
|
158
|
+
// Calculate similarities
|
|
159
|
+
const results = [];
|
|
160
|
+
for (const pattern of patterns) {
|
|
161
|
+
try {
|
|
162
|
+
const patternVector = typeof pattern.embedding === 'string'
|
|
163
|
+
? JSON.parse(pattern.embedding)
|
|
164
|
+
: pattern.embedding;
|
|
165
|
+
if (Array.isArray(patternVector) && patternVector.length === queryVector.length) {
|
|
166
|
+
const similarity = this.cosineSimilarity(queryVector, patternVector);
|
|
167
|
+
if (similarity >= threshold) {
|
|
168
|
+
results.push({ pattern, similarity });
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
catch {
|
|
173
|
+
// Skip patterns with invalid embeddings
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
// Sort by similarity and limit
|
|
177
|
+
return results
|
|
178
|
+
.sort((a, b) => b.similarity - a.similarity)
|
|
179
|
+
.slice(0, limit);
|
|
180
|
+
}
|
|
181
|
+
finally {
|
|
182
|
+
db.close();
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* Extract text content from pattern for embedding
|
|
187
|
+
*/
|
|
188
|
+
extractText(pattern) {
|
|
189
|
+
const parts = [];
|
|
190
|
+
if (pattern.pattern) {
|
|
191
|
+
parts.push(pattern.pattern);
|
|
192
|
+
}
|
|
193
|
+
if (pattern.content) {
|
|
194
|
+
// Handle JSON content
|
|
195
|
+
try {
|
|
196
|
+
const content = typeof pattern.content === 'string'
|
|
197
|
+
? JSON.parse(pattern.content)
|
|
198
|
+
: pattern.content;
|
|
199
|
+
if (typeof content === 'object') {
|
|
200
|
+
// Extract key fields
|
|
201
|
+
if (content.description)
|
|
202
|
+
parts.push(content.description);
|
|
203
|
+
if (content.name)
|
|
204
|
+
parts.push(content.name);
|
|
205
|
+
if (content.summary)
|
|
206
|
+
parts.push(content.summary);
|
|
207
|
+
if (content.text)
|
|
208
|
+
parts.push(content.text);
|
|
209
|
+
}
|
|
210
|
+
else if (typeof content === 'string') {
|
|
211
|
+
parts.push(content);
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
catch {
|
|
215
|
+
// Not JSON, use as-is
|
|
216
|
+
parts.push(String(pattern.content));
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
if (pattern.type) {
|
|
220
|
+
parts.push(`type:${pattern.type}`);
|
|
221
|
+
}
|
|
222
|
+
if (pattern.domain) {
|
|
223
|
+
parts.push(`domain:${pattern.domain}`);
|
|
224
|
+
}
|
|
225
|
+
// Combine and truncate to model's max length
|
|
226
|
+
const text = parts.join(' ').trim();
|
|
227
|
+
return text.substring(0, 512);
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* Calculate cosine similarity between two vectors
|
|
231
|
+
*/
|
|
232
|
+
cosineSimilarity(a, b) {
|
|
233
|
+
let dotProduct = 0;
|
|
234
|
+
let normA = 0;
|
|
235
|
+
let normB = 0;
|
|
236
|
+
for (let i = 0; i < a.length; i++) {
|
|
237
|
+
dotProduct += a[i] * b[i];
|
|
238
|
+
normA += a[i] * a[i];
|
|
239
|
+
normB += b[i] * b[i];
|
|
240
|
+
}
|
|
241
|
+
const magnitude = Math.sqrt(normA) * Math.sqrt(normB);
|
|
242
|
+
return magnitude === 0 ? 0 : dotProduct / magnitude;
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Get embedding statistics
|
|
246
|
+
*/
|
|
247
|
+
getStats() {
|
|
248
|
+
return this.generator.getStats();
|
|
249
|
+
}
|
|
250
|
+
/**
|
|
251
|
+
* Clear resources
|
|
252
|
+
*/
|
|
253
|
+
async clear() {
|
|
254
|
+
await this.generator.clear();
|
|
255
|
+
this.initialized = false;
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
/**
|
|
259
|
+
* Create a sync embedding generator
|
|
260
|
+
*/
|
|
261
|
+
export function createSyncEmbeddingGenerator(dbPath) {
|
|
262
|
+
return new SyncEmbeddingGenerator(dbPath);
|
|
263
|
+
}
|
|
264
|
+
//# sourceMappingURL=sync-embedding-generator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sync-embedding-generator.js","sourceRoot":"","sources":["../../../src/sync/embeddings/sync-embedding-generator.ts"],"names":[],"mappings":"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"}
|
package/v3/dist/sync/index.d.ts
CHANGED
|
@@ -32,4 +32,5 @@ export type { TunnelManager } from './cloud/tunnel-manager.js';
|
|
|
32
32
|
export { IAPTunnelManager, DirectConnectionManager, createTunnelManager, createConnectionManager, } from './cloud/tunnel-manager.js';
|
|
33
33
|
export { PostgresWriter, createPostgresWriter, type PostgresWriterConfig, } from './cloud/postgres-writer.js';
|
|
34
34
|
export { CloudSyncAgent, createSyncAgent, syncToCloud, syncIncrementalToCloud, type SyncAgentConfig, type SourceStatus, type VerifyResult, type VerifyTableResult, } from './sync-agent.js';
|
|
35
|
+
export { SyncEmbeddingGenerator, createSyncEmbeddingGenerator, type PatternRecord, type PatternEmbeddingResult, type EmbeddingBatchStats, } from './embeddings/index.js';
|
|
35
36
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sync/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAGH,YAAY,EACV,UAAU,EACV,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,kBAAkB,EAClB,UAAU,EACV,UAAU,EACV,UAAU,EACV,UAAU,EACV,WAAW,EACX,aAAa,EACb,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAGpE,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,KAAK,kBAAkB,EACvB,KAAK,YAAY,GAClB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,KAAK,gBAAgB,EACrB,KAAK,UAAU,GAChB,MAAM,0BAA0B,CAAC;AAGlC,YAAY,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EACL,gBAAgB,EAChB,uBAAuB,EACvB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,KAAK,oBAAoB,GAC1B,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EACL,cAAc,EACd,eAAe,EACf,WAAW,EACX,sBAAsB,EACtB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,iBAAiB,GACvB,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sync/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAGH,YAAY,EACV,UAAU,EACV,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,QAAQ,EACR,kBAAkB,EAClB,UAAU,EACV,UAAU,EACV,UAAU,EACV,UAAU,EACV,WAAW,EACX,aAAa,EACb,gBAAgB,EAChB,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAGpE,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,KAAK,kBAAkB,EACvB,KAAK,YAAY,GAClB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,KAAK,gBAAgB,EACrB,KAAK,UAAU,GAChB,MAAM,0BAA0B,CAAC;AAGlC,YAAY,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EACL,gBAAgB,EAChB,uBAAuB,EACvB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,KAAK,oBAAoB,GAC1B,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EACL,cAAc,EACd,eAAe,EACf,WAAW,EACX,sBAAsB,EACtB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,iBAAiB,GACvB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,sBAAsB,EACtB,4BAA4B,EAC5B,KAAK,aAAa,EAClB,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,GACzB,MAAM,uBAAuB,CAAC"}
|
package/v3/dist/sync/index.js
CHANGED
|
@@ -32,4 +32,6 @@ export { IAPTunnelManager, DirectConnectionManager, createTunnelManager, createC
|
|
|
32
32
|
export { PostgresWriter, createPostgresWriter, } from './cloud/postgres-writer.js';
|
|
33
33
|
// Sync agent
|
|
34
34
|
export { CloudSyncAgent, createSyncAgent, syncToCloud, syncIncrementalToCloud, } from './sync-agent.js';
|
|
35
|
+
// Embeddings (Phase 3)
|
|
36
|
+
export { SyncEmbeddingGenerator, createSyncEmbeddingGenerator, } from './embeddings/index.js';
|
|
35
37
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sync/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAoBH,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpE,UAAU;AACV,OAAO,EACL,YAAY,EACZ,kBAAkB,GAGnB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,UAAU,EACV,gBAAgB,GAGjB,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EACL,gBAAgB,EAChB,uBAAuB,EACvB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,cAAc,EACd,oBAAoB,GAErB,MAAM,4BAA4B,CAAC;AAEpC,aAAa;AACb,OAAO,EACL,cAAc,EACd,eAAe,EACf,WAAW,EACX,sBAAsB,GAKvB,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sync/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAoBH,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpE,UAAU;AACV,OAAO,EACL,YAAY,EACZ,kBAAkB,GAGnB,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EACL,UAAU,EACV,gBAAgB,GAGjB,MAAM,0BAA0B,CAAC;AAIlC,OAAO,EACL,gBAAgB,EAChB,uBAAuB,EACvB,mBAAmB,EACnB,uBAAuB,GACxB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,cAAc,EACd,oBAAoB,GAErB,MAAM,4BAA4B,CAAC;AAEpC,aAAa;AACb,OAAO,EACL,cAAc,EACd,eAAe,EACf,WAAW,EACX,sBAAsB,GAKvB,MAAM,iBAAiB,CAAC;AAEzB,uBAAuB;AACvB,OAAO,EACL,sBAAsB,EACtB,4BAA4B,GAI7B,MAAM,uBAAuB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agentic QE v3 - Cloud Sync Worker
|
|
3
|
+
* Cloud Sync Plan Phase 4: Periodic Sync
|
|
4
|
+
*
|
|
5
|
+
* Periodically syncs local learning data to cloud PostgreSQL.
|
|
6
|
+
* Runs every hour by default, configurable via AQE_SYNC_INTERVAL.
|
|
7
|
+
*/
|
|
8
|
+
import { BaseWorker } from '../base-worker.js';
|
|
9
|
+
import type { WorkerContext, WorkerResult } from '../interfaces.js';
|
|
10
|
+
export declare class CloudSyncWorker extends BaseWorker {
|
|
11
|
+
constructor();
|
|
12
|
+
protected doExecute(context: WorkerContext): Promise<WorkerResult>;
|
|
13
|
+
/**
|
|
14
|
+
* Check if gcloud CLI is available
|
|
15
|
+
*/
|
|
16
|
+
private checkGcloudAvailable;
|
|
17
|
+
}
|
|
18
|
+
export default CloudSyncWorker;
|
|
19
|
+
//# sourceMappingURL=cloud-sync.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cloud-sync.d.ts","sourceRoot":"","sources":["../../../src/workers/workers/cloud-sync.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAEV,aAAa,EACb,YAAY,EAIb,MAAM,kBAAkB,CAAC;AA2C1B,qBAAa,eAAgB,SAAQ,UAAU;;cAK7B,SAAS,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC;IA6IxE;;OAEG;YACW,oBAAoB;CASnC;AAED,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agentic QE v3 - Cloud Sync Worker
|
|
3
|
+
* Cloud Sync Plan Phase 4: Periodic Sync
|
|
4
|
+
*
|
|
5
|
+
* Periodically syncs local learning data to cloud PostgreSQL.
|
|
6
|
+
* Runs every hour by default, configurable via AQE_SYNC_INTERVAL.
|
|
7
|
+
*/
|
|
8
|
+
import { BaseWorker } from '../base-worker.js';
|
|
9
|
+
const CONFIG = {
|
|
10
|
+
id: 'cloud-sync',
|
|
11
|
+
name: 'Cloud Sync',
|
|
12
|
+
description: 'Periodically syncs local learning data to cloud PostgreSQL',
|
|
13
|
+
intervalMs: parseInt(process.env.AQE_SYNC_INTERVAL || '3600000', 10), // 1 hour default
|
|
14
|
+
priority: 'low',
|
|
15
|
+
targetDomains: ['learning-optimization'],
|
|
16
|
+
enabled: process.env.AQE_CLOUD_SYNC_ENABLED === 'true',
|
|
17
|
+
timeoutMs: 600000, // 10 minutes
|
|
18
|
+
retryCount: 3,
|
|
19
|
+
retryDelayMs: 60000, // 1 minute
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* Create standard worker metrics
|
|
23
|
+
*/
|
|
24
|
+
function createMetrics(itemsAnalyzed, issuesFound, recordsSynced, durationMs) {
|
|
25
|
+
return {
|
|
26
|
+
itemsAnalyzed,
|
|
27
|
+
issuesFound,
|
|
28
|
+
healthScore: issuesFound === 0 ? 100 : Math.max(0, 100 - issuesFound * 10),
|
|
29
|
+
trend: 'stable',
|
|
30
|
+
domainMetrics: {
|
|
31
|
+
recordsSynced,
|
|
32
|
+
durationMs,
|
|
33
|
+
},
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
export class CloudSyncWorker extends BaseWorker {
|
|
37
|
+
constructor() {
|
|
38
|
+
super(CONFIG);
|
|
39
|
+
}
|
|
40
|
+
async doExecute(context) {
|
|
41
|
+
const startTime = Date.now();
|
|
42
|
+
context.logger.info('Starting cloud sync worker');
|
|
43
|
+
const findings = [];
|
|
44
|
+
const recommendations = [];
|
|
45
|
+
// Check if cloud sync is configured
|
|
46
|
+
if (!process.env.GCP_PROJECT) {
|
|
47
|
+
findings.push({
|
|
48
|
+
type: 'info',
|
|
49
|
+
title: 'Cloud sync not configured',
|
|
50
|
+
description: 'GCP_PROJECT environment variable not set. Skipping cloud sync.',
|
|
51
|
+
severity: 'info',
|
|
52
|
+
domain: 'learning-optimization',
|
|
53
|
+
});
|
|
54
|
+
return {
|
|
55
|
+
workerId: this.config.id,
|
|
56
|
+
success: true,
|
|
57
|
+
durationMs: Date.now() - startTime,
|
|
58
|
+
findings,
|
|
59
|
+
recommendations,
|
|
60
|
+
metrics: createMetrics(0, 0, 0, Date.now() - startTime),
|
|
61
|
+
timestamp: new Date(),
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
// Check if gcloud is available
|
|
65
|
+
const gcloudAvailable = await this.checkGcloudAvailable();
|
|
66
|
+
if (!gcloudAvailable) {
|
|
67
|
+
findings.push({
|
|
68
|
+
type: 'warning',
|
|
69
|
+
title: 'gcloud CLI not available',
|
|
70
|
+
description: 'gcloud CLI not found. Install Google Cloud SDK for cloud sync.',
|
|
71
|
+
severity: 'medium',
|
|
72
|
+
domain: 'learning-optimization',
|
|
73
|
+
});
|
|
74
|
+
return {
|
|
75
|
+
workerId: this.config.id,
|
|
76
|
+
success: true,
|
|
77
|
+
durationMs: Date.now() - startTime,
|
|
78
|
+
findings,
|
|
79
|
+
recommendations,
|
|
80
|
+
metrics: createMetrics(0, 1, 0, Date.now() - startTime),
|
|
81
|
+
timestamp: new Date(),
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
try {
|
|
85
|
+
// Dynamically import sync module to avoid loading it when not needed
|
|
86
|
+
const { syncIncrementalToCloud } = await import('../../sync/index.js');
|
|
87
|
+
context.logger.info('Running incremental sync to cloud...');
|
|
88
|
+
const report = await syncIncrementalToCloud(undefined, {
|
|
89
|
+
environment: process.env.AQE_ENV || 'devpod',
|
|
90
|
+
verbose: false,
|
|
91
|
+
});
|
|
92
|
+
const syncResult = {
|
|
93
|
+
recordsSynced: report.totalRecordsSynced,
|
|
94
|
+
tablesProcessed: report.results.length,
|
|
95
|
+
errors: report.errors,
|
|
96
|
+
durationMs: report.totalDurationMs,
|
|
97
|
+
};
|
|
98
|
+
// Log results
|
|
99
|
+
if (syncResult.recordsSynced > 0) {
|
|
100
|
+
findings.push({
|
|
101
|
+
type: 'info',
|
|
102
|
+
title: 'Cloud sync completed',
|
|
103
|
+
description: `Synced ${syncResult.recordsSynced} records across ${syncResult.tablesProcessed} tables in ${syncResult.durationMs}ms`,
|
|
104
|
+
severity: 'info',
|
|
105
|
+
domain: 'learning-optimization',
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
// Log errors
|
|
109
|
+
for (const error of syncResult.errors) {
|
|
110
|
+
findings.push({
|
|
111
|
+
type: 'error',
|
|
112
|
+
title: 'Sync error',
|
|
113
|
+
description: error,
|
|
114
|
+
severity: 'high',
|
|
115
|
+
domain: 'learning-optimization',
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
// Add recommendation if sync hasn't run in a while
|
|
119
|
+
if (syncResult.recordsSynced === 0) {
|
|
120
|
+
recommendations.push({
|
|
121
|
+
priority: 'p3',
|
|
122
|
+
domain: 'learning-optimization',
|
|
123
|
+
action: 'Run `aqe sync --full` to force a full sync',
|
|
124
|
+
description: 'No new records to sync. Consider running a full sync if data seems stale.',
|
|
125
|
+
estimatedImpact: 'low',
|
|
126
|
+
effort: 'low',
|
|
127
|
+
autoFixable: true,
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
return {
|
|
131
|
+
workerId: this.config.id,
|
|
132
|
+
success: syncResult.errors.length === 0,
|
|
133
|
+
durationMs: Date.now() - startTime,
|
|
134
|
+
findings,
|
|
135
|
+
recommendations,
|
|
136
|
+
metrics: createMetrics(syncResult.tablesProcessed, syncResult.errors.length, syncResult.recordsSynced, Date.now() - startTime),
|
|
137
|
+
timestamp: new Date(),
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
catch (error) {
|
|
141
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
142
|
+
context.logger.error(`Cloud sync failed: ${errorMessage}`);
|
|
143
|
+
findings.push({
|
|
144
|
+
type: 'error',
|
|
145
|
+
title: 'Cloud sync failed',
|
|
146
|
+
description: errorMessage,
|
|
147
|
+
severity: 'high',
|
|
148
|
+
domain: 'learning-optimization',
|
|
149
|
+
});
|
|
150
|
+
return {
|
|
151
|
+
workerId: this.config.id,
|
|
152
|
+
success: false,
|
|
153
|
+
durationMs: Date.now() - startTime,
|
|
154
|
+
error: errorMessage,
|
|
155
|
+
findings,
|
|
156
|
+
recommendations,
|
|
157
|
+
metrics: createMetrics(0, 1, 0, Date.now() - startTime),
|
|
158
|
+
timestamp: new Date(),
|
|
159
|
+
};
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Check if gcloud CLI is available
|
|
164
|
+
*/
|
|
165
|
+
async checkGcloudAvailable() {
|
|
166
|
+
try {
|
|
167
|
+
const { execSync } = await import('child_process');
|
|
168
|
+
execSync('which gcloud', { stdio: 'ignore' });
|
|
169
|
+
return true;
|
|
170
|
+
}
|
|
171
|
+
catch {
|
|
172
|
+
return false;
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
export default CloudSyncWorker;
|
|
177
|
+
//# sourceMappingURL=cloud-sync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cloud-sync.js","sourceRoot":"","sources":["../../../src/workers/workers/cloud-sync.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,16 +2,17 @@
|
|
|
2
2
|
* Agentic QE v3 - Worker Exports
|
|
3
3
|
* ADR-014: Background Workers for QE Monitoring
|
|
4
4
|
*
|
|
5
|
-
* Exports all
|
|
5
|
+
* Exports all 11 QE-specific background workers.
|
|
6
6
|
*/
|
|
7
|
-
export { TestHealthWorker } from './test-health';
|
|
8
|
-
export { CoverageTrackerWorker } from './coverage-tracker';
|
|
9
|
-
export { FlakyDetectorWorker } from './flaky-detector';
|
|
10
|
-
export { SecurityScanWorker } from './security-scan';
|
|
11
|
-
export { QualityGateWorker } from './quality-gate';
|
|
12
|
-
export { LearningConsolidationWorker } from './learning-consolidation';
|
|
13
|
-
export { DefectPredictorWorker } from './defect-predictor';
|
|
14
|
-
export { RegressionMonitorWorker } from './regression-monitor';
|
|
15
|
-
export { PerformanceBaselineWorker } from './performance-baseline';
|
|
16
|
-
export { ComplianceCheckerWorker } from './compliance-checker';
|
|
7
|
+
export { TestHealthWorker } from './test-health.js';
|
|
8
|
+
export { CoverageTrackerWorker } from './coverage-tracker.js';
|
|
9
|
+
export { FlakyDetectorWorker } from './flaky-detector.js';
|
|
10
|
+
export { SecurityScanWorker } from './security-scan.js';
|
|
11
|
+
export { QualityGateWorker } from './quality-gate.js';
|
|
12
|
+
export { LearningConsolidationWorker } from './learning-consolidation.js';
|
|
13
|
+
export { DefectPredictorWorker } from './defect-predictor.js';
|
|
14
|
+
export { RegressionMonitorWorker } from './regression-monitor.js';
|
|
15
|
+
export { PerformanceBaselineWorker } from './performance-baseline.js';
|
|
16
|
+
export { ComplianceCheckerWorker } from './compliance-checker.js';
|
|
17
|
+
export { CloudSyncWorker } from './cloud-sync.js';
|
|
17
18
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/workers/workers/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/workers/workers/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -2,16 +2,17 @@
|
|
|
2
2
|
* Agentic QE v3 - Worker Exports
|
|
3
3
|
* ADR-014: Background Workers for QE Monitoring
|
|
4
4
|
*
|
|
5
|
-
* Exports all
|
|
5
|
+
* Exports all 11 QE-specific background workers.
|
|
6
6
|
*/
|
|
7
|
-
export { TestHealthWorker } from './test-health';
|
|
8
|
-
export { CoverageTrackerWorker } from './coverage-tracker';
|
|
9
|
-
export { FlakyDetectorWorker } from './flaky-detector';
|
|
10
|
-
export { SecurityScanWorker } from './security-scan';
|
|
11
|
-
export { QualityGateWorker } from './quality-gate';
|
|
12
|
-
export { LearningConsolidationWorker } from './learning-consolidation';
|
|
13
|
-
export { DefectPredictorWorker } from './defect-predictor';
|
|
14
|
-
export { RegressionMonitorWorker } from './regression-monitor';
|
|
15
|
-
export { PerformanceBaselineWorker } from './performance-baseline';
|
|
16
|
-
export { ComplianceCheckerWorker } from './compliance-checker';
|
|
7
|
+
export { TestHealthWorker } from './test-health.js';
|
|
8
|
+
export { CoverageTrackerWorker } from './coverage-tracker.js';
|
|
9
|
+
export { FlakyDetectorWorker } from './flaky-detector.js';
|
|
10
|
+
export { SecurityScanWorker } from './security-scan.js';
|
|
11
|
+
export { QualityGateWorker } from './quality-gate.js';
|
|
12
|
+
export { LearningConsolidationWorker } from './learning-consolidation.js';
|
|
13
|
+
export { DefectPredictorWorker } from './defect-predictor.js';
|
|
14
|
+
export { RegressionMonitorWorker } from './regression-monitor.js';
|
|
15
|
+
export { PerformanceBaselineWorker } from './performance-baseline.js';
|
|
16
|
+
export { ComplianceCheckerWorker } from './compliance-checker.js';
|
|
17
|
+
export { CloudSyncWorker } from './cloud-sync.js';
|
|
17
18
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/workers/workers/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/workers/workers/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC"}
|
package/v3/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agentic-qe/v3",
|
|
3
|
-
"version": "3.4.
|
|
3
|
+
"version": "3.4.4",
|
|
4
4
|
"description": "Agentic QE v3 - Domain-Driven Design Architecture with 12 Bounded Contexts, O(log n) coverage analysis, ReasoningBank learning, 51 specialized QE agents",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -64,12 +64,13 @@
|
|
|
64
64
|
"mcp": "tsx src/mcp/entry.ts",
|
|
65
65
|
"test": "vitest run",
|
|
66
66
|
"test:unit": "vitest run tests/unit",
|
|
67
|
+
"test:ci": "vitest run --exclude='**/browser/**' --exclude='**/*.e2e.test.ts' --exclude='**/vibium/**' --exclude='**/integration/browser/**' --exclude='**/browser-swarm-coordinator.test.ts'",
|
|
67
68
|
"test:e2e": "vitest run tests/integration/browser --testTimeout=120000",
|
|
68
69
|
"test:safe": "NODE_OPTIONS='--max-old-space-size=1536' vitest run",
|
|
69
70
|
"test:dev": "vitest run --exclude='**/browser/**' --exclude='**/*.e2e.test.ts' --exclude='**/vibium/**' --exclude='**/browser-swarm-coordinator.test.ts'",
|
|
70
|
-
"test:regression": "vitest run",
|
|
71
|
+
"test:regression": "vitest run --exclude='**/browser/**' --exclude='**/*.e2e.test.ts' --exclude='**/integration/browser/**' --exclude='**/browser-swarm-coordinator.test.ts'",
|
|
71
72
|
"test:watch": "vitest",
|
|
72
|
-
"test:coverage": "vitest run --coverage",
|
|
73
|
+
"test:coverage": "vitest run --coverage --exclude='**/browser/**' --exclude='**/*.e2e.test.ts' --exclude='**/integration/browser/**' --exclude='**/browser-swarm-coordinator.test.ts'",
|
|
73
74
|
"test:perf": "vitest bench tests/performance/",
|
|
74
75
|
"performance:gate": "npx tsx src/performance/run-gates.ts",
|
|
75
76
|
"test:integration:browser": "VIBIUM_REAL_TESTS=true vitest run tests/integrations/vibium/vibium-real.test.ts",
|
|
@@ -84,7 +85,10 @@
|
|
|
84
85
|
"sync:cloud:status": "tsx src/cli/index.ts sync status",
|
|
85
86
|
"sync:cloud:verify": "tsx src/cli/index.ts sync verify",
|
|
86
87
|
"sync:cloud:init": "tsx src/cli/index.ts sync init --output ./src/sync/schema/cloud-schema.sql",
|
|
87
|
-
"sync:cloud:config": "tsx src/cli/index.ts sync config --sources"
|
|
88
|
+
"sync:cloud:config": "tsx src/cli/index.ts sync config --sources",
|
|
89
|
+
"sync:embeddings": "tsx scripts/generate-embeddings.ts --verbose",
|
|
90
|
+
"sync:embeddings:force": "tsx scripts/generate-embeddings.ts --force --verbose",
|
|
91
|
+
"sync:embeddings:search": "tsx scripts/generate-embeddings.ts --search"
|
|
88
92
|
},
|
|
89
93
|
"keywords": [
|
|
90
94
|
"agentic",
|