mcp-adr-analysis-server 2.1.20 → 2.1.27

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 (253) hide show
  1. package/README.md +63 -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 +934 -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-aggregator-tools.d.ts +185 -0
  69. package/dist/src/tools/adr-aggregator-tools.d.ts.map +1 -0
  70. package/dist/src/tools/adr-aggregator-tools.js +872 -0
  71. package/dist/src/tools/adr-aggregator-tools.js.map +1 -0
  72. package/dist/src/tools/adr-bootstrap-validation-tool.d.ts.map +1 -1
  73. package/dist/src/tools/adr-bootstrap-validation-tool.js +7 -6
  74. package/dist/src/tools/adr-bootstrap-validation-tool.js.map +1 -1
  75. package/dist/src/tools/adr-suggestion-tool.d.ts +5 -0
  76. package/dist/src/tools/adr-suggestion-tool.d.ts.map +1 -1
  77. package/dist/src/tools/adr-suggestion-tool.js +40 -71
  78. package/dist/src/tools/adr-suggestion-tool.js.map +1 -1
  79. package/dist/src/tools/analyze-gaps-tool.d.ts +57 -0
  80. package/dist/src/tools/analyze-gaps-tool.d.ts.map +1 -0
  81. package/dist/src/tools/analyze-gaps-tool.js +727 -0
  82. package/dist/src/tools/analyze-gaps-tool.js.map +1 -0
  83. package/dist/src/tools/bootstrap-validation-loop-tool.d.ts +23 -1
  84. package/dist/src/tools/bootstrap-validation-loop-tool.d.ts.map +1 -1
  85. package/dist/src/tools/bootstrap-validation-loop-tool.js +15 -5
  86. package/dist/src/tools/bootstrap-validation-loop-tool.js.map +1 -1
  87. package/dist/src/tools/ce-mcp-tools.d.ts +291 -0
  88. package/dist/src/tools/ce-mcp-tools.d.ts.map +1 -0
  89. package/dist/src/tools/ce-mcp-tools.js +1188 -0
  90. package/dist/src/tools/ce-mcp-tools.js.map +1 -0
  91. package/dist/src/tools/content-masking-tool.d.ts +11 -0
  92. package/dist/src/tools/content-masking-tool.d.ts.map +1 -1
  93. package/dist/src/tools/content-masking-tool.js +13 -6
  94. package/dist/src/tools/content-masking-tool.js.map +1 -1
  95. package/dist/src/tools/deployment-readiness-tool.d.ts +11 -0
  96. package/dist/src/tools/deployment-readiness-tool.d.ts.map +1 -1
  97. package/dist/src/tools/deployment-readiness-tool.js +10 -4
  98. package/dist/src/tools/deployment-readiness-tool.js.map +1 -1
  99. package/dist/src/tools/environment-analysis-tool.d.ts +96 -1
  100. package/dist/src/tools/environment-analysis-tool.d.ts.map +1 -1
  101. package/dist/src/tools/environment-analysis-tool.js +38 -46
  102. package/dist/src/tools/environment-analysis-tool.js.map +1 -1
  103. package/dist/src/tools/research-question-tool.d.ts.map +1 -1
  104. package/dist/src/tools/research-question-tool.js +3 -2
  105. package/dist/src/tools/research-question-tool.js.map +1 -1
  106. package/dist/src/tools/review-existing-adrs-tool.d.ts +5 -0
  107. package/dist/src/tools/review-existing-adrs-tool.d.ts.map +1 -1
  108. package/dist/src/tools/review-existing-adrs-tool.js +123 -42
  109. package/dist/src/tools/review-existing-adrs-tool.js.map +1 -1
  110. package/dist/src/tools/rule-generation-tool.d.ts.map +1 -1
  111. package/dist/src/tools/rule-generation-tool.js +3 -5
  112. package/dist/src/tools/rule-generation-tool.js.map +1 -1
  113. package/dist/src/tools/search-codebase-tool.d.ts +148 -0
  114. package/dist/src/tools/search-codebase-tool.d.ts.map +1 -0
  115. package/dist/src/tools/search-codebase-tool.js +406 -0
  116. package/dist/src/tools/search-codebase-tool.js.map +1 -0
  117. package/dist/src/tools/smart-git-push-tool-v2.js +1 -1
  118. package/dist/src/tools/smart-git-push-tool-v2.js.map +1 -1
  119. package/dist/src/tools/tool-catalog.d.ts +134 -0
  120. package/dist/src/tools/tool-catalog.d.ts.map +1 -0
  121. package/dist/src/tools/tool-catalog.js +1813 -0
  122. package/dist/src/tools/tool-catalog.js.map +1 -0
  123. package/dist/src/tools/tool-chain-orchestrator.d.ts +11 -2
  124. package/dist/src/tools/tool-chain-orchestrator.d.ts.map +1 -1
  125. package/dist/src/tools/tool-chain-orchestrator.js +11 -2
  126. package/dist/src/tools/tool-chain-orchestrator.js.map +1 -1
  127. package/dist/src/tools/tool-dispatcher.d.ts +98 -0
  128. package/dist/src/tools/tool-dispatcher.d.ts.map +1 -0
  129. package/dist/src/tools/tool-dispatcher.js +229 -0
  130. package/dist/src/tools/tool-dispatcher.js.map +1 -0
  131. package/dist/src/tools/tree-sitter-code-tools.d.ts +184 -0
  132. package/dist/src/tools/tree-sitter-code-tools.d.ts.map +1 -0
  133. package/dist/src/tools/tree-sitter-code-tools.js +642 -0
  134. package/dist/src/tools/tree-sitter-code-tools.js.map +1 -0
  135. package/dist/src/tools/troubleshoot-guided-workflow-tool.d.ts +22 -0
  136. package/dist/src/tools/troubleshoot-guided-workflow-tool.d.ts.map +1 -1
  137. package/dist/src/tools/troubleshoot-guided-workflow-tool.js +20 -3
  138. package/dist/src/tools/troubleshoot-guided-workflow-tool.js.map +1 -1
  139. package/dist/src/tools/update-knowledge-tool.d.ts +89 -0
  140. package/dist/src/tools/update-knowledge-tool.d.ts.map +1 -0
  141. package/dist/src/tools/update-knowledge-tool.js +222 -0
  142. package/dist/src/tools/update-knowledge-tool.js.map +1 -0
  143. package/dist/src/types/adr-aggregator.d.ts +692 -0
  144. package/dist/src/types/adr-aggregator.d.ts.map +1 -0
  145. package/dist/src/types/adr-aggregator.js +8 -0
  146. package/dist/src/types/adr-aggregator.js.map +1 -0
  147. package/dist/src/types/ce-mcp.d.ts +248 -0
  148. package/dist/src/types/ce-mcp.d.ts.map +1 -0
  149. package/dist/src/types/ce-mcp.js +27 -0
  150. package/dist/src/types/ce-mcp.js.map +1 -0
  151. package/dist/src/types/index.d.ts +3 -2
  152. package/dist/src/types/index.d.ts.map +1 -1
  153. package/dist/src/types/memory-entities.d.ts +48 -48
  154. package/dist/src/utils/adr-aggregator-client.d.ts +177 -0
  155. package/dist/src/utils/adr-aggregator-client.d.ts.map +1 -0
  156. package/dist/src/utils/adr-aggregator-client.js +396 -0
  157. package/dist/src/utils/adr-aggregator-client.js.map +1 -0
  158. package/dist/src/utils/adr-context-detector.js +1 -1
  159. package/dist/src/utils/adr-context-detector.js.map +1 -1
  160. package/dist/src/utils/adr-planning-task-integration.d.ts +260 -0
  161. package/dist/src/utils/adr-planning-task-integration.d.ts.map +1 -0
  162. package/dist/src/utils/adr-planning-task-integration.js +466 -0
  163. package/dist/src/utils/adr-planning-task-integration.js.map +1 -0
  164. package/dist/src/utils/adr-timeline-extractor.d.ts.map +1 -1
  165. package/dist/src/utils/adr-timeline-extractor.js +3 -2
  166. package/dist/src/utils/adr-timeline-extractor.js.map +1 -1
  167. package/dist/src/utils/ai-executor.d.ts +10 -0
  168. package/dist/src/utils/ai-executor.d.ts.map +1 -1
  169. package/dist/src/utils/ai-executor.js +14 -3
  170. package/dist/src/utils/ai-executor.js.map +1 -1
  171. package/dist/src/utils/automatic-prompt-engineering.d.ts +5 -0
  172. package/dist/src/utils/automatic-prompt-engineering.d.ts.map +1 -1
  173. package/dist/src/utils/automatic-prompt-engineering.js +10 -90
  174. package/dist/src/utils/automatic-prompt-engineering.js.map +1 -1
  175. package/dist/src/utils/bootstrap-task-integration.d.ts +214 -0
  176. package/dist/src/utils/bootstrap-task-integration.d.ts.map +1 -0
  177. package/dist/src/utils/bootstrap-task-integration.js +365 -0
  178. package/dist/src/utils/bootstrap-task-integration.js.map +1 -0
  179. package/dist/src/utils/config.d.ts +3 -0
  180. package/dist/src/utils/config.d.ts.map +1 -1
  181. package/dist/src/utils/config.js +13 -0
  182. package/dist/src/utils/config.js.map +1 -1
  183. package/dist/src/utils/dag-executor.js +1 -1
  184. package/dist/src/utils/dag-executor.js.map +1 -1
  185. package/dist/src/utils/deployment-task-integration.d.ts +260 -0
  186. package/dist/src/utils/deployment-task-integration.d.ts.map +1 -0
  187. package/dist/src/utils/deployment-task-integration.js +393 -0
  188. package/dist/src/utils/deployment-task-integration.js.map +1 -0
  189. package/dist/src/utils/dynamic-deployment-intelligence.js +1 -1
  190. package/dist/src/utils/dynamic-deployment-intelligence.js.map +1 -1
  191. package/dist/src/utils/enhanced-logging.d.ts +3 -0
  192. package/dist/src/utils/enhanced-logging.d.ts.map +1 -1
  193. package/dist/src/utils/enhanced-logging.js +9 -30
  194. package/dist/src/utils/enhanced-logging.js.map +1 -1
  195. package/dist/src/utils/environment-capability-registry.js +1 -1
  196. package/dist/src/utils/environment-capability-registry.js.map +1 -1
  197. package/dist/src/utils/file-system.d.ts.map +1 -1
  198. package/dist/src/utils/file-system.js +33 -3
  199. package/dist/src/utils/file-system.js.map +1 -1
  200. package/dist/src/utils/git-remote-detector.d.ts +67 -0
  201. package/dist/src/utils/git-remote-detector.d.ts.map +1 -0
  202. package/dist/src/utils/git-remote-detector.js +194 -0
  203. package/dist/src/utils/git-remote-detector.js.map +1 -0
  204. package/dist/src/utils/gitleaks-detector.js +1 -1
  205. package/dist/src/utils/gitleaks-detector.js.map +1 -1
  206. package/dist/src/utils/knowledge-graph-manager.d.ts +13 -0
  207. package/dist/src/utils/knowledge-graph-manager.d.ts.map +1 -1
  208. package/dist/src/utils/knowledge-graph-manager.js +13 -0
  209. package/dist/src/utils/knowledge-graph-manager.js.map +1 -1
  210. package/dist/src/utils/prompt-execution.d.ts +29 -1
  211. package/dist/src/utils/prompt-execution.d.ts.map +1 -1
  212. package/dist/src/utils/prompt-execution.js +29 -1
  213. package/dist/src/utils/prompt-execution.js.map +1 -1
  214. package/dist/src/utils/research-orchestrator.d.ts +87 -1
  215. package/dist/src/utils/research-orchestrator.d.ts.map +1 -1
  216. package/dist/src/utils/research-orchestrator.js +121 -17
  217. package/dist/src/utils/research-orchestrator.js.map +1 -1
  218. package/dist/src/utils/research-task-integration.d.ts +297 -0
  219. package/dist/src/utils/research-task-integration.d.ts.map +1 -0
  220. package/dist/src/utils/research-task-integration.js +449 -0
  221. package/dist/src/utils/research-task-integration.js.map +1 -0
  222. package/dist/src/utils/ripgrep-wrapper.d.ts.map +1 -1
  223. package/dist/src/utils/ripgrep-wrapper.js +17 -3
  224. package/dist/src/utils/ripgrep-wrapper.js.map +1 -1
  225. package/dist/src/utils/sandbox-executor.d.ts +145 -0
  226. package/dist/src/utils/sandbox-executor.d.ts.map +1 -0
  227. package/dist/src/utils/sandbox-executor.js +642 -0
  228. package/dist/src/utils/sandbox-executor.js.map +1 -0
  229. package/dist/src/utils/server-context-generator.d.ts +5 -0
  230. package/dist/src/utils/server-context-generator.d.ts.map +1 -1
  231. package/dist/src/utils/server-context-generator.js +38 -0
  232. package/dist/src/utils/server-context-generator.js.map +1 -1
  233. package/dist/src/utils/task-manager.d.ts +239 -0
  234. package/dist/src/utils/task-manager.d.ts.map +1 -0
  235. package/dist/src/utils/task-manager.js +528 -0
  236. package/dist/src/utils/task-manager.js.map +1 -0
  237. package/dist/src/utils/task-persistence.d.ts +82 -0
  238. package/dist/src/utils/task-persistence.d.ts.map +1 -0
  239. package/dist/src/utils/task-persistence.js +248 -0
  240. package/dist/src/utils/task-persistence.js.map +1 -0
  241. package/dist/src/utils/test-aware-defaults.d.ts +57 -0
  242. package/dist/src/utils/test-aware-defaults.d.ts.map +1 -0
  243. package/dist/src/utils/test-aware-defaults.js +71 -0
  244. package/dist/src/utils/test-aware-defaults.js.map +1 -0
  245. package/dist/src/utils/tree-sitter-analyzer.d.ts +42 -5
  246. package/dist/src/utils/tree-sitter-analyzer.d.ts.map +1 -1
  247. package/dist/src/utils/tree-sitter-analyzer.js +499 -17
  248. package/dist/src/utils/tree-sitter-analyzer.js.map +1 -1
  249. package/package.json +24 -19
  250. package/dist/src/tools/smart-git-push-tool.d.ts +0 -55
  251. package/dist/src/tools/smart-git-push-tool.d.ts.map +0 -1
  252. package/dist/src/tools/smart-git-push-tool.js +0 -1011
  253. package/dist/src/tools/smart-git-push-tool.js.map +0 -1
