agentic-qe 1.4.2 → 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 (40) hide show
  1. package/.claude/agents/failing-agent.json +9 -0
  2. package/.claude/agents/test-agent.json +9 -0
  3. package/CHANGELOG.md +163 -0
  4. package/README.md +12 -11
  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/lifecycle/AgentLifecycleManager.d.ts +6 -0
  14. package/dist/agents/lifecycle/AgentLifecycleManager.d.ts.map +1 -1
  15. package/dist/agents/lifecycle/AgentLifecycleManager.js +14 -0
  16. package/dist/agents/lifecycle/AgentLifecycleManager.js.map +1 -1
  17. package/dist/cli/commands/config/set.d.ts +9 -1
  18. package/dist/cli/commands/config/set.d.ts.map +1 -1
  19. package/dist/cli/commands/config/set.js +26 -3
  20. package/dist/cli/commands/config/set.js.map +1 -1
  21. package/dist/core/memory/AgentDBManager.d.ts.map +1 -1
  22. package/dist/core/memory/AgentDBManager.js +4 -0
  23. package/dist/core/memory/AgentDBManager.js.map +1 -1
  24. package/dist/core/memory/ReasoningBankAdapter.d.ts +11 -0
  25. package/dist/core/memory/ReasoningBankAdapter.d.ts.map +1 -1
  26. package/dist/core/memory/ReasoningBankAdapter.js +15 -0
  27. package/dist/core/memory/ReasoningBankAdapter.js.map +1 -1
  28. package/dist/learning/LearningEngine.d.ts +16 -0
  29. package/dist/learning/LearningEngine.d.ts.map +1 -1
  30. package/dist/learning/LearningEngine.js +62 -11
  31. package/dist/learning/LearningEngine.js.map +1 -1
  32. package/dist/learning/__mocks__/LearningEngine.d.ts +39 -0
  33. package/dist/learning/__mocks__/LearningEngine.d.ts.map +1 -0
  34. package/dist/learning/__mocks__/LearningEngine.js +116 -0
  35. package/dist/learning/__mocks__/LearningEngine.js.map +1 -0
  36. package/dist/utils/__mocks__/Database.d.ts +68 -48
  37. package/dist/utils/__mocks__/Database.d.ts.map +1 -1
  38. package/dist/utils/__mocks__/Database.js +82 -58
  39. package/dist/utils/__mocks__/Database.js.map +1 -1
  40. package/package.json +3 -2
@@ -38,6 +38,17 @@ export declare class ReasoningBankAdapter {
38
38
  * Retrieve with reasoning
39
39
  */
40
40
  retrieveWithReasoning(queryEmbedding: number[], options: RetrievalOptions): Promise<RetrievalResult>;
41
+ /**
42
+ * Get statistics about stored patterns
43
+ */
44
+ getStats(): Promise<{
45
+ patternsCount: number;
46
+ initialized: boolean;
47
+ }>;
48
+ /**
49
+ * Insert a pattern (alias for store)
50
+ */
51
+ insertPattern(pattern: Pattern): Promise<string>;
41
52
  /**
42
53
  * Close the adapter
43
54
  */
@@ -1 +1 @@
1
- {"version":3,"file":"ReasoningBankAdapter.d.ts","sourceRoot":"","sources":["../../../src/core/memory/ReasoningBankAdapter.ts"],"names":[],"mappings":"AAEA;;;GAGG;AAEH,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,GAAG,CAAC;IACV,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC9B;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,OAAO,CAAC,EAAE,GAAG,CAAC;CACf;AAED;;GAEG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAmC;IACnD,OAAO,CAAC,aAAa,CAAS;IAE9B;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC;;OAEG;IACG,KAAK,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAU9C;;OAEG;IACG,qBAAqB,CACzB,cAAc,EAAE,MAAM,EAAE,EACxB,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,eAAe,CAAC;IAmB3B;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAK5B;;OAEG;IACH,OAAO,CAAC,UAAU;IAIlB;;OAEG;IACH,IAAI,WAAW,IAAI,OAAO,CAEzB;CACF;AAED;;GAEG;AACH,wBAAgB,8BAA8B,IAAI,oBAAoB,CAErE"}
1
+ {"version":3,"file":"ReasoningBankAdapter.d.ts","sourceRoot":"","sources":["../../../src/core/memory/ReasoningBankAdapter.ts"],"names":[],"mappings":"AAEA;;;GAGG;AAEH,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,GAAG,CAAC;IACV,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC9B;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,OAAO,CAAC,EAAE,GAAG,CAAC;CACf;AAED;;GAEG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,QAAQ,CAAmC;IACnD,OAAO,CAAC,aAAa,CAAS;IAE9B;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC;;OAEG;IACG,KAAK,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAU9C;;OAEG;IACG,qBAAqB,CACzB,cAAc,EAAE,MAAM,EAAE,EACxB,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,eAAe,CAAC;IAmB3B;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,OAAO,CAAA;KAAE,CAAC;IAO1E;;OAEG;IACG,aAAa,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAItD;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAK5B;;OAEG;IACH,OAAO,CAAC,UAAU;IAIlB;;OAEG;IACH,IAAI,WAAW,IAAI,OAAO,CAEzB;CACF;AAED;;GAEG;AACH,wBAAgB,8BAA8B,IAAI,oBAAoB,CAErE"}
@@ -47,6 +47,21 @@ class ReasoningBankAdapter {
47
47
  }
48
48
  };
