agentic-qe 1.3.6 → 1.4.0

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 (133) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/README.md +42 -5
  3. package/dist/agents/ApiContractValidatorAgent.d.ts +11 -0
  4. package/dist/agents/ApiContractValidatorAgent.d.ts.map +1 -1
  5. package/dist/agents/ApiContractValidatorAgent.js +59 -0
  6. package/dist/agents/ApiContractValidatorAgent.js.map +1 -1
  7. package/dist/agents/BaseAgent.js +1 -1
  8. package/dist/agents/BaseAgent.js.map +1 -1
  9. package/dist/agents/DeploymentReadinessAgent.d.ts +11 -0
  10. package/dist/agents/DeploymentReadinessAgent.d.ts.map +1 -1
  11. package/dist/agents/DeploymentReadinessAgent.js +61 -0
  12. package/dist/agents/DeploymentReadinessAgent.js.map +1 -1
  13. package/dist/agents/FlakyTestHunterAgent.d.ts +20 -0
  14. package/dist/agents/FlakyTestHunterAgent.d.ts.map +1 -1
  15. package/dist/agents/FlakyTestHunterAgent.js +81 -7
  16. package/dist/agents/FlakyTestHunterAgent.js.map +1 -1
  17. package/dist/agents/FleetCommanderAgent.d.ts +20 -0
  18. package/dist/agents/FleetCommanderAgent.d.ts.map +1 -1
  19. package/dist/agents/FleetCommanderAgent.js +77 -0
  20. package/dist/agents/FleetCommanderAgent.js.map +1 -1
  21. package/dist/agents/PerformanceTesterAgent.d.ts +20 -0
  22. package/dist/agents/PerformanceTesterAgent.d.ts.map +1 -1
  23. package/dist/agents/PerformanceTesterAgent.js +77 -0
  24. package/dist/agents/PerformanceTesterAgent.js.map +1 -1
  25. package/dist/agents/ProductionIntelligenceAgent.d.ts +20 -0
  26. package/dist/agents/ProductionIntelligenceAgent.d.ts.map +1 -1
  27. package/dist/agents/ProductionIntelligenceAgent.js +64 -0
  28. package/dist/agents/ProductionIntelligenceAgent.js.map +1 -1
  29. package/dist/agents/RegressionRiskAnalyzerAgent.d.ts +20 -0
  30. package/dist/agents/RegressionRiskAnalyzerAgent.d.ts.map +1 -1
  31. package/dist/agents/RegressionRiskAnalyzerAgent.js +64 -0
  32. package/dist/agents/RegressionRiskAnalyzerAgent.js.map +1 -1
  33. package/dist/agents/RequirementsValidatorAgent.d.ts +11 -0
  34. package/dist/agents/RequirementsValidatorAgent.d.ts.map +1 -1
  35. package/dist/agents/RequirementsValidatorAgent.js +60 -0
  36. package/dist/agents/RequirementsValidatorAgent.js.map +1 -1
  37. package/dist/agents/SecurityScannerAgent.d.ts +20 -0
  38. package/dist/agents/SecurityScannerAgent.d.ts.map +1 -1
  39. package/dist/agents/SecurityScannerAgent.js +63 -0
  40. package/dist/agents/SecurityScannerAgent.js.map +1 -1
  41. package/dist/agents/TestDataArchitectAgent.d.ts +20 -0
  42. package/dist/agents/TestDataArchitectAgent.d.ts.map +1 -1
  43. package/dist/agents/TestDataArchitectAgent.js +62 -0
  44. package/dist/agents/TestDataArchitectAgent.js.map +1 -1
  45. package/dist/agents/TestExecutorAgent.d.ts +20 -0
  46. package/dist/agents/TestExecutorAgent.d.ts.map +1 -1
  47. package/dist/agents/TestExecutorAgent.js +88 -13
  48. package/dist/agents/TestExecutorAgent.js.map +1 -1
  49. package/dist/agents/TestGeneratorAgent.d.ts +1 -0
  50. package/dist/agents/TestGeneratorAgent.d.ts.map +1 -1
  51. package/dist/agents/TestGeneratorAgent.js +53 -2
  52. package/dist/agents/TestGeneratorAgent.js.map +1 -1
  53. package/dist/cli/commands/agentdb/learn.d.ts +22 -0
  54. package/dist/cli/commands/agentdb/learn.d.ts.map +1 -0
  55. package/dist/cli/commands/agentdb/learn.js +343 -0
  56. package/dist/cli/commands/agentdb/learn.js.map +1 -0
  57. package/dist/cli/commands/init.d.ts.map +1 -1
  58. package/dist/cli/commands/init.js +33 -11
  59. package/dist/cli/commands/init.js.map +1 -1
  60. package/dist/cli/commands/patterns/extract.d.ts +12 -0
  61. package/dist/cli/commands/patterns/extract.d.ts.map +1 -0
  62. package/dist/cli/commands/patterns/extract.js +304 -0
  63. package/dist/cli/commands/patterns/extract.js.map +1 -0
  64. package/dist/cli/commands/patterns/index-new.d.ts +12 -0
  65. package/dist/cli/commands/patterns/index-new.d.ts.map +1 -0
  66. package/dist/cli/commands/patterns/index-new.js +102 -0
  67. package/dist/cli/commands/patterns/index-new.js.map +1 -0
  68. package/dist/cli/commands/patterns/list.d.ts +14 -0
  69. package/dist/cli/commands/patterns/list.d.ts.map +1 -0
  70. package/dist/cli/commands/patterns/list.js +133 -0
  71. package/dist/cli/commands/patterns/list.js.map +1 -0
  72. package/dist/cli/commands/patterns/search.d.ts +13 -0
  73. package/dist/cli/commands/patterns/search.d.ts.map +1 -0
  74. package/dist/cli/commands/patterns/search.js +125 -0
  75. package/dist/cli/commands/patterns/search.js.map +1 -0
  76. package/dist/cli/commands/patterns/show.d.ts +7 -0
  77. package/dist/cli/commands/patterns/show.d.ts.map +1 -0
  78. package/dist/cli/commands/patterns/show.js +164 -0
  79. package/dist/cli/commands/patterns/show.js.map +1 -0
  80. package/dist/cli/commands/patterns/stats.d.ts +11 -0
  81. package/dist/cli/commands/patterns/stats.d.ts.map +1 -0
  82. package/dist/cli/commands/patterns/stats.js +241 -0
  83. package/dist/cli/commands/patterns/stats.js.map +1 -0
  84. package/dist/cli/index.js +1 -0
  85. package/dist/cli/index.js.map +1 -1
  86. package/dist/core/PatternDatabaseAdapter.d.ts +169 -0
  87. package/dist/core/PatternDatabaseAdapter.d.ts.map +1 -0
  88. package/dist/core/PatternDatabaseAdapter.js +493 -0
  89. package/dist/core/PatternDatabaseAdapter.js.map +1 -0
  90. package/dist/learning/AgentDBLearningIntegration.d.ts +147 -0
  91. package/dist/learning/AgentDBLearningIntegration.d.ts.map +1 -0
  92. package/dist/learning/AgentDBLearningIntegration.js +380 -0
  93. package/dist/learning/AgentDBLearningIntegration.js.map +1 -0
  94. package/dist/learning/AgentDBPatternOptimizer.d.ts +129 -0
  95. package/dist/learning/AgentDBPatternOptimizer.d.ts.map +1 -0
  96. package/dist/learning/AgentDBPatternOptimizer.js +332 -0
  97. package/dist/learning/AgentDBPatternOptimizer.js.map +1 -0
  98. package/dist/learning/LearningEngine.d.ts +15 -1
  99. package/dist/learning/LearningEngine.d.ts.map +1 -1
  100. package/dist/learning/LearningEngine.js +128 -1
  101. package/dist/learning/LearningEngine.js.map +1 -1
  102. package/dist/learning/RewardCalculator.d.ts +100 -0
  103. package/dist/learning/RewardCalculator.d.ts.map +1 -0
  104. package/dist/learning/RewardCalculator.js +176 -0
  105. package/dist/learning/RewardCalculator.js.map +1 -0
  106. package/dist/learning/StateExtractor.d.ts +62 -0
  107. package/dist/learning/StateExtractor.d.ts.map +1 -0
  108. package/dist/learning/StateExtractor.js +217 -0
  109. package/dist/learning/StateExtractor.js.map +1 -0
  110. package/dist/migrations/001_add_learning_tables.d.ts +63 -0
  111. package/dist/migrations/001_add_learning_tables.d.ts.map +1 -0
  112. package/dist/migrations/001_add_learning_tables.js +287 -0
  113. package/dist/migrations/001_add_learning_tables.js.map +1 -0
  114. package/dist/reasoning/PatternExtractor.d.ts +25 -0
  115. package/dist/reasoning/PatternExtractor.d.ts.map +1 -1
  116. package/dist/reasoning/PatternExtractor.js +130 -0
  117. package/dist/reasoning/PatternExtractor.js.map +1 -1
  118. package/dist/reasoning/QEReasoningBank.d.ts +18 -2
  119. package/dist/reasoning/QEReasoningBank.d.ts.map +1 -1
  120. package/dist/reasoning/QEReasoningBank.js +75 -3
  121. package/dist/reasoning/QEReasoningBank.js.map +1 -1
  122. package/dist/types/index.d.ts +1 -0
  123. package/dist/types/index.d.ts.map +1 -1
  124. package/dist/types/index.js.map +1 -1
  125. package/dist/utils/Database.d.ts +107 -0
  126. package/dist/utils/Database.d.ts.map +1 -1
  127. package/dist/utils/Database.js +337 -1
  128. package/dist/utils/Database.js.map +1 -1
  129. package/dist/utils/__mocks__/Database.d.ts +18 -17
  130. package/dist/utils/__mocks__/Database.d.ts.map +1 -1
  131. package/dist/utils/__mocks__/Database.js +22 -55
  132. package/dist/utils/__mocks__/Database.js.map +1 -1
  133. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;AAcH,IAAY,WAUX;AAVD,WAAY,WAAW;IACrB,4CAA6B,CAAA;IAC7B,4BAAa,CAAA;IACb,gCAAiB,CAAA;IACjB,4BAAa,CAAA;IACb,8BAAe,CAAA;IACf,oCAAqB,CAAA;IACrB,kCAAmB,CAAA;IACnB,0CAA2B,CAAA;IAC3B,wCAAyB,CAAA;AAC3B,CAAC,EAVW,WAAW,2BAAX,WAAW,QAUtB;AAmFD,IAAY,WAsBX;AAtBD,WAAY,WAAW;IACrB,gDAAiC,CAAA;IACjC,8CAA+B,CAAA;IAC/B,sDAAuC,CAAA;IACvC,oDAAqC,CAAA;IACrC,wDAAyC,CAAA;IACzC,oDAAqC,CAAA;IACrC,4CAA6B,CAAA;IAC7B,gDAAiC,CAAA;IACjC,8CAA+B,CAAA;IAC/B,kDAAmC,CAAA;IAEnC,mCAAmC;IACnC,gEAAiD,CAAA;IACjD,kEAAmD,CAAA;IAEnD,4DAA4D;IAC5D,4DAA6C,CAAA;IAC7C,oEAAqD,CAAA;IACrD,0DAA2C,CAAA;IAC3C,gEAAiD,CAAA;IACjD,sDAAuC,CAAA;AACzC,CAAC,EAtBW,WAAW,2BAAX,WAAW,QAsBtB;AAKD,IAAY,SAqBX;AArBD,WAAY,SAAS;IACnB,4CAA+B,CAAA;IAC/B,kDAAqC,CAAA;IACrC,oDAAuC,CAAA;IACvC,wCAA2B,CAAA;IAC3B,sCAAyB,CAAA;IACzB,sCAAyB,CAAA;IACzB,8CAAiC,CAAA;IACjC,4CAA+B,CAAA;IAC/B,8DAAiD,CAAA;IACjD,kEAAqD,CAAA;IACrD,0CAA6B,CAAA;IAC7B,sDAAyC,CAAA;IACzC,8CAAiC,CAAA;IACjC,8CAAiC,CAAA;IACjC,0CAA6B,CAAA;IAC7B,8CAAiC,CAAA;IACjC,wCAA2B,CAAA;IAC3B,4CAA+B,CAAA;IAC/B,4CAA+B,CAAA;IAC/B,wDAA2C,CAAA;AAC7C,CAAC,EArBW,SAAS,yBAAT,SAAS,QAqBpB;AAqGD,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,kCAAmB,CAAA;IACnB,oCAAqB,CAAA;IACrB,4CAA6B,CAAA;IAC7B,kCAAmB,CAAA;AACrB,CAAC,EALW,WAAW,2BAAX,WAAW,QAKtB;AAsBD,IAAY,QAMX;AAND,WAAY,QAAQ;IAClB,yBAAa,CAAA;IACb,uCAA2B,CAAA;IAC3B,uBAAW,CAAA;IACX,uCAA2B,CAAA;IAC3B,iCAAqB,CAAA;AACvB,CAAC,EANW,QAAQ,wBAAR,QAAQ,QAMnB;AAwTD,sDAAsD;AACzC,QAAA,qBAAqB,GAAG;IACnC,YAAY,EAAE,kBAAkB;IAChC,UAAU,EAAE,gBAAgB;IAC5B,KAAK,EAAE,WAAW;IAClB,UAAU,EAAE,gBAAgB;IAC5B,WAAW,EAAE,iBAAiB;IAC9B,QAAQ,EAAE,cAAc;IACxB,2CAA2C;IAC3C,UAAU,EAAE,gBAAgB;IAC5B,SAAS,EAAE,eAAe;IAC1B,YAAY,EAAE,kBAAkB;IAChC,WAAW,EAAE,iBAAiB;CACtB,CAAC;AAEX,gCAAgC;AACnB,QAAA,iBAAiB,GAAG;IAC/B,sBAAsB,EAAE,wBAAwB;IAChD,sBAAsB,EAAE,wBAAwB;IAChD,0BAA0B,EAAE,4BAA4B;IACxD,mBAAmB,EAAE,qBAAqB;IAC1C,2BAA2B,EAAE,6BAA6B;IAC1D,yBAAyB,EAAE,2BAA2B;IACtD,YAAY,EAAE,cAAc;IAC5B,aAAa,EAAE,eAAe;IAC9B,sBAAsB,EAAE,wBAAwB;CACxC,CAAC;AAEX,gCAAgC;AACnB,QAAA,iBAAiB,GAAG;IAC/B,gBAAgB,EAAE,kBAAkB;IACpC,kBAAkB,EAAE,oBAAoB;IACxC,oBAAoB,EAAE,sBAAsB;IAC5C,6BAA6B,EAAE,+BAA+B;IAC9D,wBAAwB,EAAE,0BAA0B;IACpD,0BAA0B,EAAE,4BAA4B;IACxD,sBAAsB,EAAE,iCAAiC;IACzD,8BAA8B,EAAE,gCAAgC;IAChE,qBAAqB,EAAE,uBAAuB;IAC9C,sBAAsB,EAAE,yBAAyB;IACjD,uBAAuB,EAAE,yBAAyB;IAClD,+BAA+B,EAAE,iCAAiC;CAC1D,CAAC;AAEX,iDAAiD;AACpC,QAAA,iBAAiB,GAAG;IAC/B,oBAAoB,EAAE,sBAAsB;IAC5C,wBAAwB,EAAE,0BAA0B;IACpD,mBAAmB,EAAE,qBAAqB;IAC1C,sBAAsB,EAAE,wBAAwB;IAChD,wBAAwB,EAAE,8BAA8B;IACxD,mBAAmB,EAAE,qBAAqB;IAC1C,gBAAgB,EAAE,kBAAkB;IACpC,eAAe,EAAE,iBAAiB;CAC1B,CAAC;AAwCX,uBAAuB;AACvB,+CAA6B;AAE7B,uBAAuB;AACvB,yCAAuB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -122,5 +122,112 @@ export declare class Database {
122
122
  * Compact database (VACUUM)
123
123
  */
124
124
  compact(): Promise<void>;
125
+ /**
126
+ * ============================================================================
127
+ * Q-Learning Database Operations
128
+ * ============================================================================
129
+ */
130
+ /**
131
+ * Upsert Q-value for state-action pair
132
+ */
133
+ upsertQValue(agentId: string, stateKey: string, actionKey: string, qValue: number): Promise<void>;
134
+ /**
135
+ * Get Q-value for state-action pair
136
+ */
137
+ getQValue(agentId: string, stateKey: string, actionKey: string): Promise<number | null>;
138
+ /**
139
+ * Get all Q-values for an agent
140
+ */
141
+ getAllQValues(agentId: string): Promise<Array<{
142
+ state_key: string;
143
+ action_key: string;
144
+ q_value: number;
145
+ update_count: number;
146
+ }>>;
147
+ /**
148
+ * Get Q-values for a specific state
149
+ */
150
+ getStateQValues(agentId: string, stateKey: string): Promise<Array<{
151
+ action_key: string;
152
+ q_value: number;
153
+ }>>;
154
+ /**
155
+ * Store learning experience
156
+ */
157
+ storeLearningExperience(experience: {
158
+ agentId: string;
159
+ taskId?: string;
160
+ taskType: string;
161
+ state: string;
162
+ action: string;
163
+ reward: number;
164
+ nextState: string;
165
+ episodeId?: string;
166
+ }): Promise<void>;
167
+ /**
168
+ * Get learning experiences for an agent
169
+ */
170
+ getLearningExperiences(agentId: string, limit?: number, offset?: number): Promise<Array<{
171
+ id: number;
172
+ task_type: string;
173
+ state: string;
174
+ action: string;
175
+ reward: number;
176
+ next_state: string;
177
+ timestamp: string;
178
+ }>>;
179
+ /**
180
+ * Store learning snapshot for analytics
181
+ */
182
+ storeLearningSnapshot(snapshot: {
183
+ agentId: string;
184
+ snapshotType: 'performance' | 'q_table' | 'pattern';
185
+ metrics: any;
186
+ improvementRate?: number;
187
+ totalExperiences?: number;
188
+ explorationRate?: number;
189
+ }): Promise<void>;
190
+ /**
191
+ * Get learning statistics for an agent
192
+ */
193
+ getLearningStatistics(agentId: string): Promise<{
194
+ totalExperiences: number;
195
+ avgReward: number;
196
+ qTableSize: number;
197
+ recentImprovement: number;
198
+ }>;
199
+ /**
200
+ * Clear old learning experiences (keep last N)
201
+ */
202
+ pruneOldExperiences(agentId: string, keepLast?: number): Promise<number>;
203
+ /**
204
+ * Get learning history for CLI display
205
+ * Returns comprehensive view of agent's learning progress
206
+ */
207
+ getLearningHistory(agentId: string, options?: {
208
+ limit?: number;
209
+ offset?: number;
210
+ includeQValues?: boolean;
211
+ includePatterns?: boolean;
212
+ }): Promise<{
213
+ experiences: Array<{
214
+ id: number;
215
+ task_type: string;
216
+ state: string;
217
+ action: string;
218
+ reward: number;
219
+ next_state: string;
220
+ timestamp: string;
221
+ q_value?: number;
222
+ }>;
223
+ summary: {
224
+ totalExperiences: number;
225
+ avgReward: number;
226
+ recentAvgReward: number;
227
+ improvementRate: number;
228
+ qTableSize: number;
229
+ patternsStored?: number;
230
+ };
231
+ }>;
125
232
  }
