agentic-qe 1.8.3 → 1.8.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.
Files changed (91) hide show
  1. package/.claude/skills/cicd-pipeline-qe-orchestrator/README.md +2 -2
  2. package/.claude/skills/cicd-pipeline-qe-orchestrator/SKILL.md +6 -6
  3. package/CHANGELOG.md +220 -0
  4. package/README.md +36 -3
  5. package/config/constitution.schema.json +423 -0
  6. package/config/otel-collector.yaml +234 -0
  7. package/dist/cli/commands/init-claude-md-template.js +3 -3
  8. package/dist/constitution/index.d.ts +105 -0
  9. package/dist/constitution/index.d.ts.map +1 -0
  10. package/dist/constitution/index.js +207 -0
  11. package/dist/constitution/index.js.map +1 -0
  12. package/dist/constitution/loader.d.ts +141 -0
  13. package/dist/constitution/loader.d.ts.map +1 -0
  14. package/dist/constitution/loader.js +515 -0
  15. package/dist/constitution/loader.js.map +1 -0
  16. package/dist/constitution/schema.d.ts +409 -0
  17. package/dist/constitution/schema.d.ts.map +1 -0
  18. package/dist/constitution/schema.js +71 -0
  19. package/dist/constitution/schema.js.map +1 -0
  20. package/dist/core/memory/MemoryManagerFactory.d.ts +77 -0
  21. package/dist/core/memory/MemoryManagerFactory.d.ts.map +1 -0
  22. package/dist/core/memory/MemoryManagerFactory.js +270 -0
  23. package/dist/core/memory/MemoryManagerFactory.js.map +1 -0
  24. package/dist/core/memory/SwarmMemoryManager.d.ts +18 -0
  25. package/dist/core/memory/SwarmMemoryManager.d.ts.map +1 -1
  26. package/dist/core/memory/SwarmMemoryManager.js +96 -11
  27. package/dist/core/memory/SwarmMemoryManager.js.map +1 -1
  28. package/dist/core/memory/index.d.ts +1 -0
  29. package/dist/core/memory/index.d.ts.map +1 -1
  30. package/dist/core/memory/index.js +12 -1
  31. package/dist/core/memory/index.js.map +1 -1
  32. package/dist/mcp/handlers/memory/memory-backup.js +6 -6
  33. package/dist/mcp/handlers/memory/memory-backup.js.map +1 -1
  34. package/dist/mcp/handlers/phase2/Phase2Tools.d.ts.map +1 -1
  35. package/dist/mcp/handlers/phase2/Phase2Tools.js +4 -2
  36. package/dist/mcp/handlers/phase2/Phase2Tools.js.map +1 -1
  37. package/dist/mcp/server.d.ts.map +1 -1
  38. package/dist/mcp/server.js +4 -38
  39. package/dist/mcp/server.js.map +1 -1
  40. package/dist/mcp/services/AgentRegistry.d.ts.map +1 -1
  41. package/dist/mcp/services/AgentRegistry.js +4 -4
  42. package/dist/mcp/services/AgentRegistry.js.map +1 -1
  43. package/dist/persistence/event-store.d.ts +162 -0
  44. package/dist/persistence/event-store.d.ts.map +1 -0
  45. package/dist/persistence/event-store.js +315 -0
  46. package/dist/persistence/event-store.js.map +1 -0
  47. package/dist/persistence/index.d.ts +145 -0
  48. package/dist/persistence/index.d.ts.map +1 -0
  49. package/dist/persistence/index.js +227 -0
  50. package/dist/persistence/index.js.map +1 -0
  51. package/dist/persistence/metrics-aggregator.d.ts +187 -0
  52. package/dist/persistence/metrics-aggregator.d.ts.map +1 -0
  53. package/dist/persistence/metrics-aggregator.js +495 -0
  54. package/dist/persistence/metrics-aggregator.js.map +1 -0
  55. package/dist/persistence/reasoning-store.d.ts +178 -0
  56. package/dist/persistence/reasoning-store.d.ts.map +1 -0
  57. package/dist/persistence/reasoning-store.js +440 -0
  58. package/dist/persistence/reasoning-store.js.map +1 -0
  59. package/dist/persistence/schema.d.ts +181 -0
  60. package/dist/persistence/schema.d.ts.map +1 -0
  61. package/dist/persistence/schema.js +186 -0
  62. package/dist/persistence/schema.js.map +1 -0
  63. package/dist/telemetry/bootstrap.d.ts +67 -0
  64. package/dist/telemetry/bootstrap.d.ts.map +1 -0
  65. package/dist/telemetry/bootstrap.js +320 -0
  66. package/dist/telemetry/bootstrap.js.map +1 -0
  67. package/dist/telemetry/index.d.ts +16 -0
  68. package/dist/telemetry/index.d.ts.map +1 -0
  69. package/dist/telemetry/index.js +84 -0
  70. package/dist/telemetry/index.js.map +1 -0
  71. package/dist/telemetry/metrics/agent-metrics.d.ts +109 -0
  72. package/dist/telemetry/metrics/agent-metrics.d.ts.map +1 -0
  73. package/dist/telemetry/metrics/agent-metrics.js +213 -0
  74. package/dist/telemetry/metrics/agent-metrics.js.map +1 -0
  75. package/dist/telemetry/metrics/index.d.ts +51 -0
  76. package/dist/telemetry/metrics/index.d.ts.map +1 -0
  77. package/dist/telemetry/metrics/index.js +100 -0
  78. package/dist/telemetry/metrics/index.js.map +1 -0
  79. package/dist/telemetry/metrics/quality-metrics.d.ts +171 -0
  80. package/dist/telemetry/metrics/quality-metrics.d.ts.map +1 -0
  81. package/dist/telemetry/metrics/quality-metrics.js +259 -0
  82. package/dist/telemetry/metrics/quality-metrics.js.map +1 -0
  83. package/dist/telemetry/metrics/system-metrics.d.ts +129 -0
  84. package/dist/telemetry/metrics/system-metrics.d.ts.map +1 -0
  85. package/dist/telemetry/metrics/system-metrics.js +380 -0
  86. package/dist/telemetry/metrics/system-metrics.js.map +1 -0
  87. package/dist/telemetry/types.d.ts +195 -0
  88. package/dist/telemetry/types.d.ts.map +1 -0
  89. package/dist/telemetry/types.js +90 -0
  90. package/dist/telemetry/types.js.map +1 -0
  91. package/package.json +18 -2
