agentic-qe 1.5.0 → 1.6.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 (161) hide show
  1. package/.claude/agents/.claude-flow/metrics/agent-metrics.json +1 -0
  2. package/.claude/agents/.claude-flow/metrics/performance.json +87 -0
  3. package/.claude/agents/.claude-flow/metrics/task-metrics.json +10 -0
  4. package/.claude/agents/qe-api-contract-validator.md +118 -0
  5. package/.claude/agents/qe-chaos-engineer.md +320 -5
  6. package/.claude/agents/qe-code-complexity.md +360 -0
  7. package/.claude/agents/qe-coverage-analyzer.md +112 -0
  8. package/.claude/agents/qe-deployment-readiness.md +322 -6
  9. package/.claude/agents/qe-flaky-test-hunter.md +115 -0
  10. package/.claude/agents/qe-fleet-commander.md +319 -6
  11. package/.claude/agents/qe-performance-tester.md +234 -0
  12. package/.claude/agents/qe-production-intelligence.md +114 -0
  13. package/.claude/agents/qe-quality-analyzer.md +126 -0
  14. package/.claude/agents/qe-quality-gate.md +119 -0
  15. package/.claude/agents/qe-regression-risk-analyzer.md +114 -0
  16. package/.claude/agents/qe-requirements-validator.md +114 -0
  17. package/.claude/agents/qe-security-scanner.md +118 -0
  18. package/.claude/agents/qe-test-data-architect.md +234 -0
  19. package/.claude/agents/qe-test-executor.md +115 -0
  20. package/.claude/agents/qe-test-generator.md +114 -0
  21. package/.claude/agents/qe-visual-tester.md +305 -6
  22. package/.claude/agents/subagents/qe-code-reviewer.md +0 -4
  23. package/.claude/agents/subagents/qe-data-generator.md +0 -16
  24. package/.claude/agents/subagents/qe-integration-tester.md +0 -17
  25. package/.claude/agents/subagents/qe-performance-validator.md +0 -16
  26. package/.claude/agents/subagents/qe-security-auditor.md +0 -16
  27. package/.claude/agents/subagents/qe-test-implementer.md +0 -17
  28. package/.claude/agents/subagents/qe-test-refactorer.md +0 -17
  29. package/.claude/agents/subagents/qe-test-writer.md +0 -19
  30. package/CHANGELOG.md +290 -0
  31. package/README.md +37 -5
  32. package/dist/adapters/MemoryStoreAdapter.d.ts +38 -0
  33. package/dist/adapters/MemoryStoreAdapter.d.ts.map +1 -1
  34. package/dist/adapters/MemoryStoreAdapter.js +22 -0
  35. package/dist/adapters/MemoryStoreAdapter.js.map +1 -1
  36. package/dist/agents/BaseAgent.d.ts.map +1 -1
  37. package/dist/agents/BaseAgent.js +13 -0
  38. package/dist/agents/BaseAgent.js.map +1 -1
  39. package/dist/cli/commands/init.d.ts.map +1 -1
  40. package/dist/cli/commands/init.js +32 -1
  41. package/dist/cli/commands/init.js.map +1 -1
  42. package/dist/core/memory/AgentDBService.d.ts +33 -28
  43. package/dist/core/memory/AgentDBService.d.ts.map +1 -1
  44. package/dist/core/memory/AgentDBService.js +233 -290
  45. package/dist/core/memory/AgentDBService.js.map +1 -1
  46. package/dist/core/memory/EnhancedAgentDBService.d.ts.map +1 -1
  47. package/dist/core/memory/EnhancedAgentDBService.js +5 -3
  48. package/dist/core/memory/EnhancedAgentDBService.js.map +1 -1
  49. package/dist/core/memory/RealAgentDBAdapter.d.ts +9 -2
  50. package/dist/core/memory/RealAgentDBAdapter.d.ts.map +1 -1
  51. package/dist/core/memory/RealAgentDBAdapter.js +126 -100
  52. package/dist/core/memory/RealAgentDBAdapter.js.map +1 -1
  53. package/dist/core/memory/SwarmMemoryManager.d.ts +58 -0
  54. package/dist/core/memory/SwarmMemoryManager.d.ts.map +1 -1
  55. package/dist/core/memory/SwarmMemoryManager.js +176 -0
  56. package/dist/core/memory/SwarmMemoryManager.js.map +1 -1
  57. package/dist/core/memory/index.d.ts.map +1 -1
  58. package/dist/core/memory/index.js +2 -1
  59. package/dist/core/memory/index.js.map +1 -1
  60. package/dist/learning/LearningEngine.d.ts +14 -27
  61. package/dist/learning/LearningEngine.d.ts.map +1 -1
  62. package/dist/learning/LearningEngine.js +57 -119
  63. package/dist/learning/LearningEngine.js.map +1 -1
  64. package/dist/learning/index.d.ts +0 -1
  65. package/dist/learning/index.d.ts.map +1 -1
  66. package/dist/learning/index.js +0 -1
  67. package/dist/learning/index.js.map +1 -1
  68. package/dist/mcp/handlers/learning/learning-query.d.ts +34 -0
  69. package/dist/mcp/handlers/learning/learning-query.d.ts.map +1 -0
  70. package/dist/mcp/handlers/learning/learning-query.js +156 -0
  71. package/dist/mcp/handlers/learning/learning-query.js.map +1 -0
  72. package/dist/mcp/handlers/learning/learning-store-experience.d.ts +30 -0
  73. package/dist/mcp/handlers/learning/learning-store-experience.d.ts.map +1 -0
  74. package/dist/mcp/handlers/learning/learning-store-experience.js +86 -0
  75. package/dist/mcp/handlers/learning/learning-store-experience.js.map +1 -0
  76. package/dist/mcp/handlers/learning/learning-store-pattern.d.ts +31 -0
  77. package/dist/mcp/handlers/learning/learning-store-pattern.d.ts.map +1 -0
  78. package/dist/mcp/handlers/learning/learning-store-pattern.js +126 -0
  79. package/dist/mcp/handlers/learning/learning-store-pattern.js.map +1 -0
  80. package/dist/mcp/handlers/learning/learning-store-qvalue.d.ts +30 -0
  81. package/dist/mcp/handlers/learning/learning-store-qvalue.d.ts.map +1 -0
  82. package/dist/mcp/handlers/learning/learning-store-qvalue.js +100 -0
  83. package/dist/mcp/handlers/learning/learning-store-qvalue.js.map +1 -0
  84. package/dist/mcp/server.d.ts +11 -0
  85. package/dist/mcp/server.d.ts.map +1 -1
  86. package/dist/mcp/server.js +98 -1
  87. package/dist/mcp/server.js.map +1 -1
  88. package/dist/mcp/services/LearningEventListener.d.ts +123 -0
  89. package/dist/mcp/services/LearningEventListener.d.ts.map +1 -0
  90. package/dist/mcp/services/LearningEventListener.js +322 -0
  91. package/dist/mcp/services/LearningEventListener.js.map +1 -0
  92. package/dist/mcp/tools/qe/security/scan-comprehensive.d.ts.map +1 -1
  93. package/dist/mcp/tools/qe/security/scan-comprehensive.js +40 -18
  94. package/dist/mcp/tools/qe/security/scan-comprehensive.js.map +1 -1
  95. package/dist/mcp/tools.d.ts +4 -0
  96. package/dist/mcp/tools.d.ts.map +1 -1
  97. package/dist/mcp/tools.js +179 -0
  98. package/dist/mcp/tools.js.map +1 -1
  99. package/dist/types/memory-interfaces.d.ts +71 -0
  100. package/dist/types/memory-interfaces.d.ts.map +1 -1
  101. package/dist/utils/Calculator.d.ts +35 -0
  102. package/dist/utils/Calculator.d.ts.map +1 -0
  103. package/dist/utils/Calculator.js +50 -0
  104. package/dist/utils/Calculator.js.map +1 -0
  105. package/dist/utils/Logger.d.ts.map +1 -1
  106. package/dist/utils/Logger.js +4 -1
  107. package/dist/utils/Logger.js.map +1 -1
  108. package/package.json +7 -5
  109. package/.claude/agents/qe-api-contract-validator.md.backup +0 -1148
  110. package/.claude/agents/qe-api-contract-validator.md.backup-20251107-134747 +0 -1148
  111. package/.claude/agents/qe-api-contract-validator.md.backup-phase2-20251107-140039 +0 -1123
  112. package/.claude/agents/qe-chaos-engineer.md.backup +0 -808
  113. package/.claude/agents/qe-chaos-engineer.md.backup-20251107-134747 +0 -808
  114. package/.claude/agents/qe-chaos-engineer.md.backup-phase2-20251107-140039 +0 -787
  115. package/.claude/agents/qe-code-complexity.md.backup +0 -291
  116. package/.claude/agents/qe-code-complexity.md.backup-20251107-134747 +0 -291
  117. package/.claude/agents/qe-code-complexity.md.backup-phase2-20251107-140039 +0 -286
  118. package/.claude/agents/qe-coverage-analyzer.md.backup +0 -467
  119. package/.claude/agents/qe-coverage-analyzer.md.backup-20251107-134747 +0 -467
  120. package/.claude/agents/qe-coverage-analyzer.md.backup-phase2-20251107-140039 +0 -438
  121. package/.claude/agents/qe-deployment-readiness.md.backup +0 -1166
  122. package/.claude/agents/qe-deployment-readiness.md.backup-20251107-134747 +0 -1166
  123. package/.claude/agents/qe-deployment-readiness.md.backup-phase2-20251107-140039 +0 -1140
  124. package/.claude/agents/qe-flaky-test-hunter.md.backup +0 -1195
  125. package/.claude/agents/qe-flaky-test-hunter.md.backup-20251107-134747 +0 -1195
  126. package/.claude/agents/qe-flaky-test-hunter.md.backup-phase2-20251107-140039 +0 -1162
  127. package/.claude/agents/qe-fleet-commander.md.backup +0 -718
  128. package/.claude/agents/qe-fleet-commander.md.backup-20251107-134747 +0 -718
  129. package/.claude/agents/qe-fleet-commander.md.backup-phase2-20251107-140039 +0 -697
  130. package/.claude/agents/qe-performance-tester.md.backup +0 -428
  131. package/.claude/agents/qe-performance-tester.md.backup-20251107-134747 +0 -428
  132. package/.claude/agents/qe-performance-tester.md.backup-phase2-20251107-140039 +0 -372
  133. package/.claude/agents/qe-production-intelligence.md.backup +0 -1219
  134. package/.claude/agents/qe-production-intelligence.md.backup-20251107-134747 +0 -1219
  135. package/.claude/agents/qe-production-intelligence.md.backup-phase2-20251107-140039 +0 -1194
  136. package/.claude/agents/qe-quality-analyzer.md.backup +0 -425
  137. package/.claude/agents/qe-quality-analyzer.md.backup-20251107-134747 +0 -425
  138. package/.claude/agents/qe-quality-analyzer.md.backup-phase2-20251107-140039 +0 -394
  139. package/.claude/agents/qe-quality-gate.md.backup +0 -446
  140. package/.claude/agents/qe-quality-gate.md.backup-20251107-134747 +0 -446
  141. package/.claude/agents/qe-quality-gate.md.backup-phase2-20251107-140039 +0 -415
  142. package/.claude/agents/qe-regression-risk-analyzer.md.backup +0 -1009
  143. package/.claude/agents/qe-regression-risk-analyzer.md.backup-20251107-134747 +0 -1009
  144. package/.claude/agents/qe-regression-risk-analyzer.md.backup-phase2-20251107-140039 +0 -984
  145. package/.claude/agents/qe-requirements-validator.md.backup +0 -748
  146. package/.claude/agents/qe-requirements-validator.md.backup-20251107-134747 +0 -748
  147. package/.claude/agents/qe-requirements-validator.md.backup-phase2-20251107-140039 +0 -723
  148. package/.claude/agents/qe-security-scanner.md.backup +0 -634
  149. package/.claude/agents/qe-security-scanner.md.backup-20251107-134747 +0 -634
  150. package/.claude/agents/qe-security-scanner.md.backup-phase2-20251107-140039 +0 -573
  151. package/.claude/agents/qe-test-data-architect.md.backup +0 -1064
  152. package/.claude/agents/qe-test-data-architect.md.backup-20251107-134747 +0 -1064
  153. package/.claude/agents/qe-test-data-architect.md.backup-phase2-20251107-140039 +0 -1040
  154. package/.claude/agents/qe-test-executor.md.backup +0 -389
  155. package/.claude/agents/qe-test-executor.md.backup-20251107-134747 +0 -389
  156. package/.claude/agents/qe-test-executor.md.backup-phase2-20251107-140039 +0 -369
  157. package/.claude/agents/qe-test-generator.md.backup +0 -997
  158. package/.claude/agents/qe-test-generator.md.backup-20251107-134747 +0 -997
  159. package/.claude/agents/qe-visual-tester.md.backup +0 -777
  160. package/.claude/agents/qe-visual-tester.md.backup-20251107-134747 +0 -777
  161. package/.claude/agents/qe-visual-tester.md.backup-phase2-20251107-140039 +0 -756
