mcp-adr-analysis-server 2.1.20 → 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.
- package/README.md +1 -0
- package/dist/.tsbuildinfo +1 -1
- package/dist/src/config/ai-config.d.ts +54 -6
- package/dist/src/config/ai-config.d.ts.map +1 -1
- package/dist/src/config/ai-config.js +69 -6
- package/dist/src/config/ai-config.js.map +1 -1
- package/dist/src/config/ape-descriptions.d.ts +77 -0
- package/dist/src/config/ape-descriptions.d.ts.map +1 -0
- package/dist/src/config/ape-descriptions.js +177 -0
- package/dist/src/config/ape-descriptions.js.map +1 -0
- package/dist/src/index.d.ts +40 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +564 -8
- package/dist/src/index.js.map +1 -1
- package/dist/src/prompts/adr-suggestion-prompts.d.ts +5 -0
- package/dist/src/prompts/adr-suggestion-prompts.d.ts.map +1 -1
- package/dist/src/prompts/adr-suggestion-prompts.js +22 -1
- package/dist/src/prompts/adr-suggestion-prompts.js.map +1 -1
- package/dist/src/prompts/prompt-catalog.d.ts +95 -0
- package/dist/src/prompts/prompt-catalog.d.ts.map +1 -0
- package/dist/src/prompts/prompt-catalog.js +300 -0
- package/dist/src/prompts/prompt-catalog.js.map +1 -0
- package/dist/src/resources/adrs-discovered-resource.d.ts +124 -0
- package/dist/src/resources/adrs-discovered-resource.d.ts.map +1 -0
- package/dist/src/resources/adrs-discovered-resource.js +174 -0
- package/dist/src/resources/adrs-discovered-resource.js.map +1 -0
- package/dist/src/resources/adrs-review-resource.d.ts +82 -0
- package/dist/src/resources/adrs-review-resource.d.ts.map +1 -0
- package/dist/src/resources/adrs-review-resource.js +160 -0
- package/dist/src/resources/adrs-review-resource.js.map +1 -0
- package/dist/src/resources/architectural-context-resource.d.ts +95 -0
- package/dist/src/resources/architectural-context-resource.d.ts.map +1 -0
- package/dist/src/resources/architectural-context-resource.js +428 -0
- package/dist/src/resources/architectural-context-resource.js.map +1 -0
- package/dist/src/resources/conversation-snapshot-resource.d.ts +92 -0
- package/dist/src/resources/conversation-snapshot-resource.d.ts.map +1 -0
- package/dist/src/resources/conversation-snapshot-resource.js +122 -0
- package/dist/src/resources/conversation-snapshot-resource.js.map +1 -0
- package/dist/src/resources/deployment-status-resource.js +1 -1
- package/dist/src/resources/deployment-status-resource.js.map +1 -1
- package/dist/src/resources/environment-analysis-resource.js +1 -1
- package/dist/src/resources/environment-analysis-resource.js.map +1 -1
- package/dist/src/resources/knowledge-graph-resource.d.ts +129 -0
- package/dist/src/resources/knowledge-graph-resource.d.ts.map +1 -0
- package/dist/src/resources/knowledge-graph-resource.js +217 -0
- package/dist/src/resources/knowledge-graph-resource.js.map +1 -0
- package/dist/src/resources/memory-expand-resource.d.ts +90 -0
- package/dist/src/resources/memory-expand-resource.d.ts.map +1 -0
- package/dist/src/resources/memory-expand-resource.js +176 -0
- package/dist/src/resources/memory-expand-resource.js.map +1 -0
- package/dist/src/resources/memory-stats-resource.d.ts +77 -0
- package/dist/src/resources/memory-stats-resource.d.ts.map +1 -0
- package/dist/src/resources/memory-stats-resource.js +108 -0
- package/dist/src/resources/memory-stats-resource.js.map +1 -0
- package/dist/src/resources/project-metrics-resource.js +1 -1
- package/dist/src/resources/project-metrics-resource.js.map +1 -1
- package/dist/src/resources/resource-cache.d.ts.map +1 -1
- package/dist/src/resources/resource-cache.js +2 -1
- package/dist/src/resources/resource-cache.js.map +1 -1
- package/dist/src/resources/server-context-resource.d.ts +69 -0
- package/dist/src/resources/server-context-resource.d.ts.map +1 -0
- package/dist/src/resources/server-context-resource.js +104 -0
- package/dist/src/resources/server-context-resource.js.map +1 -0
- package/dist/src/resources/tool-catalog-resource.d.ts +122 -0
- package/dist/src/resources/tool-catalog-resource.d.ts.map +1 -0
- package/dist/src/resources/tool-catalog-resource.js +167 -0
- package/dist/src/resources/tool-catalog-resource.js.map +1 -0
- package/dist/src/tools/adr-bootstrap-validation-tool.d.ts.map +1 -1
- package/dist/src/tools/adr-bootstrap-validation-tool.js +7 -6
- package/dist/src/tools/adr-bootstrap-validation-tool.js.map +1 -1
- package/dist/src/tools/adr-suggestion-tool.d.ts +5 -0
- package/dist/src/tools/adr-suggestion-tool.d.ts.map +1 -1
- package/dist/src/tools/adr-suggestion-tool.js +40 -71
- package/dist/src/tools/adr-suggestion-tool.js.map +1 -1
- package/dist/src/tools/bootstrap-validation-loop-tool.d.ts +23 -1
- package/dist/src/tools/bootstrap-validation-loop-tool.d.ts.map +1 -1
- package/dist/src/tools/bootstrap-validation-loop-tool.js +15 -5
- package/dist/src/tools/bootstrap-validation-loop-tool.js.map +1 -1
- package/dist/src/tools/ce-mcp-tools.d.ts +291 -0
- package/dist/src/tools/ce-mcp-tools.d.ts.map +1 -0
- package/dist/src/tools/ce-mcp-tools.js +1188 -0
- package/dist/src/tools/ce-mcp-tools.js.map +1 -0
- package/dist/src/tools/content-masking-tool.d.ts +11 -0
- package/dist/src/tools/content-masking-tool.d.ts.map +1 -1
- package/dist/src/tools/content-masking-tool.js +13 -6
- package/dist/src/tools/content-masking-tool.js.map +1 -1
- package/dist/src/tools/deployment-readiness-tool.d.ts +11 -0
- package/dist/src/tools/deployment-readiness-tool.d.ts.map +1 -1
- package/dist/src/tools/deployment-readiness-tool.js +10 -4
- package/dist/src/tools/deployment-readiness-tool.js.map +1 -1
- package/dist/src/tools/environment-analysis-tool.d.ts +96 -1
- package/dist/src/tools/environment-analysis-tool.d.ts.map +1 -1
- package/dist/src/tools/environment-analysis-tool.js +38 -46
- package/dist/src/tools/environment-analysis-tool.js.map +1 -1
- package/dist/src/tools/research-question-tool.d.ts.map +1 -1
- package/dist/src/tools/research-question-tool.js +3 -2
- package/dist/src/tools/research-question-tool.js.map +1 -1
- package/dist/src/tools/review-existing-adrs-tool.d.ts +5 -0
- package/dist/src/tools/review-existing-adrs-tool.d.ts.map +1 -1
- package/dist/src/tools/review-existing-adrs-tool.js +123 -42
- package/dist/src/tools/review-existing-adrs-tool.js.map +1 -1
- package/dist/src/tools/rule-generation-tool.d.ts.map +1 -1
- package/dist/src/tools/rule-generation-tool.js +3 -5
- package/dist/src/tools/rule-generation-tool.js.map +1 -1
- package/dist/src/tools/search-codebase-tool.d.ts +148 -0
- package/dist/src/tools/search-codebase-tool.d.ts.map +1 -0
- package/dist/src/tools/search-codebase-tool.js +406 -0
- package/dist/src/tools/search-codebase-tool.js.map +1 -0
- package/dist/src/tools/smart-git-push-tool-v2.js +1 -1
- package/dist/src/tools/smart-git-push-tool-v2.js.map +1 -1
- package/dist/src/tools/tool-catalog.d.ts +134 -0
- package/dist/src/tools/tool-catalog.d.ts.map +1 -0
- package/dist/src/tools/tool-catalog.js +1431 -0
- package/dist/src/tools/tool-catalog.js.map +1 -0
- package/dist/src/tools/tool-chain-orchestrator.d.ts +11 -2
- package/dist/src/tools/tool-chain-orchestrator.d.ts.map +1 -1
- package/dist/src/tools/tool-chain-orchestrator.js +11 -2
- package/dist/src/tools/tool-chain-orchestrator.js.map +1 -1
- package/dist/src/tools/tool-dispatcher.d.ts +98 -0
- package/dist/src/tools/tool-dispatcher.d.ts.map +1 -0
- package/dist/src/tools/tool-dispatcher.js +225 -0
- package/dist/src/tools/tool-dispatcher.js.map +1 -0
- package/dist/src/tools/tree-sitter-code-tools.d.ts +184 -0
- package/dist/src/tools/tree-sitter-code-tools.d.ts.map +1 -0
- package/dist/src/tools/tree-sitter-code-tools.js +642 -0
- package/dist/src/tools/tree-sitter-code-tools.js.map +1 -0
- package/dist/src/tools/troubleshoot-guided-workflow-tool.d.ts +22 -0
- package/dist/src/tools/troubleshoot-guided-workflow-tool.d.ts.map +1 -1
- package/dist/src/tools/troubleshoot-guided-workflow-tool.js +20 -3
- package/dist/src/tools/troubleshoot-guided-workflow-tool.js.map +1 -1
- package/dist/src/tools/update-knowledge-tool.d.ts +89 -0
- package/dist/src/tools/update-knowledge-tool.d.ts.map +1 -0
- package/dist/src/tools/update-knowledge-tool.js +222 -0
- package/dist/src/tools/update-knowledge-tool.js.map +1 -0
- package/dist/src/types/ce-mcp.d.ts +248 -0
- package/dist/src/types/ce-mcp.d.ts.map +1 -0
- package/dist/src/types/ce-mcp.js +27 -0
- package/dist/src/types/ce-mcp.js.map +1 -0
- package/dist/src/utils/adr-context-detector.js +1 -1
- package/dist/src/utils/adr-context-detector.js.map +1 -1
- package/dist/src/utils/adr-planning-task-integration.d.ts +260 -0
- package/dist/src/utils/adr-planning-task-integration.d.ts.map +1 -0
- package/dist/src/utils/adr-planning-task-integration.js +466 -0
- package/dist/src/utils/adr-planning-task-integration.js.map +1 -0
- package/dist/src/utils/adr-timeline-extractor.d.ts.map +1 -1
- package/dist/src/utils/adr-timeline-extractor.js +3 -2
- package/dist/src/utils/adr-timeline-extractor.js.map +1 -1
- package/dist/src/utils/ai-executor.d.ts +10 -0
- package/dist/src/utils/ai-executor.d.ts.map +1 -1
- package/dist/src/utils/ai-executor.js +14 -3
- package/dist/src/utils/ai-executor.js.map +1 -1
- package/dist/src/utils/automatic-prompt-engineering.d.ts +5 -0
- package/dist/src/utils/automatic-prompt-engineering.d.ts.map +1 -1
- package/dist/src/utils/automatic-prompt-engineering.js +10 -90
- package/dist/src/utils/automatic-prompt-engineering.js.map +1 -1
- package/dist/src/utils/bootstrap-task-integration.d.ts +214 -0
- package/dist/src/utils/bootstrap-task-integration.d.ts.map +1 -0
- package/dist/src/utils/bootstrap-task-integration.js +365 -0
- package/dist/src/utils/bootstrap-task-integration.js.map +1 -0
- package/dist/src/utils/dag-executor.js +1 -1
- package/dist/src/utils/dag-executor.js.map +1 -1
- package/dist/src/utils/deployment-task-integration.d.ts +260 -0
- package/dist/src/utils/deployment-task-integration.d.ts.map +1 -0
- package/dist/src/utils/deployment-task-integration.js +393 -0
- package/dist/src/utils/deployment-task-integration.js.map +1 -0
- package/dist/src/utils/dynamic-deployment-intelligence.js +1 -1
- package/dist/src/utils/dynamic-deployment-intelligence.js.map +1 -1
- package/dist/src/utils/enhanced-logging.d.ts +3 -0
- package/dist/src/utils/enhanced-logging.d.ts.map +1 -1
- package/dist/src/utils/enhanced-logging.js +9 -30
- package/dist/src/utils/enhanced-logging.js.map +1 -1
- package/dist/src/utils/environment-capability-registry.js +1 -1
- package/dist/src/utils/environment-capability-registry.js.map +1 -1
- package/dist/src/utils/file-system.d.ts.map +1 -1
- package/dist/src/utils/file-system.js +33 -3
- package/dist/src/utils/file-system.js.map +1 -1
- package/dist/src/utils/gitleaks-detector.js +1 -1
- package/dist/src/utils/gitleaks-detector.js.map +1 -1
- package/dist/src/utils/knowledge-graph-manager.d.ts +13 -0
- package/dist/src/utils/knowledge-graph-manager.d.ts.map +1 -1
- package/dist/src/utils/knowledge-graph-manager.js +13 -0
- package/dist/src/utils/knowledge-graph-manager.js.map +1 -1
- package/dist/src/utils/prompt-execution.d.ts +29 -1
- package/dist/src/utils/prompt-execution.d.ts.map +1 -1
- package/dist/src/utils/prompt-execution.js +29 -1
- package/dist/src/utils/prompt-execution.js.map +1 -1
- package/dist/src/utils/research-orchestrator.d.ts +87 -1
- package/dist/src/utils/research-orchestrator.d.ts.map +1 -1
- package/dist/src/utils/research-orchestrator.js +121 -17
- package/dist/src/utils/research-orchestrator.js.map +1 -1
- package/dist/src/utils/research-task-integration.d.ts +297 -0
- package/dist/src/utils/research-task-integration.d.ts.map +1 -0
- package/dist/src/utils/research-task-integration.js +449 -0
- package/dist/src/utils/research-task-integration.js.map +1 -0
- package/dist/src/utils/ripgrep-wrapper.d.ts.map +1 -1
- package/dist/src/utils/ripgrep-wrapper.js +17 -3
- package/dist/src/utils/ripgrep-wrapper.js.map +1 -1
- package/dist/src/utils/sandbox-executor.d.ts +145 -0
- package/dist/src/utils/sandbox-executor.d.ts.map +1 -0
- package/dist/src/utils/sandbox-executor.js +642 -0
- package/dist/src/utils/sandbox-executor.js.map +1 -0
- package/dist/src/utils/server-context-generator.d.ts +5 -0
- package/dist/src/utils/server-context-generator.d.ts.map +1 -1
- package/dist/src/utils/server-context-generator.js +38 -0
- package/dist/src/utils/server-context-generator.js.map +1 -1
- package/dist/src/utils/task-manager.d.ts +239 -0
- package/dist/src/utils/task-manager.d.ts.map +1 -0
- package/dist/src/utils/task-manager.js +528 -0
- package/dist/src/utils/task-manager.js.map +1 -0
- package/dist/src/utils/task-persistence.d.ts +82 -0
- package/dist/src/utils/task-persistence.d.ts.map +1 -0
- package/dist/src/utils/task-persistence.js +248 -0
- package/dist/src/utils/task-persistence.js.map +1 -0
- package/dist/src/utils/test-aware-defaults.d.ts +57 -0
- package/dist/src/utils/test-aware-defaults.d.ts.map +1 -0
- package/dist/src/utils/test-aware-defaults.js +71 -0
- package/dist/src/utils/test-aware-defaults.js.map +1 -0
- package/dist/src/utils/tree-sitter-analyzer.d.ts +42 -5
- package/dist/src/utils/tree-sitter-analyzer.d.ts.map +1 -1
- package/dist/src/utils/tree-sitter-analyzer.js +499 -17
- package/dist/src/utils/tree-sitter-analyzer.js.map +1 -1
- package/package.json +24 -19
- package/dist/src/tools/smart-git-push-tool.d.ts +0 -55
- package/dist/src/tools/smart-git-push-tool.d.ts.map +0 -1
- package/dist/src/tools/smart-git-push-tool.js +0 -1011
- package/dist/src/tools/smart-git-push-tool.js.map +0 -1
|
@@ -14,14 +14,40 @@ import { EnhancedLogger } from './enhanced-logging.js';
|
|
|
14
14
|
import { KnowledgeGraphManager } from './knowledge-graph-manager.js';
|
|
15
15
|
import { findFiles } from './file-system.js';
|
|
16
16
|
import { scanProjectStructure } from './actual-file-operations.js';
|
|
17
|
-
import { searchWithRipgrep, isRipgrepAvailable } from './ripgrep-wrapper.js';
|
|
18
17
|
import { TreeSitterAnalyzer } from './tree-sitter-analyzer.js';
|
|
19
18
|
// import { FirecrawlApp } from '@mendable/firecrawl-js';
|
|
20
19
|
// import { loadAIConfig } from '../config/ai-config.js';
|
|
21
20
|
import { loadConfig } from './config.js';
|
|
21
|
+
import { createResearchWithDelegation, } from './research-task-integration.js';
|
|
22
22
|
/**
|
|
23
23
|
* Research Orchestrator Class
|
|
24
24
|
*
|
|
25
|
+
* @deprecated This class is deprecated as of v2.2.0 and will be removed in v4.0.0.
|
|
26
|
+
* Use atomic tools instead per ADR-018 (Atomic Tools Architecture):
|
|
27
|
+
* - For codebase search: Use `searchCodebase` from `tools/search-codebase-tool.ts`
|
|
28
|
+
* - For external research: Use `llm-web-search-tool.ts` (if needed)
|
|
29
|
+
*
|
|
30
|
+
* **Deprecation Rationale** (see ADR-018):
|
|
31
|
+
* - Sequential execution blocking (2-8 seconds per call)
|
|
32
|
+
* - 5,000-6,000 tokens overhead per session
|
|
33
|
+
* - Causes 37+ test timeout failures due to complex ESM mocking
|
|
34
|
+
* - 850+ second test suite execution time
|
|
35
|
+
* - Conflicts with CE-MCP directive-based architecture (ADR-014)
|
|
36
|
+
*
|
|
37
|
+
* **Migration Guide**:
|
|
38
|
+
* ```typescript
|
|
39
|
+
* // OLD: Using ResearchOrchestrator
|
|
40
|
+
* const orchestrator = new ResearchOrchestrator('/path/to/project', 'docs/adrs');
|
|
41
|
+
* const result = await orchestrator.answerResearchQuestion('Docker configuration');
|
|
42
|
+
*
|
|
43
|
+
* // NEW: Using atomic searchCodebase tool
|
|
44
|
+
* import { searchCodebase } from './tools/search-codebase-tool.js';
|
|
45
|
+
* const result = await searchCodebase({
|
|
46
|
+
* query: 'Docker configuration',
|
|
47
|
+
* projectPath: '/path/to/project'
|
|
48
|
+
* });
|
|
49
|
+
* ```
|
|
50
|
+
*
|
|
25
51
|
* @description Coordinates multi-source research with cascading fallback strategy.
|
|
26
52
|
* Implements a hierarchical approach to answering research questions by querying
|
|
27
53
|
* sources in order of preference: project files → knowledge graph → environment → web search.
|
|
@@ -62,6 +88,14 @@ export class ResearchOrchestrator {
|
|
|
62
88
|
firecrawl; // FirecrawlApp type
|
|
63
89
|
config; // ServerConfig type
|
|
64
90
|
constructor(projectPath, adrDirectory) {
|
|
91
|
+
// DEPRECATION WARNING
|
|
92
|
+
console.warn('⚠️ WARNING: ResearchOrchestrator is deprecated as of v3.0.0 and will be removed in v4.0.0.\n' +
|
|
93
|
+
' Reason: Sequential execution blocking, high token overhead (5K-6K tokens/session),\n' +
|
|
94
|
+
' test complexity (14+ failures), and conflicts with CE-MCP architecture (ADR-014).\n' +
|
|
95
|
+
' Migration: Use atomic tools instead:\n' +
|
|
96
|
+
' - Codebase search: searchCodebase() from tools/search-codebase-tool.ts\n' +
|
|
97
|
+
' - External research: llm-web-search-tool.ts\n' +
|
|
98
|
+
' See ADR-018 for atomic tools architecture.');
|
|
65
99
|
this.logger = new EnhancedLogger();
|
|
66
100
|
this.projectPath = projectPath || process.cwd();
|
|
67
101
|
this.adrDirectory = adrDirectory || 'docs/adrs';
|
|
@@ -86,6 +120,8 @@ export class ResearchOrchestrator {
|
|
|
86
120
|
/**
|
|
87
121
|
* Answer a research question using cascading source hierarchy
|
|
88
122
|
*
|
|
123
|
+
* @deprecated Use atomic searchCodebase() tool instead. See class-level @deprecated tag for details.
|
|
124
|
+
*
|
|
89
125
|
* @description Executes comprehensive research using a cascading approach:
|
|
90
126
|
* 1. Project files search (fastest, most relevant)
|
|
91
127
|
* 2. Knowledge graph query (instant, context-aware)
|
|
@@ -234,7 +270,7 @@ export class ResearchOrchestrator {
|
|
|
234
270
|
}
|
|
235
271
|
}
|
|
236
272
|
/**
|
|
237
|
-
* SOURCE 1: Search project files (Enhanced with tree-sitter
|
|
273
|
+
* SOURCE 1: Search project files (Enhanced with tree-sitter and file ops)
|
|
238
274
|
*/
|
|
239
275
|
async searchProjectFiles(question) {
|
|
240
276
|
const results = {
|
|
@@ -294,24 +330,22 @@ export class ResearchOrchestrator {
|
|
|
294
330
|
catch {
|
|
295
331
|
this.logger.warn(`ADR directory not found: ${adrPath}`, 'ResearchOrchestrator');
|
|
296
332
|
}
|
|
297
|
-
// PHASE 4: Use
|
|
298
|
-
|
|
299
|
-
if (
|
|
300
|
-
this.logger.info('Using
|
|
333
|
+
// PHASE 4: Use glob-based file discovery (tree-sitter will analyze content)
|
|
334
|
+
// Note: Ripgrep removed per ADR-016 - deterministic tools, LLM reasoning
|
|
335
|
+
if (keywords.length > 0) {
|
|
336
|
+
this.logger.info('Using file discovery for keyword-based search', 'ResearchOrchestrator');
|
|
301
337
|
try {
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
});
|
|
307
|
-
relevantFiles.push(...ripgrepFiles);
|
|
338
|
+
// Search for files with keyword-matching names
|
|
339
|
+
const keywordPatterns = keywords.slice(0, 5).map(k => `**/*${k}*`);
|
|
340
|
+
const keywordResults = await findFiles(this.projectPath, keywordPatterns, { limit: 50 });
|
|
341
|
+
relevantFiles.push(...keywordResults.files.map(f => f.path));
|
|
308
342
|
}
|
|
309
343
|
catch {
|
|
310
|
-
this.logger.warn('
|
|
344
|
+
this.logger.warn('Keyword file discovery failed, continuing with other methods', 'ResearchOrchestrator');
|
|
311
345
|
}
|
|
312
346
|
}
|
|
313
|
-
// Remove duplicates
|
|
314
|
-
results.files = [...new Set(relevantFiles)];
|
|
347
|
+
// Remove duplicates and filter out empty/invalid paths
|
|
348
|
+
results.files = [...new Set(relevantFiles)].filter(f => f && typeof f === 'string' && f.trim().length > 0);
|
|
315
349
|
if (results.files.length === 0) {
|
|
316
350
|
this.logger.info('No relevant files found', 'ResearchOrchestrator');
|
|
317
351
|
return results;
|
|
@@ -368,8 +402,11 @@ export class ResearchOrchestrator {
|
|
|
368
402
|
}
|
|
369
403
|
}
|
|
370
404
|
}
|
|
371
|
-
catch {
|
|
372
|
-
|
|
405
|
+
catch (readError) {
|
|
406
|
+
// Only log if file path is valid - empty paths are filtered but may slip through
|
|
407
|
+
if (file && file.trim().length > 0) {
|
|
408
|
+
this.logger.debug(`Failed to read file '${file}': ${readError instanceof Error ? readError.message : 'unknown error'}`, 'ResearchOrchestrator');
|
|
409
|
+
}
|
|
373
410
|
}
|
|
374
411
|
}
|
|
375
412
|
// Sort files by relevance
|
|
@@ -859,5 +896,72 @@ export class ResearchOrchestrator {
|
|
|
859
896
|
entries,
|
|
860
897
|
};
|
|
861
898
|
}
|
|
899
|
+
/**
|
|
900
|
+
* Create a research plan for LLM delegation (non-blocking)
|
|
901
|
+
*
|
|
902
|
+
* This is the recommended method for new code. Instead of executing research
|
|
903
|
+
* internally (which blocks for 2-8 seconds), this returns a research plan
|
|
904
|
+
* that the calling LLM should execute using atomic tools.
|
|
905
|
+
*
|
|
906
|
+
* Benefits:
|
|
907
|
+
* - Non-blocking: Returns immediately with a plan
|
|
908
|
+
* - LLM-controlled: The calling LLM decides execution order
|
|
909
|
+
* - MCP Tasks: Integrated with MCP Tasks for progress tracking
|
|
910
|
+
* - Cancellable: Can be cancelled between phases
|
|
911
|
+
*
|
|
912
|
+
* @param question - The research question to investigate
|
|
913
|
+
* @param options - Optional configuration
|
|
914
|
+
* @returns Task ID, research plan, and tracker for progress updates
|
|
915
|
+
*
|
|
916
|
+
* @example
|
|
917
|
+
* ```typescript
|
|
918
|
+
* const orchestrator = new ResearchOrchestrator('/path/to/project');
|
|
919
|
+
* const { taskId, plan, tracker } = await orchestrator.createResearchPlan(
|
|
920
|
+
* 'How does authentication work in this codebase?'
|
|
921
|
+
* );
|
|
922
|
+
*
|
|
923
|
+
* // LLM receives the plan and executes each phase:
|
|
924
|
+
* for (const phase of plan.phases) {
|
|
925
|
+
* await tracker.startPhase(phase.phase);
|
|
926
|
+
* const result = await executeToolCall(phase.tool, phase.params);
|
|
927
|
+
* await tracker.storeResult(phase.phase, result);
|
|
928
|
+
* await tracker.completePhase(phase.phase);
|
|
929
|
+
* }
|
|
930
|
+
*
|
|
931
|
+
* // Finally, synthesize and complete
|
|
932
|
+
* const answer = synthesize(results);
|
|
933
|
+
* await tracker.storeSynthesizedAnswer(answer, confidence);
|
|
934
|
+
* await tracker.complete({ success: true, data: { answer, confidence } });
|
|
935
|
+
* ```
|
|
936
|
+
*
|
|
937
|
+
* @since 3.1.0
|
|
938
|
+
*/
|
|
939
|
+
async createResearchPlan(question, options) {
|
|
940
|
+
const taskOptions = {
|
|
941
|
+
question,
|
|
942
|
+
projectPath: this.projectPath,
|
|
943
|
+
includeWebSearch: options?.includeWebSearch ?? true,
|
|
944
|
+
confidenceThreshold: options?.confidenceThreshold ?? this.confidenceThreshold,
|
|
945
|
+
};
|
|
946
|
+
const { taskId, plan, tracker } = await createResearchWithDelegation(taskOptions);
|
|
947
|
+
this.logger.info('Created research plan for LLM delegation', 'ResearchOrchestrator', {
|
|
948
|
+
taskId,
|
|
949
|
+
question: question.substring(0, 100),
|
|
950
|
+
phasesCount: plan.phases.length,
|
|
951
|
+
});
|
|
952
|
+
return { taskId, plan, tracker };
|
|
953
|
+
}
|
|
954
|
+
/**
|
|
955
|
+
* Get the project path used by this orchestrator
|
|
956
|
+
*/
|
|
957
|
+
getProjectPath() {
|
|
958
|
+
return this.projectPath;
|
|
959
|
+
}
|
|
960
|
+
/**
|
|
961
|
+
* Get the ADR directory used by this orchestrator
|
|
962
|
+
*/
|
|
963
|
+
getAdrDirectory() {
|
|
964
|
+
return this.adrDirectory;
|
|
965
|
+
}
|
|
862
966
|
}
|
|
863
967
|
//# sourceMappingURL=research-orchestrator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"research-orchestrator.js","sourceRoot":"","sources":["../../../src/utils/research-orchestrator.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"research-orchestrator.js","sourceRoot":"","sources":["../../../src/utils/research-orchestrator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,297 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MCP Tasks Integration for Research Orchestrator
|
|
3
|
+
*
|
|
4
|
+
* This module provides standardized task tracking for research operations,
|
|
5
|
+
* implementing ADR-020: MCP Tasks Integration Strategy.
|
|
6
|
+
*
|
|
7
|
+
* Key features:
|
|
8
|
+
* - Creates MCP Tasks for research operations
|
|
9
|
+
* - Returns research plans for LLM delegation (non-blocking)
|
|
10
|
+
* - Tracks progress through research phases
|
|
11
|
+
* - Supports cancellation between phases
|
|
12
|
+
*
|
|
13
|
+
* @see ADR-020: MCP Tasks Integration Strategy
|
|
14
|
+
* @see https://modelcontextprotocol.io/specification/2025-11-25/basic/utilities/tasks
|
|
15
|
+
*/
|
|
16
|
+
import { type AdrTask, type TaskResult, type TaskManager } from './task-manager.js';
|
|
17
|
+
/**
|
|
18
|
+
* Research phases that map to MCP Task phases
|
|
19
|
+
*/
|
|
20
|
+
export declare const RESEARCH_PHASES: readonly ["initialization", "project_files_search", "knowledge_graph_query", "environment_analysis", "web_search", "synthesis"];
|
|
21
|
+
export type ResearchPhase = (typeof RESEARCH_PHASES)[number];
|
|
22
|
+
/**
|
|
23
|
+
* Research task context for tracking state across research steps
|
|
24
|
+
*/
|
|
25
|
+
export interface ResearchTaskContext {
|
|
26
|
+
taskId: string;
|
|
27
|
+
currentPhase: ResearchPhase;
|
|
28
|
+
question: string;
|
|
29
|
+
projectPath: string;
|
|
30
|
+
cancelled: boolean;
|
|
31
|
+
projectFilesResult?: {
|
|
32
|
+
filesFound: number;
|
|
33
|
+
relevantFiles: string[];
|
|
34
|
+
confidence: number;
|
|
35
|
+
};
|
|
36
|
+
knowledgeGraphResult?: {
|
|
37
|
+
nodesFound: number;
|
|
38
|
+
relationshipsFound: number;
|
|
39
|
+
confidence: number;
|
|
40
|
+
};
|
|
41
|
+
environmentResult?: {
|
|
42
|
+
capabilitiesFound: number;
|
|
43
|
+
relevantData: Record<string, unknown>;
|
|
44
|
+
confidence: number;
|
|
45
|
+
};
|
|
46
|
+
webSearchResult?: {
|
|
47
|
+
resultsFound: number;
|
|
48
|
+
sources: string[];
|
|
49
|
+
confidence: number;
|
|
50
|
+
};
|
|
51
|
+
synthesizedAnswer?: string;
|
|
52
|
+
overallConfidence?: number;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Options for creating a research task
|
|
56
|
+
*/
|
|
57
|
+
export interface CreateResearchTaskOptions {
|
|
58
|
+
question: string;
|
|
59
|
+
projectPath: string;
|
|
60
|
+
includeWebSearch?: boolean;
|
|
61
|
+
confidenceThreshold?: number;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Result from research task execution
|
|
65
|
+
*/
|
|
66
|
+
export interface ResearchTaskResult extends TaskResult {
|
|
67
|
+
data?: {
|
|
68
|
+
answer: string;
|
|
69
|
+
confidence: number;
|
|
70
|
+
sources: ResearchSource[];
|
|
71
|
+
phasesCompleted: ResearchPhase[];
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Research source from a phase
|
|
76
|
+
*/
|
|
77
|
+
export interface ResearchSource {
|
|
78
|
+
type: 'project_files' | 'knowledge_graph' | 'environment' | 'web_search';
|
|
79
|
+
confidence: number;
|
|
80
|
+
data: unknown;
|
|
81
|
+
timestamp: string;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Research plan phase - describes a tool to execute
|
|
85
|
+
*/
|
|
86
|
+
export interface ResearchPlanPhase {
|
|
87
|
+
phase: ResearchPhase;
|
|
88
|
+
tool: string;
|
|
89
|
+
params: Record<string, unknown>;
|
|
90
|
+
purpose: string;
|
|
91
|
+
condition?: string;
|
|
92
|
+
expectedOutput: string;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Research plan returned for LLM delegation
|
|
96
|
+
*/
|
|
97
|
+
export interface ResearchPlan {
|
|
98
|
+
taskId: string;
|
|
99
|
+
question: string;
|
|
100
|
+
phases: ResearchPlanPhase[];
|
|
101
|
+
synthesisInstructions: string;
|
|
102
|
+
expectedResultFormat: string;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Research Task Manager - Provides MCP Tasks integration for research operations
|
|
106
|
+
*
|
|
107
|
+
* This class wraps the TaskManager to provide research-specific functionality:
|
|
108
|
+
* - Creates tasks with research phases
|
|
109
|
+
* - Returns research plans for LLM delegation (non-blocking)
|
|
110
|
+
* - Tracks research progress through multiple phases
|
|
111
|
+
* - Supports cancellation between phases
|
|
112
|
+
*/
|
|
113
|
+
export declare class ResearchTaskManager {
|
|
114
|
+
private taskManager;
|
|
115
|
+
private activeContexts;
|
|
116
|
+
constructor(taskManager?: TaskManager);
|
|
117
|
+
/**
|
|
118
|
+
* Initialize the research task manager
|
|
119
|
+
*/
|
|
120
|
+
initialize(): Promise<void>;
|
|
121
|
+
/**
|
|
122
|
+
* Create a new research task and return a research plan for LLM delegation
|
|
123
|
+
*
|
|
124
|
+
* This method does NOT execute research - it returns a plan that the calling
|
|
125
|
+
* LLM should execute using atomic tools.
|
|
126
|
+
*
|
|
127
|
+
* @returns The created task, context, and research plan for LLM delegation
|
|
128
|
+
*/
|
|
129
|
+
createResearchTask(options: CreateResearchTaskOptions): Promise<{
|
|
130
|
+
task: AdrTask;
|
|
131
|
+
context: ResearchTaskContext;
|
|
132
|
+
plan: ResearchPlan;
|
|
133
|
+
}>;
|
|
134
|
+
/**
|
|
135
|
+
* Generate a research plan for LLM delegation
|
|
136
|
+
*
|
|
137
|
+
* This creates a structured plan that tells the calling LLM what tools
|
|
138
|
+
* to use and in what order to complete the research.
|
|
139
|
+
*/
|
|
140
|
+
private generateResearchPlan;
|
|
141
|
+
/**
|
|
142
|
+
* Get research task context
|
|
143
|
+
*/
|
|
144
|
+
getContext(taskId: string): ResearchTaskContext | undefined;
|
|
145
|
+
/**
|
|
146
|
+
* Start a research phase
|
|
147
|
+
*/
|
|
148
|
+
startPhase(taskId: string, phase: ResearchPhase, message?: string): Promise<void>;
|
|
149
|
+
/**
|
|
150
|
+
* Update phase progress
|
|
151
|
+
*/
|
|
152
|
+
updatePhaseProgress(taskId: string, phase: ResearchPhase, phaseProgress: number, message?: string): Promise<void>;
|
|
153
|
+
/**
|
|
154
|
+
* Complete a research phase
|
|
155
|
+
*/
|
|
156
|
+
completePhase(taskId: string, phase: ResearchPhase, _message?: string): Promise<void>;
|
|
157
|
+
/**
|
|
158
|
+
* Fail a research phase
|
|
159
|
+
*/
|
|
160
|
+
failPhase(taskId: string, phase: ResearchPhase, error: string): Promise<void>;
|
|
161
|
+
/**
|
|
162
|
+
* Store project files search result
|
|
163
|
+
*/
|
|
164
|
+
storeProjectFilesResult(taskId: string, result: {
|
|
165
|
+
filesFound: number;
|
|
166
|
+
relevantFiles: string[];
|
|
167
|
+
confidence: number;
|
|
168
|
+
}): Promise<void>;
|
|
169
|
+
/**
|
|
170
|
+
* Store knowledge graph query result
|
|
171
|
+
*/
|
|
172
|
+
storeKnowledgeGraphResult(taskId: string, result: {
|
|
173
|
+
nodesFound: number;
|
|
174
|
+
relationshipsFound: number;
|
|
175
|
+
confidence: number;
|
|
176
|
+
}): Promise<void>;
|
|
177
|
+
/**
|
|
178
|
+
* Store environment analysis result
|
|
179
|
+
*/
|
|
180
|
+
storeEnvironmentResult(taskId: string, result: {
|
|
181
|
+
capabilitiesFound: number;
|
|
182
|
+
relevantData: Record<string, unknown>;
|
|
183
|
+
confidence: number;
|
|
184
|
+
}): Promise<void>;
|
|
185
|
+
/**
|
|
186
|
+
* Store web search result
|
|
187
|
+
*/
|
|
188
|
+
storeWebSearchResult(taskId: string, result: {
|
|
189
|
+
resultsFound: number;
|
|
190
|
+
sources: string[];
|
|
191
|
+
confidence: number;
|
|
192
|
+
}): Promise<void>;
|
|
193
|
+
/**
|
|
194
|
+
* Store synthesized answer
|
|
195
|
+
*/
|
|
196
|
+
storeSynthesizedAnswer(taskId: string, answer: string, confidence: number): Promise<void>;
|
|
197
|
+
/**
|
|
198
|
+
* Check if task is cancelled
|
|
199
|
+
*/
|
|
200
|
+
isCancelled(taskId: string): Promise<boolean>;
|
|
201
|
+
/**
|
|
202
|
+
* Cancel a research task
|
|
203
|
+
*/
|
|
204
|
+
cancelTask(taskId: string, reason?: string): Promise<void>;
|
|
205
|
+
/**
|
|
206
|
+
* Complete a research task successfully
|
|
207
|
+
*/
|
|
208
|
+
completeTask(taskId: string, result: ResearchTaskResult): Promise<void>;
|
|
209
|
+
/**
|
|
210
|
+
* Fail a research task
|
|
211
|
+
*/
|
|
212
|
+
failTask(taskId: string, error: string): Promise<void>;
|
|
213
|
+
/**
|
|
214
|
+
* Get task status
|
|
215
|
+
*/
|
|
216
|
+
getTaskStatus(taskId: string): Promise<{
|
|
217
|
+
task: AdrTask | null;
|
|
218
|
+
context: ResearchTaskContext | undefined;
|
|
219
|
+
}>;
|
|
220
|
+
}
|
|
221
|
+
export declare function getResearchTaskManager(): ResearchTaskManager;
|
|
222
|
+
/**
|
|
223
|
+
* Reset the global ResearchTaskManager (for testing)
|
|
224
|
+
*/
|
|
225
|
+
export declare function resetResearchTaskManager(): Promise<void>;
|
|
226
|
+
/**
|
|
227
|
+
* Helper function to create a research task and get the LLM delegation plan
|
|
228
|
+
*
|
|
229
|
+
* This is the primary entry point for research operations. It:
|
|
230
|
+
* 1. Creates an MCP Task for tracking
|
|
231
|
+
* 2. Returns a research plan for the calling LLM to execute
|
|
232
|
+
* 3. The LLM executes each phase using atomic tools
|
|
233
|
+
* 4. The LLM reports progress back via the tracker interface
|
|
234
|
+
*
|
|
235
|
+
* @example
|
|
236
|
+
* ```typescript
|
|
237
|
+
* const { taskId, plan, tracker } = await createResearchWithDelegation({
|
|
238
|
+
* question: 'How does authentication work in this codebase?',
|
|
239
|
+
* projectPath: '/path/to/project',
|
|
240
|
+
* });
|
|
241
|
+
*
|
|
242
|
+
* // LLM receives the plan and executes each phase:
|
|
243
|
+
* // Phase 1: searchCodebase({ query: question, ... })
|
|
244
|
+
* // Phase 2: query_knowledge_graph({ question, ... })
|
|
245
|
+
* // etc.
|
|
246
|
+
*
|
|
247
|
+
* // After each phase, LLM reports progress:
|
|
248
|
+
* await tracker.storeProjectFilesResult({ filesFound: 10, ... });
|
|
249
|
+
* await tracker.completePhase('project_files_search');
|
|
250
|
+
*
|
|
251
|
+
* // Finally, LLM synthesizes and completes:
|
|
252
|
+
* await tracker.storeSynthesizedAnswer(answer, confidence);
|
|
253
|
+
* await tracker.complete({ success: true, data: { answer, ... } });
|
|
254
|
+
* ```
|
|
255
|
+
*/
|
|
256
|
+
export declare function createResearchWithDelegation(options: CreateResearchTaskOptions): Promise<{
|
|
257
|
+
taskId: string;
|
|
258
|
+
plan: ResearchPlan;
|
|
259
|
+
tracker: ResearchTaskTracker;
|
|
260
|
+
}>;
|
|
261
|
+
/**
|
|
262
|
+
* Task tracker interface provided to LLM for research execution
|
|
263
|
+
*/
|
|
264
|
+
export interface ResearchTaskTracker {
|
|
265
|
+
taskId: string;
|
|
266
|
+
startPhase: (phase: ResearchPhase, message?: string) => Promise<void>;
|
|
267
|
+
updatePhaseProgress: (phase: ResearchPhase, progress: number, message?: string) => Promise<void>;
|
|
268
|
+
completePhase: (phase: ResearchPhase, message?: string) => Promise<void>;
|
|
269
|
+
failPhase: (phase: ResearchPhase, error: string) => Promise<void>;
|
|
270
|
+
storeProjectFilesResult: (result: {
|
|
271
|
+
filesFound: number;
|
|
272
|
+
relevantFiles: string[];
|
|
273
|
+
confidence: number;
|
|
274
|
+
}) => Promise<void>;
|
|
275
|
+
storeKnowledgeGraphResult: (result: {
|
|
276
|
+
nodesFound: number;
|
|
277
|
+
relationshipsFound: number;
|
|
278
|
+
confidence: number;
|
|
279
|
+
}) => Promise<void>;
|
|
280
|
+
storeEnvironmentResult: (result: {
|
|
281
|
+
capabilitiesFound: number;
|
|
282
|
+
relevantData: Record<string, unknown>;
|
|
283
|
+
confidence: number;
|
|
284
|
+
}) => Promise<void>;
|
|
285
|
+
storeWebSearchResult: (result: {
|
|
286
|
+
resultsFound: number;
|
|
287
|
+
sources: string[];
|
|
288
|
+
confidence: number;
|
|
289
|
+
}) => Promise<void>;
|
|
290
|
+
storeSynthesizedAnswer: (answer: string, confidence: number) => Promise<void>;
|
|
291
|
+
isCancelled: () => Promise<boolean>;
|
|
292
|
+
cancel: (reason?: string) => Promise<void>;
|
|
293
|
+
complete: (result: ResearchTaskResult) => Promise<void>;
|
|
294
|
+
fail: (error: string) => Promise<void>;
|
|
295
|
+
getContext: () => ResearchTaskContext;
|
|
296
|
+
}
|
|
297
|
+
//# sourceMappingURL=research-task-integration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"research-task-integration.d.ts","sourceRoot":"","sources":["../../../src/utils/research-task-integration.ts"],"names":[],"mappings":"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"}
|