mcp-adr-analysis-server 2.1.11 → 2.1.19

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 (362) hide show
  1. package/README.md +55 -8
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/src/index.d.ts +69 -2
  4. package/dist/src/index.d.ts.map +1 -1
  5. package/dist/src/index.js +1638 -551
  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/tools/adr-bootstrap-validation-tool.d.ts.map +1 -1
  111. package/dist/src/tools/adr-bootstrap-validation-tool.js +214 -4
  112. package/dist/src/tools/adr-bootstrap-validation-tool.js.map +1 -1
  113. package/dist/src/tools/adr-suggestion-tool.d.ts.map +1 -1
  114. package/dist/src/tools/adr-suggestion-tool.js +4 -1
  115. package/dist/src/tools/adr-suggestion-tool.js.map +1 -1
  116. package/dist/src/tools/adr-validation-tool.d.ts +52 -0
  117. package/dist/src/tools/adr-validation-tool.d.ts.map +1 -1
  118. package/dist/src/tools/adr-validation-tool.js +52 -0
  119. package/dist/src/tools/adr-validation-tool.js.map +1 -1
  120. package/dist/src/tools/bootstrap-validation-loop-tool.d.ts +262 -0
  121. package/dist/src/tools/bootstrap-validation-loop-tool.d.ts.map +1 -0
  122. package/dist/src/tools/bootstrap-validation-loop-tool.js +1934 -0
  123. package/dist/src/tools/bootstrap-validation-loop-tool.js.map +1 -0
  124. package/dist/src/tools/conversation-memory-tool.d.ts +48 -0
  125. package/dist/src/tools/conversation-memory-tool.d.ts.map +1 -0
  126. package/dist/src/tools/conversation-memory-tool.js +254 -0
  127. package/dist/src/tools/conversation-memory-tool.js.map +1 -0
  128. package/dist/src/tools/deployment-analysis-tool.d.ts.map +1 -1
  129. package/dist/src/tools/deployment-analysis-tool.js +47 -5
  130. package/dist/src/tools/deployment-analysis-tool.js.map +1 -1
  131. package/dist/src/tools/deployment-guidance-tool.d.ts.map +1 -1
  132. package/dist/src/tools/deployment-guidance-tool.js +48 -1
  133. package/dist/src/tools/deployment-guidance-tool.js.map +1 -1
  134. package/dist/src/tools/deployment-readiness-tool.d.ts.map +1 -1
  135. package/dist/src/tools/deployment-readiness-tool.js +15 -1
  136. package/dist/src/tools/deployment-readiness-tool.js.map +1 -1
  137. package/dist/src/tools/expand-analysis-tool.d.ts +23 -0
  138. package/dist/src/tools/expand-analysis-tool.d.ts.map +1 -0
  139. package/dist/src/tools/expand-analysis-tool.js +107 -0
  140. package/dist/src/tools/expand-analysis-tool.js.map +1 -0
  141. package/dist/src/tools/get-server-context-tool.d.ts +67 -0
  142. package/dist/src/tools/get-server-context-tool.d.ts.map +1 -0
  143. package/dist/src/tools/get-server-context-tool.js +75 -0
  144. package/dist/src/tools/get-server-context-tool.js.map +1 -0
  145. package/dist/src/tools/llm-cloud-management-tool.d.ts +62 -0
  146. package/dist/src/tools/llm-cloud-management-tool.d.ts.map +1 -0
  147. package/dist/src/tools/llm-cloud-management-tool.js +202 -0
  148. package/dist/src/tools/llm-cloud-management-tool.js.map +1 -0
  149. package/dist/src/tools/llm-database-management-tool.d.ts +62 -0
  150. package/dist/src/tools/llm-database-management-tool.d.ts.map +1 -0
  151. package/dist/src/tools/llm-database-management-tool.js +203 -0
  152. package/dist/src/tools/llm-database-management-tool.js.map +1 -0
  153. package/dist/src/tools/llm-web-search-tool.d.ts +59 -0
  154. package/dist/src/tools/llm-web-search-tool.d.ts.map +1 -0
  155. package/dist/src/tools/llm-web-search-tool.js +165 -0
  156. package/dist/src/tools/llm-web-search-tool.js.map +1 -0
  157. package/dist/src/tools/mcp-planning-tool.d.ts.map +1 -1
  158. package/dist/src/tools/mcp-planning-tool.js +10 -3
  159. package/dist/src/tools/mcp-planning-tool.js.map +1 -1
  160. package/dist/src/tools/memory-loading-tool.d.ts.map +1 -1
  161. package/dist/src/tools/memory-loading-tool.js +4 -2
  162. package/dist/src/tools/memory-loading-tool.js.map +1 -1
  163. package/dist/src/tools/perform-research-tool.d.ts +45 -1
  164. package/dist/src/tools/perform-research-tool.d.ts.map +1 -1
  165. package/dist/src/tools/perform-research-tool.js +146 -2
  166. package/dist/src/tools/perform-research-tool.js.map +1 -1
  167. package/dist/src/tools/review-existing-adrs-tool.d.ts.map +1 -1
  168. package/dist/src/tools/review-existing-adrs-tool.js +4 -1
  169. package/dist/src/tools/review-existing-adrs-tool.js.map +1 -1
  170. package/dist/src/tools/tool-chain-orchestrator.d.ts +15 -94
  171. package/dist/src/tools/tool-chain-orchestrator.d.ts.map +1 -1
  172. package/dist/src/tools/tool-chain-orchestrator.js +2 -2
  173. package/dist/src/tools/tool-chain-orchestrator.js.map +1 -1
  174. package/dist/src/tools/troubleshoot-guided-workflow-tool.d.ts +25 -120
  175. package/dist/src/tools/troubleshoot-guided-workflow-tool.d.ts.map +1 -1
  176. package/dist/src/tools/troubleshoot-guided-workflow-tool.js +2 -2
  177. package/dist/src/types/ape-framework.d.ts +50 -283
  178. package/dist/src/types/ape-framework.d.ts.map +1 -1
  179. package/dist/src/types/conversation-memory.d.ts +184 -0
  180. package/dist/src/types/conversation-memory.d.ts.map +1 -0
  181. package/dist/src/types/conversation-memory.js +8 -0
  182. package/dist/src/types/conversation-memory.js.map +1 -0
  183. package/dist/src/types/index.d.ts +112 -339
  184. package/dist/src/types/index.d.ts.map +1 -1
  185. package/dist/src/types/knowledge-generation.d.ts +96 -401
  186. package/dist/src/types/knowledge-generation.d.ts.map +1 -1
  187. package/dist/src/types/knowledge-graph-schemas.d.ts +77 -715
  188. package/dist/src/types/knowledge-graph-schemas.d.ts.map +1 -1
  189. package/dist/src/types/knowledge-graph-schemas.js +8 -8
  190. package/dist/src/types/knowledge-graph-schemas.js.map +1 -1
  191. package/dist/src/types/memory-entities.d.ts +1230 -6164
  192. package/dist/src/types/memory-entities.d.ts.map +1 -1
  193. package/dist/src/types/memory-entities.js +8 -8
  194. package/dist/src/types/memory-entities.js.map +1 -1
  195. package/dist/src/types/reflexion-framework.d.ts +35 -264
  196. package/dist/src/types/reflexion-framework.d.ts.map +1 -1
  197. package/dist/src/types/reflexion-framework.js +1 -1
  198. package/dist/src/types/reflexion-framework.js.map +1 -1
  199. package/dist/src/types/state-reinforcement.d.ts +87 -0
  200. package/dist/src/types/state-reinforcement.d.ts.map +1 -0
  201. package/dist/src/types/state-reinforcement.js +5 -0
  202. package/dist/src/types/state-reinforcement.js.map +1 -0
  203. package/dist/src/types/tiered-response.d.ts +61 -0
  204. package/dist/src/types/tiered-response.d.ts.map +1 -0
  205. package/dist/src/types/tiered-response.js +8 -0
  206. package/dist/src/types/tiered-response.js.map +1 -0
  207. package/dist/src/types/tool-context.d.ts +50 -0
  208. package/dist/src/types/tool-context.d.ts.map +1 -0
  209. package/dist/src/types/tool-context.js +20 -0
  210. package/dist/src/types/tool-context.js.map +1 -0
  211. package/dist/src/utils/adr-action-analyzer.d.ts +23 -0
  212. package/dist/src/utils/adr-action-analyzer.d.ts.map +1 -0
  213. package/dist/src/utils/adr-action-analyzer.js +323 -0
  214. package/dist/src/utils/adr-action-analyzer.js.map +1 -0
  215. package/dist/src/utils/adr-context-detector.d.ts +33 -0
  216. package/dist/src/utils/adr-context-detector.d.ts.map +1 -0
  217. package/dist/src/utils/adr-context-detector.js +279 -0
  218. package/dist/src/utils/adr-context-detector.js.map +1 -0
  219. package/dist/src/utils/adr-discovery.d.ts +28 -2
  220. package/dist/src/utils/adr-discovery.d.ts.map +1 -1
  221. package/dist/src/utils/adr-discovery.js +91 -7
  222. package/dist/src/utils/adr-discovery.js.map +1 -1
  223. package/dist/src/utils/adr-knowledge-initializer.d.ts +54 -0
  224. package/dist/src/utils/adr-knowledge-initializer.d.ts.map +1 -0
  225. package/dist/src/utils/adr-knowledge-initializer.js +240 -0
  226. package/dist/src/utils/adr-knowledge-initializer.js.map +1 -0
  227. package/dist/src/utils/adr-timeline-extractor.d.ts +21 -0
  228. package/dist/src/utils/adr-timeline-extractor.d.ts.map +1 -0
  229. package/dist/src/utils/adr-timeline-extractor.js +294 -0
  230. package/dist/src/utils/adr-timeline-extractor.js.map +1 -0
  231. package/dist/src/utils/adr-timeline-types.d.ts +234 -0
  232. package/dist/src/utils/adr-timeline-types.d.ts.map +1 -0
  233. package/dist/src/utils/adr-timeline-types.js +7 -0
  234. package/dist/src/utils/adr-timeline-types.js.map +1 -0
  235. package/dist/src/utils/ai-executor.d.ts +36 -0
  236. package/dist/src/utils/ai-executor.d.ts.map +1 -1
  237. package/dist/src/utils/ai-executor.js +36 -0
  238. package/dist/src/utils/ai-executor.js.map +1 -1
  239. package/dist/src/utils/conditional-request.d.ts +105 -0
  240. package/dist/src/utils/conditional-request.d.ts.map +1 -0
  241. package/dist/src/utils/conditional-request.js +186 -0
  242. package/dist/src/utils/conditional-request.js.map +1 -0
  243. package/dist/src/utils/config.d.ts +72 -18
  244. package/dist/src/utils/config.d.ts.map +1 -1
  245. package/dist/src/utils/config.js +75 -0
  246. package/dist/src/utils/config.js.map +1 -1
  247. package/dist/src/utils/context-document-manager.d.ts +112 -0
  248. package/dist/src/utils/context-document-manager.d.ts.map +1 -0
  249. package/dist/src/utils/context-document-manager.js +351 -0
  250. package/dist/src/utils/context-document-manager.js.map +1 -0
  251. package/dist/src/utils/conversation-memory-manager.d.ts +86 -0
  252. package/dist/src/utils/conversation-memory-manager.d.ts.map +1 -0
  253. package/dist/src/utils/conversation-memory-manager.js +443 -0
  254. package/dist/src/utils/conversation-memory-manager.js.map +1 -0
  255. package/dist/src/utils/dag-executor.d.ts +106 -0
  256. package/dist/src/utils/dag-executor.d.ts.map +1 -0
  257. package/dist/src/utils/dag-executor.js +420 -0
  258. package/dist/src/utils/dag-executor.js.map +1 -0
  259. package/dist/src/utils/deployment-analysis.d.ts.map +1 -1
  260. package/dist/src/utils/deployment-analysis.js +4 -1
  261. package/dist/src/utils/deployment-analysis.js.map +1 -1
  262. package/dist/src/utils/deployment-type-registry.d.ts +52 -0
  263. package/dist/src/utils/deployment-type-registry.d.ts.map +1 -0
  264. package/dist/src/utils/deployment-type-registry.js +543 -0
  265. package/dist/src/utils/deployment-type-registry.js.map +1 -0
  266. package/dist/src/utils/dynamic-deployment-intelligence.d.ts +117 -0
  267. package/dist/src/utils/dynamic-deployment-intelligence.d.ts.map +1 -0
  268. package/dist/src/utils/dynamic-deployment-intelligence.js +445 -0
  269. package/dist/src/utils/dynamic-deployment-intelligence.js.map +1 -0
  270. package/dist/src/utils/environment-analysis.d.ts.map +1 -1
  271. package/dist/src/utils/environment-analysis.js +4 -1
  272. package/dist/src/utils/environment-analysis.js.map +1 -1
  273. package/dist/src/utils/knowledge-graph-manager.d.ts +16 -1
  274. package/dist/src/utils/knowledge-graph-manager.d.ts.map +1 -1
  275. package/dist/src/utils/knowledge-graph-manager.js +159 -3
  276. package/dist/src/utils/knowledge-graph-manager.js.map +1 -1
  277. package/dist/src/utils/mermaid-diagrams.d.ts +101 -0
  278. package/dist/src/utils/mermaid-diagrams.d.ts.map +1 -0
  279. package/dist/src/utils/mermaid-diagrams.js +445 -0
  280. package/dist/src/utils/mermaid-diagrams.js.map +1 -0
  281. package/dist/src/utils/monitoring.d.ts +249 -0
  282. package/dist/src/utils/monitoring.d.ts.map +1 -0
  283. package/dist/src/utils/monitoring.js +513 -0
  284. package/dist/src/utils/monitoring.js.map +1 -0
  285. package/dist/src/utils/pattern-contribution-helper.d.ts +60 -0
  286. package/dist/src/utils/pattern-contribution-helper.d.ts.map +1 -0
  287. package/dist/src/utils/pattern-contribution-helper.js +308 -0
  288. package/dist/src/utils/pattern-contribution-helper.js.map +1 -0
  289. package/dist/src/utils/pattern-loader.d.ts +183 -0
  290. package/dist/src/utils/pattern-loader.d.ts.map +1 -0
  291. package/dist/src/utils/pattern-loader.js +200 -0
  292. package/dist/src/utils/pattern-loader.js.map +1 -0
  293. package/dist/src/utils/pattern-research-utility.d.ts +107 -0
  294. package/dist/src/utils/pattern-research-utility.d.ts.map +1 -0
  295. package/dist/src/utils/pattern-research-utility.js +360 -0
  296. package/dist/src/utils/pattern-research-utility.js.map +1 -0
  297. package/dist/src/utils/pattern-to-dag-converter.d.ts +62 -0
  298. package/dist/src/utils/pattern-to-dag-converter.d.ts.map +1 -0
  299. package/dist/src/utils/pattern-to-dag-converter.js +265 -0
  300. package/dist/src/utils/pattern-to-dag-converter.js.map +1 -0
  301. package/dist/src/utils/platform-detector.d.ts +86 -0
  302. package/dist/src/utils/platform-detector.d.ts.map +1 -0
  303. package/dist/src/utils/platform-detector.js +509 -0
  304. package/dist/src/utils/platform-detector.js.map +1 -0
  305. package/dist/src/utils/research-integration.d.ts.map +1 -1
  306. package/dist/src/utils/research-integration.js +8 -2
  307. package/dist/src/utils/research-integration.js.map +1 -1
  308. package/dist/src/utils/research-orchestrator.d.ts +135 -3
  309. package/dist/src/utils/research-orchestrator.d.ts.map +1 -1
  310. package/dist/src/utils/research-orchestrator.js +440 -27
  311. package/dist/src/utils/research-orchestrator.js.map +1 -1
  312. package/dist/src/utils/research-questions.d.ts.map +1 -1
  313. package/dist/src/utils/research-questions.js +4 -1
  314. package/dist/src/utils/research-questions.js.map +1 -1
  315. package/dist/src/utils/resource-extractor.d.ts +57 -0
  316. package/dist/src/utils/resource-extractor.d.ts.map +1 -0
  317. package/dist/src/utils/resource-extractor.js +323 -0
  318. package/dist/src/utils/resource-extractor.js.map +1 -0
  319. package/dist/src/utils/resource-versioning.d.ts +124 -0
  320. package/dist/src/utils/resource-versioning.d.ts.map +1 -0
  321. package/dist/src/utils/resource-versioning.js +272 -0
  322. package/dist/src/utils/resource-versioning.js.map +1 -0
  323. package/dist/src/utils/root-manager.d.ts +118 -0
  324. package/dist/src/utils/root-manager.d.ts.map +1 -0
  325. package/dist/src/utils/root-manager.js +154 -0
  326. package/dist/src/utils/root-manager.js.map +1 -0
  327. package/dist/src/utils/rule-generation.d.ts.map +1 -1
  328. package/dist/src/utils/rule-generation.js +4 -1
  329. package/dist/src/utils/rule-generation.js.map +1 -1
  330. package/dist/src/utils/server-context-generator.d.ts +47 -0
  331. package/dist/src/utils/server-context-generator.d.ts.map +1 -0
  332. package/dist/src/utils/server-context-generator.js +666 -0
  333. package/dist/src/utils/server-context-generator.js.map +1 -0
  334. package/dist/src/utils/state-reinforcement-manager.d.ts +60 -0
  335. package/dist/src/utils/state-reinforcement-manager.d.ts.map +1 -0
  336. package/dist/src/utils/state-reinforcement-manager.js +200 -0
  337. package/dist/src/utils/state-reinforcement-manager.js.map +1 -0
  338. package/dist/src/utils/system-card-manager.d.ts +194 -0
  339. package/dist/src/utils/system-card-manager.d.ts.map +1 -0
  340. package/dist/src/utils/system-card-manager.js +336 -0
  341. package/dist/src/utils/system-card-manager.js.map +1 -0
  342. package/dist/src/utils/tiered-response-manager.d.ts +40 -0
  343. package/dist/src/utils/tiered-response-manager.d.ts.map +1 -0
  344. package/dist/src/utils/tiered-response-manager.js +243 -0
  345. package/dist/src/utils/tiered-response-manager.js.map +1 -0
  346. package/dist/src/utils/validated-pattern-definitions.d.ts +219 -0
  347. package/dist/src/utils/validated-pattern-definitions.d.ts.map +1 -0
  348. package/dist/src/utils/validated-pattern-definitions.js +1511 -0
  349. package/dist/src/utils/validated-pattern-definitions.js.map +1 -0
  350. package/package.json +21 -12
  351. package/dist/src/prompts/todo-prompts.d.ts +0 -49
  352. package/dist/src/prompts/todo-prompts.d.ts.map +0 -1
  353. package/dist/src/prompts/todo-prompts.js +0 -824
  354. package/dist/src/prompts/todo-prompts.js.map +0 -1
  355. package/dist/src/types/todo-json-schemas.d.ts +0 -17
  356. package/dist/src/types/todo-json-schemas.d.ts.map +0 -1
  357. package/dist/src/types/todo-json-schemas.js +0 -9
  358. package/dist/src/types/todo-json-schemas.js.map +0 -1
  359. package/dist/src/utils/todo-file-watcher.d.ts +0 -14
  360. package/dist/src/utils/todo-file-watcher.d.ts.map +0 -1
  361. package/dist/src/utils/todo-file-watcher.js +0 -25
  362. package/dist/src/utils/todo-file-watcher.js.map +0 -1
