agentic-qe 3.3.2 → 3.3.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 (209) hide show
  1. package/.claude/helpers/statusline-v3.cjs +96 -27
  2. package/README.md +6 -3
  3. package/package.json +1 -1
  4. package/scripts/sync-claude-flow.cjs +99 -0
  5. package/v3/CHANGELOG.md +87 -0
  6. package/v3/README.md +9 -5
  7. package/v3/dist/cli/bundle.js +43386 -37651
  8. package/v3/dist/coordination/consensus/domain-findings.d.ts +202 -0
  9. package/v3/dist/coordination/consensus/domain-findings.d.ts.map +1 -0
  10. package/v3/dist/coordination/consensus/domain-findings.js +66 -0
  11. package/v3/dist/coordination/consensus/domain-findings.js.map +1 -0
  12. package/v3/dist/coordination/consensus/index.d.ts +2 -0
  13. package/v3/dist/coordination/consensus/index.d.ts.map +1 -1
  14. package/v3/dist/coordination/consensus/index.js +4 -0
  15. package/v3/dist/coordination/consensus/index.js.map +1 -1
  16. package/v3/dist/coordination/index.d.ts +1 -0
  17. package/v3/dist/coordination/index.d.ts.map +1 -1
  18. package/v3/dist/coordination/index.js +4 -0
  19. package/v3/dist/coordination/index.js.map +1 -1
  20. package/v3/dist/coordination/mixins/consensus-enabled-domain.d.ts +225 -0
  21. package/v3/dist/coordination/mixins/consensus-enabled-domain.d.ts.map +1 -0
  22. package/v3/dist/coordination/mixins/consensus-enabled-domain.js +466 -0
  23. package/v3/dist/coordination/mixins/consensus-enabled-domain.js.map +1 -0
  24. package/v3/dist/coordination/mixins/index.d.ts +14 -0
  25. package/v3/dist/coordination/mixins/index.d.ts.map +1 -0
  26. package/v3/dist/coordination/mixins/index.js +28 -0
  27. package/v3/dist/coordination/mixins/index.js.map +1 -0
  28. package/v3/dist/coordination/mixins/mincut-aware-domain.d.ts +227 -0
  29. package/v3/dist/coordination/mixins/mincut-aware-domain.d.ts.map +1 -0
  30. package/v3/dist/coordination/mixins/mincut-aware-domain.js +368 -0
  31. package/v3/dist/coordination/mixins/mincut-aware-domain.js.map +1 -0
  32. package/v3/dist/coordination/queen-coordinator.d.ts +10 -0
  33. package/v3/dist/coordination/queen-coordinator.d.ts.map +1 -1
  34. package/v3/dist/coordination/queen-coordinator.js +40 -0
  35. package/v3/dist/coordination/queen-coordinator.js.map +1 -1
  36. package/v3/dist/coordination/task-executor.d.ts +21 -1
  37. package/v3/dist/coordination/task-executor.d.ts.map +1 -1
  38. package/v3/dist/coordination/task-executor.js +222 -5
  39. package/v3/dist/coordination/task-executor.js.map +1 -1
  40. package/v3/dist/domains/chaos-resilience/coordinator.d.ts +92 -0
  41. package/v3/dist/domains/chaos-resilience/coordinator.d.ts.map +1 -1
  42. package/v3/dist/domains/chaos-resilience/coordinator.js +241 -1
  43. package/v3/dist/domains/chaos-resilience/coordinator.js.map +1 -1
  44. package/v3/dist/domains/chaos-resilience/plugin.js +1 -1
  45. package/v3/dist/domains/chaos-resilience/plugin.js.map +1 -1
  46. package/v3/dist/domains/chaos-resilience/services/chaos-engineer.d.ts +29 -2
  47. package/v3/dist/domains/chaos-resilience/services/chaos-engineer.d.ts.map +1 -1
  48. package/v3/dist/domains/chaos-resilience/services/chaos-engineer.js +62 -3
  49. package/v3/dist/domains/chaos-resilience/services/chaos-engineer.js.map +1 -1
  50. package/v3/dist/domains/code-intelligence/coordinator.d.ts +112 -0
  51. package/v3/dist/domains/code-intelligence/coordinator.d.ts.map +1 -1
  52. package/v3/dist/domains/code-intelligence/coordinator.js +221 -0
  53. package/v3/dist/domains/code-intelligence/coordinator.js.map +1 -1
  54. package/v3/dist/domains/code-intelligence/services/knowledge-graph.d.ts +66 -2
  55. package/v3/dist/domains/code-intelligence/services/knowledge-graph.d.ts.map +1 -1
  56. package/v3/dist/domains/code-intelligence/services/knowledge-graph.js +253 -3
  57. package/v3/dist/domains/code-intelligence/services/knowledge-graph.js.map +1 -1
  58. package/v3/dist/domains/contract-testing/coordinator.d.ts +89 -1
  59. package/v3/dist/domains/contract-testing/coordinator.d.ts.map +1 -1
  60. package/v3/dist/domains/contract-testing/coordinator.js +222 -1
  61. package/v3/dist/domains/contract-testing/coordinator.js.map +1 -1
  62. package/v3/dist/domains/contract-testing/interfaces.d.ts +29 -1
  63. package/v3/dist/domains/contract-testing/interfaces.d.ts.map +1 -1
  64. package/v3/dist/domains/contract-testing/plugin.js +1 -1
  65. package/v3/dist/domains/contract-testing/plugin.js.map +1 -1
  66. package/v3/dist/domains/contract-testing/services/contract-validator.d.ts +29 -2
  67. package/v3/dist/domains/contract-testing/services/contract-validator.d.ts.map +1 -1
  68. package/v3/dist/domains/contract-testing/services/contract-validator.js +58 -3
  69. package/v3/dist/domains/contract-testing/services/contract-validator.js.map +1 -1
  70. package/v3/dist/domains/coverage-analysis/coordinator.d.ts +95 -2
  71. package/v3/dist/domains/coverage-analysis/coordinator.d.ts.map +1 -1
  72. package/v3/dist/domains/coverage-analysis/coordinator.js +274 -6
  73. package/v3/dist/domains/coverage-analysis/coordinator.js.map +1 -1
  74. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.d.ts +119 -3
  75. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.d.ts.map +1 -1
  76. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.js +267 -5
  77. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.js.map +1 -1
  78. package/v3/dist/domains/coverage-analysis/services/gap-detector.d.ts +111 -2
  79. package/v3/dist/domains/coverage-analysis/services/gap-detector.d.ts.map +1 -1
  80. package/v3/dist/domains/coverage-analysis/services/gap-detector.js +231 -3
  81. package/v3/dist/domains/coverage-analysis/services/gap-detector.js.map +1 -1
  82. package/v3/dist/domains/defect-intelligence/coordinator.d.ts +80 -1
  83. package/v3/dist/domains/defect-intelligence/coordinator.d.ts.map +1 -1
  84. package/v3/dist/domains/defect-intelligence/coordinator.js +262 -7
  85. package/v3/dist/domains/defect-intelligence/coordinator.js.map +1 -1
  86. package/v3/dist/domains/defect-intelligence/interfaces.d.ts +17 -0
  87. package/v3/dist/domains/defect-intelligence/interfaces.d.ts.map +1 -1
  88. package/v3/dist/domains/defect-intelligence/services/defect-predictor.d.ts +91 -2
  89. package/v3/dist/domains/defect-intelligence/services/defect-predictor.d.ts.map +1 -1
  90. package/v3/dist/domains/defect-intelligence/services/defect-predictor.js +274 -7
  91. package/v3/dist/domains/defect-intelligence/services/defect-predictor.js.map +1 -1
  92. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.d.ts +79 -2
  93. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.d.ts.map +1 -1
  94. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.js +259 -3
  95. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.js.map +1 -1
  96. package/v3/dist/domains/domain-interface.d.ts +155 -0
  97. package/v3/dist/domains/domain-interface.d.ts.map +1 -1
  98. package/v3/dist/domains/domain-interface.js +140 -0
  99. package/v3/dist/domains/domain-interface.js.map +1 -1
  100. package/v3/dist/domains/learning-optimization/coordinator.d.ts +88 -0
  101. package/v3/dist/domains/learning-optimization/coordinator.d.ts.map +1 -1
  102. package/v3/dist/domains/learning-optimization/coordinator.js +227 -1
  103. package/v3/dist/domains/learning-optimization/coordinator.js.map +1 -1
  104. package/v3/dist/domains/learning-optimization/index.d.ts +1 -1
  105. package/v3/dist/domains/learning-optimization/index.d.ts.map +1 -1
  106. package/v3/dist/domains/learning-optimization/index.js.map +1 -1
  107. package/v3/dist/domains/learning-optimization/interfaces.d.ts +4 -0
  108. package/v3/dist/domains/learning-optimization/interfaces.d.ts.map +1 -1
  109. package/v3/dist/domains/learning-optimization/plugin.js +1 -1
  110. package/v3/dist/domains/learning-optimization/plugin.js.map +1 -1
  111. package/v3/dist/domains/learning-optimization/services/learning-coordinator.d.ts +54 -2
  112. package/v3/dist/domains/learning-optimization/services/learning-coordinator.d.ts.map +1 -1
  113. package/v3/dist/domains/learning-optimization/services/learning-coordinator.js +90 -3
  114. package/v3/dist/domains/learning-optimization/services/learning-coordinator.js.map +1 -1
  115. package/v3/dist/domains/quality-assessment/coordinator.d.ts +104 -0
  116. package/v3/dist/domains/quality-assessment/coordinator.d.ts.map +1 -1
  117. package/v3/dist/domains/quality-assessment/coordinator.js +354 -6
  118. package/v3/dist/domains/quality-assessment/coordinator.js.map +1 -1
  119. package/v3/dist/domains/quality-assessment/interfaces.d.ts +22 -0
  120. package/v3/dist/domains/quality-assessment/interfaces.d.ts.map +1 -1
  121. package/v3/dist/domains/quality-assessment/services/deployment-advisor.d.ts +61 -2
  122. package/v3/dist/domains/quality-assessment/services/deployment-advisor.d.ts.map +1 -1
  123. package/v3/dist/domains/quality-assessment/services/deployment-advisor.js +213 -5
  124. package/v3/dist/domains/quality-assessment/services/deployment-advisor.js.map +1 -1
  125. package/v3/dist/domains/quality-assessment/services/quality-analyzer.d.ts +59 -4
  126. package/v3/dist/domains/quality-assessment/services/quality-analyzer.d.ts.map +1 -1
  127. package/v3/dist/domains/quality-assessment/services/quality-analyzer.js +195 -3
  128. package/v3/dist/domains/quality-assessment/services/quality-analyzer.js.map +1 -1
  129. package/v3/dist/domains/requirements-validation/coordinator.d.ts +78 -0
  130. package/v3/dist/domains/requirements-validation/coordinator.d.ts.map +1 -1
  131. package/v3/dist/domains/requirements-validation/coordinator.js +189 -0
  132. package/v3/dist/domains/requirements-validation/coordinator.js.map +1 -1
  133. package/v3/dist/domains/requirements-validation/interfaces.d.ts +4 -0
  134. package/v3/dist/domains/requirements-validation/interfaces.d.ts.map +1 -1
  135. package/v3/dist/domains/requirements-validation/services/requirements-validator.d.ts +106 -2
  136. package/v3/dist/domains/requirements-validation/services/requirements-validator.d.ts.map +1 -1
  137. package/v3/dist/domains/requirements-validation/services/requirements-validator.js +263 -3
  138. package/v3/dist/domains/requirements-validation/services/requirements-validator.js.map +1 -1
  139. package/v3/dist/domains/security-compliance/coordinator.d.ts +56 -1
  140. package/v3/dist/domains/security-compliance/coordinator.d.ts.map +1 -1
  141. package/v3/dist/domains/security-compliance/coordinator.js +241 -17
  142. package/v3/dist/domains/security-compliance/coordinator.js.map +1 -1
  143. package/v3/dist/domains/security-compliance/interfaces.d.ts +2 -0
  144. package/v3/dist/domains/security-compliance/interfaces.d.ts.map +1 -1
  145. package/v3/dist/domains/security-compliance/services/security-scanner.d.ts +33 -2
  146. package/v3/dist/domains/security-compliance/services/security-scanner.d.ts.map +1 -1
  147. package/v3/dist/domains/security-compliance/services/security-scanner.js +107 -3
  148. package/v3/dist/domains/security-compliance/services/security-scanner.js.map +1 -1
  149. package/v3/dist/domains/test-execution/coordinator.d.ts +89 -0
  150. package/v3/dist/domains/test-execution/coordinator.d.ts.map +1 -1
  151. package/v3/dist/domains/test-execution/coordinator.js +259 -2
  152. package/v3/dist/domains/test-execution/coordinator.js.map +1 -1
  153. package/v3/dist/domains/test-execution/services/test-executor.d.ts +30 -2
  154. package/v3/dist/domains/test-execution/services/test-executor.d.ts.map +1 -1
  155. package/v3/dist/domains/test-execution/services/test-executor.js +64 -3
  156. package/v3/dist/domains/test-execution/services/test-executor.js.map +1 -1
  157. package/v3/dist/domains/test-generation/coordinator.d.ts +97 -0
  158. package/v3/dist/domains/test-generation/coordinator.d.ts.map +1 -1
  159. package/v3/dist/domains/test-generation/coordinator.js +237 -0
  160. package/v3/dist/domains/test-generation/coordinator.js.map +1 -1
  161. package/v3/dist/domains/test-generation/interfaces.d.ts +2 -0
  162. package/v3/dist/domains/test-generation/interfaces.d.ts.map +1 -1
  163. package/v3/dist/domains/test-generation/services/test-generator.d.ts +32 -0
  164. package/v3/dist/domains/test-generation/services/test-generator.d.ts.map +1 -1
  165. package/v3/dist/domains/test-generation/services/test-generator.js +158 -3
  166. package/v3/dist/domains/test-generation/services/test-generator.js.map +1 -1
  167. package/v3/dist/domains/visual-accessibility/coordinator.d.ts +77 -0
  168. package/v3/dist/domains/visual-accessibility/coordinator.d.ts.map +1 -1
  169. package/v3/dist/domains/visual-accessibility/coordinator.js +210 -2
  170. package/v3/dist/domains/visual-accessibility/coordinator.js.map +1 -1
  171. package/v3/dist/domains/visual-accessibility/plugin.d.ts.map +1 -1
  172. package/v3/dist/domains/visual-accessibility/plugin.js +3 -3
  173. package/v3/dist/domains/visual-accessibility/plugin.js.map +1 -1
  174. package/v3/dist/domains/visual-accessibility/services/visual-tester.d.ts +47 -2
  175. package/v3/dist/domains/visual-accessibility/services/visual-tester.d.ts.map +1 -1
  176. package/v3/dist/domains/visual-accessibility/services/visual-tester.js +87 -3
  177. package/v3/dist/domains/visual-accessibility/services/visual-tester.js.map +1 -1
  178. package/v3/dist/learning/experience-capture-middleware.d.ts +119 -0
  179. package/v3/dist/learning/experience-capture-middleware.d.ts.map +1 -0
  180. package/v3/dist/learning/experience-capture-middleware.js +416 -0
  181. package/v3/dist/learning/experience-capture-middleware.js.map +1 -0
  182. package/v3/dist/mcp/bundle.js +60723 -54421
  183. package/v3/dist/mcp/handlers/domain-handlers.d.ts +12 -13
  184. package/v3/dist/mcp/handlers/domain-handlers.d.ts.map +1 -1
  185. package/v3/dist/mcp/handlers/index.d.ts +1 -1
  186. package/v3/dist/mcp/handlers/index.d.ts.map +1 -1
  187. package/v3/dist/mcp/handlers/index.js +2 -2
  188. package/v3/dist/mcp/handlers/index.js.map +1 -1
  189. package/v3/dist/mcp/handlers/wrapped-domain-handlers.d.ts +30 -0
  190. package/v3/dist/mcp/handlers/wrapped-domain-handlers.d.ts.map +1 -0
  191. package/v3/dist/mcp/handlers/wrapped-domain-handlers.js +75 -0
  192. package/v3/dist/mcp/handlers/wrapped-domain-handlers.js.map +1 -0
  193. package/v3/dist/mcp/tools/chaos-resilience/inject.js +1 -1
  194. package/v3/dist/mcp/tools/chaos-resilience/inject.js.map +1 -1
  195. package/v3/dist/mcp/tools/contract-testing/validate.js +1 -1
  196. package/v3/dist/mcp/tools/contract-testing/validate.js.map +1 -1
  197. package/v3/dist/mcp/tools/learning-optimization/optimize.js +1 -1
  198. package/v3/dist/mcp/tools/learning-optimization/optimize.js.map +1 -1
  199. package/v3/dist/mcp/tools/visual-accessibility/index.js +2 -2
  200. package/v3/dist/mcp/tools/visual-accessibility/index.js.map +1 -1
  201. package/v3/dist/routing/qe-agent-registry.d.ts +1 -1
  202. package/v3/dist/routing/qe-agent-registry.d.ts.map +1 -1
  203. package/v3/dist/routing/qe-agent-registry.js +20 -1
  204. package/v3/dist/routing/qe-agent-registry.js.map +1 -1
  205. package/v3/dist/sync/claude-flow-bridge.d.ts +63 -0
  206. package/v3/dist/sync/claude-flow-bridge.d.ts.map +1 -0
  207. package/v3/dist/sync/claude-flow-bridge.js +320 -0
  208. package/v3/dist/sync/claude-flow-bridge.js.map +1 -0
  209. package/v3/package.json +1 -1
