agentic-qe 1.4.1 → 1.4.3

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 (177) hide show
  1. package/.claude/agents/failing-agent.json +9 -0
  2. package/.claude/agents/test-agent.json +9 -0
  3. package/CHANGELOG.md +340 -0
  4. package/README.md +15 -95
  5. package/dist/agents/BaseAgent.d.ts +14 -1
  6. package/dist/agents/BaseAgent.d.ts.map +1 -1
  7. package/dist/agents/BaseAgent.js +46 -2
  8. package/dist/agents/BaseAgent.js.map +1 -1
  9. package/dist/agents/TestGeneratorAgent.d.ts +21 -0
  10. package/dist/agents/TestGeneratorAgent.d.ts.map +1 -1
  11. package/dist/agents/TestGeneratorAgent.js +157 -15
  12. package/dist/agents/TestGeneratorAgent.js.map +1 -1
  13. package/dist/agents/index.d.ts.map +1 -1
  14. package/dist/agents/index.js +14 -15
  15. package/dist/agents/index.js.map +1 -1
  16. package/dist/agents/lifecycle/AgentLifecycleManager.d.ts +6 -0
  17. package/dist/agents/lifecycle/AgentLifecycleManager.d.ts.map +1 -1
  18. package/dist/agents/lifecycle/AgentLifecycleManager.js +14 -0
  19. package/dist/agents/lifecycle/AgentLifecycleManager.js.map +1 -1
  20. package/dist/cli/commands/config/set.d.ts +9 -1
  21. package/dist/cli/commands/config/set.d.ts.map +1 -1
  22. package/dist/cli/commands/config/set.js +36 -5
  23. package/dist/cli/commands/config/set.js.map +1 -1
  24. package/dist/cli/commands/init.d.ts.map +1 -1
  25. package/dist/cli/commands/init.js +26 -3
  26. package/dist/cli/commands/init.js.map +1 -1
  27. package/dist/core/Agent.d.ts +1 -1
  28. package/dist/core/Agent.d.ts.map +1 -1
  29. package/dist/core/Agent.js +2 -2
  30. package/dist/core/Agent.js.map +1 -1
  31. package/dist/core/MemoryManager.d.ts.map +1 -1
  32. package/dist/core/MemoryManager.js +4 -1
  33. package/dist/core/MemoryManager.js.map +1 -1
  34. package/dist/core/hooks/RollbackManager.js +2 -2
  35. package/dist/core/hooks/RollbackManager.js.map +1 -1
  36. package/dist/core/memory/AgentDBManager.d.ts.map +1 -1
  37. package/dist/core/memory/AgentDBManager.js +4 -0
  38. package/dist/core/memory/AgentDBManager.js.map +1 -1
  39. package/dist/core/memory/ReasoningBankAdapter.d.ts +11 -0
  40. package/dist/core/memory/ReasoningBankAdapter.d.ts.map +1 -1
  41. package/dist/core/memory/ReasoningBankAdapter.js +15 -0
  42. package/dist/core/memory/ReasoningBankAdapter.js.map +1 -1
  43. package/dist/learning/LearningEngine.d.ts +37 -4
  44. package/dist/learning/LearningEngine.d.ts.map +1 -1
  45. package/dist/learning/LearningEngine.js +171 -133
  46. package/dist/learning/LearningEngine.js.map +1 -1
  47. package/dist/learning/LearningPersistenceAdapter.d.ts +84 -0
  48. package/dist/learning/LearningPersistenceAdapter.d.ts.map +1 -0
  49. package/dist/learning/LearningPersistenceAdapter.js +202 -0
  50. package/dist/learning/LearningPersistenceAdapter.js.map +1 -0
  51. package/dist/learning/__mocks__/LearningEngine.d.ts +39 -0
  52. package/dist/learning/__mocks__/LearningEngine.d.ts.map +1 -0
  53. package/dist/learning/__mocks__/LearningEngine.js +116 -0
  54. package/dist/learning/__mocks__/LearningEngine.js.map +1 -0
  55. package/dist/learning/index.d.ts +1 -0
  56. package/dist/learning/index.d.ts.map +1 -1
  57. package/dist/learning/index.js +1 -0
  58. package/dist/learning/index.js.map +1 -1
  59. package/dist/mcp/handlers/analysis/coverage-analyze-sublinear-handler.d.ts.map +1 -1
  60. package/dist/mcp/handlers/analysis/coverage-analyze-sublinear-handler.js +3 -7
  61. package/dist/mcp/handlers/analysis/coverage-analyze-sublinear-handler.js.map +1 -1
  62. package/dist/mcp/handlers/analysis/coverage-gaps-detect-handler.d.ts.map +1 -1
  63. package/dist/mcp/handlers/analysis/coverage-gaps-detect-handler.js +3 -7
  64. package/dist/mcp/handlers/analysis/coverage-gaps-detect-handler.js.map +1 -1
  65. package/dist/mcp/handlers/analysis/performance-benchmark-run-handler.d.ts.map +1 -1
  66. package/dist/mcp/handlers/analysis/performance-benchmark-run-handler.js +3 -7
  67. package/dist/mcp/handlers/analysis/performance-benchmark-run-handler.js.map +1 -1
  68. package/dist/mcp/handlers/analysis/performance-monitor-realtime-handler.d.ts.map +1 -1
  69. package/dist/mcp/handlers/analysis/performance-monitor-realtime-handler.js +3 -7
  70. package/dist/mcp/handlers/analysis/performance-monitor-realtime-handler.js.map +1 -1
  71. package/dist/mcp/handlers/analysis/security-scan-comprehensive-handler.d.ts.map +1 -1
  72. package/dist/mcp/handlers/analysis/security-scan-comprehensive-handler.js +3 -7
  73. package/dist/mcp/handlers/analysis/security-scan-comprehensive-handler.js.map +1 -1
  74. package/dist/mcp/handlers/base-handler.d.ts +30 -0
  75. package/dist/mcp/handlers/base-handler.d.ts.map +1 -1
  76. package/dist/mcp/handlers/base-handler.js +42 -0
  77. package/dist/mcp/handlers/base-handler.js.map +1 -1
  78. package/dist/mcp/handlers/coordination/event-emit.d.ts.map +1 -1
  79. package/dist/mcp/handlers/coordination/event-emit.js +4 -10
  80. package/dist/mcp/handlers/coordination/event-emit.js.map +1 -1
  81. package/dist/mcp/handlers/coordination/event-subscribe.d.ts.map +1 -1
  82. package/dist/mcp/handlers/coordination/event-subscribe.js +3 -9
  83. package/dist/mcp/handlers/coordination/event-subscribe.js.map +1 -1
  84. package/dist/mcp/handlers/coordination/task-status.d.ts.map +1 -1
  85. package/dist/mcp/handlers/coordination/task-status.js +4 -10
  86. package/dist/mcp/handlers/coordination/task-status.js.map +1 -1
  87. package/dist/mcp/handlers/coordination/workflow-checkpoint.d.ts.map +1 -1
  88. package/dist/mcp/handlers/coordination/workflow-checkpoint.js +4 -10
  89. package/dist/mcp/handlers/coordination/workflow-checkpoint.js.map +1 -1
  90. package/dist/mcp/handlers/coordination/workflow-create.d.ts.map +1 -1
  91. package/dist/mcp/handlers/coordination/workflow-create.js +4 -10
  92. package/dist/mcp/handlers/coordination/workflow-create.js.map +1 -1
  93. package/dist/mcp/handlers/coordination/workflow-execute.d.ts.map +1 -1
  94. package/dist/mcp/handlers/coordination/workflow-execute.js +4 -10
  95. package/dist/mcp/handlers/coordination/workflow-execute.js.map +1 -1
  96. package/dist/mcp/handlers/coordination/workflow-resume.d.ts.map +1 -1
  97. package/dist/mcp/handlers/coordination/workflow-resume.js +4 -10
  98. package/dist/mcp/handlers/coordination/workflow-resume.js.map +1 -1
  99. package/dist/mcp/handlers/memory/memory-backup.d.ts.map +1 -1
  100. package/dist/mcp/handlers/memory/memory-backup.js +3 -7
  101. package/dist/mcp/handlers/memory/memory-backup.js.map +1 -1
  102. package/dist/mcp/handlers/memory/memory-query.d.ts.map +1 -1
  103. package/dist/mcp/handlers/memory/memory-query.js +8 -8
  104. package/dist/mcp/handlers/memory/memory-query.js.map +1 -1
  105. package/dist/mcp/handlers/memory/memory-retrieve.d.ts.map +1 -1
  106. package/dist/mcp/handlers/memory/memory-retrieve.js +3 -7
  107. package/dist/mcp/handlers/memory/memory-retrieve.js.map +1 -1
  108. package/dist/mcp/handlers/memory/memory-share.d.ts.map +1 -1
  109. package/dist/mcp/handlers/memory/memory-share.js +3 -7
  110. package/dist/mcp/handlers/memory/memory-share.js.map +1 -1
  111. package/dist/mcp/handlers/memory/memory-store.d.ts.map +1 -1
  112. package/dist/mcp/handlers/memory/memory-store.js +3 -7
  113. package/dist/mcp/handlers/memory/memory-store.js.map +1 -1
  114. package/dist/mcp/handlers/prediction/deployment-readiness-check.d.ts.map +1 -1
  115. package/dist/mcp/handlers/prediction/deployment-readiness-check.js +4 -8
  116. package/dist/mcp/handlers/prediction/deployment-readiness-check.js.map +1 -1
  117. package/dist/mcp/handlers/prediction/flaky-test-detect.d.ts.map +1 -1
  118. package/dist/mcp/handlers/prediction/flaky-test-detect.js +4 -8
  119. package/dist/mcp/handlers/prediction/flaky-test-detect.js.map +1 -1
  120. package/dist/mcp/handlers/prediction/predict-defects-ai.d.ts.map +1 -1
  121. package/dist/mcp/handlers/prediction/predict-defects-ai.js +4 -8
  122. package/dist/mcp/handlers/prediction/predict-defects-ai.js.map +1 -1
  123. package/dist/mcp/handlers/prediction/regression-risk-analyze.d.ts.map +1 -1
  124. package/dist/mcp/handlers/prediction/regression-risk-analyze.js +4 -8
  125. package/dist/mcp/handlers/prediction/regression-risk-analyze.js.map +1 -1
  126. package/dist/mcp/handlers/prediction/visual-test-regression.d.ts.map +1 -1
  127. package/dist/mcp/handlers/prediction/visual-test-regression.js +4 -8
  128. package/dist/mcp/handlers/prediction/visual-test-regression.js.map +1 -1
  129. package/dist/mcp/handlers/quality/quality-decision-make.d.ts.map +1 -1
  130. package/dist/mcp/handlers/quality/quality-decision-make.js +9 -19
  131. package/dist/mcp/handlers/quality/quality-decision-make.js.map +1 -1
  132. package/dist/mcp/handlers/quality/quality-gate-execute.d.ts.map +1 -1
  133. package/dist/mcp/handlers/quality/quality-gate-execute.js +10 -22
  134. package/dist/mcp/handlers/quality/quality-gate-execute.js.map +1 -1
  135. package/dist/mcp/handlers/quality/quality-policy-check.d.ts.map +1 -1
  136. package/dist/mcp/handlers/quality/quality-policy-check.js +5 -15
  137. package/dist/mcp/handlers/quality/quality-policy-check.js.map +1 -1
  138. package/dist/mcp/handlers/quality/quality-risk-assess.d.ts.map +1 -1
  139. package/dist/mcp/handlers/quality/quality-risk-assess.js +5 -15
  140. package/dist/mcp/handlers/quality/quality-risk-assess.js.map +1 -1
  141. package/dist/mcp/handlers/quality/quality-validate-metrics.d.ts.map +1 -1
  142. package/dist/mcp/handlers/quality/quality-validate-metrics.js +4 -14
  143. package/dist/mcp/handlers/quality/quality-validate-metrics.js.map +1 -1
  144. package/dist/mcp/handlers/test/test-coverage-detailed.d.ts.map +1 -1
  145. package/dist/mcp/handlers/test/test-coverage-detailed.js +8 -12
  146. package/dist/mcp/handlers/test/test-coverage-detailed.js.map +1 -1
  147. package/dist/mcp/handlers/test/test-execute-parallel.d.ts.map +1 -1
  148. package/dist/mcp/handlers/test/test-execute-parallel.js +8 -12
  149. package/dist/mcp/handlers/test/test-execute-parallel.js.map +1 -1
  150. package/dist/mcp/handlers/test/test-generate-enhanced.d.ts.map +1 -1
  151. package/dist/mcp/handlers/test/test-generate-enhanced.js +4 -8
  152. package/dist/mcp/handlers/test/test-generate-enhanced.js.map +1 -1
  153. package/dist/mcp/handlers/test/test-optimize-sublinear.d.ts.map +1 -1
  154. package/dist/mcp/handlers/test/test-optimize-sublinear.js +8 -12
  155. package/dist/mcp/handlers/test/test-optimize-sublinear.js.map +1 -1
  156. package/dist/mcp/handlers/test/test-report-comprehensive.d.ts.map +1 -1
  157. package/dist/mcp/handlers/test/test-report-comprehensive.js +4 -8
  158. package/dist/mcp/handlers/test/test-report-comprehensive.js.map +1 -1
  159. package/dist/mcp/services/AgentRegistry.d.ts.map +1 -1
  160. package/dist/mcp/services/AgentRegistry.js +16 -4
  161. package/dist/mcp/services/AgentRegistry.js.map +1 -1
  162. package/dist/utils/Database.d.ts.map +1 -1
  163. package/dist/utils/Database.js +17 -4
  164. package/dist/utils/Database.js.map +1 -1
  165. package/dist/utils/__mocks__/Database.d.ts +68 -48
  166. package/dist/utils/__mocks__/Database.d.ts.map +1 -1
  167. package/dist/utils/__mocks__/Database.js +82 -58
  168. package/dist/utils/__mocks__/Database.js.map +1 -1
  169. package/dist/utils/__mocks__/Logger.d.ts.map +1 -1
  170. package/dist/utils/__mocks__/Logger.js +2 -0
  171. package/dist/utils/__mocks__/Logger.js.map +1 -1
  172. package/package.json +10 -9
  173. package/README.md.backup-20251026 +0 -1366
  174. package/dist/migrations/001_add_learning_tables.d.ts +0 -63
  175. package/dist/migrations/001_add_learning_tables.d.ts.map +0 -1
  176. package/dist/migrations/001_add_learning_tables.js +0 -287
  177. package/dist/migrations/001_add_learning_tables.js.map +0 -1
