@nanocollective/nanocoder 1.18.0 → 1.19.0

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 (603) hide show
  1. package/README.md +176 -8
  2. package/assets/nanocoder-vscode.vsix +0 -0
  3. package/dist/ai-sdk-client-empty-message.spec.js.map +1 -1
  4. package/dist/ai-sdk-client.d.ts +1 -1
  5. package/dist/ai-sdk-client.d.ts.map +1 -1
  6. package/dist/ai-sdk-client.js +261 -150
  7. package/dist/ai-sdk-client.js.map +1 -1
  8. package/dist/app/utils/appUtils.d.ts +1 -1
  9. package/dist/app/utils/appUtils.d.ts.map +1 -1
  10. package/dist/app/utils/appUtils.js +78 -12
  11. package/dist/app/utils/appUtils.js.map +1 -1
  12. package/dist/app.d.ts +22 -1
  13. package/dist/app.d.ts.map +1 -1
  14. package/dist/app.js +353 -48
  15. package/dist/app.js.map +1 -1
  16. package/dist/cli.js +37 -2
  17. package/dist/cli.js.map +1 -1
  18. package/dist/cli.spec.d.ts +2 -0
  19. package/dist/cli.spec.d.ts.map +1 -0
  20. package/dist/cli.spec.js +101 -0
  21. package/dist/cli.spec.js.map +1 -0
  22. package/dist/client-factory.d.ts.map +1 -1
  23. package/dist/client-factory.js +2 -2
  24. package/dist/client-factory.js.map +1 -1
  25. package/dist/commands/checkpoint.d.ts +6 -0
  26. package/dist/commands/checkpoint.d.ts.map +1 -0
  27. package/dist/commands/checkpoint.js +277 -0
  28. package/dist/commands/checkpoint.js.map +1 -0
  29. package/dist/commands/clear.d.ts.map +1 -1
  30. package/dist/commands/clear.js +1 -1
  31. package/dist/commands/clear.js.map +1 -1
  32. package/dist/commands/custom-commands.d.ts.map +1 -1
  33. package/dist/commands/custom-commands.js +4 -4
  34. package/dist/commands/custom-commands.js.map +1 -1
  35. package/dist/commands/exit.d.ts.map +1 -1
  36. package/dist/commands/exit.js.map +1 -1
  37. package/dist/commands/export.d.ts.map +1 -1
  38. package/dist/commands/export.js +2 -2
  39. package/dist/commands/export.js.map +1 -1
  40. package/dist/commands/help.d.ts.map +1 -1
  41. package/dist/commands/help.js +5 -5
  42. package/dist/commands/help.js.map +1 -1
  43. package/dist/commands/index.d.ts +1 -1
  44. package/dist/commands/index.d.ts.map +1 -1
  45. package/dist/commands/index.js +1 -1
  46. package/dist/commands/index.js.map +1 -1
  47. package/dist/commands/init.d.ts.map +1 -1
  48. package/dist/commands/init.js +15 -14
  49. package/dist/commands/init.js.map +1 -1
  50. package/dist/commands/lsp.d.ts.map +1 -1
  51. package/dist/commands/lsp.js +6 -6
  52. package/dist/commands/lsp.js.map +1 -1
  53. package/dist/commands/mcp.d.ts +1 -1
  54. package/dist/commands/mcp.d.ts.map +1 -1
  55. package/dist/commands/mcp.js +6 -6
  56. package/dist/commands/mcp.js.map +1 -1
  57. package/dist/commands/model-database.d.ts.map +1 -1
  58. package/dist/commands/model-database.js +8 -8
  59. package/dist/commands/model-database.js.map +1 -1
  60. package/dist/commands/model.d.ts.map +1 -1
  61. package/dist/commands/model.js.map +1 -1
  62. package/dist/commands/provider.d.ts.map +1 -1
  63. package/dist/commands/provider.js.map +1 -1
  64. package/dist/commands/setup-config.js +1 -1
  65. package/dist/commands/setup-config.js.map +1 -1
  66. package/dist/commands/status.d.ts.map +1 -1
  67. package/dist/commands/status.js.map +1 -1
  68. package/dist/commands/theme.d.ts.map +1 -1
  69. package/dist/commands/theme.js.map +1 -1
  70. package/dist/commands/update.d.ts.map +1 -1
  71. package/dist/commands/update.js +5 -5
  72. package/dist/commands/update.js.map +1 -1
  73. package/dist/commands/usage.d.ts.map +1 -1
  74. package/dist/commands/usage.js +3 -3
  75. package/dist/commands/usage.js.map +1 -1
  76. package/dist/commands.d.ts.map +1 -1
  77. package/dist/commands.js +1 -1
  78. package/dist/commands.js.map +1 -1
  79. package/dist/components/assistant-message.d.ts.map +1 -1
  80. package/dist/components/assistant-message.js +2 -2
  81. package/dist/components/assistant-message.js.map +1 -1
  82. package/dist/components/bash-execution-indicator.d.ts.map +1 -1
  83. package/dist/components/bash-execution-indicator.js +2 -2
  84. package/dist/components/bash-execution-indicator.js.map +1 -1
  85. package/dist/components/cancelling-indicator.js +3 -3
  86. package/dist/components/cancelling-indicator.js.map +1 -1
  87. package/dist/components/chat-queue.d.ts.map +1 -1
  88. package/dist/components/chat-queue.js +1 -1
  89. package/dist/components/chat-queue.js.map +1 -1
  90. package/dist/components/checkpoint-display.d.ts +8 -0
  91. package/dist/components/checkpoint-display.d.ts.map +1 -0
  92. package/dist/components/checkpoint-display.js +29 -0
  93. package/dist/components/checkpoint-display.js.map +1 -0
  94. package/dist/components/checkpoint-selector.d.ts +11 -0
  95. package/dist/components/checkpoint-selector.d.ts.map +1 -0
  96. package/dist/components/checkpoint-selector.js +55 -0
  97. package/dist/components/checkpoint-selector.js.map +1 -0
  98. package/dist/components/error-message.d.ts.map +1 -1
  99. package/dist/components/error-message.js +4 -4
  100. package/dist/components/error-message.js.map +1 -1
  101. package/dist/components/info-message.d.ts.map +1 -1
  102. package/dist/components/info-message.js +4 -4
  103. package/dist/components/info-message.js.map +1 -1
  104. package/dist/components/model-selector.d.ts.map +1 -1
  105. package/dist/components/model-selector.js +7 -7
  106. package/dist/components/model-selector.js.map +1 -1
  107. package/dist/components/provider-selector.d.ts.map +1 -1
  108. package/dist/components/provider-selector.js +6 -6
  109. package/dist/components/provider-selector.js.map +1 -1
  110. package/dist/components/security-disclaimer.d.ts.map +1 -1
  111. package/dist/components/security-disclaimer.js +4 -4
  112. package/dist/components/security-disclaimer.js.map +1 -1
  113. package/dist/components/status.d.ts +3 -1
  114. package/dist/components/status.d.ts.map +1 -1
  115. package/dist/components/status.js +17 -9
  116. package/dist/components/status.js.map +1 -1
  117. package/dist/components/success-message.d.ts.map +1 -1
  118. package/dist/components/success-message.js +4 -4
  119. package/dist/components/success-message.js.map +1 -1
  120. package/dist/components/theme-selector.d.ts.map +1 -1
  121. package/dist/components/theme-selector.js +8 -8
  122. package/dist/components/theme-selector.js.map +1 -1
  123. package/dist/components/tool-confirmation.d.ts.map +1 -1
  124. package/dist/components/tool-confirmation.js +7 -7
  125. package/dist/components/tool-confirmation.js.map +1 -1
  126. package/dist/components/tool-execution-indicator.d.ts.map +1 -1
  127. package/dist/components/tool-execution-indicator.js +2 -2
  128. package/dist/components/tool-execution-indicator.js.map +1 -1
  129. package/dist/components/tool-message.d.ts.map +1 -1
  130. package/dist/components/tool-message.js +4 -5
  131. package/dist/components/tool-message.js.map +1 -1
  132. package/dist/components/ui/titled-box.d.ts +16 -0
  133. package/dist/components/ui/titled-box.d.ts.map +1 -0
  134. package/dist/components/ui/titled-box.js +10 -0
  135. package/dist/components/ui/titled-box.js.map +1 -0
  136. package/dist/components/usage/progress-bar.d.ts.map +1 -1
  137. package/dist/components/usage/progress-bar.js +3 -0
  138. package/dist/components/usage/progress-bar.js.map +1 -1
  139. package/dist/components/usage/usage-display.d.ts.map +1 -1
  140. package/dist/components/usage/usage-display.js +7 -4
  141. package/dist/components/usage/usage-display.js.map +1 -1
  142. package/dist/components/user-input.d.ts.map +1 -1
  143. package/dist/components/user-input.js +7 -7
  144. package/dist/components/user-input.js.map +1 -1
  145. package/dist/components/user-message.d.ts.map +1 -1
  146. package/dist/components/user-message.js +1 -1
  147. package/dist/components/user-message.js.map +1 -1
  148. package/dist/components/vscode-extension-prompt.js +3 -3
  149. package/dist/components/vscode-extension-prompt.js.map +1 -1
  150. package/dist/components/warning-message.d.ts.map +1 -1
  151. package/dist/components/warning-message.js +4 -4
  152. package/dist/components/warning-message.js.map +1 -1
  153. package/dist/components/welcome-message.d.ts.map +1 -1
  154. package/dist/components/welcome-message.js +4 -4
  155. package/dist/components/welcome-message.js.map +1 -1
  156. package/dist/config/index.d.ts.map +1 -1
  157. package/dist/config/index.js +7 -7
  158. package/dist/config/index.js.map +1 -1
  159. package/dist/config/index.spec.js +4 -4
  160. package/dist/config/index.spec.js.map +1 -1
  161. package/dist/config/paths.spec.js +1 -1
  162. package/dist/config/paths.spec.js.map +1 -1
  163. package/dist/config/preferences.d.ts +0 -2
  164. package/dist/config/preferences.d.ts.map +1 -1
  165. package/dist/config/preferences.js +1 -11
  166. package/dist/config/preferences.js.map +1 -1
  167. package/dist/custom-commands/executor.d.ts.map +1 -1
  168. package/dist/custom-commands/executor.js.map +1 -1
  169. package/dist/custom-commands/loader.d.ts.map +1 -1
  170. package/dist/custom-commands/loader.js +1 -1
  171. package/dist/custom-commands/loader.js.map +1 -1
  172. package/dist/custom-commands/parser.d.ts.map +1 -1
  173. package/dist/custom-commands/parser.js.map +1 -1
  174. package/dist/hooks/useAppInitialization.d.ts +7 -5
  175. package/dist/hooks/useAppInitialization.d.ts.map +1 -1
  176. package/dist/hooks/useAppInitialization.js +21 -22
  177. package/dist/hooks/useAppInitialization.js.map +1 -1
  178. package/dist/hooks/useAppState.d.ts +22 -5
  179. package/dist/hooks/useAppState.d.ts.map +1 -1
  180. package/dist/hooks/useAppState.js +17 -1
  181. package/dist/hooks/useAppState.js.map +1 -1
  182. package/dist/hooks/useChatHandler.d.ts +4 -2
  183. package/dist/hooks/useChatHandler.d.ts.map +1 -1
  184. package/dist/hooks/useChatHandler.js +35 -10
  185. package/dist/hooks/useChatHandler.js.map +1 -1
  186. package/dist/hooks/useDirectoryTrust.js +1 -1
  187. package/dist/hooks/useDirectoryTrust.js.map +1 -1
  188. package/dist/hooks/useInputState.js +2 -2
  189. package/dist/hooks/useInputState.js.map +1 -1
  190. package/dist/hooks/useModeHandlers.d.ts +1 -1
  191. package/dist/hooks/useModeHandlers.d.ts.map +1 -1
  192. package/dist/hooks/useModeHandlers.js +3 -3
  193. package/dist/hooks/useModeHandlers.js.map +1 -1
  194. package/dist/hooks/useTerminalWidth.d.ts.map +1 -1
  195. package/dist/hooks/useTerminalWidth.js +3 -3
  196. package/dist/hooks/useTerminalWidth.js.map +1 -1
  197. package/dist/hooks/useTheme.d.ts.map +1 -1
  198. package/dist/hooks/useTheme.js +1 -1
  199. package/dist/hooks/useTheme.js.map +1 -1
  200. package/dist/hooks/useToolHandler.d.ts +1 -1
  201. package/dist/hooks/useToolHandler.d.ts.map +1 -1
  202. package/dist/hooks/useToolHandler.js +4 -4
  203. package/dist/hooks/useToolHandler.js.map +1 -1
  204. package/dist/hooks/useUIState.d.ts +1 -1
  205. package/dist/hooks/useUIState.d.ts.map +1 -1
  206. package/dist/hooks/useUIState.js.map +1 -1
  207. package/dist/hooks/useVSCodeServer.js +2 -2
  208. package/dist/hooks/useVSCodeServer.js.map +1 -1
  209. package/dist/init/agents-template-generator.d.ts +1 -1
  210. package/dist/init/agents-template-generator.d.ts.map +1 -1
  211. package/dist/init/agents-template-generator.js.map +1 -1
  212. package/dist/init/existing-rules-extractor.js +1 -1
  213. package/dist/init/existing-rules-extractor.js.map +1 -1
  214. package/dist/init/file-scanner.js +2 -2
  215. package/dist/init/file-scanner.js.map +1 -1
  216. package/dist/init/framework-detector.js +1 -1
  217. package/dist/init/framework-detector.js.map +1 -1
  218. package/dist/init/project-analyzer.d.ts +1 -1
  219. package/dist/init/project-analyzer.d.ts.map +1 -1
  220. package/dist/init/project-analyzer.js +3 -3
  221. package/dist/init/project-analyzer.js.map +1 -1
  222. package/dist/lsp/lsp-client.d.ts +1 -1
  223. package/dist/lsp/lsp-client.d.ts.map +1 -1
  224. package/dist/lsp/lsp-client.js +1 -1
  225. package/dist/lsp/lsp-client.js.map +1 -1
  226. package/dist/lsp/lsp-client.spec.js +1 -2
  227. package/dist/lsp/lsp-client.spec.js.map +1 -1
  228. package/dist/lsp/lsp-manager.d.ts +1 -1
  229. package/dist/lsp/lsp-manager.d.ts.map +1 -1
  230. package/dist/lsp/lsp-manager.js.map +1 -1
  231. package/dist/lsp/lsp-manager.spec.js +1 -1
  232. package/dist/lsp/lsp-manager.spec.js.map +1 -1
  233. package/dist/lsp/protocol.spec.js +1 -1
  234. package/dist/lsp/protocol.spec.js.map +1 -1
  235. package/dist/lsp/server-discovery.spec.js +1 -1
  236. package/dist/lsp/server-discovery.spec.js.map +1 -1
  237. package/dist/markdown-parser/index.spec.js.map +1 -1
  238. package/dist/markdown-parser/table-parser.spec.js.map +1 -1
  239. package/dist/mcp/mcp-client.d.ts +3 -2
  240. package/dist/mcp/mcp-client.d.ts.map +1 -1
  241. package/dist/mcp/mcp-client.js +264 -91
  242. package/dist/mcp/mcp-client.js.map +1 -1
  243. package/dist/mcp/transport-factory.d.ts +1 -1
  244. package/dist/mcp/transport-factory.d.ts.map +1 -1
  245. package/dist/mcp/transport-factory.js +16 -3
  246. package/dist/mcp/transport-factory.js.map +1 -1
  247. package/dist/mcp/transport-factory.spec.js +30 -48
  248. package/dist/mcp/transport-factory.spec.js.map +1 -1
  249. package/dist/message-handler.d.ts +1 -1
  250. package/dist/message-handler.d.ts.map +1 -1
  251. package/dist/model-database/database-engine.d.ts.map +1 -1
  252. package/dist/model-database/database-engine.js.map +1 -1
  253. package/dist/model-database/database-engine.spec.js.map +1 -1
  254. package/dist/model-database/model-database.js +1 -1
  255. package/dist/model-database/model-database.js.map +1 -1
  256. package/dist/model-database/model-engine.d.ts.map +1 -1
  257. package/dist/model-database/model-engine.js.map +1 -1
  258. package/dist/model-database/model-engine.spec.js +1 -1
  259. package/dist/model-database/model-engine.spec.js.map +1 -1
  260. package/dist/model-database/model-fetcher.d.ts.map +1 -1
  261. package/dist/model-database/model-fetcher.js +2 -1
  262. package/dist/model-database/model-fetcher.js.map +1 -1
  263. package/dist/model-database/model-fetcher.spec.js +1 -1
  264. package/dist/model-database/model-fetcher.spec.js.map +1 -1
  265. package/dist/models/models-cache.d.ts +1 -1
  266. package/dist/models/models-cache.d.ts.map +1 -1
  267. package/dist/models/models-cache.js +1 -1
  268. package/dist/models/models-cache.js.map +1 -1
  269. package/dist/models/models-dev-client.d.ts.map +1 -1
  270. package/dist/models/models-dev-client.js +18 -10
  271. package/dist/models/models-dev-client.js.map +1 -1
  272. package/dist/prompt-history.js +2 -2
  273. package/dist/prompt-history.js.map +1 -1
  274. package/dist/services/checkpoint-manager.d.ts +68 -0
  275. package/dist/services/checkpoint-manager.d.ts.map +1 -0
  276. package/dist/services/checkpoint-manager.js +345 -0
  277. package/dist/services/checkpoint-manager.js.map +1 -0
  278. package/dist/services/checkpoint-manager.spec.d.ts +2 -0
  279. package/dist/services/checkpoint-manager.spec.d.ts.map +1 -0
  280. package/dist/services/checkpoint-manager.spec.js +353 -0
  281. package/dist/services/checkpoint-manager.spec.js.map +1 -0
  282. package/dist/services/file-snapshot.d.ts +32 -0
  283. package/dist/services/file-snapshot.d.ts.map +1 -0
  284. package/dist/services/file-snapshot.js +161 -0
  285. package/dist/services/file-snapshot.js.map +1 -0
  286. package/dist/services/file-snapshot.spec.d.ts +2 -0
  287. package/dist/services/file-snapshot.spec.d.ts.map +1 -0
  288. package/dist/services/file-snapshot.spec.js +285 -0
  289. package/dist/services/file-snapshot.spec.js.map +1 -0
  290. package/dist/test-utils/render-with-theme.d.ts +7 -0
  291. package/dist/test-utils/render-with-theme.d.ts.map +1 -0
  292. package/dist/test-utils/render-with-theme.js +38 -0
  293. package/dist/test-utils/render-with-theme.js.map +1 -0
  294. package/dist/tokenization/tokenizer-factory.js +2 -2
  295. package/dist/tokenization/tokenizer-factory.js.map +1 -1
  296. package/dist/tokenization/tokenizer-factory.spec.js +2 -2
  297. package/dist/tokenization/tokenizer-factory.spec.js.map +1 -1
  298. package/dist/tokenization/tokenizers/anthropic-tokenizer.d.ts +1 -1
  299. package/dist/tokenization/tokenizers/anthropic-tokenizer.d.ts.map +1 -1
  300. package/dist/tokenization/tokenizers/anthropic-tokenizer.js.map +1 -1
  301. package/dist/tokenization/tokenizers/anthropic-tokenizer.spec.js.map +1 -1
  302. package/dist/tokenization/tokenizers/fallback-tokenizer.d.ts +1 -1
  303. package/dist/tokenization/tokenizers/fallback-tokenizer.d.ts.map +1 -1
  304. package/dist/tokenization/tokenizers/fallback-tokenizer.spec.js.map +1 -1
  305. package/dist/tokenization/tokenizers/llama-tokenizer.d.ts +1 -1
  306. package/dist/tokenization/tokenizers/llama-tokenizer.d.ts.map +1 -1
  307. package/dist/tokenization/tokenizers/llama-tokenizer.js.map +1 -1
  308. package/dist/tokenization/tokenizers/llama-tokenizer.spec.js.map +1 -1
  309. package/dist/tokenization/tokenizers/openai-tokenizer.d.ts +1 -1
  310. package/dist/tokenization/tokenizers/openai-tokenizer.d.ts.map +1 -1
  311. package/dist/tokenization/tokenizers/openai-tokenizer.js.map +1 -1
  312. package/dist/tokenization/tokenizers/openai-tokenizer.spec.js.map +1 -1
  313. package/dist/tool-calling/json-parser.d.ts.map +1 -1
  314. package/dist/tool-calling/json-parser.js +2 -10
  315. package/dist/tool-calling/json-parser.js.map +1 -1
  316. package/dist/tool-calling/json-parser.spec.js +7 -7
  317. package/dist/tool-calling/json-parser.spec.js.map +1 -1
  318. package/dist/tool-calling/tool-parser.d.ts.map +1 -1
  319. package/dist/tool-calling/tool-parser.js +1 -1
  320. package/dist/tool-calling/tool-parser.js.map +1 -1
  321. package/dist/tool-calling/tool-parser.spec.js +3 -3
  322. package/dist/tool-calling/tool-parser.spec.js.map +1 -1
  323. package/dist/tools/create-file.d.ts.map +1 -1
  324. package/dist/tools/create-file.js +7 -7
  325. package/dist/tools/create-file.js.map +1 -1
  326. package/dist/tools/delete-lines.d.ts.map +1 -1
  327. package/dist/tools/delete-lines.js +9 -9
  328. package/dist/tools/delete-lines.js.map +1 -1
  329. package/dist/tools/execute-bash.d.ts.map +1 -1
  330. package/dist/tools/execute-bash.js +3 -3
  331. package/dist/tools/execute-bash.js.map +1 -1
  332. package/dist/tools/execute-function.spec.js +4 -4
  333. package/dist/tools/execute-function.spec.js.map +1 -1
  334. package/dist/tools/fetch-url.d.ts.map +1 -1
  335. package/dist/tools/fetch-url.js +3 -3
  336. package/dist/tools/fetch-url.js.map +1 -1
  337. package/dist/tools/find-files.d.ts.map +1 -1
  338. package/dist/tools/find-files.js +6 -6
  339. package/dist/tools/find-files.js.map +1 -1
  340. package/dist/tools/index.d.ts +1 -1
  341. package/dist/tools/index.d.ts.map +1 -1
  342. package/dist/tools/index.js +7 -7
  343. package/dist/tools/index.js.map +1 -1
  344. package/dist/tools/insert-lines.d.ts.map +1 -1
  345. package/dist/tools/insert-lines.js +8 -8
  346. package/dist/tools/insert-lines.js.map +1 -1
  347. package/dist/tools/lsp-get-diagnostics.d.ts.map +1 -1
  348. package/dist/tools/lsp-get-diagnostics.js +5 -5
  349. package/dist/tools/lsp-get-diagnostics.js.map +1 -1
  350. package/dist/tools/needs-approval.spec.js +6 -6
  351. package/dist/tools/needs-approval.spec.js.map +1 -1
  352. package/dist/tools/read-file.js +6 -6
  353. package/dist/tools/read-file.js.map +1 -1
  354. package/dist/tools/replace-lines.d.ts.map +1 -1
  355. package/dist/tools/replace-lines.js +8 -8
  356. package/dist/tools/replace-lines.js.map +1 -1
  357. package/dist/tools/search-file-contents.d.ts.map +1 -1
  358. package/dist/tools/search-file-contents.js +6 -6
  359. package/dist/tools/search-file-contents.js.map +1 -1
  360. package/dist/tools/tool-manager.d.ts +1 -1
  361. package/dist/tools/tool-manager.d.ts.map +1 -1
  362. package/dist/tools/tool-manager.js +1 -1
  363. package/dist/tools/tool-manager.js.map +1 -1
  364. package/dist/tools/tool-registry.d.ts +1 -1
  365. package/dist/tools/tool-registry.d.ts.map +1 -1
  366. package/dist/tools/web-search.d.ts.map +1 -1
  367. package/dist/tools/web-search.js +4 -4
  368. package/dist/tools/web-search.js.map +1 -1
  369. package/dist/types/app.d.ts +6 -3
  370. package/dist/types/app.d.ts.map +1 -1
  371. package/dist/types/checkpoint.d.ts +43 -0
  372. package/dist/types/checkpoint.d.ts.map +1 -0
  373. package/dist/types/checkpoint.js +2 -0
  374. package/dist/types/checkpoint.js.map +1 -0
  375. package/dist/types/config.d.ts +0 -1
  376. package/dist/types/config.d.ts.map +1 -1
  377. package/dist/types/core-connection-status.spec.js.map +1 -1
  378. package/dist/types/core.d.ts +1 -1
  379. package/dist/types/core.d.ts.map +1 -1
  380. package/dist/types/core.js +1 -1
  381. package/dist/types/core.js.map +1 -1
  382. package/dist/types/index.d.ts +1 -0
  383. package/dist/types/index.d.ts.map +1 -1
  384. package/dist/types/index.js +1 -0
  385. package/dist/types/index.js.map +1 -1
  386. package/dist/usage/calculator.spec.js +1 -1
  387. package/dist/usage/calculator.spec.js.map +1 -1
  388. package/dist/usage/storage.d.ts +1 -1
  389. package/dist/usage/storage.d.ts.map +1 -1
  390. package/dist/usage/storage.js +9 -3
  391. package/dist/usage/storage.js.map +1 -1
  392. package/dist/usage/storage.spec.js +3 -3
  393. package/dist/usage/storage.spec.js.map +1 -1
  394. package/dist/usage/tracker.d.ts.map +1 -1
  395. package/dist/usage/tracker.js +1 -1
  396. package/dist/usage/tracker.js.map +1 -1
  397. package/dist/usage/tracker.spec.js +4 -4
  398. package/dist/usage/tracker.spec.js.map +1 -1
  399. package/dist/utils/atomic-deletion.spec.js +1 -1
  400. package/dist/utils/atomic-deletion.spec.js.map +1 -1
  401. package/dist/utils/checkpoint-utils.d.ts +12 -0
  402. package/dist/utils/checkpoint-utils.d.ts.map +1 -0
  403. package/dist/utils/checkpoint-utils.js +85 -0
  404. package/dist/utils/checkpoint-utils.js.map +1 -0
  405. package/dist/utils/checkpoint-utils.spec.d.ts +2 -0
  406. package/dist/utils/checkpoint-utils.spec.d.ts.map +1 -0
  407. package/dist/utils/checkpoint-utils.spec.js +182 -0
  408. package/dist/utils/checkpoint-utils.spec.js.map +1 -0
  409. package/dist/utils/error-formatter.d.ts +35 -0
  410. package/dist/utils/error-formatter.d.ts.map +1 -1
  411. package/dist/utils/error-formatter.js +123 -0
  412. package/dist/utils/error-formatter.js.map +1 -1
  413. package/dist/utils/file-autocomplete.js +2 -2
  414. package/dist/utils/file-autocomplete.js.map +1 -1
  415. package/dist/utils/file-autocomplete.spec.js +1 -1
  416. package/dist/utils/file-autocomplete.spec.js.map +1 -1
  417. package/dist/utils/file-content-loader.js +1 -1
  418. package/dist/utils/file-content-loader.js.map +1 -1
  419. package/dist/utils/file-content-loader.spec.js +4 -4
  420. package/dist/utils/file-content-loader.spec.js.map +1 -1
  421. package/dist/utils/file-mention-handler.js.map +1 -1
  422. package/dist/utils/file-mention-handler.spec.js +4 -4
  423. package/dist/utils/file-mention-handler.spec.js.map +1 -1
  424. package/dist/utils/file-mention-parser.spec.js +2 -2
  425. package/dist/utils/file-mention-parser.spec.js.map +1 -1
  426. package/dist/utils/installation-detector.js +2 -2
  427. package/dist/utils/installation-detector.js.map +1 -1
  428. package/dist/utils/installation-detector.spec.js +10 -17
  429. package/dist/utils/installation-detector.spec.js.map +1 -1
  430. package/dist/utils/logging/config.d.ts +41 -0
  431. package/dist/utils/logging/config.d.ts.map +1 -0
  432. package/dist/utils/logging/config.js +188 -0
  433. package/dist/utils/logging/config.js.map +1 -0
  434. package/dist/utils/logging/config.spec.d.ts +2 -0
  435. package/dist/utils/logging/config.spec.d.ts.map +1 -0
  436. package/dist/utils/logging/config.spec.js +233 -0
  437. package/dist/utils/logging/config.spec.js.map +1 -0
  438. package/dist/utils/logging/console-facade.d.ts +93 -0
  439. package/dist/utils/logging/console-facade.d.ts.map +1 -0
  440. package/dist/utils/logging/console-facade.js +295 -0
  441. package/dist/utils/logging/console-facade.js.map +1 -0
  442. package/dist/utils/logging/console-facade.spec.d.ts +2 -0
  443. package/dist/utils/logging/console-facade.spec.d.ts.map +1 -0
  444. package/dist/utils/logging/console-facade.spec.js +143 -0
  445. package/dist/utils/logging/console-facade.spec.js.map +1 -0
  446. package/dist/utils/logging/correlation.d.ts +139 -0
  447. package/dist/utils/logging/correlation.d.ts.map +1 -0
  448. package/dist/utils/logging/correlation.js +410 -0
  449. package/dist/utils/logging/correlation.js.map +1 -0
  450. package/dist/utils/logging/correlation.spec.d.ts +2 -0
  451. package/dist/utils/logging/correlation.spec.d.ts.map +1 -0
  452. package/dist/utils/logging/correlation.spec.js +449 -0
  453. package/dist/utils/logging/correlation.spec.js.map +1 -0
  454. package/dist/utils/logging/formatters.d.ts +70 -0
  455. package/dist/utils/logging/formatters.d.ts.map +1 -0
  456. package/dist/utils/logging/formatters.js +186 -0
  457. package/dist/utils/logging/formatters.js.map +1 -0
  458. package/dist/utils/logging/formatters.spec.d.ts +2 -0
  459. package/dist/utils/logging/formatters.spec.d.ts.map +1 -0
  460. package/dist/utils/logging/formatters.spec.js +356 -0
  461. package/dist/utils/logging/formatters.spec.js.map +1 -0
  462. package/dist/utils/logging/health-monitor.d.ts +216 -0
  463. package/dist/utils/logging/health-monitor.d.ts.map +1 -0
  464. package/dist/utils/logging/health-monitor.js +760 -0
  465. package/dist/utils/logging/health-monitor.js.map +1 -0
  466. package/dist/utils/logging/health-monitor.spec.d.ts +2 -0
  467. package/dist/utils/logging/health-monitor.spec.d.ts.map +1 -0
  468. package/dist/utils/logging/health-monitor.spec.js +305 -0
  469. package/dist/utils/logging/health-monitor.spec.js.map +1 -0
  470. package/dist/utils/logging/index.d.ts +100 -0
  471. package/dist/utils/logging/index.d.ts.map +1 -0
  472. package/dist/utils/logging/index.js +186 -0
  473. package/dist/utils/logging/index.js.map +1 -0
  474. package/dist/utils/logging/index.spec.d.ts +2 -0
  475. package/dist/utils/logging/index.spec.d.ts.map +1 -0
  476. package/dist/utils/logging/index.spec.js +214 -0
  477. package/dist/utils/logging/index.spec.js.map +1 -0
  478. package/dist/utils/logging/integration.spec.d.ts +2 -0
  479. package/dist/utils/logging/integration.spec.d.ts.map +1 -0
  480. package/dist/utils/logging/integration.spec.js +312 -0
  481. package/dist/utils/logging/integration.spec.js.map +1 -0
  482. package/dist/utils/logging/log-method-factory.d.ts +43 -0
  483. package/dist/utils/logging/log-method-factory.d.ts.map +1 -0
  484. package/dist/utils/logging/log-method-factory.js +176 -0
  485. package/dist/utils/logging/log-method-factory.js.map +1 -0
  486. package/dist/utils/logging/log-method-factory.spec.d.ts +2 -0
  487. package/dist/utils/logging/log-method-factory.spec.d.ts.map +1 -0
  488. package/dist/utils/logging/log-method-factory.spec.js +428 -0
  489. package/dist/utils/logging/log-method-factory.spec.js.map +1 -0
  490. package/dist/utils/logging/log-query.d.ts +275 -0
  491. package/dist/utils/logging/log-query.d.ts.map +1 -0
  492. package/dist/utils/logging/log-query.js +621 -0
  493. package/dist/utils/logging/log-query.js.map +1 -0
  494. package/dist/utils/logging/log-query.spec.d.ts +2 -0
  495. package/dist/utils/logging/log-query.spec.d.ts.map +1 -0
  496. package/dist/utils/logging/log-query.spec.js +737 -0
  497. package/dist/utils/logging/log-query.spec.js.map +1 -0
  498. package/dist/utils/logging/logger-provider.d.ts +73 -0
  499. package/dist/utils/logging/logger-provider.d.ts.map +1 -0
  500. package/dist/utils/logging/logger-provider.js +298 -0
  501. package/dist/utils/logging/logger-provider.js.map +1 -0
  502. package/dist/utils/logging/logger-provider.spec.d.ts +2 -0
  503. package/dist/utils/logging/logger-provider.spec.d.ts.map +1 -0
  504. package/dist/utils/logging/logger-provider.spec.js +204 -0
  505. package/dist/utils/logging/logger-provider.spec.js.map +1 -0
  506. package/dist/utils/logging/performance.d.ts +147 -0
  507. package/dist/utils/logging/performance.d.ts.map +1 -0
  508. package/dist/utils/logging/performance.js +520 -0
  509. package/dist/utils/logging/performance.js.map +1 -0
  510. package/dist/utils/logging/performance.spec.d.ts +2 -0
  511. package/dist/utils/logging/performance.spec.d.ts.map +1 -0
  512. package/dist/utils/logging/performance.spec.js +139 -0
  513. package/dist/utils/logging/performance.spec.js.map +1 -0
  514. package/dist/utils/logging/pino-logger.d.ts +22 -0
  515. package/dist/utils/logging/pino-logger.d.ts.map +1 -0
  516. package/dist/utils/logging/pino-logger.js +372 -0
  517. package/dist/utils/logging/pino-logger.js.map +1 -0
  518. package/dist/utils/logging/pino-logger.spec.d.ts +2 -0
  519. package/dist/utils/logging/pino-logger.spec.d.ts.map +1 -0
  520. package/dist/utils/logging/pino-logger.spec.js +294 -0
  521. package/dist/utils/logging/pino-logger.spec.js.map +1 -0
  522. package/dist/utils/logging/redaction.d.ts +38 -0
  523. package/dist/utils/logging/redaction.d.ts.map +1 -0
  524. package/dist/utils/logging/redaction.js +210 -0
  525. package/dist/utils/logging/redaction.js.map +1 -0
  526. package/dist/utils/logging/redaction.spec.d.ts +2 -0
  527. package/dist/utils/logging/redaction.spec.d.ts.map +1 -0
  528. package/dist/utils/logging/redaction.spec.js +338 -0
  529. package/dist/utils/logging/redaction.spec.js.map +1 -0
  530. package/dist/utils/logging/request-tracker.d.ts +189 -0
  531. package/dist/utils/logging/request-tracker.d.ts.map +1 -0
  532. package/dist/utils/logging/request-tracker.js +569 -0
  533. package/dist/utils/logging/request-tracker.js.map +1 -0
  534. package/dist/utils/logging/request-tracker.spec.d.ts +2 -0
  535. package/dist/utils/logging/request-tracker.spec.d.ts.map +1 -0
  536. package/dist/utils/logging/request-tracker.spec.js +868 -0
  537. package/dist/utils/logging/request-tracker.spec.js.map +1 -0
  538. package/dist/utils/logging/transports.d.ts +55 -0
  539. package/dist/utils/logging/transports.d.ts.map +1 -0
  540. package/dist/utils/logging/transports.js +252 -0
  541. package/dist/utils/logging/transports.js.map +1 -0
  542. package/dist/utils/logging/transports.spec.d.ts +2 -0
  543. package/dist/utils/logging/transports.spec.d.ts.map +1 -0
  544. package/dist/utils/logging/transports.spec.js +390 -0
  545. package/dist/utils/logging/transports.spec.js.map +1 -0
  546. package/dist/utils/logging/types.d.ts +173 -0
  547. package/dist/utils/logging/types.d.ts.map +1 -0
  548. package/dist/utils/logging/types.js +5 -0
  549. package/dist/utils/logging/types.js.map +1 -0
  550. package/dist/utils/message-queue.d.ts +64 -4
  551. package/dist/utils/message-queue.d.ts.map +1 -1
  552. package/dist/utils/message-queue.js +282 -28
  553. package/dist/utils/message-queue.js.map +1 -1
  554. package/dist/utils/paste-utils.spec.js +1 -1
  555. package/dist/utils/paste-utils.spec.js.map +1 -1
  556. package/dist/utils/prompt-processor.js +2 -2
  557. package/dist/utils/prompt-processor.js.map +1 -1
  558. package/dist/utils/tool-cancellation.spec.js.map +1 -1
  559. package/dist/utils/tool-result-display.d.ts +2 -2
  560. package/dist/utils/tool-result-display.d.ts.map +1 -1
  561. package/dist/utils/tool-result-display.js +3 -3
  562. package/dist/utils/tool-result-display.js.map +1 -1
  563. package/dist/utils/update-checker.d.ts.map +1 -1
  564. package/dist/utils/update-checker.js +1 -1
  565. package/dist/utils/update-checker.js.map +1 -1
  566. package/dist/utils/update-checker.spec.js +2 -2
  567. package/dist/utils/update-checker.spec.js.map +1 -1
  568. package/dist/vscode/extension-installer.js +1 -1
  569. package/dist/vscode/extension-installer.js.map +1 -1
  570. package/dist/vscode/extension-installer.spec.js +1 -1
  571. package/dist/vscode/extension-installer.spec.js.map +1 -1
  572. package/dist/vscode/protocol.spec.js +1 -1
  573. package/dist/vscode/protocol.spec.js.map +1 -1
  574. package/dist/vscode/vscode-server.d.ts.map +1 -1
  575. package/dist/vscode/vscode-server.js +2 -2
  576. package/dist/vscode/vscode-server.js.map +1 -1
  577. package/dist/vscode/vscode-server.spec.js.map +1 -1
  578. package/dist/wizard/config-wizard.d.ts.map +1 -1
  579. package/dist/wizard/config-wizard.js +16 -12
  580. package/dist/wizard/config-wizard.js.map +1 -1
  581. package/dist/wizard/steps/location-step.js +4 -4
  582. package/dist/wizard/steps/location-step.js.map +1 -1
  583. package/dist/wizard/steps/mcp-step.d.ts.map +1 -1
  584. package/dist/wizard/steps/mcp-step.js +4 -4
  585. package/dist/wizard/steps/mcp-step.js.map +1 -1
  586. package/dist/wizard/steps/provider-step.d.ts.map +1 -1
  587. package/dist/wizard/steps/provider-step.js +4 -4
  588. package/dist/wizard/steps/provider-step.js.map +1 -1
  589. package/dist/wizard/steps/summary-step.d.ts.map +1 -1
  590. package/dist/wizard/steps/summary-step.js +2 -2
  591. package/dist/wizard/steps/summary-step.js.map +1 -1
  592. package/dist/wizard/templates/provider-templates.d.ts.map +1 -1
  593. package/dist/wizard/templates/provider-templates.js +64 -0
  594. package/dist/wizard/templates/provider-templates.js.map +1 -1
  595. package/dist/wizard/validation-array.spec.js +1 -1
  596. package/dist/wizard/validation-array.spec.js.map +1 -1
  597. package/dist/wizard/validation.spec.js +1 -1
  598. package/dist/wizard/validation.spec.js.map +1 -1
  599. package/package.json +23 -22
  600. package/dist/commands/debugging.d.ts +0 -3
  601. package/dist/commands/debugging.d.ts.map +0 -1
  602. package/dist/commands/debugging.js +0 -23
  603. package/dist/commands/debugging.js.map +0 -1
