mcp-adr-analysis-server 2.1.19 → 2.1.22

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 (227) hide show
  1. package/README.md +1 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/src/config/ai-config.d.ts +54 -6
  4. package/dist/src/config/ai-config.d.ts.map +1 -1
  5. package/dist/src/config/ai-config.js +69 -6
  6. package/dist/src/config/ai-config.js.map +1 -1
  7. package/dist/src/config/ape-descriptions.d.ts +77 -0
  8. package/dist/src/config/ape-descriptions.d.ts.map +1 -0
  9. package/dist/src/config/ape-descriptions.js +177 -0
  10. package/dist/src/config/ape-descriptions.js.map +1 -0
  11. package/dist/src/index.d.ts +40 -0
  12. package/dist/src/index.d.ts.map +1 -1
  13. package/dist/src/index.js +564 -8
  14. package/dist/src/index.js.map +1 -1
  15. package/dist/src/prompts/adr-suggestion-prompts.d.ts +5 -0
  16. package/dist/src/prompts/adr-suggestion-prompts.d.ts.map +1 -1
  17. package/dist/src/prompts/adr-suggestion-prompts.js +22 -1
  18. package/dist/src/prompts/adr-suggestion-prompts.js.map +1 -1
  19. package/dist/src/prompts/prompt-catalog.d.ts +95 -0
  20. package/dist/src/prompts/prompt-catalog.d.ts.map +1 -0
  21. package/dist/src/prompts/prompt-catalog.js +300 -0
  22. package/dist/src/prompts/prompt-catalog.js.map +1 -0
  23. package/dist/src/resources/adrs-discovered-resource.d.ts +124 -0
  24. package/dist/src/resources/adrs-discovered-resource.d.ts.map +1 -0
  25. package/dist/src/resources/adrs-discovered-resource.js +174 -0
  26. package/dist/src/resources/adrs-discovered-resource.js.map +1 -0
  27. package/dist/src/resources/adrs-review-resource.d.ts +82 -0
  28. package/dist/src/resources/adrs-review-resource.d.ts.map +1 -0
  29. package/dist/src/resources/adrs-review-resource.js +160 -0
  30. package/dist/src/resources/adrs-review-resource.js.map +1 -0
  31. package/dist/src/resources/architectural-context-resource.d.ts +95 -0
  32. package/dist/src/resources/architectural-context-resource.d.ts.map +1 -0
  33. package/dist/src/resources/architectural-context-resource.js +428 -0
  34. package/dist/src/resources/architectural-context-resource.js.map +1 -0
  35. package/dist/src/resources/conversation-snapshot-resource.d.ts +92 -0
  36. package/dist/src/resources/conversation-snapshot-resource.d.ts.map +1 -0
  37. package/dist/src/resources/conversation-snapshot-resource.js +122 -0
  38. package/dist/src/resources/conversation-snapshot-resource.js.map +1 -0
  39. package/dist/src/resources/deployment-status-resource.js +1 -1
  40. package/dist/src/resources/deployment-status-resource.js.map +1 -1
  41. package/dist/src/resources/environment-analysis-resource.js +1 -1
  42. package/dist/src/resources/environment-analysis-resource.js.map +1 -1
  43. package/dist/src/resources/knowledge-graph-resource.d.ts +129 -0
  44. package/dist/src/resources/knowledge-graph-resource.d.ts.map +1 -0
  45. package/dist/src/resources/knowledge-graph-resource.js +217 -0
  46. package/dist/src/resources/knowledge-graph-resource.js.map +1 -0
  47. package/dist/src/resources/memory-expand-resource.d.ts +90 -0
  48. package/dist/src/resources/memory-expand-resource.d.ts.map +1 -0
  49. package/dist/src/resources/memory-expand-resource.js +176 -0
  50. package/dist/src/resources/memory-expand-resource.js.map +1 -0
  51. package/dist/src/resources/memory-stats-resource.d.ts +77 -0
  52. package/dist/src/resources/memory-stats-resource.d.ts.map +1 -0
  53. package/dist/src/resources/memory-stats-resource.js +108 -0
  54. package/dist/src/resources/memory-stats-resource.js.map +1 -0
  55. package/dist/src/resources/project-metrics-resource.js +1 -1
  56. package/dist/src/resources/project-metrics-resource.js.map +1 -1
  57. package/dist/src/resources/resource-cache.d.ts.map +1 -1
  58. package/dist/src/resources/resource-cache.js +2 -1
  59. package/dist/src/resources/resource-cache.js.map +1 -1
  60. package/dist/src/resources/server-context-resource.d.ts +69 -0
  61. package/dist/src/resources/server-context-resource.d.ts.map +1 -0
  62. package/dist/src/resources/server-context-resource.js +104 -0
  63. package/dist/src/resources/server-context-resource.js.map +1 -0
  64. package/dist/src/resources/tool-catalog-resource.d.ts +122 -0
  65. package/dist/src/resources/tool-catalog-resource.d.ts.map +1 -0
  66. package/dist/src/resources/tool-catalog-resource.js +167 -0
  67. package/dist/src/resources/tool-catalog-resource.js.map +1 -0
  68. package/dist/src/tools/adr-bootstrap-validation-tool.d.ts.map +1 -1
  69. package/dist/src/tools/adr-bootstrap-validation-tool.js +7 -6
  70. package/dist/src/tools/adr-bootstrap-validation-tool.js.map +1 -1
  71. package/dist/src/tools/adr-suggestion-tool.d.ts +5 -0
  72. package/dist/src/tools/adr-suggestion-tool.d.ts.map +1 -1
  73. package/dist/src/tools/adr-suggestion-tool.js +40 -71
  74. package/dist/src/tools/adr-suggestion-tool.js.map +1 -1
  75. package/dist/src/tools/bootstrap-validation-loop-tool.d.ts +23 -1
  76. package/dist/src/tools/bootstrap-validation-loop-tool.d.ts.map +1 -1
  77. package/dist/src/tools/bootstrap-validation-loop-tool.js +15 -5
  78. package/dist/src/tools/bootstrap-validation-loop-tool.js.map +1 -1
  79. package/dist/src/tools/ce-mcp-tools.d.ts +291 -0
  80. package/dist/src/tools/ce-mcp-tools.d.ts.map +1 -0
  81. package/dist/src/tools/ce-mcp-tools.js +1188 -0
  82. package/dist/src/tools/ce-mcp-tools.js.map +1 -0
  83. package/dist/src/tools/content-masking-tool.d.ts +11 -0
  84. package/dist/src/tools/content-masking-tool.d.ts.map +1 -1
  85. package/dist/src/tools/content-masking-tool.js +13 -6
  86. package/dist/src/tools/content-masking-tool.js.map +1 -1
  87. package/dist/src/tools/deployment-readiness-tool.d.ts +11 -0
  88. package/dist/src/tools/deployment-readiness-tool.d.ts.map +1 -1
  89. package/dist/src/tools/deployment-readiness-tool.js +10 -4
  90. package/dist/src/tools/deployment-readiness-tool.js.map +1 -1
  91. package/dist/src/tools/environment-analysis-tool.d.ts +96 -1
  92. package/dist/src/tools/environment-analysis-tool.d.ts.map +1 -1
  93. package/dist/src/tools/environment-analysis-tool.js +38 -46
  94. package/dist/src/tools/environment-analysis-tool.js.map +1 -1
  95. package/dist/src/tools/research-question-tool.d.ts.map +1 -1
  96. package/dist/src/tools/research-question-tool.js +3 -2
  97. package/dist/src/tools/research-question-tool.js.map +1 -1
  98. package/dist/src/tools/review-existing-adrs-tool.d.ts +5 -0
  99. package/dist/src/tools/review-existing-adrs-tool.d.ts.map +1 -1
  100. package/dist/src/tools/review-existing-adrs-tool.js +123 -42
  101. package/dist/src/tools/review-existing-adrs-tool.js.map +1 -1
  102. package/dist/src/tools/rule-generation-tool.d.ts.map +1 -1
  103. package/dist/src/tools/rule-generation-tool.js +3 -5
  104. package/dist/src/tools/rule-generation-tool.js.map +1 -1
  105. package/dist/src/tools/search-codebase-tool.d.ts +148 -0
  106. package/dist/src/tools/search-codebase-tool.d.ts.map +1 -0
  107. package/dist/src/tools/search-codebase-tool.js +406 -0
  108. package/dist/src/tools/search-codebase-tool.js.map +1 -0
  109. package/dist/src/tools/smart-git-push-tool-v2.js +1 -1
  110. package/dist/src/tools/smart-git-push-tool-v2.js.map +1 -1
  111. package/dist/src/tools/tool-catalog.d.ts +134 -0
  112. package/dist/src/tools/tool-catalog.d.ts.map +1 -0
  113. package/dist/src/tools/tool-catalog.js +1431 -0
  114. package/dist/src/tools/tool-catalog.js.map +1 -0
  115. package/dist/src/tools/tool-chain-orchestrator.d.ts +11 -2
  116. package/dist/src/tools/tool-chain-orchestrator.d.ts.map +1 -1
  117. package/dist/src/tools/tool-chain-orchestrator.js +11 -2
  118. package/dist/src/tools/tool-chain-orchestrator.js.map +1 -1
  119. package/dist/src/tools/tool-dispatcher.d.ts +98 -0
  120. package/dist/src/tools/tool-dispatcher.d.ts.map +1 -0
  121. package/dist/src/tools/tool-dispatcher.js +225 -0
  122. package/dist/src/tools/tool-dispatcher.js.map +1 -0
  123. package/dist/src/tools/tree-sitter-code-tools.d.ts +184 -0
  124. package/dist/src/tools/tree-sitter-code-tools.d.ts.map +1 -0
  125. package/dist/src/tools/tree-sitter-code-tools.js +642 -0
  126. package/dist/src/tools/tree-sitter-code-tools.js.map +1 -0
  127. package/dist/src/tools/troubleshoot-guided-workflow-tool.d.ts +22 -0
  128. package/dist/src/tools/troubleshoot-guided-workflow-tool.d.ts.map +1 -1
  129. package/dist/src/tools/troubleshoot-guided-workflow-tool.js +20 -3
  130. package/dist/src/tools/troubleshoot-guided-workflow-tool.js.map +1 -1
  131. package/dist/src/tools/update-knowledge-tool.d.ts +89 -0
  132. package/dist/src/tools/update-knowledge-tool.d.ts.map +1 -0
  133. package/dist/src/tools/update-knowledge-tool.js +222 -0
  134. package/dist/src/tools/update-knowledge-tool.js.map +1 -0
  135. package/dist/src/types/ce-mcp.d.ts +248 -0
  136. package/dist/src/types/ce-mcp.d.ts.map +1 -0
  137. package/dist/src/types/ce-mcp.js +27 -0
  138. package/dist/src/types/ce-mcp.js.map +1 -0
  139. package/dist/src/utils/adr-context-detector.js +1 -1
  140. package/dist/src/utils/adr-context-detector.js.map +1 -1
  141. package/dist/src/utils/adr-planning-task-integration.d.ts +260 -0
  142. package/dist/src/utils/adr-planning-task-integration.d.ts.map +1 -0
  143. package/dist/src/utils/adr-planning-task-integration.js +466 -0
  144. package/dist/src/utils/adr-planning-task-integration.js.map +1 -0
  145. package/dist/src/utils/adr-timeline-extractor.d.ts.map +1 -1
  146. package/dist/src/utils/adr-timeline-extractor.js +3 -2
  147. package/dist/src/utils/adr-timeline-extractor.js.map +1 -1
  148. package/dist/src/utils/ai-executor.d.ts +10 -0
  149. package/dist/src/utils/ai-executor.d.ts.map +1 -1
  150. package/dist/src/utils/ai-executor.js +14 -3
  151. package/dist/src/utils/ai-executor.js.map +1 -1
  152. package/dist/src/utils/automatic-prompt-engineering.d.ts +5 -0
  153. package/dist/src/utils/automatic-prompt-engineering.d.ts.map +1 -1
  154. package/dist/src/utils/automatic-prompt-engineering.js +10 -90
  155. package/dist/src/utils/automatic-prompt-engineering.js.map +1 -1
  156. package/dist/src/utils/bootstrap-task-integration.d.ts +214 -0
  157. package/dist/src/utils/bootstrap-task-integration.d.ts.map +1 -0
  158. package/dist/src/utils/bootstrap-task-integration.js +365 -0
  159. package/dist/src/utils/bootstrap-task-integration.js.map +1 -0
  160. package/dist/src/utils/dag-executor.d.ts.map +1 -1
  161. package/dist/src/utils/dag-executor.js +48 -15
  162. package/dist/src/utils/dag-executor.js.map +1 -1
  163. package/dist/src/utils/deployment-task-integration.d.ts +260 -0
  164. package/dist/src/utils/deployment-task-integration.d.ts.map +1 -0
  165. package/dist/src/utils/deployment-task-integration.js +393 -0
  166. package/dist/src/utils/deployment-task-integration.js.map +1 -0
  167. package/dist/src/utils/dynamic-deployment-intelligence.js +1 -1
  168. package/dist/src/utils/dynamic-deployment-intelligence.js.map +1 -1
  169. package/dist/src/utils/enhanced-logging.d.ts +3 -0
  170. package/dist/src/utils/enhanced-logging.d.ts.map +1 -1
  171. package/dist/src/utils/enhanced-logging.js +9 -30
  172. package/dist/src/utils/enhanced-logging.js.map +1 -1
  173. package/dist/src/utils/environment-capability-registry.js +1 -1
  174. package/dist/src/utils/environment-capability-registry.js.map +1 -1
  175. package/dist/src/utils/file-system.d.ts.map +1 -1
  176. package/dist/src/utils/file-system.js +33 -3
  177. package/dist/src/utils/file-system.js.map +1 -1
  178. package/dist/src/utils/gitleaks-detector.js +1 -1
  179. package/dist/src/utils/gitleaks-detector.js.map +1 -1
  180. package/dist/src/utils/knowledge-graph-manager.d.ts +13 -0
  181. package/dist/src/utils/knowledge-graph-manager.d.ts.map +1 -1
  182. package/dist/src/utils/knowledge-graph-manager.js +13 -0
  183. package/dist/src/utils/knowledge-graph-manager.js.map +1 -1
  184. package/dist/src/utils/prompt-execution.d.ts +29 -1
  185. package/dist/src/utils/prompt-execution.d.ts.map +1 -1
  186. package/dist/src/utils/prompt-execution.js +29 -1
  187. package/dist/src/utils/prompt-execution.js.map +1 -1
  188. package/dist/src/utils/research-orchestrator.d.ts +87 -1
  189. package/dist/src/utils/research-orchestrator.d.ts.map +1 -1
  190. package/dist/src/utils/research-orchestrator.js +121 -17
  191. package/dist/src/utils/research-orchestrator.js.map +1 -1
  192. package/dist/src/utils/research-task-integration.d.ts +297 -0
  193. package/dist/src/utils/research-task-integration.d.ts.map +1 -0
  194. package/dist/src/utils/research-task-integration.js +449 -0
  195. package/dist/src/utils/research-task-integration.js.map +1 -0
  196. package/dist/src/utils/ripgrep-wrapper.d.ts.map +1 -1
  197. package/dist/src/utils/ripgrep-wrapper.js +17 -3
  198. package/dist/src/utils/ripgrep-wrapper.js.map +1 -1
  199. package/dist/src/utils/sandbox-executor.d.ts +145 -0
  200. package/dist/src/utils/sandbox-executor.d.ts.map +1 -0
  201. package/dist/src/utils/sandbox-executor.js +642 -0
  202. package/dist/src/utils/sandbox-executor.js.map +1 -0
  203. package/dist/src/utils/server-context-generator.d.ts +5 -0
  204. package/dist/src/utils/server-context-generator.d.ts.map +1 -1
  205. package/dist/src/utils/server-context-generator.js +38 -0
  206. package/dist/src/utils/server-context-generator.js.map +1 -1
  207. package/dist/src/utils/task-manager.d.ts +239 -0
  208. package/dist/src/utils/task-manager.d.ts.map +1 -0
  209. package/dist/src/utils/task-manager.js +528 -0
  210. package/dist/src/utils/task-manager.js.map +1 -0
  211. package/dist/src/utils/task-persistence.d.ts +82 -0
  212. package/dist/src/utils/task-persistence.d.ts.map +1 -0
  213. package/dist/src/utils/task-persistence.js +248 -0
  214. package/dist/src/utils/task-persistence.js.map +1 -0
  215. package/dist/src/utils/test-aware-defaults.d.ts +57 -0
  216. package/dist/src/utils/test-aware-defaults.d.ts.map +1 -0
  217. package/dist/src/utils/test-aware-defaults.js +71 -0
  218. package/dist/src/utils/test-aware-defaults.js.map +1 -0
  219. package/dist/src/utils/tree-sitter-analyzer.d.ts +42 -5
  220. package/dist/src/utils/tree-sitter-analyzer.d.ts.map +1 -1
  221. package/dist/src/utils/tree-sitter-analyzer.js +499 -17
  222. package/dist/src/utils/tree-sitter-analyzer.js.map +1 -1
  223. package/package.json +25 -20
  224. package/dist/src/tools/smart-git-push-tool.d.ts +0 -55
  225. package/dist/src/tools/smart-git-push-tool.d.ts.map +0 -1
  226. package/dist/src/tools/smart-git-push-tool.js +0 -1011
  227. package/dist/src/tools/smart-git-push-tool.js.map +0 -1
