mcp-adr-analysis-server 2.1.9 → 2.1.20

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 (408) hide show
  1. package/README.md +55 -8
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/src/index.d.ts +78 -2
  4. package/dist/src/index.d.ts.map +1 -1
  5. package/dist/src/index.js +1793 -577
  6. package/dist/src/index.js.map +1 -1
  7. package/dist/src/prompts/index.d.ts.map +1 -1
  8. package/dist/src/prompts/index.js +23 -6
  9. package/dist/src/prompts/index.js.map +1 -1
  10. package/dist/src/prompts/validated-pattern-prompts.d.ts +33 -0
  11. package/dist/src/prompts/validated-pattern-prompts.d.ts.map +1 -0
  12. package/dist/src/prompts/validated-pattern-prompts.js +337 -0
  13. package/dist/src/prompts/validated-pattern-prompts.js.map +1 -0
  14. package/dist/src/resources/adr-by-id-resource.d.ts +116 -0
  15. package/dist/src/resources/adr-by-id-resource.d.ts.map +1 -0
  16. package/dist/src/resources/adr-by-id-resource.js +213 -0
  17. package/dist/src/resources/adr-by-id-resource.js.map +1 -0
  18. package/dist/src/resources/code-quality-resource.d.ts +105 -0
  19. package/dist/src/resources/code-quality-resource.d.ts.map +1 -0
  20. package/dist/src/resources/code-quality-resource.js +282 -0
  21. package/dist/src/resources/code-quality-resource.js.map +1 -0
  22. package/dist/src/resources/deployment-history-resource.d.ts +214 -0
  23. package/dist/src/resources/deployment-history-resource.d.ts.map +1 -0
  24. package/dist/src/resources/deployment-history-resource.js +308 -0
  25. package/dist/src/resources/deployment-history-resource.js.map +1 -0
  26. package/dist/src/resources/deployment-status-resource.d.ts +256 -0
  27. package/dist/src/resources/deployment-status-resource.d.ts.map +1 -0
  28. package/dist/src/resources/deployment-status-resource.js +665 -0
  29. package/dist/src/resources/deployment-status-resource.js.map +1 -0
  30. package/dist/src/resources/environment-analysis-resource.d.ts +237 -0
  31. package/dist/src/resources/environment-analysis-resource.d.ts.map +1 -0
  32. package/dist/src/resources/environment-analysis-resource.js +646 -0
  33. package/dist/src/resources/environment-analysis-resource.js.map +1 -0
  34. package/dist/src/resources/index.d.ts +6 -2
  35. package/dist/src/resources/index.d.ts.map +1 -1
  36. package/dist/src/resources/index.js +247 -492
  37. package/dist/src/resources/index.js.map +1 -1
  38. package/dist/src/resources/memory-snapshots-resource.d.ts +180 -0
  39. package/dist/src/resources/memory-snapshots-resource.d.ts.map +1 -0
  40. package/dist/src/resources/memory-snapshots-resource.js +847 -0
  41. package/dist/src/resources/memory-snapshots-resource.js.map +1 -0
  42. package/dist/src/resources/pattern-base-code-by-platform-resource.d.ts +35 -0
  43. package/dist/src/resources/pattern-base-code-by-platform-resource.d.ts.map +1 -0
  44. package/dist/src/resources/pattern-base-code-by-platform-resource.js +72 -0
  45. package/dist/src/resources/pattern-base-code-by-platform-resource.js.map +1 -0
  46. package/dist/src/resources/pattern-by-name-resource.d.ts +53 -0
  47. package/dist/src/resources/pattern-by-name-resource.d.ts.map +1 -0
  48. package/dist/src/resources/pattern-by-name-resource.js +200 -0
  49. package/dist/src/resources/pattern-by-name-resource.js.map +1 -0
  50. package/dist/src/resources/pattern-sources-by-platform-resource.d.ts +26 -0
  51. package/dist/src/resources/pattern-sources-by-platform-resource.d.ts.map +1 -0
  52. package/dist/src/resources/pattern-sources-by-platform-resource.js +59 -0
  53. package/dist/src/resources/pattern-sources-by-platform-resource.js.map +1 -0
  54. package/dist/src/resources/project-metrics-resource.d.ts +180 -0
  55. package/dist/src/resources/project-metrics-resource.d.ts.map +1 -0
  56. package/dist/src/resources/project-metrics-resource.js +487 -0
  57. package/dist/src/resources/project-metrics-resource.js.map +1 -0
  58. package/dist/src/resources/project-status-resource.d.ts +75 -0
  59. package/dist/src/resources/project-status-resource.d.ts.map +1 -0
  60. package/dist/src/resources/project-status-resource.js +189 -0
  61. package/dist/src/resources/project-status-resource.js.map +1 -0
  62. package/dist/src/resources/research-by-topic-resource.d.ts +21 -0
  63. package/dist/src/resources/research-by-topic-resource.d.ts.map +1 -0
  64. package/dist/src/resources/research-by-topic-resource.js +125 -0
  65. package/dist/src/resources/research-by-topic-resource.js.map +1 -0
  66. package/dist/src/resources/research-index-resource.d.ts +100 -0
  67. package/dist/src/resources/research-index-resource.d.ts.map +1 -0
  68. package/dist/src/resources/research-index-resource.js +200 -0
  69. package/dist/src/resources/research-index-resource.js.map +1 -0
  70. package/dist/src/resources/resource-cache.d.ts +144 -0
  71. package/dist/src/resources/resource-cache.d.ts.map +1 -0
  72. package/dist/src/resources/resource-cache.js +316 -0
  73. package/dist/src/resources/resource-cache.js.map +1 -0
  74. package/dist/src/resources/resource-router.d.ts +45 -0
  75. package/dist/src/resources/resource-router.d.ts.map +1 -0
  76. package/dist/src/resources/resource-router.js +96 -0
  77. package/dist/src/resources/resource-router.js.map +1 -0
  78. package/dist/src/resources/rule-by-id-resource.d.ts +38 -0
  79. package/dist/src/resources/rule-by-id-resource.d.ts.map +1 -0
  80. package/dist/src/resources/rule-by-id-resource.js +104 -0
  81. package/dist/src/resources/rule-by-id-resource.js.map +1 -0
  82. package/dist/src/resources/rule-catalog-resource.d.ts +126 -0
  83. package/dist/src/resources/rule-catalog-resource.d.ts.map +1 -0
  84. package/dist/src/resources/rule-catalog-resource.js +224 -0
  85. package/dist/src/resources/rule-catalog-resource.js.map +1 -0
  86. package/dist/src/resources/rule-generation-resource.d.ts +80 -0
  87. package/dist/src/resources/rule-generation-resource.d.ts.map +1 -0
  88. package/dist/src/resources/rule-generation-resource.js +282 -0
  89. package/dist/src/resources/rule-generation-resource.js.map +1 -0
  90. package/dist/src/resources/technology-by-name-resource.d.ts +43 -0
  91. package/dist/src/resources/technology-by-name-resource.d.ts.map +1 -0
  92. package/dist/src/resources/technology-by-name-resource.js +176 -0
  93. package/dist/src/resources/technology-by-name-resource.js.map +1 -0
  94. package/dist/src/resources/todo-by-id-resource.d.ts +46 -0
  95. package/dist/src/resources/todo-by-id-resource.d.ts.map +1 -0
  96. package/dist/src/resources/todo-by-id-resource.js +192 -0
  97. package/dist/src/resources/todo-by-id-resource.js.map +1 -0
  98. package/dist/src/resources/todo-list-resource.d.ts +96 -0
  99. package/dist/src/resources/todo-list-resource.d.ts.map +1 -0
  100. package/dist/src/resources/todo-list-resource.js +209 -0
  101. package/dist/src/resources/todo-list-resource.js.map +1 -0
  102. package/dist/src/resources/validated-pattern-by-platform-resource.d.ts +14 -0
  103. package/dist/src/resources/validated-pattern-by-platform-resource.d.ts.map +1 -0
  104. package/dist/src/resources/validated-pattern-by-platform-resource.js +45 -0
  105. package/dist/src/resources/validated-pattern-by-platform-resource.js.map +1 -0
  106. package/dist/src/resources/validated-patterns-catalog-resource.d.ts +36 -0
  107. package/dist/src/resources/validated-patterns-catalog-resource.d.ts.map +1 -0
  108. package/dist/src/resources/validated-patterns-catalog-resource.js +57 -0
  109. package/dist/src/resources/validated-patterns-catalog-resource.js.map +1 -0
  110. package/dist/src/templates/domain-knowledge-templates.d.ts.map +1 -1
  111. package/dist/src/templates/domain-knowledge-templates.js +49 -49
  112. package/dist/src/templates/domain-knowledge-templates.js.map +1 -1
  113. package/dist/src/tools/adr-bootstrap-validation-tool.d.ts.map +1 -1
  114. package/dist/src/tools/adr-bootstrap-validation-tool.js +214 -4
  115. package/dist/src/tools/adr-bootstrap-validation-tool.js.map +1 -1
  116. package/dist/src/tools/adr-suggestion-tool.d.ts +2 -2
  117. package/dist/src/tools/adr-suggestion-tool.d.ts.map +1 -1
  118. package/dist/src/tools/adr-suggestion-tool.js +129 -12
  119. package/dist/src/tools/adr-suggestion-tool.js.map +1 -1
  120. package/dist/src/tools/adr-validation-tool.d.ts +98 -0
  121. package/dist/src/tools/adr-validation-tool.d.ts.map +1 -0
  122. package/dist/src/tools/adr-validation-tool.js +372 -0
  123. package/dist/src/tools/adr-validation-tool.js.map +1 -0
  124. package/dist/src/tools/bootstrap-validation-loop-tool.d.ts +262 -0
  125. package/dist/src/tools/bootstrap-validation-loop-tool.d.ts.map +1 -0
  126. package/dist/src/tools/bootstrap-validation-loop-tool.js +1934 -0
  127. package/dist/src/tools/bootstrap-validation-loop-tool.js.map +1 -0
  128. package/dist/src/tools/conversation-memory-tool.d.ts +48 -0
  129. package/dist/src/tools/conversation-memory-tool.d.ts.map +1 -0
  130. package/dist/src/tools/conversation-memory-tool.js +254 -0
  131. package/dist/src/tools/conversation-memory-tool.js.map +1 -0
  132. package/dist/src/tools/deployment-analysis-tool.d.ts.map +1 -1
  133. package/dist/src/tools/deployment-analysis-tool.js +82 -6
  134. package/dist/src/tools/deployment-analysis-tool.js.map +1 -1
  135. package/dist/src/tools/deployment-guidance-tool.d.ts.map +1 -1
  136. package/dist/src/tools/deployment-guidance-tool.js +126 -25
  137. package/dist/src/tools/deployment-guidance-tool.js.map +1 -1
  138. package/dist/src/tools/deployment-readiness-tool.d.ts.map +1 -1
  139. package/dist/src/tools/deployment-readiness-tool.js +166 -5
  140. package/dist/src/tools/deployment-readiness-tool.js.map +1 -1
  141. package/dist/src/tools/environment-analysis-tool.d.ts.map +1 -1
  142. package/dist/src/tools/environment-analysis-tool.js +36 -1
  143. package/dist/src/tools/environment-analysis-tool.js.map +1 -1
  144. package/dist/src/tools/expand-analysis-tool.d.ts +23 -0
  145. package/dist/src/tools/expand-analysis-tool.d.ts.map +1 -0
  146. package/dist/src/tools/expand-analysis-tool.js +107 -0
  147. package/dist/src/tools/expand-analysis-tool.js.map +1 -0
  148. package/dist/src/tools/get-server-context-tool.d.ts +67 -0
  149. package/dist/src/tools/get-server-context-tool.d.ts.map +1 -0
  150. package/dist/src/tools/get-server-context-tool.js +75 -0
  151. package/dist/src/tools/get-server-context-tool.js.map +1 -0
  152. package/dist/src/tools/interactive-adr-planning-tool.d.ts.map +1 -1
  153. package/dist/src/tools/interactive-adr-planning-tool.js +82 -9
  154. package/dist/src/tools/interactive-adr-planning-tool.js.map +1 -1
  155. package/dist/src/tools/llm-cloud-management-tool.d.ts +62 -0
  156. package/dist/src/tools/llm-cloud-management-tool.d.ts.map +1 -0
  157. package/dist/src/tools/llm-cloud-management-tool.js +202 -0
  158. package/dist/src/tools/llm-cloud-management-tool.js.map +1 -0
  159. package/dist/src/tools/llm-database-management-tool.d.ts +62 -0
  160. package/dist/src/tools/llm-database-management-tool.d.ts.map +1 -0
  161. package/dist/src/tools/llm-database-management-tool.js +203 -0
  162. package/dist/src/tools/llm-database-management-tool.js.map +1 -0
  163. package/dist/src/tools/llm-web-search-tool.d.ts +59 -0
  164. package/dist/src/tools/llm-web-search-tool.d.ts.map +1 -0
  165. package/dist/src/tools/llm-web-search-tool.js +165 -0
  166. package/dist/src/tools/llm-web-search-tool.js.map +1 -0
  167. package/dist/src/tools/mcp-planning-tool.d.ts.map +1 -1
  168. package/dist/src/tools/mcp-planning-tool.js +10 -3
  169. package/dist/src/tools/mcp-planning-tool.js.map +1 -1
  170. package/dist/src/tools/memory-loading-tool.d.ts.map +1 -1
  171. package/dist/src/tools/memory-loading-tool.js +4 -2
  172. package/dist/src/tools/memory-loading-tool.js.map +1 -1
  173. package/dist/src/tools/perform-research-tool.d.ts +61 -0
  174. package/dist/src/tools/perform-research-tool.d.ts.map +1 -0
  175. package/dist/src/tools/perform-research-tool.js +324 -0
  176. package/dist/src/tools/perform-research-tool.js.map +1 -0
  177. package/dist/src/tools/research-question-tool.d.ts.map +1 -1
  178. package/dist/src/tools/research-question-tool.js +11 -9
  179. package/dist/src/tools/research-question-tool.js.map +1 -1
  180. package/dist/src/tools/review-existing-adrs-tool.d.ts.map +1 -1
  181. package/dist/src/tools/review-existing-adrs-tool.js +42 -3
  182. package/dist/src/tools/review-existing-adrs-tool.js.map +1 -1
  183. package/dist/src/tools/tool-chain-orchestrator.d.ts +15 -94
  184. package/dist/src/tools/tool-chain-orchestrator.d.ts.map +1 -1
  185. package/dist/src/tools/tool-chain-orchestrator.js +2 -2
  186. package/dist/src/tools/tool-chain-orchestrator.js.map +1 -1
  187. package/dist/src/tools/troubleshoot-guided-workflow-tool.d.ts +25 -120
  188. package/dist/src/tools/troubleshoot-guided-workflow-tool.d.ts.map +1 -1
  189. package/dist/src/tools/troubleshoot-guided-workflow-tool.js +91 -2
  190. package/dist/src/tools/troubleshoot-guided-workflow-tool.js.map +1 -1
  191. package/dist/src/types/ape-framework.d.ts +50 -283
  192. package/dist/src/types/ape-framework.d.ts.map +1 -1
  193. package/dist/src/types/conversation-context.d.ts.map +1 -1
  194. package/dist/src/types/conversation-context.js +12 -12
  195. package/dist/src/types/conversation-context.js.map +1 -1
  196. package/dist/src/types/conversation-memory.d.ts +184 -0
  197. package/dist/src/types/conversation-memory.d.ts.map +1 -0
  198. package/dist/src/types/conversation-memory.js +8 -0
  199. package/dist/src/types/conversation-memory.js.map +1 -0
  200. package/dist/src/types/index.d.ts +112 -339
  201. package/dist/src/types/index.d.ts.map +1 -1
  202. package/dist/src/types/knowledge-generation.d.ts +96 -401
  203. package/dist/src/types/knowledge-generation.d.ts.map +1 -1
  204. package/dist/src/types/knowledge-graph-schemas.d.ts +77 -715
  205. package/dist/src/types/knowledge-graph-schemas.d.ts.map +1 -1
  206. package/dist/src/types/knowledge-graph-schemas.js +8 -8
  207. package/dist/src/types/knowledge-graph-schemas.js.map +1 -1
  208. package/dist/src/types/memory-entities.d.ts +1230 -6164
  209. package/dist/src/types/memory-entities.d.ts.map +1 -1
  210. package/dist/src/types/memory-entities.js +8 -8
  211. package/dist/src/types/memory-entities.js.map +1 -1
  212. package/dist/src/types/reflexion-framework.d.ts +35 -264
  213. package/dist/src/types/reflexion-framework.d.ts.map +1 -1
  214. package/dist/src/types/reflexion-framework.js +1 -1
  215. package/dist/src/types/reflexion-framework.js.map +1 -1
  216. package/dist/src/types/state-reinforcement.d.ts +87 -0
  217. package/dist/src/types/state-reinforcement.d.ts.map +1 -0
  218. package/dist/src/types/state-reinforcement.js +5 -0
  219. package/dist/src/types/state-reinforcement.js.map +1 -0
  220. package/dist/src/types/tiered-response.d.ts +61 -0
  221. package/dist/src/types/tiered-response.d.ts.map +1 -0
  222. package/dist/src/types/tiered-response.js +8 -0
  223. package/dist/src/types/tiered-response.js.map +1 -0
  224. package/dist/src/types/tool-context.d.ts +50 -0
  225. package/dist/src/types/tool-context.d.ts.map +1 -0
  226. package/dist/src/types/tool-context.js +20 -0
  227. package/dist/src/types/tool-context.js.map +1 -0
  228. package/dist/src/utils/adr-action-analyzer.d.ts +23 -0
  229. package/dist/src/utils/adr-action-analyzer.d.ts.map +1 -0
  230. package/dist/src/utils/adr-action-analyzer.js +323 -0
  231. package/dist/src/utils/adr-action-analyzer.js.map +1 -0
  232. package/dist/src/utils/adr-context-detector.d.ts +33 -0
  233. package/dist/src/utils/adr-context-detector.d.ts.map +1 -0
  234. package/dist/src/utils/adr-context-detector.js +279 -0
  235. package/dist/src/utils/adr-context-detector.js.map +1 -0
  236. package/dist/src/utils/adr-discovery.d.ts +28 -2
  237. package/dist/src/utils/adr-discovery.d.ts.map +1 -1
  238. package/dist/src/utils/adr-discovery.js +91 -7
  239. package/dist/src/utils/adr-discovery.js.map +1 -1
  240. package/dist/src/utils/adr-knowledge-initializer.d.ts +54 -0
  241. package/dist/src/utils/adr-knowledge-initializer.d.ts.map +1 -0
  242. package/dist/src/utils/adr-knowledge-initializer.js +240 -0
  243. package/dist/src/utils/adr-knowledge-initializer.js.map +1 -0
  244. package/dist/src/utils/adr-timeline-extractor.d.ts +21 -0
  245. package/dist/src/utils/adr-timeline-extractor.d.ts.map +1 -0
  246. package/dist/src/utils/adr-timeline-extractor.js +294 -0
  247. package/dist/src/utils/adr-timeline-extractor.js.map +1 -0
  248. package/dist/src/utils/adr-timeline-types.d.ts +234 -0
  249. package/dist/src/utils/adr-timeline-types.d.ts.map +1 -0
  250. package/dist/src/utils/adr-timeline-types.js +7 -0
  251. package/dist/src/utils/adr-timeline-types.js.map +1 -0
  252. package/dist/src/utils/ai-executor.d.ts +36 -0
  253. package/dist/src/utils/ai-executor.d.ts.map +1 -1
  254. package/dist/src/utils/ai-executor.js +39 -3
  255. package/dist/src/utils/ai-executor.js.map +1 -1
  256. package/dist/src/utils/apply-cot-enhancement.d.ts.map +1 -1
  257. package/dist/src/utils/apply-cot-enhancement.js +15 -15
  258. package/dist/src/utils/apply-cot-enhancement.js.map +1 -1
  259. package/dist/src/utils/automatic-prompt-engineering.d.ts.map +1 -1
  260. package/dist/src/utils/automatic-prompt-engineering.js +68 -58
  261. package/dist/src/utils/automatic-prompt-engineering.js.map +1 -1
  262. package/dist/src/utils/conditional-request.d.ts +105 -0
  263. package/dist/src/utils/conditional-request.d.ts.map +1 -0
  264. package/dist/src/utils/conditional-request.js +186 -0
  265. package/dist/src/utils/conditional-request.js.map +1 -0
  266. package/dist/src/utils/config.d.ts +72 -18
  267. package/dist/src/utils/config.d.ts.map +1 -1
  268. package/dist/src/utils/config.js +75 -0
  269. package/dist/src/utils/config.js.map +1 -1
  270. package/dist/src/utils/context-document-manager.d.ts +112 -0
  271. package/dist/src/utils/context-document-manager.d.ts.map +1 -0
  272. package/dist/src/utils/context-document-manager.js +351 -0
  273. package/dist/src/utils/context-document-manager.js.map +1 -0
  274. package/dist/src/utils/conversation-memory-manager.d.ts +86 -0
  275. package/dist/src/utils/conversation-memory-manager.d.ts.map +1 -0
  276. package/dist/src/utils/conversation-memory-manager.js +443 -0
  277. package/dist/src/utils/conversation-memory-manager.js.map +1 -0
  278. package/dist/src/utils/dag-executor.d.ts +106 -0
  279. package/dist/src/utils/dag-executor.d.ts.map +1 -0
  280. package/dist/src/utils/dag-executor.js +453 -0
  281. package/dist/src/utils/dag-executor.js.map +1 -0
  282. package/dist/src/utils/deployment-analysis.d.ts.map +1 -1
  283. package/dist/src/utils/deployment-analysis.js +17 -9
  284. package/dist/src/utils/deployment-analysis.js.map +1 -1
  285. package/dist/src/utils/deployment-type-registry.d.ts +52 -0
  286. package/dist/src/utils/deployment-type-registry.d.ts.map +1 -0
  287. package/dist/src/utils/deployment-type-registry.js +543 -0
  288. package/dist/src/utils/deployment-type-registry.js.map +1 -0
  289. package/dist/src/utils/dynamic-deployment-intelligence.d.ts +117 -0
  290. package/dist/src/utils/dynamic-deployment-intelligence.d.ts.map +1 -0
  291. package/dist/src/utils/dynamic-deployment-intelligence.js +445 -0
  292. package/dist/src/utils/dynamic-deployment-intelligence.js.map +1 -0
  293. package/dist/src/utils/environment-analysis.d.ts.map +1 -1
  294. package/dist/src/utils/environment-analysis.js +63 -44
  295. package/dist/src/utils/environment-analysis.js.map +1 -1
  296. package/dist/src/utils/environment-capability-registry.d.ts +101 -0
  297. package/dist/src/utils/environment-capability-registry.d.ts.map +1 -0
  298. package/dist/src/utils/environment-capability-registry.js +489 -0
  299. package/dist/src/utils/environment-capability-registry.js.map +1 -0
  300. package/dist/src/utils/index.d.ts +3 -3
  301. package/dist/src/utils/index.d.ts.map +1 -1
  302. package/dist/src/utils/index.js +3 -3
  303. package/dist/src/utils/index.js.map +1 -1
  304. package/dist/src/utils/knowledge-generation.d.ts.map +1 -1
  305. package/dist/src/utils/knowledge-generation.js +61 -35
  306. package/dist/src/utils/knowledge-generation.js.map +1 -1
  307. package/dist/src/utils/knowledge-graph-manager.d.ts +19 -0
  308. package/dist/src/utils/knowledge-graph-manager.d.ts.map +1 -1
  309. package/dist/src/utils/knowledge-graph-manager.js +165 -1
  310. package/dist/src/utils/knowledge-graph-manager.js.map +1 -1
  311. package/dist/src/utils/llm-artifact-detector.d.ts.map +1 -1
  312. package/dist/src/utils/llm-artifact-detector.js +28 -24
  313. package/dist/src/utils/llm-artifact-detector.js.map +1 -1
  314. package/dist/src/utils/mermaid-diagrams.d.ts +101 -0
  315. package/dist/src/utils/mermaid-diagrams.d.ts.map +1 -0
  316. package/dist/src/utils/mermaid-diagrams.js +445 -0
  317. package/dist/src/utils/mermaid-diagrams.js.map +1 -0
  318. package/dist/src/utils/monitoring.d.ts +249 -0
  319. package/dist/src/utils/monitoring.d.ts.map +1 -0
  320. package/dist/src/utils/monitoring.js +513 -0
  321. package/dist/src/utils/monitoring.js.map +1 -0
  322. package/dist/src/utils/pattern-contribution-helper.d.ts +60 -0
  323. package/dist/src/utils/pattern-contribution-helper.d.ts.map +1 -0
  324. package/dist/src/utils/pattern-contribution-helper.js +308 -0
  325. package/dist/src/utils/pattern-contribution-helper.js.map +1 -0
  326. package/dist/src/utils/pattern-loader.d.ts +183 -0
  327. package/dist/src/utils/pattern-loader.d.ts.map +1 -0
  328. package/dist/src/utils/pattern-loader.js +200 -0
  329. package/dist/src/utils/pattern-loader.js.map +1 -0
  330. package/dist/src/utils/pattern-research-utility.d.ts +107 -0
  331. package/dist/src/utils/pattern-research-utility.d.ts.map +1 -0
  332. package/dist/src/utils/pattern-research-utility.js +360 -0
  333. package/dist/src/utils/pattern-research-utility.js.map +1 -0
  334. package/dist/src/utils/pattern-to-dag-converter.d.ts +62 -0
  335. package/dist/src/utils/pattern-to-dag-converter.d.ts.map +1 -0
  336. package/dist/src/utils/pattern-to-dag-converter.js +265 -0
  337. package/dist/src/utils/pattern-to-dag-converter.js.map +1 -0
  338. package/dist/src/utils/platform-detector.d.ts +86 -0
  339. package/dist/src/utils/platform-detector.d.ts.map +1 -0
  340. package/dist/src/utils/platform-detector.js +509 -0
  341. package/dist/src/utils/platform-detector.js.map +1 -0
  342. package/dist/src/utils/prompt-composition.d.ts.map +1 -1
  343. package/dist/src/utils/prompt-composition.js +1 -4
  344. package/dist/src/utils/prompt-composition.js.map +1 -1
  345. package/dist/src/utils/reflexion.d.ts.map +1 -1
  346. package/dist/src/utils/reflexion.js +51 -42
  347. package/dist/src/utils/reflexion.js.map +1 -1
  348. package/dist/src/utils/research-integration.d.ts.map +1 -1
  349. package/dist/src/utils/research-integration.js +8 -2
  350. package/dist/src/utils/research-integration.js.map +1 -1
  351. package/dist/src/utils/research-orchestrator.d.ts +209 -0
  352. package/dist/src/utils/research-orchestrator.d.ts.map +1 -0
  353. package/dist/src/utils/research-orchestrator.js +863 -0
  354. package/dist/src/utils/research-orchestrator.js.map +1 -0
  355. package/dist/src/utils/research-questions.d.ts.map +1 -1
  356. package/dist/src/utils/research-questions.js +4 -1
  357. package/dist/src/utils/research-questions.js.map +1 -1
  358. package/dist/src/utils/resource-extractor.d.ts +57 -0
  359. package/dist/src/utils/resource-extractor.d.ts.map +1 -0
  360. package/dist/src/utils/resource-extractor.js +323 -0
  361. package/dist/src/utils/resource-extractor.js.map +1 -0
  362. package/dist/src/utils/resource-versioning.d.ts +124 -0
  363. package/dist/src/utils/resource-versioning.d.ts.map +1 -0
  364. package/dist/src/utils/resource-versioning.js +272 -0
  365. package/dist/src/utils/resource-versioning.js.map +1 -0
  366. package/dist/src/utils/root-manager.d.ts +118 -0
  367. package/dist/src/utils/root-manager.d.ts.map +1 -0
  368. package/dist/src/utils/root-manager.js +154 -0
  369. package/dist/src/utils/root-manager.js.map +1 -0
  370. package/dist/src/utils/rule-generation.d.ts.map +1 -1
  371. package/dist/src/utils/rule-generation.js +4 -1
  372. package/dist/src/utils/rule-generation.js.map +1 -1
  373. package/dist/src/utils/server-context-generator.d.ts +47 -0
  374. package/dist/src/utils/server-context-generator.d.ts.map +1 -0
  375. package/dist/src/utils/server-context-generator.js +666 -0
  376. package/dist/src/utils/server-context-generator.js.map +1 -0
  377. package/dist/src/utils/state-reinforcement-manager.d.ts +60 -0
  378. package/dist/src/utils/state-reinforcement-manager.d.ts.map +1 -0
  379. package/dist/src/utils/state-reinforcement-manager.js +200 -0
  380. package/dist/src/utils/state-reinforcement-manager.js.map +1 -0
  381. package/dist/src/utils/system-card-manager.d.ts +194 -0
  382. package/dist/src/utils/system-card-manager.d.ts.map +1 -0
  383. package/dist/src/utils/system-card-manager.js +336 -0
  384. package/dist/src/utils/system-card-manager.js.map +1 -0
  385. package/dist/src/utils/tiered-response-manager.d.ts +40 -0
  386. package/dist/src/utils/tiered-response-manager.d.ts.map +1 -0
  387. package/dist/src/utils/tiered-response-manager.js +243 -0
  388. package/dist/src/utils/tiered-response-manager.js.map +1 -0
  389. package/dist/src/utils/tree-sitter-analyzer.d.ts.map +1 -1
  390. package/dist/src/utils/tree-sitter-analyzer.js +83 -11
  391. package/dist/src/utils/tree-sitter-analyzer.js.map +1 -1
  392. package/dist/src/utils/validated-pattern-definitions.d.ts +219 -0
  393. package/dist/src/utils/validated-pattern-definitions.d.ts.map +1 -0
  394. package/dist/src/utils/validated-pattern-definitions.js +1511 -0
  395. package/dist/src/utils/validated-pattern-definitions.js.map +1 -0
  396. package/package.json +22 -13
  397. package/dist/src/prompts/todo-prompts.d.ts +0 -49
  398. package/dist/src/prompts/todo-prompts.d.ts.map +0 -1
  399. package/dist/src/prompts/todo-prompts.js +0 -824
  400. package/dist/src/prompts/todo-prompts.js.map +0 -1
  401. package/dist/src/types/todo-json-schemas.d.ts +0 -17
  402. package/dist/src/types/todo-json-schemas.d.ts.map +0 -1
  403. package/dist/src/types/todo-json-schemas.js +0 -9
  404. package/dist/src/types/todo-json-schemas.js.map +0 -1
  405. package/dist/src/utils/todo-file-watcher.d.ts +0 -14
  406. package/dist/src/utils/todo-file-watcher.d.ts.map +0 -1
  407. package/dist/src/utils/todo-file-watcher.js +0 -25
  408. package/dist/src/utils/todo-file-watcher.js.map +0 -1