@@ -0,0 +1,569 @@
1
+ /**
2
+ * Request timing and memory usage tracking
3
+ * Provides comprehensive monitoring for HTTP requests, AI calls, and MCP operations
4
+ */
5
+ import { generateCorrelationId, getLogger } from './index.js';
6
+ import { calculateMemoryDelta, formatBytes, trackPerformance, } from './performance.js';
7
+ // Get logger instance directly to avoid circular dependencies
8
+ const logger = getLogger();
9
+ /**
10
+ * Request tracker class for monitoring HTTP requests and operations
11
+ */
12
+ export class RequestTracker {
13
+ activeRequests = new Map();
14
+ completedRequests = [];
15
+ maxCompletedRequests;
16
+ correlationId;
17
+ constructor(maxCompletedRequests = 1000) {
18
+ this.maxCompletedRequests = maxCompletedRequests;
19
+ this.correlationId = generateCorrelationId();
20
+ }
21
+ /**
22
+ * Start tracking a new request
23
+ */
24
+ startRequest(metadata) {
25
+ const id = this.generateRequestId();
26
+ const request = {
27
+ ...metadata,
28
+ id,
29
+ startTime: Date.now(),
30
+ status: 'pending',
31
+ correlationId: generateCorrelationId(),
32
+ memoryStart: process.memoryUsage(),
33
+ };
34
+ this.activeRequests.set(id, request);
35
+ logger.debug('Request tracking started', {
36
+ requestId: id,
37
+ requestType: metadata.type,
38
+ method: metadata.method,
39
+ endpoint: metadata.url || metadata.endpoint,
40
+ correlationId: request.correlationId,
41
+ source: 'request-tracker',
42
+ });
43
+ return id;
44
+ }
45
+ /**
46
+ * Complete a request successfully
47
+ */
48
+ completeRequest(requestId, responseMetadata) {
49
+ const request = this.activeRequests.get(requestId);
50
+ if (!request) {
51
+ logger.warn('Attempted to complete unknown request', {
52
+ requestId,
53
+ source: 'request-tracker',
54
+ });
55
+ return null;
56
+ }
57
+ const endTime = Date.now();
58
+ const memoryEnd = process.memoryUsage();
59
+ const duration = endTime - request.startTime;
60
+ let memoryDelta;
61
+ if (request.memoryStart) {
62
+ try {
63
+ memoryDelta = calculateMemoryDelta(request.memoryStart, memoryEnd);
64
+ }
65
+ catch {
66
+ // Ignore memory calculation errors
67
+ memoryDelta = undefined;
68
+ }
69
+ }
70
+ const completedRequest = {
71
+ ...request,
72
+ endTime,
73
+ duration,
74
+ status: 'success',
75
+ memoryEnd,
76
+ memoryDelta,
77
+ ...responseMetadata,
78
+ };
79
+ this.activeRequests.delete(requestId);
80
+ this.addToCompleted(completedRequest);
81
+ // Log successful request completion
82
+ logger.info('Request completed successfully', {
83
+ requestId: completedRequest.id,
84
+ requestType: completedRequest.type,
85
+ method: completedRequest.method,
86
+ endpoint: completedRequest.url || completedRequest.endpoint,
87
+ duration: `${duration}ms`,
88
+ statusCode: completedRequest.statusCode,
89
+ memoryDelta: memoryDelta
90
+ ? {
91
+ heapUsed: formatBytes(memoryDelta.heapUsedDelta || 0),
92
+ heapTotal: formatBytes(memoryDelta.heapTotalDelta || 0),
93
+ external: formatBytes(memoryDelta.externalDelta || 0),
94
+ rss: formatBytes(memoryDelta.rssDelta || 0),
95
+ }
96
+ : undefined,
97
+ correlationId: completedRequest.correlationId,
98
+ source: 'request-tracker',
99
+ });
100
+ return completedRequest;
101
+ }
102
+ /**
103
+ * Mark a request as failed
104
+ */
105
+ failRequest(requestId, error, errorMetadata) {
106
+ const request = this.activeRequests.get(requestId);
107
+ if (!request) {
108
+ logger.warn('Attempted to fail unknown request', {
109
+ requestId,
110
+ source: 'request-tracker',
111
+ });
112
+ return null;
113
+ }
114
+ const endTime = Date.now();
115
+ const memoryEnd = process.memoryUsage();
116
+ const duration = endTime - request.startTime;
117
+ let memoryDelta;
118
+ if (request.memoryStart) {
119
+ try {
120
+ memoryDelta = calculateMemoryDelta(request.memoryStart, memoryEnd);
121
+ }
122
+ catch {
123
+ // Ignore memory calculation errors
124
+ memoryDelta = undefined;
125
+ }
126
+ }
127
+ const errorMessage = error instanceof Error ? error.message : error;
128
+ const errorType = error instanceof Error
129
+ ? error.constructor.name
130
+ : errorMetadata?.errorType || 'Unknown';
131
+ const completedRequest = {
132
+ ...request,
133
+ endTime,
134
+ duration,
135
+ status: 'error',
136
+ memoryEnd,
137
+ memoryDelta,
138
+ errorType,
139
+ errorMessage,
140
+ ...errorMetadata,
141
+ };
142
+ this.activeRequests.delete(requestId);
143
+ this.addToCompleted(completedRequest);
144
+ // Log request failure
145
+ logger.error('Request failed', {
146
+ requestId: completedRequest.id,
147
+ requestType: completedRequest.type,
148
+ method: completedRequest.method,
149
+ endpoint: completedRequest.url || completedRequest.endpoint,
150
+ duration: `${duration}ms`,
151
+ errorType,
152
+ errorMessage,
153
+ statusCode: completedRequest.statusCode,
154
+ memoryDelta: memoryDelta
155
+ ? {
156
+ heapUsed: formatBytes(memoryDelta.heapUsedDelta || 0),
157
+ heapTotal: formatBytes(memoryDelta.heapTotalDelta || 0),
158
+ external: formatBytes(memoryDelta.externalDelta || 0),
159
+ rss: formatBytes(memoryDelta.rssDelta || 0),
160
+ }
161
+ : undefined,
162
+ correlationId: completedRequest.correlationId,
163
+ source: 'request-tracker',
164
+ });
165
+ return completedRequest;
166
+ }
167
+ /**
168
+ * Mark a request as timed out
169
+ */
170
+ timeoutRequest(requestId, timeoutMs) {
171
+ const request = this.activeRequests.get(requestId);
172
+ if (!request) {
173
+ logger.warn('Attempted to timeout unknown request', {
174
+ requestId,
175
+ source: 'request-tracker',
176
+ });
177
+ return null;
178
+ }
179
+ const endTime = Date.now();
180
+ const memoryEnd = process.memoryUsage();
181
+ const duration = endTime - request.startTime;
182
+ let memoryDelta;
183
+ if (request.memoryStart) {
184
+ try {
185
+ memoryDelta = calculateMemoryDelta(request.memoryStart, memoryEnd);
186
+ }
187
+ catch {
188
+ // Ignore memory calculation errors
189
+ memoryDelta = undefined;
190
+ }
191
+ }
192
+ const completedRequest = {
193
+ ...request,
194
+ endTime,
195
+ duration,
196
+ status: 'timeout',
197
+ memoryEnd,
198
+ memoryDelta,
199
+ errorMessage: `Request timed out after ${timeoutMs}ms (actual duration: ${duration}ms)`,
200
+ };
201
+ this.activeRequests.delete(requestId);
202
+ this.addToCompleted(completedRequest);
203
+ // Log request timeout
204
+ logger.warn('Request timed out', {
205
+ requestId: completedRequest.id,
206
+ requestType: completedRequest.type,
207
+ method: completedRequest.method,
208
+ endpoint: completedRequest.url || completedRequest.endpoint,
209
+ duration: `${duration}ms`,
210
+ timeoutMs: `${timeoutMs}ms`,
211
+ memoryDelta: memoryDelta
212
+ ? {
213
+ heapUsed: formatBytes(memoryDelta.heapUsedDelta || 0),
214
+ heapTotal: formatBytes(memoryDelta.heapTotalDelta || 0),
215
+ external: formatBytes(memoryDelta.externalDelta || 0),
216
+ rss: formatBytes(memoryDelta.rssDelta || 0),
217
+ }
218
+ : undefined,
219
+ correlationId: completedRequest.correlationId,
220
+ source: 'request-tracker',
221
+ });
222
+ return completedRequest;
223
+ }
224
+ /**
225
+ * Cancel a request
226
+ */
227
+ cancelRequest(requestId, reason) {
228
+ const request = this.activeRequests.get(requestId);
229
+ if (!request) {
230
+ logger.warn('Attempted to cancel unknown request', {
231
+ requestId,
232
+ source: 'request-tracker',
233
+ });
234
+ return null;
235
+ }
236
+ const endTime = Date.now();
237
+ const memoryEnd = process.memoryUsage();
238
+ const duration = endTime - request.startTime;
239
+ let memoryDelta;
240
+ if (request.memoryStart) {
241
+ try {
242
+ memoryDelta = calculateMemoryDelta(request.memoryStart, memoryEnd);
243
+ }
244
+ catch {
245
+ // Ignore memory calculation errors
246
+ memoryDelta = undefined;
247
+ }
248
+ }
249
+ const completedRequest = {
250
+ ...request,
251
+ endTime,
252
+ duration,
253
+ status: 'cancelled',
254
+ memoryEnd,
255
+ memoryDelta,
256
+ errorMessage: reason || 'Request was cancelled',
257
+ };
258
+ this.activeRequests.delete(requestId);
259
+ this.addToCompleted(completedRequest);
260
+ // Log request cancellation
261
+ logger.info('Request cancelled', {
262
+ requestId: completedRequest.id,
263
+ requestType: completedRequest.type,
264
+ method: completedRequest.method,
265
+ endpoint: completedRequest.url || completedRequest.endpoint,
266
+ duration: `${duration}ms`,
267
+ reason,
268
+ memoryDelta: memoryDelta
269
+ ? {
270
+ heapUsed: formatBytes(memoryDelta.heapUsedDelta || 0),
271
+ heapTotal: formatBytes(memoryDelta.heapTotalDelta || 0),
272
+ external: formatBytes(memoryDelta.externalDelta || 0),
273
+ rss: formatBytes(memoryDelta.rssDelta || 0),
274
+ }
275
+ : undefined,
276
+ correlationId: completedRequest.correlationId,
277
+ source: 'request-tracker',
278
+ });
279
+ return completedRequest;
280
+ }
281
+ /**
282
+ * Get request statistics
283
+ */
284
+ getStats() {
285
+ const now = Date.now();
286
+ const oneHourAgo = now - 60 * 60 * 1000;
287
+ const oneDayAgo = now - 24 * 60 * 60 * 1000;
288
+ const requestsInLastHour = this.completedRequests.filter(r => r.endTime !== undefined && r.endTime > oneHourAgo).length;
289
+ const requestsInLastDay = this.completedRequests.filter(r => r.endTime !== undefined && r.endTime > oneDayAgo).length;
290
+ const requestsByType = {};
291
+ const requestsByStatus = {};
292
+ const endpointStats = {};
293
+ let totalDuration = 0;
294
+ let minDuration = Infinity;
295
+ let maxDuration = 0;
296
+ const memoryDeltaSum = { heapUsed: 0, heapTotal: 0, external: 0, rss: 0 };
297
+ let memoryDeltaCount = 0;
298
+ for (const request of this.completedRequests) {
299
+ // Count by type
300
+ requestsByType[request.type] = (requestsByType[request.type] || 0) + 1;
301
+ // Count by status
302
+ const status = request.status || 'unknown';
303
+ requestsByStatus[status] = (requestsByStatus[status] || 0) + 1;
304
+ // Duration statistics
305
+ if (request.duration) {
306
+ totalDuration += request.duration;
307
+ minDuration = Math.min(minDuration, request.duration);
308
+ maxDuration = Math.max(maxDuration, request.duration);
309
+ }
310
+ // Memory statistics
311
+ if (request.memoryDelta) {
312
+ memoryDeltaSum.heapUsed += request.memoryDelta.heapUsedDelta;
313
+ memoryDeltaSum.heapTotal += request.memoryDelta.heapTotalDelta;
314
+ memoryDeltaSum.external += request.memoryDelta.externalDelta;
315
+ memoryDeltaSum.rss += request.memoryDelta.rssDelta;
316
+ memoryDeltaCount++;
317
+ }
318
+ // Endpoint statistics
319
+ const endpoint = request.url || request.endpoint || request.toolName || 'unknown';
320
+ if (!endpointStats[endpoint]) {
321
+ endpointStats[endpoint] = { count: 0, totalDuration: 0, errors: 0 };
322
+ }
323
+ endpointStats[endpoint].count++;
324
+ if (request.duration) {
325
+ endpointStats[endpoint].totalDuration += request.duration;
326
+ }
327
+ if (request.status === 'error') {
328
+ endpointStats[endpoint].errors++;
329
+ }
330
+ }
331
+ // Calculate average duration and memory delta
332
+ const averageDuration = this.completedRequests.length > 0
333
+ ? totalDuration / this.completedRequests.length
334
+ : 0;
335
+ const averageMemoryDelta = memoryDeltaCount > 0
336
+ ? {
337
+ heapUsed: memoryDeltaSum.heapUsed / memoryDeltaCount,
338
+ heapTotal: memoryDeltaSum.heapTotal / memoryDeltaCount,
339
+ external: memoryDeltaSum.external / memoryDeltaCount,
340
+ rss: memoryDeltaSum.rss / memoryDeltaCount,
341
+ }
342
+ : { heapUsed: 0, heapTotal: 0, external: 0, rss: 0 };
343
+ // Find busiest, slowest, and most error-prone endpoints
344
+ let busiestEndpoint;
345
+ let slowestEndpoint;
346
+ let mostErrorProneEndpoint;
347
+ let maxRequests = 0;
348
+ let maxAvgDuration = 0;
349
+ let maxErrorRate = 0;
350
+ for (const [endpoint, stats] of Object.entries(endpointStats)) {
351
+ if (stats.count > maxRequests) {
352
+ maxRequests = stats.count;
353
+ busiestEndpoint = endpoint;
354
+ }
355
+ const avgDuration = stats.count > 0 ? stats.totalDuration / stats.count : 0;
356
+ if (avgDuration > maxAvgDuration) {
357
+ maxAvgDuration = avgDuration;
358
+ slowestEndpoint = endpoint;
359
+ }
360
+ const errorRate = stats.count > 0 ? stats.errors / stats.count : 0;
361
+ if (errorRate > maxErrorRate) {
362
+ maxErrorRate = errorRate;
363
+ mostErrorProneEndpoint = endpoint;
364
+ }
365
+ }
366
+ const totalRequests = this.completedRequests.length;
367
+ const errorRate = requestsByStatus.error
368
+ ? requestsByStatus.error / totalRequests
369
+ : 0;
370
+ const timeoutRate = requestsByStatus.timeout
371
+ ? requestsByStatus.timeout / totalRequests
372
+ : 0;
373
+ return {
374
+ totalRequests,
375
+ requestsByType,
376
+ requestsByStatus,
377
+ averageDuration,
378
+ minDuration: minDuration === Infinity ? 0 : minDuration,
379
+ maxDuration,
380
+ totalDuration,
381
+ averageMemoryDelta,
382
+ errorRate,
383
+ timeoutRate,
384
+ requestsInLastHour,
385
+ requestsInLastDay,
386
+ busiestHour: new Date().getHours(),
387
+ busiestEndpoint,
388
+ slowestEndpoint,
389
+ mostErrorProneEndpoint,
390
+ timestamp: new Date().toISOString(),
391
+ };
392
+ }
393
+ /**
394
+ * Get active requests
395
+ */
396
+ getActiveRequests() {
397
+ return Array.from(this.activeRequests.values());
398
+ }
399
+ /**
400
+ * Get recently completed requests
401
+ */
402
+ getRecentRequests(limit = 50) {
403
+ return this.completedRequests
404
+ .sort((a, b) => (b.endTime || 0) - (a.endTime || 0))
405
+ .slice(0, limit);
406
+ }
407
+ /**
408
+ * Clear all tracking data
409
+ */
410
+ clear() {
411
+ this.activeRequests.clear();
412
+ this.completedRequests = [];
413
+ }
414
+ generateRequestId() {
415
+ return `req_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
416
+ }
417
+ addToCompleted(request) {
418
+ this.completedRequests.push(request);
419
+ // Keep only the last N requests
420
+ if (this.completedRequests.length > this.maxCompletedRequests) {
421
+ this.completedRequests = this.completedRequests.slice(-this.maxCompletedRequests);
422
+ }
423
+ }
424
+ }
425
+ /**
426
+ * Global request tracker instance
427
+ */
428
+ export const globalRequestTracker = new RequestTracker();
429
+ /**
430
+ * Decorator to automatically track function calls as requests
431
+ */
432
+ export function trackRequest(fn, options) {
433
+ return trackPerformance(async (...args) => {
434
+ const requestId = globalRequestTracker.startRequest({
435
+ type: options.type,
436
+ method: options.method,
437
+ endpoint: options.endpoint,
438
+ provider: options.provider,
439
+ model: options.model,
440
+ tags: options.tags,
441
+ });
442
+ try {
443
+ const result = await fn(...args);
444
+ globalRequestTracker.completeRequest(requestId, {
445
+ customData: {
446
+ arguments: options.trackRequestSize
447
+ ? {
448
+ count: args.length,
449
+ types: args.map(arg => typeof arg),
450
+ size: JSON.stringify(args).length,
451
+ }
452
+ : undefined,
453
+ },
454
+ });
455
+ return result;
456
+ }
457
+ catch (error) {
458
+ globalRequestTracker.failRequest(requestId, error, {
459
+ errorType: error instanceof Error ? error.constructor.name : 'Unknown',
460
+ });
461
+ throw error;
462
+ }
463
+ }, `${options.type}-request-${options.endpoint || 'unknown'}`, {
464
+ thresholds: options.thresholds,
465
+ trackMemory: options.trackMemory !== false,
466
+ trackArgs: false,
467
+ });
468
+ }
469
+ /**
470
+ * HTTP request tracking utilities
471
+ */
472
+ export const httpTracker = {
473
+ /**
474
+ * Track an HTTP GET request
475
+ */
476
+ get: (url, fn, options) => trackRequest(fn, {
477
+ type: 'http',
478
+ method: 'GET',
479
+ endpoint: url,
480
+ ...options,
481
+ }),
482
+ /**
483
+ * Track an HTTP POST request
484
+ */
485
+ post: (url, fn, options) => trackRequest(fn, {
486
+ type: 'http',
487
+ method: 'POST',
488
+ endpoint: url,
489
+ ...options,
490
+ }),
491
+ /**
492
+ * Track an HTTP PUT request
493
+ */
494
+ put: (url, fn, options) => trackRequest(fn, {
495
+ type: 'http',
496
+ method: 'PUT',
497
+ endpoint: url,
498
+ ...options,
499
+ }),
500
+ /**
501
+ * Track an HTTP DELETE request
502
+ */
503
+ delete: (url, fn, options) => trackRequest(fn, {
504
+ type: 'http',
505
+ method: 'DELETE',
506
+ endpoint: url,
507
+ ...options,
508
+ }),
509
+ };
510
+ /**
511
+ * AI request tracking utilities
512
+ */
513
+ export const aiTracker = {
514
+ /**
515
+ * Track an AI chat request
516
+ */
517
+ chat: (provider, model, fn, options) => trackRequest(fn, {
518
+ type: 'ai',
519
+ provider,
520
+ model,
521
+ endpoint: 'chat',
522
+ ...options,
523
+ }),
524
+ /**
525
+ * Track an AI completion request
526
+ */
527
+ completion: (provider, model, fn, options) => trackRequest(fn, {
528
+ type: 'ai',
529
+ provider,
530
+ model,
531
+ endpoint: 'completion',
532
+ ...options,
533
+ }),
534
+ /**
535
+ * Track an AI embedding request
536
+ */
537
+ embedding: (provider, model, fn, options) => trackRequest(fn, {
538
+ type: 'ai',
539
+ provider,
540
+ model,
541
+ endpoint: 'embedding',
542
+ ...options,
543
+ }),
544
+ };
545
+ /**
546
+ * MCP request tracking utilities
547
+ */
548
+ export const mcpTracker = {
549
+ /**
550
+ * Track an MCP tool execution
551
+ */
552
+ tool: (_serverName, toolName, fn, options) => trackRequest(fn, {
553
+ type: 'mcp',
554
+ toolName,
555
+ endpoint: `tool:${toolName}`,
556
+ ...options,
557
+ }),
558
+ /**
559
+ * Track an MCP server connection
560
+ */
561
+ connect: (_serverName, fn, options) => trackRequest(fn, {
562
+ type: 'mcp',
563
+ endpoint: 'connect',
564
+ ...options,
565
+ }),
566
+ };
567
+ // RequestTracker is only used internally
568
+ // export default RequestTracker;
569
+ //# sourceMappingURL=request-tracker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-tracker.js","sourceRoot":"","sources":["../../../source/utils/logging/request-tracker.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=request-tracker.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-tracker.spec.d.ts","sourceRoot":"","sources":["../../../source/utils/logging/request-tracker.spec.ts"],"names":[],"mappings":""}