@@ -0,0 +1,248 @@
1
+ /**
2
+ * Task Persistence for MCP Tasks Integration
3
+ *
4
+ * Provides file-based persistence for tasks to survive server restarts.
5
+ * Uses JSON files stored in a configurable cache directory.
6
+ *
7
+ * Implements ADR-018: MCP Tasks Integration Strategy
8
+ *
9
+ * @experimental MCP Tasks is an experimental feature in the MCP specification
10
+ */
11
+ import * as fs from 'fs/promises';
12
+ import * as path from 'path';
13
+ import { createComponentLogger } from './enhanced-logging.js';
14
+ const logger = createComponentLogger('TaskPersistence');
15
+ const CURRENT_VERSION = 1;
16
+ const DEFAULT_CONFIG = {
17
+ cacheDir: '.mcp-adr-cache/tasks',
18
+ enabled: true,
19
+ maxAge: 7 * 24 * 60 * 60 * 1000, // 7 days
20
+ writeDelay: 1000,
21
+ };
22
+ /**
23
+ * Task Persistence Manager
24
+ *
25
+ * Handles saving and loading tasks to/from disk for durability across
26
+ * server restarts. Uses debounced writes to avoid excessive disk I/O.
27
+ */
28
+ export class TaskPersistence {
29
+ config;
30
+ writeTimer = null;
31
+ pendingWrite = null;
32
+ initialized = false;
33
+ constructor(config = {}) {
34
+ this.config = { ...DEFAULT_CONFIG, ...config };
35
+ }
36
+ /**
37
+ * Initialize persistence - create cache directory if needed
38
+ */
39
+ async initialize() {
40
+ if (!this.config.enabled) {
41
+ logger.info('Task persistence disabled');
42
+ return;
43
+ }
44
+ try {
45
+ await fs.mkdir(this.config.cacheDir, { recursive: true });
46
+ this.initialized = true;
47
+ logger.info('Task persistence initialized', { cacheDir: this.config.cacheDir });
48
+ }
49
+ catch (error) {
50
+ logger.error('Failed to initialize task persistence', error instanceof Error ? error : undefined, {
51
+ cacheDir: this.config.cacheDir,
52
+ });
53
+ // Don't throw - persistence is optional
54
+ this.config.enabled = false;
55
+ }
56
+ }
57
+ /**
58
+ * Get the path to the tasks file
59
+ */
60
+ getTasksFilePath() {
61
+ return path.join(this.config.cacheDir, 'tasks.json');
62
+ }
63
+ /**
64
+ * Load persisted tasks from disk
65
+ */
66
+ async load() {
67
+ const tasks = new Map();
68
+ const progress = new Map();
69
+ if (!this.config.enabled || !this.initialized) {
70
+ return { tasks, progress };
71
+ }
72
+ const filePath = this.getTasksFilePath();
73
+ try {
74
+ const data = await fs.readFile(filePath, 'utf-8');
75
+ const parsed = JSON.parse(data);
76
+ // Version check
77
+ if (parsed.version !== CURRENT_VERSION) {
78
+ logger.warn('Task persistence version mismatch, migrating', {
79
+ savedVersion: parsed.version,
80
+ currentVersion: CURRENT_VERSION,
81
+ });
82
+ // For now, just load what we can
83
+ }
84
+ const now = Date.now();
85
+ let expiredCount = 0;
86
+ for (const task of parsed.tasks) {
87
+ // Skip expired tasks
88
+ const taskAge = now - new Date(task.lastUpdatedAt).getTime();
89
+ if (taskAge > this.config.maxAge) {
90
+ expiredCount++;
91
+ continue;
92
+ }
93
+ tasks.set(task.taskId, task);
94
+ const taskProgress = parsed.progress[task.taskId];
95
+ if (taskProgress !== undefined) {
96
+ progress.set(task.taskId, taskProgress);
97
+ }
98
+ }
99
+ logger.info('Tasks loaded from persistence', {
100
+ loadedCount: tasks.size,
101
+ expiredCount,
102
+ lastSaved: parsed.lastSaved,
103
+ });
104
+ }
105
+ catch (error) {
106
+ if (error.code === 'ENOENT') {
107
+ logger.debug('No persisted tasks file found');
108
+ }
109
+ else {
110
+ logger.error('Failed to load persisted tasks', error instanceof Error ? error : undefined);
111
+ }
112
+ }
113
+ return { tasks, progress };
114
+ }
115
+ /**
116
+ * Save tasks to disk (debounced)
117
+ */
118
+ async save(tasks, progress) {
119
+ if (!this.config.enabled || !this.initialized) {
120
+ return;
121
+ }
122
+ // Prepare data for persistence
123
+ const data = {
124
+ version: CURRENT_VERSION,
125
+ lastSaved: new Date().toISOString(),
126
+ tasks: Array.from(tasks.values()),
127
+ progress: Object.fromEntries(progress),
128
+ };
129
+ // Debounce writes
130
+ this.pendingWrite = data;
131
+ if (this.writeTimer) {
132
+ return; // Already scheduled
133
+ }
134
+ this.writeTimer = setTimeout(async () => {
135
+ this.writeTimer = null;
136
+ if (this.pendingWrite) {
137
+ await this.writeToFile(this.pendingWrite);
138
+ this.pendingWrite = null;
139
+ }
140
+ }, this.config.writeDelay);
141
+ }
142
+ /**
143
+ * Force immediate save (for shutdown)
144
+ */
145
+ async saveImmediate(tasks, progress) {
146
+ if (!this.config.enabled || !this.initialized) {
147
+ return;
148
+ }
149
+ // Cancel pending debounced write
150
+ if (this.writeTimer) {
151
+ clearTimeout(this.writeTimer);
152
+ this.writeTimer = null;
153
+ }
154
+ this.pendingWrite = null;
155
+ const data = {
156
+ version: CURRENT_VERSION,
157
+ lastSaved: new Date().toISOString(),
158
+ tasks: Array.from(tasks.values()),
159
+ progress: Object.fromEntries(progress),
160
+ };
161
+ await this.writeToFile(data);
162
+ }
163
+ /**
164
+ * Write data to file
165
+ */
166
+ async writeToFile(data) {
167
+ const filePath = this.getTasksFilePath();
168
+ const tempPath = `${filePath}.tmp`;
169
+ try {
170
+ // Write to temp file first
171
+ await fs.writeFile(tempPath, JSON.stringify(data, null, 2), 'utf-8');
172
+ // Atomic rename
173
+ await fs.rename(tempPath, filePath);
174
+ logger.debug('Tasks persisted to disk', { taskCount: data.tasks.length });
175
+ }
176
+ catch (error) {
177
+ logger.error('Failed to persist tasks', error instanceof Error ? error : undefined);
178
+ // Try to clean up temp file
179
+ try {
180
+ await fs.unlink(tempPath);
181
+ }
182
+ catch {
183
+ // Ignore cleanup errors
184
+ }
185
+ }
186
+ }
187
+ /**
188
+ * Delete persisted task data
189
+ */
190
+ async clear() {
191
+ if (!this.config.enabled) {
192
+ return;
193
+ }
194
+ const filePath = this.getTasksFilePath();
195
+ try {
196
+ await fs.unlink(filePath);
197
+ logger.info('Cleared persisted tasks');
198
+ }
199
+ catch (error) {
200
+ if (error.code !== 'ENOENT') {
201
+ logger.error('Failed to clear persisted tasks', error instanceof Error ? error : undefined);
202
+ }
203
+ }
204
+ }
205
+ /**
206
+ * Cleanup old task files
207
+ */
208
+ async cleanup() {
209
+ if (!this.config.enabled || !this.initialized) {
210
+ return 0;
211
+ }
212
+ // Load current tasks, which will filter out expired ones
213
+ const { tasks, progress } = await this.load();
214
+ // Re-save to remove expired tasks from file
215
+ if (tasks.size > 0) {
216
+ await this.saveImmediate(tasks, progress);
217
+ }
218
+ else {
219
+ await this.clear();
220
+ }
221
+ return 0; // We handled cleanup during load
222
+ }
223
+ /**
224
+ * Shutdown persistence - flush pending writes
225
+ */
226
+ async shutdown() {
227
+ if (this.writeTimer) {
228
+ clearTimeout(this.writeTimer);
229
+ this.writeTimer = null;
230
+ }
231
+ if (this.pendingWrite) {
232
+ await this.writeToFile(this.pendingWrite);
233
+ this.pendingWrite = null;
234
+ }
235
+ logger.info('Task persistence shut down');
236
+ }
237
+ /**
238
+ * Check if persistence is enabled
239
+ */
240
+ isEnabled() {
241
+ return this.config.enabled && this.initialized;
242
+ }
243
+ }
244
+ // Factory function for creating persistence with custom config
245
+ export function createTaskPersistence(config) {
246
+ return new TaskPersistence(config);
247
+ }
248
+ //# sourceMappingURL=task-persistence.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-persistence.js","sourceRoot":"","sources":["../../../src/utils/task-persistence.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Test-Aware Defaults Utility
3
+ *
4
+ * Provides environment-aware defaults that disable expensive operations during testing.
5
+ * This improves test performance and reduces timeouts without changing production behavior.
6
+ *
7
+ * @see Issue #309 - Add environment-aware test defaults to reduce timeouts
8
+ */
9
+ /**
10
+ * Check if we're running in a test environment
11
+ */
12
+ export declare function isTestEnvironment(): boolean;
13
+ /**
14
+ * Get environment-aware default for enhanced mode
15
+ * Disabled in test environments to reduce timeouts
16
+ */
17
+ export declare function getEnhancedModeDefault(): boolean;
18
+ /**
19
+ * Get environment-aware default for knowledge enhancement (GKP)
20
+ * Disabled in test environments to reduce timeouts
21
+ */
22
+ export declare function getKnowledgeEnhancementDefault(): boolean;
23
+ /**
24
+ * Get environment-aware default for memory integration
25
+ * Disabled in test environments to reduce timeouts
26
+ */
27
+ export declare function getMemoryIntegrationDefault(): boolean;
28
+ /**
29
+ * Get environment-aware timeout for operations
30
+ * Shorter timeouts in test environments
31
+ */
32
+ export declare function getOperationTimeout(defaultTimeout?: number): number;
33
+ /**
34
+ * Test defaults configuration object
35
+ * Use this for passing all defaults at once
36
+ */
37
+ export interface TestAwareDefaults {
38
+ enhancedMode: boolean;
39
+ knowledgeEnhancement: boolean;
40
+ enableMemoryIntegration: boolean;
41
+ timeout: number;
42
+ }
43
+ /**
44
+ * Get all test-aware defaults at once
45
+ */
46
+ export declare function getTestAwareDefaults(options?: {
47
+ enhancedMode?: boolean;
48
+ knowledgeEnhancement?: boolean;
49
+ enableMemoryIntegration?: boolean;
50
+ timeout?: number;
51
+ }): TestAwareDefaults;
52
+ /**
53
+ * Merge user options with test-aware defaults
54
+ * User-provided options always take precedence
55
+ */
56
+ export declare function mergeWithTestDefaults<T extends Partial<TestAwareDefaults>>(userOptions: T): T & TestAwareDefaults;
57
+ //# sourceMappingURL=test-aware-defaults.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-aware-defaults.d.ts","sourceRoot":"","sources":["../../../src/utils/test-aware-defaults.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAM3C;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,IAAI,OAAO,CAEhD;AAED;;;GAGG;AACH,wBAAgB,8BAA8B,IAAI,OAAO,CAExD;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,IAAI,OAAO,CAErD;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,cAAc,GAAE,MAAc,GAAG,MAAM,CAK1E;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,OAAO,CAAC;IACtB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,uBAAuB,EAAE,OAAO,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,CAAC,EAAE;IAC7C,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,iBAAiB,CASpB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,OAAO,CAAC,iBAAiB,CAAC,EACxE,WAAW,EAAE,CAAC,GACb,CAAC,GAAG,iBAAiB,CAOvB"}
@@ -0,0 +1,71 @@
1
+ /**
2
+ * Test-Aware Defaults Utility
3
+ *
4
+ * Provides environment-aware defaults that disable expensive operations during testing.
5
+ * This improves test performance and reduces timeouts without changing production behavior.
6
+ *
7
+ * @see Issue #309 - Add environment-aware test defaults to reduce timeouts
8
+ */
9
+ /**
10
+ * Check if we're running in a test environment
11
+ */
12
+ export function isTestEnvironment() {
13
+ return (process.env['NODE_ENV'] === 'test' ||
14
+ process.env['JEST_WORKER_ID'] !== undefined ||
15
+ process.env['VITEST'] !== undefined);
16
+ }
17
+ /**
18
+ * Get environment-aware default for enhanced mode
19
+ * Disabled in test environments to reduce timeouts
20
+ */
21
+ export function getEnhancedModeDefault() {
22
+ return !isTestEnvironment();
23
+ }
24
+ /**
25
+ * Get environment-aware default for knowledge enhancement (GKP)
26
+ * Disabled in test environments to reduce timeouts
27
+ */
28
+ export function getKnowledgeEnhancementDefault() {
29
+ return !isTestEnvironment();
30
+ }
31
+ /**
32
+ * Get environment-aware default for memory integration
33
+ * Disabled in test environments to reduce timeouts
34
+ */
35
+ export function getMemoryIntegrationDefault() {
36
+ return !isTestEnvironment();
37
+ }
38
+ /**
39
+ * Get environment-aware timeout for operations
40
+ * Shorter timeouts in test environments
41
+ */
42
+ export function getOperationTimeout(defaultTimeout = 30000) {
43
+ if (isTestEnvironment()) {
44
+ return Math.min(defaultTimeout, 5000); // Max 5s in tests
45
+ }
46
+ return defaultTimeout;
47
+ }
48
+ /**
49
+ * Get all test-aware defaults at once
50
+ */
51
+ export function getTestAwareDefaults(options) {
52
+ const isTest = isTestEnvironment();
53
+ return {
54
+ enhancedMode: options?.enhancedMode ?? !isTest,
55
+ knowledgeEnhancement: options?.knowledgeEnhancement ?? !isTest,
56
+ enableMemoryIntegration: options?.enableMemoryIntegration ?? !isTest,
57
+ timeout: options?.timeout ?? (isTest ? 5000 : 30000),
58
+ };
59
+ }
60
+ /**
61
+ * Merge user options with test-aware defaults
62
+ * User-provided options always take precedence
63
+ */
64
+ export function mergeWithTestDefaults(userOptions) {
65
+ const defaults = getTestAwareDefaults();
66
+ return {
67
+ ...defaults,
68
+ ...userOptions,
69
+ };
70
+ }
71
+ //# sourceMappingURL=test-aware-defaults.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-aware-defaults.js","sourceRoot":"","sources":["../../../src/utils/test-aware-defaults.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,OAAO,CACL,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,MAAM;QAClC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,KAAK,SAAS;QAC3C,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,SAAS,CACpC,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB;IACpC,OAAO,CAAC,iBAAiB,EAAE,CAAC;AAC9B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,8BAA8B;IAC5C,OAAO,CAAC,iBAAiB,EAAE,CAAC;AAC9B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,2BAA2B;IACzC,OAAO,CAAC,iBAAiB,EAAE,CAAC;AAC9B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,iBAAyB,KAAK;IAChE,IAAI,iBAAiB,EAAE,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC,CAAC,kBAAkB;IAC3D,CAAC;IACD,OAAO,cAAc,CAAC;AACxB,CAAC;AAaD;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAKpC;IACC,MAAM,MAAM,GAAG,iBAAiB,EAAE,CAAC;IAEnC,OAAO;QACL,YAAY,EAAE,OAAO,EAAE,YAAY,IAAI,CAAC,MAAM;QAC9C,oBAAoB,EAAE,OAAO,EAAE,oBAAoB,IAAI,CAAC,MAAM;QAC9D,uBAAuB,EAAE,OAAO,EAAE,uBAAuB,IAAI,CAAC,MAAM;QACpE,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;KACrD,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CACnC,WAAc;IAEd,MAAM,QAAQ,GAAG,oBAAoB,EAAE,CAAC;IAExC,OAAO;QACL,GAAG,QAAQ;QACX,GAAG,WAAW;KACf,CAAC;AACJ,CAAC"}
@@ -2,11 +2,15 @@
2
2
  * Tree-sitter Integration for Enterprise DevOps Code Analysis
