@daniel.stefan/metalink 1.3.1

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 (333) hide show
  1. package/README.md +160 -0
  2. package/package.json +96 -0
  3. package/packages/cli/dist/bin/cli.d.ts +3 -0
  4. package/packages/cli/dist/bin/cli.d.ts.map +1 -0
  5. package/packages/cli/dist/bin/cli.js +4 -0
  6. package/packages/cli/dist/bin/cli.js.map +1 -0
  7. package/packages/cli/dist/commands/config/init.d.ts +9 -0
  8. package/packages/cli/dist/commands/config/init.d.ts.map +1 -0
  9. package/packages/cli/dist/commands/config/init.js +38 -0
  10. package/packages/cli/dist/commands/config/init.js.map +1 -0
  11. package/packages/cli/dist/commands/config/validate.d.ts +9 -0
  12. package/packages/cli/dist/commands/config/validate.d.ts.map +1 -0
  13. package/packages/cli/dist/commands/config/validate.js +34 -0
  14. package/packages/cli/dist/commands/config/validate.js.map +1 -0
  15. package/packages/cli/dist/commands/daemon/restart.d.ts +15 -0
  16. package/packages/cli/dist/commands/daemon/restart.d.ts.map +1 -0
  17. package/packages/cli/dist/commands/daemon/restart.js +184 -0
  18. package/packages/cli/dist/commands/daemon/restart.js.map +1 -0
  19. package/packages/cli/dist/commands/daemon/start.d.ts +7 -0
  20. package/packages/cli/dist/commands/daemon/start.d.ts.map +1 -0
  21. package/packages/cli/dist/commands/daemon/start.js +85 -0
  22. package/packages/cli/dist/commands/daemon/start.js.map +1 -0
  23. package/packages/cli/dist/commands/daemon/status.d.ts +7 -0
  24. package/packages/cli/dist/commands/daemon/status.d.ts.map +1 -0
  25. package/packages/cli/dist/commands/daemon/status.js +69 -0
  26. package/packages/cli/dist/commands/daemon/status.js.map +1 -0
  27. package/packages/cli/dist/commands/daemon/stop.d.ts +8 -0
  28. package/packages/cli/dist/commands/daemon/stop.d.ts.map +1 -0
  29. package/packages/cli/dist/commands/daemon/stop.js +77 -0
  30. package/packages/cli/dist/commands/daemon/stop.js.map +1 -0
  31. package/packages/cli/dist/commands/import/mcpm.d.ts +10 -0
  32. package/packages/cli/dist/commands/import/mcpm.d.ts.map +1 -0
  33. package/packages/cli/dist/commands/import/mcpm.js +58 -0
  34. package/packages/cli/dist/commands/import/mcpm.js.map +1 -0
  35. package/packages/cli/dist/commands/safety/add-risky-pattern.d.ts +16 -0
  36. package/packages/cli/dist/commands/safety/add-risky-pattern.d.ts.map +1 -0
  37. package/packages/cli/dist/commands/safety/add-risky-pattern.js +72 -0
  38. package/packages/cli/dist/commands/safety/add-risky-pattern.js.map +1 -0
  39. package/packages/cli/dist/commands/safety/add-risky.d.ts +12 -0
  40. package/packages/cli/dist/commands/safety/add-risky.d.ts.map +1 -0
  41. package/packages/cli/dist/commands/safety/add-risky.js +52 -0
  42. package/packages/cli/dist/commands/safety/add-risky.js.map +1 -0
  43. package/packages/cli/dist/commands/safety/add-safe-pattern.d.ts +16 -0
  44. package/packages/cli/dist/commands/safety/add-safe-pattern.d.ts.map +1 -0
  45. package/packages/cli/dist/commands/safety/add-safe-pattern.js +72 -0
  46. package/packages/cli/dist/commands/safety/add-safe-pattern.js.map +1 -0
  47. package/packages/cli/dist/commands/safety/add-safe.d.ts +12 -0
  48. package/packages/cli/dist/commands/safety/add-safe.d.ts.map +1 -0
  49. package/packages/cli/dist/commands/safety/add-safe.js +52 -0
  50. package/packages/cli/dist/commands/safety/add-safe.js.map +1 -0
  51. package/packages/cli/dist/commands/safety/check.d.ts +9 -0
  52. package/packages/cli/dist/commands/safety/check.d.ts.map +1 -0
  53. package/packages/cli/dist/commands/safety/check.js +36 -0
  54. package/packages/cli/dist/commands/safety/check.js.map +1 -0
  55. package/packages/cli/dist/commands/safety/export.d.ts +10 -0
  56. package/packages/cli/dist/commands/safety/export.d.ts.map +1 -0
  57. package/packages/cli/dist/commands/safety/export.js +48 -0
  58. package/packages/cli/dist/commands/safety/export.js.map +1 -0
  59. package/packages/cli/dist/commands/safety/import.d.ts +12 -0
  60. package/packages/cli/dist/commands/safety/import.d.ts.map +1 -0
  61. package/packages/cli/dist/commands/safety/import.js +78 -0
  62. package/packages/cli/dist/commands/safety/import.js.map +1 -0
  63. package/packages/cli/dist/commands/safety/index.d.ts +8 -0
  64. package/packages/cli/dist/commands/safety/index.d.ts.map +1 -0
  65. package/packages/cli/dist/commands/safety/index.js +46 -0
  66. package/packages/cli/dist/commands/safety/index.js.map +1 -0
  67. package/packages/cli/dist/commands/safety/list.d.ts +6 -0
  68. package/packages/cli/dist/commands/safety/list.d.ts.map +1 -0
  69. package/packages/cli/dist/commands/safety/list.js +77 -0
  70. package/packages/cli/dist/commands/safety/list.js.map +1 -0
  71. package/packages/cli/dist/commands/safety/remove.d.ts +9 -0
  72. package/packages/cli/dist/commands/safety/remove.d.ts.map +1 -0
  73. package/packages/cli/dist/commands/safety/remove.js +46 -0
  74. package/packages/cli/dist/commands/safety/remove.js.map +1 -0
  75. package/packages/cli/dist/commands/safety/reset.d.ts +9 -0
  76. package/packages/cli/dist/commands/safety/reset.d.ts.map +1 -0
  77. package/packages/cli/dist/commands/safety/reset.js +46 -0
  78. package/packages/cli/dist/commands/safety/reset.js.map +1 -0
  79. package/packages/cli/dist/commands/safety/validate.d.ts +9 -0
  80. package/packages/cli/dist/commands/safety/validate.d.ts.map +1 -0
  81. package/packages/cli/dist/commands/safety/validate.js +51 -0
  82. package/packages/cli/dist/commands/safety/validate.js.map +1 -0
  83. package/packages/cli/dist/commands/secret/get.d.ts +9 -0
  84. package/packages/cli/dist/commands/secret/get.d.ts.map +1 -0
  85. package/packages/cli/dist/commands/secret/get.js +26 -0
  86. package/packages/cli/dist/commands/secret/get.js.map +1 -0
  87. package/packages/cli/dist/commands/secret/set.d.ts +10 -0
  88. package/packages/cli/dist/commands/secret/set.d.ts.map +1 -0
  89. package/packages/cli/dist/commands/secret/set.js +22 -0
  90. package/packages/cli/dist/commands/secret/set.js.map +1 -0
  91. package/packages/cli/dist/commands/server/__tests__/server-management-e2e.test.d.ts +2 -0
  92. package/packages/cli/dist/commands/server/__tests__/server-management-e2e.test.d.ts.map +1 -0
  93. package/packages/cli/dist/commands/server/__tests__/server-management-e2e.test.js +234 -0
  94. package/packages/cli/dist/commands/server/__tests__/server-management-e2e.test.js.map +1 -0
  95. package/packages/cli/dist/commands/server/add.d.ts +14 -0
  96. package/packages/cli/dist/commands/server/add.d.ts.map +1 -0
  97. package/packages/cli/dist/commands/server/add.js +86 -0
  98. package/packages/cli/dist/commands/server/add.js.map +1 -0
  99. package/packages/cli/dist/commands/server/available.d.ts +10 -0
  100. package/packages/cli/dist/commands/server/available.d.ts.map +1 -0
  101. package/packages/cli/dist/commands/server/available.js +62 -0
  102. package/packages/cli/dist/commands/server/available.js.map +1 -0
  103. package/packages/cli/dist/commands/server/debug.d.ts +18 -0
  104. package/packages/cli/dist/commands/server/debug.d.ts.map +1 -0
  105. package/packages/cli/dist/commands/server/debug.js +165 -0
  106. package/packages/cli/dist/commands/server/debug.js.map +1 -0
  107. package/packages/cli/dist/commands/server/info.d.ts +13 -0
  108. package/packages/cli/dist/commands/server/info.d.ts.map +1 -0
  109. package/packages/cli/dist/commands/server/info.js +62 -0
  110. package/packages/cli/dist/commands/server/info.js.map +1 -0
  111. package/packages/cli/dist/commands/server/list.d.ts +10 -0
  112. package/packages/cli/dist/commands/server/list.d.ts.map +1 -0
  113. package/packages/cli/dist/commands/server/list.js +105 -0
  114. package/packages/cli/dist/commands/server/list.js.map +1 -0
  115. package/packages/cli/dist/commands/server/refresh-tools.d.ts +13 -0
  116. package/packages/cli/dist/commands/server/refresh-tools.d.ts.map +1 -0
  117. package/packages/cli/dist/commands/server/refresh-tools.js +46 -0
  118. package/packages/cli/dist/commands/server/refresh-tools.js.map +1 -0
  119. package/packages/cli/dist/commands/server/remove.d.ts +12 -0
  120. package/packages/cli/dist/commands/server/remove.d.ts.map +1 -0
  121. package/packages/cli/dist/commands/server/remove.js +39 -0
  122. package/packages/cli/dist/commands/server/remove.js.map +1 -0
  123. package/packages/cli/dist/commands/server/restart.d.ts +9 -0
  124. package/packages/cli/dist/commands/server/restart.d.ts.map +1 -0
  125. package/packages/cli/dist/commands/server/restart.js +30 -0
  126. package/packages/cli/dist/commands/server/restart.js.map +1 -0
  127. package/packages/cli/dist/commands/server/start.d.ts +9 -0
  128. package/packages/cli/dist/commands/server/start.d.ts.map +1 -0
  129. package/packages/cli/dist/commands/server/start.js +37 -0
  130. package/packages/cli/dist/commands/server/start.js.map +1 -0
  131. package/packages/cli/dist/commands/server/status.d.ts +9 -0
  132. package/packages/cli/dist/commands/server/status.d.ts.map +1 -0
  133. package/packages/cli/dist/commands/server/status.js +30 -0
  134. package/packages/cli/dist/commands/server/status.js.map +1 -0
  135. package/packages/cli/dist/commands/server/stop.d.ts +9 -0
  136. package/packages/cli/dist/commands/server/stop.d.ts.map +1 -0
  137. package/packages/cli/dist/commands/server/stop.js +31 -0
  138. package/packages/cli/dist/commands/server/stop.js.map +1 -0
  139. package/packages/cli/dist/commands/server/validate.d.ts +15 -0
  140. package/packages/cli/dist/commands/server/validate.d.ts.map +1 -0
  141. package/packages/cli/dist/commands/server/validate.js +87 -0
  142. package/packages/cli/dist/commands/server/validate.js.map +1 -0
  143. package/packages/cli/dist/commands/stdio.d.ts +36 -0
  144. package/packages/cli/dist/commands/stdio.d.ts.map +1 -0
  145. package/packages/cli/dist/commands/stdio.js +85 -0
  146. package/packages/cli/dist/commands/stdio.js.map +1 -0
  147. package/packages/cli/dist/commands/tool/execute-confirm.d.ts +12 -0
  148. package/packages/cli/dist/commands/tool/execute-confirm.d.ts.map +1 -0
  149. package/packages/cli/dist/commands/tool/execute-confirm.js +98 -0
  150. package/packages/cli/dist/commands/tool/execute-confirm.js.map +1 -0
  151. package/packages/cli/dist/commands/tool/execute.d.ts +12 -0
  152. package/packages/cli/dist/commands/tool/execute.d.ts.map +1 -0
  153. package/packages/cli/dist/commands/tool/execute.js +55 -0
  154. package/packages/cli/dist/commands/tool/execute.js.map +1 -0
  155. package/packages/cli/dist/commands/tool/list.d.ts +13 -0
  156. package/packages/cli/dist/commands/tool/list.d.ts.map +1 -0
  157. package/packages/cli/dist/commands/tool/list.js +91 -0
  158. package/packages/cli/dist/commands/tool/list.js.map +1 -0
  159. package/packages/cli/dist/commands/tool/search.d.ts +12 -0
  160. package/packages/cli/dist/commands/tool/search.d.ts.map +1 -0
  161. package/packages/cli/dist/commands/tool/search.js +87 -0
  162. package/packages/cli/dist/commands/tool/search.js.map +1 -0
  163. package/packages/cli/dist/index.d.ts +2 -0
  164. package/packages/cli/dist/index.d.ts.map +1 -0
  165. package/packages/cli/dist/index.js +9 -0
  166. package/packages/cli/dist/index.js.map +1 -0
  167. package/packages/cli/dist/utils/daemon-checker.d.ts +18 -0
  168. package/packages/cli/dist/utils/daemon-checker.d.ts.map +1 -0
  169. package/packages/cli/dist/utils/daemon-checker.js +69 -0
  170. package/packages/cli/dist/utils/daemon-checker.js.map +1 -0
  171. package/packages/cli/dist/utils/daemon-endpoint.d.ts +7 -0
  172. package/packages/cli/dist/utils/daemon-endpoint.d.ts.map +1 -0
  173. package/packages/cli/dist/utils/daemon-endpoint.js +13 -0
  174. package/packages/cli/dist/utils/daemon-endpoint.js.map +1 -0
  175. package/packages/cli/dist/utils/get-configured-port.d.ts +43 -0
  176. package/packages/cli/dist/utils/get-configured-port.d.ts.map +1 -0
  177. package/packages/cli/dist/utils/get-configured-port.js +141 -0
  178. package/packages/cli/dist/utils/get-configured-port.js.map +1 -0
  179. package/packages/cli/dist/utils/stdio-bridge.d.ts +48 -0
  180. package/packages/cli/dist/utils/stdio-bridge.d.ts.map +1 -0
  181. package/packages/cli/dist/utils/stdio-bridge.js +181 -0
  182. package/packages/cli/dist/utils/stdio-bridge.js.map +1 -0
  183. package/packages/cli/package.json +48 -0
  184. package/packages/core/dist/config/defaults.d.ts +36 -0
  185. package/packages/core/dist/config/defaults.d.ts.map +1 -0
  186. package/packages/core/dist/config/defaults.js +324 -0
  187. package/packages/core/dist/config/defaults.js.map +1 -0
  188. package/packages/core/dist/config/index.d.ts +9 -0
  189. package/packages/core/dist/config/index.d.ts.map +1 -0
  190. package/packages/core/dist/config/index.js +14 -0
  191. package/packages/core/dist/config/index.js.map +1 -0
  192. package/packages/core/dist/config/loader.d.ts +269 -0
  193. package/packages/core/dist/config/loader.d.ts.map +1 -0
  194. package/packages/core/dist/config/loader.js +777 -0
  195. package/packages/core/dist/config/loader.js.map +1 -0
  196. package/packages/core/dist/config/registry.d.ts +212 -0
  197. package/packages/core/dist/config/registry.d.ts.map +1 -0
  198. package/packages/core/dist/config/registry.js +754 -0
  199. package/packages/core/dist/config/registry.js.map +1 -0
  200. package/packages/core/dist/config/schema.d.ts +4352 -0
  201. package/packages/core/dist/config/schema.d.ts.map +1 -0
  202. package/packages/core/dist/config/schema.js +267 -0
  203. package/packages/core/dist/config/schema.js.map +1 -0
  204. package/packages/core/dist/daemon.d.ts +7 -0
  205. package/packages/core/dist/daemon.d.ts.map +1 -0
  206. package/packages/core/dist/daemon.js +116 -0
  207. package/packages/core/dist/daemon.js.map +1 -0
  208. package/packages/core/dist/http-client-retry.d.ts +67 -0
  209. package/packages/core/dist/http-client-retry.d.ts.map +1 -0
  210. package/packages/core/dist/http-client-retry.js +133 -0
  211. package/packages/core/dist/http-client-retry.js.map +1 -0
  212. package/packages/core/dist/http-client-updated.d.ts +147 -0
  213. package/packages/core/dist/http-client-updated.d.ts.map +1 -0
  214. package/packages/core/dist/http-client-updated.js +452 -0
  215. package/packages/core/dist/http-client-updated.js.map +1 -0
  216. package/packages/core/dist/http-client.d.ts +207 -0
  217. package/packages/core/dist/http-client.d.ts.map +1 -0
  218. package/packages/core/dist/http-client.js +704 -0
  219. package/packages/core/dist/http-client.js.map +1 -0
  220. package/packages/core/dist/index.d.ts +13 -0
  221. package/packages/core/dist/index.d.ts.map +1 -0
  222. package/packages/core/dist/index.js +23 -0
  223. package/packages/core/dist/index.js.map +1 -0
  224. package/packages/core/dist/logging/index.d.ts +46 -0
  225. package/packages/core/dist/logging/index.d.ts.map +1 -0
  226. package/packages/core/dist/logging/index.js +74 -0
  227. package/packages/core/dist/logging/index.js.map +1 -0
  228. package/packages/core/dist/metrics/index.d.ts +339 -0
  229. package/packages/core/dist/metrics/index.d.ts.map +1 -0
  230. package/packages/core/dist/metrics/index.js +792 -0
  231. package/packages/core/dist/metrics/index.js.map +1 -0
  232. package/packages/core/dist/plugins/index.d.ts +49 -0
  233. package/packages/core/dist/plugins/index.d.ts.map +1 -0
  234. package/packages/core/dist/plugins/index.js +82 -0
  235. package/packages/core/dist/plugins/index.js.map +1 -0
  236. package/packages/core/dist/secrets/index.d.ts +6 -0
  237. package/packages/core/dist/secrets/index.d.ts.map +1 -0
  238. package/packages/core/dist/secrets/index.js +5 -0
  239. package/packages/core/dist/secrets/index.js.map +1 -0
  240. package/packages/core/dist/secrets/keyring.d.ts +54 -0
  241. package/packages/core/dist/secrets/keyring.d.ts.map +1 -0
  242. package/packages/core/dist/secrets/keyring.js +141 -0
  243. package/packages/core/dist/secrets/keyring.js.map +1 -0
  244. package/packages/core/dist/server/batch-executor.d.ts +83 -0
  245. package/packages/core/dist/server/batch-executor.d.ts.map +1 -0
  246. package/packages/core/dist/server/batch-executor.js +291 -0
  247. package/packages/core/dist/server/batch-executor.js.map +1 -0
  248. package/packages/core/dist/server/circuit-breaker.d.ts +215 -0
  249. package/packages/core/dist/server/circuit-breaker.d.ts.map +1 -0
  250. package/packages/core/dist/server/circuit-breaker.js +330 -0
  251. package/packages/core/dist/server/circuit-breaker.js.map +1 -0
  252. package/packages/core/dist/server/client-detection.d.ts +40 -0
  253. package/packages/core/dist/server/client-detection.d.ts.map +1 -0
  254. package/packages/core/dist/server/client-detection.js +242 -0
  255. package/packages/core/dist/server/client-detection.js.map +1 -0
  256. package/packages/core/dist/server/client-profiles.d.ts +102 -0
  257. package/packages/core/dist/server/client-profiles.d.ts.map +1 -0
  258. package/packages/core/dist/server/client-profiles.js +254 -0
  259. package/packages/core/dist/server/client-profiles.js.map +1 -0
  260. package/packages/core/dist/server/http.d.ts +386 -0
  261. package/packages/core/dist/server/http.d.ts.map +1 -0
  262. package/packages/core/dist/server/http.js +4253 -0
  263. package/packages/core/dist/server/http.js.map +1 -0
  264. package/packages/core/dist/server/index.d.ts +7 -0
  265. package/packages/core/dist/server/index.d.ts.map +1 -0
  266. package/packages/core/dist/server/index.js +6 -0
  267. package/packages/core/dist/server/index.js.map +1 -0
  268. package/packages/core/dist/server/manager.d.ts +458 -0
  269. package/packages/core/dist/server/manager.d.ts.map +1 -0
  270. package/packages/core/dist/server/manager.js +3255 -0
  271. package/packages/core/dist/server/manager.js.map +1 -0
  272. package/packages/core/dist/server/managers/HttpConnectionManager.d.ts +69 -0
  273. package/packages/core/dist/server/managers/HttpConnectionManager.d.ts.map +1 -0
  274. package/packages/core/dist/server/managers/HttpConnectionManager.js +214 -0
  275. package/packages/core/dist/server/managers/HttpConnectionManager.js.map +1 -0
  276. package/packages/core/dist/server/managers/ProcessManager.d.ts +128 -0
  277. package/packages/core/dist/server/managers/ProcessManager.d.ts.map +1 -0
  278. package/packages/core/dist/server/managers/ProcessManager.js +443 -0
  279. package/packages/core/dist/server/managers/ProcessManager.js.map +1 -0
  280. package/packages/core/dist/server/managers/SchemaCacheManager.d.ts +152 -0
  281. package/packages/core/dist/server/managers/SchemaCacheManager.d.ts.map +1 -0
  282. package/packages/core/dist/server/managers/SchemaCacheManager.js +426 -0
  283. package/packages/core/dist/server/managers/SchemaCacheManager.js.map +1 -0
  284. package/packages/core/dist/server/managers/index.d.ts +9 -0
  285. package/packages/core/dist/server/managers/index.d.ts.map +1 -0
  286. package/packages/core/dist/server/managers/index.js +9 -0
  287. package/packages/core/dist/server/managers/index.js.map +1 -0
  288. package/packages/core/dist/server/metrics.d.ts +134 -0
  289. package/packages/core/dist/server/metrics.d.ts.map +1 -0
  290. package/packages/core/dist/server/metrics.js +273 -0
  291. package/packages/core/dist/server/metrics.js.map +1 -0
  292. package/packages/core/dist/server/prompts.d.ts +58 -0
  293. package/packages/core/dist/server/prompts.d.ts.map +1 -0
  294. package/packages/core/dist/server/prompts.js +405 -0
  295. package/packages/core/dist/server/prompts.js.map +1 -0
  296. package/packages/core/dist/server/protocol-versions.d.ts +49 -0
  297. package/packages/core/dist/server/protocol-versions.d.ts.map +1 -0
  298. package/packages/core/dist/server/protocol-versions.js +173 -0
  299. package/packages/core/dist/server/protocol-versions.js.map +1 -0
  300. package/packages/core/dist/server/resources.d.ts +64 -0
  301. package/packages/core/dist/server/resources.d.ts.map +1 -0
  302. package/packages/core/dist/server/resources.js +243 -0
  303. package/packages/core/dist/server/resources.js.map +1 -0
  304. package/packages/core/dist/server/schema-store.d.ts +84 -0
  305. package/packages/core/dist/server/schema-store.d.ts.map +1 -0
  306. package/packages/core/dist/server/schema-store.js +234 -0
  307. package/packages/core/dist/server/schema-store.js.map +1 -0
  308. package/packages/core/dist/server/schema-validator.d.ts +51 -0
  309. package/packages/core/dist/server/schema-validator.d.ts.map +1 -0
  310. package/packages/core/dist/server/schema-validator.js +208 -0
  311. package/packages/core/dist/server/schema-validator.js.map +1 -0
  312. package/packages/core/dist/server/token-calculator.d.ts +44 -0
  313. package/packages/core/dist/server/token-calculator.d.ts.map +1 -0
  314. package/packages/core/dist/server/token-calculator.js +53 -0
  315. package/packages/core/dist/server/token-calculator.js.map +1 -0
  316. package/packages/core/dist/server/types.d.ts +45 -0
  317. package/packages/core/dist/server/types.d.ts.map +1 -0
  318. package/packages/core/dist/server/types.js +5 -0
  319. package/packages/core/dist/server/types.js.map +1 -0
  320. package/packages/core/dist/utils/file-lock.d.ts +73 -0
  321. package/packages/core/dist/utils/file-lock.d.ts.map +1 -0
  322. package/packages/core/dist/utils/file-lock.js +235 -0
  323. package/packages/core/dist/utils/file-lock.js.map +1 -0
  324. package/packages/core/package.json +36 -0
  325. package/packages/dashboard/dist/assets/index-B7hvkCMu.css +1 -0
  326. package/packages/dashboard/dist/assets/index-yZhLPpzr.js +1 -0
  327. package/packages/dashboard/dist/index.html +14 -0
  328. package/packages/dashboard/package.json +24 -0
  329. package/packages/shared/dist/version.d.ts +2 -0
  330. package/packages/shared/dist/version.d.ts.map +1 -0
  331. package/packages/shared/dist/version.js +2 -0
  332. package/packages/shared/dist/version.js.map +1 -0
  333. package/packages/shared/package.json +18 -0