@@ -0,0 +1,466 @@
1
+ /**
2
+ * MCP Tasks Integration for Interactive ADR Planning Tool
3
+ *
4
+ * This module provides standardized task tracking for the interactive ADR planning tool,
5
+ * implementing ADR-020: MCP Tasks Integration Strategy.
6
+ *
7
+ * Key features:
8
+ * - Creates MCP Tasks for ADR planning sessions
9
+ * - Tracks progress through planning phases (problem_definition, research, options, decision, impact, implementation, generation)
10
+ * - Supports cancellation between phases
11
+ * - Handles input_required state for interactive planning
12
+ * - Provides memory integration for planning context tracking
13
+ *
14
+ * @see ADR-020: MCP Tasks Integration Strategy
15
+ * @see https://modelcontextprotocol.io/specification/2025-11-25/basic/utilities/tasks
16
+ */
17
+ import { getTaskManager } from './task-manager.js';
18
+ import { createComponentLogger } from './enhanced-logging.js';
19
+ const logger = createComponentLogger('AdrPlanningTaskIntegration');
20
+ /**
21
+ * ADR Planning phases that map to MCP Task phases
22
+ */
23
+ export const ADR_PLANNING_PHASES = [
24
+ 'problem_definition',
25
+ 'research_analysis',
26
+ 'option_exploration',
27
+ 'decision_making',
28
+ 'impact_assessment',
29
+ 'implementation_planning',
30
+ 'adr_generation',
31
+ ];
32
+ /**
33
+ * ADR Planning Task Manager - Provides MCP Tasks integration for interactive ADR planning
34
+ *
35
+ * This class wraps the TaskManager to provide ADR planning-specific functionality:
36
+ * - Creates tasks with ADR planning phases
37
+ * - Tracks planning progress through multiple steps
38
+ * - Supports input_required state for interactive workflows
39
+ * - Supports cancellation between phases
40
+ * - Integrates with memory for planning context tracking
41
+ */
42
+ export class AdrPlanningTaskManager {
43
+ taskManager;
44
+ activeContexts = new Map();
45
+ constructor(taskManager) {
46
+ this.taskManager = taskManager ?? getTaskManager();
47
+ }
48
+ /**
49
+ * Initialize the ADR planning task manager
50
+ */
51
+ async initialize() {
52
+ await this.taskManager.initialize();
53
+ logger.info('AdrPlanningTaskManager initialized');
54
+ }
55
+ /**
56
+ * Create a new ADR planning task
57
+ *
58
+ * @returns The created task and context
59
+ */
60
+ async createAdrPlanningTask(options) {
61
+ const { projectPath, adrDirectory = 'docs/adrs', sessionId } = options;
62
+ const generatedSessionId = sessionId ?? `adr-planning-${Date.now()}`;
63
+ const task = await this.taskManager.createTask({
64
+ type: 'adr_planning',
65
+ tool: 'interactive_adr_planning',
66
+ phases: [...ADR_PLANNING_PHASES],
67
+ projectPath,
68
+ adrDirectory,
69
+ ttl: 3600000, // 1 hour TTL for interactive planning sessions
70
+ pollInterval: 2000, // 2 second poll interval
71
+ });
72
+ const context = {
73
+ taskId: task.taskId,
74
+ sessionId: generatedSessionId,
75
+ currentPhase: 'problem_definition',
76
+ cancelled: false,
77
+ awaitingInput: false,
78
+ };
79
+ this.activeContexts.set(task.taskId, context);
80
+ logger.info('ADR planning task created', {
81
+ taskId: task.taskId,
82
+ sessionId: generatedSessionId,
83
+ projectPath,
84
+ adrDirectory,
85
+ });
86
+ return { task, context };
87
+ }
88
+ /**
89
+ * Get ADR planning task context
90
+ */
91
+ getContext(taskId) {
92
+ return this.activeContexts.get(taskId);
93
+ }
94
+ /**
95
+ * Start an ADR planning phase
96
+ */
97
+ async startPhase(taskId, phase, message) {
98
+ const context = this.activeContexts.get(taskId);
99
+ if (!context) {
100
+ logger.warn('No context found for task', { taskId });
101
+ return;
102
+ }
103
+ // Check for cancellation
104
+ if (context.cancelled) {
105
+ throw new Error('Task was cancelled');
106
+ }
107
+ context.currentPhase = phase;
108
+ context.awaitingInput = false;
109
+ await this.taskManager.startPhase(taskId, phase);
110
+ // Calculate overall progress based on phase
111
+ const phaseIndex = ADR_PLANNING_PHASES.indexOf(phase);
112
+ const phaseProgress = phaseIndex >= 0 ? Math.floor((phaseIndex / ADR_PLANNING_PHASES.length) * 100) : 0;
113
+ await this.taskManager.updateProgress({
114
+ taskId,
115
+ progress: phaseProgress,
116
+ phase,
117
+ phaseProgress: 0,
118
+ message: message ?? `Starting phase: ${phase}`,
119
+ });
120
+ logger.info('ADR planning phase started', { taskId, phase, progress: phaseProgress });
121
+ }
122
+ /**
123
+ * Update phase progress
124
+ */
125
+ async updatePhaseProgress(taskId, phase, phaseProgress, message) {
126
+ const context = this.activeContexts.get(taskId);
127
+ if (!context) {
128
+ return;
129
+ }
130
+ // Calculate overall progress
131
+ const phaseIndex = ADR_PLANNING_PHASES.indexOf(phase);
132
+ const phaseFraction = 100 / ADR_PLANNING_PHASES.length;
133
+ const baseProgress = phaseIndex * phaseFraction;
134
+ const overallProgress = Math.floor(baseProgress + (phaseProgress / 100) * phaseFraction);
135
+ await this.taskManager.updateProgress({
136
+ taskId,
137
+ progress: overallProgress,
138
+ phase,
139
+ phaseProgress,
140
+ ...(message !== undefined && { message }),
141
+ });
142
+ }
143
+ /**
144
+ * Complete an ADR planning phase
145
+ */
146
+ async completePhase(taskId, phase, _message) {
147
+ const context = this.activeContexts.get(taskId);
148
+ if (!context) {
149
+ return;
150
+ }
151
+ await this.taskManager.completePhase(taskId, phase);
152
+ context.awaitingInput = false;
153
+ logger.info('ADR planning phase completed', { taskId, phase });
154
+ }
155
+ /**
156
+ * Fail an ADR planning phase
157
+ */
158
+ async failPhase(taskId, phase, error) {
159
+ const context = this.activeContexts.get(taskId);
160
+ if (!context) {
161
+ return;
162
+ }
163
+ await this.taskManager.failPhase(taskId, phase, error);
164
+ logger.warn('ADR planning phase failed', { taskId, phase, error });
165
+ }
166
+ /**
167
+ * Request input from user (sets task to input_required state)
168
+ */
169
+ async requestInput(taskId, prompt) {
170
+ const context = this.activeContexts.get(taskId);
171
+ if (!context) {
172
+ return;
173
+ }
174
+ context.awaitingInput = true;
175
+ await this.taskManager.requestInput(taskId, prompt);
176
+ logger.info('ADR planning awaiting input', { taskId, prompt });
177
+ }
178
+ /**
179
+ * Resume task after receiving input
180
+ */
181
+ async resumeAfterInput(taskId) {
182
+ const context = this.activeContexts.get(taskId);
183
+ if (!context) {
184
+ return;
185
+ }
186
+ context.awaitingInput = false;
187
+ await this.taskManager.resumeTask(taskId);
188
+ logger.info('ADR planning resumed after input', { taskId });
189
+ }
190
+ /**
191
+ * Store problem definition result
192
+ */
193
+ async storeProblemDefinition(taskId, problemStatement) {
194
+ const context = this.activeContexts.get(taskId);
195
+ if (!context) {
196
+ return;
197
+ }
198
+ context.problemStatement = problemStatement;
199
+ await this.taskManager.updateProgress({
200
+ taskId,
201
+ progress: 14,
202
+ message: `Problem defined: ${problemStatement.substring(0, 50)}...`,
203
+ });
204
+ logger.info('Problem definition stored', { taskId, problemLength: problemStatement.length });
205
+ }
206
+ /**
207
+ * Store research findings
208
+ */
209
+ async storeResearchFindings(taskId, findingsCount) {
210
+ const context = this.activeContexts.get(taskId);
211
+ if (!context) {
212
+ return;
213
+ }
214
+ context.researchCount = findingsCount;
215
+ await this.taskManager.updateProgress({
216
+ taskId,
217
+ progress: 28,
218
+ message: `Research completed: ${findingsCount} findings gathered`,
219
+ });
220
+ logger.info('Research findings stored', { taskId, findingsCount });
221
+ }
222
+ /**
223
+ * Store options explored
224
+ */
225
+ async storeOptionsExplored(taskId, optionCount) {
226
+ const context = this.activeContexts.get(taskId);
227
+ if (!context) {
228
+ return;
229
+ }
230
+ context.optionCount = optionCount;
231
+ await this.taskManager.updateProgress({
232
+ taskId,
233
+ progress: 42,
234
+ message: `Options explored: ${optionCount} alternatives evaluated`,
235
+ });
236
+ logger.info('Options explored stored', { taskId, optionCount });
237
+ }
238
+ /**
239
+ * Store decision made
240
+ */
241
+ async storeDecision(taskId, selectedOption, _rationale) {
242
+ const context = this.activeContexts.get(taskId);
243
+ if (!context) {
244
+ return;
245
+ }
246
+ context.selectedOption = selectedOption;
247
+ await this.taskManager.updateProgress({
248
+ taskId,
249
+ progress: 56,
250
+ message: `Decision made: ${selectedOption}`,
251
+ });
252
+ logger.info('Decision stored', { taskId, selectedOption });
253
+ }
254
+ /**
255
+ * Store impact assessment result
256
+ */
257
+ async storeImpactAssessment(taskId, assessment) {
258
+ const context = this.activeContexts.get(taskId);
259
+ if (!context) {
260
+ return;
261
+ }
262
+ context.impactAssessment = assessment;
263
+ const totalImpacts = assessment.technicalImpacts + assessment.businessImpacts;
264
+ await this.taskManager.updateProgress({
265
+ taskId,
266
+ progress: 70,
267
+ message: `Impact assessed: ${totalImpacts} impacts, ${assessment.risks} risks identified`,
268
+ });
269
+ logger.info('Impact assessment stored', { taskId, ...assessment });
270
+ }
271
+ /**
272
+ * Store implementation plan result
273
+ */
274
+ async storeImplementationPlan(taskId, todoCount) {
275
+ const context = this.activeContexts.get(taskId);
276
+ if (!context) {
277
+ return;
278
+ }
279
+ context.todoCount = todoCount;
280
+ await this.taskManager.updateProgress({
281
+ taskId,
282
+ progress: 85,
283
+ message: `Implementation planned: ${todoCount} tasks generated`,
284
+ });
285
+ logger.info('Implementation plan stored', { taskId, todoCount });
286
+ }
287
+ /**
288
+ * Store ADR generation result
289
+ */
290
+ async storeAdrGenerated(taskId, adrPath) {
291
+ const context = this.activeContexts.get(taskId);
292
+ if (!context) {
293
+ return;
294
+ }
295
+ context.adrGenerated = true;
296
+ await this.taskManager.updateProgress({
297
+ taskId,
298
+ progress: 100,
299
+ message: `ADR generated: ${adrPath}`,
300
+ });
301
+ logger.info('ADR generation stored', { taskId, adrPath });
302
+ }
303
+ /**
304
+ * Check if task is cancelled
305
+ */
306
+ async isCancelled(taskId) {
307
+ const context = this.activeContexts.get(taskId);
308
+ if (!context) {
309
+ return false;
310
+ }
311
+ // Check if task was cancelled externally
312
+ const task = await this.taskManager.getTask(taskId);
313
+ if (task?.status === 'cancelled') {
314
+ context.cancelled = true;
315
+ }
316
+ return context.cancelled;
317
+ }
318
+ /**
319
+ * Check if task is awaiting input
320
+ */
321
+ isAwaitingInput(taskId) {
322
+ const context = this.activeContexts.get(taskId);
323
+ return context?.awaitingInput ?? false;
324
+ }
325
+ /**
326
+ * Cancel an ADR planning task
327
+ */
328
+ async cancelTask(taskId, reason) {
329
+ const context = this.activeContexts.get(taskId);
330
+ if (context) {
331
+ context.cancelled = true;
332
+ }
333
+ await this.taskManager.cancelTask(taskId, reason ?? 'ADR planning cancelled by user');
334
+ this.activeContexts.delete(taskId);
335
+ logger.info('ADR planning task cancelled', { taskId, reason });
336
+ }
337
+ /**
338
+ * Complete an ADR planning task successfully
339
+ */
340
+ async completeTask(taskId, result) {
341
+ await this.taskManager.completeTask(taskId, result);
342
+ this.activeContexts.delete(taskId);
343
+ logger.info('ADR planning task completed', { taskId, success: result.success });
344
+ }
345
+ /**
346
+ * Fail an ADR planning task
347
+ */
348
+ async failTask(taskId, error) {
349
+ await this.taskManager.failTask(taskId, error);
350
+ this.activeContexts.delete(taskId);
351
+ logger.error('ADR planning task failed', undefined, { taskId, error });
352
+ }
353
+ /**
354
+ * Get task status
355
+ */
356
+ async getTaskStatus(taskId) {
357
+ const task = await this.taskManager.getTask(taskId);
358
+ const context = this.activeContexts.get(taskId);
359
+ return { task, context };
360
+ }
361
+ }
362
+ /**
363
+ * Get the global AdrPlanningTaskManager instance
364
+ */
365
+ let globalAdrPlanningTaskManager = null;
366
+ export function getAdrPlanningTaskManager() {
367
+ if (!globalAdrPlanningTaskManager) {
368
+ globalAdrPlanningTaskManager = new AdrPlanningTaskManager();
369
+ }
370
+ return globalAdrPlanningTaskManager;
371
+ }
372
+ /**
373
+ * Reset the global AdrPlanningTaskManager (for testing)
374
+ */
375
+ export async function resetAdrPlanningTaskManager() {
376
+ globalAdrPlanningTaskManager = null;
377
+ }
378
+ /**
379
+ * Helper function to wrap ADR planning execution with task tracking
380
+ *
381
+ * This can be used by the interactive_adr_planning tool to automatically
382
+ * track progress through MCP Tasks.
383
+ *
384
+ * @example
385
+ * ```typescript
386
+ * const result = await executeAdrPlanningWithTaskTracking(
387
+ * {
388
+ * projectPath: '/path/to/project',
389
+ * adrDirectory: 'docs/adrs',
390
+ * },
391
+ * async (tracker) => {
392
+ * // Problem definition phase
393
+ * await tracker.startPhase('problem_definition');
394
+ * const problem = await getProblemStatement();
395
+ * await tracker.storeProblemDefinition(problem);
396
+ * await tracker.completePhase('problem_definition');
397
+ *
398
+ * // Research phase
399
+ * await tracker.startPhase('research_analysis');
400
+ * const findings = await conductResearch();
401
+ * await tracker.storeResearchFindings(findings.length);
402
+ * await tracker.completePhase('research_analysis');
403
+ *
404
+ * // Return final result
405
+ * return {
406
+ * success: true,
407
+ * sessionId: tracker.sessionId,
408
+ * phase: 'completed',
409
+ * adrPath: '/path/to/adr.md',
410
+ * };
411
+ * }
412
+ * );
413
+ * ```
414
+ */
415
+ export async function executeAdrPlanningWithTaskTracking(options, executor) {
416
+ const apm = getAdrPlanningTaskManager();
417
+ await apm.initialize();
418
+ const { task, context } = await apm.createAdrPlanningTask(options);
419
+ const taskId = task.taskId;
420
+ // Create a tracker interface for the executor
421
+ const tracker = {
422
+ taskId,
423
+ sessionId: context.sessionId,
424
+ startPhase: (phase, message) => apm.startPhase(taskId, phase, message),
425
+ updatePhaseProgress: (phase, progress, message) => apm.updatePhaseProgress(taskId, phase, progress, message),
426
+ completePhase: (phase, message) => apm.completePhase(taskId, phase, message),
427
+ failPhase: (phase, error) => apm.failPhase(taskId, phase, error),
428
+ requestInput: prompt => apm.requestInput(taskId, prompt),
429
+ resumeAfterInput: () => apm.resumeAfterInput(taskId),
430
+ storeProblemDefinition: problem => apm.storeProblemDefinition(taskId, problem),
431
+ storeResearchFindings: count => apm.storeResearchFindings(taskId, count),
432
+ storeOptionsExplored: count => apm.storeOptionsExplored(taskId, count),
433
+ storeDecision: (option, rationale) => apm.storeDecision(taskId, option, rationale),
434
+ storeImpactAssessment: assessment => apm.storeImpactAssessment(taskId, assessment),
435
+ storeImplementationPlan: todoCount => apm.storeImplementationPlan(taskId, todoCount),
436
+ storeAdrGenerated: adrPath => apm.storeAdrGenerated(taskId, adrPath),
437
+ isCancelled: () => apm.isCancelled(taskId),
438
+ isAwaitingInput: () => apm.isAwaitingInput(taskId),
439
+ getContext: () => context,
440
+ };
441
+ try {
442
+ const resultData = await executor(tracker);
443
+ const result = {
444
+ success: resultData?.success ?? false,
445
+ data: resultData,
446
+ };
447
+ await apm.completeTask(taskId, result);
448
+ return { taskId, result };
449
+ }
450
+ catch (error) {
451
+ const errorMessage = error instanceof Error ? error.message : String(error);
452
+ await apm.failTask(taskId, errorMessage);
453
+ return {
454
+ taskId,
455
+ result: {
456
+ success: false,
457
+ error: {
458
+ code: 'ADR_PLANNING_ERROR',
459
+ message: errorMessage,
460
+ recoverable: false,
461
+ },
462
+ },
463
+ };
464
+ }
465
+ }
466
+ //# sourceMappingURL=adr-planning-task-integration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adr-planning-task-integration.js","sourceRoot":"","sources":["../../../src/utils/adr-planning-task-integration.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,cAAc,EAAmD,MAAM,mBAAmB,CAAC;AACpG,OAAO,EAAE,qBAAqB,EAAwB,MAAM,uBAAuB,CAAC;AAEpF,MAAM,MAAM,GAAoB,qBAAqB,CAAC,4BAA4B,CAAC,CAAC;AAEpF;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,oBAAoB;IACpB,mBAAmB;IACnB,oBAAoB;IACpB,iBAAiB;IACjB,mBAAmB;IACnB,yBAAyB;IACzB,gBAAgB;CACR,CAAC;AAwDX;;;;;;;;;GASG;AACH,MAAM,OAAO,sBAAsB;IACzB,WAAW,CAAc;IACzB,cAAc,GAAwC,IAAI,GAAG,EAAE,CAAC;IAExE,YAAY,WAAyB;QACnC,IAAI,CAAC,WAAW,GAAG,WAAW,IAAI,cAAc,EAAE,CAAC;IACrD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU;QACd,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;QACpC,MAAM,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;IACpD,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,qBAAqB,CAAC,OAAqC;QAI/D,MAAM,EAAE,WAAW,EAAE,YAAY,GAAG,WAAW,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;QAEvE,MAAM,kBAAkB,GAAG,SAAS,IAAI,gBAAgB,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QAErE,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC;YAC7C,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,0BAA0B;YAChC,MAAM,EAAE,CAAC,GAAG,mBAAmB,CAAC;YAChC,WAAW;YACX,YAAY;YACZ,GAAG,EAAE,OAAO,EAAE,+CAA+C;YAC7D,YAAY,EAAE,IAAI,EAAE,yBAAyB;SAC9C,CAAC,CAAC;QAEH,MAAM,OAAO,GAA2B;YACtC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,SAAS,EAAE,kBAAkB;YAC7B,YAAY,EAAE,oBAAoB;YAClC,SAAS,EAAE,KAAK;YAChB,aAAa,EAAE,KAAK;SACrB,CAAC;QAEF,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAE9C,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE;YACvC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,SAAS,EAAE,kBAAkB;YAC7B,WAAW;YACX,YAAY;SACb,CAAC,CAAC;QAEH,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,MAAc;QACvB,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,MAAc,EAAE,KAAuB,EAAE,OAAgB;QACxE,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;YACrD,OAAO;QACT,CAAC;QAED,yBAAyB;QACzB,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;QACxC,CAAC;QAED,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC;QAC7B,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC;QAE9B,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAEjD,4CAA4C;QAC5C,MAAM,UAAU,GAAG,mBAAmB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACtD,MAAM,aAAa,GACjB,UAAU,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,UAAU,GAAG,mBAAmB,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEpF,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC;YACpC,MAAM;YACN,QAAQ,EAAE,aAAa;YACvB,KAAK;YACL,aAAa,EAAE,CAAC;YAChB,OAAO,EAAE,OAAO,IAAI,mBAAmB,KAAK,EAAE;SAC/C,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAC;IACxF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,mBAAmB,CACvB,MAAc,EACd,KAAuB,EACvB,aAAqB,EACrB,OAAgB;QAEhB,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QAED,6BAA6B;QAC7B,MAAM,UAAU,GAAG,mBAAmB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACtD,MAAM,aAAa,GAAG,GAAG,GAAG,mBAAmB,CAAC,MAAM,CAAC;QACvD,MAAM,YAAY,GAAG,UAAU,GAAG,aAAa,CAAC;QAChD,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,aAAa,GAAG,GAAG,CAAC,GAAG,aAAa,CAAC,CAAC;QAEzF,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC;YACpC,MAAM;YACN,QAAQ,EAAE,eAAe;YACzB,KAAK;YACL,aAAa;YACb,GAAG,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,OAAO,EAAE,CAAC;SAC1C,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,MAAc,EAAE,KAAuB,EAAE,QAAiB;QAC5E,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QAED,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACpD,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC;QAE9B,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IACjE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,MAAc,EAAE,KAAuB,EAAE,KAAa;QACpE,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QAED,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAEvD,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IACrE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,MAAc,EAAE,MAAc;QAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QAED,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;QAE7B,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAEpD,MAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACjE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,gBAAgB,CAAC,MAAc;QACnC,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QAED,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC;QAE9B,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAE1C,MAAM,CAAC,IAAI,CAAC,kCAAkC,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,sBAAsB,CAAC,MAAc,EAAE,gBAAwB;QACnE,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QAED,OAAO,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QAE5C,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC;YACpC,MAAM;YACN,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,oBAAoB,gBAAgB,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK;SACpE,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC;IAC/F,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,qBAAqB,CAAC,MAAc,EAAE,aAAqB;QAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QAED,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC;QAEtC,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC;YACpC,MAAM;YACN,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,uBAAuB,aAAa,oBAAoB;SAClE,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;IACrE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,oBAAoB,CAAC,MAAc,EAAE,WAAmB;QAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QAED,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC;QAElC,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC;YACpC,MAAM;YACN,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,qBAAqB,WAAW,yBAAyB;SACnE,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;IAClE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,MAAc,EAAE,cAAsB,EAAE,UAAkB;QAC5E,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QAED,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC;QAExC,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC;YACpC,MAAM;YACN,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,kBAAkB,cAAc,EAAE;SAC5C,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,qBAAqB,CACzB,MAAc,EACd,UAAgF;QAEhF,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QAED,OAAO,CAAC,gBAAgB,GAAG,UAAU,CAAC;QAEtC,MAAM,YAAY,GAAG,UAAU,CAAC,gBAAgB,GAAG,UAAU,CAAC,eAAe,CAAC;QAC9E,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC;YACpC,MAAM;YACN,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,oBAAoB,YAAY,aAAa,UAAU,CAAC,KAAK,mBAAmB;SAC1F,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,CAAC,CAAC;IACrE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,uBAAuB,CAAC,MAAc,EAAE,SAAiB;QAC7D,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QAED,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;QAE9B,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC;YACpC,MAAM;YACN,QAAQ,EAAE,EAAE;YACZ,OAAO,EAAE,2BAA2B,SAAS,kBAAkB;SAChE,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IACnE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,iBAAiB,CAAC,MAAc,EAAE,OAAe;QACrD,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QAED,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC;QAE5B,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC;YACpC,MAAM;YACN,QAAQ,EAAE,GAAG;YACb,OAAO,EAAE,kBAAkB,OAAO,EAAE;SACrC,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,MAAc;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,KAAK,CAAC;QACf,CAAC;QAED,yCAAyC;QACzC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACpD,IAAI,IAAI,EAAE,MAAM,KAAK,WAAW,EAAE,CAAC;YACjC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;QAC3B,CAAC;QAED,OAAO,OAAO,CAAC,SAAS,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,MAAc;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,OAAO,OAAO,EAAE,aAAa,IAAI,KAAK,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,MAAc,EAAE,MAAe;QAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;QAC3B,CAAC;QAED,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,IAAI,gCAAgC,CAAC,CAAC;QACtF,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAEnC,MAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACjE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,MAAc,EAAE,MAA6B;QAC9D,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACpD,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAEnC,MAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IAClF,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,MAAc,EAAE,KAAa;QAC1C,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC/C,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAEnC,MAAM,CAAC,KAAK,CAAC,0BAA0B,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IACzE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa,CAAC,MAAc;QAIhC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAC3B,CAAC;CACF;AAED;;GAEG;AACH,IAAI,4BAA4B,GAAkC,IAAI,CAAC;AAEvE,MAAM,UAAU,yBAAyB;IACvC,IAAI,CAAC,4BAA4B,EAAE,CAAC;QAClC,4BAA4B,GAAG,IAAI,sBAAsB,EAAE,CAAC;IAC9D,CAAC;IACD,OAAO,4BAA4B,CAAC;AACtC,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B;IAC/C,4BAA4B,GAAG,IAAI,CAAC;AACtC,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAM,CAAC,KAAK,UAAU,kCAAkC,CACtD,OAAqC,EACrC,QAAiE;IAEjE,MAAM,GAAG,GAAG,yBAAyB,EAAE,CAAC;IACxC,MAAM,GAAG,CAAC,UAAU,EAAE,CAAC;IAEvB,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,GAAG,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;IACnE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAE3B,8CAA8C;IAC9C,MAAM,OAAO,GAA2B;QACtC,MAAM;QACN,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,UAAU,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC;QACtE,mBAAmB,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,CAChD,GAAG,CAAC,mBAAmB,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC;QAC3D,aAAa,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC;QAC5E,SAAS,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC;QAChE,YAAY,EAAE,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC;QACxD,gBAAgB,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,gBAAgB,CAAC,MAAM,CAAC;QACpD,sBAAsB,EAAE,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,sBAAsB,CAAC,MAAM,EAAE,OAAO,CAAC;QAC9E,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAC,MAAM,EAAE,KAAK,CAAC;QACxE,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,oBAAoB,CAAC,MAAM,EAAE,KAAK,CAAC;QACtE,aAAa,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC;QAClF,qBAAqB,EAAE,UAAU,CAAC,EAAE,CAAC,GAAG,CAAC,qBAAqB,CAAC,MAAM,EAAE,UAAU,CAAC;QAClF,uBAAuB,EAAE,SAAS,CAAC,EAAE,CAAC,GAAG,CAAC,uBAAuB,CAAC,MAAM,EAAE,SAAS,CAAC;QACpF,iBAAiB,EAAE,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC;QACpE,WAAW,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC;QAC1C,eAAe,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC;QAClD,UAAU,EAAE,GAAG,EAAE,CAAC,OAAO;KAC1B,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE3C,MAAM,MAAM,GAAG;YACb,OAAO,EAAE,UAAU,EAAE,OAAO,IAAI,KAAK;YACrC,IAAI,EAAE,UAAU;SACZ,CAAC;QAEP,MAAM,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAEvC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IAC5B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5E,MAAM,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAEzC,OAAO;YACL,MAAM;YACN,MAAM,EAAE;gBACN,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE;oBACL,IAAI,EAAE,oBAAoB;oBAC1B,OAAO,EAAE,YAAY;oBACrB,WAAW,EAAE,KAAK;iBACnB;aACG;SACP,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"adr-timeline-extractor.d.ts","sourceRoot":"","sources":["../../../src/utils/adr-timeline-extractor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAsCxF;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,yBAA8B,GACtC,OAAO,CAAC,aAAa,CAAC,CAiFxB;AA2MD;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CA0BjF"}
1
+ {"version":3,"file":"adr-timeline-extractor.d.ts","sourceRoot":"","sources":["../../../src/utils/adr-timeline-extractor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,aAAa,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AAsCxF;;;;;;;GAOG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,yBAA8B,GACtC,OAAO,CAAC,aAAa,CAAC,CAkFxB;AA2MD;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CA0BjF"}
@@ -4,7 +4,7 @@
4
4
  * Extracts timeline information from ADRs using git history,
5
5
  * content parsing, or filesystem metadata with smart conditional logic
6
6
  */
7
- import { exec } from 'child_process';
7
+ import { exec } from 'node:child_process';
8
8
  import { promisify } from 'util';
9
9
  import { stat } from 'fs/promises';
10
10
  const execAsync = promisify(exec);
@@ -53,8 +53,9 @@ export async function extractBasicTimeline(adrPath, adrContent, options = {}) {
53
53
  }
54
54
  }