126
233
  //# sourceMappingURL=Database.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Database.d.ts","sourceRoot":"","sources":["../../src/utils/Database.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Database.d.ts","sourceRoot":"","sources":["../../src/utils/Database.ts"],"names":[],"mappings":"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"}
@@ -222,6 +222,89 @@ class Database {
222
222
  created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
223
223
  expires_at DATETIME,
224
224
  UNIQUE(key, namespace)
225
+ )`,
226
+ // Test patterns for Learning System
227
+ `CREATE TABLE IF NOT EXISTS patterns (
228
+ id TEXT PRIMARY KEY,
229
+ name TEXT NOT NULL,
230
+ description TEXT,
231
+ category TEXT NOT NULL CHECK(category IN ('unit', 'integration', 'e2e', 'performance', 'security')),
232
+ framework TEXT NOT NULL CHECK(framework IN ('jest', 'mocha', 'vitest', 'playwright', 'cypress', 'jasmine', 'ava')),
233
+ language TEXT NOT NULL CHECK(language IN ('typescript', 'javascript', 'python')),
234
+ template TEXT NOT NULL,
235
+ examples TEXT NOT NULL,
236
+ confidence REAL NOT NULL CHECK(confidence >= 0 AND confidence <= 1),
237
+ usage_count INTEGER DEFAULT 0,
238
+ success_rate REAL DEFAULT 0 CHECK(success_rate >= 0 AND success_rate <= 1),
239
+ quality REAL CHECK(quality >= 0 AND quality <= 1),
240
+ metadata TEXT NOT NULL,
241
+ created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
242
+ updated_at DATETIME DEFAULT CURRENT_TIMESTAMP
243
+ )`,
244
+ // Pattern usage tracking
245
+ `CREATE TABLE IF NOT EXISTS pattern_usage (
246
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
247
+ pattern_id TEXT NOT NULL,
248
+ project_id TEXT,
249
+ agent_id TEXT,
250
+ context TEXT,
251
+ success BOOLEAN DEFAULT TRUE,
252
+ execution_time_ms INTEGER,
253
+ error_message TEXT,
254
+ used_at DATETIME DEFAULT CURRENT_TIMESTAMP,
255
+ FOREIGN KEY (pattern_id) REFERENCES patterns (id) ON DELETE CASCADE
256
+ )`,
257
+ // Q-values table for Q-learning
258
+ `CREATE TABLE IF NOT EXISTS q_values (
259
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
260
+ agent_id TEXT NOT NULL,
261
+ state_key TEXT NOT NULL,
262
+ action_key TEXT NOT NULL,
263
+ q_value REAL NOT NULL DEFAULT 0,
264
+ update_count INTEGER DEFAULT 1,
265
+ last_updated DATETIME DEFAULT CURRENT_TIMESTAMP,
266
+ created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
267
+ UNIQUE(agent_id, state_key, action_key)
268
+ )`,
269
+ // Learning experiences table
270
+ `CREATE TABLE IF NOT EXISTS learning_experiences (
271
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
272
+ agent_id TEXT NOT NULL,
273
+ task_id TEXT,
274
+ task_type TEXT NOT NULL,
275
+ state TEXT NOT NULL,
276
+ action TEXT NOT NULL,
277
+ reward REAL NOT NULL,
278
+ next_state TEXT NOT NULL,
279
+ episode_id TEXT,
280
+ timestamp DATETIME DEFAULT CURRENT_TIMESTAMP,
281
+ FOREIGN KEY (task_id) REFERENCES tasks (id) ON DELETE SET NULL
282
+ )`,
283
+ // Learning history for Q-Learning
284
+ `CREATE TABLE IF NOT EXISTS learning_history (
285
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
286
+ agent_id TEXT NOT NULL,
287
+ pattern_id TEXT,
288
+ state_representation TEXT NOT NULL,
289
+ action TEXT NOT NULL,
290
+ reward REAL NOT NULL,
291
+ next_state_representation TEXT,
292
+ q_value REAL,
293
+ episode INTEGER,
294
+ timestamp DATETIME DEFAULT CURRENT_TIMESTAMP,
295
+ FOREIGN KEY (pattern_id) REFERENCES patterns (id) ON DELETE SET NULL
296
+ )`,
297
+ // Learning metrics for analytics
298
+ `CREATE TABLE IF NOT EXISTS learning_metrics (
299
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
300
+ agent_id TEXT NOT NULL,
301
+ metric_type TEXT NOT NULL CHECK(metric_type IN ('accuracy', 'latency', 'quality', 'success_rate', 'improvement')),
302
+ metric_value REAL NOT NULL,
303
+ baseline_value REAL,
304
+ improvement_percentage REAL,
305
+ pattern_count INTEGER,
306
+ context TEXT,
307
+ timestamp DATETIME DEFAULT CURRENT_TIMESTAMP
225
308
  )`
226
309
  ];
227
310
  for (const table of tables) {
@@ -243,7 +326,36 @@ class Database {
243
326
  'CREATE INDEX IF NOT EXISTS idx_metrics_agent_id ON metrics (agent_id)',
244
327
  'CREATE INDEX IF NOT EXISTS idx_metrics_type ON metrics (metric_type)',
245
328
  'CREATE INDEX IF NOT EXISTS idx_memory_store_namespace ON memory_store (namespace)',
246
- 'CREATE INDEX IF NOT EXISTS idx_memory_store_expires_at ON memory_store (expires_at)'
329
+ 'CREATE INDEX IF NOT EXISTS idx_memory_store_expires_at ON memory_store (expires_at)',
330
+ // Pattern indexes for fast lookup (< 50ms requirement)
331
+ 'CREATE INDEX IF NOT EXISTS idx_patterns_category ON patterns (category)',
332
+ 'CREATE INDEX IF NOT EXISTS idx_patterns_framework ON patterns (framework)',
333
+ 'CREATE INDEX IF NOT EXISTS idx_patterns_language ON patterns (language)',
334
+ 'CREATE INDEX IF NOT EXISTS idx_patterns_quality ON patterns (quality)',
335
+ 'CREATE INDEX IF NOT EXISTS idx_patterns_usage_count ON patterns (usage_count)',
336
+ 'CREATE INDEX IF NOT EXISTS idx_patterns_created_at ON patterns (created_at)',
337
+ // Q-learning indexes
338
+ 'CREATE INDEX IF NOT EXISTS idx_q_values_agent_id ON q_values (agent_id)',
339
+ 'CREATE INDEX IF NOT EXISTS idx_q_values_state ON q_values (state_key)',
340
+ 'CREATE INDEX IF NOT EXISTS idx_q_values_updated ON q_values (last_updated)',
341
+ 'CREATE INDEX IF NOT EXISTS idx_learning_experiences_agent_id ON learning_experiences (agent_id)',
342
+ 'CREATE INDEX IF NOT EXISTS idx_learning_experiences_task_type ON learning_experiences (task_type)',
343
+ 'CREATE INDEX IF NOT EXISTS idx_learning_experiences_timestamp ON learning_experiences (timestamp)',
344
+ 'CREATE INDEX IF NOT EXISTS idx_learning_history_agent_id ON learning_history (agent_id)',
345
+ // Pattern usage indexes for analytics
346
+ 'CREATE INDEX IF NOT EXISTS idx_pattern_usage_pattern_id ON pattern_usage (pattern_id)',
347
+ 'CREATE INDEX IF NOT EXISTS idx_pattern_usage_agent_id ON pattern_usage (agent_id)',
348
+ 'CREATE INDEX IF NOT EXISTS idx_pattern_usage_used_at ON pattern_usage (used_at)',
349
+ 'CREATE INDEX IF NOT EXISTS idx_pattern_usage_success ON pattern_usage (success)',
350
+ // Learning history indexes
351
+ 'CREATE INDEX IF NOT EXISTS idx_learning_history_agent_id ON learning_history (agent_id)',
352
+ 'CREATE INDEX IF NOT EXISTS idx_learning_history_pattern_id ON learning_history (pattern_id)',
353
+ 'CREATE INDEX IF NOT EXISTS idx_learning_history_timestamp ON learning_history (timestamp)',
354
+ 'CREATE INDEX IF NOT EXISTS idx_learning_history_episode ON learning_history (episode)',
355
+ // Learning metrics indexes
356
+ 'CREATE INDEX IF NOT EXISTS idx_learning_metrics_agent_id ON learning_metrics (agent_id)',
357
+ 'CREATE INDEX IF NOT EXISTS idx_learning_metrics_type ON learning_metrics (metric_type)',
358
+ 'CREATE INDEX IF NOT EXISTS idx_learning_metrics_timestamp ON learning_metrics (timestamp)'
247
359
  ];
248
360
  for (const index of indexes) {
249
361
  await this.exec(index);
@@ -390,6 +502,230 @@ class Database {
390
502
  throw error;
391
503
  }
392
504
  }
505
+ /**
506
+ * ============================================================================
507
+ * Q-Learning Database Operations
508
+ * ============================================================================
509
+ */
510
+ /**
511
+ * Upsert Q-value for state-action pair
512
+ */
513
+ async upsertQValue(agentId, stateKey, actionKey, qValue) {
514
+ const sql = `
515
+ INSERT INTO q_values (agent_id, state_key, action_key, q_value, update_count, last_updated)
516
+ VALUES (?, ?, ?, ?, 1, CURRENT_TIMESTAMP)
517
+ ON CONFLICT(agent_id, state_key, action_key) DO UPDATE SET
518
+ q_value = ?,
519
+ update_count = update_count + 1,
520
+ last_updated = CURRENT_TIMESTAMP
521
+ `;
522
+ await this.run(sql, [agentId, stateKey, actionKey, qValue, qValue]);
523
+ }
524
+ /**
525
+ * Get Q-value for state-action pair
526
+ */
527
+ async getQValue(agentId, stateKey, actionKey) {
528
+ const sql = `
529
+ SELECT q_value FROM q_values
530
+ WHERE agent_id = ? AND state_key = ? AND action_key = ?
531
+ `;
532
+ const row = await this.get(sql, [agentId, stateKey, actionKey]);
533
+ return row ? row.q_value : null;
534
+ }
535
+ /**
536
+ * Get all Q-values for an agent
537
+ */
538
+ async getAllQValues(agentId) {
539
+ const sql = `
540
+ SELECT state_key, action_key, q_value, update_count
541
+ FROM q_values
542
+ WHERE agent_id = ?
543
+ ORDER BY last_updated DESC
544
+ `;
545
+ return await this.all(sql, [agentId]);
546
+ }
547
+ /**
548
+ * Get Q-values for a specific state
549
+ */
550
+ async getStateQValues(agentId, stateKey) {
551
+ const sql = `
552
+ SELECT action_key, q_value
553
+ FROM q_values
554
+ WHERE agent_id = ? AND state_key = ?
555
+ ORDER BY q_value DESC
556
+ `;
557
+ return await this.all(sql, [agentId, stateKey]);
558
+ }
559
+ /**
560
+ * Store learning experience
561
+ */
562
+ async storeLearningExperience(experience) {
563
+ const sql = `
564
+ INSERT INTO learning_experiences (
565
+ agent_id, task_id, task_type, state, action, reward, next_state, episode_id
566
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?)
567
+ `;
568
+ await this.run(sql, [
569
+ experience.agentId,
570
+ experience.taskId || null,
571
+ experience.taskType,
572
+ experience.state,
573
+ experience.action,
574
+ experience.reward,
575
+ experience.nextState,
576
+ experience.episodeId || null
577
+ ]);
578
+ }
579
+ /**
580
+ * Get learning experiences for an agent
581
+ */
582
+ async getLearningExperiences(agentId, limit = 100, offset = 0) {
583
+ const sql = `
584
+ SELECT id, task_type, state, action, reward, next_state, timestamp
585
+ FROM learning_experiences
586
+ WHERE agent_id = ?
587
+ ORDER BY timestamp DESC
588
+ LIMIT ? OFFSET ?
589
+ `;
590
+ return await this.all(sql, [agentId, limit, offset]);
591
+ }
592
+ /**
593
+ * Store learning snapshot for analytics
594
+ */
595
+ async storeLearningSnapshot(snapshot) {
596
+ const sql = `
597
+ INSERT INTO learning_history (
598
+ agent_id, state_representation, action, reward,
599
+ next_state_representation, q_value, episode
600
+ ) VALUES (?, ?, ?, ?, ?, ?, ?)
601
+ `;
602
+ // Store as learning_history entry (compatible with existing schema)
603
+ await this.run(sql, [
604
+ snapshot.agentId,
605
+ snapshot.snapshotType,
606
+ JSON.stringify(snapshot.metrics),
607
+ snapshot.improvementRate || 0,
608
+ '', // next_state_representation (unused for snapshots)
609
+ snapshot.explorationRate || 0,
610
+ snapshot.totalExperiences || 0
611
+ ]);
612
+ }
613
+ /**
614
+ * Get learning statistics for an agent
615
+ */
616
+ async getLearningStatistics(agentId) {
617
+ const [experiencesRow, avgRewardRow, qTableRow] = await Promise.all([
618
+ this.get('SELECT COUNT(*) as count FROM learning_experiences WHERE agent_id = ?', [agentId]),
619
+ this.get('SELECT AVG(reward) as avg FROM learning_experiences WHERE agent_id = ? AND timestamp > datetime("now", "-7 days")', [agentId]),
620
+ this.get('SELECT COUNT(*) as count FROM q_values WHERE agent_id = ?', [agentId])
621
+ ]);
622
+ // Calculate recent improvement
623
+ const recentRewards = await this.all('SELECT reward FROM learning_experiences WHERE agent_id = ? ORDER BY timestamp DESC LIMIT 20', [agentId]);
624
+ const oldRewards = await this.all('SELECT reward FROM learning_experiences WHERE agent_id = ? ORDER BY timestamp ASC LIMIT 20', [agentId]);
625
+ const recentAvg = recentRewards.length > 0
626
+ ? recentRewards.reduce((sum, r) => sum + r.reward, 0) / recentRewards.length
627
+ : 0;
628
+ const oldAvg = oldRewards.length > 0
629
+ ? oldRewards.reduce((sum, r) => sum + r.reward, 0) / oldRewards.length
630
+ : 0;
631
+ const improvement = oldAvg !== 0 ? ((recentAvg - oldAvg) / Math.abs(oldAvg)) * 100 : 0;
632
+ return {
633
+ totalExperiences: experiencesRow?.count || 0,
634
+ avgReward: avgRewardRow?.avg || 0,
635
+ qTableSize: qTableRow?.count || 0,
636
+ recentImprovement: improvement
637
+ };
638
+ }
639
+ /**
640
+ * Clear old learning experiences (keep last N)
641
+ */
642
+ async pruneOldExperiences(agentId, keepLast = 10000) {
643
+ const sql = `
644
+ DELETE FROM learning_experiences
645
+ WHERE agent_id = ? AND id NOT IN (
646
+ SELECT id FROM learning_experiences
647
+ WHERE agent_id = ?
648
+ ORDER BY timestamp DESC
649
+ LIMIT ?
650
+ )
651
+ `;
652
+ const result = await this.run(sql, [agentId, agentId, keepLast]);
653
+ return result.changes;
654
+ }
655
+ /**
656
+ * Get learning history for CLI display
657
+ * Returns comprehensive view of agent's learning progress
658
+ */
659
+ async getLearningHistory(agentId, options = {}) {
660
+ const limit = options.limit || 50;
661
+ const offset = options.offset || 0;
662
+ // Get experiences with optional Q-values
663
+ const experiencesSql = options.includeQValues
664
+ ? `
665
+ SELECT
666
+ e.id,
667
+ e.task_type,
668
+ e.state,
669
+ e.action,
670
+ e.reward,
671
+ e.next_state,
672
+ e.timestamp,
673
+ q.q_value
674
+ FROM learning_experiences e
675
+ LEFT JOIN q_values q ON q.agent_id = e.agent_id
676
+ AND q.state_key = e.state
677
+ AND q.action_key = e.action
678
+ WHERE e.agent_id = ?
679
+ ORDER BY e.timestamp DESC
680
+ LIMIT ? OFFSET ?
681
+ `
682
+ : `
683
+ SELECT
684
+ id,
685
+ task_type,
686
+ state,
687
+ action,
688
+ reward,
689
+ next_state,
690
+ timestamp
691
+ FROM learning_experiences
692
+ WHERE agent_id = ?
693
+ ORDER BY timestamp DESC
694
+ LIMIT ? OFFSET ?
695
+ `;
696
+ const experiences = await this.all(experiencesSql, [agentId, limit, offset]);
697
+ // Get summary statistics
698
+ const stats = await this.getLearningStatistics(agentId);
699
+ // Get pattern count if requested
700
+ let patternsStored;
701
+ if (options.includePatterns) {
702
+ const patternResult = await this.get('SELECT COUNT(*) as count FROM patterns WHERE metadata LIKE ?', [`%"agentId":"${agentId}"%`]);
703
+ patternsStored = patternResult?.count || 0;
704
+ }
705
+ // Calculate recent average reward (last 20 experiences)
706
+ const recentSql = `
707
+ SELECT AVG(reward) as avg
708
+ FROM (
709
+ SELECT reward FROM learning_experiences
710
+ WHERE agent_id = ?
711
+ ORDER BY timestamp DESC
712
+ LIMIT 20
713
+ )
714
+ `;
715
+ const recentResult = await this.get(recentSql, [agentId]);
716
+ const recentAvgReward = recentResult?.avg || 0;
717
+ return {
718
+ experiences,
719
+ summary: {
720
+ totalExperiences: stats.totalExperiences,
721
+ avgReward: stats.avgReward,
722
+ recentAvgReward,
723
+ improvementRate: stats.recentImprovement,
724
+ qTableSize: stats.qTableSize,
725
+ patternsStored
726
+ }
727
+ };
728
+ }
393
729
  }
394
730
  exports.Database = Database;
395
731
  //# sourceMappingURL=Database.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Database.js","sourceRoot":"","sources":["../../src/utils/Database.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Database.js","sourceRoot":"","sources":["../../src/utils/Database.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@
4
4
  * Provides complete mock implementation of Database class with all required methods
5
5
  * for better-sqlite3 compatibility and test isolation.
6
6
  */
7
+ import { jest } from '@jest/globals';
7
8
  /**
8
9
  * Mock database that matches the Database class interface
9
10
  * Supports both synchronous (better-sqlite3) and async patterns
@@ -39,25 +40,25 @@ export declare const mockDatabase: {
39
40
  */
40
41
  export declare class Database {
41
42
  private dbPath;
42
- constructor(dbPath?: string);
43
- initialize(): Promise<void>;
44
- close(): Promise<void>;
45
- exec(sql: string): void;
46
- run(sql: string, params?: any[]): Promise<{
43
+ initialize: jest.Mock<() => Promise<void>>;
44
+ close: jest.Mock<() => Promise<void>>;
45
+ exec: jest.Mock<(sql: string) => void>;
46
+ run: jest.Mock<(sql: string, params?: any[]) => Promise<{
47
47
  lastID: number;
48
48
  changes: number;
49
- }>;
50
- get(sql: string, params?: any[]): Promise<any>;
51
- all(sql: string, params?: any[]): Promise<any[]>;
52
- prepare(sql: string): any;
53
- stats(): Promise<any>;
54
- compact(): Promise<void>;
55
- transaction(callback: () => void): void;
56
- upsertFleet(fleet: any): Promise<void>;
57
- upsertAgent(agent: any): Promise<void>;
58
- upsertTask(task: any): Promise<void>;
59
- insertEvent(event: any): Promise<void>;
60
- insertMetric(metric: any): Promise<void>;
49
+ }>>;
50
+ get: jest.Mock<(sql: string, params?: any[]) => Promise<any>>;
51
+ all: jest.Mock<(sql: string, params?: any[]) => Promise<any[]>>;
52
+ prepare: jest.Mock<(sql: string) => any>;
53
+ stats: jest.Mock<() => Promise<any>>;
54
+ compact: jest.Mock<() => Promise<void>>;
55
+ transaction: jest.Mock<(callback: () => void) => void>;
56
+ upsertFleet: jest.Mock<(fleet: any) => Promise<void>>;
57
+ upsertAgent: jest.Mock<(agent: any) => Promise<void>>;
58
+ upsertTask: jest.Mock<(task: any) => Promise<void>>;
59
+ insertEvent: jest.Mock<(event: any) => Promise<void>>;
60
+ insertMetric: jest.Mock<(metric: any) => Promise<void>>;
61
+ constructor(dbPath?: string);
61
62
  _resetMocks(): void;
62
63
  }
63
64
  export default Database;
@@ -1 +1 @@
1
- {"version":3,"file":"Database.d.ts","sourceRoot":"","sources":["../../../src/utils/__mocks__/Database.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;GAGG;AACH,eAAO,MAAM,YAAY;+CAEG,OAAO,CAAC,IAAI,CAAC;0CAClB,OAAO,CAAC,IAAI,CAAC;0CAGb;QAAE,IAAI,EAAE,GAAG,EAAE,CAAA;KAAE;4CAGb,GAAG;;;;;yCAYN,IAAI;2CAGF,GAAG;0CACJ,OAAO,CAAC,GAAG,CAAC;4CAOV,OAAO,CAAC,IAAI,CAAC;qDAGJ,MAAM,IAAI,KAAK,IAAI;qDACnB,OAAO,CAAC,IAAI,CAAC;2CACvB,OAAO,CAAC,IAAI,CAAC;6CACX,OAAO,CAAC,IAAI,CAAC;kDAGR,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC;kDACrB,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC;gDACvB,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC;kDACnB,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC;oDACnB,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC;;CAUrD,CAAC;AAEF;;GAEG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,MAAM,CAAS;gBAEX,MAAM,GAAE,MAA0B;IAKxC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAK5B,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAIjB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,GAAG,EAAO,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAQlF,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,GAAG,EAAO,GAAG,OAAO,CAAC,GAAG,CAAC;IAIlD,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,GAAG,EAAO,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAK1D,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG;IAKnB,KAAK,IAAI,OAAO,CAAC,GAAG,CAAC;IAIrB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAK9B,WAAW,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAKjC,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAItC,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAItC,UAAU,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAIpC,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAItC,YAAY,CAAC,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAK9C,WAAW,IAAI,IAAI;CAGpB;AAGD,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"Database.d.ts","sourceRoot":"","sources":["../../../src/utils/__mocks__/Database.ts"],"names":[],"mappings":"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"}