@@ -0,0 +1,320 @@
1
+ /**
2
+ * Claude Flow to AQE Memory Bridge
3
+ *
4
+ * Syncs Claude Flow memories (.claude-flow/memory/store.json)
5
+ * to AQE V3 database (v3/.agentic-qe/memory.db)
6
+ *
7
+ * This ensures experiences captured by Claude Code tasks
8
+ * are available to AQE agents for learning.
9
+ *
10
+ * Usage:
11
+ * import { syncClaudeFlowToAQE } from './claude-flow-bridge.js';
12
+ * await syncClaudeFlowToAQE();
13
+ *
14
+ * Or via CLI:
15
+ * npx aqe sync claude-flow
16
+ */
17
+ import * as fs from 'fs';
18
+ import * as path from 'path';
19
+ import secureJsonParse from 'secure-json-parse';
20
+ /** Maximum directory depth to traverse when finding project root */
21
+ const MAX_PROJECT_ROOT_DEPTH = 50;
22
+ /**
23
+ * Find project root by looking for package.json or .git
24
+ * Includes depth limit to prevent potential DoS from deep directory traversal
25
+ */
26
+ function findProjectRoot(startDir = process.cwd()) {
27
+ let dir = startDir;
28
+ let depth = 0;
29
+ while (dir !== path.dirname(dir) && depth < MAX_PROJECT_ROOT_DEPTH) {
30
+ if (fs.existsSync(path.join(dir, 'package.json')) ||
31
+ fs.existsSync(path.join(dir, '.git'))) {
32
+ return dir;
33
+ }
34
+ dir = path.dirname(dir);
35
+ depth++;
36
+ }
37
+ if (depth >= MAX_PROJECT_ROOT_DEPTH) {
38
+ console.warn(`[Claude Flow Bridge] Max depth (${MAX_PROJECT_ROOT_DEPTH}) reached when finding project root`);
39
+ }
40
+ return startDir;
41
+ }
42
+ /**
43
+ * Categorize a Claude Flow entry for mapping to AQE tables
44
+ */
45
+ function categorizeEntry(key, value) {
46
+ const keyLower = key.toLowerCase();
47
+ // Pattern-related entries -> qe_patterns
48
+ if (keyLower.includes('pattern') || keyLower.includes('learning')) {
49
+ return {
50
+ table: 'qe_patterns',
51
+ domain: extractDomain(key),
52
+ type: 'pattern'
53
+ };
54
+ }
55
+ // Agent experiences -> qe_trajectories
56
+ if (keyLower.includes('agent') || keyLower.includes('task') ||
57
+ keyLower.includes('experience') || keyLower.includes('outcome')) {
58
+ return {
59
+ table: 'qe_trajectories',
60
+ domain: extractDomain(key),
61
+ type: 'experience'
62
+ };
63
+ }
64
+ // Analysis results -> sona_patterns (for learning)
65
+ if (keyLower.includes('analysis') || keyLower.includes('coverage') ||
66
+ keyLower.includes('quality') || keyLower.includes('metric')) {
67
+ return {
68
+ table: 'sona_patterns',
69
+ domain: extractDomain(key),
70
+ type: 'analysis'
71
+ };
72
+ }
73
+ // Everything else -> kv_store
74
+ return { table: 'kv_store' };
75
+ }
76
+ /**
77
+ * Extract domain from key pattern
78
+ */
79
+ function extractDomain(key) {
80
+ const domains = [
81
+ 'test-generation', 'test-execution', 'coverage-analysis',
82
+ 'quality-assessment', 'defect-intelligence', 'requirements-validation',
83
+ 'code-intelligence', 'security-compliance', 'contract-testing',
84
+ 'visual-accessibility', 'chaos-resilience', 'learning-optimization'
85
+ ];
86
+ for (const domain of domains) {
87
+ if (key.toLowerCase().includes(domain.replace('-', ''))) {
88
+ return domain;
89
+ }
90
+ }
91
+ // Try to extract from path-style keys
92
+ const parts = key.split('/');
93
+ if (parts.length > 1) {
94
+ const potential = parts[1];
95
+ if (domains.includes(potential)) {
96
+ return potential;
97
+ }
98
+ }
99
+ return 'general';
100
+ }
101
+ /**
102
+ * Sync Claude Flow memories to AQE V3 database
103
+ */
104
+ export async function syncClaudeFlowToAQE(options = {}) {
105
+ const startTime = Date.now();
106
+ const projectRoot = options.projectRoot || findProjectRoot();
107
+ const claudeFlowPath = path.join(projectRoot, '.claude-flow', 'memory', 'store.json');
108
+ const aqeDbPath = path.join(projectRoot, 'v3', '.agentic-qe', 'memory.db');
109
+ const result = {
110
+ success: false,
111
+ entriesSynced: 0,
112
+ entriesSkipped: 0,
113
+ errors: [],
114
+ claudeFlowPath,
115
+ aqeDbPath,
116
+ duration: 0,
117
+ };
118
+ // Check Claude Flow store exists
119
+ if (!fs.existsSync(claudeFlowPath)) {
120
+ result.errors.push(`Claude Flow memory not found: ${claudeFlowPath}`);
121
+ result.duration = Date.now() - startTime;
122
+ return result;
123
+ }
124
+ // Check AQE DB exists
125
+ if (!fs.existsSync(aqeDbPath)) {
126
+ result.errors.push(`AQE V3 database not found: ${aqeDbPath}`);
127
+ result.duration = Date.now() - startTime;
128
+ return result;
129
+ }
130
+ try {
131
+ // Read Claude Flow store
132
+ const storeContent = fs.readFileSync(claudeFlowPath, 'utf-8');
133
+ const store = secureJsonParse.parse(storeContent);
134
+ // Extract entries
135
+ let entries;
136
+ if (store.entries && typeof store.entries === 'object') {
137
+ entries = new Map(Object.entries(store.entries));
138
+ }
139
+ else {
140
+ // Flat structure
141
+ entries = new Map(Object.entries(store).filter(([k]) => !k.startsWith('_') && k !== 'version'));
142
+ }
143
+ if (options.verbose) {
144
+ console.log(`[Claude Flow Bridge] Found ${entries.size} entries`);
145
+ }
146
+ // Filter by namespace if specified
147
+ if (options.namespaces && options.namespaces.length > 0) {
148
+ for (const [key, value] of entries) {
149
+ const entry = value;
150
+ if (entry.namespace && !options.namespaces.includes(entry.namespace)) {
151
+ entries.delete(key);
152
+ }
153
+ }
154
+ }
155
+ // Filter by timestamp if specified
156
+ if (options.since) {
157
+ const sinceTs = options.since.getTime();
158
+ for (const [key, value] of entries) {
159
+ const entry = value;
160
+ if (entry.timestamp && entry.timestamp < sinceTs) {
161
+ entries.delete(key);
162
+ }
163
+ }
164
+ }
165
+ if (options.dryRun) {
166
+ result.entriesSynced = entries.size;
167
+ result.success = true;
168
+ result.duration = Date.now() - startTime;
169
+ console.log(`[DRY RUN] Would sync ${entries.size} entries`);
170
+ return result;
171
+ }
172
+ // Import better-sqlite3
173
+ const Database = (await import('better-sqlite3')).default;
174
+ const db = new Database(aqeDbPath);
175
+ try {
176
+ db.pragma('journal_mode = WAL');
177
+ // Prepare insert statements
178
+ const insertKv = db.prepare(`
179
+ INSERT OR REPLACE INTO kv_store (key, namespace, value, expires_at, created_at)
180
+ VALUES (?, ?, ?, ?, ?)
181
+ `);
182
+ // Check if qe_patterns table has required columns
183
+ const qePatternsCols = db.prepare("PRAGMA table_info(qe_patterns)").all();
184
+ const hasQePatterns = qePatternsCols.length > 0;
185
+ const sonaPatternsCols = db.prepare("PRAGMA table_info(sona_patterns)").all();
186
+ const hasSonaPatterns = sonaPatternsCols.length > 0;
187
+ // Process entries in a transaction
188
+ const processEntries = db.transaction(() => {
189
+ for (const [key, value] of entries) {
190
+ try {
191
+ const entry = value;
192
+ const category = categorizeEntry(key, entry.value || entry);
193
+ const now = Date.now();
194
+ // All entries go to kv_store for guaranteed persistence
195
+ insertKv.run(`cf:${key}`, // Prefix with cf: to identify Claude Flow origin
196
+ entry.namespace || 'claude-flow', JSON.stringify(entry.value || entry), entry.expires_at || null, entry.timestamp || now);
197
+ // Additionally, store learning-relevant entries in appropriate tables
198
+ if (category.table === 'sona_patterns' && hasSonaPatterns) {
199
+ const insertSona = db.prepare(`
200
+ INSERT OR REPLACE INTO sona_patterns
201
+ (id, type, domain, action_type, outcome_reward, outcome_success, metadata, created_at)
202
+ VALUES (?, ?, ?, ?, ?, ?, ?, datetime('now'))
203
+ `);
204
+ insertSona.run(`cf-${key.replace(/[^a-zA-Z0-9-]/g, '-')}`, category.type || 'analysis', category.domain || 'general', 'claude-flow-import', 0.5, // Default reward
205
+ 1, // Assume successful
206
+ JSON.stringify({ sourceKey: key, value: entry.value || entry }));
207
+ }
208
+ result.entriesSynced++;
209
+ if (options.verbose) {
210
+ console.log(` [SYNC] ${key} -> ${category.table}`);
211
+ }
212
+ }
213
+ catch (entryError) {
214
+ result.entriesSkipped++;
215
+ result.errors.push(`Failed to sync ${key}: ${entryError}`);
216
+ }
217
+ }
218
+ });
219
+ processEntries();
220
+ result.success = true;
221
+ }
222
+ finally {
223
+ db.close();
224
+ }
225
+ }
226
+ catch (error) {
227
+ result.errors.push(`Sync failed: ${error instanceof Error ? error.message : String(error)}`);
228
+ }
229
+ result.duration = Date.now() - startTime;
230
+ if (result.success) {
231
+ console.log(`[Claude Flow Bridge] Synced ${result.entriesSynced} entries in ${result.duration}ms`);
232
+ }
233
+ else {
234
+ console.error(`[Claude Flow Bridge] Sync failed:`, result.errors);
235
+ }
236
+ return result;
237
+ }
238
+ /**
239
+ * Watch Claude Flow store for changes and sync automatically
240
+ */
241
+ export function watchAndSync(options = {}) {
242
+ const projectRoot = options.projectRoot || findProjectRoot();
243
+ const claudeFlowPath = path.join(projectRoot, '.claude-flow', 'memory', 'store.json');
244
+ let debounceTimer = null;
245
+ const watcher = fs.watch(claudeFlowPath, (eventType) => {
246
+ if (eventType === 'change') {
247
+ // Debounce to avoid multiple syncs for rapid changes
248
+ if (debounceTimer) {
249
+ clearTimeout(debounceTimer);
250
+ }
251
+ debounceTimer = setTimeout(async () => {
252
+ console.log('[Claude Flow Bridge] Detected changes, syncing...');
253
+ await syncClaudeFlowToAQE(options);
254
+ }, 1000);
255
+ }
256
+ });
257
+ console.log('[Claude Flow Bridge] Watching for changes...');
258
+ // Return cleanup function
259
+ return () => {
260
+ watcher.close();
261
+ if (debounceTimer) {
262
+ clearTimeout(debounceTimer);
263
+ }
264
+ };
265
+ }
266
+ /**
267
+ * Get sync status - compare entries between systems
268
+ */
269
+ export async function getSyncStatus(projectRoot) {
270
+ const root = projectRoot || findProjectRoot();
271
+ const claudeFlowPath = path.join(root, '.claude-flow', 'memory', 'store.json');
272
+ const aqeDbPath = path.join(root, 'v3', '.agentic-qe', 'memory.db');
273
+ let claudeFlowEntries = 0;
274
+ let lastClaudeFlowUpdate = null;
275
+ if (fs.existsSync(claudeFlowPath)) {
276
+ const stats = fs.statSync(claudeFlowPath);
277
+ lastClaudeFlowUpdate = stats.mtime;
278
+ try {
279
+ // Use secure-json-parse for consistency and defense-in-depth
280
+ const store = secureJsonParse.parse(fs.readFileSync(claudeFlowPath, 'utf-8'));
281
+ claudeFlowEntries = store.entries
282
+ ? Object.keys(store.entries).length
283
+ : Object.keys(store).filter(k => !k.startsWith('_') && k !== 'version').length;
284
+ }
285
+ catch {
286
+ // Ignore parse errors
287
+ }
288
+ }
289
+ let aqeKvEntries = 0;
290
+ let aqeSonaPatterns = 0;
291
+ let lastAqeUpdate = null;
292
+ if (fs.existsSync(aqeDbPath)) {
293
+ const stats = fs.statSync(aqeDbPath);
294
+ lastAqeUpdate = stats.mtime;
295
+ try {
296
+ const Database = (await import('better-sqlite3')).default;
297
+ const db = new Database(aqeDbPath, { readonly: true });
298
+ const kvCount = db.prepare("SELECT COUNT(*) as count FROM kv_store WHERE key LIKE 'cf:%'").get();
299
+ aqeKvEntries = kvCount?.count || 0;
300
+ const sonaCount = db.prepare("SELECT COUNT(*) as count FROM sona_patterns").get();
301
+ aqeSonaPatterns = sonaCount?.count || 0;
302
+ db.close();
303
+ }
304
+ catch {
305
+ // Ignore DB errors
306
+ }
307
+ }
308
+ // Need sync if Claude Flow has more entries than we've synced
309
+ const needsSync = claudeFlowEntries > aqeKvEntries ||
310
+ !!(lastClaudeFlowUpdate && lastAqeUpdate && lastClaudeFlowUpdate > lastAqeUpdate);
311
+ return {
312
+ claudeFlowEntries,
313
+ aqeKvEntries,
314
+ aqeSonaPatterns,
315
+ lastClaudeFlowUpdate,
316
+ lastAqeUpdate,
317
+ needsSync,
318
+ };
319
+ }
320
+ //# sourceMappingURL=claude-flow-bridge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-flow-bridge.js","sourceRoot":"","sources":["../../src/sync/claude-flow-bridge.ts"],"names":[],"mappings":"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"}
package/v3/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agentic-qe/v3",
3
- "version": "3.3.2",
3
+ "version": "3.3.3",
4
4
  "description": "Agentic QE v3 - Domain-Driven Design Architecture with 12 Bounded Contexts, O(log n) coverage analysis, ReasoningBank learning, 51 specialized QE agents",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",