55
55
  // Log extraction reason for debugging
56
+ // NOTE: All console output goes to stderr to preserve stdout for MCP JSON-RPC
56
57
  if (decision.shouldExtract) {
57
- console.log(`[Timeline] Extracting for ${adrPath}: ${decision.reason}`);
58
+ console.error(`[Timeline] Extracting for ${adrPath}: ${decision.reason}`);
58
59
  }
59
60
  }
60
61
  // Perform extraction using priority order: git → content → filesystem
@@ -1 +1 @@
1
- {"version":3,"file":"adr-timeline-extractor.js","sourceRoot":"","sources":["../../../src/utils/adr-timeline-extractor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAGnC,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;AAalC,MAAM,aAAa,GAAG,IAAI,GAAG,EAAsB,CAAC;AAEpD,SAAS,iBAAiB,CAAC,GAAW;IACpC,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAExB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC;IACzC,IAAI,GAAG,GAAG,KAAK,CAAC,GAAG,GAAG,IAAI,EAAE,CAAC;QAC3B,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC;AACpB,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAW,EAAE,IAAS,EAAE,GAAW;IAC5D,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE;QACrB,IAAI;QACJ,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,GAAG;KACJ,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,OAAe,EACf,UAAkB,EAClB,UAAqC,EAAE;IAEvC,MAAM,EACJ,QAAQ,GAAG,IAAI,EACf,QAAQ,GAAG,IAAI,EAAE,iBAAiB;IAClC,YAAY,GAAG,KAAK,GACrB,GAAG,OAAO,CAAC;IAEZ,qDAAqD;IACrD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAElE,IAAI,CAAC,QAAQ,CAAC,aAAa,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;YACpD,iCAAiC;YACjC,OAAO,yBAAyB,CAAC,UAAU,EAAE,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtF,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,aAAa,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;YACrD,kBAAkB;YAClB,MAAM,MAAM,GAAG,iBAAiB,CAAC,YAAY,OAAO,EAAE,CAAC,CAAC;YACxD,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,MAAuB,CAAC;YACjC,CAAC;QACH,CAAC;QAED,sCAAsC;QACtC,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,6BAA6B,OAAO,KAAK,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IAED,sEAAsE;IACtE,IAAI,QAAQ,GAAkC,IAAI,CAAC;IAEnD,2BAA2B;IAC3B,QAAQ,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAE3C,8BAA8B;IAC9B,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;QACtC,MAAM,WAAW,GAAG,sBAAsB,CAAC,UAAU,CAAC,CAAC;QACvD,IAAI,WAAW,EAAE,CAAC;YAChB,QAAQ,GAAG;gBACT,UAAU,EAAE,WAAW;gBACvB,UAAU,EAAE,WAAW;gBACvB,iBAAiB,EAAE,SAAS;aAC7B,CAAC;QACJ,CAAC;IACH,CAAC;IAED,+BAA+B;IAC/B,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;QACtC,QAAQ,GAAG,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC;IAED,2BAA2B;IAC3B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;IAClC,MAAM,OAAO,GAAG,gBAAgB,CAAC,QAAQ,CAAC,UAAW,CAAC,CAAC;IACvD,MAAM,eAAe,GAAG,gBAAgB,CAAC,QAAQ,CAAC,UAAW,CAAC,CAAC;IAE/D,MAAM,YAAY,GAAkB;QAClC,UAAU,EAAE,QAAQ,CAAC,UAAW;QAChC,UAAU,EAAE,QAAQ,CAAC,UAAW;QAChC,QAAQ,EAAE,OAAO;QACjB,iBAAiB,EAAE,eAAe;QAClC,kBAAkB,EAAE,qBAAqB,CAAC,OAAO,EAAE,eAAe,CAAC;QACnE,iBAAiB,EAAE,QAAQ,CAAC,iBAAqD;KAClF,CAAC;IAEF,6DAA6D;IAC7D,IAAI,QAAQ,EAAE,CAAC;QACb,iBAAiB,CACf,YAAY,OAAO,EAAE,EACrB;YACE,GAAG,YAAY;YACf,eAAe,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE;YAC1C,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,EACD,QAAQ,CACT,CAAC;IACJ,CAAC;IAED,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,qBAAqB,CAClC,OAAe,EACf,UAAkB;IAMlB,wCAAwC;IACxC,MAAM,aAAa,GAAG,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAEzD,+BAA+B;IAC/B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;IAClC,MAAM,cAAc,GAAG,KAAK,CAAC,KAAK,CAAC;IAEnC,cAAc;IACd,MAAM,QAAQ,GAAG,YAAY,OAAO,EAAE,CAAC;IACvC,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAE3C,iDAAiD;IACjD,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO;YACL,aAAa,EAAE,IAAI;YACnB,MAAM,EAAE,mCAAmC;SAC5C,CAAC;IACJ,CAAC;IAED,yDAAyD;IACzD,IAAI,MAAM,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;QACrC,MAAM,aAAa,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACvD,IAAI,cAAc,IAAI,aAAa,EAAE,CAAC;YACpC,OAAO;gBACL,aAAa,EAAE,KAAK;gBACpB,MAAM,EAAE,sCAAsC;gBAC9C,WAAW,EAAE,aAAa;aAC3B,CAAC;QACJ,CAAC;IACH,CAAC;IAED,8DAA8D;IAC9D,MAAM,qBAAqB,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,cAAc,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IAE9F,IAAI,qBAAqB,GAAG,CAAC,EAAE,CAAC;QAC9B,4BAA4B;QAC5B,OAAO;YACL,aAAa,EAAE,IAAI;YACnB,MAAM,EAAE,iBAAiB,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,WAAW;SACtE,CAAC;IACJ,CAAC;IAED,sDAAsD;IACtD,OAAO;QACL,aAAa,EAAE,KAAK;QACpB,MAAM,EAAE,2DAA2D;QACnE,WAAW,EAAE,aAAa;KAC3B,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,sBAAsB,CAAC,OAAe;IAC7C,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACvF,IAAI,SAAS,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACpC,IAAI,CAAC;YACH,iCAAiC;YACjC,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC;YAC/B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;gBAC3B,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;YAC5B,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,sBAAsB;QACxB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,SAAS,yBAAyB,CAChC,QAAgB,EAChB,OAAe,EACf,MAAc;IAEd,IAAI,YAAkB,CAAC;IACvB,IAAI,CAAC;QACH,YAAY,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,4CAA4C;QAC5C,YAAY,GAAG,IAAI,IAAI,EAAE,CAAC;IAC5B,CAAC;IAED,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;IAC3C,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAE1C,OAAO;QACL,UAAU,EAAE,OAAO;QACnB,UAAU,EAAE,OAAO,EAAE,0BAA0B;QAC/C,QAAQ,EAAE,OAAO;QACjB,iBAAiB,EAAE,OAAO;QAC1B,kBAAkB,EAAE,qBAAqB,CAAC,OAAO,EAAE,OAAO,CAAC;QAC3D,iBAAiB,EAAE,SAAS;QAC5B,kBAAkB,EAAE,IAAI;QACxB,WAAW,EAAE,MAAM;KACpB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,gBAAgB,CAAC,OAAe;IAC7C,IAAI,CAAC;QACH,+BAA+B;QAC/B,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,SAAS,CACzC,qDAAqD,OAAO,aAAa,EACzE,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAC;QAEF,yBAAyB;QACzB,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,SAAS,CAAC,+BAA+B,OAAO,GAAG,EAAE;YACrF,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO;YACL,UAAU,EAAE,OAAO,CAAC,IAAI,EAAE;YAC1B,UAAU,EAAE,OAAO,CAAC,IAAI,EAAE;YAC1B,iBAAiB,EAAE,KAAK;SACzB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,uDAAuD;QACvD,OAAO,CAAC,IAAI,CAAC,wCAAwC,OAAO,GAAG,EAAE,KAAK,CAAC,CAAC;QACxE,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,oBAAoB,CAAC,OAAe;IACjD,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;QAElC,OAAO;YACL,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE;YACzC,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE;YACrC,iBAAiB,EAAE,YAAY;SAChC,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,gCAAgC;QAChC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,OAAO;YACL,UAAU,EAAE,GAAG;YACf,UAAU,EAAE,GAAG;YACf,iBAAiB,EAAE,YAAY;SAChC,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,YAAoB;IAC5C,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC;IACpC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IAC9C,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;AACpD,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAAC,OAAe,EAAE,eAAuB;IACrE,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,mBAAmB;IACnB,IAAI,OAAO,GAAG,GAAG,EAAE,CAAC;QAClB,QAAQ,CAAC,IAAI,CAAC,UAAU,OAAO,uBAAuB,CAAC,CAAC;IAC1D,CAAC;IAED,6BAA6B;IAC7B,IAAI,eAAe,GAAG,GAAG,EAAE,CAAC;QAC1B,QAAQ,CAAC,IAAI,CAAC,iBAAiB,eAAe,iBAAiB,CAAC,CAAC;IACnE,CAAC;IAED,gCAAgC;IAChC,IAAI,eAAe,GAAG,GAAG,EAAE,CAAC;QAC1B,QAAQ,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,GAAG,CAAC,0BAA0B,CAAC,CAAC;IAC5F,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,KAAa,EAAE,QAAiB;IACrE,MAAM,IAAI,GAAG,GAAG,KAAK,IAAI,QAAQ,IAAI,EAAE,EAAE,CAAC,WAAW,EAAE,CAAC;IACxD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,2BAA2B;IAC3B,MAAM,YAAY,GAAG;QACnB,qFAAqF;QACrF,oEAAoE;QACpE,oDAAoD;KACrD,CAAC;IAEF,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACpC,IAAI,OAAO,EAAE,CAAC;YACZ,QAAQ,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QACtD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,mDAAmD;IACnD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IACxC,IAAI,MAAM,EAAE,CAAC;QACX,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,oBAAoB;IACpB,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"adr-timeline-extractor.js","sourceRoot":"","sources":["../../../src/utils/adr-timeline-extractor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAGnC,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;AAalC,MAAM,aAAa,GAAG,IAAI,GAAG,EAAsB,CAAC;AAEpD,SAAS,iBAAiB,CAAC,GAAW;IACpC,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACrC,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAExB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC;IACzC,IAAI,GAAG,GAAG,KAAK,CAAC,GAAG,GAAG,IAAI,EAAE,CAAC;QAC3B,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC;AACpB,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAW,EAAE,IAAS,EAAE,GAAW;IAC5D,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE;QACrB,IAAI;QACJ,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,GAAG;KACJ,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,OAAe,EACf,UAAkB,EAClB,UAAqC,EAAE;IAEvC,MAAM,EACJ,QAAQ,GAAG,IAAI,EACf,QAAQ,GAAG,IAAI,EAAE,iBAAiB;IAClC,YAAY,GAAG,KAAK,GACrB,GAAG,OAAO,CAAC;IAEZ,qDAAqD;IACrD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QAElE,IAAI,CAAC,QAAQ,CAAC,aAAa,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;YACpD,iCAAiC;YACjC,OAAO,yBAAyB,CAAC,UAAU,EAAE,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QACtF,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,aAAa,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;YACrD,kBAAkB;YAClB,MAAM,MAAM,GAAG,iBAAiB,CAAC,YAAY,OAAO,EAAE,CAAC,CAAC;YACxD,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,MAAuB,CAAC;YACjC,CAAC;QACH,CAAC;QAED,sCAAsC;QACtC,8EAA8E;QAC9E,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;YAC3B,OAAO,CAAC,KAAK,CAAC,6BAA6B,OAAO,KAAK,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IAED,sEAAsE;IACtE,IAAI,QAAQ,GAAkC,IAAI,CAAC;IAEnD,2BAA2B;IAC3B,QAAQ,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAE3C,8BAA8B;IAC9B,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;QACtC,MAAM,WAAW,GAAG,sBAAsB,CAAC,UAAU,CAAC,CAAC;QACvD,IAAI,WAAW,EAAE,CAAC;YAChB,QAAQ,GAAG;gBACT,UAAU,EAAE,WAAW;gBACvB,UAAU,EAAE,WAAW;gBACvB,iBAAiB,EAAE,SAAS;aAC7B,CAAC;QACJ,CAAC;IACH,CAAC;IAED,+BAA+B;IAC/B,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;QACtC,QAAQ,GAAG,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC;IAED,2BAA2B;IAC3B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;IAClC,MAAM,OAAO,GAAG,gBAAgB,CAAC,QAAQ,CAAC,UAAW,CAAC,CAAC;IACvD,MAAM,eAAe,GAAG,gBAAgB,CAAC,QAAQ,CAAC,UAAW,CAAC,CAAC;IAE/D,MAAM,YAAY,GAAkB;QAClC,UAAU,EAAE,QAAQ,CAAC,UAAW;QAChC,UAAU,EAAE,QAAQ,CAAC,UAAW;QAChC,QAAQ,EAAE,OAAO;QACjB,iBAAiB,EAAE,eAAe;QAClC,kBAAkB,EAAE,qBAAqB,CAAC,OAAO,EAAE,eAAe,CAAC;QACnE,iBAAiB,EAAE,QAAQ,CAAC,iBAAqD;KAClF,CAAC;IAEF,6DAA6D;IAC7D,IAAI,QAAQ,EAAE,CAAC;QACb,iBAAiB,CACf,YAAY,OAAO,EAAE,EACrB;YACE,GAAG,YAAY;YACf,eAAe,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE;YAC1C,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,EACD,QAAQ,CACT,CAAC;IACJ,CAAC;IAED,OAAO,YAAY,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,qBAAqB,CAClC,OAAe,EACf,UAAkB;IAMlB,wCAAwC;IACxC,MAAM,aAAa,GAAG,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAEzD,+BAA+B;IAC/B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;IAClC,MAAM,cAAc,GAAG,KAAK,CAAC,KAAK,CAAC;IAEnC,cAAc;IACd,MAAM,QAAQ,GAAG,YAAY,OAAO,EAAE,CAAC;IACvC,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAE3C,iDAAiD;IACjD,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO;YACL,aAAa,EAAE,IAAI;YACnB,MAAM,EAAE,mCAAmC;SAC5C,CAAC;IACJ,CAAC;IAED,yDAAyD;IACzD,IAAI,MAAM,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;QACrC,MAAM,aAAa,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACvD,IAAI,cAAc,IAAI,aAAa,EAAE,CAAC;YACpC,OAAO;gBACL,aAAa,EAAE,KAAK;gBACpB,MAAM,EAAE,sCAAsC;gBAC9C,WAAW,EAAE,aAAa;aAC3B,CAAC;QACJ,CAAC;IACH,CAAC;IAED,8DAA8D;IAC9D,MAAM,qBAAqB,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,cAAc,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IAE9F,IAAI,qBAAqB,GAAG,CAAC,EAAE,CAAC;QAC9B,4BAA4B;QAC5B,OAAO;YACL,aAAa,EAAE,IAAI;YACnB,MAAM,EAAE,iBAAiB,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,WAAW;SACtE,CAAC;IACJ,CAAC;IAED,sDAAsD;IACtD,OAAO;QACL,aAAa,EAAE,KAAK;QACpB,MAAM,EAAE,2DAA2D;QACnE,WAAW,EAAE,aAAa;KAC3B,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,sBAAsB,CAAC,OAAe;IAC7C,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACvF,IAAI,SAAS,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACpC,IAAI,CAAC;YACH,iCAAiC;YACjC,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC;YAC/B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;gBAC3B,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;YAC5B,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,sBAAsB;QACxB,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,SAAS,yBAAyB,CAChC,QAAgB,EAChB,OAAe,EACf,MAAc;IAEd,IAAI,YAAkB,CAAC;IACvB,IAAI,CAAC;QACH,YAAY,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,4CAA4C;QAC5C,YAAY,GAAG,IAAI,IAAI,EAAE,CAAC;IAC5B,CAAC;IAED,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;IAC3C,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAE1C,OAAO;QACL,UAAU,EAAE,OAAO;QACnB,UAAU,EAAE,OAAO,EAAE,0BAA0B;QAC/C,QAAQ,EAAE,OAAO;QACjB,iBAAiB,EAAE,OAAO;QAC1B,kBAAkB,EAAE,qBAAqB,CAAC,OAAO,EAAE,OAAO,CAAC;QAC3D,iBAAiB,EAAE,SAAS;QAC5B,kBAAkB,EAAE,IAAI;QACxB,WAAW,EAAE,MAAM;KACpB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,gBAAgB,CAAC,OAAe;IAC7C,IAAI,CAAC;QACH,+BAA+B;QAC/B,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,SAAS,CACzC,qDAAqD,OAAO,aAAa,EACzE,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAC;QAEF,yBAAyB;QACzB,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,SAAS,CAAC,+BAA+B,OAAO,GAAG,EAAE;YACrF,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO;YACL,UAAU,EAAE,OAAO,CAAC,IAAI,EAAE;YAC1B,UAAU,EAAE,OAAO,CAAC,IAAI,EAAE;YAC1B,iBAAiB,EAAE,KAAK;SACzB,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,uDAAuD;QACvD,OAAO,CAAC,IAAI,CAAC,wCAAwC,OAAO,GAAG,EAAE,KAAK,CAAC,CAAC;QACxE,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,oBAAoB,CAAC,OAAe;IACjD,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;QAElC,OAAO;YACL,UAAU,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE;YACzC,UAAU,EAAE,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE;YACrC,iBAAiB,EAAE,YAAY;SAChC,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,gCAAgC;QAChC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,OAAO;YACL,UAAU,EAAE,GAAG;YACf,UAAU,EAAE,GAAG;YACf,iBAAiB,EAAE,YAAY;SAChC,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,YAAoB;IAC5C,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC;IACpC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,MAAM,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IAC9C,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;AACpD,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAAC,OAAe,EAAE,eAAuB;IACrE,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,mBAAmB;IACnB,IAAI,OAAO,GAAG,GAAG,EAAE,CAAC;QAClB,QAAQ,CAAC,IAAI,CAAC,UAAU,OAAO,uBAAuB,CAAC,CAAC;IAC1D,CAAC;IAED,6BAA6B;IAC7B,IAAI,eAAe,GAAG,GAAG,EAAE,CAAC;QAC1B,QAAQ,CAAC,IAAI,CAAC,iBAAiB,eAAe,iBAAiB,CAAC,CAAC;IACnE,CAAC;IAED,gCAAgC;IAChC,IAAI,eAAe,GAAG,GAAG,EAAE,CAAC;QAC1B,QAAQ,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,GAAG,CAAC,0BAA0B,CAAC,CAAC;IAC5F,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,KAAa,EAAE,QAAiB;IACrE,MAAM,IAAI,GAAG,GAAG,KAAK,IAAI,QAAQ,IAAI,EAAE,EAAE,CAAC,WAAW,EAAE,CAAC;IACxD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,2BAA2B;IAC3B,MAAM,YAAY,GAAG;QACnB,qFAAqF;QACrF,oEAAoE;QACpE,oDAAoD;KACrD,CAAC;IAEF,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;QAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACpC,IAAI,OAAO,EAAE,CAAC;YACZ,QAAQ,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QACtD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,mDAAmD;IACnD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IACxC,IAAI,MAAM,EAAE,CAAC;QACX,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,oBAAoB;IACpB,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;AAChC,CAAC"}
@@ -3,6 +3,16 @@
3
3
  *
4
4
  * This service handles the execution of prompts using OpenRouter.ai,
5
5
  * transforming the MCP server from returning prompts to returning actual results.
6
+ *
7
+ * @deprecated This module is part of the legacy OpenRouter execution path.
8
+ * As of CE-MCP Phase 4.4, tools should return OrchestrationDirectives instead
9
+ * of using this executor. This module is retained for:
10
+ * - Hybrid mode support (CE-MCP with OpenRouter fallback)
11
+ * - LLM-specific tools (llm_web_search, llm_cloud_management, llm_database_management)
12
+ *
13
+ * For new tools, use the directive-based approach defined in ADR-014.
14
+ * @see src/types/ce-mcp.ts for OrchestrationDirective types
15
+ * @see docs/adrs/adr-014-ce-mcp-architecture.md
6
16
  */
7
17
  import { AIConfig } from '../config/ai-config.js';
8
18
  export interface AIExecutionResult {
@@ -1 +1 @@
1
- {"version":3,"file":"ai-executor.d.ts","sourceRoot":"","sources":["../../../src/utils/ai-executor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EACL,QAAQ,EAIT,MAAM,wBAAwB,CAAC;AAEhC,MAAM,WAAW,iBAAiB;IAChC,wCAAwC;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,8BAA8B;IAC9B,KAAK,CAAC,EAAE;QACN,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,yBAAyB;IACzB,QAAQ,EAAE;QACR,aAAa,EAAE,MAAM,CAAC;QACtB,MAAM,EAAE,OAAO,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED,MAAM,WAAW,gBAAiB,SAAQ,KAAK;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,MAAM,CAAW;IACzB,OAAO,CAAC,KAAK,CAAyE;gBAE1E,MAAM,CAAC,EAAE,QAAQ;IAK7B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA2BxB;;OAEG;IACI,WAAW,IAAI,OAAO;IAM7B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAgB5B;;OAEG;IACU,aAAa,CACxB,MAAM,EAAE,MAAM,EACd,OAAO,GAAE;QACP,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,YAAY,CAAC,EAAE,MAAM,CAAC;KAClB,GACL,OAAO,CAAC,iBAAiB,CAAC;IA0F7B;;OAEG;IACU,uBAAuB,CAAC,CAAC,GAAG,GAAG,EAC1C,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,GAAG,EACZ,OAAO,GAAE;QACP,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,YAAY,CAAC,EAAE,MAAM,CAAC;KAClB,GACL,OAAO,CAAC;QAAE,IAAI,EAAE,CAAC,CAAC;QAAC,GAAG,EAAE,iBAAiB,CAAA;KAAE,CAAC;IAgC/C;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA0B/B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAKxB;;OAEG;IACH,OAAO,CAAC,eAAe;IAevB;;OAEG;IACH,OAAO,CAAC,eAAe;IAUvB;;OAEG;IACH,OAAO,CAAC,YAAY;IASpB;;OAEG;IACH,OAAO,CAAC,WAAW;IAanB;;OAEG;IACI,SAAS,IAAI,QAAQ;IAI5B;;OAEG;IACI,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI;IAKvD;;OAEG;IACI,UAAU,IAAI,IAAI;IAIzB;;OAEG;IACI,aAAa,IAAI;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;CAO1D;AAOD;;GAEG;AACH,wBAAgB,aAAa,IAAI,UAAU,CAK1C;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAEtC"}
1
+ {"version":3,"file":"ai-executor.d.ts","sourceRoot":"","sources":["../../../src/utils/ai-executor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EACL,QAAQ,EAIT,MAAM,wBAAwB,CAAC;AAEhC,MAAM,WAAW,iBAAiB;IAChC,wCAAwC;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,8BAA8B;IAC9B,KAAK,CAAC,EAAE;QACN,YAAY,EAAE,MAAM,CAAC;QACrB,gBAAgB,EAAE,MAAM,CAAC;QACzB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,yBAAyB;IACzB,QAAQ,EAAE;QACR,aAAa,EAAE,MAAM,CAAC;QACtB,MAAM,EAAE,OAAO,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;CACH;AAED,MAAM,WAAW,gBAAiB,SAAQ,KAAK;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,MAAM,CAAW;IACzB,OAAO,CAAC,KAAK,CAAyE;gBAE1E,MAAM,CAAC,EAAE,QAAQ;IAK7B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA8BxB;;OAEG;IACI,WAAW,IAAI,OAAO;IAM7B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAgB5B;;OAEG;IACU,aAAa,CACxB,MAAM,EAAE,MAAM,EACd,OAAO,GAAE;QACP,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,YAAY,CAAC,EAAE,MAAM,CAAC;KAClB,GACL,OAAO,CAAC,iBAAiB,CAAC;IA0F7B;;OAEG;IACU,uBAAuB,CAAC,CAAC,GAAG,GAAG,EAC1C,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,GAAG,EACZ,OAAO,GAAE;QACP,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,YAAY,CAAC,EAAE,MAAM,CAAC;KAClB,GACL,OAAO,CAAC;QAAE,IAAI,EAAE,CAAC,CAAC;QAAC,GAAG,EAAE,iBAAiB,CAAA;KAAE,CAAC;IAgC/C;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA0B/B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAKxB;;OAEG;IACH,OAAO,CAAC,eAAe;IAevB;;OAEG;IACH,OAAO,CAAC,eAAe;IAUvB;;OAEG;IACH,OAAO,CAAC,YAAY;IASpB;;OAEG;IACH,OAAO,CAAC,WAAW;IAanB;;OAEG;IACI,SAAS,IAAI,QAAQ;IAI5B;;OAEG;IACI,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,IAAI;IAKvD;;OAEG;IACI,UAAU,IAAI,IAAI;IAIzB;;OAEG;IACI,aAAa,IAAI;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;CAO1D;AAOD;;GAEG;AACH,wBAAgB,aAAa,IAAI,UAAU,CAK1C;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAEtC"}
@@ -3,6 +3,16 @@
3
3
  *
4
4
  * This service handles the execution of prompts using OpenRouter.ai,
5
5
  * transforming the MCP server from returning prompts to returning actual results.
6
+ *
7
+ * @deprecated This module is part of the legacy OpenRouter execution path.
8
+ * As of CE-MCP Phase 4.4, tools should return OrchestrationDirectives instead
9
+ * of using this executor. This module is retained for:
10
+ * - Hybrid mode support (CE-MCP with OpenRouter fallback)
11
+ * - LLM-specific tools (llm_web_search, llm_cloud_management, llm_database_management)
12
+ *
13
+ * For new tools, use the directive-based approach defined in ADR-014.
14
+ * @see src/types/ce-mcp.ts for OrchestrationDirective types
15
+ * @see docs/adrs/adr-014-ce-mcp-architecture.md
6
16
  */
7
17
  import OpenAI from 'openai';
8
18
  import { loadAIConfig, validateAIConfig, isAIExecutionEnabled, } from '../config/ai-config.js';
@@ -58,7 +68,8 @@ export class AIExecutor {
58
68
  */
59
69
  initializeClient() {
60
70
  if (!isAIExecutionEnabled(this.config)) {
61
- console.log('AI execution disabled - running in prompt-only mode');
71
+ // NOTE: All console output goes to stderr to preserve stdout for MCP JSON-RPC
72
+ console.error('[AI-Executor] AI execution disabled - running in prompt-only mode');
62
73
  return;
63
74
  }
64
75
  try {
@@ -73,7 +84,7 @@ export class AIExecutor {
73
84
  'X-Title': this.config.siteName || '',
74
85
  },
75
86
  });
76
- console.log(`AI Executor initialized with model: ${this.config.defaultModel}`);
87
+ console.error(`[AI-Executor] AI Executor initialized with model: ${this.config.defaultModel}`);
77
88
  }
78
89
  catch (error) {
79
90
  console.error('Failed to initialize AI Executor:', error);
@@ -98,7 +109,7 @@ export class AIExecutor {
98
109
  this.config.executionMode !== currentConfig.executionMode ||
99
110
  this.config.defaultModel !== currentConfig.defaultModel;
100
111
  if (configChanged) {
101
- console.log('AI configuration changed, reinitializing...');
112
+ console.error('[AI-Executor] AI configuration changed, reinitializing...');
102
113
  this.config = currentConfig;
103
114
  this.initializeClient();
104
115
  }