mcp-adr-analysis-server 2.0.3 → 2.0.5

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 (82) hide show
  1. package/dist/src/index.d.ts +26 -0
  2. package/dist/src/index.d.ts.map +1 -1
  3. package/dist/src/index.js +524 -325
  4. package/dist/src/index.js.map +1 -1
  5. package/dist/src/prompts/adr-suggestion-prompts.d.ts +1 -0
  6. package/dist/src/prompts/adr-suggestion-prompts.d.ts.map +1 -1
  7. package/dist/src/prompts/adr-suggestion-prompts.js +14 -6
  8. package/dist/src/prompts/adr-suggestion-prompts.js.map +1 -1
  9. package/dist/src/resources/index.d.ts.map +1 -1
  10. package/dist/src/resources/index.js +31 -15
  11. package/dist/src/resources/index.js.map +1 -1
  12. package/dist/src/tools/adr-suggestion-tool.d.ts +4 -1
  13. package/dist/src/tools/adr-suggestion-tool.d.ts.map +1 -1
  14. package/dist/src/tools/adr-suggestion-tool.js +72 -114
  15. package/dist/src/tools/adr-suggestion-tool.js.map +1 -1
  16. package/dist/src/tools/content-masking-tool.d.ts +7 -0
  17. package/dist/src/tools/content-masking-tool.d.ts.map +1 -1
  18. package/dist/src/tools/content-masking-tool.js +134 -17
  19. package/dist/src/tools/content-masking-tool.js.map +1 -1
  20. package/dist/src/tools/environment-analysis-tool.d.ts +4 -0
  21. package/dist/src/tools/environment-analysis-tool.d.ts.map +1 -1
  22. package/dist/src/tools/environment-analysis-tool.js +209 -25
  23. package/dist/src/tools/environment-analysis-tool.js.map +1 -1
  24. package/dist/src/tools/research-question-tool.d.ts +4 -0
  25. package/dist/src/tools/research-question-tool.d.ts.map +1 -1
  26. package/dist/src/tools/research-question-tool.js +42 -4
  27. package/dist/src/tools/research-question-tool.js.map +1 -1
  28. package/dist/src/tools/rule-generation-tool.d.ts +4 -0
  29. package/dist/src/tools/rule-generation-tool.d.ts.map +1 -1
  30. package/dist/src/tools/rule-generation-tool.js +136 -16
  31. package/dist/src/tools/rule-generation-tool.js.map +1 -1
  32. package/dist/src/types/conversation-context.d.ts +93 -0
  33. package/dist/src/types/conversation-context.d.ts.map +1 -0
  34. package/dist/src/types/conversation-context.js +101 -0
  35. package/dist/src/types/conversation-context.js.map +1 -0
  36. package/dist/src/utils/actual-file-operations.d.ts +40 -0
  37. package/dist/src/utils/actual-file-operations.d.ts.map +1 -0
  38. package/dist/src/utils/actual-file-operations.js +309 -0
  39. package/dist/src/utils/actual-file-operations.js.map +1 -0
  40. package/dist/src/utils/adr-discovery.d.ts +36 -0
  41. package/dist/src/utils/adr-discovery.d.ts.map +1 -0
  42. package/dist/src/utils/adr-discovery.js +237 -0
  43. package/dist/src/utils/adr-discovery.js.map +1 -0
  44. package/dist/src/utils/adr-suggestions.d.ts +2 -1
  45. package/dist/src/utils/adr-suggestions.d.ts.map +1 -1
  46. package/dist/src/utils/adr-suggestions.js +8 -2
  47. package/dist/src/utils/adr-suggestions.js.map +1 -1
  48. package/dist/src/utils/apply-cot-enhancement.d.ts +46 -0
  49. package/dist/src/utils/apply-cot-enhancement.d.ts.map +1 -0
  50. package/dist/src/utils/apply-cot-enhancement.js +165 -0
  51. package/dist/src/utils/apply-cot-enhancement.js.map +1 -0
  52. package/dist/src/utils/chain-of-thought-template.d.ts +48 -0
  53. package/dist/src/utils/chain-of-thought-template.d.ts.map +1 -0
  54. package/dist/src/utils/chain-of-thought-template.js +191 -0
  55. package/dist/src/utils/chain-of-thought-template.js.map +1 -0
  56. package/dist/src/utils/deployment-analysis.d.ts +1 -0
  57. package/dist/src/utils/deployment-analysis.d.ts.map +1 -1
  58. package/dist/src/utils/deployment-analysis.js +82 -39
  59. package/dist/src/utils/deployment-analysis.js.map +1 -1
  60. package/dist/src/utils/environment-analysis.d.ts +6 -1
  61. package/dist/src/utils/environment-analysis.d.ts.map +1 -1
  62. package/dist/src/utils/environment-analysis.js +176 -87
  63. package/dist/src/utils/environment-analysis.js.map +1 -1
  64. package/dist/src/utils/file-system.d.ts +1 -0
  65. package/dist/src/utils/file-system.d.ts.map +1 -1
  66. package/dist/src/utils/file-system.js +24 -47
  67. package/dist/src/utils/file-system.js.map +1 -1
  68. package/dist/src/utils/prompt-execution.d.ts.map +1 -1
  69. package/dist/src/utils/prompt-execution.js +67 -3
  70. package/dist/src/utils/prompt-execution.js.map +1 -1
  71. package/dist/src/utils/research-integration.d.ts +4 -0
  72. package/dist/src/utils/research-integration.d.ts.map +1 -1
  73. package/dist/src/utils/research-integration.js +275 -84
  74. package/dist/src/utils/research-integration.js.map +1 -1
  75. package/dist/src/utils/research-questions.d.ts.map +1 -1
  76. package/dist/src/utils/research-questions.js +134 -38
  77. package/dist/src/utils/research-questions.js.map +1 -1
  78. package/dist/src/utils/rule-generation.d.ts +2 -1
  79. package/dist/src/utils/rule-generation.d.ts.map +1 -1
  80. package/dist/src/utils/rule-generation.js +65 -36
  81. package/dist/src/utils/rule-generation.js.map +1 -1
  82. package/package.json +4 -4