@@ -12,6 +12,8 @@ const Logger_1 = require("../utils/Logger");
12
12
  const QLearning_1 = require("./QLearning");
13
13
  const StateExtractor_1 = require("./StateExtractor");
14
14
  const RewardCalculator_1 = require("./RewardCalculator");
15
+ const Database_1 = require("../utils/Database");
16
+ const LearningPersistenceAdapter_1 = require("./LearningPersistenceAdapter");
15
17
  // Import version from package.json to maintain consistency
16
18
  const packageJson = require('../../package.json');
17
19
  const PACKAGE_VERSION = packageJson.version;
@@ -33,7 +35,9 @@ const DEFAULT_CONFIG = {
33
35
  * LearningEngine - Reinforcement learning for agents
34
36
  */
35
37
  class LearningEngine {
36
- constructor(agentId, memoryStore, config = {}, database) {
38
+ constructor(agentId, memoryStore, config = {}, database, persistence) {
39
+ this.databaseAutoCreated = false;
40
+ this.databaseReady = false; // Track database initialization state
37
41
  this.logger = Logger_1.Logger.getInstance();
38
42
  this.agentId = agentId;
39
43
  this.memoryStore = memoryStore;
@@ -46,17 +50,50 @@ class LearningEngine {
46
50
  this.taskCount = 0;
47
51
  this.stateExtractor = new StateExtractor_1.StateExtractor();
48
52
  this.rewardCalculator = new RewardCalculator_1.RewardCalculator();
49
- this.database = database;
53
+ // Store database reference but don't create persistence adapter yet
54
+ // Persistence adapter creation happens in initialize() after database is ready
55
+ if (persistence) {
56
+ this.persistence = persistence;
57
+ this.database = database; // May be undefined if using InMemoryPersistence
58
+ // If external persistence provided, assume it's ready
59
+ if (persistence && database) {
60
+ // External persistence is considered ready immediately
61
+ // It's the caller's responsibility to ensure the database is initialized
62
+ }
63
+ }
64
+ else if (database) {
65
+ // Database provided but no persistence adapter
66
+ // We'll create the adapter in initialize() after database init
67
+ this.database = database;
68
+ }
69
+ else if (this.config.enabled && !database) {
70
+ // Auto-initialize database (adapter creation deferred to initialize())
71
+ const dbPath = process.env.AQE_DB_PATH || '.agentic-qe/memory.db';
72
+ this.database = new Database_1.Database(dbPath);
73
+ this.databaseAutoCreated = true; // Track that we created this database
74
+ this.logger.info(`Auto-initialized learning database at ${dbPath}`);
75
+ }
50
76
  }
51
77
  /**
52
78
  * Initialize the learning engine
53
79
  */
54
80
  async initialize() {
55
81
  this.logger.info(`Initializing LearningEngine for agent ${this.agentId}`);
82
+ // Initialize database if auto-created or provided
83
+ if (this.database) {
84
+ await this.database.initialize();
85
+ this.databaseReady = true; // Mark database as ready after successful initialization
86
+ // Create persistence adapter NOW that database is initialized
87
+ // Only if we don't already have one (e.g., from external injection)
88
+ if (!this.persistence) {
89
+ this.persistence = new LearningPersistenceAdapter_1.DatabaseLearningPersistence(this.database);
90
+ this.logger.info('Created DatabaseLearningPersistence adapter after database initialization');
91
+ }
92
+ }
56
93
  // Load previous learning state if exists
57
94
  await this.loadState();
58
- // Load Q-values from database if available
59
- if (this.database) {
95
+ // Load Q-values from database if available (only if database is ready)
96
+ if (this.database && this.databaseReady) {
60
97
  await this.loadQTableFromDatabase();
61
98
  }
62
99
  // Store config in memory
@@ -64,109 +101,41 @@ class LearningEngine {
64
101
  this.logger.info('LearningEngine initialized successfully');
65
102
  }
66
103
  /**
67
- * Record experience from task execution (PRODUCTION-READY WITH DATABASE PERSISTENCE)
68
- * This is the main integration point for Q-learning
104
+ * @deprecated Use learnFromExecution() instead. This method is maintained for backward compatibility.
105
+ * Will be removed in v2.0.0
106
+ *
107
+ * Record experience from task execution (DEPRECATED)
108
+ * Redirects to learnFromExecution() for consolidated implementation
69
109
  */
70
110
  async recordExperience(task, result, feedback) {
71
- if (!this.config.enabled) {
72
- return;
73
- }
74
- try {
75
- // Extract state from task
76
- const state = this.stateExtractor.extractState(task, task.context);
77
- // Extract action from result
78
- const action = {
79
- strategy: result.metadata?.strategy || 'default',
80
- toolsUsed: result.metadata?.toolsUsed || [],
81
- parallelization: result.metadata?.parallelization || 0.5,
82
- retryPolicy: result.metadata?.retryPolicy || 'exponential',
83
- resourceAllocation: result.metadata?.resourceAllocation || 0.5
84
- };
85
- // Calculate reward using RewardCalculator
86
- const reward = this.rewardCalculator.calculateReward(result, feedback);
87
- // Create next state (after execution)
88
- const nextState = {
89
- ...state,
90
- previousAttempts: state.previousAttempts + 1,
91
- availableResources: state.availableResources * (result.success ? 1.0 : 0.9)
92
- };
93
- // Create experience
94
- const experience = {
95
- taskId: task.id || (0, uuid_1.v4)(),
96
- taskType: task.type,
97
- state,
98
- action,
99
- reward,
100
- nextState,
101
- timestamp: new Date(),
102
- agentId: this.agentId
103
- };
104
- // Store experience in memory
105
- this.experiences.push(experience);
106
- // Store experience in database (ACTUAL PERSISTENCE)
107
- if (this.database) {
108
- await this.database.storeLearningExperience({
109
- agentId: this.agentId,
110
- taskId: experience.taskId,
111
- taskType: experience.taskType,
112
- state: this.stateExtractor.encodeState(experience.state),
113
- action: this.stateExtractor.encodeAction(experience.action),
114
- reward: experience.reward,
115
- nextState: this.stateExtractor.encodeState(experience.nextState),
116
- episodeId: `episode-${Math.floor(this.taskCount / 10)}`
117
- });
118
- this.logger.debug(`Stored learning experience in database: task=${experience.taskId}, reward=${reward.toFixed(3)}`);
119
- }
120
- // Update Q-table with new experience
121
- await this.updateQTable(experience);
122
- // Store updated Q-value to database (ACTUAL Q-VALUE PERSISTENCE)
123
- if (this.database) {
124
- const stateKey = this.stateExtractor.encodeState(experience.state);
125
- const actionKey = this.stateExtractor.encodeAction(experience.action);
126
- const stateActions = this.qTable.get(stateKey);
127
- const qValue = stateActions?.get(actionKey) || 0;
128
- await this.database.upsertQValue(this.agentId, stateKey, actionKey, qValue);
129
- this.logger.debug(`Persisted Q-value to database: Q(${stateKey}, ${actionKey}) = ${qValue.toFixed(3)}`);
130
- }
131
- // Update patterns
132
- await this.updatePatterns(experience);
133
- // Increment task count
134
- this.taskCount++;
135
- // Periodic batch update
136
- if (this.taskCount % this.config.updateFrequency === 0) {
137
- await this.performBatchUpdate();
138
- // Store learning snapshot for analytics
139
- if (this.database) {
140
- const stats = await this.database.getLearningStatistics(this.agentId);
141
- await this.database.storeLearningSnapshot({
142
- agentId: this.agentId,
143
- snapshotType: 'performance',
144
- metrics: stats,
145
- improvementRate: stats.recentImprovement,
146
- totalExperiences: stats.totalExperiences,
147
- explorationRate: this.config.explorationRate
148
- });
149
- }
150
- }
151
- // Decay exploration rate
152
- this.decayExploration();
153
- // Save state periodically
154
- if (this.taskCount % 50 === 0) {
155
- await this.saveState();
156
- }
157
- this.logger.info(`Recorded experience: reward=${reward.toFixed(3)}, exploration=${this.config.explorationRate.toFixed(3)}, experiences=${this.experiences.length}`);
158
- }
159
- catch (error) {
160
- this.logger.error(`Failed to record experience:`, error);
161
- // Don't throw - learning failures shouldn't break task execution
111
+ this.logger.warn('[LearningEngine] recordExperience() is deprecated. Use learnFromExecution() instead. This method will be removed in v2.0.0');
112
+ // Redirect to unified method
113
+ await this.learnFromExecution(task, result, feedback);
114
+ }
115
+ /**
116
+ * Ensure database is initialized before operations
117
+ * Throws error if database is required but not ready
118
+ */
119
+ ensureDatabaseReady() {
120
+ if (this.database && !this.databaseReady) {
121
+ throw new Error(`Database not initialized for agent ${this.agentId}. ` +
122
+ `Call LearningEngine.initialize() before any database operations.`);
162
123
  }
163
124
  }
125
+ /**
126
+ * Check if database is available and ready for operations
127
+ */
128
+ isDatabaseAvailable() {
129
+ return this.database !== undefined && this.databaseReady;
130
+ }
164
131
  /**
165
132
  * Load Q-table from database on initialization
166
133
  */
167
134
  async loadQTableFromDatabase() {
168
- if (!this.database)
135
+ if (!this.isDatabaseAvailable()) {
136
+ this.logger.warn('Database not ready, skipping Q-table load');
169
137
  return;
138
+ }
170
139
  try {
171
140
  const qValues = await this.database.getAllQValues(this.agentId);
172
141
  for (const qv of qValues) {
@@ -182,47 +151,82 @@ class LearningEngine {
182
151
  }
183
152
  }
184
153
  /**
185
- * Learn from a task execution
154
+ * Learn from task execution with automatic database persistence
155
+ * This is the primary method called by BaseAgent.onPostTask()
156
+ * Consolidates learnFromExecution() and recordExperience() functionality
186
157
  */
187
158
  async learnFromExecution(task, result, feedback) {
188
159
  if (!this.config.enabled) {
189
160
  return this.createOutcome(false, 0, 0);
190
161
  }
191
- // Extract experience from task execution
192
- const experience = this.extractExperience(task, result, feedback);
193
- this.experiences.push(experience);
194
- // Calculate reward
195
- const reward = this.calculateReward(result, feedback);
196
- experience.reward = reward;
197
- // Update Q-table
198
- await this.updateQTable(experience);
199
- // Update patterns
200
- await this.updatePatterns(experience);
201
- // Detect failure patterns
202
- if (!result.success) {
203
- await this.detectFailurePattern(experience);
204
- }
205
- // Increment task count
206
- this.taskCount++;
207
- // Periodic model update
208
- if (this.taskCount % this.config.updateFrequency === 0) {
209
- await this.performBatchUpdate();
210
- }
211
- // Decay exploration rate
212
- this.decayExploration();
213
- // Calculate improvement
214
- const improvement = await this.calculateImprovement();
215
- // Emit learning event
216
- await this.emitLearningEvent('training', {
217
- experience,
218
- reward,
219
- improvement
220
- });
221
- // Save state periodically
222
- if (this.taskCount % 50 === 0) {
223
- await this.saveState();
162
+ try {
163
+ // Extract experience from task execution
164
+ const experience = this.extractExperience(task, result, feedback);
165
+ const reward = this.calculateReward(result, feedback);
166
+ experience.reward = reward;
167
+ // Store in memory (fast)
168
+ this.experiences.push(experience);
169
+ // Update Q-table (in-memory)
170
+ await this.updateQTable(experience);
171
+ // Persist to database (via adapter, batched for performance)
172
+ // Only if database is ready and persistence adapter is available
173
+ if (this.persistence && this.isDatabaseAvailable()) {
174
+ try {
175
+ await this.persistence.storeExperience(this.agentId, experience);
176
+ // Persist Q-value
177
+ const stateKey = this.stateExtractor.encodeState(experience.state);
178
+ const actionKey = this.stateExtractor.encodeAction(experience.action);
179
+ const stateActions = this.qTable.get(stateKey);
180
+ const qValue = stateActions?.get(actionKey) || 0;
181
+ await this.persistence.storeQValue(this.agentId, stateKey, actionKey, qValue);
182
+ }
183
+ catch (persistError) {
184
+ this.logger.warn('Persistence failed, continuing with in-memory learning:', persistError);
185
+ // Don't fail learning due to persistence errors
186
+ }
187
+ }
188
+ // Update patterns
189
+ await this.updatePatterns(experience);
190
+ // Detect failure patterns
191
+ if (!result.success) {
192
+ await this.detectFailurePattern(experience);
193
+ }
194
+ // Increment task count
195
+ this.taskCount++;
196
+ // Periodic batch update and snapshot
197
+ if (this.taskCount % this.config.updateFrequency === 0) {
198
+ await this.performBatchUpdate();
199
+ // Store learning snapshot only if database is ready
200
+ if (this.persistence && this.isDatabaseAvailable()) {
201
+ const stats = {
202
+ totalExperiences: this.experiences.length,
203
+ qTableSize: this.qTable.size,
204
+ recentImprovement: (await this.calculateImprovement()).improvementRate,
205
+ explorationRate: this.config.explorationRate
206
+ };
207
+ await this.persistence.storeLearningSnapshot(this.agentId, stats);
208
+ }
209
+ }
210
+ // Decay exploration rate
211
+ this.decayExploration();
212
+ // Calculate improvement
213
+ const improvement = await this.calculateImprovement();
214
+ // Emit learning event
215
+ await this.emitLearningEvent('training', {
216
+ experience,
217
+ reward,
218
+ improvement
219
+ });
220
+ // Save state periodically
221
+ if (this.taskCount % 50 === 0) {
222
+ await this.saveState();
223
+ }
224
+ return improvement;
225
+ }
226
+ catch (error) {
227
+ this.logger.error(`Learning from execution failed:`, error);
228
+ return this.createOutcome(false, 0, 0);
224
229
  }
225
- return improvement;
226
230
  }
227
231
  /**
228
232
  * Recommend best strategy for a given state
@@ -287,6 +291,16 @@ class LearningEngine {
287
291
  return Array.from(this.failurePatterns.values())
288
292
  .sort((a, b) => b.frequency - a.frequency);
289
293
  }
294
+ /**
295
+ * Flush any pending batched writes to database
296
+ * Call this before querying the database to ensure all data is persisted
297
+ */
298
+ async flush() {
299
+ if (this.persistence && this.isDatabaseAvailable()) {
300
+ await this.persistence.flush();
301
+ this.logger.debug('Flushed pending learning data to database');
302
+ }
303
+ }
290
304
  /**
291
305
  * Extract features from state for learning
292
306
  */
@@ -796,6 +810,30 @@ class LearningEngine {
796
810
  isQLearningEnabled() {
797
811
  return this.useQLearning;
798
812
  }
813
+ /**
814
+ * Cleanup resources (timers, connections)
815
+ * Call this before destroying the LearningEngine instance
816
+ *
817
+ * This method:
818
+ * 1. Disposes persistence adapter (clears flush timers)
819
+ * 2. Closes auto-created database connections to prevent open handles
820
+ * 3. Resets database ready state
821
+ */
822
+ dispose() {
823
+ // Dispose persistence adapter (clears timers)
824
+ if (this.persistence && 'dispose' in this.persistence) {
825
+ this.persistence.dispose();
826
+ }
827
+ // Close auto-created database to prevent open handles
828
+ // Only close if we created it (don't close externally-provided databases)
829
+ if (this.database && this.databaseAutoCreated) {
830
+ this.database.close().catch((err) => {
831
+ this.logger.warn(`Failed to close auto-created database during dispose: ${err.message}`);
832
+ });
833
+ this.database = undefined;
834
+ this.databaseReady = false; // Reset database ready state
835
+ }
836
+ }
799
837
  }
800
838
  exports.LearningEngine = LearningEngine;
801
839
  //# sourceMappingURL=LearningEngine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LearningEngine.js","sourceRoot":"","sources":["../../src/learning/LearningEngine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LearningEngine.js","sourceRoot":"","sources":["../../src/learning/LearningEngine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,84 @@
1
+ /**
2
+ * LearningPersistenceAdapter - Abstraction layer for learning data persistence
3
+ *
4
+ * Enables testability and flexibility in storage backends.
5
+ * Follows the Persistence Adapter Pattern for clean separation of concerns.
6
+ */
7
+ import { Database } from '../utils/Database';
8
+ import { TaskExperience } from './types';
9
+ /**
10
+ * Abstraction layer for learning data persistence
11
+ * Enables testability and flexibility in storage backends
12
+ */
13
+ export interface LearningPersistence {
14
+ /**
15
+ * Store a single learning experience
16
+ */
17
+ storeExperience(agentId: string, experience: TaskExperience): Promise<void>;
18
+ /**
19
+ * Store a Q-value update
20
+ */
21
+ storeQValue(agentId: string, stateKey: string, actionKey: string, qValue: number): Promise<void>;
22
+ /**
23
+ * Batch store multiple experiences (optimized)
24
+ */
25
+ batchStoreExperiences(agentId: string, experiences: TaskExperience[]): Promise<void>;
26
+ /**
27
+ * Load Q-table from storage
28
+ */
29
+ loadQTable(agentId: string): Promise<Map<string, Map<string, number>>>;
30
+ /**
31
+ * Store learning snapshot for analytics
32
+ */
33
+ storeLearningSnapshot(agentId: string, metrics: any): Promise<void>;
34
+ /**
35
+ * Flush any pending batched writes
36
+ */
37
+ flush(): Promise<void>;
38
+ }
39
+ /**
40
+ * Database implementation of persistence adapter
41
+ */
42
+ export declare class DatabaseLearningPersistence implements LearningPersistence {
43
+ private database;
44
+ private readonly logger;
45
+ private pendingExperiences;
46
+ private pendingQValues;
47
+ private batchSize;
48
+ private flushTimer?;
49
+ constructor(database: Database);
50
+ storeExperience(agentId: string, experience: TaskExperience): Promise<void>;
51
+ storeQValue(agentId: string, stateKey: string, actionKey: string, qValue: number): Promise<void>;
52
+ batchStoreExperiences(agentId: string, experiences: TaskExperience[]): Promise<void>;
53
+ private flushExperiences;
54
+ private flushQValues;
55
+ loadQTable(agentId: string): Promise<Map<string, Map<string, number>>>;
56
+ storeLearningSnapshot(agentId: string, metrics: any): Promise<void>;
57
+ flush(): Promise<void>;
58
+ /**
59
+ * Cleanup method - stop auto-flush timer
60
+ */
61
+ dispose(): void;
62
+ }
63
+ /**
64
+ * In-memory implementation for testing (no persistence)
65
+ */
66
+ export declare class InMemoryLearningPersistence implements LearningPersistence {
67
+ private experiences;
68
+ private qTables;
69
+ private snapshots;
70
+ storeExperience(agentId: string, experience: TaskExperience): Promise<void>;
71
+ storeQValue(agentId: string, stateKey: string, actionKey: string, qValue: number): Promise<void>;
72
+ batchStoreExperiences(agentId: string, experiences: TaskExperience[]): Promise<void>;
73
+ loadQTable(agentId: string): Promise<Map<string, Map<string, number>>>;
74
+ storeLearningSnapshot(agentId: string, metrics: any): Promise<void>;
75
+ flush(): Promise<void>;
76
+ /**
77
+ * Testing utilities
78
+ */
79
+ getExperiences(agentId: string): TaskExperience[];
80
+ getQTable(agentId: string): Map<string, Map<string, number>>;
81
+ getSnapshots(agentId: string): any[];
82
+ clear(): void;
83
+ }
84
+ //# sourceMappingURL=LearningPersistenceAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LearningPersistenceAdapter.d.ts","sourceRoot":"","sources":["../../src/learning/LearningPersistenceAdapter.ts"],"names":[],"mappings":"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"}