@@ -0,0 +1,440 @@
1
+ "use strict";
2
+ /**
3
+ * @fileoverview Reasoning chain store for capturing agent reasoning processes
4
+ * @module persistence/reasoning-store
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.ReasoningStore = void 0;
8
+ const uuid_1 = require("uuid");
9
+ const schema_1 = require("./schema");
10
+ /**
11
+ * ReasoningStore captures and persists agent reasoning processes
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * const store = new ReasoningStore({ dbPath: './data/reasoning.db' });
16
+ *
17
+ * // Start a reasoning chain
18
+ * const chain = store.startChain({
19
+ * session_id: 'session-123',
20
+ * agent_id: 'test-generator',
21
+ * context: { task: 'Generate unit tests' }
22
+ * });
23
+ *
24
+ * // Add reasoning steps
25
+ * store.addStep({
26
+ * chain_id: chain.id,
27
+ * thought_type: 'observation',
28
+ * content: 'Analyzing source code structure...',
29
+ * confidence: 0.9,
30
+ * token_count: 150
31
+ * });
32
+ *
33
+ * // Complete the chain
34
+ * store.completeChain(chain.id, 'completed');
35
+ * ```
36
+ */
37
+ class ReasoningStore {
38
+ /**
39
+ * Create a new ReasoningStore instance
40
+ * @param config - Persistence configuration
41
+ */
42
+ constructor(config = {}) {
43
+ this.config = { ...schema_1.DEFAULT_PERSISTENCE_CONFIG, ...config };
44
+ this.db = (0, schema_1.createDatabase)(this.config);
45
+ this.statements = this.prepareStatements();
46
+ }
47
+ /**
48
+ * Prepare SQL statements for performance
49
+ */
50
+ prepareStatements() {
51
+ return {
52
+ insertChain: this.db.prepare(`
53
+ INSERT INTO reasoning_chains (id, session_id, agent_id, created_at, status, context)
54
+ VALUES (?, ?, ?, ?, ?, ?)
55
+ `),
56
+ insertStep: this.db.prepare(`
57
+ INSERT INTO reasoning_steps (id, chain_id, step_order, thought_type, content, confidence, token_count, created_at, metadata)
58
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)
59
+ `),
60
+ updateChainStatus: this.db.prepare(`
61
+ UPDATE reasoning_chains
62
+ SET status = ?, completed_at = ?
63
+ WHERE id = ?
64
+ `),
65
+ getChainById: this.db.prepare(`
66
+ SELECT * FROM reasoning_chains WHERE id = ?
67
+ `),
68
+ getStepsByChain: this.db.prepare(`
69
+ SELECT * FROM reasoning_steps
70
+ WHERE chain_id = ?
71
+ ORDER BY step_order ASC
72
+ `),
73
+ getChainsBySession: this.db.prepare(`
74
+ SELECT * FROM reasoning_chains
75
+ WHERE session_id = ?
76
+ ORDER BY created_at DESC
77
+ LIMIT ? OFFSET ?
78
+ `),
79
+ getChainsByAgent: this.db.prepare(`
80
+ SELECT * FROM reasoning_chains
81
+ WHERE agent_id = ?
82
+ ORDER BY created_at DESC
83
+ LIMIT ? OFFSET ?
84
+ `),
85
+ getStepCount: this.db.prepare(`
86
+ SELECT COUNT(*) as count FROM reasoning_steps WHERE chain_id = ?
87
+ `),
88
+ getMaxStepOrder: this.db.prepare(`
89
+ SELECT COALESCE(MAX(step_order), 0) as max_order
90
+ FROM reasoning_steps
91
+ WHERE chain_id = ?
92
+ `),
93
+ };
94
+ }
95
+ /**
96
+ * Deserialize chain record from database row
97
+ */
98
+ deserializeChain(row) {
99
+ return {
100
+ id: row.id,
101
+ session_id: row.session_id,
102
+ agent_id: row.agent_id,
103
+ created_at: row.created_at,
104
+ completed_at: row.completed_at,
105
+ status: row.status,
106
+ context: JSON.parse(row.context),
107
+ };
108
+ }
109
+ /**
110
+ * Deserialize step record from database row
111
+ */
112
+ deserializeStep(row) {
113
+ return {
114
+ id: row.id,
115
+ chain_id: row.chain_id,
116
+ step_order: row.step_order,
117
+ thought_type: row.thought_type,
118
+ content: row.content,
119
+ confidence: row.confidence,
120
+ token_count: row.token_count,
121
+ created_at: row.created_at,
122
+ metadata: JSON.parse(row.metadata),
123
+ };
124
+ }
125
+ /**
126
+ * Start a new reasoning chain
127
+ * @param input - Chain creation input
128
+ * @returns Created chain record
129
+ */
130
+ startChain(input) {
131
+ const id = (0, uuid_1.v4)();
132
+ const created_at = new Date().toISOString();
133
+ const context = JSON.stringify(input.context || {});
134
+ let retries = this.config.maxRetries || 3;
135
+ while (retries > 0) {
136
+ try {
137
+ this.statements.insertChain.run(id, input.session_id, input.agent_id, created_at, 'in_progress', context);
138
+ break;
139
+ }
140
+ catch (error) {
141
+ retries--;
142
+ if (retries === 0) {
143
+ const errorMessage = error instanceof Error ? error.message : String(error);
144
+ throw new Error(`Failed to start chain after retries: ${errorMessage}`);
145
+ }
146
+ const start = Date.now();
147
+ while (Date.now() - start < 100) {
148
+ // Busy wait for synchronous retry
149
+ }
150
+ }
151
+ }
152
+ return {
153
+ id,
154
+ session_id: input.session_id,
155
+ agent_id: input.agent_id,
156
+ created_at,
157
+ completed_at: null,
158
+ status: 'in_progress',
159
+ context: input.context || {},
160
+ };
161
+ }
162
+ /**
163
+ * Add a reasoning step to a chain
164
+ * @param input - Step creation input
165
+ * @returns Created step record
166
+ */
167
+ addStep(input) {
168
+ const id = (0, uuid_1.v4)();
169
+ const created_at = new Date().toISOString();
170
+ const metadata = JSON.stringify(input.metadata || {});
171
+ // Get next step order
172
+ const maxOrderResult = this.statements.getMaxStepOrder.get(input.chain_id);
173
+ const step_order = maxOrderResult.max_order + 1;
174
+ let retries = this.config.maxRetries || 3;
175
+ while (retries > 0) {
176
+ try {
177
+ this.statements.insertStep.run(id, input.chain_id, step_order, input.thought_type, input.content, input.confidence, input.token_count, created_at, metadata);
178
+ break;
179
+ }
180
+ catch (error) {
181
+ retries--;
182
+ if (retries === 0) {
183
+ const errorMessage = error instanceof Error ? error.message : String(error);
184
+ throw new Error(`Failed to add step after retries: ${errorMessage}`);
185
+ }
186
+ const start = Date.now();
187
+ while (Date.now() - start < 100) {
188
+ // Busy wait for synchronous retry
189
+ }
190
+ }
191
+ }
192
+ return {
193
+ id,
194
+ chain_id: input.chain_id,
195
+ step_order,
196
+ thought_type: input.thought_type,
197
+ content: input.content,
198
+ confidence: input.confidence,
199
+ token_count: input.token_count,
200
+ created_at,
201
+ metadata: input.metadata || {},
202
+ };
203
+ }
204
+ /**
205
+ * Complete a reasoning chain
206
+ * @param chainId - Chain identifier
207
+ * @param status - Final status (completed, failed, abandoned)
208
+ * @returns Updated chain record
209
+ */
210
+ completeChain(chainId, status = 'completed') {
211
+ const completed_at = new Date().toISOString();
212
+ this.statements.updateChainStatus.run(status, completed_at, chainId);
213
+ return this.getChainById(chainId);
214
+ }
215
+ /**
216
+ * Get chain by ID
217
+ * @param chainId - Chain identifier
218
+ * @returns Chain record or null
219
+ */
220
+ getChainById(chainId) {
221
+ const row = this.statements.getChainById.get(chainId);
222
+ return row ? this.deserializeChain(row) : null;
223
+ }
224
+ /**
225
+ * Get chain with all steps
226
+ * @param chainId - Chain identifier
227
+ * @returns Chain with steps or null
228
+ */
229
+ getChainWithSteps(chainId) {
230
+ const chain = this.getChainById(chainId);
231
+ if (!chain)
232
+ return null;
233
+ const stepRows = this.statements.getStepsByChain.all(chainId);
234
+ const steps = stepRows.map(row => this.deserializeStep(row));
235
+ return { ...chain, steps };
236
+ }
237
+ /**
238
+ * Get chains by session ID
239
+ * @param sessionId - Session identifier
240
+ * @param options - Query options
241
+ * @returns Array of chains
242
+ */
243
+ getChainsBySession(sessionId, options = {}) {
244
+ const { limit = 100, offset = 0, includeSteps = false } = options;
245
+ const rows = this.statements.getChainsBySession.all(sessionId, limit, offset);
246
+ const chains = rows.map(row => this.deserializeChain(row));
247
+ if (includeSteps) {
248
+ return chains.map(chain => {
249
+ const stepRows = this.statements.getStepsByChain.all(chain.id);
250
+ const steps = stepRows.map(row => this.deserializeStep(row));
251
+ return { ...chain, steps };
252
+ });
253
+ }
254
+ return chains;
255
+ }
256
+ /**
257
+ * Get chains by agent ID
258
+ * @param agentId - Agent identifier
259
+ * @param options - Query options
260
+ * @returns Array of chains
261
+ */
262
+ getChainsByAgent(agentId, options = {}) {
263
+ const { limit = 100, offset = 0 } = options;
264
+ const rows = this.statements.getChainsByAgent.all(agentId, limit, offset);
265
+ return rows.map(row => this.deserializeChain(row));
266
+ }
267
+ /**
268
+ * Get chains by status
269
+ * @param status - Chain status
270
+ * @param limit - Maximum results
271
+ * @returns Array of chains
272
+ */
273
+ getChainsByStatus(status, limit = 100) {
274
+ const rows = this.db.prepare(`
275
+ SELECT * FROM reasoning_chains
276
+ WHERE status = ?
277
+ ORDER BY created_at DESC
278
+ LIMIT ?
279
+ `).all(status, limit);
280
+ return rows.map(row => this.deserializeChain(row));
281
+ }
282
+ /**
283
+ * Get step count for a chain
284
+ * @param chainId - Chain identifier
285
+ * @returns Number of steps
286
+ */
287
+ getStepCount(chainId) {
288
+ const result = this.statements.getStepCount.get(chainId);
289
+ return result.count;
290
+ }
291
+ /**
292
+ * Get total token count for a chain
293
+ * @param chainId - Chain identifier
294
+ * @returns Total tokens used
295
+ */
296
+ getTotalTokens(chainId) {
297
+ const result = this.db.prepare(`
298
+ SELECT COALESCE(SUM(token_count), 0) as total
299
+ FROM reasoning_steps
300
+ WHERE chain_id = ?
301
+ `).get(chainId);
302
+ return result.total;
303
+ }
304
+ /**
305
+ * Get average confidence for a chain
306
+ * @param chainId - Chain identifier
307
+ * @returns Average confidence score
308
+ */
309
+ getAverageConfidence(chainId) {
310
+ const result = this.db.prepare(`
311
+ SELECT COALESCE(AVG(confidence), 0) as avg_confidence
312
+ FROM reasoning_steps
313
+ WHERE chain_id = ?
314
+ `).get(chainId);
315
+ return result.avg_confidence;
316
+ }
317
+ /**
318
+ * Get steps by thought type
319
+ * @param thoughtType - Type of thought
320
+ * @param limit - Maximum results
321
+ * @returns Array of steps
322
+ */
323
+ getStepsByType(thoughtType, limit = 100) {
324
+ const rows = this.db.prepare(`
325
+ SELECT * FROM reasoning_steps
326
+ WHERE thought_type = ?
327
+ ORDER BY created_at DESC
328
+ LIMIT ?
329
+ `).all(thoughtType, limit);
330
+ return rows.map(row => this.deserializeStep(row));
331
+ }
332
+ /**
333
+ * Search chains by context
334
+ * @param key - Context key to search
335
+ * @param value - Value to match
336
+ * @param limit - Maximum results
337
+ * @returns Matching chains
338
+ */
339
+ searchByContext(key, value, limit = 100) {
340
+ const pattern = `%"${key}":${JSON.stringify(value)}%`;
341
+ const rows = this.db.prepare(`
342
+ SELECT * FROM reasoning_chains
343
+ WHERE context LIKE ?
344
+ ORDER BY created_at DESC
345
+ LIMIT ?
346
+ `).all(pattern, limit);
347
+ return rows.map(row => this.deserializeChain(row));
348
+ }
349
+ /**
350
+ * Get reasoning chain statistics
351
+ * @returns Statistics about stored chains
352
+ */
353
+ getStatistics() {
354
+ const chainStats = this.db.prepare(`
355
+ SELECT
356
+ COUNT(*) as totalChains,
357
+ SUM(CASE WHEN status = 'completed' THEN 1 ELSE 0 END) as completedChains,
358
+ SUM(CASE WHEN status = 'failed' THEN 1 ELSE 0 END) as failedChains
359
+ FROM reasoning_chains
360
+ `).get();
361
+ const stepStats = this.db.prepare(`
362
+ SELECT
363
+ COUNT(*) as totalSteps,
364
+ AVG(token_count) as avgTokens,
365
+ AVG(confidence) as avgConfidence
366
+ FROM reasoning_steps
367
+ `).get();
368
+ return {
369
+ totalChains: chainStats.totalChains,
370
+ totalSteps: stepStats.totalSteps,
371
+ completedChains: chainStats.completedChains,
372
+ failedChains: chainStats.failedChains,
373
+ avgStepsPerChain: chainStats.totalChains > 0
374
+ ? stepStats.totalSteps / chainStats.totalChains
375
+ : 0,
376
+ avgTokensPerChain: chainStats.totalChains > 0
377
+ ? (stepStats.avgTokens * stepStats.totalSteps) / chainStats.totalChains
378
+ : 0,
379
+ avgConfidence: stepStats.avgConfidence || 0,
380
+ };
381
+ }
382
+ /**
383
+ * Delete completed chains older than specified date
384
+ * @param olderThan - ISO timestamp cutoff
385
+ * @returns Number of deleted chains
386
+ */
387
+ deleteOldChains(olderThan) {
388
+ // Delete steps first due to foreign key
389
+ this.db.prepare(`
390
+ DELETE FROM reasoning_steps
391
+ WHERE chain_id IN (
392
+ SELECT id FROM reasoning_chains
393
+ WHERE created_at < ? AND status IN ('completed', 'failed', 'abandoned')
394
+ )
395
+ `).run(olderThan);
396
+ const result = this.db.prepare(`
397
+ DELETE FROM reasoning_chains
398
+ WHERE created_at < ? AND status IN ('completed', 'failed', 'abandoned')
399
+ `).run(olderThan);
400
+ return result.changes;
401
+ }
402
+ /**
403
+ * Export chain as JSON for analysis
404
+ * @param chainId - Chain identifier
405
+ * @returns JSON-serializable chain data
406
+ */
407
+ exportChain(chainId) {
408
+ const chain = this.getChainWithSteps(chainId);
409
+ if (!chain)
410
+ return null;
411
+ return {
412
+ id: chain.id,
413
+ session_id: chain.session_id,
414
+ agent_id: chain.agent_id,
415
+ created_at: chain.created_at,
416
+ completed_at: chain.completed_at,
417
+ status: chain.status,
418
+ context: chain.context,
419
+ total_tokens: this.getTotalTokens(chainId),
420
+ avg_confidence: this.getAverageConfidence(chainId),
421
+ steps: chain.steps.map(step => ({
422
+ order: step.step_order,
423
+ type: step.thought_type,
424
+ content: step.content,
425
+ confidence: step.confidence,
426
+ tokens: step.token_count,
427
+ timestamp: step.created_at,
428
+ metadata: step.metadata,
429
+ })),
430
+ };
431
+ }
432
+ /**
433
+ * Close database connection
434
+ */
435
+ close() {
436
+ (0, schema_1.closeDatabase)(this.db);
437
+ }
438
+ }
439
+ exports.ReasoningStore = ReasoningStore;
440
+ //# sourceMappingURL=reasoning-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reasoning-store.js","sourceRoot":"","sources":["../../src/persistence/reasoning-store.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAGH,+BAAoC;AACpC,qCAYkB;AAYlB;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAa,cAAc;IAezB;;;OAGG;IACH,YAAY,SAAqC,EAAE;QACjD,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,mCAA0B,EAAE,GAAG,MAAM,EAAE,CAAC;QAC3D,IAAI,CAAC,EAAE,GAAG,IAAA,uBAAc,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC7C,CAAC;IAED;;OAEG;IACK,iBAAiB;QACvB,OAAO;YACL,WAAW,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;OAG5B,CAAC;YAEF,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;OAG3B,CAAC;YAEF,iBAAiB,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;OAIlC,CAAC;YAEF,YAAY,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;OAE7B,CAAC;YAEF,eAAe,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;OAIhC,CAAC;YAEF,kBAAkB,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;OAKnC,CAAC;YAEF,gBAAgB,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;OAKjC,CAAC;YAEF,YAAY,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;OAE7B,CAAC;YAEF,eAAe,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;OAIhC,CAAC;SACH,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAC,GAA4B;QACnD,OAAO;YACL,EAAE,EAAE,GAAG,CAAC,EAAY;YACpB,UAAU,EAAE,GAAG,CAAC,UAAoB;YACpC,QAAQ,EAAE,GAAG,CAAC,QAAkB;YAChC,UAAU,EAAE,GAAG,CAAC,UAAoB;YACpC,YAAY,EAAE,GAAG,CAAC,YAA6B;YAC/C,MAAM,EAAE,GAAG,CAAC,MAAqB;YACjC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAiB,CAAC;SAC3C,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,GAA4B;QAClD,OAAO;YACL,EAAE,EAAE,GAAG,CAAC,EAAY;YACpB,QAAQ,EAAE,GAAG,CAAC,QAAkB;YAChC,UAAU,EAAE,GAAG,CAAC,UAAoB;YACpC,YAAY,EAAE,GAAG,CAAC,YAA2B;YAC7C,OAAO,EAAE,GAAG,CAAC,OAAiB;YAC9B,UAAU,EAAE,GAAG,CAAC,UAAoB;YACpC,WAAW,EAAE,GAAG,CAAC,WAAqB;YACtC,UAAU,EAAE,GAAG,CAAC,UAAoB;YACpC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAkB,CAAC;SAC7C,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,UAAU,CAAC,KAAsB;QAC/B,MAAM,EAAE,GAAG,IAAA,SAAM,GAAE,CAAC;QACpB,MAAM,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QAEpD,IAAI,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC,CAAC;QAC1C,OAAO,OAAO,GAAG,CAAC,EAAE,CAAC;YACnB,IAAI,CAAC;gBACH,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAC7B,EAAE,EACF,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,QAAQ,EACd,UAAU,EACV,aAAa,EACb,OAAO,CACR,CAAC;gBACF,MAAM;YACR,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,OAAO,EAAE,CAAC;gBACV,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;oBAClB,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAC5E,MAAM,IAAI,KAAK,CAAC,wCAAwC,YAAY,EAAE,CAAC,CAAC;gBAC1E,CAAC;gBACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBACzB,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,GAAG,EAAE,CAAC;oBAChC,kCAAkC;gBACpC,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO;YACL,EAAE;YACF,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,UAAU;YACV,YAAY,EAAE,IAAI;YAClB,MAAM,EAAE,aAAa;YACrB,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,EAAE;SAC7B,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,OAAO,CAAC,KAAmB;QACzB,MAAM,EAAE,GAAG,IAAA,SAAM,GAAE,CAAC;QACpB,MAAM,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;QAEtD,sBAAsB;QACtB,MAAM,cAAc,GAAG,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAA0B,CAAC;QACpG,MAAM,UAAU,GAAG,cAAc,CAAC,SAAS,GAAG,CAAC,CAAC;QAEhD,IAAI,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC,CAAC;QAC1C,OAAO,OAAO,GAAG,CAAC,EAAE,CAAC;YACnB,IAAI,CAAC;gBACH,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAC5B,EAAE,EACF,KAAK,CAAC,QAAQ,EACd,UAAU,EACV,KAAK,CAAC,YAAY,EAClB,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,UAAU,EAChB,KAAK,CAAC,WAAW,EACjB,UAAU,EACV,QAAQ,CACT,CAAC;gBACF,MAAM;YACR,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,OAAO,EAAE,CAAC;gBACV,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;oBAClB,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAC5E,MAAM,IAAI,KAAK,CAAC,qCAAqC,YAAY,EAAE,CAAC,CAAC;gBACvE,CAAC;gBACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBACzB,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,GAAG,GAAG,EAAE,CAAC;oBAChC,kCAAkC;gBACpC,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO;YACL,EAAE;YACF,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,UAAU;YACV,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,UAAU;YACV,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,EAAE;SAC/B,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,aAAa,CAAC,OAAe,EAAE,SAAsB,WAAW;QAC9D,MAAM,YAAY,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAE9C,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;QAErE,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAED;;;;OAIG;IACH,YAAY,CAAC,OAAe;QAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAwC,CAAC;QAC7F,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACjD,CAAC;IAED;;;;OAIG;IACH,iBAAiB,CAAC,OAAe;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;QACzC,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QAExB,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAA8B,CAAC;QAC3F,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;QAE7D,OAAO,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC;IAC7B,CAAC;IAED;;;;;OAKG;IACH,kBAAkB,CAAC,SAAiB,EAAE,UAA6B,EAAE;QACnE,MAAM,EAAE,KAAK,GAAG,GAAG,EAAE,MAAM,GAAG,CAAC,EAAE,YAAY,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;QAElE,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,MAAM,CAA8B,CAAC;QAC3G,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC;QAE3D,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAA8B,CAAC;gBAC5F,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC7D,OAAO,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC;YAC7B,CAAC,CAAC,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACH,gBAAgB,CAAC,OAAe,EAAE,UAA6B,EAAE;QAC/D,MAAM,EAAE,KAAK,GAAG,GAAG,EAAE,MAAM,GAAG,CAAC,EAAE,GAAG,OAAO,CAAC;QAE5C,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAA8B,CAAC;QACvG,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC;IACrD,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CAAC,MAAmB,EAAE,QAAgB,GAAG;QACxD,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;KAK5B,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAA8B,CAAC;QAEnD,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC;IACrD,CAAC;IAED;;;;OAIG;IACH,YAAY,CAAC,OAAe;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAsB,CAAC;QAC9E,OAAO,MAAM,CAAC,KAAK,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,cAAc,CAAC,OAAe;QAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;KAI9B,CAAC,CAAC,GAAG,CAAC,OAAO,CAAsB,CAAC;QAErC,OAAO,MAAM,CAAC,KAAK,CAAC;IACtB,CAAC;IAED;;;;OAIG;IACH,oBAAoB,CAAC,OAAe;QAClC,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;KAI9B,CAAC,CAAC,GAAG,CAAC,OAAO,CAA+B,CAAC;QAE9C,OAAO,MAAM,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED;;;;;OAKG;IACH,cAAc,CAAC,WAAwB,EAAE,QAAgB,GAAG;QAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;KAK5B,CAAC,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAA8B,CAAC;QAExD,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;IACpD,CAAC;IAED;;;;;;OAMG;IACH,eAAe,CAAC,GAAW,EAAE,KAAa,EAAE,QAAgB,GAAG;QAC7D,MAAM,OAAO,GAAG,KAAK,GAAG,KAAK,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC;QACtD,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;KAK5B,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAA8B,CAAC;QAEpD,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC;IACrD,CAAC;IAED;;;OAGG;IACH,aAAa;QASX,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;;KAMlC,CAAC,CAAC,GAAG,EAA4E,CAAC;QAEnF,MAAM,SAAS,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;;KAMjC,CAAC,CAAC,GAAG,EAAsE,CAAC;QAE7E,OAAO;YACL,WAAW,EAAE,UAAU,CAAC,WAAW;YACnC,UAAU,EAAE,SAAS,CAAC,UAAU;YAChC,eAAe,EAAE,UAAU,CAAC,eAAe;YAC3C,YAAY,EAAE,UAAU,CAAC,YAAY;YACrC,gBAAgB,EAAE,UAAU,CAAC,WAAW,GAAG,CAAC;gBAC1C,CAAC,CAAC,SAAS,CAAC,UAAU,GAAG,UAAU,CAAC,WAAW;gBAC/C,CAAC,CAAC,CAAC;YACL,iBAAiB,EAAE,UAAU,CAAC,WAAW,GAAG,CAAC;gBAC3C,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC,WAAW;gBACvE,CAAC,CAAC,CAAC;YACL,aAAa,EAAE,SAAS,CAAC,aAAa,IAAI,CAAC;SAC5C,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,eAAe,CAAC,SAAiB;QAC/B,wCAAwC;QACxC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;;KAMf,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAElB,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;KAG9B,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAElB,OAAO,MAAM,CAAC,OAAO,CAAC;IACxB,CAAC;IAED;;;;OAIG;IACH,WAAW,CAAC,OAAe;QACzB,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QAExB,OAAO;YACL,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;YAC1C,cAAc,EAAE,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC;YAClD,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC9B,KAAK,EAAE,IAAI,CAAC,UAAU;gBACtB,IAAI,EAAE,IAAI,CAAC,YAAY;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,MAAM,EAAE,IAAI,CAAC,WAAW;gBACxB,SAAS,EAAE,IAAI,CAAC,UAAU;gBAC1B,QAAQ,EAAE,IAAI,CAAC,QAAQ;aACxB,CAAC,CAAC;SACJ,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAA,sBAAa,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC;CACF;AAveD,wCAueC"}
@@ -0,0 +1,181 @@
1
+ /**
2
+ * @fileoverview Database schema types and migration logic for AQE persistence layer
3
+ * @module persistence/schema
4
+ */
5
+ import Database from 'better-sqlite3';
6
+ /**
7
+ * Event types for telemetry tracking
8
+ */
9
+ export type EventType = 'agent_started' | 'agent_completed' | 'agent_error' | 'test_generated' | 'test_executed' | 'coverage_analyzed' | 'quality_gate_passed' | 'quality_gate_failed' | 'pattern_matched' | 'learning_completed' | 'custom';
10
+ /**
11
+ * Event record for telemetry tracking
12
+ */
13
+ export interface EventRecord {
14
+ id: string;
15
+ timestamp: string;
16
+ agent_id: string;
17
+ event_type: EventType;
18
+ payload: Record<string, unknown>;
19
+ correlation_id: string | null;
20
+ session_id: string;
21
+ }
22
+ /**
23
+ * Input for creating a new event
24
+ */
25
+ export interface CreateEventInput {
26
+ agent_id: string;
27
+ event_type: EventType;
28
+ payload: Record<string, unknown>;
29
+ correlation_id?: string;
30
+ session_id: string;
31
+ }
32
+ /**
33
+ * Types of reasoning steps
34
+ */
35
+ export type ThoughtType = 'observation' | 'hypothesis' | 'decision' | 'validation' | 'conclusion' | 'action';
36
+ /**
37
+ * Status of a reasoning chain
38
+ */
39
+ export type ChainStatus = 'in_progress' | 'completed' | 'failed' | 'abandoned';
40
+ /**
41
+ * Reasoning chain record
42
+ */
43
+ export interface ReasoningChain {
44
+ id: string;
45
+ session_id: string;
46
+ agent_id: string;
47
+ created_at: string;
48
+ completed_at: string | null;
49
+ status: ChainStatus;
50
+ context: Record<string, unknown>;
51
+ }
52
+ /**
53
+ * Reasoning step within a chain
54
+ */
55
+ export interface ReasoningStep {
56
+ id: string;
57
+ chain_id: string;
58
+ step_order: number;
59
+ thought_type: ThoughtType;
60
+ content: string;
61
+ confidence: number;
62
+ token_count: number;
63
+ created_at: string;
64
+ metadata: Record<string, unknown>;
65
+ }
66
+ /**
67
+ * Input for starting a new reasoning chain
68
+ */
69
+ export interface StartChainInput {
70
+ session_id: string;
71
+ agent_id: string;
72
+ context?: Record<string, unknown>;
73
+ }
74
+ /**
75
+ * Input for adding a reasoning step
76
+ */
77
+ export interface AddStepInput {
78
+ chain_id: string;
79
+ thought_type: ThoughtType;
80
+ content: string;
81
+ confidence: number;
82
+ token_count: number;
83
+ metadata?: Record<string, unknown>;
84
+ }
85
+ /**
86
+ * Complete chain with all steps
87
+ */
88
+ export interface ReasoningChainWithSteps extends ReasoningChain {
89
+ steps: ReasoningStep[];
90
+ }
91
+ /**
92
+ * Aggregation window periods
93
+ */
94
+ export type AggregationPeriod = '1min' | '5min' | '1hour' | '1day';
95
+ /**
96
+ * Individual quality metric record
97
+ */
98
+ export interface QualityMetric {
99
+ id: string;
100
+ timestamp: string;
101
+ agent_id: string;
102
+ metric_name: string;
103
+ metric_value: number;
104
+ dimensions: Record<string, string>;
105
+ }
106
+ /**
107
+ * Aggregated metrics for a time period
108
+ */
109
+ export interface AggregatedMetric {
110
+ id: string;
111
+ period_start: string;
112
+ period_end: string;
113
+ agent_id: string;
114
+ metric_name: string;
115
+ count: number;
116
+ sum: number;
117
+ min: number;
118
+ max: number;
119
+ avg: number;
120
+ }
121
+ /**
122
+ * Input for recording a metric
123
+ */
124
+ export interface RecordMetricInput {
125
+ agent_id: string;
126
+ metric_name: string;
127
+ metric_value: number;
128
+ dimensions?: Record<string, string>;
129
+ }
130
+ /**
131
+ * Metric trend data point
132
+ */
133
+ export interface MetricTrendPoint {
134
+ timestamp: string;
135
+ value: number;
136
+ count: number;
137
+ }
138
+ /**
139
+ * Agent performance summary
140
+ */
141
+ export interface AgentPerformance {
142
+ agent_id: string;
143
+ total_events: number;
144
+ avg_duration_ms: number;
145
+ success_rate: number;
146
+ metrics: Record<string, number>;
147
+ }
148
+ /**
149
+ * Configuration for persistence layer
150
+ */
151
+ export interface PersistenceConfig {
152
+ dbPath: string;
153
+ enableWAL?: boolean;
154
+ busyTimeout?: number;
155
+ maxRetries?: number;
156
+ }
157
+ /**
158
+ * Default persistence configuration
159
+ */
160
+ export declare const DEFAULT_PERSISTENCE_CONFIG: PersistenceConfig;
161
+ /**
162
+ * Current schema version
163
+ */
164
+ export declare const CURRENT_SCHEMA_VERSION = 1;
165
+ /**
166
+ * Initialize database schema
167
+ * @param db - Database instance
168
+ */
169
+ export declare function initializeSchema(db: Database.Database): void;
170
+ /**
171
+ * Create database connection with configuration
172
+ * @param config - Persistence configuration
173
+ * @returns Configured database instance
174
+ */
175
+ export declare function createDatabase(config?: Partial<PersistenceConfig>): Database.Database;
176
+ /**
177
+ * Close database connection safely
178
+ * @param db - Database instance to close
179
+ */
180
+ export declare function closeDatabase(db: Database.Database): void;
181
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/persistence/schema.ts"],"names":[],"mappings":"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"}