@@ -8,37 +8,63 @@ import { McpAdrError } from '../types/index.js';
8
8
  */
9
9
  export async function identifyDeploymentTasks(adrDirectory = 'docs/adrs', todoPath) {
10
10
  try {
11
- const { findFiles } = await import('./file-system.js');
12
- // Generate file discovery prompt for AI delegation
13
- const adrFileDiscoveryPrompt = await findFiles(process.cwd(), [`${adrDirectory}/**/*.md`], {
14
- includeContent: true,
15
- });
11
+ // Use actual ADR discovery instead of prompts
12
+ const { discoverAdrsInDirectory } = await import('./adr-discovery.js');
13
+ // Actually read ADR files
14
+ const discoveryResult = await discoverAdrsInDirectory(adrDirectory, true, process.cwd());
15
+ // Read TODO file if provided
16
+ let todoContent = '';
17
+ if (todoPath) {
18
+ try {
19
+ const fs = await import('fs/promises');
20
+ const path = await import('path');
21
+ const fullTodoPath = path.resolve(process.cwd(), todoPath);
22
+ todoContent = await fs.readFile(fullTodoPath, 'utf-8');
23
+ }
24
+ catch (error) {
25
+ console.warn(`Could not read TODO file at ${todoPath}: ${error}`);
26
+ todoContent = `[TODO file at ${todoPath} could not be read]`;
27
+ }
28
+ }
16
29
  // Create comprehensive deployment task identification prompt
17
30
  const deploymentAnalysisPrompt = `
18
31
  # Deployment Task Identification
19
32
 
20
- Please analyze ADR files and todo content to identify deployment-related tasks.
33
+ Based on actual ADR file analysis and TODO content, identify deployment-related tasks:
21
34
 
22
- ## File Discovery Instructions
35
+ ## Discovered ADRs (${discoveryResult.totalAdrs} total)
23
36
 
24
- ${adrFileDiscoveryPrompt.prompt}
37
+ ${discoveryResult.adrs.length > 0 ?
38
+ discoveryResult.adrs.map((adr, index) => `
39
+ ### ${index + 1}. ${adr.title}
40
+ - **File**: ${adr.filename}
41
+ - **Status**: ${adr.status}
42
+ - **Path**: ${adr.path}
43
+ ${adr.metadata?.number ? `- **Number**: ${adr.metadata.number}` : ''}
25
44
 
26
- ## Implementation Steps
45
+ #### ADR Content:
46
+ \`\`\`markdown
47
+ ${adr.content || 'Content not available'}
48
+ \`\`\`
27
49
 
28
- ${adrFileDiscoveryPrompt.instructions}
50
+ ---
51
+ `).join('\n') : 'No ADRs found in the specified directory.'}
29
52
 
30
- ## Additional Analysis Requirements
53
+ ## TODO Content Analysis
31
54
 
32
55
  ${todoPath ? `
33
- ### Todo File Analysis
34
- Please also read and analyze the todo file at: ${todoPath}
35
- Extract any deployment-related tasks, infrastructure requirements, or operational concerns.
36
- ` : ''}
56
+ ### TODO File: ${todoPath}
57
+ \`\`\`
58
+ ${todoContent}
59
+ \`\`\`
60
+
61
+ Extract any deployment-related tasks, infrastructure requirements, or operational concerns from the actual TODO content above.
62
+ ` : '**No TODO file provided.** Only ADR content will be analyzed for deployment tasks.'}
37
63
 
38
64
  ## Task Identification Criteria
39
65
 
40
- For each ADR file discovered:
41
- 1. Extract deployment-related decisions and requirements
66
+ For each ADR with **actual content** and TODO content shown above:
67
+ 1. Extract deployment-related decisions and requirements from **actual ADR content**
42
68
  2. Identify infrastructure components mentioned