@@ -0,0 +1,445 @@
1
+ /**
2
+ * Mermaid Diagram Generation Utilities
3
+ *
4
+ * Provides standardized mermaid diagram generation for ADRs and documentation.
5
+ * Supports workflow diagrams, sequence diagrams, state diagrams, and more.
6
+ */
7
+ // ============================================================================
8
+ // Interactive ADR Planning Diagrams
9
+ // ============================================================================
10
+ /**
11
+ * Generate workflow diagram for interactive ADR planning
12
+ */
13
+ export function generateInteractiveADRWorkflow(phases, currentPhase) {
14
+ const sortedPhases = phases.sort((a, b) => a.order - b.order);
15
+ let diagram = '```mermaid\ngraph LR\n';
16
+ sortedPhases.forEach((phase, index) => {
17
+ const nodeId = `P${index + 1}`;
18
+ const nextNodeId = `P${index + 2}`;
19
+ // Add styling based on status
20
+ let style = '';
21
+ if (phase.status === 'completed') {
22
+ style = ':::completed';
23
+ }
24
+ else if (phase.status === 'in_progress' || phase.id === currentPhase) {
25
+ style = ':::inProgress';
26
+ }
27
+ else {
28
+ style = ':::pending';
29
+ }
30
+ // Format node label
31
+ const label = phase.name.replace(/\n/g, '<br/>');
32
+ diagram += ` ${nodeId}["${label}"]${style}\n`;
33
+ // Add connection to next phase
34
+ if (index < sortedPhases.length - 1) {
35
+ diagram += ` ${nodeId} --> ${nextNodeId}\n`;
36
+ }
37
+ });
38
+ // Add styling definitions
39
+ diagram += '\n';
40
+ diagram += ' classDef completed fill:#d4edda,stroke:#28a745,stroke-width:2px\n';
41
+ diagram += ' classDef inProgress fill:#fff3cd,stroke:#ffc107,stroke-width:3px\n';
42
+ diagram += ' classDef pending fill:#f8f9fa,stroke:#6c757d,stroke-width:1px\n';
43
+ diagram += '```\n';
44
+ return diagram;
45
+ }
46
+ /**
47
+ * Generate detailed phase breakdown diagram
48
+ */
49
+ export function generateADRPlanningDetailedFlow() {
50
+ return `\`\`\`mermaid
51
+ graph TB
52
+ Start([Start ADR Planning]) --> P1[Problem Definition]
53
+
54
+ P1 --> P1A[Clarify Challenge]
55
+ P1A --> P1B[Identify Stakeholders]
56
+ P1B --> P1C[Define Success Criteria]
57
+ P1C --> P2[Research & Analysis]
58
+
59
+ P2 --> P2A[Gather Context]
60
+ P2A --> P2B[Review Documentation]
61
+ P2B --> P2C[Analyze Codebase]
62
+ P2C --> P3[Option Exploration]
63
+
64
+ P3 --> P3A[Identify Alternatives]
65
+ P3A --> P3B[Evaluate Pros/Cons]
66
+ P3B --> P3C[Assess Risks]
67
+ P3C --> P4[Decision Making]
68
+
69
+ P4 --> P4A[Select Approach]
70
+ P4A --> P4B[Document Rationale]
71
+ P4B --> P4C[Define Tradeoffs]
72
+ P4C --> P5[Impact Assessment]
73
+
74
+ P5 --> P5A[Technical Impact]
75
+ P5A --> P5B[Business Impact]
76
+ P5B --> P5C[Team Impact]
77
+ P5C --> P6[Implementation Planning]
78
+
79
+ P6 --> P6A[Generate TODOs]
80
+ P6A --> P6B[Estimate Timeline]
81
+ P6B --> P6C[Identify Dependencies]
82
+ P6C --> P7[ADR Generation]
83
+
84
+ P7 --> P7A[Create Document]
85
+ P7A --> P7B[Add Diagrams]
86
+ P7B --> P7C[Review & Finalize]
87
+ P7C --> End([ADR Complete])
88
+
89
+ style Start fill:#e1f5ff
90
+ style End fill:#d4edda
91
+ style P4 fill:#fff3cd
92
+ style P7 fill:#d1ecf1
93
+ \`\`\`
94
+ `;
95
+ }
96
+ // ============================================================================
97
+ // Deployment Guidance Diagrams
98
+ // ============================================================================
99
+ /**
100
+ * Generate deployment sequence diagram
101
+ */
102
+ export function generateDeploymentSequence(steps, environment = 'production') {
103
+ let diagram = '```mermaid\nsequenceDiagram\n';
104
+ diagram += ` participant User as Developer\n`;
105
+ diagram += ` participant Tool as Deployment Tool\n`;
106
+ diagram += ` participant ADR as ADR Documents\n`;
107
+ diagram += ` participant Script as Deploy Scripts\n`;
108
+ diagram += ` participant Env as ${environment.charAt(0).toUpperCase() + environment.slice(1)} Environment\n\n`;
109
+ // Add sequence steps
110
+ steps.forEach((step, index) => {
111
+ const from = step.participant || 'Tool';
112
+ const to = step.target || 'Env';
113
+ const message = step.action;
114
+ diagram += ` ${from}->>${to}: ${message}\n`;
115
+ if (step.validation) {
116
+ diagram += ` ${to}-->>Tool: ${step.validation}\n`;
117
+ }
118
+ if (index < steps.length - 1 && step.phase !== steps[index + 1]?.phase) {
119
+ diagram += `\n Note over User,Env: Phase ${index + 1} Complete\n\n`;
120
+ }
121
+ });
122
+ diagram += '```\n';
123
+ return diagram;
124
+ }
125
+ /**
126
+ * Generate deployment workflow diagram
127
+ */
128
+ export function generateDeploymentWorkflow(platform, phases) {
129
+ let diagram = '```mermaid\nflowchart TD\n';
130
+ diagram += ` Start([Start Deployment]) --> Detect[Detect Platform]\n`;
131
+ diagram += ` Detect --> Platform{Platform:<br/>${platform}}\n`;
132
+ diagram += ` Platform --> LoadADR[Read ADR Decisions]\n`;
133
+ diagram += ` LoadADR --> GenScripts[Generate Deploy Scripts]\n\n`;
134
+ // Add phases
135
+ phases.forEach((phase, index) => {
136
+ const phaseId = `Phase${index + 1}`;
137
+ diagram += ` ${index === 0 ? 'GenScripts' : `Phase${index}`} --> ${phaseId}[${phase}]\n`;
138
+ });
139
+ const lastPhaseId = `Phase${phases.length}`;
140
+ diagram += `\n ${lastPhaseId} --> Validate{Validation<br/>Passed?}\n`;
141
+ diagram += ` Validate -->|No| Fix[Auto-fix Issues]\n`;
142
+ diagram += ` Fix --> ${lastPhaseId}\n`;
143
+ diagram += ` Validate -->|Yes| Success([✅ Deployment Success])\n\n`;
144
+ // Add styling
145
+ diagram += ` style Start fill:#e1f5ff\n`;
146
+ diagram += ` style Platform fill:#fff3cd\n`;
147
+ diagram += ` style Success fill:#d4edda\n`;
148
+ diagram += ` style Fix fill:#f8d7da\n`;
149
+ diagram += '```\n';
150
+ return diagram;
151
+ }
152
+ // ============================================================================
153
+ // ADR Suggestion Diagrams
154
+ // ============================================================================
155
+ /**
156
+ * Generate implicit decision detection flow
157
+ */
158
+ export function generateImplicitDecisionFlow() {
159
+ return `\`\`\`mermaid
160
+ graph TB
161
+ Start([Scan Codebase]) --> Analyze[Code Analysis]
162
+
163
+ Analyze --> TreeSitter[Tree-sitter AST<br/>Parsing]
164
+ Analyze --> Pattern[Pattern Detection]
165
+ Analyze --> Deps[Dependency Analysis]
166
+
167
+ TreeSitter --> Detect[Detect Implicit<br/>Decisions]
168
+ Pattern --> Detect
169
+ Deps --> Detect
170
+
171
+ Detect --> Type{Decision<br/>Type?}
172
+
173
+ Type -->|Architecture| A1[Layered Architecture]
174
+ Type -->|Architecture| A2[Microservices]
175
+ Type -->|Architecture| A3[Event-Driven]
176
+
177
+ Type -->|Technology| T1[Framework Choice]
178
+ Type -->|Technology| T2[Database Selection]
179
+ Type -->|Technology| T3[Build Tools]
180
+
181
+ Type -->|Security| S1[Authentication]
182
+ Type -->|Security| S2[Authorization]
183
+ Type -->|Security| S3[Encryption]
184
+
185
+ Type -->|Performance| P1[Caching Strategy]
186
+ Type -->|Performance| P2[Load Balancing]
187
+ Type -->|Performance| P3[Optimization]
188
+
189
+ A1 --> Priority[Prioritize Suggestions]
190
+ A2 --> Priority
191
+ A3 --> Priority
192
+ T1 --> Priority
193
+ T2 --> Priority
194
+ T3 --> Priority
195
+ S1 --> Priority
196
+ S2 --> Priority
197
+ S3 --> Priority
198
+ P1 --> Priority
199
+ P2 --> Priority
200
+ P3 --> Priority
201
+
202
+ Priority --> Confidence{Confidence<br/>>80%?}
203
+ Confidence -->|Yes| High[High Priority ADR]
204
+ Confidence -->|No| Review[Requires Review]
205
+
206
+ High --> Output[Generate ADR<br/>Suggestions]
207
+ Review --> Output
208
+
209
+ Output --> End([Present to User])
210
+
211
+ style Start fill:#e1f5ff
212
+ style Detect fill:#fff3cd
213
+ style Type fill:#fff3cd
214
+ style High fill:#d4edda
215
+ style Review fill:#f8d7da
216
+ style End fill:#d1ecf1
217
+ \`\`\`
218
+ `;
219
+ }
220
+ /**
221
+ * Generate code change analysis flow
222
+ */
223
+ export function generateCodeChangeAnalysisFlow() {
224
+ return `\`\`\`mermaid
225
+ sequenceDiagram
226
+ participant User as Developer
227
+ participant Tool as ADR Suggestion Tool
228
+ participant Code as Codebase
229
+ participant AI as AI Analysis
230
+ participant ADR as ADR Suggestions
231
+
232
+ User->>Tool: Provide code changes
233
+ Tool->>Code: Analyze before code
234
+ Tool->>Code: Analyze after code
235
+ Code-->>Tool: Code differences
236
+
237
+ Tool->>AI: Semantic analysis
238
+ AI->>AI: Detect architectural impact
239
+ AI->>AI: Identify decision patterns
240
+ AI-->>Tool: Analysis results
241
+
242
+ Tool->>Tool: Classify changes
243
+ Note over Tool: Architecture, Security,<br/>Performance, Data
244
+
245
+ Tool->>ADR: Generate suggestions
246
+ ADR->>ADR: Rank by importance
247
+ ADR->>ADR: Add context & rationale
248
+ ADR-->>User: Prioritized ADR list
249
+
250
+ User->>User: Review suggestions
251
+ User->>ADR: Approve ADR creation
252
+ \`\`\`
253
+ `;
254
+ }
255
+ // ============================================================================
256
+ // Deployment Readiness Diagrams
257
+ // ============================================================================
258
+ /**
259
+ * Generate deployment readiness validation flow
260
+ */
261
+ export function generateDeploymentReadinessFlow(strictMode = true) {
262
+ const tolerance = strictMode ? '0 failures' : 'Low tolerance';
263
+ return `\`\`\`mermaid
264
+ flowchart TD
265
+ Start([Check Deployment Readiness]) --> Tests[Run All Tests]
266
+
267
+ Tests --> Unit[Unit Tests]
268
+ Tests --> Integration[Integration Tests]
269
+ Tests --> E2E[End-to-End Tests]
270
+
271
+ Unit --> Coverage{Test Coverage<br/>≥80%?}
272
+ Integration --> Coverage
273
+ E2E --> Coverage
274
+
275
+ Coverage -->|No| Block1[❌ BLOCKED<br/>Insufficient Coverage]
276
+ Coverage -->|Yes| Failures{Test<br/>Failures?}
277
+
278
+ Failures -->|Yes| Block2[❌ BLOCKED<br/>${tolerance}]
279
+ Failures -->|No| Quality[Code Quality Checks]
280
+
281
+ Quality --> Lint[Linting]
282
+ Quality --> Type[Type Checking]
283
+ Quality --> Format[Formatting]
284
+
285
+ Lint --> QualityPass{All Checks<br/>Pass?}
286
+ Type --> QualityPass
287
+ Format --> QualityPass
288
+
289
+ QualityPass -->|No| Block3[❌ BLOCKED<br/>Quality Issues]
290
+ QualityPass -->|Yes| ADR[ADR Compliance Check]
291
+
292
+ ADR --> Impl{All ADRs<br/>Implemented?}
293
+ Impl -->|No| Block4[❌ BLOCKED<br/>Missing Implementation]
294
+ Impl -->|Yes| Mock[Mock vs Production Check]
295
+
296
+ Mock --> RealCode{Production-Ready<br/>Code?}
297
+ RealCode -->|No| Block5[❌ BLOCKED<br/>Mock Implementation]
298
+ RealCode -->|Yes| Config[Configuration Validation]
299
+
300
+ Config --> Secrets{Secrets<br/>Configured?}
301
+ Secrets -->|No| Block6[❌ BLOCKED<br/>Missing Secrets]
302
+ Secrets -->|Yes| Env{Environment<br/>Variables Set?}
303
+
304
+ Env -->|No| Block7[❌ BLOCKED<br/>Missing Env Vars]
305
+ Env -->|Yes| Ready[✅ READY TO DEPLOY]
306
+
307
+ Ready --> Score[Deployment Score:<br/>100/100]
308
+
309
+ Block1 --> Report[Generate Detailed<br/>Failure Report]
310
+ Block2 --> Report
311
+ Block3 --> Report
312
+ Block4 --> Report
313
+ Block5 --> Report
314
+ Block6 --> Report
315
+ Block7 --> Report
316
+
317
+ Report --> Remediation[Provide Fix Steps]
318
+
319
+ style Start fill:#e1f5ff
320
+ style Ready fill:#d4edda
321
+ style Score fill:#d4edda
322
+ style Block1 fill:#f8d7da
323
+ style Block2 fill:#f8d7da
324
+ style Block3 fill:#f8d7da
325
+ style Block4 fill:#f8d7da
326
+ style Block5 fill:#f8d7da
327
+ style Block6 fill:#f8d7da
328
+ style Block7 fill:#f8d7da
329
+ style Report fill:#fff3cd
330
+ \`\`\`
331
+ `;
332
+ }
333
+ /**
334
+ * Generate test validation pyramid
335
+ */
336
+ export function generateTestValidationPyramid() {
337
+ return `\`\`\`mermaid
338
+ graph TB
339
+ subgraph "Test Pyramid"
340
+ E2E[End-to-End Tests<br/>10% of tests]
341
+ Integration[Integration Tests<br/>30% of tests]
342
+ Unit[Unit Tests<br/>60% of tests]
343
+ end
344
+
345
+ E2E --> Integration
346
+ Integration --> Unit
347
+
348
+ Unit --> Coverage{Coverage<br/>≥80%?}
349
+ Coverage -->|Yes| Pass[✅ Tests Pass]
350
+ Coverage -->|No| Fail[❌ Blocked]
351
+
352
+ style E2E fill:#fff3cd
353
+ style Integration fill:#cfe2ff
354
+ style Unit fill:#e1f5ff
355
+ style Pass fill:#d4edda
356
+ style Fail fill:#f8d7da
357
+ \`\`\`
358
+ `;
359
+ }
360
+ // ============================================================================
361
+ // Tool Chain Orchestrator Diagrams
362
+ // ============================================================================
363
+ /**
364
+ * Generate tool orchestration flow
365
+ */
366
+ export function generateToolOrchestrationFlow(tools) {
367
+ let diagram = '```mermaid\ngraph LR\n';
368
+ diagram += ' Start([User Request]) --> AI[AI Planning]\n';
369
+ diagram += ' AI --> Analyze[Analyze Request]\n';
370
+ diagram += ' Analyze --> Plan[Generate Tool Sequence]\n\n';
371
+ const sortedTools = tools.sort((a, b) => a.order - b.order);
372
+ sortedTools.forEach((tool, index) => {
373
+ const toolId = `T${index + 1}`;
374
+ diagram += ` ${index === 0 ? 'Plan' : `T${index}`} --> ${toolId}[${tool.name}]\n`;
375
+ if (tool.depends && tool.depends.length > 0) {
376
+ diagram += ` Note right of ${toolId}: Depends on:<br/>${tool.depends.join(', ')}\n`;
377
+ }
378
+ });
379
+ const lastToolId = `T${sortedTools.length}`;
380
+ diagram += `\n ${lastToolId} --> Validate{All Tools<br/>Succeeded?}\n`;
381
+ diagram += ` Validate -->|No| Retry[Retry Failed Tools]\n`;
382
+ diagram += ` Retry --> ${lastToolId}\n`;
383
+ diagram += ` Validate -->|Yes| Result[Combine Results]\n`;
384
+ diagram += ` Result --> End([Return to User])\n\n`;
385
+ // Add styling
386
+ diagram += ' style Start fill:#e1f5ff\n';
387
+ diagram += ' style AI fill:#fff3cd\n';
388
+ diagram += ' style End fill:#d4edda\n';
389
+ diagram += ' style Retry fill:#f8d7da\n';
390
+ diagram += '```\n';
391
+ return diagram;
392
+ }
393
+ // ============================================================================
394
+ // Helper Functions
395
+ // ============================================================================
396
+ /**
397
+ * Sanitize text for mermaid diagram labels
398
+ */
399
+ export function sanitizeMermaidLabel(text) {
400
+ return text.replace(/"/g, "'").replace(/\[/g, '(').replace(/]/g, ')').replace(/\n/g, '<br/>');
401
+ }
402
+ /**
403
+ * Generate a simple state diagram
404
+ */
405
+ export function generateStateFlow(states) {
406
+ let diagram = '```mermaid\nstateDiagram-v2\n';
407
+ states.forEach((state, index) => {
408
+ if (state.type === 'start') {
409
+ diagram += ` [*] --> ${state.id}\n`;
410
+ }
411
+ diagram += ` ${state.id}: ${sanitizeMermaidLabel(state.label)}\n`;
412
+ if (index < states.length - 1) {
413
+ diagram += ` ${state.id} --> ${states[index + 1]?.id}\n`;
414
+ }
415
+ if (state.type === 'end') {
416
+ diagram += ` ${state.id} --> [*]\n`;
417
+ }
418
+ });
419
+ diagram += '```\n';
420
+ return diagram;
421
+ }
422
+ // ============================================================================
423
+ // Export all diagram generators
424
+ // ============================================================================
425
+ export const MermaidDiagrams = {
426
+ // Interactive ADR Planning
427
+ generateInteractiveADRWorkflow,
428
+ generateADRPlanningDetailedFlow,
429
+ // Deployment Guidance
430
+ generateDeploymentSequence,
431
+ generateDeploymentWorkflow,
432
+ // ADR Suggestions
433
+ generateImplicitDecisionFlow,
434
+ generateCodeChangeAnalysisFlow,
435
+ // Deployment Readiness
436
+ generateDeploymentReadinessFlow,
437
+ generateTestValidationPyramid,
438
+ // Tool Orchestration
439
+ generateToolOrchestrationFlow,
440
+ // Helpers
441
+ sanitizeMermaidLabel,
442
+ generateStateFlow,
443
+ };
444
+ export default MermaidDiagrams;
445
+ //# sourceMappingURL=mermaid-diagrams.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mermaid-diagrams.js","sourceRoot":"","sources":["../../../src/utils/mermaid-diagrams.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,249 @@
1
+ /**
2
+ * Monitoring and Analytics Framework
3
+ *
4
+ * Provides comprehensive monitoring and analytics for MCP server:
5
+ * - Request/response tracking
6
+ * - Performance metrics (latency, throughput)
7
+ * - Error tracking and reporting
8
+ * - Resource usage analytics
9
+ * - Cache performance metrics
10
+ * - Tool execution metrics
11
+ * - Health checks
12
+ * - Metrics aggregation and reporting
13
+ */
14
+ /**
15
+ * Metric types for categorization
16
+ */
17
+ export declare enum MetricType {
18
+ COUNTER = "counter",
19
+ GAUGE = "gauge",
20
+ HISTOGRAM = "histogram",
21
+ TIMER = "timer"
22
+ }
23
+ /**
24
+ * Metric category for organization
25
+ */
26
+ export declare enum MetricCategory {
27
+ REQUEST = "request",
28
+ RESOURCE = "resource",
29
+ TOOL = "tool",
30
+ CACHE = "cache",
31
+ ERROR = "error",
32
+ PERFORMANCE = "performance",
33
+ SYSTEM = "system"
34
+ }
35
+ /**
36
+ * Individual metric data point
37
+ */
38
+ export interface Metric {
39
+ name: string;
40
+ type: MetricType;
41
+ category: MetricCategory;
42
+ value: number;
43
+ timestamp: string;
44
+ tags?: Record<string, string>;
45
+ metadata?: Record<string, any>;
46
+ }
47
+ /**
48
+ * Aggregated metric statistics
49
+ */
50
+ export interface MetricStats {
51
+ count: number;
52
+ sum: number;
53
+ min: number;
54
+ max: number;
55
+ avg: number;
56
+ p50: number;
57
+ p95: number;
58
+ p99: number;
59
+ }
60
+ /**
61
+ * Health check result
62
+ */
63
+ export interface HealthCheck {
64
+ name: string;
65
+ status: 'healthy' | 'degraded' | 'unhealthy';
66
+ message?: string;
67
+ timestamp: string;
68
+ duration: number;
69
+ metadata?: Record<string, any>;
70
+ }
71
+ /**
72
+ * Request tracking data
73
+ */
74
+ export interface RequestMetrics {
75
+ requestId: string;
76
+ type: 'tool' | 'resource' | 'prompt';
77
+ name: string;
78
+ startTime: string;
79
+ endTime?: string;
80
+ duration?: number;
81
+ status: 'pending' | 'success' | 'error';
82
+ error?: string;
83
+ metadata?: Record<string, any>;
84
+ }
85
+ /**
86
+ * Performance snapshot
87
+ */
88
+ export interface PerformanceSnapshot {
89
+ timestamp: string;
90
+ requests: {
91
+ total: number;
92
+ success: number;
93
+ error: number;
94
+ pending: number;
95
+ };
96
+ latency: {
97
+ p50: number;
98
+ p95: number;
99
+ p99: number;
100
+ avg: number;
101
+ };
102
+ throughput: {
103
+ requestsPerSecond: number;
104
+ requestsPerMinute: number;
105
+ };
106
+ cache: {
107
+ hitRate: number;
108
+ totalHits: number;
109
+ totalMisses: number;
110
+ };
111
+ errors: {
112
+ total: number;
113
+ byType: Record<string, number>;
114
+ };
115
+ }
116
+ /**
117
+ * Monitoring configuration
118
+ */
119
+ export interface MonitoringConfig {
120
+ enabled: boolean;
121
+ metricsRetentionMs: number;
122
+ aggregationIntervalMs: number;
123
+ maxMetricsInMemory: number;
124
+ enableHealthChecks: boolean;
125
+ healthCheckIntervalMs: number;
126
+ }
127
+ /**
128
+ * Monitoring manager class
129
+ */
130
+ export declare class MonitoringManager {
131
+ private config;
132
+ private metrics;
133
+ private requests;
134
+ private healthChecks;
135
+ private aggregationTimer;
136
+ private healthCheckTimer;
137
+ private startTime;
138
+ constructor(config?: Partial<MonitoringConfig>);
139
+ /**
140
+ * Record a counter metric (incrementing value)
141
+ */
142
+ recordCounter(name: string, category: MetricCategory, value?: number, tags?: Record<string, string>, metadata?: Record<string, any>): void;
143
+ /**
144
+ * Record a gauge metric (point-in-time value)
145
+ */
146
+ recordGauge(name: string, category: MetricCategory, value: number, tags?: Record<string, string>, metadata?: Record<string, any>): void;
147
+ /**
148
+ * Record a histogram value (for distribution analysis)
149
+ */
150
+ recordHistogram(name: string, category: MetricCategory, value: number, tags?: Record<string, string>, metadata?: Record<string, any>): void;
151
+ /**
152
+ * Start tracking a request
153
+ */
154
+ startRequest(requestId: string, type: 'tool' | 'resource' | 'prompt', name: string, metadata?: Record<string, any>): void;
155
+ /**
156
+ * Complete a request successfully
157
+ */
158
+ completeRequest(requestId: string, metadata?: Record<string, any>): void;
159
+ /**
160
+ * Mark a request as failed
161
+ */
162
+ failRequest(requestId: string, error: string, metadata?: Record<string, any>): void;
163
+ /**
164
+ * Record cache hit
165
+ */
166
+ recordCacheHit(cacheKey: string): void;
167
+ /**
168
+ * Record cache miss
169
+ */
170
+ recordCacheMiss(cacheKey: string): void;
171
+ /**
172
+ * Register a health check
173
+ */
174
+ registerHealthCheck(_name: string, _check: () => Promise<{
175
+ status: 'healthy' | 'degraded' | 'unhealthy';
176
+ message?: string;
177
+ }>): void;
178
+ /**
179
+ * Run a health check
180
+ */
181
+ runHealthCheck(name: string, check: () => Promise<{
182
+ status: 'healthy' | 'degraded' | 'unhealthy';
183
+ message?: string;
184
+ }>): Promise<HealthCheck>;
185
+ /**
186
+ * Get all health checks
187
+ */
188
+ getHealthChecks(): HealthCheck[];
189
+ /**
190
+ * Get overall health status
191
+ */
192
+ getHealthStatus(): 'healthy' | 'degraded' | 'unhealthy';
193
+ /**
194
+ * Get performance snapshot
195
+ */
196
+ getPerformanceSnapshot(): PerformanceSnapshot;
197
+ /**
198
+ * Get metric statistics by name and category
199
+ */
200
+ getMetricStats(name: string, category: MetricCategory): MetricStats | null;
201
+ /**
202
+ * Get all metrics
203
+ */
204
+ getMetrics(): Metric[];
205
+ /**
206
+ * Get metrics by category
207
+ */
208
+ getMetricsByCategory(category: MetricCategory): Metric[];
209
+ /**
210
+ * Get recent requests
211
+ */
212
+ getRecentRequests(limit?: number): RequestMetrics[];
213
+ /**
214
+ * Clear old metrics based on retention policy
215
+ */
216
+ cleanup(): number;
217
+ /**
218
+ * Reset all metrics
219
+ */
220
+ reset(): void;
221
+ /**
222
+ * Stop monitoring
223
+ */
224
+ stop(): void;
225
+ /**
226
+ * Get uptime in milliseconds
227
+ */
228
+ getUptime(): number;
229
+ /**
230
+ * Export metrics to JSON
231
+ */
232
+ exportMetrics(): string;
233
+ private addMetric;
234
+ private getMetricSum;
235
+ private calculatePercentiles;
236
+ private calculateStats;
237
+ private percentile;
238
+ private startAggregation;
239
+ private startHealthChecks;
240
+ }
241
+ /**
242
+ * Singleton monitoring instance
243
+ */
244
+ export declare const monitoring: MonitoringManager;
245
+ /**
246
+ * Helper to track async operations
247
+ */
248
+ export declare function trackOperation<T>(operation: () => Promise<T>, name: string, category: MetricCategory, tags?: Record<string, string>): Promise<T>;
249
+ //# sourceMappingURL=monitoring.d.ts.map