@@ -0,0 +1,336 @@
1
+ import { promises as fs } from 'fs';
2
+ import * as path from 'path';
3
+ import * as yaml from 'js-yaml';
4
+ import { EnhancedLogger } from './enhanced-logging.js';
5
+ /**
6
+ * Manages SystemCard creation, updates, and persistence
7
+ */
8
+ export class SystemCardManager {
9
+ systemCardPath;
10
+ logger;
11
+ currentCard = null;
12
+ constructor(projectPath) {
13
+ this.systemCardPath = path.join(projectPath, 'systemcard.yaml');
14
+ this.logger = new EnhancedLogger();
15
+ }
16
+ /**
17
+ * Initialize a new SystemCard
18
+ */
19
+ async initialize(options) {
20
+ try {
21
+ this.currentCard = {
22
+ version: '1.0',
23
+ systemId: options.systemId,
24
+ created: options.created,
25
+ lastUpdated: options.created,
26
+ platform: options.platform,
27
+ bootstrapContext: options.bootstrapContext,
28
+ resources: {},
29
+ cleanup: {
30
+ strategy: 'label-based',
31
+ labelSelector: {
32
+ 'managed-by': 'mcp-adr-server',
33
+ 'bootstrap-id': options.bootstrapContext.bootstrapId,
34
+ },
35
+ phases: [],
36
+ },
37
+ ...(options.metadata && { metadata: options.metadata }),
38
+ };
39
+ await this.save();
40
+ this.logger.info(`SystemCard initialized: ${this.systemCardPath}`, 'SystemCardManager');
41
+ }
42
+ catch (error) {
43
+ this.logger.error('Failed to initialize SystemCard', 'SystemCardManager', error);
44
+ throw error;
45
+ }
46
+ }
47
+ /**
48
+ * Load existing SystemCard from disk
49
+ */
50
+ async load() {
51
+ try {
52
+ const content = await fs.readFile(this.systemCardPath, 'utf-8');
53
+ this.currentCard = yaml.load(content);
54
+ this.logger.info('SystemCard loaded successfully', 'SystemCardManager');
55
+ return this.currentCard;
56
+ }
57
+ catch (error) {
58
+ if (error.code === 'ENOENT') {
59
+ this.logger.warn('SystemCard not found', 'SystemCardManager');
60
+ return null;
61
+ }
62
+ this.logger.error('Failed to load SystemCard', 'SystemCardManager', error);
63
+ throw error;
64
+ }
65
+ }
66
+ /**
67
+ * Save current SystemCard to disk
68
+ */
69
+ async save() {
70
+ if (!this.currentCard) {
71
+ throw new Error('No SystemCard initialized. Call initialize() first.');
72
+ }
73
+ try {
74
+ this.currentCard.lastUpdated = new Date().toISOString();
75
+ const yamlContent = yaml.dump(this.currentCard, {
76
+ indent: 2,
77
+ lineWidth: -1,
78
+ noRefs: true,
79
+ });
80
+ await fs.writeFile(this.systemCardPath, yamlContent, 'utf-8');
81
+ this.logger.info('SystemCard saved successfully', 'SystemCardManager');
82
+ }
83
+ catch (error) {
84
+ this.logger.error('Failed to save SystemCard', 'SystemCardManager', error);
85
+ throw error;
86
+ }
87
+ }
88
+ /**
89
+ * Add resources to the SystemCard
90
+ */
91
+ async addResources(resources, context) {
92
+ if (!this.currentCard) {
93
+ throw new Error('No SystemCard loaded. Call load() or initialize() first.');
94
+ }
95
+ try {
96
+ for (const resource of resources) {
97
+ // Add phase/task context if provided
98
+ if (context?.phase) {
99
+ resource.createdByPhase = context.phase;
100
+ }
101
+ if (context?.taskId && !resource.createdByTask) {
102
+ resource.createdByTask = context.taskId;
103
+ }
104
+ // Categorize by type
105
+ const category = this.getResourceCategory(resource.type);
106
+ if (!this.currentCard.resources[category]) {
107
+ this.currentCard.resources[category] = [];
108
+ }
109
+ // Check for duplicates
110
+ const exists = this.currentCard.resources[category].some(r => r.name === resource.name && r.namespace === resource.namespace);
111
+ if (!exists) {
112
+ this.currentCard.resources[category].push(resource);
113
+ this.logger.info(`Added resource: ${resource.type}/${resource.name}`, 'SystemCardManager');
114
+ }
115
+ }
116
+ await this.save();
117
+ }
118
+ catch (error) {
119
+ this.logger.error('Failed to add resources', 'SystemCardManager', error);
120
+ throw error;
121
+ }
122
+ }
123
+ /**
124
+ * Remove a resource from the SystemCard
125
+ */
126
+ async removeResource(type, name, namespace) {
127
+ if (!this.currentCard) {
128
+ throw new Error('No SystemCard loaded.');
129
+ }
130
+ try {
131
+ const category = this.getResourceCategory(type);
132
+ const resources = this.currentCard.resources[category];
133
+ if (resources) {
134
+ const index = resources.findIndex(r => r.name === name && (namespace ? r.namespace === namespace : true));
135
+ if (index !== -1) {
136
+ resources.splice(index, 1);
137
+ this.logger.info(`Removed resource: ${type}/${name}`, 'SystemCardManager');
138
+ await this.save();
139
+ }
140
+ }
141
+ }
142
+ catch (error) {
143
+ this.logger.error('Failed to remove resource', 'SystemCardManager', error);
144
+ throw error;
145
+ }
146
+ }
147
+ /**
148
+ * Generate cleanup phases from current resources
149
+ * Resources are ordered in reverse of typical deployment order
150
+ */
151
+ async generateCleanupPhases() {
152
+ if (!this.currentCard) {
153
+ throw new Error('No SystemCard loaded.');
154
+ }
155
+ try {
156
+ const phases = [];
157
+ let order = 1;
158
+ // Order of cleanup (reverse of typical deployment)
159
+ const cleanupOrder = [
160
+ 'ingresses',
161
+ 'services',
162
+ 'deployments',
163
+ 'statefulsets',
164
+ 'pods',
165
+ 'configmaps',
166
+ 'secrets',
167
+ 'persistentvolumeclaims',
168
+ 'namespaces',
169
+ 'custom',
170
+ ];
171
+ for (const category of cleanupOrder) {
172
+ const resources = this.currentCard.resources[category];
173
+ if (resources && resources.length > 0) {
174
+ const phase = {
175
+ order: order++,
176
+ name: `Delete ${category}`,
177
+ description: `Remove all ${category} created during bootstrap`,
178
+ commands: resources.map(r => ({
179
+ description: `Delete ${r.type} ${r.name}`,
180
+ command: r.cleanupCommand,
181
+ expectedExitCode: 0,
182
+ continueOnError: false,
183
+ })),
184
+ canParallelize: true,
185
+ estimatedDuration: `${resources.length * 2}-${resources.length * 5} seconds`,
186
+ };
187
+ phases.push(phase);
188
+ }
189
+ }
190
+ // Update SystemCard with generated cleanup phases
191
+ this.currentCard.cleanup.phases = phases;
192
+ await this.save();
193
+ this.logger.info(`Generated ${phases.length} cleanup phases`, 'SystemCardManager');
194
+ return phases;
195
+ }
196
+ catch (error) {
197
+ this.logger.error('Failed to generate cleanup phases', 'SystemCardManager', error);
198
+ throw error;
199
+ }
200
+ }
201
+ /**
202
+ * Create a state snapshot for rollback capability
203
+ */
204
+ async createSnapshot(beforeAction) {
205
+ if (!this.currentCard) {
206
+ throw new Error('No SystemCard loaded.');
207
+ }
208
+ try {
209
+ const resourceCount = Object.values(this.currentCard.resources)
210
+ .filter(arr => Array.isArray(arr))
211
+ .reduce((sum, arr) => sum + arr.length, 0);
212
+ const checksum = this.calculateChecksum(this.currentCard);
213
+ const snapshot = {
214
+ timestamp: new Date().toISOString(),
215
+ beforeAction,
216
+ resourceCount,
217
+ checksum,
218
+ };
219
+ if (!this.currentCard.snapshots) {
220
+ this.currentCard.snapshots = [];
221
+ }
222
+ this.currentCard.snapshots.push(snapshot);
223
+ await this.save();
224
+ this.logger.info(`Snapshot created: ${beforeAction}`, 'SystemCardManager');
225
+ return snapshot;
226
+ }
227
+ catch (error) {
228
+ this.logger.error('Failed to create snapshot', 'SystemCardManager', error);
229
+ throw error;
230
+ }
231
+ }
232
+ /**
233
+ * Get all resources of a specific type
234
+ */
235
+ getResourcesByType(type) {
236
+ if (!this.currentCard) {
237
+ return [];
238
+ }
239
+ const category = this.getResourceCategory(type);
240
+ return this.currentCard.resources[category] || [];
241
+ }
242
+ /**
243
+ * Get all resources created by a specific task
244
+ */
245
+ getResourcesByTask(taskId) {
246
+ if (!this.currentCard) {
247
+ return [];
248
+ }
249
+ const allResources = [];
250
+ for (const category of Object.keys(this.currentCard.resources)) {
251
+ const resources = this.currentCard.resources[category];
252
+ if (resources) {
253
+ allResources.push(...resources.filter(r => r.createdByTask === taskId));
254
+ }
255
+ }
256
+ return allResources;
257
+ }
258
+ /**
259
+ * Get total count of all resources
260
+ */
261
+ getResourceCount() {
262
+ if (!this.currentCard) {
263
+ return 0;
264
+ }
265
+ return Object.values(this.currentCard.resources)
266
+ .filter(arr => Array.isArray(arr))
267
+ .reduce((sum, arr) => sum + arr.length, 0);
268
+ }
269
+ /**
270
+ * Get current SystemCard
271
+ */
272
+ getCurrentCard() {
273
+ return this.currentCard;
274
+ }
275
+ /**
276
+ * Check if SystemCard exists on disk
277
+ */
278
+ async exists() {
279
+ try {
280
+ await fs.access(this.systemCardPath);
281
+ return true;
282
+ }
283
+ catch {
284
+ return false;
285
+ }
286
+ }
287
+ /**
288
+ * Delete SystemCard file from disk
289
+ */
290
+ async delete() {
291
+ try {
292
+ await fs.unlink(this.systemCardPath);
293
+ this.currentCard = null;
294
+ this.logger.info('SystemCard deleted', 'SystemCardManager');
295
+ }
296
+ catch (error) {
297
+ if (error.code !== 'ENOENT') {
298
+ this.logger.error('Failed to delete SystemCard', 'SystemCardManager', error);
299
+ throw error;
300
+ }
301
+ }
302
+ }
303
+ /**
304
+ * Map resource type to storage category
305
+ */
306
+ getResourceCategory(type) {
307
+ const typeMap = {
308
+ namespace: 'namespaces',
309
+ deployment: 'deployments',
310
+ service: 'services',
311
+ configmap: 'configmaps',
312
+ secret: 'secrets',
313
+ ingress: 'ingresses',
314
+ statefulset: 'statefulsets',
315
+ pod: 'pods',
316
+ persistentvolumeclaim: 'persistentvolumeclaims',
317
+ custom: 'custom',
318
+ };
319
+ return typeMap[type] || 'custom';
320
+ }
321
+ /**
322
+ * Calculate checksum for state verification
323
+ */
324
+ calculateChecksum(card) {
325
+ const contentString = JSON.stringify(card.resources);
326
+ // Simple hash function (in production, use crypto.createHash)
327
+ let hash = 0;
328
+ for (let i = 0; i < contentString.length; i++) {
329
+ const char = contentString.charCodeAt(i);
330
+ hash = (hash << 5) - hash + char;
331
+ hash = hash & hash; // Convert to 32-bit integer
332
+ }
333
+ return hash.toString(16);
334
+ }
335
+ }
336
+ //# sourceMappingURL=system-card-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system-card-manager.js","sourceRoot":"","sources":["../../../src/utils/system-card-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Tiered Response Manager
3
+ *
4
+ * Manages creation and retrieval of tiered responses for conversational summarization.
5
+ * Implements token-efficient responses with expandable sections stored in memory.
6
+ */
7
+ import { MemoryEntityManager } from './memory-entity-manager.js';
8
+ import { TieredResponse, ExpandableContent, TieredResponseConfig } from '../types/tiered-response.js';
9
+ export declare class TieredResponseManager {
10
+ private memoryManager;
11
+ private logger;
12
+ private config;
13
+ constructor(memoryManager?: MemoryEntityManager, config?: TieredResponseConfig);
14
+ initialize(): Promise<void>;
15
+ /**
16
+ * Create a tiered response from full analysis content
17
+ */
18
+ createTieredResponse(toolName: string, fullContent: string, sections: Record<string, string>, toolArgs?: any): Promise<TieredResponse>;
19
+ /**
20
+ * Generate a summary using AI or fallback to truncation
21
+ */
22
+ private generateSummary;
23
+ /**
24
+ * Fallback: Truncate content to approximate token limit
25
+ */
26
+ private truncateSummary;
27
+ /**
28
+ * Store expandable content in memory system
29
+ */
30
+ private storeExpandableContent;
31
+ /**
32
+ * Retrieve expandable content from memory
33
+ */
34
+ getExpandableContent(expandableId: string): Promise<ExpandableContent | null>;
35
+ /**
36
+ * Format tiered response for display
37
+ */
38
+ formatTieredResponse(response: TieredResponse): string;
39
+ }
40
+ //# sourceMappingURL=tiered-response-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tiered-response-manager.d.ts","sourceRoot":"","sources":["../../../src/utils/tiered-response-manager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EACL,cAAc,EAEd,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,6BAA6B,CAAC;AAIrC,qBAAa,qBAAqB;IAChC,OAAO,CAAC,aAAa,CAAsB;IAC3C,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,MAAM,CAAiC;gBAEnC,aAAa,CAAC,EAAE,mBAAmB,EAAE,MAAM,CAAC,EAAE,oBAAoB;IAYxE,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC;;OAEG;IACG,oBAAoB,CACxB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAChC,QAAQ,CAAC,EAAE,GAAG,GACb,OAAO,CAAC,cAAc,CAAC;IAqF1B;;OAEG;YACW,eAAe;IAmD7B;;OAEG;IACH,OAAO,CAAC,eAAe;IAqBvB;;OAEG;YACW,sBAAsB;IAuBpC;;OAEG;IACG,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IA2BnF;;OAEG;IACH,oBAAoB,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM;CAsDvD"}
@@ -0,0 +1,243 @@
1
+ /**
2
+ * Tiered Response Manager
3
+ *
4
+ * Manages creation and retrieval of tiered responses for conversational summarization.
5
+ * Implements token-efficient responses with expandable sections stored in memory.
6
+ */
7
+ import crypto from 'crypto';
8
+ import { MemoryEntityManager } from './memory-entity-manager.js';
9
+ import { executePromptWithFallback } from './prompt-execution.js';
10
+ import { EnhancedLogger } from './enhanced-logging.js';
11
+ export class TieredResponseManager {
12
+ memoryManager;
13
+ logger;
14
+ config;
15
+ constructor(memoryManager, config) {
16
+ this.memoryManager = memoryManager || new MemoryEntityManager();
17
+ this.logger = new EnhancedLogger();
18
+ this.config = {
19
+ maxSummaryTokens: config?.maxSummaryTokens || 500,
20
+ maxSectionSummaryTokens: config?.maxSectionSummaryTokens || 150,
21
+ useAiSummarization: config?.useAiSummarization ?? true,
22
+ summarizationTemperature: config?.summarizationTemperature || 0.3,
23
+ tieringThreshold: config?.tieringThreshold || 2000,
24
+ };
25
+ }
26
+ async initialize() {
27
+ await this.memoryManager.initialize();
28
+ }
29
+ /**
30
+ * Create a tiered response from full analysis content
31
+ */
32
+ async createTieredResponse(toolName, fullContent, sections, toolArgs) {
33
+ const expandableId = crypto.randomUUID();
34
+ const timestamp = new Date().toISOString();
35
+ // Estimate token counts (rough: 1 token ā‰ˆ 4 characters)
36
+ const fullTokens = Math.ceil(fullContent.length / 4);
37
+ const shouldTier = fullTokens >= this.config.tieringThreshold;
38
+ if (!shouldTier) {
39
+ // Content is small enough - no tiering needed
40
+ return {
41
+ summary: fullContent,
42
+ expandableId,
43
+ timestamp,
44
+ toolName,
45
+ sections: {},
46
+ tokenSavings: {
47
+ summaryTokens: fullTokens,
48
+ fullTokens,
49
+ savingsPercent: 0,
50
+ },
51
+ };
52
+ }
53
+ // Generate executive summary
54
+ const summary = await this.generateSummary(fullContent, this.config.maxSummaryTokens, 'executive');
55
+ // Generate section summaries
56
+ const sectionSummaries = {};
57
+ for (const [sectionName, sectionContent] of Object.entries(sections)) {
58
+ const sectionSummary = await this.generateSummary(sectionContent, this.config.maxSectionSummaryTokens, 'section');
59
+ sectionSummaries[sectionName] = {
60
+ summary: sectionSummary,
61
+ hasDetails: true,
62
+ fullTokenCount: Math.ceil(sectionContent.length / 4),
63
+ };
64
+ }
65
+ // Store expandable content in memory
66
+ const expandableContent = {
67
+ content: fullContent,
68
+ sections,
69
+ metadata: {
70
+ toolName,
71
+ timestamp,
72
+ toolArgs,
73
+ tokenCount: fullTokens,
74
+ },
75
+ };
76
+ await this.storeExpandableContent(expandableId, expandableContent);
77
+ // Calculate token savings
78
+ const summaryTokens = Math.ceil(summary.length / 4);
79
+ const tokenSavings = {
80
+ summaryTokens,
81
+ fullTokens,
82
+ savingsPercent: Math.round(((fullTokens - summaryTokens) / fullTokens) * 100),
83
+ };
84
+ this.logger.info(`Created tiered response: ${tokenSavings.savingsPercent}% token reduction`, 'TieredResponseManager', { expandableId, toolName, fullTokens, summaryTokens });
85
+ return {
86
+ summary,
87
+ expandableId,
88
+ timestamp,
89
+ toolName,
90
+ sections: sectionSummaries,
91
+ tokenSavings,
92
+ };
93
+ }
94
+ /**
95
+ * Generate a summary using AI or fallback to truncation
96
+ */
97
+ async generateSummary(content, maxTokens, type) {
98
+ if (!this.config.useAiSummarization) {
99
+ return this.truncateSummary(content, maxTokens);
100
+ }
101
+ try {
102
+ const prompt = type === 'executive'
103
+ ? `Provide a concise executive summary of the following analysis in ${maxTokens} tokens or less. Focus on key findings, critical insights, and actionable recommendations. Maintain technical accuracy while being brief.
104
+
105
+ ANALYSIS:
106
+ ${content}
107
+
108
+ EXECUTIVE SUMMARY (max ${maxTokens} tokens):`
109
+ : `Summarize the following section in ${maxTokens} tokens or less. Capture the essential information and key points concisely.
110
+
111
+ SECTION CONTENT:
112
+ ${content}
113
+
114
+ SUMMARY (max ${maxTokens} tokens):`;
115
+ const result = await executePromptWithFallback(prompt, 'Generate a concise summary of analysis content', {
116
+ temperature: this.config.summarizationTemperature,
117
+ maxTokens,
118
+ systemPrompt: 'You are a technical writer specializing in concise, accurate summaries. Focus on clarity and actionable insights.',
119
+ responseFormat: 'text',
120
+ });
121
+ if (result.isAIGenerated) {
122
+ return result.content;
123
+ }
124
+ // Fallback to truncation if AI fails
125
+ return this.truncateSummary(content, maxTokens);
126
+ }
127
+ catch (error) {
128
+ this.logger.warn('AI summarization failed, using truncation', 'TieredResponseManager', {
129
+ error: error instanceof Error ? error.message : String(error),
130
+ });
131
+ return this.truncateSummary(content, maxTokens);
132
+ }
133
+ }
134
+ /**
135
+ * Fallback: Truncate content to approximate token limit
136
+ */
137
+ truncateSummary(content, maxTokens) {
138
+ const maxChars = maxTokens * 4; // Rough approximation
139
+ if (content.length <= maxChars) {
140
+ return content;
141
+ }
142
+ // Truncate at sentence boundary
143
+ const truncated = content.substring(0, maxChars);
144
+ const lastPeriod = truncated.lastIndexOf('.');
145
+ const lastNewline = truncated.lastIndexOf('\n');
146
+ const cutPoint = Math.max(lastPeriod, lastNewline);
147
+ if (cutPoint > maxChars * 0.8) {
148
+ // Good cutpoint found
149
+ return truncated.substring(0, cutPoint + 1) + '\n\n[...continued in full analysis]';
150
+ }
151
+ // No good cutpoint, hard truncate
152
+ return truncated + '...\n\n[...continued in full analysis]';
153
+ }
154
+ /**
155
+ * Store expandable content in memory system
156
+ */
157
+ async storeExpandableContent(expandableId, content) {
158
+ await this.memoryManager.upsertEntity({
159
+ id: expandableId,
160
+ type: 'knowledge_artifact',
161
+ title: `Expandable Analysis: ${content.metadata.toolName}`,
162
+ description: `Full analysis content from ${content.metadata.toolName} tool. Token count: ${content.metadata.tokenCount}. Expandable ID: ${expandableId}`,
163
+ artifactData: {
164
+ artifactType: 'analysis',
165
+ content: JSON.stringify(content),
166
+ format: 'json',
167
+ sourceReliability: 1.0,
168
+ applicabilityScope: ['deployment', 'analysis', content.metadata.toolName],
169
+ keyInsights: [],
170
+ actionableItems: [],
171
+ },
172
+ tags: ['expandable', 'tiered-response', content.metadata.toolName, `id:${expandableId}`],
173
+ confidence: 1.0,
174
+ });
175
+ }
176
+ /**
177
+ * Retrieve expandable content from memory
178
+ */
179
+ async getExpandableContent(expandableId) {
180
+ try {
181
+ const entity = await this.memoryManager.getEntity(expandableId);
182
+ if (!entity || entity.type !== 'knowledge_artifact') {
183
+ return null;
184
+ }
185
+ const artifactContent = entity.artifactData?.content;
186
+ if (!artifactContent) {
187
+ return null;
188
+ }
189
+ return JSON.parse(artifactContent);
190
+ }
191
+ catch (error) {
192
+ this.logger.error('Failed to retrieve expandable content', 'TieredResponseManager', error instanceof Error ? error : undefined, {
193
+ expandableId,
194
+ errorMessage: error instanceof Error ? error.message : String(error),
195
+ });
196
+ return null;
197
+ }
198
+ }
199
+ /**
200
+ * Format tiered response for display
201
+ */
202
+ formatTieredResponse(response) {
203
+ const parts = [
204
+ `# ${response.toolName} Analysis`,
205
+ '',
206
+ '## šŸ“Š Executive Summary',
207
+ response.summary,
208
+ '',
209
+ ];
210
+ // Add sections if available
211
+ if (Object.keys(response.sections).length > 0) {
212
+ parts.push('## šŸ“‘ Sections (Summaries)');
213
+ parts.push('');
214
+ for (const [name, section] of Object.entries(response.sections)) {
215
+ parts.push(`### ${name}`);
216
+ parts.push(section.summary);
217
+ if (section.hasDetails) {
218
+ parts.push(`\nšŸ’” *Full details available (${section.fullTokenCount || '~'} tokens) - use \`expand_analysis_section\` with section: "${name}"*`);
219
+ }
220
+ parts.push('');
221
+ }
222
+ }
223
+ // Add expansion info
224
+ parts.push('---');
225
+ parts.push('## šŸ” Full Analysis Available');
226
+ parts.push('');
227
+ parts.push(`**Expandable ID:** \`${response.expandableId}\``);
228
+ parts.push(`**Tool:** ${response.toolName} | **Generated:** ${new Date(response.timestamp).toLocaleString()}`);
229
+ if (response.tokenSavings) {
230
+ parts.push('');
231
+ parts.push('### Token Efficiency');
232
+ parts.push(`- Summary: ${response.tokenSavings.summaryTokens} tokens`);
233
+ parts.push(`- Full Analysis: ${response.tokenSavings.fullTokens} tokens`);
234
+ parts.push(`- **Savings: ${response.tokenSavings.savingsPercent}%** (${response.tokenSavings.fullTokens - response.tokenSavings.summaryTokens} tokens saved)`);
235
+ }
236
+ parts.push('');
237
+ parts.push('šŸ’” **To view full analysis:** Use `expand_analysis_section` tool with `expandableId: "' +
238
+ response.expandableId +
239
+ '"`');
240
+ return parts.join('\n');
241
+ }
242
+ }
243
+ //# sourceMappingURL=tiered-response-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tiered-response-manager.js","sourceRoot":"","sources":["../../../src/utils/tiered-response-manager.ts"],"names":[],"mappings":"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"}