3
3
  *
4
4
  * Provides intelligent code analysis for multi-language DevOps stacks including:
5
- * - Ansible playbooks and roles
6
- * - Terraform/HCL infrastructure
5
+ * - TypeScript/JavaScript applications
7
6
  * - Python microservices
8
- * - Node.js applications
9
- * - Container configurations
7
+ * - Java/Quarkus applications
8
+ * - Go cloud-native services
9
+ * - Rust system components
10
+ * - C/C++ native code
11
+ * - Ruby scripts and Rails apps
12
+ * - Ansible playbooks and roles
13
+ * - Kubernetes/Docker configurations
10
14
  * - CI/CD pipelines
11
15
  *
12
16
  * Enterprise Features:
@@ -14,6 +18,9 @@
14
18
  * - Architectural boundary validation
15
19
  * - Multi-language dependency analysis
16
20
  * - Security pattern recognition
21
+ *
22
+ * Note: Uses tree-sitter 0.21.x for maximum language compatibility.
23
+ * See ADR-017 for version strategy details.
17
24
  */
18
25
  export interface CodeAnalysisResult {
19
26
  language: string;
@@ -137,8 +144,10 @@ export declare class TreeSitterAnalyzer {
137
144
  private analyzeYAML;
138
145
  /**
139
146
  * Terraform/HCL analysis for infrastructure
147
+ * Note: HCL parser removed in 0.21.x downgrade - see ADR-017
148
+ * Kept for potential future use when tree-sitter-hcl becomes 0.21.x compatible
140
149
  */
141
- private analyzeTerraform;
150
+ private _analyzeTerraform;
142
151
  /**
143
152
  * Dockerfile analysis for container security
144
153
  */
@@ -147,6 +156,34 @@ export declare class TreeSitterAnalyzer {
147
156
  * Bash script analysis
148
157
  */
149
158
  private analyzeBash;
159
+ /**
160
+ * Java analysis for enterprise applications (Quarkus, Spring)
161
+ */
162
+ private analyzeJava;
163
+ private extractJavaParameters;
164
+ /**
165
+ * Go analysis for cloud-native services
166
+ */
167
+ private analyzeGo;
168
+ private extractGoParameters;
169
+ /**
170
+ * Rust analysis for system components
171
+ */
172
+ private analyzeRust;
173
+ private extractRustParameters;
174
+ /**
175
+ * C/C++ analysis for native code
176
+ */
177
+ private analyzeCCpp;
178
+ /**
179
+ * Ruby analysis for scripts and Rails apps
180
+ */
181
+ private analyzeRuby;
182
+ private extractRubyParameters;
183
+ /**
184
+ * CSS analysis for stylesheet security
185
+ */
186
+ private analyzeCSS;
150
187
  /**
151
188
  * JSON analysis for configuration files
152
189
  */
@@ -1 +1 @@
1
- {"version":3,"file":"tree-sitter-analyzer.d.ts","sourceRoot":"","sources":["../../../src/utils/tree-sitter-analyzer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tree-sitter-analyzer.d.ts","sourceRoot":"","sources":["../../../src/utils/tree-sitter-analyzer.ts"],"names":[],"mappings":"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"}