49
49
  }
50
+ /**
51
+ * Get statistics about stored patterns
52
+ */
53
+ async getStats() {
54
+ return {
55
+ patternsCount: this.patterns.size,
56
+ initialized: this.isInitialized
57
+ };
58
+ }
59
+ /**
60
+ * Insert a pattern (alias for store)
61
+ */
62
+ async insertPattern(pattern) {
63
+ return this.store(pattern);
64
+ }
50
65
  /**
51
66
  * Close the adapter
52
67
  */
@@ -1 +1 @@
1
- {"version":3,"file":"ReasoningBankAdapter.js","sourceRoot":"","sources":["../../../src/core/memory/ReasoningBankAdapter.ts"],"names":[],"mappings":";;;AA0GA,wEAEC;AA5GD,iEAA2D;AA4B3D;;GAEG;AACH,MAAa,oBAAoB;IAAjC;QACU,aAAQ,GAAyB,IAAI,GAAG,EAAE,CAAC;QAC3C,kBAAa,GAAG,KAAK,CAAC;IAoEhC,CAAC;IAlEC;;OAEG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CAAC,OAAgB;QAC1B,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QAC3C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;QAC1C,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,qBAAqB,CACzB,cAAwB,EACxB,OAAyB;QAEzB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC;QAE/B,0CAA0C;QAC1C,OAAO;YACL,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;YACjC,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;YACjC,OAAO,EAAE;gBACP,KAAK,EAAE,YAAY;gBACnB,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC;aAC9C;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;IAED;;OAEG;IACK,UAAU;QAChB,OAAO,WAAW,IAAI,CAAC,GAAG,EAAE,IAAI,8BAAY,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;CACF;AAtED,oDAsEC;AAED;;GAEG;AACH,SAAgB,8BAA8B;IAC5C,OAAO,IAAI,oBAAoB,EAAE,CAAC;AACpC,CAAC"}
1
+ {"version":3,"file":"ReasoningBankAdapter.js","sourceRoot":"","sources":["../../../src/core/memory/ReasoningBankAdapter.ts"],"names":[],"mappings":";;;AA2HA,wEAEC;AA7HD,iEAA2D;AA4B3D;;GAEG;AACH,MAAa,oBAAoB;IAAjC;QACU,aAAQ,GAAyB,IAAI,GAAG,EAAE,CAAC;QAC3C,kBAAa,GAAG,KAAK,CAAC;IAqFhC,CAAC;IAnFC;;OAEG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CAAC,OAAgB;QAC1B,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QAC3C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;QAC1C,OAAO,EAAE,CAAC;IACZ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,qBAAqB,CACzB,cAAwB,EACxB,OAAyB;QAEzB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC;QAE/B,0CAA0C;QAC1C,OAAO;YACL,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;YACjC,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC;YACjC,OAAO,EAAE;gBACP,KAAK,EAAE,YAAY;gBACnB,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC;aAC9C;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ;QACZ,OAAO;YACL,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;YACjC,WAAW,EAAE,IAAI,CAAC,aAAa;SAChC,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,OAAgB;QAClC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;IAED;;OAEG;IACK,UAAU;QAChB,OAAO,WAAW,IAAI,CAAC,GAAG,EAAE,IAAI,8BAAY,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;CACF;AAvFD,oDAuFC;AAED;;GAEG;AACH,SAAgB,8BAA8B;IAC5C,OAAO,IAAI,oBAAoB,EAAE,CAAC;AACpC,CAAC"}
@@ -29,6 +29,8 @@ export declare class LearningEngine {
29
29
  private readonly rewardCalculator;
30
30
  private database?;
31
31
  private persistence?;
32
+ private databaseAutoCreated;
33
+ private databaseReady;
32
34
  constructor(agentId: string, memoryStore: SwarmMemoryManager, config?: Partial<LearningConfig>, database?: Database, persistence?: LearningPersistence);
33
35
  /**
34
36
  * Initialize the learning engine
@@ -42,6 +44,15 @@ export declare class LearningEngine {
42
44
  * Redirects to learnFromExecution() for consolidated implementation
43
45
  */
44
46
  recordExperience(task: any, result: TaskResult, feedback?: LearningFeedback): Promise<void>;
47
+ /**
48
+ * Ensure database is initialized before operations
49
+ * Throws error if database is required but not ready
50
+ */
51
+ private ensureDatabaseReady;
52
+ /**
53
+ * Check if database is available and ready for operations
54
+ */
55
+ private isDatabaseAvailable;
45
56
  /**
46
57
  * Load Q-table from database on initialization
47
58
  */
@@ -218,6 +229,11 @@ export declare class LearningEngine {
218
229
  /**
219
230
  * Cleanup resources (timers, connections)
220
231
  * Call this before destroying the LearningEngine instance
232
+ *
233
+ * This method:
234
+ * 1. Disposes persistence adapter (clears flush timers)
235
+ * 2. Closes auto-created database connections to prevent open handles
236
+ * 3. Resets database ready state
221
237
  */
222
238
  dispose(): void;
223
239
  }
@@ -1 +1 @@
1
- {"version":3,"file":"LearningEngine.d.ts","sourceRoot":"","sources":["../../src/learning/LearningEngine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LearningEngine.d.ts","sourceRoot":"","sources":["../../src/learning/LearningEngine.ts"],"names":[],"mappings":"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"}
@@ -36,6 +36,8 @@ const DEFAULT_CONFIG = {
36
36
  */
37
37
  class LearningEngine {
38
38
  constructor(agentId, memoryStore, config = {}, database, persistence) {
39
+ this.databaseAutoCreated = false;
40
+ this.databaseReady = false; // Track database initialization state
39
41
  this.logger = Logger_1.Logger.getInstance();
40
42
  this.agentId = agentId;
41
43
  this.memoryStore = memoryStore;
@@ -48,20 +50,27 @@ class LearningEngine {
48
50
  this.taskCount = 0;
49
51
  this.stateExtractor = new StateExtractor_1.StateExtractor();
50
52
  this.rewardCalculator = new RewardCalculator_1.RewardCalculator();
51
- // Initialize persistence adapter
53
+ // Store database reference but don't create persistence adapter yet
54
+ // Persistence adapter creation happens in initialize() after database is ready
52
55
  if (persistence) {
53
56
  this.persistence = persistence;
54
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
+ }
55
63
  }
56
64
  else if (database) {
57
- this.persistence = new LearningPersistenceAdapter_1.DatabaseLearningPersistence(database);
65
+ // Database provided but no persistence adapter
66
+ // We'll create the adapter in initialize() after database init
58
67
  this.database = database;
59
68
  }
60
69
  else if (this.config.enabled && !database) {
61
- // Auto-initialize database and adapter
70
+ // Auto-initialize database (adapter creation deferred to initialize())
62
71
  const dbPath = process.env.AQE_DB_PATH || '.agentic-qe/memory.db';
63
72
  this.database = new Database_1.Database(dbPath);
64
- this.persistence = new LearningPersistenceAdapter_1.DatabaseLearningPersistence(this.database);
73
+ this.databaseAutoCreated = true; // Track that we created this database
65
74
  this.logger.info(`Auto-initialized learning database at ${dbPath}`);
66
75
  }
67
76
  }
@@ -70,14 +79,21 @@ class LearningEngine {
70
79
  */
71
80
  async initialize() {
72
81
  this.logger.info(`Initializing LearningEngine for agent ${this.agentId}`);
73
- // Initialize database if auto-created
82
+ // Initialize database if auto-created or provided
74
83
  if (this.database) {
75
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
+ }
76
92
  }
77
93
  // Load previous learning state if exists
78
94
  await this.loadState();
79
- // Load Q-values from database if available
80
- if (this.database) {
95
+ // Load Q-values from database if available (only if database is ready)
96
+ if (this.database && this.databaseReady) {
81
97
  await this.loadQTableFromDatabase();
82
98
  }
83
99
  // Store config in memory
@@ -96,12 +112,30 @@ class LearningEngine {
96
112
  // Redirect to unified method
97
113
  await this.learnFromExecution(task, result, feedback);
98
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.`);
123
+ }
124
+ }
125
+ /**
126
+ * Check if database is available and ready for operations
127
+ */
128
+ isDatabaseAvailable() {
129
+ return this.database !== undefined && this.databaseReady;
130
+ }
99
131
  /**
100
132
  * Load Q-table from database on initialization
101
133
  */
102
134
  async loadQTableFromDatabase() {
103
- if (!this.database)
135
+ if (!this.isDatabaseAvailable()) {
136
+ this.logger.warn('Database not ready, skipping Q-table load');
104
137
  return;
138
+ }
105
139
  try {
106
140
  const qValues = await this.database.getAllQValues(this.agentId);
107
141
  for (const qv of qValues) {
@@ -135,7 +169,8 @@ class LearningEngine {
135
169
  // Update Q-table (in-memory)
136
170
  await this.updateQTable(experience);
137
171
  // Persist to database (via adapter, batched for performance)
138
- if (this.persistence) {
172
+ // Only if database is ready and persistence adapter is available
173
+ if (this.persistence && this.isDatabaseAvailable()) {
139
174
  try {
140
175
  await this.persistence.storeExperience(this.agentId, experience);
141
176
  // Persist Q-value
@@ -161,7 +196,8 @@ class LearningEngine {
161
196
  // Periodic batch update and snapshot
162
197
  if (this.taskCount % this.config.updateFrequency === 0) {
163
198
  await this.performBatchUpdate();
164
- if (this.persistence) {
199
+ // Store learning snapshot only if database is ready
200
+ if (this.persistence && this.isDatabaseAvailable()) {
165
201
  const stats = {
166
202
  totalExperiences: this.experiences.length,
167
203
  qTableSize: this.qTable.size,
@@ -260,7 +296,7 @@ class LearningEngine {
260
296
  * Call this before querying the database to ensure all data is persisted
261
297
  */
262
298
  async flush() {
263
- if (this.persistence) {
299
+ if (this.persistence && this.isDatabaseAvailable()) {
264
300
  await this.persistence.flush();
265
301
  this.logger.debug('Flushed pending learning data to database');
266
302
  }
@@ -777,11 +813,26 @@ class LearningEngine {
777
813
  /**
778
814
  * Cleanup resources (timers, connections)
779
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
780
821
  */
781
822
  dispose() {
823
+ // Dispose persistence adapter (clears timers)
782
824
  if (this.persistence && 'dispose' in this.persistence) {
783
825
  this.persistence.dispose();
784
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
+ }
785
836
  }
786
837
  }
787
838
  exports.LearningEngine = LearningEngine;
@@ -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,39 @@
1
+ /**
2
+ * Mock LearningEngine for Testing
3
+ *
4
+ * Provides a mock implementation of LearningEngine that avoids
5
+ * database initialization and provides consistent mock responses.
6
+ */
7
+ import { jest } from '@jest/globals';
8
+ /**
9
+ * Mock LearningEngine class
10
+ */
11
+ export declare class LearningEngine {
12
+ initialize: jest.Mock<() => Promise<void>>;
13
+ learn: jest.Mock;
14
+ getStatus: jest.Mock;
15
+ getLearnedPatterns: jest.Mock;
16
+ recommendStrategy: jest.Mock;
17
+ dispose: jest.Mock;
18
+ recordExperience: jest.Mock;
19
+ getRecommendations: jest.Mock;
20
+ updateQValue: jest.Mock;
21
+ isEnabled: jest.Mock;
22
+ setEnabled: jest.Mock;
23
+ getPatterns: jest.Mock;
24
+ getFailurePatterns: jest.Mock;
25
+ flush: jest.Mock;
26
+ getExplorationRate: jest.Mock;
27
+ getTotalExperiences: jest.Mock;
28
+ enableQLearning: jest.Mock;
29
+ disableQLearning: jest.Mock;
30
+ isQLearningEnabled: jest.Mock;
31
+ getQLearningStats: jest.Mock;
32
+ learnFromExecution: jest.Mock;
33
+ learnFromExperience: jest.Mock;
34
+ selectActionWithPolicy: jest.Mock;
35
+ constructor(agentId?: string, memoryStore?: any, config?: any);
36
+ static _resetAllMocks(): void;
37
+ }
38
+ export default LearningEngine;
39
+ //# sourceMappingURL=LearningEngine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LearningEngine.d.ts","sourceRoot":"","sources":["../../../src/learning/__mocks__/LearningEngine.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAgDrC;;GAEG;AACH,qBAAa,cAAc;IAClB,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3C,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC;IACjB,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC;IACrB,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC;IAC9B,iBAAiB,EAAE,IAAI,CAAC,IAAI,CAAC;IAC7B,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC;IACnB,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC;IAC5B,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC;IAC9B,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC;IACxB,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC;IACrB,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC;IACtB,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC;IACvB,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC;IAC9B,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC;IACjB,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC;IAC9B,mBAAmB,EAAE,IAAI,CAAC,IAAI,CAAC;IAC/B,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC;IAC3B,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC;IAC5B,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC;IAC9B,iBAAiB,EAAE,IAAI,CAAC,IAAI,CAAC;IAC7B,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC;IAC9B,mBAAmB,EAAE,IAAI,CAAC,IAAI,CAAC;IAC/B,sBAAsB,EAAE,IAAI,CAAC,IAAI,CAAC;gBAE7B,OAAO,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,GAAG;IA+C7D,MAAM,CAAC,cAAc,IAAI,IAAI;CAO9B;AAED,eAAe,cAAc,CAAC"}
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+ /**
3
+ * Mock LearningEngine for Testing
4
+ *
5
+ * Provides a mock implementation of LearningEngine that avoids
6
+ * database initialization and provides consistent mock responses.
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.LearningEngine = void 0;
10
+ const globals_1 = require("@jest/globals");
11
+ // Shared mock methods that all instances use
12
+ const sharedMockMethods = {
13
+ initialize: globals_1.jest.fn().mockResolvedValue(undefined),
14
+ learn: globals_1.jest.fn().mockResolvedValue(undefined),
15
+ getStatus: globals_1.jest.fn().mockReturnValue({
16
+ totalExperiences: 0,
17
+ averageReward: 0,
18
+ explorationRate: 1.0,
19
+ learningRate: 0.1,
20
+ discountFactor: 0.9
21
+ }),
22
+ getLearnedPatterns: globals_1.jest.fn().mockReturnValue([]),
23
+ recommendStrategy: globals_1.jest.fn().mockResolvedValue({
24
+ strategy: 'default',
25
+ confidence: 0.5,
26
+ reasoning: 'Default strategy'
27
+ }),
28
+ dispose: globals_1.jest.fn().mockResolvedValue(undefined),
29
+ recordExperience: globals_1.jest.fn().mockResolvedValue(undefined),
30
+ getRecommendations: globals_1.jest.fn().mockResolvedValue([]),
31
+ updateQValue: globals_1.jest.fn().mockResolvedValue(undefined),
32
+ // Missing methods found in BaseAgent usage
33
+ isEnabled: globals_1.jest.fn().mockReturnValue(true),
34
+ setEnabled: globals_1.jest.fn().mockReturnValue(undefined),
35
+ getPatterns: globals_1.jest.fn().mockReturnValue([]),
36
+ getFailurePatterns: globals_1.jest.fn().mockReturnValue([]),
37
+ flush: globals_1.jest.fn().mockResolvedValue(undefined),
38
+ getExplorationRate: globals_1.jest.fn().mockReturnValue(1.0),
39
+ getTotalExperiences: globals_1.jest.fn().mockReturnValue(0),
40
+ enableQLearning: globals_1.jest.fn().mockReturnValue(undefined),
41
+ disableQLearning: globals_1.jest.fn().mockReturnValue(undefined),
42
+ isQLearningEnabled: globals_1.jest.fn().mockReturnValue(false),
43
+ getQLearningStats: globals_1.jest.fn().mockReturnValue({
44
+ totalExperiences: 0,
45
+ averageReward: 0,
46
+ qTableSize: 0
47
+ }),
48
+ learnFromExecution: globals_1.jest.fn().mockResolvedValue({
49
+ success: true,
50
+ patternsLearned: 0,
51
+ qValuesUpdated: 0
52
+ }),
53
+ learnFromExperience: globals_1.jest.fn().mockResolvedValue(undefined),
54
+ selectActionWithPolicy: globals_1.jest.fn().mockResolvedValue({ type: 'default-action', params: {} })
55
+ };
56
+ /**
57
+ * Mock LearningEngine class
58
+ */
59
+ class LearningEngine {
60
+ constructor(agentId, memoryStore, config) {
61
+ // Create fresh mocks for each instance to survive Jest's resetMocks: true
62
+ // This ensures mock return values are preserved across test runs
63
+ this.initialize = globals_1.jest.fn().mockResolvedValue(undefined);
64
+ this.learn = globals_1.jest.fn().mockResolvedValue(undefined);
65
+ this.getStatus = globals_1.jest.fn().mockReturnValue({
66
+ totalExperiences: 0,
67
+ averageReward: 0,
68
+ explorationRate: 1.0,
69
+ learningRate: 0.1,
70
+ discountFactor: 0.9
71
+ });
72
+ this.getLearnedPatterns = globals_1.jest.fn().mockReturnValue([]);
73
+ this.recommendStrategy = globals_1.jest.fn().mockResolvedValue({
74
+ strategy: 'default',
75
+ confidence: 0.5,
76
+ reasoning: 'Default strategy'
77
+ });
78
+ this.dispose = globals_1.jest.fn().mockResolvedValue(undefined);
79
+ this.recordExperience = globals_1.jest.fn().mockResolvedValue(undefined);
80
+ this.getRecommendations = globals_1.jest.fn().mockResolvedValue([]);
81
+ this.updateQValue = globals_1.jest.fn().mockResolvedValue(undefined);
82
+ this.isEnabled = globals_1.jest.fn().mockReturnValue(true);
83
+ this.setEnabled = globals_1.jest.fn().mockReturnValue(undefined);
84
+ this.getPatterns = globals_1.jest.fn().mockReturnValue([]);
85
+ this.getFailurePatterns = globals_1.jest.fn().mockReturnValue([]);
86
+ this.flush = globals_1.jest.fn().mockResolvedValue(undefined);
87
+ this.getExplorationRate = globals_1.jest.fn().mockReturnValue(1.0);
88
+ this.getTotalExperiences = globals_1.jest.fn().mockReturnValue(0);
89
+ this.enableQLearning = globals_1.jest.fn().mockReturnValue(undefined);
90
+ this.disableQLearning = globals_1.jest.fn().mockReturnValue(undefined);
91
+ this.isQLearningEnabled = globals_1.jest.fn().mockReturnValue(false);
92
+ this.getQLearningStats = globals_1.jest.fn().mockReturnValue({
93
+ totalExperiences: 0,
94
+ averageReward: 0,
95
+ qTableSize: 0
96
+ });
97
+ this.learnFromExecution = globals_1.jest.fn().mockResolvedValue({
98
+ success: true,
99
+ patternsLearned: 0,
100
+ qValuesUpdated: 0
101
+ });
102
+ this.learnFromExperience = globals_1.jest.fn().mockResolvedValue(undefined);
103
+ this.selectActionWithPolicy = globals_1.jest.fn().mockResolvedValue({ type: 'default-action', params: {} });
104
+ }
105
+ // Test helper to reset all mocks
106
+ static _resetAllMocks() {
107
+ Object.values(sharedMockMethods).forEach(mockFn => {
108
+ if (typeof mockFn === 'function' && 'mockClear' in mockFn) {
109
+ mockFn.mockClear();
110
+ }
111
+ });
112
+ }
113
+ }
114
+ exports.LearningEngine = LearningEngine;
115
+ exports.default = LearningEngine;
116
+ //# sourceMappingURL=LearningEngine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LearningEngine.js","sourceRoot":"","sources":["../../../src/learning/__mocks__/LearningEngine.ts"],"names":[],"mappings":"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"}