@@ -1,286 +0,0 @@
1
- ---
2
- name: qe-code-complexity
3
- description: Educational code complexity analyzer demonstrating the Agentic QE Fleet architecture
4
- ---
5
-
6
- # QE Code Complexity Analyzer
7
-
8
- ## Overview
9
-
10
- The Code Complexity Analyzer is an **educational agent** that demonstrates the complete Agentic QE Fleet architecture. It analyzes code complexity metrics and provides AI-powered refactoring recommendations.
11
-
12
- **Purpose**: Learning tool to understand how agents work in the AQE fleet.
13
-
14
- ## Capabilities
15
-
16
- ### 1. Complexity Analysis
17
- - **Cyclomatic Complexity**: Measures decision point density
18
- - **Cognitive Complexity**: Accounts for nesting and control flow
19
- - **File Size Analysis**: Identifies overly large files
20
- - **Function Metrics**: Tracks function count and average complexity
21
-
22
- ### 2. Refactoring Recommendations
23
- - AI-powered suggestions based on detected patterns
24
- - Severity-based prioritization (low, medium, high, critical)
25
- - Specific actionable advice (e.g., "Extract Method", "Reduce Nesting")
26
-
27
- ### 3. Quality Scoring
28
- - Holistic quality score (0-100)
29
- - Issue-based deductions
30
- - Helps prioritize refactoring efforts
31
-
32
- ## Key Learning Concepts
33
-
34
- ### BaseAgent Pattern
35
- ```typescript
36
- // All agents extend BaseAgent
37
- export class CodeComplexityAnalyzerAgent extends BaseAgent {
38
- // Define capabilities in constructor
39
- constructor(config: CodeComplexityConfig) {
40
- super({
41
- ...config,
42
- type: QEAgentType.QUALITY_ANALYZER,
43
- capabilities: [/* ... */]
44
- });
45
- }
46
- }
47
- ```
48
-
49
- ### Lifecycle Hooks
50
- ```typescript
51
- // Pre-task: Load context before work
52
- protected async onPreTask(data: { assignment: any }): Promise<void> {
53
- const history = await this.memoryStore.retrieve('aqe/complexity/.../history');
54
- // Use historical data to improve analysis
55
- }
56
-
57
- // Post-task: Store results and coordinate
58
- protected async onPostTask(data: PostTaskData): Promise<void> {
59
- await this.memoryStore.store('aqe/complexity/.../results', data.result);
60
- this.eventBus.emit('complexity:analysis:completed', { ... });
61
- }
62
-
63
- // Error handling: Learn from failures
64
- protected async onTaskError(data: { assignment: any; error: Error }): Promise<void> {
65
- await this.memoryStore.store('aqe/complexity/.../errors/...', { ... });
66
- }
67
- ```
68
-
69
- ### Memory System
70
- ```typescript
71
- // Store results for other agents
72
- await this.memoryStore.store(
73
- 'aqe/complexity/${agentId}/latest-result',
74
- result,
75
- 86400 // 24 hour TTL
76
- );
77
-
78
- // Retrieve for coordination
79
- const previous = await this.memoryStore.retrieve(
80
- 'aqe/complexity/${agentId}/history'
81
- );
82
- ```
83
-
84
- ### Event-Driven Architecture
85
- ```typescript
86
- // Emit events for coordination
87
- this.eventBus.emit('complexity:analysis:completed', {
88
- agentId: this.agentId,
89
- result: analysisResult,
90
- timestamp: new Date()
91
- });
92
-
93
- // Other agents can subscribe
94
- eventBus.on('complexity:analysis:completed', (event) => {
95
- // Test generator could prioritize complex code
96
- // Coverage analyzer could focus on complex functions
97
- });
98
- ```
99
-
100
- ## Usage Examples
101
-
102
- ### From Claude Code CLI
103
-
104
- ```bash
105
- # Analyze a single file
106
- claude "Use qe-code-complexity to analyze src/services/order-processor.ts"
107
-
108
- # Analyze multiple files
109
- claude "Run complexity analysis on all files in src/services/"
110
-
111
- # Get refactoring recommendations
112
- claude "Analyze src/utils/validator.ts and suggest refactorings"
113
- ```
114
-
115
- ### Via TypeScript
116
-
117
- ```typescript
118
- import { CodeComplexityAnalyzerAgent } from './agents/CodeComplexityAnalyzerAgent';
119
-
120
- // Initialize agent
121
- const agent = new CodeComplexityAnalyzerAgent({
122
- type: QEAgentType.QUALITY_ANALYZER,
123
- capabilities: [],
124
- context: { /* ... */ },
125
- memoryStore,
126
- eventBus,
127
- thresholds: {
128
- cyclomaticComplexity: 10,
129
- cognitiveComplexity: 15,
130
- linesOfCode: 300
131
- },
132
- enableRecommendations: true
133
- });
134
-
135
- await agent.initialize();
136
-
137
- // Analyze code
138
- const result = await agent.analyzeComplexity({
139
- files: [{
140
- path: 'complex.ts',
141
- content: sourceCode,
142
- language: 'typescript'
143
- }]
144
- });
145
-
146
- console.log('Quality Score:', result.score);
147
- console.log('Issues:', result.issues);
148
- console.log('Recommendations:', result.recommendations);
149
- ```
150
-
151
- ## Configuration
152
-
153
- ### Thresholds
154
-
155
- Customize complexity thresholds:
156
-
157
- ```typescript
158
- {
159
- thresholds: {
160
- cyclomaticComplexity: 10, // Default: 10
161
- cognitiveComplexity: 15, // Default: 15
162
- linesOfCode: 300 // Default: 300
163
- }
164
- }
165
- ```
166
-
167
- ### Features
168
-
169
- ```typescript
170
- {
171
- enableRecommendations: true, // Default: true
172
- enableLearning: true // Default: false (demo uses false)
173
- }
174
- ```
175
-
176
- ## Integration with Other Agents
177
-
178
- ### Test Generator
179
- The test-generator agent can use complexity analysis to:
180
- - Prioritize complex functions for testing
181
- - Generate more comprehensive tests for high-complexity code
182
- - Focus on edge cases in nested logic
183
-
184
- ```typescript
185
- eventBus.on('complexity:analysis:completed', async (event) => {
186
- if (event.result.issues.some(i => i.severity === 'critical')) {
187
- // Test generator: Create extra tests for critical complexity
188
- await testGeneratorAgent.generateTests({
189
- focusAreas: event.result.issues
190
- .filter(i => i.severity === 'critical')
191
- .map(i => i.file)
192
- });
193
- }
194
- });
195
- ```
196
-
197
- ### Coverage Analyzer
198
- The coverage-analyzer can use complexity data to:
199
- - Ensure high-complexity code has high coverage
200
- - Identify risk areas (high complexity + low coverage)
201
-
202
- ### Quality Gate
203
- The quality-gate can use complexity metrics as criteria:
204
- - Fail builds with critical complexity issues
205
- - Track complexity trends over time
206
- - Prevent complexity regressions
207
-
208
- ## Example Output
209
-
210
- ```
211
- Quality Score: 65/100
212
-
213
- ⚠️ Issues Detected:
214
- 1. [HIGH] cyclomatic
215
- Current: 23, Threshold: 10
216
- Consider breaking down complex logic into smaller functions
217
-
218
- 2. [MEDIUM] cognitive
219
- Current: 18, Threshold: 15
220
- Reduce nesting levels and simplify control flow
221
-
222
- 💡 Recommendations:
223
- 1. Apply Extract Method refactoring to reduce cyclomatic complexity
224
- 2. Use early returns to reduce nesting levels
225
- 3. Extract nested loops into separate methods
226
- ```
227
-
228
- ## Learning Objectives
229
-
230
- By studying this agent, you'll learn:
231
-
232
- 1. ✅ **BaseAgent Pattern**: How to extend and customize agents
233
- 2. ✅ **Lifecycle Hooks**: Pre-task, post-task, and error handling
234
- 3. ✅ **Memory System**: Storing and retrieving agent data
235
- 4. ✅ **Event System**: Coordinating multiple agents
236
- 5. ✅ **Testing Patterns**: Comprehensive test coverage
237
- 6. ✅ **Agent Coordination**: How agents work together
238
-
239
- ## Running the Example
240
-
241
- ```bash
242
- # Run the demo
243
- npx ts-node examples/complexity-analysis/demo.ts
244
-
245
- # Run tests
246
- npm test tests/agents/CodeComplexityAnalyzerAgent.test.ts
247
- ```
248
-
249
- ## Architecture Insights
250
-
251
- ### Memory Namespace
252
- - `aqe/complexity/${agentId}/current-request` - Active analysis request
253
- - `aqe/complexity/${agentId}/latest-result` - Most recent result
254
- - `aqe/complexity/${agentId}/history` - Historical analyses (last 100)
255
- - `aqe/complexity/${agentId}/errors/*` - Error tracking
256
-
257
- ### Events Emitted
258
- - `complexity:analysis:completed` - When analysis finishes successfully
259
- - `complexity:analysis:stored` - When results are persisted
260
-
261
- ### Capabilities Provided
262
- - `complexity-analysis` - Core analysis functionality
263
- - `refactoring-recommendations` - AI-powered suggestions
264
- - `pattern-detection` - Complex code pattern recognition
265
-
266
- ## Next Steps
267
-
268
- After understanding this agent, explore:
269
- - **TestGeneratorAgent**: See how it generates tests
270
- - **CoverageAnalyzerAgent**: Learn about O(log n) gap detection
271
- - **FleetManager**: Understand multi-agent coordination
272
- - **LearningEngine**: Discover how agents improve over time
273
-
274
- ## Resources
275
-
276
- - **Source Code**: `src/agents/CodeComplexityAnalyzerAgent.ts`
277
- - **Tests**: `tests/agents/CodeComplexityAnalyzerAgent.test.ts`
278
- - **Demo**: `examples/complexity-analysis/demo.ts`
279
- - **BaseAgent**: `src/agents/BaseAgent.ts`
280
-
281
-
282
- **Educational Agent**: This agent is designed for learning. For production complexity analysis, consider:
283
- - ESLint with complexity rules
284
- - SonarQube
285
- - CodeClimate
286
- - Commercial static analysis tools