@@ -0,0 +1,152 @@
1
+ /**
2
+ * SchemaCacheManager - Manages tool schema caching and persistence
3
+ *
4
+ * Extracted from ServerManager as part of v1.1.67 refactor.
5
+ * Responsibilities:
6
+ * - In-memory schema caching (LRU)
7
+ * - Persistent disk storage via SchemaStore
8
+ * - Background schema refresh
9
+ * - Schema stability metrics (adaptive TTL)
10
+ * - Discovery tracking
11
+ */
12
+ import { EventEmitter } from "events";
13
+ import { ToolInfo } from "../manager.js";
14
+ /**
15
+ * Schema stability metrics for adaptive TTL
16
+ * Tracks how often a server's schema changes to optimize cache behavior
17
+ */
18
+ export interface SchemaStabilityMetrics {
19
+ serverName: string;
20
+ refreshCount: number;
21
+ changeCount: number;
22
+ lastChangeTimestamp: number;
23
+ currentTTL: number;
24
+ stability: "stable" | "normal" | "unstable";
25
+ }
26
+ /**
27
+ * Cached schema entry
28
+ */
29
+ export interface CachedSchema {
30
+ tools: ToolInfo[];
31
+ timestamp: number;
32
+ }
33
+ /**
34
+ * Configuration for SchemaCacheManager
35
+ */
36
+ export interface SchemaCacheConfig {
37
+ cacheTTL?: number;
38
+ maxCacheEntries?: number;
39
+ backgroundRefresh?: boolean;
40
+ backgroundRefreshInterval?: number;
41
+ cacheDir?: string;
42
+ adaptiveTTLEnabled?: boolean;
43
+ }
44
+ export declare class SchemaCacheManager extends EventEmitter {
45
+ private toolSchemaCache;
46
+ private schemaStore;
47
+ private discoveredServers;
48
+ private schemaStabilityMetrics;
49
+ private discoveryTimers;
50
+ private backgroundRefreshInterval;
51
+ private readonly config;
52
+ private readonly ADAPTIVE_TTL_ENABLED;
53
+ private readonly TTL_STABLE;
54
+ private readonly TTL_NORMAL;
55
+ private readonly TTL_UNSTABLE;
56
+ private readonly STABILITY_WINDOW;
57
+ private readonly UNSTABLE_THRESHOLD;
58
+ constructor(config?: SchemaCacheConfig);
59
+ /**
60
+ * Start background schema refresh
61
+ */
62
+ private startBackgroundRefresh;
63
+ /**
64
+ * Stop background refresh
65
+ */
66
+ stopBackgroundRefresh(): void;
67
+ /**
68
+ * Load schemas from disk into memory cache
69
+ */
70
+ loadFromDisk(): Promise<void>;
71
+ /**
72
+ * Get cached tools for a server
73
+ * Returns null if not cached or expired
74
+ */
75
+ getCachedTools(serverName: string): ToolInfo[] | null;
76
+ /**
77
+ * Set/update cached tools for a server
78
+ */
79
+ setCachedTools(serverName: string, tools: ToolInfo[], source?: "discovery" | "fetch" | "refresh"): void;
80
+ /**
81
+ * Invalidate schema cache for a server
82
+ */
83
+ invalidate(serverName: string, clearDisk?: boolean): void;
84
+ /**
85
+ * Force refresh schema (invalidate + re-fetch)
86
+ */
87
+ forceRefresh(serverName: string, fetchFn: () => Promise<ToolInfo[]>): Promise<ToolInfo[]>;
88
+ /**
89
+ * Check if server is in discovered set
90
+ */
91
+ isDiscovered(serverName: string): boolean;
92
+ /**
93
+ * Get all discovered servers
94
+ */
95
+ getDiscoveredServers(): string[];
96
+ /**
97
+ * Mark server as discovered
98
+ */
99
+ markDiscovered(serverName: string): void;
100
+ /**
101
+ * Get cache stats
102
+ */
103
+ getStats(): {
104
+ memoryCacheSize: number;
105
+ discoveredServers: number;
106
+ stabilityMetrics: number;
107
+ };
108
+ /**
109
+ * Get stability metrics for a server
110
+ */
111
+ getStabilityMetrics(serverName: string): SchemaStabilityMetrics | undefined;
112
+ /**
113
+ * Update stability metrics after schema change
114
+ */
115
+ private updateStabilityMetrics;
116
+ /**
117
+ * Check if tool lists have changed
118
+ */
119
+ private haveToolsChanged;
120
+ /**
121
+ * Get adaptive TTL for a server
122
+ */
123
+ getAdaptiveTTL(serverName: string): number;
124
+ /**
125
+ * Schedule discovery TTL expiration
126
+ */
127
+ scheduleDiscoveryTTL(serverName: string, ttl: number, callback: () => void): void;
128
+ /**
129
+ * Clear discovery TTL for a server
130
+ */
131
+ clearDiscoveryTTL(serverName: string): void;
132
+ /**
133
+ * Check if schema is expired
134
+ */
135
+ isExpired(serverName: string): boolean;
136
+ /**
137
+ * Get all cached schemas
138
+ */
139
+ getAllCachedSchemas(): Array<{
140
+ serverName: string;
141
+ schema: CachedSchema;
142
+ }>;
143
+ /**
144
+ * Clear all caches
145
+ */
146
+ clearAll(): void;
147
+ /**
148
+ * Clean up resources
149
+ */
150
+ cleanup(): Promise<void>;
151
+ }
152
+ //# sourceMappingURL=SchemaCacheManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SchemaCacheManager.d.ts","sourceRoot":"","sources":["../../../src/server/managers/SchemaCacheManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,426 @@
1
+ /**
2
+ * SchemaCacheManager - Manages tool schema caching and persistence
3
+ *
4
+ * Extracted from ServerManager as part of v1.1.67 refactor.
5
+ * Responsibilities:
6
+ * - In-memory schema caching (LRU)
7
+ * - Persistent disk storage via SchemaStore
8
+ * - Background schema refresh
9
+ * - Schema stability metrics (adaptive TTL)
10
+ * - Discovery tracking
11
+ */
12
+ import { EventEmitter } from "events";
13
+ import { LRUCache } from "lru-cache";
14
+ import { SchemaStore } from "../schema-store.js";
15
+ export class SchemaCacheManager extends EventEmitter {
16
+ constructor(config = {}) {
17
+ super();
18
+ this.schemaStore = null;
19
+ this.discoveredServers = new Set();
20
+ this.schemaStabilityMetrics = new Map();
21
+ this.discoveryTimers = new Map();
22
+ this.backgroundRefreshInterval = null;
23
+ this.ADAPTIVE_TTL_ENABLED = true;
24
+ this.TTL_STABLE = 3600000; // 60 minutes for stable schemas
25
+ this.TTL_NORMAL = 300000; // 5 minutes for normal schemas
26
+ this.TTL_UNSTABLE = 300000; // 5 minutes for unstable schemas
27
+ this.STABILITY_WINDOW = 5; // Look at last 5 refreshes
28
+ this.UNSTABLE_THRESHOLD = 2; // Changed in last 2 refreshes = unstable
29
+ this.config = {
30
+ cacheTTL: config.cacheTTL ?? 300000,
31
+ maxCacheEntries: config.maxCacheEntries ?? 100,
32
+ backgroundRefresh: config.backgroundRefresh ?? true,
33
+ backgroundRefreshInterval: config.backgroundRefreshInterval ?? 60000,
34
+ cacheDir: config.cacheDir ?? "~/.config/metalink/schemas",
35
+ adaptiveTTLEnabled: config.adaptiveTTLEnabled ?? true,
36
+ };
37
+ this.ADAPTIVE_TTL_ENABLED = this.config.adaptiveTTLEnabled;
38
+ // Initialize LRU cache with bounded memory
39
+ this.toolSchemaCache = new LRUCache({
40
+ max: this.config.maxCacheEntries,
41
+ dispose: (value, key) => {
42
+ console.log(`[SchemaCacheManager] LRU eviction: ${key} (${value.tools.length} tools, age: ${Date.now() - value.timestamp}ms)`);
43
+ },
44
+ });
45
+ // Initialize persistent schema store
46
+ const expandedCachePath = this.config.cacheDir.startsWith("~/")
47
+ ? this.config.cacheDir.replace("~", process.env.HOME || process.env.USERPROFILE || "~")
48
+ : this.config.cacheDir;
49
+ this.schemaStore = new SchemaStore(expandedCachePath, this.config.cacheTTL);
50
+ console.log(`[SchemaCacheManager] Initialized with max ${this.config.maxCacheEntries} entries, TTL: ${this.config.cacheTTL}ms`);
51
+ // Start background refresh if enabled
52
+ if (this.config.backgroundRefresh) {
53
+ this.startBackgroundRefresh();
54
+ }
55
+ }
56
+ /**
57
+ * Start background schema refresh
58
+ */
59
+ startBackgroundRefresh() {
60
+ if (this.backgroundRefreshInterval) {
61
+ clearInterval(this.backgroundRefreshInterval);
62
+ }
63
+ this.backgroundRefreshInterval = setInterval(() => {
64
+ this.emit("background:refresh:needed");
65
+ }, this.config.backgroundRefreshInterval);
66
+ console.log(`[SchemaCacheManager] Background refresh started (${this.config.backgroundRefreshInterval}ms interval)`);
67
+ }
68
+ /**
69
+ * Stop background refresh
70
+ */
71
+ stopBackgroundRefresh() {
72
+ if (this.backgroundRefreshInterval) {
73
+ clearInterval(this.backgroundRefreshInterval);
74
+ this.backgroundRefreshInterval = null;
75
+ console.log("[SchemaCacheManager] Background refresh stopped");
76
+ }
77
+ }
78
+ /**
79
+ * Load schemas from disk into memory cache
80
+ */
81
+ async loadFromDisk() {
82
+ if (!this.schemaStore)
83
+ return;
84
+ try {
85
+ const diskSchemas = await this.schemaStore.loadFromDisk();
86
+ for (const [serverName, schema] of diskSchemas) {
87
+ // Check if not expired
88
+ if (Date.now() - schema.timestamp < this.config.cacheTTL) {
89
+ this.toolSchemaCache.set(serverName, {
90
+ tools: schema.tools,
91
+ timestamp: schema.timestamp,
92
+ });
93
+ this.discoveredServers.add(serverName);
94
+ this.emit("schema:loaded", { serverName, tools: schema.tools });
95
+ }
96
+ }
97
+ console.log(`[SchemaCacheManager] Loaded ${diskSchemas.size} schemas from disk`);
98
+ }
99
+ catch (error) {
100
+ console.error("[SchemaCacheManager] Failed to load schemas from disk:", error);
101
+ }
102
+ }
103
+ /**
104
+ * Get cached tools for a server
105
+ * Returns null if not cached or expired
106
+ */
107
+ getCachedTools(serverName) {
108
+ // Check memory cache first
109
+ const cached = this.toolSchemaCache.get(serverName);
110
+ if (cached && Date.now() - cached.timestamp < this.config.cacheTTL) {
111
+ return cached.tools;
112
+ }
113
+ // Fallback to disk cache
114
+ if (this.schemaStore) {
115
+ const diskCached = this.schemaStore.getSyncFromDisk(serverName);
116
+ if (diskCached && diskCached.length > 0) {
117
+ // Populate memory cache for faster subsequent lookups
118
+ this.toolSchemaCache.set(serverName, {
119
+ tools: diskCached,
120
+ timestamp: Date.now(),
121
+ });
122
+ this.discoveredServers.add(serverName);
123
+ return diskCached;
124
+ }
125
+ }
126
+ return null;
127
+ }
128
+ /**
129
+ * Set/update cached tools for a server
130
+ */
131
+ setCachedTools(serverName, tools, source = "discovery") {
132
+ const previousCache = this.toolSchemaCache.get(serverName);
133
+ const hadPreviousCache = !!previousCache;
134
+ // Create new cache entry
135
+ const schema = {
136
+ tools,
137
+ timestamp: Date.now(),
138
+ };
139
+ // Update memory cache
140
+ this.toolSchemaCache.set(serverName, schema);
141
+ this.discoveredServers.add(serverName);
142
+ // Update stability metrics
143
+ if (this.ADAPTIVE_TTL_ENABLED && hadPreviousCache) {
144
+ this.updateStabilityMetrics(serverName, tools, previousCache.tools);
145
+ }
146
+ // Persist to disk
147
+ if (this.schemaStore) {
148
+ this.schemaStore.saveToDisk(serverName, schema).catch((error) => {
149
+ console.warn(`[SchemaCacheManager] Failed to persist schema for ${serverName}:`, error);
150
+ });
151
+ }
152
+ // Clear discovery timer if exists
153
+ const timer = this.discoveryTimers.get(serverName);
154
+ if (timer) {
155
+ clearTimeout(timer);
156
+ this.discoveryTimers.delete(serverName);
157
+ }
158
+ this.emit("schema:updated", {
159
+ serverName,
160
+ tools,
161
+ source,
162
+ toolCount: tools.length,
163
+ });
164
+ }
165
+ /**
166
+ * Invalidate schema cache for a server
167
+ */
168
+ invalidate(serverName, clearDisk = false) {
169
+ const hadCache = this.toolSchemaCache.has(serverName);
170
+ // Clear in-memory cache
171
+ this.toolSchemaCache.delete(serverName);
172
+ // Clear from discovered servers set
173
+ this.discoveredServers.delete(serverName);
174
+ // Clear discovery timer if exists
175
+ const timer = this.discoveryTimers.get(serverName);
176
+ if (timer) {
177
+ clearTimeout(timer);
178
+ this.discoveryTimers.delete(serverName);
179
+ }
180
+ // Clear stability metrics
181
+ this.schemaStabilityMetrics.delete(serverName);
182
+ // Clear disk cache if requested
183
+ if (clearDisk && this.schemaStore) {
184
+ // Note: SchemaStore doesn't have a delete method, we'd need to implement it
185
+ // For now, just mark as invalid in memory
186
+ console.log(`[SchemaCacheManager] Schema cache invalidated for ${serverName}`);
187
+ }
188
+ if (hadCache) {
189
+ this.emit("schema:invalidated", { serverName });
190
+ }
191
+ }
192
+ /**
193
+ * Force refresh schema (invalidate + re-fetch)
194
+ */
195
+ async forceRefresh(serverName, fetchFn) {
196
+ console.log(`[SchemaCacheManager] Force refreshing schema for ${serverName}...`);
197
+ // 1. Invalidate cache
198
+ this.invalidate(serverName, true);
199
+ // 2. Fetch fresh tools
200
+ try {
201
+ const tools = await fetchFn();
202
+ // 3. Update cache
203
+ this.setCachedTools(serverName, tools, "refresh");
204
+ console.log(`[SchemaCacheManager] Force refreshed ${serverName}: ${tools.length} tools`);
205
+ return tools;
206
+ }
207
+ catch (error) {
208
+ console.error(`[SchemaCacheManager] Failed to refresh schema for ${serverName}:`, error);
209
+ throw error;
210
+ }
211
+ }
212
+ /**
213
+ * Check if server is in discovered set
214
+ */
215
+ isDiscovered(serverName) {
216
+ return this.discoveredServers.has(serverName);
217
+ }
218
+ /**
219
+ * Get all discovered servers
220
+ */
221
+ getDiscoveredServers() {
222
+ return Array.from(this.discoveredServers);
223
+ }
224
+ /**
225
+ * Mark server as discovered
226
+ */
227
+ markDiscovered(serverName) {
228
+ this.discoveredServers.add(serverName);
229
+ }
230
+ /**
231
+ * Get cache stats
232
+ */
233
+ getStats() {
234
+ return {
235
+ memoryCacheSize: this.toolSchemaCache.size,
236
+ discoveredServers: this.discoveredServers.size,
237
+ stabilityMetrics: this.schemaStabilityMetrics.size,
238
+ };
239
+ }
240
+ /**
241
+ * Get stability metrics for a server
242
+ */
243
+ getStabilityMetrics(serverName) {
244
+ return this.schemaStabilityMetrics.get(serverName);
245
+ }
246
+ /**
247
+ * Update stability metrics after schema change
248
+ */
249
+ updateStabilityMetrics(serverName, newTools, oldTools) {
250
+ let metrics = this.schemaStabilityMetrics.get(serverName);
251
+ if (!metrics) {
252
+ metrics = {
253
+ serverName,
254
+ refreshCount: 0,
255
+ changeCount: 0,
256
+ lastChangeTimestamp: 0,
257
+ currentTTL: this.TTL_NORMAL,
258
+ stability: "normal",
259
+ };
260
+ this.schemaStabilityMetrics.set(serverName, metrics);
261
+ }
262
+ // Increment refresh count
263
+ metrics.refreshCount++;
264
+ // Check if tools actually changed
265
+ const changed = this.haveToolsChanged(newTools, oldTools);
266
+ if (changed) {
267
+ metrics.changeCount++;
268
+ metrics.lastChangeTimestamp = Date.now();
269
+ }
270
+ // Calculate stability
271
+ if (metrics.refreshCount >= this.STABILITY_WINDOW) {
272
+ const recentChanges = metrics.changeCount;
273
+ if (recentChanges === 0) {
274
+ metrics.stability = "stable";
275
+ metrics.currentTTL = this.TTL_STABLE;
276
+ }
277
+ else if (recentChanges >= this.UNSTABLE_THRESHOLD) {
278
+ metrics.stability = "unstable";
279
+ metrics.currentTTL = this.TTL_UNSTABLE;
280
+ }
281
+ else {
282
+ metrics.stability = "normal";
283
+ metrics.currentTTL = this.TTL_NORMAL;
284
+ }
285
+ }
286
+ // Reset counters periodically to avoid unbounded growth
287
+ if (metrics.refreshCount > this.STABILITY_WINDOW * 2) {
288
+ metrics.refreshCount = this.STABILITY_WINDOW;
289
+ metrics.changeCount = Math.min(metrics.changeCount, this.STABILITY_WINDOW);
290
+ }
291
+ }
292
+ /**
293
+ * Check if tool lists have changed
294
+ */
295
+ haveToolsChanged(newTools, oldTools) {
296
+ if (newTools.length !== oldTools.length)
297
+ return true;
298
+ const oldToolNames = new Set(oldTools.map((t) => t.name));
299
+ const newToolNames = new Set(newTools.map((t) => t.name));
300
+ // Check for added or removed tools
301
+ for (const name of newToolNames) {
302
+ if (!oldToolNames.has(name))
303
+ return true;
304
+ }
305
+ for (const name of oldToolNames) {
306
+ if (!newToolNames.has(name))
307
+ return true;
308
+ }
309
+ // Check for schema changes in existing tools
310
+ for (const newTool of newTools) {
311
+ const oldTool = oldTools.find((t) => t.name === newTool.name);
312
+ if (!oldTool)
313
+ return true;
314
+ // Compare schemas (simple JSON comparison)
315
+ if (JSON.stringify(newTool.inputSchema) !==
316
+ JSON.stringify(oldTool.inputSchema)) {
317
+ return true;
318
+ }
319
+ }
320
+ return false;
321
+ }
322
+ /**
323
+ * Get adaptive TTL for a server
324
+ */
325
+ getAdaptiveTTL(serverName) {
326
+ if (!this.ADAPTIVE_TTL_ENABLED) {
327
+ return this.config.cacheTTL;
328
+ }
329
+ const metrics = this.schemaStabilityMetrics.get(serverName);
330
+ if (metrics) {
331
+ return metrics.currentTTL;
332
+ }
333
+ return this.config.cacheTTL;
334
+ }
335
+ /**
336
+ * Schedule discovery TTL expiration
337
+ */
338
+ scheduleDiscoveryTTL(serverName, ttl, callback) {
339
+ // Clear existing timer
340
+ const existingTimer = this.discoveryTimers.get(serverName);
341
+ if (existingTimer) {
342
+ clearTimeout(existingTimer);
343
+ }
344
+ // Set new timer
345
+ const timer = setTimeout(() => {
346
+ this.discoveryTimers.delete(serverName);
347
+ callback();
348
+ }, ttl);
349
+ this.discoveryTimers.set(serverName, timer);
350
+ }
351
+ /**
352
+ * Clear discovery TTL for a server
353
+ */
354
+ clearDiscoveryTTL(serverName) {
355
+ const timer = this.discoveryTimers.get(serverName);
356
+ if (timer) {
357
+ clearTimeout(timer);
358
+ this.discoveryTimers.delete(serverName);
359
+ }
360
+ }
361
+ /**
362
+ * Check if schema is expired
363
+ */
364
+ isExpired(serverName) {
365
+ const cached = this.toolSchemaCache.get(serverName);
366
+ if (!cached)
367
+ return true;
368
+ const ttl = this.getAdaptiveTTL(serverName);
369
+ return Date.now() - cached.timestamp > ttl;
370
+ }
371
+ /**
372
+ * Get all cached schemas
373
+ */
374
+ getAllCachedSchemas() {
375
+ const result = [];
376
+ for (const [serverName, schema] of this.toolSchemaCache.entries()) {
377
+ result.push({ serverName, schema });
378
+ }
379
+ return result;
380
+ }
381
+ /**
382
+ * Clear all caches
383
+ */
384
+ clearAll() {
385
+ this.toolSchemaCache.clear();
386
+ this.discoveredServers.clear();
387
+ this.schemaStabilityMetrics.clear();
388
+ // Clear all discovery timers
389
+ for (const [serverName, timer] of this.discoveryTimers) {
390
+ clearTimeout(timer);
391
+ }
392
+ this.discoveryTimers.clear();
393
+ this.emit("schema:all:cleared");
394
+ console.log("[SchemaCacheManager] All caches cleared");
395
+ }
396
+ /**
397
+ * Clean up resources
398
+ */
399
+ async cleanup() {
400
+ console.log("[SchemaCacheManager] Cleaning up...");
401
+ // Stop background refresh
402
+ this.stopBackgroundRefresh();
403
+ // Clear all timers
404
+ for (const [serverName, timer] of this.discoveryTimers) {
405
+ clearTimeout(timer);
406
+ console.log(`[${serverName}] Discovery timer cleared`);
407
+ }
408
+ this.discoveryTimers.clear();
409
+ // Flush schema store
410
+ if (this.schemaStore) {
411
+ try {
412
+ await this.schemaStore.flush();
413
+ console.log("[SchemaCacheManager] Schema store flushed");
414
+ }
415
+ catch (error) {
416
+ console.error("[SchemaCacheManager] Failed to flush schema store:", error);
417
+ }
418
+ }
419
+ // Clear caches
420
+ this.toolSchemaCache.clear();
421
+ this.discoveredServers.clear();
422
+ this.schemaStabilityMetrics.clear();
423
+ console.log("[SchemaCacheManager] Cleanup complete");
424
+ }
425
+ }
426
+ //# sourceMappingURL=SchemaCacheManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SchemaCacheManager.js","sourceRoot":"","sources":["../../../src/server/managers/SchemaCacheManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Server managers index
3
+ *
4
+ * Extracted manager classes for better code organization
5
+ */
6
+ export { ProcessManager, StartupMutexEntry, ToolInfo, } from "./ProcessManager.js";
7
+ export { HttpConnectionManager } from "./HttpConnectionManager.js";
8
+ export { SchemaCacheManager, SchemaCacheConfig, CachedSchema, SchemaStabilityMetrics, } from "./SchemaCacheManager.js";
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/server/managers/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,QAAQ,GACT,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EACL,kBAAkB,EAClB,iBAAiB,EACjB,YAAY,EACZ,sBAAsB,GACvB,MAAM,yBAAyB,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Server managers index
3
+ *
4
+ * Extracted manager classes for better code organization
5
+ */
6
+ export { ProcessManager, } from "./ProcessManager.js";
7
+ export { HttpConnectionManager } from "./HttpConnectionManager.js";
8
+ export { SchemaCacheManager, } from "./SchemaCacheManager.js";
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/server/managers/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,cAAc,GAGf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EACL,kBAAkB,GAInB,MAAM,yBAAyB,CAAC"}