43
69
  3. Find CI/CD pipeline requirements
44
70
  4. Detect operational concerns and monitoring needs
@@ -47,54 +73,71 @@ For each ADR file discovered:
47
73
  ## Required Output Format
48
74
 
49
75
  Please provide deployment task analysis in JSON format with:
50
- - Task identification and categorization
76
+ - Task identification and categorization based on actual content
51
77
  - Priority and complexity assessment
52
- - Dependencies between tasks
78
+ - Dependencies between tasks derived from actual ADR content
53
79
  - Implementation timeline recommendations
54
80
 
55
- ## Next Steps
56
- 1. **Submit the identification prompt** to an AI agent for comprehensive task analysis
57
- 2. **Parse the JSON response** to get identified deployment tasks
58
- 3. **Review task dependencies** and deployment phases
59
- 4. **Use tasks** for deployment progress tracking and management
60
-
61
81
  ## Expected AI Response Format
62
82
  The AI will return a JSON object with:
63
83
  - \`deploymentTaskAnalysis\`: Overall analysis metadata and confidence
64
- - \`identifiedTasks\`: Detailed deployment tasks with verification criteria
84
+ - \`identifiedTasks\`: Detailed deployment tasks with verification criteria based on actual content
65
85
  - \`deploymentPhases\`: Organized deployment phases and sequencing
66
- - \`deploymentDependencies\`: Task dependencies and constraints
86
+ - \`deploymentDependencies\`: Task dependencies and constraints from actual ADRs
67
87
  - \`riskAssessment\`: Deployment risks and mitigation strategies
68
88
  - \`recommendations\`: Process and tooling recommendations
69
-
70
- ## Usage Example
71
- \`\`\`typescript
72
- const result = await identifyDeploymentTasks(adrDirectory, todoPath);
73
- // Submit result.identificationPrompt to AI agent
74
- // Parse AI response for deployment tasks
75
- \`\`\`
76
89
  `;
77
90
  const instructions = `
78
91
  # Deployment Task Identification Instructions
79
92
 
80
- This analysis will identify deployment-related tasks from ADRs and todo content for comprehensive deployment tracking.
93
+ This analysis provides **actual ADR content and TODO content** to identify deployment-related tasks for comprehensive deployment tracking.
81
94
 
82
95
  ## Analysis Scope
83
96
  - **ADR Directory**: ${adrDirectory}
84
- - **Todo Content**: ${todoPath ? 'Included' : 'Not provided'}
97
+ - **ADRs Found**: ${discoveryResult.totalAdrs} files
98
+ - **ADRs with Content**: ${discoveryResult.adrs.filter(adr => adr.content).length} ADRs
99
+ - **Todo Content**: ${todoPath ? `✅ Included (${todoContent.length} characters)` : '❌ Not provided'}
85
100
  - **Task Categories**: Infrastructure, Application, CI/CD, Operational
86
101
 
102
+ ## Discovered ADR Summary
103
+ ${discoveryResult.adrs.map(adr => `- **${adr.title}** (${adr.status})`).join('\n')}
104
+
87
105
  ## Next Steps
88
- 1. **Submit the analysis prompt** to an AI agent for deployment task identification
106
+ 1. **Submit the analysis prompt** to an AI agent for deployment task identification based on **actual content**
89
107
  2. **Parse the JSON response** to get categorized deployment tasks
90
- 3. **Review task priorities** and dependencies
108
+ 3. **Review task priorities** and dependencies derived from actual ADR content
91
109
  4. **Use findings** for deployment planning and execution
92
110
 
93
- Submit the prompt to generate deployment task analysis.
111
+ ## Expected AI Response Format
112
+ The AI will return a JSON object with:
113
+ - \`deploymentTaskAnalysis\`: Overall analysis metadata and confidence
114
+ - \`identifiedTasks\`: Detailed deployment tasks with verification criteria based on actual ADR content
115
+ - \`deploymentPhases\`: Organized deployment phases and sequencing
116
+ - \`deploymentDependencies\`: Task dependencies and constraints from actual ADRs
117
+ - \`riskAssessment\`: Deployment risks and mitigation strategies
118
+ - \`recommendations\`: Process and tooling recommendations
119
+
120
+ ## Usage Example
121
+ \`\`\`typescript
122
+ const result = await identifyDeploymentTasks(adrDirectory, todoPath);
123
+ // Submit result.identificationPrompt to AI agent
124
+ // Parse AI response for deployment tasks based on actual ADR and TODO content
125
+ \`\`\`
94
126
  `;
95
127
  return {
96
128
  identificationPrompt: deploymentAnalysisPrompt,
97
129
  instructions,
130
+ actualData: {
131
+ discoveryResult,
132
+ todoContent,
133
+ todoPath,
134
+ summary: {
135
+ totalAdrs: discoveryResult.totalAdrs,
136
+ adrsWithContent: discoveryResult.adrs.filter(adr => adr.content).length,
137
+ todoProvided: !!todoPath,
138
+ todoLength: todoContent.length
139
+ }
140
+ }
98
141
  };
99
142
  }
100
143
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"deployment-analysis.js","sourceRoot":"","sources":["../../../src/utils/deployment-analysis.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deployment-analysis.js","sourceRoot":"","sources":["../../../src/utils/deployment-analysis.ts"],"names":[],"mappings":"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"}
@@ -51,6 +51,7 @@ export interface ComplianceAssessment {
51
51
  export declare function analyzeEnvironmentSpecs(projectPath?: string): Promise<{
52
52
  analysisPrompt: string;
53
53
  instructions: string;
54
+ actualData?: any;
54
55
  }>;
55
56
  /**
56
57
  * Detect containerization technologies
@@ -62,7 +63,7 @@ export declare function detectContainerization(projectPath?: string): Promise<{
62
63
  /**
63
64
  * Determine environment requirements from ADRs
64
65
  */
65
- export declare function determineEnvironmentRequirements(adrDirectory?: string): Promise<{
66
+ export declare function determineEnvironmentRequirements(adrDirectory?: string, projectPath?: string): Promise<{
66
67
  requirementsPrompt: string;
67
68
  instructions: string;
68
69
  }>;
@@ -73,4 +74,8 @@ export declare function assessEnvironmentCompliance(currentEnvironment: any, req
73
74
  compliancePrompt: string;
74
75
  instructions: string;
75
76
  }>;
77
+ /**
78
+ * Find environment-related files in the project
79
+ * Returns mock data for prompt-driven architecture
80
+ */
76
81
  //# sourceMappingURL=environment-analysis.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"environment-analysis.d.ts","sourceRoot":"","sources":["../../../src/utils/environment-analysis.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,YAAY,GAAG,WAAW,GAAG,QAAQ,GAAG,OAAO,CAAC;CAClF;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,GAAG,EAAE,CAAC;IACnB,YAAY,EAAE,GAAG,EAAE,CAAC;IACpB,mBAAmB,EAAE,GAAG,EAAE,CAAC;IAC3B,kBAAkB,EAAE,GAAG,CAAC;IACxB,kBAAkB,EAAE,GAAG,CAAC;IACxB,aAAa,EAAE,GAAG,CAAC;IACnB,eAAe,EAAE,GAAG,EAAE,CAAC;IACvB,gBAAgB,EAAE,GAAG,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,uBAAuB;IACtC,cAAc,EAAE,GAAG,CAAC;IACpB,QAAQ,EAAE,GAAG,CAAC;IACd,QAAQ,EAAE,GAAG,CAAC;IACd,WAAW,EAAE,GAAG,CAAC;IACjB,uBAAuB,EAAE,GAAG,CAAC;IAC7B,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,eAAe,EAAE,GAAG,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,GAAG,CAAC;IACpB,iBAAiB,EAAE,GAAG,EAAE,CAAC;IACzB,UAAU,EAAE,GAAG,EAAE,CAAC;IAClB,SAAS,EAAE,GAAG,EAAE,CAAC;IACjB,eAAe,EAAE,GAAG,EAAE,CAAC;IACvB,eAAe,EAAE,GAAG,CAAC;IACrB,cAAc,EAAE,GAAG,CAAC;IACpB,iBAAiB,EAAE,GAAG,CAAC;CACxB;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,WAAW,GAAE,MAAsB,GAClC,OAAO,CAAC;IAAE,cAAc,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC,CAsF3D;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,WAAW,GAAE,MAAsB,GAClC,OAAO,CAAC;IAAE,eAAe,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC,CA8F5D;AAED;;GAEG;AACH,wBAAsB,gCAAgC,CACpD,YAAY,GAAE,MAAoB,GACjC,OAAO,CAAC;IAAE,kBAAkB,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC,CAsF/D;AAED;;GAEG;AACH,wBAAsB,2BAA2B,CAC/C,kBAAkB,EAAE,GAAG,EACvB,YAAY,EAAE,GAAG,EACjB,iBAAiB,CAAC,EAAE,MAAM,EAAE,GAC3B,OAAO,CAAC;IAAE,gBAAgB,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC,CA2D7D"}
1
+ {"version":3,"file":"environment-analysis.d.ts","sourceRoot":"","sources":["../../../src/utils/environment-analysis.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA+BH,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,YAAY,GAAG,WAAW,GAAG,QAAQ,GAAG,OAAO,CAAC;CAClF;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,GAAG,EAAE,CAAC;IACnB,YAAY,EAAE,GAAG,EAAE,CAAC;IACpB,mBAAmB,EAAE,GAAG,EAAE,CAAC;IAC3B,kBAAkB,EAAE,GAAG,CAAC;IACxB,kBAAkB,EAAE,GAAG,CAAC;IACxB,aAAa,EAAE,GAAG,CAAC;IACnB,eAAe,EAAE,GAAG,EAAE,CAAC;IACvB,gBAAgB,EAAE,GAAG,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,uBAAuB;IACtC,cAAc,EAAE,GAAG,CAAC;IACpB,QAAQ,EAAE,GAAG,CAAC;IACd,QAAQ,EAAE,GAAG,CAAC;IACd,WAAW,EAAE,GAAG,CAAC;IACjB,uBAAuB,EAAE,GAAG,CAAC;IAC7B,IAAI,EAAE,GAAG,EAAE,CAAC;IACZ,eAAe,EAAE,GAAG,EAAE,CAAC;CACxB;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,GAAG,CAAC;IACpB,iBAAiB,EAAE,GAAG,EAAE,CAAC;IACzB,UAAU,EAAE,GAAG,EAAE,CAAC;IAClB,SAAS,EAAE,GAAG,EAAE,CAAC;IACjB,eAAe,EAAE,GAAG,EAAE,CAAC;IACvB,eAAe,EAAE,GAAG,CAAC;IACrB,cAAc,EAAE,GAAG,CAAC;IACpB,iBAAiB,EAAE,GAAG,CAAC;CACxB;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,WAAW,GAAE,MAAsB,GAClC,OAAO,CAAC;IAAE,cAAc,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,GAAG,CAAA;CAAE,CAAC,CAwJ7E;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,WAAW,GAAE,MAAsB,GAClC,OAAO,CAAC;IAAE,eAAe,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC,CAkG5D;AAED;;GAEG;AACH,wBAAsB,gCAAgC,CACpD,YAAY,GAAE,MAAoB,EAClC,WAAW,GAAE,MAAsB,GAClC,OAAO,CAAC;IAAE,kBAAkB,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC,CAmG/D;AAED;;GAEG;AACH,wBAAsB,2BAA2B,CAC/C,kBAAkB,EAAE,GAAG,EACvB,YAAY,EAAE,GAAG,EACjB,iBAAiB,CAAC,EAAE,MAAM,EAAE,GAC3B,OAAO,CAAC;IAAE,gBAAgB,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC,CA2D7D;AAED;;;GAGG"}
@@ -3,52 +3,132 @@
3
3
  * Implements intelligent environment context analysis and compliance assessment
4
4
  */
5
5
  import { McpAdrError } from '../types/index.js';
6
+ /**
7
+ * Helper function to get file extension for syntax highlighting
8
+ */
9
+ function getFileExtension(filename) {
10
+ const ext = filename.split('.').pop()?.toLowerCase();
11
+ const mapping = {
12
+ 'json': 'json',
13
+ 'yml': 'yaml',
14
+ 'yaml': 'yaml',
15
+ 'js': 'javascript',
16
+ 'ts': 'typescript',
17
+ 'py': 'python',
18
+ 'md': 'markdown',
19
+ 'dockerfile': 'dockerfile',
20
+ 'toml': 'toml',
21
+ 'xml': 'xml',
22
+ 'sh': 'bash',
23
+ 'bash': 'bash',
24
+ 'zsh': 'bash',
25
+ 'fish': 'fish',
26
+ 'ps1': 'powershell',
27
+ 'bat': 'batch',
28
+ 'cmd': 'batch'
29
+ };
30
+ return mapping[ext || ''] || 'bash'; // Default to bash for script files
31
+ }
6
32
  /**
7
33
  * Analyze system environment specifications
8
34
  */
9
35
  export async function analyzeEnvironmentSpecs(projectPath = process.cwd()) {
10
36
  try {
11
- const { analyzeProjectStructure } = await import('./file-system.js');
12
- // Find environment-related files
13
- const environmentFiles = await findEnvironmentFiles(projectPath);
14
- // Generate project analysis prompt for AI delegation
15
- const projectAnalysisPrompt = await analyzeProjectStructure(projectPath);
37
+ // Use actual file operations to scan project structure
38
+ const { scanProjectStructure, findActualEnvironmentFiles } = await import('./actual-file-operations.js');
39
+ // Actually read environment files
40
+ const environmentFiles = await findActualEnvironmentFiles(projectPath);
41
+ const projectStructure = await scanProjectStructure(projectPath, { readContent: true });
16
42
  const analysisPrompt = `
17
43
  # Environment Specification Analysis
18
44
 
19
- Please perform comprehensive environment specification analysis.
20
-
21
- ## Project Analysis Instructions
22
-
23
- ${projectAnalysisPrompt.prompt}
24
-
25
- ## Implementation Steps
45
+ Based on actual file system analysis, here are the findings:
26
46
 
27
- ${projectAnalysisPrompt.instructions}
47
+ ## Project Structure
48
+ - **Root Path**: ${projectStructure.rootPath}
49
+ - **Total Files Analyzed**: ${projectStructure.totalFiles}
50
+ - **Directories**: ${projectStructure.directories.join(', ')}
28
51
 
29
- ## Environment Files Analysis
30
-
31
- Please analyze the following environment specification files:
32
- ${environmentFiles.map(f => `- **${f.filename}** (${f.type}): ${f.path}`).join('\n')}
52
+ ## Package Management
53
+ ${projectStructure.packageFiles.length > 0 ?
54
+ projectStructure.packageFiles.map(f => `
55
+ ### ${f.filename}
56
+ \`\`\`${getFileExtension(f.filename)}
57
+ ${f.content.slice(0, 1000)}${f.content.length > 1000 ? '\n... (truncated)' : ''}
58
+ \`\`\`
59
+ `).join('\n') : '- No package files found'}
60
+
61
+ ## Docker Configuration
62
+ ${projectStructure.dockerFiles.length > 0 ?
63
+ projectStructure.dockerFiles.map(f => `
64
+ ### ${f.filename}
65
+ \`\`\`${getFileExtension(f.filename)}
66
+ ${f.content.slice(0, 1000)}${f.content.length > 1000 ? '\n... (truncated)' : ''}
67
+ \`\`\`
68
+ `).join('\n') : '- No Docker files found'}
69
+
70
+ ## Environment Configuration
71
+ ${environmentFiles.filter(f => f.filename.includes('.env')).length > 0 ?
72
+ environmentFiles.filter(f => f.filename.includes('.env')).map(f => `
73
+ ### ${f.filename}
74
+ \`\`\`bash
75
+ ${f.content.slice(0, 500)}${f.content.length > 500 ? '\n... (truncated)' : ''}
76
+ \`\`\`
77
+ `).join('\n') : '- No environment files found'}
78
+
79
+ ## Kubernetes Manifests
80
+ ${projectStructure.kubernetesFiles.length > 0 ?
81
+ projectStructure.kubernetesFiles.map(f => `
82
+ ### ${f.filename}
83
+ \`\`\`yaml
84
+ ${f.content.slice(0, 800)}${f.content.length > 800 ? '\n... (truncated)' : ''}
85
+ \`\`\`
86
+ `).join('\n') : '- No Kubernetes manifests found'}
87
+
88
+ ## CI/CD Configuration
89
+ ${projectStructure.ciFiles.length > 0 ?
90
+ projectStructure.ciFiles.map(f => `
91
+ ### ${f.filename}
92
+ \`\`\`yaml
93
+ ${f.content.slice(0, 600)}${f.content.length > 600 ? '\n... (truncated)' : ''}
94
+ \`\`\`
95
+ `).join('\n') : '- No CI/CD files found'}
96
+
97
+ ## Shell Scripts & Automation
98
+ ${projectStructure.scriptFiles.length > 0 ?
99
+ projectStructure.scriptFiles.map(f => `
100
+ ### ${f.filename}
101
+ \`\`\`${getFileExtension(f.filename)}
102
+ ${f.content.slice(0, 800)}${f.content.length > 800 ? '\n... (truncated)' : ''}
103
+ \`\`\`
104
+ `).join('\n') : '- No shell scripts found'}
33
105
 
34
106
  ## Analysis Requirements
35
107
 
36
- 1. Examine each environment file for configuration patterns
37
- 2. Identify infrastructure requirements and dependencies
38
- 3. Assess containerization and orchestration setups
39
- 4. Evaluate cloud service integrations
40
- 5. Analyze security configurations and compliance
41
- 6. Determine scalability and performance characteristics
108
+ Please analyze the above **actual file contents** to:
109
+
110
+ 1. **Infrastructure Assessment**: Determine deployment patterns and infrastructure requirements
111
+ 2. **Containerization Analysis**: Evaluate Docker and container orchestration setup
112
+ 3. **Environment Configuration**: Analyze environment variables and configuration management
113
+ 4. **Security Review**: Identify security configurations and potential vulnerabilities
114
+ 5. **Scalability Assessment**: Evaluate scalability and performance characteristics
115
+ 6. **Compliance Check**: Assess adherence to best practices and standards
116
+ 7. **Optimization Recommendations**: Suggest improvements for deployment and operations
42
117
  `;
43
118
  const instructions = `
44
119
  # Environment Specification Analysis Instructions
45
120
 
46
- This analysis will examine environment specifications and infrastructure configurations to understand deployment requirements.
121
+ This analysis provides **actual file contents** from the project for comprehensive environment assessment.
47
122
 
48
123
  ## Analysis Scope
49
124
  - **Project Path**: ${projectPath}
50
125
  - **Environment Files**: ${environmentFiles.length} files found
51
- - **File Types**: ${Array.from(new Set(environmentFiles.map(f => f.type))).join(', ')}
126
+ - **Package Files**: ${projectStructure.packageFiles.length} found
127
+ - **Docker Files**: ${projectStructure.dockerFiles.length} found
128
+ - **Kubernetes Files**: ${projectStructure.kubernetesFiles.length} found
129
+ - **CI/CD Files**: ${projectStructure.ciFiles.length} found
130
+ - **Script Files**: ${projectStructure.scriptFiles.length} found
131
+ - **Total Files Analyzed**: ${projectStructure.totalFiles}
52
132
 
53
133
  ## Discovered Files
54
134
  ${environmentFiles.map(f => `- **${f.filename}** (${f.type}): ${f.path}`).join('\n')}
@@ -80,6 +160,19 @@ const result = await analyzeEnvironmentSpecs(projectPath);
80
160
  return {
81
161
  analysisPrompt,
82
162
  instructions,
163
+ actualData: {
164
+ projectStructure,
165
+ environmentFiles,
166
+ summary: {
167
+ totalFiles: projectStructure.totalFiles,
168
+ packageFiles: projectStructure.packageFiles.length,
169
+ dockerFiles: projectStructure.dockerFiles.length,
170
+ kubernetesFiles: projectStructure.kubernetesFiles.length,
171
+ ciFiles: projectStructure.ciFiles.length,
172
+ scriptFiles: projectStructure.scriptFiles.length,
173
+ environmentFiles: environmentFiles.length
174
+ }
175
+ }
83
176
  };
84
177
  }
85
178
  catch (error) {
@@ -91,34 +184,42 @@ const result = await analyzeEnvironmentSpecs(projectPath);
91
184
  */
92
185
  export async function detectContainerization(projectPath = process.cwd()) {
93
186
  try {
94
- const { findFiles } = await import('./file-system.js');
95
- // Generate container file discovery prompt for AI delegation
96
- const containerFileDiscoveryPrompt = await findFiles(process.cwd(), [
97
- '**/Dockerfile*',
98
- '**/docker-compose*.yml',
99
- '**/docker-compose*.yaml',
100
- '**/*.dockerfile',
101
- '**/Containerfile*',
102
- '**/k8s/**/*.yml',
103
- '**/k8s/**/*.yaml',
104
- '**/kubernetes/**/*.yml',
105
- '**/kubernetes/**/*.yaml',
106
- '**/helm/**/*.yml',
107
- '**/helm/**/*.yaml',
108
- '**/.dockerignore',
109
- ], { includeContent: true });
187
+ const { scanProjectStructure } = await import('./actual-file-operations.js');
188
+ // Use actual project structure scanning
189
+ const projectStructure = await scanProjectStructure(projectPath, {
190
+ readContent: true,
191
+ includeHidden: false
192
+ });
193
+ // Get container-related files
194
+ const containerFiles = [
195
+ ...projectStructure.dockerFiles,
196
+ ...projectStructure.kubernetesFiles
197
+ ];
198
+ let containerAnalysis = '';
199
+ if (containerFiles.length > 0) {
200
+ containerAnalysis = `Found ${containerFiles.length} container-related files:\n\n`;
201
+ containerFiles.forEach(file => {
202
+ containerAnalysis += `### ${file.filename}\n`;
203
+ containerAnalysis += `- **Path**: ${file.relativePath}\n`;
204
+ containerAnalysis += `- **Type**: ${file.type}\n`;
205
+ containerAnalysis += `- **Size**: ${file.size} bytes\n`;
206
+ if (file.content && file.content !== '[Binary or unreadable file]') {
207
+ containerAnalysis += `- **Content**:\n\`\`\`\n${file.content.substring(0, 1000)}${file.content.length > 1000 ? '...' : ''}\n\`\`\`\n\n`;
208
+ }
209
+ else {
210
+ containerAnalysis += `- **Content**: Binary or unreadable\n\n`;
211
+ }
212
+ });
213
+ }
214
+ else {
215
+ containerAnalysis = 'No containerization files found in the project.\n\n';
216
+ }
110
217
  const detectionPrompt = `
111
218
  # Containerization Detection and Analysis
112
219
 
113
- Please discover and analyze containerization technologies in the project.
114
-
115
- ## File Discovery Instructions
116
-
117
- ${containerFileDiscoveryPrompt.prompt}
220
+ ## Container File Analysis Results
118
221
 
119
- ## Implementation Steps
120
-
121
- ${containerFileDiscoveryPrompt.instructions}
222
+ ${containerAnalysis}
122
223
 
123
224
  ## Analysis Requirements
124
225
 
@@ -177,25 +278,37 @@ const result = await detectContainerization(projectPath);
177
278
  /**
178
279
  * Determine environment requirements from ADRs
179
280
  */
180
- export async function determineEnvironmentRequirements(adrDirectory = 'docs/adrs') {
281
+ export async function determineEnvironmentRequirements(adrDirectory = 'docs/adrs', projectPath = process.cwd()) {
181
282
  try {
182
- const { findFiles } = await import('./file-system.js');
183
- // Generate ADR file discovery prompt for AI delegation
184
- const adrFileDiscoveryPrompt = await findFiles(process.cwd(), [`${adrDirectory}/**/*.md`], {
185
- includeContent: true,
186
- });
283
+ const { discoverAdrsInDirectory } = await import('./adr-discovery.js');
284
+ const path = await import('path');
285
+ // Use absolute path for ADR directory
286
+ const absoluteAdrPath = path.isAbsolute(adrDirectory)
287
+ ? adrDirectory
288
+ : path.resolve(projectPath, adrDirectory);
289
+ // Use actual ADR discovery
290
+ const discoveryResult = await discoverAdrsInDirectory(absoluteAdrPath, true, projectPath);
291
+ let adrAnalysis = '';
292
+ if (discoveryResult.adrs.length > 0) {
293
+ adrAnalysis = `Found ${discoveryResult.adrs.length} ADRs to analyze for environment requirements:\n\n`;
294
+ discoveryResult.adrs.forEach(adr => {
295
+ adrAnalysis += `### ${adr.title}\n`;
296
+ adrAnalysis += `- **File**: ${adr.filename}\n`;
297
+ adrAnalysis += `- **Status**: ${adr.status}\n`;
298
+ adrAnalysis += `- **Context**: ${adr.context}\n`;
299
+ adrAnalysis += `- **Decision**: ${adr.decision}\n`;
300
+ adrAnalysis += `- **Consequences**: ${adr.consequences}\n\n`;
301
+ });
302
+ }
303
+ else {
304
+ adrAnalysis = `No ADRs found in ${absoluteAdrPath}. Cannot determine environment requirements from ADRs.\n\n`;
305
+ }
187
306
  const requirementsPrompt = `
188
307
  # Environment Requirements Analysis
189
308
 
190
- Please analyze ADR files to determine environment requirements.
191
-
192
- ## File Discovery Instructions
309
+ ## ADR Analysis Results
193
310
 
194
- ${adrFileDiscoveryPrompt.prompt}
195
-
196
- ## Implementation Steps
197
-
198
- ${adrFileDiscoveryPrompt.instructions}
311
+ ${adrAnalysis}
199
312
 
200
313
  ## Requirements Analysis
201
314
 
@@ -314,29 +427,5 @@ const result = await assessEnvironmentCompliance(environment, requirements, stan
314
427
  * Find environment-related files in the project
315
428
  * Returns mock data for prompt-driven architecture
316
429
  */
317
- async function findEnvironmentFiles(projectPath) {
318
- // Return mock environment files for prompt-driven architecture
319
- // The actual file discovery will be handled by AI agents through prompts
320
- return [
321
- {
322
- filename: 'Dockerfile',
323
- content: '',
324
- path: `${projectPath}/Dockerfile`,
325
- type: 'dockerfile',
326
- },
327
- {
328
- filename: 'docker-compose.yml',
329
- content: '',
330
- path: `${projectPath}/docker-compose.yml`,
331
- type: 'compose',
332
- },
333
- {
334
- filename: '.env',
335
- content: '',
336
- path: `${projectPath}/.env`,
337
- type: 'config',
338
- },
339
- ];
340
- }
341
430
  // Removed unused function determineFileType
342
431
  //# sourceMappingURL=environment-analysis.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"environment-analysis.js","sourceRoot":"","sources":["../../../src/utils/environment-analysis.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"environment-analysis.js","sourceRoot":"","sources":["../../../src/utils/environment-analysis.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * File system utilities for MCP ADR Analysis Server
3
3
  * Generates prompts for AI-driven file discovery, reading, and analysis operations
4
+ * Enhanced with Chain-of-Thought prompting to reduce LLM confusion
4
5
  */
5
6
  export interface FileInfo {
6
7
  path: string;
@@ -1 +1 @@
1
- {"version":3,"file":"file-system.d.ts","sourceRoot":"","sources":["../../../src/utils/file-system.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE;QACP,WAAW,EAAE,MAAM,CAAC;QACpB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,YAAY,EAAE,MAAM,EAAE,CAAC;KACxB,CAAC;CACH;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAoKjG;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,CAAC,CA0HvH;AAED;;GAEG;AACH,wBAAsB,SAAS,CAC7B,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAAE,EAClB,OAAO,GAAE;IAAE,cAAc,CAAC,EAAE,OAAO,CAAA;CAAO,GACzC,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,CAAC,CAyEjE;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,CAAC,CAsJlH;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,CAAC,CAuKtH;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,CAAC,CAqMlI;AAED;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;CAmChB,CAAC"}
1
+ {"version":3,"file":"file-system.d.ts","sourceRoot":"","sources":["../../../src/utils/file-system.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE;QACP,WAAW,EAAE,MAAM,CAAC;QACpB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,YAAY,EAAE,MAAM,EAAE,CAAC;KACxB,CAAC;CACH;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC,CA4IjG;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,CAAC,CA0HvH;AAED;;GAEG;AACH,wBAAsB,SAAS,CAC7B,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAAE,EAClB,OAAO,GAAE;IAAE,cAAc,CAAC,EAAE,OAAO,CAAA;CAAO,GACzC,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,CAAC,CAyEjE;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,CAAC,CAsJlH;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,CAAC,CAuKtH;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,GAAG,CAAA;CAAE,CAAC,CAqMlI;AAED;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;CAmChB,CAAC"}