@structured-world/gitlab-mcp 6.62.1 → 7.0.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 (435) hide show
  1. package/README.md +22 -1
  2. package/README.md.in +21 -0
  3. package/dist/generated/prisma/client.js.map +1 -1
  4. package/dist/generated/prisma/internal/class.js +2 -2
  5. package/dist/generated/prisma/internal/class.js.map +1 -1
  6. package/dist/generated/prisma/internal/prismaNamespace.js +2 -2
  7. package/dist/generated/prisma/models/AuthCodeFlowState.d.ts +1 -2
  8. package/dist/generated/prisma/models/AuthorizationCode.d.ts +1 -2
  9. package/dist/generated/prisma/models/DeviceFlowState.d.ts +1 -2
  10. package/dist/generated/prisma/models/McpSessionMapping.d.ts +1 -2
  11. package/dist/generated/prisma/models/OAuthSession.d.ts +1 -2
  12. package/dist/src/cli/docker/container-runtime.d.ts +1 -1
  13. package/dist/src/cli/docker/container-runtime.js +14 -14
  14. package/dist/src/cli/docker/docker-command.d.ts +1 -1
  15. package/dist/src/cli/docker/docker-command.js +113 -113
  16. package/dist/src/cli/docker/docker-command.js.map +1 -1
  17. package/dist/src/cli/docker/docker-utils.d.ts +3 -3
  18. package/dist/src/cli/docker/docker-utils.js +74 -74
  19. package/dist/src/cli/docker/docker-utils.js.map +1 -1
  20. package/dist/src/cli/docker/index.d.ts +4 -4
  21. package/dist/src/cli/docker/types.d.ts +3 -3
  22. package/dist/src/cli/docker/types.js +5 -5
  23. package/dist/src/cli/init/browser.js +2 -2
  24. package/dist/src/cli/init/config-generator.d.ts +2 -2
  25. package/dist/src/cli/init/config-generator.js +22 -22
  26. package/dist/src/cli/init/connection.d.ts +1 -1
  27. package/dist/src/cli/init/connection.js +27 -27
  28. package/dist/src/cli/init/connection.js.map +1 -1
  29. package/dist/src/cli/init/index.d.ts +4 -4
  30. package/dist/src/cli/init/types.d.ts +3 -3
  31. package/dist/src/cli/init/types.js +36 -36
  32. package/dist/src/cli/init/wizard.js +80 -80
  33. package/dist/src/cli/init/wizard.js.map +1 -1
  34. package/dist/src/cli/inject-tool-refs.js +47 -47
  35. package/dist/src/cli/inject-tool-refs.js.map +1 -1
  36. package/dist/src/cli/install/backup.d.ts +1 -1
  37. package/dist/src/cli/install/backup.js +3 -3
  38. package/dist/src/cli/install/detector.d.ts +2 -2
  39. package/dist/src/cli/install/detector.js +18 -18
  40. package/dist/src/cli/install/detector.js.map +1 -1
  41. package/dist/src/cli/install/index.d.ts +5 -5
  42. package/dist/src/cli/install/install-command.d.ts +2 -2
  43. package/dist/src/cli/install/install-command.js +68 -68
  44. package/dist/src/cli/install/install-command.js.map +1 -1
  45. package/dist/src/cli/install/installers.d.ts +2 -2
  46. package/dist/src/cli/install/installers.js +55 -55
  47. package/dist/src/cli/install/installers.js.map +1 -1
  48. package/dist/src/cli/install/types.d.ts +4 -4
  49. package/dist/src/cli/install/types.js +48 -48
  50. package/dist/src/cli/instances/index.d.ts +2 -2
  51. package/dist/src/cli/instances/instances-command.d.ts +1 -1
  52. package/dist/src/cli/instances/instances-command.js +70 -66
  53. package/dist/src/cli/instances/instances-command.js.map +1 -1
  54. package/dist/src/cli/list-tools.js +396 -396
  55. package/dist/src/cli/list-tools.js.map +1 -1
  56. package/dist/src/cli/setup/discovery.d.ts +1 -1
  57. package/dist/src/cli/setup/discovery.js +10 -10
  58. package/dist/src/cli/setup/discovery.js.map +1 -1
  59. package/dist/src/cli/setup/flows/configure-existing.d.ts +1 -1
  60. package/dist/src/cli/setup/flows/configure-existing.js +57 -57
  61. package/dist/src/cli/setup/flows/configure-existing.js.map +1 -1
  62. package/dist/src/cli/setup/flows/local-setup.d.ts +1 -1
  63. package/dist/src/cli/setup/flows/local-setup.js +51 -51
  64. package/dist/src/cli/setup/flows/local-setup.js.map +1 -1
  65. package/dist/src/cli/setup/flows/server-setup.d.ts +1 -1
  66. package/dist/src/cli/setup/flows/server-setup.js +50 -50
  67. package/dist/src/cli/setup/flows/server-setup.js.map +1 -1
  68. package/dist/src/cli/setup/flows/tool-selection.d.ts +1 -1
  69. package/dist/src/cli/setup/flows/tool-selection.js +94 -94
  70. package/dist/src/cli/setup/flows/tool-selection.js.map +1 -1
  71. package/dist/src/cli/setup/index.d.ts +4 -4
  72. package/dist/src/cli/setup/presets.d.ts +1 -1
  73. package/dist/src/cli/setup/presets.js +157 -157
  74. package/dist/src/cli/setup/presets.js.map +1 -1
  75. package/dist/src/cli/setup/types.d.ts +7 -7
  76. package/dist/src/cli/setup/wizard.d.ts +1 -1
  77. package/dist/src/cli/setup/wizard.js +25 -25
  78. package/dist/src/cli/utils/index.d.ts +1 -1
  79. package/dist/src/cli/utils/path-utils.js +3 -3
  80. package/dist/src/cli-utils.d.ts +2 -2
  81. package/dist/src/cli-utils.js +46 -46
  82. package/dist/src/config/index.d.ts +4 -4
  83. package/dist/src/config/instances-loader.d.ts +3 -3
  84. package/dist/src/config/instances-loader.js +53 -53
  85. package/dist/src/config/instances-loader.js.map +1 -1
  86. package/dist/src/config/instances-schema.d.ts +1 -1
  87. package/dist/src/config/instances-schema.js +33 -33
  88. package/dist/src/config/instances-schema.js.map +1 -1
  89. package/dist/src/config.d.ts +11 -4
  90. package/dist/src/config.js +112 -111
  91. package/dist/src/config.js.map +1 -1
  92. package/dist/src/dashboard/handler.d.ts +2 -2
  93. package/dist/src/dashboard/handler.js +7 -7
  94. package/dist/src/dashboard/html-template.d.ts +1 -1
  95. package/dist/src/dashboard/html-template.js +44 -44
  96. package/dist/src/dashboard/html-template.js.map +1 -1
  97. package/dist/src/dashboard/index.d.ts +4 -4
  98. package/dist/src/dashboard/metrics.d.ts +3 -3
  99. package/dist/src/dashboard/metrics.js +42 -42
  100. package/dist/src/discovery/auto.d.ts +3 -3
  101. package/dist/src/discovery/auto.js +28 -28
  102. package/dist/src/discovery/git-remote.d.ts +2 -2
  103. package/dist/src/discovery/git-remote.js +18 -18
  104. package/dist/src/discovery/index.d.ts +3 -3
  105. package/dist/src/discovery/profile-matcher.d.ts +2 -2
  106. package/dist/src/discovery/profile-matcher.js +8 -8
  107. package/dist/src/discovery/profile-matcher.js.map +1 -1
  108. package/dist/src/entities/context/context-manager.d.ts +3 -3
  109. package/dist/src/entities/context/context-manager.js +34 -34
  110. package/dist/src/entities/context/context-manager.js.map +1 -1
  111. package/dist/src/entities/context/handlers.d.ts +2 -2
  112. package/dist/src/entities/context/handlers.js +8 -8
  113. package/dist/src/entities/context/index.d.ts +8 -8
  114. package/dist/src/entities/context/index.js +1 -1
  115. package/dist/src/entities/context/registry.d.ts +1 -1
  116. package/dist/src/entities/context/registry.js +4 -4
  117. package/dist/src/entities/context/schema.d.ts +1 -1
  118. package/dist/src/entities/context/schema.js +19 -19
  119. package/dist/src/entities/context/types.d.ts +9 -9
  120. package/dist/src/entities/context/whoami.d.ts +1 -1
  121. package/dist/src/entities/context/whoami.js +31 -31
  122. package/dist/src/entities/context/whoami.js.map +1 -1
  123. package/dist/src/entities/core/index.d.ts +5 -5
  124. package/dist/src/entities/core/index.js +1 -1
  125. package/dist/src/entities/core/registry.d.ts +1 -1
  126. package/dist/src/entities/core/registry.js +194 -194
  127. package/dist/src/entities/core/registry.js.map +1 -1
  128. package/dist/src/entities/core/schema-readonly.d.ts +1 -1
  129. package/dist/src/entities/core/schema-readonly.js +117 -117
  130. package/dist/src/entities/core/schema.d.ts +1 -1
  131. package/dist/src/entities/core/schema.js +67 -67
  132. package/dist/src/entities/files/index.d.ts +5 -5
  133. package/dist/src/entities/files/index.js +1 -1
  134. package/dist/src/entities/files/registry.d.ts +1 -1
  135. package/dist/src/entities/files/registry.js +45 -45
  136. package/dist/src/entities/files/registry.js.map +1 -1
  137. package/dist/src/entities/files/schema-readonly.d.ts +1 -1
  138. package/dist/src/entities/files/schema-readonly.js +13 -13
  139. package/dist/src/entities/files/schema.d.ts +1 -1
  140. package/dist/src/entities/files/schema.js +29 -29
  141. package/dist/src/entities/index.d.ts +17 -17
  142. package/dist/src/entities/integrations/index.d.ts +4 -4
  143. package/dist/src/entities/integrations/registry.d.ts +1 -1
  144. package/dist/src/entities/integrations/registry.js +17 -17
  145. package/dist/src/entities/integrations/registry.js.map +1 -1
  146. package/dist/src/entities/integrations/schema-readonly.d.ts +1 -1
  147. package/dist/src/entities/integrations/schema-readonly.js +5 -5
  148. package/dist/src/entities/integrations/schema.d.ts +1 -1
  149. package/dist/src/entities/integrations/schema.js +69 -69
  150. package/dist/src/entities/iterations/index.d.ts +2 -2
  151. package/dist/src/entities/iterations/registry.d.ts +1 -1
  152. package/dist/src/entities/iterations/registry.js +13 -13
  153. package/dist/src/entities/iterations/registry.js.map +1 -1
  154. package/dist/src/entities/iterations/schema-readonly.d.ts +1 -1
  155. package/dist/src/entities/iterations/schema-readonly.js +9 -9
  156. package/dist/src/entities/labels/index.d.ts +5 -5
  157. package/dist/src/entities/labels/index.js +1 -1
  158. package/dist/src/entities/labels/registry.d.ts +1 -1
  159. package/dist/src/entities/labels/registry.js +19 -19
  160. package/dist/src/entities/labels/registry.js.map +1 -1
  161. package/dist/src/entities/labels/schema-readonly.d.ts +1 -1
  162. package/dist/src/entities/labels/schema-readonly.js +8 -8
  163. package/dist/src/entities/labels/schema.d.ts +1 -1
  164. package/dist/src/entities/labels/schema.js +11 -11
  165. package/dist/src/entities/members/index.d.ts +3 -3
  166. package/dist/src/entities/members/registry.d.ts +1 -1
  167. package/dist/src/entities/members/registry.js +26 -26
  168. package/dist/src/entities/members/registry.js.map +1 -1
  169. package/dist/src/entities/members/schema-readonly.d.ts +1 -1
  170. package/dist/src/entities/members/schema-readonly.js +32 -32
  171. package/dist/src/entities/members/schema-readonly.js.map +1 -1
  172. package/dist/src/entities/members/schema.d.ts +1 -1
  173. package/dist/src/entities/members/schema.js +28 -28
  174. package/dist/src/entities/milestones/index.d.ts +5 -5
  175. package/dist/src/entities/milestones/index.js +1 -1
  176. package/dist/src/entities/milestones/registry.d.ts +1 -1
  177. package/dist/src/entities/milestones/registry.js +25 -25
  178. package/dist/src/entities/milestones/registry.js.map +1 -1
  179. package/dist/src/entities/milestones/schema-readonly.d.ts +2 -2
  180. package/dist/src/entities/milestones/schema-readonly.js +15 -15
  181. package/dist/src/entities/milestones/schema.d.ts +1 -1
  182. package/dist/src/entities/milestones/schema.js +16 -16
  183. package/dist/src/entities/milestones/schema.js.map +1 -1
  184. package/dist/src/entities/mrs/index.d.ts +5 -5
  185. package/dist/src/entities/mrs/index.js +1 -1
  186. package/dist/src/entities/mrs/registry.d.ts +1 -1
  187. package/dist/src/entities/mrs/registry.js +102 -102
  188. package/dist/src/entities/mrs/registry.js.map +1 -1
  189. package/dist/src/entities/mrs/schema-readonly.d.ts +1 -1
  190. package/dist/src/entities/mrs/schema-readonly.js +126 -126
  191. package/dist/src/entities/mrs/schema-readonly.js.map +1 -1
  192. package/dist/src/entities/mrs/schema.d.ts +1 -1
  193. package/dist/src/entities/mrs/schema.js +111 -111
  194. package/dist/src/entities/mrs/schema.js.map +1 -1
  195. package/dist/src/entities/pipelines/index.d.ts +5 -5
  196. package/dist/src/entities/pipelines/index.js +1 -1
  197. package/dist/src/entities/pipelines/registry.d.ts +1 -1
  198. package/dist/src/entities/pipelines/registry.js +45 -45
  199. package/dist/src/entities/pipelines/registry.js.map +1 -1
  200. package/dist/src/entities/pipelines/schema-readonly.d.ts +2 -2
  201. package/dist/src/entities/pipelines/schema-readonly.js +73 -73
  202. package/dist/src/entities/pipelines/schema.d.ts +1 -1
  203. package/dist/src/entities/pipelines/schema.js +21 -21
  204. package/dist/src/entities/refs/index.d.ts +3 -3
  205. package/dist/src/entities/refs/registry.d.ts +1 -1
  206. package/dist/src/entities/refs/registry.js +31 -31
  207. package/dist/src/entities/refs/registry.js.map +1 -1
  208. package/dist/src/entities/refs/schema-readonly.d.ts +1 -1
  209. package/dist/src/entities/refs/schema-readonly.js +21 -21
  210. package/dist/src/entities/refs/schema.d.ts +1 -1
  211. package/dist/src/entities/refs/schema.js +56 -56
  212. package/dist/src/entities/releases/index.d.ts +3 -3
  213. package/dist/src/entities/releases/registry.d.ts +1 -1
  214. package/dist/src/entities/releases/registry.js +21 -21
  215. package/dist/src/entities/releases/registry.js.map +1 -1
  216. package/dist/src/entities/releases/schema-readonly.d.ts +1 -1
  217. package/dist/src/entities/releases/schema-readonly.js +13 -13
  218. package/dist/src/entities/releases/schema.d.ts +1 -1
  219. package/dist/src/entities/releases/schema.js +21 -21
  220. package/dist/src/entities/search/index.d.ts +2 -2
  221. package/dist/src/entities/search/registry.d.ts +1 -1
  222. package/dist/src/entities/search/registry.js +13 -13
  223. package/dist/src/entities/search/schema-readonly.d.ts +1 -1
  224. package/dist/src/entities/search/schema-readonly.js +23 -23
  225. package/dist/src/entities/shared.d.ts +1 -1
  226. package/dist/src/entities/shared.js +5 -5
  227. package/dist/src/entities/snippets/index.d.ts +5 -5
  228. package/dist/src/entities/snippets/index.js +1 -1
  229. package/dist/src/entities/snippets/registry.d.ts +1 -1
  230. package/dist/src/entities/snippets/registry.js +24 -24
  231. package/dist/src/entities/snippets/registry.js.map +1 -1
  232. package/dist/src/entities/snippets/schema-readonly.d.ts +1 -1
  233. package/dist/src/entities/snippets/schema-readonly.js +11 -11
  234. package/dist/src/entities/snippets/schema.d.ts +1 -1
  235. package/dist/src/entities/snippets/schema.js +27 -27
  236. package/dist/src/entities/snippets/schema.js.map +1 -1
  237. package/dist/src/entities/utils.d.ts +2 -2
  238. package/dist/src/entities/utils.js +8 -8
  239. package/dist/src/entities/utils.js.map +1 -1
  240. package/dist/src/entities/variables/index.d.ts +5 -5
  241. package/dist/src/entities/variables/index.js +1 -1
  242. package/dist/src/entities/variables/registry.d.ts +1 -1
  243. package/dist/src/entities/variables/registry.js +22 -22
  244. package/dist/src/entities/variables/registry.js.map +1 -1
  245. package/dist/src/entities/variables/schema-readonly.d.ts +1 -1
  246. package/dist/src/entities/variables/schema-readonly.js +6 -6
  247. package/dist/src/entities/variables/schema.d.ts +1 -1
  248. package/dist/src/entities/variables/schema.js +21 -21
  249. package/dist/src/entities/variables/schema.js.map +1 -1
  250. package/dist/src/entities/webhooks/index.d.ts +4 -4
  251. package/dist/src/entities/webhooks/registry.d.ts +1 -1
  252. package/dist/src/entities/webhooks/registry.js +29 -29
  253. package/dist/src/entities/webhooks/registry.js.map +1 -1
  254. package/dist/src/entities/webhooks/schema-readonly.d.ts +1 -1
  255. package/dist/src/entities/webhooks/schema-readonly.js +9 -9
  256. package/dist/src/entities/webhooks/schema.d.ts +1 -1
  257. package/dist/src/entities/webhooks/schema.js +59 -59
  258. package/dist/src/entities/wiki/index.d.ts +5 -5
  259. package/dist/src/entities/wiki/index.js +1 -1
  260. package/dist/src/entities/wiki/registry.d.ts +1 -1
  261. package/dist/src/entities/wiki/registry.js +19 -19
  262. package/dist/src/entities/wiki/registry.js.map +1 -1
  263. package/dist/src/entities/wiki/schema-readonly.d.ts +1 -1
  264. package/dist/src/entities/wiki/schema-readonly.js +6 -6
  265. package/dist/src/entities/wiki/schema.d.ts +1 -1
  266. package/dist/src/entities/wiki/schema.js +12 -12
  267. package/dist/src/entities/workitems/index.d.ts +5 -5
  268. package/dist/src/entities/workitems/index.js +1 -1
  269. package/dist/src/entities/workitems/registry.d.ts +1 -1
  270. package/dist/src/entities/workitems/registry.js +101 -101
  271. package/dist/src/entities/workitems/registry.js.map +1 -1
  272. package/dist/src/entities/workitems/schema-readonly.d.ts +1 -1
  273. package/dist/src/entities/workitems/schema-readonly.js +27 -27
  274. package/dist/src/entities/workitems/schema-readonly.js.map +1 -1
  275. package/dist/src/entities/workitems/schema.d.ts +1 -1
  276. package/dist/src/entities/workitems/schema.js +58 -58
  277. package/dist/src/graphql/DynamicWorkItemsQuery.d.ts +2 -2
  278. package/dist/src/graphql/DynamicWorkItemsQuery.js +47 -47
  279. package/dist/src/graphql/DynamicWorkItemsQuery.js.map +1 -1
  280. package/dist/src/graphql/client.d.ts +1 -1
  281. package/dist/src/graphql/client.js +4 -4
  282. package/dist/src/graphql/client.js.map +1 -1
  283. package/dist/src/graphql/index.d.ts +2 -2
  284. package/dist/src/graphql/workItems.d.ts +38 -38
  285. package/dist/src/graphql/workItems.js +30 -30
  286. package/dist/src/handlers.d.ts +2 -1
  287. package/dist/src/handlers.js +258 -86
  288. package/dist/src/handlers.js.map +1 -1
  289. package/dist/src/http-client.js +3 -3
  290. package/dist/src/logger.js +25 -25
  291. package/dist/src/logging/access-log.d.ts +2 -2
  292. package/dist/src/logging/access-log.js +25 -25
  293. package/dist/src/logging/connection-tracker.d.ts +1 -1
  294. package/dist/src/logging/connection-tracker.js +3 -3
  295. package/dist/src/logging/index.d.ts +5 -5
  296. package/dist/src/logging/request-tracker.d.ts +3 -3
  297. package/dist/src/logging/request-tracker.js +4 -4
  298. package/dist/src/logging/types.d.ts +3 -3
  299. package/dist/src/logging/types.js +1 -1
  300. package/dist/src/logging/types.js.map +1 -1
  301. package/dist/src/main.js +28 -28
  302. package/dist/src/middleware/index.d.ts +3 -2
  303. package/dist/src/middleware/index.js +3 -1
  304. package/dist/src/middleware/index.js.map +1 -1
  305. package/dist/src/middleware/oauth-auth.d.ts +1 -1
  306. package/dist/src/middleware/oauth-auth.js +17 -17
  307. package/dist/src/middleware/rate-limiter.d.ts +1 -1
  308. package/dist/src/middleware/rate-limiter.js +32 -32
  309. package/dist/src/middleware/response-write-timeout.d.ts +2 -0
  310. package/dist/src/middleware/response-write-timeout.js +62 -0
  311. package/dist/src/middleware/response-write-timeout.js.map +1 -0
  312. package/dist/src/oauth/config.d.ts +1 -1
  313. package/dist/src/oauth/config.js +18 -18
  314. package/dist/src/oauth/config.js.map +1 -1
  315. package/dist/src/oauth/endpoints/authorize.d.ts +1 -1
  316. package/dist/src/oauth/endpoints/authorize.js +32 -32
  317. package/dist/src/oauth/endpoints/callback.d.ts +1 -1
  318. package/dist/src/oauth/endpoints/callback.js +26 -26
  319. package/dist/src/oauth/endpoints/index.d.ts +5 -5
  320. package/dist/src/oauth/endpoints/metadata.d.ts +1 -1
  321. package/dist/src/oauth/endpoints/metadata.js +12 -12
  322. package/dist/src/oauth/endpoints/register.d.ts +1 -1
  323. package/dist/src/oauth/endpoints/register.js +9 -9
  324. package/dist/src/oauth/endpoints/token.d.ts +1 -1
  325. package/dist/src/oauth/endpoints/token.js +28 -28
  326. package/dist/src/oauth/gitlab-device-flow.d.ts +2 -2
  327. package/dist/src/oauth/gitlab-device-flow.js +73 -68
  328. package/dist/src/oauth/gitlab-device-flow.js.map +1 -1
  329. package/dist/src/oauth/index.d.ts +10 -10
  330. package/dist/src/oauth/session-store.d.ts +2 -2
  331. package/dist/src/oauth/session-store.js +40 -40
  332. package/dist/src/oauth/session-store.js.map +1 -1
  333. package/dist/src/oauth/storage/factory.d.ts +2 -2
  334. package/dist/src/oauth/storage/factory.js +16 -16
  335. package/dist/src/oauth/storage/file.d.ts +2 -2
  336. package/dist/src/oauth/storage/file.js +22 -22
  337. package/dist/src/oauth/storage/file.js.map +1 -1
  338. package/dist/src/oauth/storage/index.d.ts +5 -5
  339. package/dist/src/oauth/storage/memory.d.ts +2 -2
  340. package/dist/src/oauth/storage/memory.js +18 -18
  341. package/dist/src/oauth/storage/memory.js.map +1 -1
  342. package/dist/src/oauth/storage/postgresql.d.ts +2 -2
  343. package/dist/src/oauth/storage/postgresql.js +11 -11
  344. package/dist/src/oauth/storage/postgresql.js.map +1 -1
  345. package/dist/src/oauth/storage/types.d.ts +3 -3
  346. package/dist/src/oauth/token-context.d.ts +1 -1
  347. package/dist/src/oauth/token-context.js +1 -1
  348. package/dist/src/oauth/token-utils.d.ts +1 -1
  349. package/dist/src/oauth/token-utils.js +20 -20
  350. package/dist/src/oauth/types.d.ts +3 -3
  351. package/dist/src/profiles/applicator.d.ts +1 -1
  352. package/dist/src/profiles/applicator.js +48 -48
  353. package/dist/src/profiles/index.d.ts +5 -5
  354. package/dist/src/profiles/loader.d.ts +3 -3
  355. package/dist/src/profiles/loader.js +25 -25
  356. package/dist/src/profiles/loader.js.map +1 -1
  357. package/dist/src/profiles/project-loader.d.ts +1 -1
  358. package/dist/src/profiles/project-loader.js +23 -23
  359. package/dist/src/profiles/project-loader.js.map +1 -1
  360. package/dist/src/profiles/scope-enforcer.d.ts +2 -2
  361. package/dist/src/profiles/scope-enforcer.js +25 -25
  362. package/dist/src/profiles/scope-enforcer.js.map +1 -1
  363. package/dist/src/profiles/types.d.ts +2 -2
  364. package/dist/src/profiles/types.js +50 -48
  365. package/dist/src/profiles/types.js.map +1 -1
  366. package/dist/src/registry-manager.d.ts +19 -11
  367. package/dist/src/registry-manager.js +257 -172
  368. package/dist/src/registry-manager.js.map +1 -1
  369. package/dist/src/server.js +165 -149
  370. package/dist/src/server.js.map +1 -1
  371. package/dist/src/services/ConnectionManager.d.ts +33 -24
  372. package/dist/src/services/ConnectionManager.js +304 -179
  373. package/dist/src/services/ConnectionManager.js.map +1 -1
  374. package/dist/src/services/GitLabVersionDetector.d.ts +2 -2
  375. package/dist/src/services/GitLabVersionDetector.js +45 -45
  376. package/dist/src/services/GitLabVersionDetector.js.map +1 -1
  377. package/dist/src/services/HealthMonitor.d.ts +42 -0
  378. package/dist/src/services/HealthMonitor.js +544 -0
  379. package/dist/src/services/HealthMonitor.js.map +1 -0
  380. package/dist/src/services/InstanceConnectionPool.d.ts +2 -2
  381. package/dist/src/services/InstanceConnectionPool.js +13 -13
  382. package/dist/src/services/InstanceConnectionPool.js.map +1 -1
  383. package/dist/src/services/InstanceRateLimiter.js +6 -6
  384. package/dist/src/services/InstanceRateLimiter.js.map +1 -1
  385. package/dist/src/services/InstanceRegistry.d.ts +4 -5
  386. package/dist/src/services/InstanceRegistry.js +29 -41
  387. package/dist/src/services/InstanceRegistry.js.map +1 -1
  388. package/dist/src/services/NamespaceTierDetector.d.ts +2 -2
  389. package/dist/src/services/NamespaceTierDetector.js +30 -30
  390. package/dist/src/services/NamespaceTierDetector.js.map +1 -1
  391. package/dist/src/services/SchemaIntrospector.d.ts +2 -1
  392. package/dist/src/services/SchemaIntrospector.js +45 -42
  393. package/dist/src/services/SchemaIntrospector.js.map +1 -1
  394. package/dist/src/services/TokenScopeDetector.d.ts +4 -4
  395. package/dist/src/services/TokenScopeDetector.js +133 -110
  396. package/dist/src/services/TokenScopeDetector.js.map +1 -1
  397. package/dist/src/services/ToolAvailability.d.ts +15 -11
  398. package/dist/src/services/ToolAvailability.js +150 -130
  399. package/dist/src/services/ToolAvailability.js.map +1 -1
  400. package/dist/src/services/WidgetAvailability.d.ts +5 -5
  401. package/dist/src/services/WidgetAvailability.js +40 -39
  402. package/dist/src/services/WidgetAvailability.js.map +1 -1
  403. package/dist/src/session-manager.d.ts +3 -2
  404. package/dist/src/session-manager.js +17 -14
  405. package/dist/src/session-manager.js.map +1 -1
  406. package/dist/src/types.js +4 -4
  407. package/dist/src/utils/description-utils.js +4 -4
  408. package/dist/src/utils/description-utils.js.map +1 -1
  409. package/dist/src/utils/error-handler.d.ts +19 -10
  410. package/dist/src/utils/error-handler.js +272 -187
  411. package/dist/src/utils/error-handler.js.map +1 -1
  412. package/dist/src/utils/fetch.d.ts +7 -0
  413. package/dist/src/utils/fetch.js +136 -122
  414. package/dist/src/utils/fetch.js.map +1 -1
  415. package/dist/src/utils/gitlab-api.d.ts +1 -1
  416. package/dist/src/utils/gitlab-api.js +29 -26
  417. package/dist/src/utils/gitlab-api.js.map +1 -1
  418. package/dist/src/utils/idConversion.js +47 -47
  419. package/dist/src/utils/idConversion.js.map +1 -1
  420. package/dist/src/utils/namespace.d.ts +2 -2
  421. package/dist/src/utils/namespace.js +15 -15
  422. package/dist/src/utils/projectIdentifier.js +4 -4
  423. package/dist/src/utils/request-logger.d.ts +4 -4
  424. package/dist/src/utils/request-logger.js +5 -5
  425. package/dist/src/utils/schema-utils.js +24 -24
  426. package/dist/src/utils/schema-utils.js.map +1 -1
  427. package/dist/src/utils/smart-user-search.d.ts +1 -1
  428. package/dist/src/utils/smart-user-search.js +10 -10
  429. package/dist/src/utils/url.d.ts +1 -0
  430. package/dist/src/utils/url.js +38 -0
  431. package/dist/src/utils/url.js.map +1 -0
  432. package/dist/src/utils/version.js +1 -1
  433. package/dist/tsconfig.build.tsbuildinfo +1 -1
  434. package/package.json +22 -31
  435. package/dist/structured-world-gitlab-mcp-6.62.1.tgz +0 -0
@@ -33,18 +33,22 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.resetHandlersState = resetHandlersState;
36
37
  exports.setupHandlers = setupHandlers;
37
38
  const types_js_1 = require("@modelcontextprotocol/sdk/types.js");
38
39
  const ConnectionManager_1 = require("./services/ConnectionManager");
40
+ const HealthMonitor_1 = require("./services/HealthMonitor");
41
+ const url_1 = require("./utils/url");
39
42
  const logger_1 = require("./logger");
40
43
  const error_handler_1 = require("./utils/error-handler");
44
+ const fetch_1 = require("./utils/fetch");
41
45
  const index_1 = require("./logging/index");
42
46
  const config_1 = require("./config");
43
47
  function hasAction(value) {
44
- return (typeof value === "object" &&
48
+ return (typeof value === 'object' &&
45
49
  value !== null &&
46
- "action" in value &&
47
- typeof value.action === "string");
50
+ 'action' in value &&
51
+ typeof value.action === 'string');
48
52
  }
49
53
  function extractActionFromError(error) {
50
54
  if (hasAction(error)) {
@@ -56,11 +60,26 @@ function extractActionFromError(error) {
56
60
  }
57
61
  return undefined;
58
62
  }
63
+ function recordEarlyReturnError(toolName, action, errorMessage) {
64
+ const requestTracker = (0, index_1.getRequestTracker)();
65
+ if (config_1.LOG_FORMAT === 'condensed') {
66
+ requestTracker.setToolForCurrentRequest(toolName, action);
67
+ requestTracker.setErrorForCurrentRequest(errorMessage);
68
+ }
69
+ const currentRequestId = (0, index_1.getCurrentRequestId)();
70
+ if (currentRequestId) {
71
+ const stack = requestTracker.getStack(currentRequestId);
72
+ if (stack?.sessionId) {
73
+ (0, index_1.getConnectionTracker)().recordError(stack.sessionId, errorMessage);
74
+ }
75
+ }
76
+ }
59
77
  function isIdempotentOperation(toolName) {
60
- return (toolName.startsWith("browse_") ||
61
- toolName.startsWith("list_") ||
62
- toolName.startsWith("get_") ||
63
- toolName.startsWith("download_"));
78
+ return (toolName.startsWith('browse_') ||
79
+ toolName.startsWith('list_') ||
80
+ toolName.startsWith('get_') ||
81
+ toolName.startsWith('download_') ||
82
+ toolName === 'manage_context');
64
83
  }
65
84
  function toStructuredError(error, toolName, toolArgs) {
66
85
  if ((0, error_handler_1.isStructuredToolError)(error)) {
@@ -73,50 +92,104 @@ function toStructuredError(error, toolName, toolArgs) {
73
92
  if (!(error instanceof Error))
74
93
  return null;
75
94
  let action = extractActionFromError(error);
76
- if (!action && toolArgs && typeof toolArgs.action === "string") {
95
+ if (!action && toolArgs && typeof toolArgs.action === 'string') {
77
96
  action = toolArgs.action;
78
97
  }
79
- action ??= "unknown";
80
- const timeoutMs = (0, error_handler_1.parseTimeoutError)(error.message);
81
- if (timeoutMs !== null) {
98
+ action ??= 'unknown';
99
+ if (error instanceof fetch_1.GitLabTimeoutError ||
100
+ (error instanceof Error &&
101
+ error.name === 'GitLabTimeoutError' &&
102
+ 'timeoutMs' in error &&
103
+ typeof error.timeoutMs === 'number')) {
82
104
  const retryable = isIdempotentOperation(toolName);
83
- return (0, error_handler_1.createTimeoutError)(toolName, action, timeoutMs, retryable);
105
+ return (0, error_handler_1.createTimeoutError)(toolName, action, error.timeoutMs, retryable);
106
+ }
107
+ if (error instanceof Error) {
108
+ const timeoutMs = (0, error_handler_1.parseTimeoutError)(error.message);
109
+ if (timeoutMs !== null) {
110
+ const retryable = isIdempotentOperation(toolName);
111
+ return (0, error_handler_1.createTimeoutError)(toolName, action, timeoutMs, retryable);
112
+ }
84
113
  }
85
114
  const parsed = (0, error_handler_1.parseGitLabApiError)(error.message);
86
115
  if (!parsed)
87
116
  return null;
88
117
  return (0, error_handler_1.handleGitLabError)({ status: parsed.status, message: parsed.message }, toolName, action, toolArgs);
89
118
  }
119
+ let healthMonitorStartup = null;
120
+ let stateChangeRegistered = false;
121
+ function resetHandlersState() {
122
+ healthMonitorStartup = null;
123
+ stateChangeRegistered = false;
124
+ }
90
125
  async function setupHandlers(server) {
91
- const { isAuthenticationConfigured } = await Promise.resolve().then(() => __importStar(require("./oauth/index")));
126
+ const { isAuthenticationConfigured } = await Promise.resolve().then(() => __importStar(require('./oauth/index')));
92
127
  if (isAuthenticationConfigured()) {
93
- const connectionManager = ConnectionManager_1.ConnectionManager.getInstance();
94
- try {
95
- await connectionManager.initialize();
96
- (0, logger_1.logInfo)("Connection initialized during server setup");
97
- }
98
- catch (error) {
99
- (0, logger_1.logWarn)(`Initial connection failed during setup, will retry on first tool call: ${error instanceof Error ? error.message : String(error)}`);
100
- }
128
+ healthMonitorStartup ??= (async () => {
129
+ try {
130
+ const healthMonitor = HealthMonitor_1.HealthMonitor.getInstance();
131
+ if (!stateChangeRegistered) {
132
+ stateChangeRegistered = true;
133
+ const broadcastToolsListChangedForStateChange = async (instanceUrl, from, to) => {
134
+ const { RegistryManager } = await Promise.resolve().then(() => __importStar(require('./registry-manager')));
135
+ RegistryManager.getInstance().refreshCache(instanceUrl);
136
+ const { getSessionManager } = await Promise.resolve().then(() => __importStar(require('./session-manager')));
137
+ await getSessionManager().broadcastToolsListChanged();
138
+ (0, logger_1.logInfo)('Tool list updated after connection state change', {
139
+ instanceUrl,
140
+ from,
141
+ to,
142
+ });
143
+ };
144
+ healthMonitor.onStateChange((instanceUrl, from, to) => {
145
+ if (from !== to) {
146
+ broadcastToolsListChangedForStateChange(instanceUrl, from, to).catch((error) => {
147
+ (0, logger_1.logWarn)('Failed to broadcast tools/list_changed after state change', {
148
+ instanceUrl,
149
+ err: error,
150
+ });
151
+ });
152
+ }
153
+ });
154
+ }
155
+ await healthMonitor.initialize();
156
+ const state = healthMonitor.getState();
157
+ (0, logger_1.logInfo)('Connection health monitor initialized', { state });
158
+ try {
159
+ const { RegistryManager } = await Promise.resolve().then(() => __importStar(require('./registry-manager')));
160
+ RegistryManager.getInstance().refreshCache();
161
+ }
162
+ catch (cacheError) {
163
+ (0, logger_1.logWarn)('Failed to refresh registry cache during handler setup', {
164
+ err: cacheError,
165
+ });
166
+ }
167
+ }
168
+ catch (error) {
169
+ healthMonitorStartup = null;
170
+ throw error;
171
+ }
172
+ })();
173
+ await healthMonitorStartup;
101
174
  }
102
175
  else {
103
- (0, logger_1.logInfo)("Skipping connection initialization - no authentication configured");
176
+ (0, logger_1.logInfo)('Skipping connection initialization - no authentication configured');
104
177
  }
105
178
  server.setRequestHandler(types_js_1.ListToolsRequestSchema, async () => {
106
- (0, logger_1.logInfo)("ListToolsRequest received");
107
- const { RegistryManager } = await Promise.resolve().then(() => __importStar(require("./registry-manager")));
179
+ (0, logger_1.logInfo)('ListToolsRequest received');
180
+ const { RegistryManager } = await Promise.resolve().then(() => __importStar(require('./registry-manager')));
108
181
  const registryManager = RegistryManager.getInstance();
109
182
  const tools = registryManager.getAllToolDefinitions();
110
- (0, logger_1.logInfo)("Returning tools list", { toolCount: tools.length });
183
+ (0, logger_1.logInfo)('Returning tools list', { toolCount: tools.length });
111
184
  function resolveRefs(schema, rootSchema) {
112
- if (!schema || typeof schema !== "object")
185
+ if (!schema || typeof schema !== 'object')
113
186
  return schema;
114
187
  rootSchema ??= schema;
115
188
  if (Array.isArray(schema)) {
116
- return schema.map(item => resolveRefs(item, rootSchema));
189
+ return schema.map((item) => resolveRefs(item, rootSchema));
117
190
  }
118
- if (schema.$ref && typeof schema.$ref === "string") {
119
- const refPath = schema.$ref.replace("#/properties/", "");
191
+ if (schema.$ref && typeof schema.$ref === 'string') {
192
+ const refPath = schema.$ref.replace('#/properties/', '');
120
193
  const referencedProperty = rootSchema.properties?.[refPath];
121
194
  if (referencedProperty) {
122
195
  const resolvedRef = resolveRefs(referencedProperty, rootSchema);
@@ -130,14 +203,14 @@ async function setupHandlers(server) {
130
203
  }
131
204
  const result = {};
132
205
  for (const [key, value] of Object.entries(schema)) {
133
- if (key === "properties" && typeof value === "object" && value !== null) {
206
+ if (key === 'properties' && typeof value === 'object' && value !== null) {
134
207
  const resolvedProperties = {};
135
208
  for (const [propKey, propValue] of Object.entries(value)) {
136
209
  resolvedProperties[propKey] = resolveRefs(propValue, rootSchema);
137
210
  }
138
211
  result[key] = resolvedProperties;
139
212
  }
140
- else if (typeof value === "object" && value !== null && !Array.isArray(value)) {
213
+ else if (typeof value === 'object' && value !== null && !Array.isArray(value)) {
141
214
  result[key] = resolveRefs(value, rootSchema);
142
215
  }
143
216
  else {
@@ -146,18 +219,18 @@ async function setupHandlers(server) {
146
219
  }
147
220
  return result;
148
221
  }
149
- const modifiedTools = tools.map(tool => {
222
+ const modifiedTools = tools.map((tool) => {
150
223
  let inputSchema = tool.inputSchema;
151
- if (inputSchema && typeof inputSchema === "object") {
152
- inputSchema = { ...inputSchema, type: "object" };
224
+ if (inputSchema && typeof inputSchema === 'object') {
225
+ inputSchema = { ...inputSchema, type: 'object' };
153
226
  }
154
- if (inputSchema && typeof inputSchema === "object") {
227
+ if (inputSchema && typeof inputSchema === 'object') {
155
228
  const resolved = resolveRefs(inputSchema);
156
- if (resolved && typeof resolved === "object" && !Array.isArray(resolved)) {
229
+ if (resolved && typeof resolved === 'object' && !Array.isArray(resolved)) {
157
230
  inputSchema = resolved;
158
231
  }
159
232
  }
160
- if (inputSchema && typeof inputSchema === "object" && "$schema" in inputSchema) {
233
+ if (inputSchema && typeof inputSchema === 'object' && '$schema' in inputSchema) {
161
234
  const cleanedSchema = { ...inputSchema };
162
235
  delete cleanedSchema.$schema;
163
236
  inputSchema = cleanedSchema;
@@ -169,66 +242,151 @@ async function setupHandlers(server) {
169
242
  };
170
243
  });
171
244
  server.setRequestHandler(types_js_1.CallToolRequestSchema, async (request) => {
172
- const HANDLER_TIMEOUT_SYMBOL = Symbol("handler_timeout");
245
+ const { getGitLabApiUrlFromContext: getUrlFromCtx, isOAuthEnabled } = await Promise.resolve().then(() => __importStar(require('./oauth/index')));
246
+ const rawInstanceUrl = isOAuthEnabled()
247
+ ? (getUrlFromCtx() ?? config_1.GITLAB_BASE_URL)
248
+ : (ConnectionManager_1.ConnectionManager.getInstance().getCurrentInstanceUrl() ?? config_1.GITLAB_BASE_URL);
249
+ const requestInstanceUrl = (0, url_1.normalizeInstanceUrl)(rawInstanceUrl);
250
+ let timedOut = false;
251
+ let bootstrapStarted = false;
252
+ let bootstrapComplete = false;
253
+ const HANDLER_TIMEOUT_SYMBOL = Symbol('handler_timeout');
173
254
  let handlerTimeoutId;
174
- const timeoutPromise = new Promise(resolve => {
175
- handlerTimeoutId = setTimeout(() => resolve(HANDLER_TIMEOUT_SYMBOL), config_1.HANDLER_TIMEOUT_MS);
255
+ const timeoutPromise = new Promise((resolve) => {
256
+ handlerTimeoutId = setTimeout(() => {
257
+ timedOut = true;
258
+ resolve(HANDLER_TIMEOUT_SYMBOL);
259
+ }, config_1.HANDLER_TIMEOUT_MS);
176
260
  });
177
261
  const handlerWork = async () => {
178
262
  if (!request.params.arguments) {
179
- throw new Error("Arguments are required");
263
+ throw new Error('Arguments are required');
180
264
  }
181
- if (config_1.LOG_FORMAT === "verbose") {
265
+ if (config_1.LOG_FORMAT === 'verbose') {
182
266
  (0, logger_1.logInfo)(`Tool called: ${request.params.name}`);
183
267
  }
184
- const { isOAuthEnabled, isAuthenticationConfigured } = await Promise.resolve().then(() => __importStar(require("./oauth/index")));
268
+ const { isOAuthEnabled, isAuthenticationConfigured } = await Promise.resolve().then(() => __importStar(require('./oauth/index')));
185
269
  if (!isAuthenticationConfigured()) {
186
- throw new Error("GITLAB_TOKEN environment variable is required to execute tools. " +
270
+ throw new Error('GITLAB_TOKEN environment variable is required to execute tools. ' +
187
271
  "Run 'npx @structured-world/gitlab-mcp setup' for interactive configuration, " +
188
- "or set GITLAB_TOKEN manually. " +
189
- "Documentation: https://gitlab-mcp.sw.foundation/guide/configuration");
272
+ 'or set GITLAB_TOKEN manually. ' +
273
+ 'Documentation: https://gitlab-mcp.sw.foundation/guide/configuration');
190
274
  }
275
+ const effectiveInstanceUrl = requestInstanceUrl;
191
276
  const connectionManager = ConnectionManager_1.ConnectionManager.getInstance();
277
+ const healthMonitor = HealthMonitor_1.HealthMonitor.getInstance();
278
+ const toolName = request.params.name;
279
+ if (!healthMonitor.isInstanceReachable(effectiveInstanceUrl) &&
280
+ toolName !== 'manage_context') {
281
+ const action = request.params.arguments && typeof request.params.arguments.action === 'string'
282
+ ? request.params.arguments.action
283
+ : 'unknown';
284
+ const rawState = healthMonitor.getState(effectiveInstanceUrl);
285
+ let connectionState;
286
+ if (rawState === 'failed') {
287
+ connectionState = 'failed';
288
+ }
289
+ else if (rawState === 'connecting') {
290
+ connectionState = 'connecting';
291
+ }
292
+ else {
293
+ connectionState = 'disconnected';
294
+ }
295
+ const connError = (0, error_handler_1.createConnectionFailedError)(toolName, action, effectiveInstanceUrl, connectionState);
296
+ recordEarlyReturnError(toolName, action, connError.message);
297
+ return {
298
+ content: [{ type: 'text', text: JSON.stringify(connError, null, 2) }],
299
+ isError: true,
300
+ };
301
+ }
302
+ if (toolName === 'manage_context' &&
303
+ !healthMonitor.isInstanceReachable(effectiveInstanceUrl)) {
304
+ if (config_1.LOG_FORMAT === 'condensed') {
305
+ const action = request.params.arguments && typeof request.params.arguments.action === 'string'
306
+ ? request.params.arguments.action
307
+ : undefined;
308
+ const requestTracker = (0, index_1.getRequestTracker)();
309
+ requestTracker.setToolForCurrentRequest(toolName, action);
310
+ }
311
+ const { RegistryManager } = await Promise.resolve().then(() => __importStar(require('./registry-manager')));
312
+ const registryManager = RegistryManager.getInstance();
313
+ if (registryManager.hasToolHandler(toolName, effectiveInstanceUrl)) {
314
+ const result = await registryManager.executeTool(toolName, request.params.arguments, effectiveInstanceUrl);
315
+ return {
316
+ content: [{ type: 'text', text: JSON.stringify(result, null, 2) }],
317
+ };
318
+ }
319
+ }
320
+ bootstrapStarted = true;
192
321
  const oauthMode = isOAuthEnabled();
193
322
  try {
194
- connectionManager.getClient();
195
- if (oauthMode) {
196
- await connectionManager.ensureIntrospected();
323
+ if (!connectionManager.isConnected(effectiveInstanceUrl)) {
324
+ if (config_1.LOG_FORMAT === 'verbose') {
325
+ (0, logger_1.logInfo)('Connection not initialized, attempting to initialize...');
326
+ }
327
+ await connectionManager.initialize(effectiveInstanceUrl);
197
328
  }
198
- const instanceInfo = connectionManager.getInstanceInfo();
199
- if (config_1.LOG_FORMAT === "verbose") {
200
- (0, logger_1.logInfo)(`Connection verified: ${instanceInfo.version} ${instanceInfo.tier}`);
329
+ connectionManager.getClient(effectiveInstanceUrl);
330
+ if (oauthMode) {
331
+ await connectionManager.ensureIntrospected(effectiveInstanceUrl);
201
332
  }
202
- }
203
- catch {
204
- if (config_1.LOG_FORMAT === "verbose") {
205
- (0, logger_1.logInfo)("Connection not initialized, attempting to initialize...");
333
+ bootstrapComplete = true;
334
+ {
335
+ const { RegistryManager } = await Promise.resolve().then(() => __importStar(require('./registry-manager')));
336
+ RegistryManager.getInstance().refreshCache(effectiveInstanceUrl);
206
337
  }
207
- try {
208
- await connectionManager.initialize();
209
- connectionManager.getClient();
210
- if (oauthMode) {
211
- await connectionManager.ensureIntrospected();
338
+ if (config_1.LOG_FORMAT === 'verbose') {
339
+ try {
340
+ const instanceInfo = connectionManager.getInstanceInfo(effectiveInstanceUrl);
341
+ (0, logger_1.logInfo)(`Connection verified: ${instanceInfo.version} ${instanceInfo.tier}`);
212
342
  }
213
- const instanceInfo = connectionManager.getInstanceInfo();
214
- if (config_1.LOG_FORMAT === "verbose") {
215
- (0, logger_1.logInfo)(`Connection initialized: ${instanceInfo.version} ${instanceInfo.tier}`);
343
+ catch {
344
+ (0, logger_1.logDebug)('Connection verified but instance info not yet available', {
345
+ instanceUrl: effectiveInstanceUrl,
346
+ });
216
347
  }
217
- const { RegistryManager } = await Promise.resolve().then(() => __importStar(require("./registry-manager")));
218
- RegistryManager.getInstance().refreshCache();
219
348
  }
220
- catch (initError) {
221
- (0, logger_1.logError)(`Connection initialization failed: ${initError instanceof Error ? initError.message : String(initError)}`);
222
- throw new Error("Bad Request: Server not initialized", { cause: initError });
349
+ }
350
+ catch (initError) {
351
+ if (!bootstrapComplete) {
352
+ const errorCategory = initError instanceof Error ? (0, error_handler_1.classifyError)(initError) : 'permanent';
353
+ if (initError instanceof Error) {
354
+ if (!timedOut || errorCategory === 'auth' || errorCategory === 'permanent') {
355
+ healthMonitor.reportError(effectiveInstanceUrl, initError);
356
+ }
357
+ }
358
+ (0, logger_1.logError)(`Connection initialization failed: ${initError instanceof Error ? initError.message : String(initError)}`, { instanceUrl: effectiveInstanceUrl });
359
+ const action = request.params.arguments && typeof request.params.arguments.action === 'string'
360
+ ? request.params.arguments.action
361
+ : 'unknown';
362
+ const monitorState = healthMonitor.getState(effectiveInstanceUrl);
363
+ let derivedState;
364
+ if (monitorState === 'connecting' || monitorState === 'failed') {
365
+ derivedState = monitorState;
366
+ }
367
+ else if (errorCategory === 'auth' || errorCategory === 'permanent') {
368
+ derivedState = 'failed';
369
+ }
370
+ else {
371
+ derivedState = 'disconnected';
372
+ }
373
+ const connError = (0, error_handler_1.createConnectionFailedError)(toolName, action, effectiveInstanceUrl, derivedState);
374
+ if (!timedOut) {
375
+ recordEarlyReturnError(toolName, action, connError.message);
376
+ }
377
+ return {
378
+ content: [{ type: 'text', text: JSON.stringify(connError, null, 2) }],
379
+ isError: true,
380
+ };
223
381
  }
382
+ throw initError;
224
383
  }
225
- const toolName = request.params.name;
226
384
  const toolArgs = request.params.arguments;
227
- const action = toolArgs && typeof toolArgs.action === "string" ? toolArgs.action : undefined;
228
- if (config_1.LOG_FORMAT === "condensed") {
385
+ const action = toolArgs && typeof toolArgs.action === 'string' ? toolArgs.action : undefined;
386
+ if (config_1.LOG_FORMAT === 'condensed') {
229
387
  const requestTracker = (0, index_1.getRequestTracker)();
230
388
  requestTracker.setToolForCurrentRequest(toolName, action);
231
- const { getContextManager } = await Promise.resolve().then(() => __importStar(require("./entities/context/context-manager")));
389
+ const { getContextManager } = await Promise.resolve().then(() => __importStar(require('./entities/context/context-manager')));
232
390
  const contextManager = getContextManager();
233
391
  const sessionContext = contextManager.getContext();
234
392
  if (sessionContext.scope?.path) {
@@ -245,34 +403,43 @@ async function setupHandlers(server) {
245
403
  }
246
404
  }
247
405
  try {
248
- const { RegistryManager } = await Promise.resolve().then(() => __importStar(require("./registry-manager")));
406
+ const { RegistryManager } = await Promise.resolve().then(() => __importStar(require('./registry-manager')));
249
407
  const registryManager = RegistryManager.getInstance();
250
- if (!registryManager.hasToolHandler(toolName)) {
408
+ if (!registryManager.hasToolHandler(toolName, effectiveInstanceUrl)) {
251
409
  throw new Error(`Tool '${toolName}' is not available or has been filtered out`);
252
410
  }
253
- if (config_1.LOG_FORMAT === "verbose") {
411
+ if (config_1.LOG_FORMAT === 'verbose') {
254
412
  (0, logger_1.logInfo)(`Executing tool: ${toolName}`);
255
413
  }
256
- const { isOAuthEnabled, getTokenContext } = await Promise.resolve().then(() => __importStar(require("./oauth/index")));
414
+ const { isOAuthEnabled, getTokenContext } = await Promise.resolve().then(() => __importStar(require('./oauth/index')));
257
415
  if (isOAuthEnabled()) {
258
416
  const context = getTokenContext();
259
- (0, logger_1.logDebug)("OAuth context check before tool execution", {
417
+ (0, logger_1.logDebug)('OAuth context check before tool execution', {
260
418
  hasContext: !!context,
261
419
  hasToken: !!context?.gitlabToken,
262
420
  tool: toolName,
263
421
  });
264
422
  }
265
- const result = await registryManager.executeTool(toolName, request.params.arguments);
423
+ const result = await registryManager.executeTool(toolName, request.params.arguments, effectiveInstanceUrl);
424
+ if (!timedOut) {
425
+ healthMonitor.reportSuccess(effectiveInstanceUrl);
426
+ }
266
427
  return {
267
428
  content: [
268
429
  {
269
- type: "text",
430
+ type: 'text',
270
431
  text: JSON.stringify(result, null, 2),
271
432
  },
272
433
  ],
273
434
  };
274
435
  }
275
436
  catch (error) {
437
+ if (!timedOut && error instanceof Error) {
438
+ const category = (0, error_handler_1.classifyError)(error);
439
+ if (category === 'transient' || category === 'auth') {
440
+ healthMonitor.reportError(effectiveInstanceUrl, error);
441
+ }
442
+ }
276
443
  const errorMessage = error instanceof Error ? error.message : String(error);
277
444
  throw new Error(`Failed to execute tool '${toolName}': ${errorMessage}`, { cause: error });
278
445
  }
@@ -281,16 +448,21 @@ async function setupHandlers(server) {
281
448
  const result = await Promise.race([handlerWork(), timeoutPromise]);
282
449
  if (result === HANDLER_TIMEOUT_SYMBOL) {
283
450
  const toolName = request.params.name;
284
- const action = request.params.arguments && typeof request.params.arguments.action === "string"
451
+ const action = request.params.arguments && typeof request.params.arguments.action === 'string'
285
452
  ? request.params.arguments.action
286
- : "unknown";
453
+ : 'unknown';
287
454
  const retryable = isIdempotentOperation(toolName);
288
455
  const timeoutError = (0, error_handler_1.createTimeoutError)(toolName, action, config_1.HANDLER_TIMEOUT_MS, retryable);
289
456
  (0, logger_1.logError)(`Handler timeout: tool '${toolName}' timed out after ${config_1.HANDLER_TIMEOUT_MS}ms`);
457
+ if (bootstrapStarted && !bootstrapComplete) {
458
+ HealthMonitor_1.HealthMonitor.getInstance().reportError(requestInstanceUrl, new Error(`Handler timed out after ${config_1.HANDLER_TIMEOUT_MS}ms — bootstrap did not complete`));
459
+ ConnectionManager_1.ConnectionManager.getInstance().clearInflight(requestInstanceUrl);
460
+ }
461
+ recordEarlyReturnError(toolName, action, timeoutError.message);
290
462
  return {
291
463
  content: [
292
464
  {
293
- type: "text",
465
+ type: 'text',
294
466
  text: JSON.stringify(timeoutError, null, 2),
295
467
  },
296
468
  ],
@@ -316,11 +488,11 @@ async function setupHandlers(server) {
316
488
  const toolArgs = request.params.arguments;
317
489
  const structuredError = toStructuredError(error, toolName, toolArgs);
318
490
  if (structuredError) {
319
- (0, logger_1.logDebug)("Returning structured error response", { structuredError });
491
+ (0, logger_1.logDebug)('Returning structured error response', { structuredError });
320
492
  return {
321
493
  content: [
322
494
  {
323
- type: "text",
495
+ type: 'text',
324
496
  text: JSON.stringify(structuredError, null, 2),
325
497
  },
326
498
  ],
@@ -331,7 +503,7 @@ async function setupHandlers(server) {
331
503
  return {
332
504
  content: [
333
505
  {
334
- type: "text",
506
+ type: 'text',
335
507
  text: JSON.stringify({ error: errorMessage }, null, 2),
336
508
  },
337
509
  ],
@@ -1 +1 @@
1
- {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/handlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/handlers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+KA,gDAGC;AAED,sCA8oBC;AAj0BD,iEAAmG;AACnG,oEAAiE;AACjE,4DAAyD;AACzD,qCAAmD;AACnD,qCAAgE;AAChE,yDAS+B;AAC/B,yCAAmD;AACnD,2CAA+F;AAC/F,qCAA2E;AAqB3E,SAAS,SAAS,CAAC,KAAc;IAC/B,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,QAAQ,IAAI,KAAK;QACjB,OAAQ,KAA6B,CAAC,MAAM,KAAK,QAAQ,CAC1D,CAAC;AACJ,CAAC;AAKD,SAAS,sBAAsB,CAAC,KAAc;IAC5C,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC,MAAM,CAAC;IACtB,CAAC;IAGD,MAAM,KAAK,GAAI,KAAqC,CAAC,KAAK,CAAC;IAC3D,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC,MAAM,CAAC;IACtB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAID,SAAS,sBAAsB,CAC7B,QAAgB,EAChB,MAA0B,EAC1B,YAAoB;IAEpB,MAAM,cAAc,GAAG,IAAA,yBAAiB,GAAE,CAAC;IAC3C,IAAI,mBAAU,KAAK,WAAW,EAAE,CAAC;QAC/B,cAAc,CAAC,wBAAwB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC1D,cAAc,CAAC,yBAAyB,CAAC,YAAY,CAAC,CAAC;IACzD,CAAC;IACD,MAAM,gBAAgB,GAAG,IAAA,2BAAmB,GAAE,CAAC;IAC/C,IAAI,gBAAgB,EAAE,CAAC;QACrB,MAAM,KAAK,GAAG,cAAc,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QACxD,IAAI,KAAK,EAAE,SAAS,EAAE,CAAC;YACrB,IAAA,4BAAoB,GAAE,CAAC,WAAW,CAAC,KAAK,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;AACH,CAAC;AAOD,SAAS,qBAAqB,CAAC,QAAgB;IAI7C,OAAO,CACL,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC;QAC9B,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC;QAC5B,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC;QAC3B,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC;QAChC,QAAQ,KAAK,gBAAgB,CAC9B,CAAC;AACJ,CAAC;AAMD,SAAS,iBAAiB,CACxB,KAAc,EACd,QAAgB,EAChB,QAAkC;IAGlC,IAAI,IAAA,qCAAqB,EAAC,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,KAAK,CAAC,eAAe,CAAC;IAC/B,CAAC;IAGD,MAAM,KAAK,GAAI,KAAqC,CAAC,KAAK,CAAC;IAC3D,IAAI,IAAA,qCAAqB,EAAC,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,KAAK,CAAC,eAAe,CAAC;IAC/B,CAAC;IAED,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAG3C,IAAI,MAAM,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;IAC3C,IAAI,CAAC,MAAM,IAAI,QAAQ,IAAI,OAAO,QAAQ,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/D,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;IAC3B,CAAC;IACD,MAAM,KAAK,SAAS,CAAC;IAOrB,IACE,KAAK,YAAY,0BAAkB;QACnC,CAAC,KAAK,YAAY,KAAK;YACrB,KAAK,CAAC,IAAI,KAAK,oBAAoB;YACnC,WAAW,IAAI,KAAK;YACpB,OAAQ,KAA4B,CAAC,SAAS,KAAK,QAAQ,CAAC,EAC9D,CAAC;QACD,MAAM,SAAS,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QAClD,OAAO,IAAA,kCAAkB,EAAC,QAAQ,EAAE,MAAM,EAAG,KAA4B,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAClG,CAAC;IACD,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,MAAM,SAAS,GAAG,IAAA,iCAAiB,EAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACnD,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACvB,MAAM,SAAS,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;YAClD,OAAO,IAAA,kCAAkB,EAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAGD,MAAM,MAAM,GAAG,IAAA,mCAAmB,EAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAClD,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAEzB,OAAO,IAAA,iCAAiB,EACtB,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,EAClD,QAAQ,EACR,MAAM,EACN,QAAQ,CACT,CAAC;AACJ,CAAC;AAID,IAAI,oBAAoB,GAAyB,IAAI,CAAC;AAEtD,IAAI,qBAAqB,GAAG,KAAK,CAAC;AAGlC,SAAgB,kBAAkB;IAChC,oBAAoB,GAAG,IAAI,CAAC;IAC5B,qBAAqB,GAAG,KAAK,CAAC;AAChC,CAAC;AAEM,KAAK,UAAU,aAAa,CAAC,MAAc;IAEhD,MAAM,EAAE,0BAA0B,EAAE,GAAG,wDAAa,eAAe,GAAC,CAAC;IAErE,IAAI,0BAA0B,EAAE,EAAE,CAAC;QAIjC,oBAAoB,KAAK,CAAC,KAAK,IAAI,EAAE;YACnC,IAAI,CAAC;gBACH,MAAM,aAAa,GAAG,6BAAa,CAAC,WAAW,EAAE,CAAC;gBAIlD,IAAI,CAAC,qBAAqB,EAAE,CAAC;oBAC3B,qBAAqB,GAAG,IAAI,CAAC;oBAC7B,MAAM,uCAAuC,GAAG,KAAK,EACnD,WAAmB,EACnB,IAAY,EACZ,EAAU,EACK,EAAE;wBACjB,MAAM,EAAE,eAAe,EAAE,GAAG,wDAAa,oBAAoB,GAAC,CAAC;wBAC/D,eAAe,CAAC,WAAW,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;wBAExD,MAAM,EAAE,iBAAiB,EAAE,GAAG,wDAAa,mBAAmB,GAAC,CAAC;wBAChE,MAAM,iBAAiB,EAAE,CAAC,yBAAyB,EAAE,CAAC;wBAEtD,IAAA,gBAAO,EAAC,iDAAiD,EAAE;4BACzD,WAAW;4BACX,IAAI;4BACJ,EAAE;yBACH,CAAC,CAAC;oBACL,CAAC,CAAC;oBAEF,aAAa,CAAC,aAAa,CAAC,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE;wBAIpD,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;4BAChB,uCAAuC,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,KAAK,CAClE,CAAC,KAAc,EAAE,EAAE;gCACjB,IAAA,gBAAO,EAAC,2DAA2D,EAAE;oCACnE,WAAW;oCACX,GAAG,EAAE,KAAc;iCACpB,CAAC,CAAC;4BACL,CAAC,CACF,CAAC;wBACJ,CAAC;oBACH,CAAC,CAAC,CAAC;gBACL,CAAC;gBAKD,MAAM,aAAa,CAAC,UAAU,EAAE,CAAC;gBACjC,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,EAAE,CAAC;gBACvC,IAAA,gBAAO,EAAC,uCAAuC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;gBAK5D,IAAI,CAAC;oBACH,MAAM,EAAE,eAAe,EAAE,GAAG,wDAAa,oBAAoB,GAAC,CAAC;oBAC/D,eAAe,CAAC,WAAW,EAAE,CAAC,YAAY,EAAE,CAAC;gBAC/C,CAAC;gBAAC,OAAO,UAAU,EAAE,CAAC;oBACpB,IAAA,gBAAO,EAAC,uDAAuD,EAAE;wBAC/D,GAAG,EAAE,UAAmB;qBACzB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAEf,oBAAoB,GAAG,IAAI,CAAC;gBAC5B,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC,CAAC,EAAE,CAAC;QACL,MAAM,oBAAoB,CAAC;IAC7B,CAAC;SAAM,CAAC;QAEN,IAAA,gBAAO,EAAC,mEAAmE,CAAC,CAAC;IAC/E,CAAC;IAOD,MAAM,CAAC,iBAAiB,CAAC,iCAAsB,EAAE,KAAK,IAAI,EAAE;QAC1D,IAAA,gBAAO,EAAC,2BAA2B,CAAC,CAAC;QAGrC,MAAM,EAAE,eAAe,EAAE,GAAG,wDAAa,oBAAoB,GAAC,CAAC;QAC/D,MAAM,eAAe,GAAG,eAAe,CAAC,WAAW,EAAE,CAAC;QACtD,MAAM,KAAK,GAAG,eAAe,CAAC,qBAAqB,EAAE,CAAC;QAEtD,IAAA,gBAAO,EAAC,sBAAsB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QAG7D,SAAS,WAAW,CAClB,MAAiD,EACjD,UAAuB;YAEvB,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;gBAAE,OAAO,MAAM,CAAC;YAGzD,UAAU,KAAK,MAAoB,CAAC;YAGpC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1B,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,UAAU,CAAuB,CAAC,CAAC;YACnF,CAAC;YAGD,IAAI,MAAM,CAAC,IAAI,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACnD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;gBACzD,MAAM,kBAAkB,GAAG,UAAU,CAAC,UAAU,EAAE,CAAC,OAAO,CAAC,CAAC;gBAE5D,IAAI,kBAAkB,EAAE,CAAC;oBAEvB,MAAM,WAAW,GAAG,WAAW,CAAC,kBAAkB,EAAE,UAAU,CAAuB,CAAC;oBAEtF,MAAM,gBAAgB,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;oBACvC,OAAO,gBAAgB,CAAC,IAAI,CAAC;oBAC7B,OAAO,EAAE,GAAG,WAAW,EAAE,GAAG,gBAAgB,EAAE,CAAC;gBACjD,CAAC;gBAED,MAAM,gBAAgB,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;gBACvC,OAAO,gBAAgB,CAAC,IAAI,CAAC;gBAC7B,OAAO,gBAAgB,CAAC;YAC1B,CAAC;YAGD,MAAM,MAAM,GAAuB,EAAE,CAAC;YACtC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAClD,IAAI,GAAG,KAAK,YAAY,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;oBAExE,MAAM,kBAAkB,GAAuC,EAAE,CAAC;oBAClE,KAAK,MAAM,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAC/C,KAA2C,CAC5C,EAAE,CAAC;wBACF,kBAAkB,CAAC,OAAO,CAAC,GAAG,WAAW,CAAC,SAAS,EAAE,UAAU,CAAuB,CAAC;oBACzF,CAAC;oBACD,MAAM,CAAC,GAAG,CAAC,GAAG,kBAAkB,CAAC;gBACnC,CAAC;qBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;oBAChF,MAAM,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,KAA2B,EAAE,UAAU,CAAC,CAAC;gBACrE,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;gBACtB,CAAC;YACH,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QAGD,MAAM,aAAa,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACvC,IAAI,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;YAGnC,IAAI,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;gBACnD,WAAW,GAAG,EAAE,GAAG,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;YACnD,CAAC;YAGD,IAAI,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;gBACnD,MAAM,QAAQ,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;gBAE1C,IAAI,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACzE,WAAW,GAAG,QAAQ,CAAC;gBACzB,CAAC;YACH,CAAC;YAGD,IAAI,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,SAAS,IAAI,WAAW,EAAE,CAAC;gBAC/E,MAAM,aAAa,GAAG,EAAE,GAAG,WAAW,EAA6B,CAAC;gBACpE,OAAO,aAAa,CAAC,OAAO,CAAC;gBAC7B,WAAW,GAAG,aAAa,CAAC;YAC9B,CAAC;YAED,OAAO,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,CAAC;QAClC,CAAC,CAAC,CAAC;QAEH,OAAO;YACL,KAAK,EAAE,aAAa;SACrB,CAAC;IACJ,CAAC,CAAC,CAAC;IAMH,MAAM,CAAC,iBAAiB,CAAC,gCAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAIhE,MAAM,EAAE,0BAA0B,EAAE,aAAa,EAAE,cAAc,EAAE,GACjE,wDAAa,eAAe,GAAC,CAAC;QAUhC,MAAM,cAAc,GAAG,cAAc,EAAE;YACrC,CAAC,CAAC,CAAC,aAAa,EAAE,IAAI,wBAAe,CAAC;YACtC,CAAC,CAAC,CAAC,qCAAiB,CAAC,WAAW,EAAE,CAAC,qBAAqB,EAAE,IAAI,wBAAe,CAAC,CAAC;QAEjF,MAAM,kBAAkB,GAAG,IAAA,0BAAoB,EAAC,cAAc,CAAC,CAAC;QAIhE,IAAI,QAAQ,GAAG,KAAK,CAAC;QAKrB,IAAI,gBAAgB,GAAG,KAAK,CAAC;QAC7B,IAAI,iBAAiB,GAAG,KAAK,CAAC;QAG9B,MAAM,sBAAsB,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC;QACzD,IAAI,gBAA2D,CAAC;QAChE,MAAM,cAAc,GAAG,IAAI,OAAO,CAAgC,CAAC,OAAO,EAAE,EAAE;YAC5E,gBAAgB,GAAG,UAAU,CAAC,GAAG,EAAE;gBACjC,QAAQ,GAAG,IAAI,CAAC;gBAChB,OAAO,CAAC,sBAAsB,CAAC,CAAC;YAClC,CAAC,EAAE,2BAAkB,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;QAGH,MAAM,WAAW,GAAG,KAAK,IAGtB,EAAE;YACH,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;YAC5C,CAAC;YAID,IAAI,mBAAU,KAAK,SAAS,EAAE,CAAC;gBAC7B,IAAA,gBAAO,EAAC,gBAAgB,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;YACjD,CAAC;YAGD,MAAM,EAAE,cAAc,EAAE,0BAA0B,EAAE,GAAG,wDAAa,eAAe,GAAC,CAAC;YAErF,IAAI,CAAC,0BAA0B,EAAE,EAAE,CAAC;gBAElC,MAAM,IAAI,KAAK,CACb,kEAAkE;oBAChE,8EAA8E;oBAC9E,gCAAgC;oBAChC,qEAAqE,CACxE,CAAC;YACJ,CAAC;YAKD,MAAM,oBAAoB,GAAG,kBAAkB,CAAC;YAChD,MAAM,iBAAiB,GAAG,qCAAiB,CAAC,WAAW,EAAE,CAAC;YAK1D,MAAM,aAAa,GAAG,6BAAa,CAAC,WAAW,EAAE,CAAC;YAClD,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;YAGrC,IACE,CAAC,aAAa,CAAC,mBAAmB,CAAC,oBAAoB,CAAC;gBACxD,QAAQ,KAAK,gBAAgB,EAC7B,CAAC;gBACD,MAAM,MAAM,GACV,OAAO,CAAC,MAAM,CAAC,SAAS,IAAI,OAAO,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,KAAK,QAAQ;oBAC7E,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM;oBACjC,CAAC,CAAC,SAAS,CAAC;gBAGhB,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;gBAC9D,IAAI,eAAyD,CAAC;gBAC9D,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;oBAC1B,eAAe,GAAG,QAAQ,CAAC;gBAC7B,CAAC;qBAAM,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;oBACrC,eAAe,GAAG,YAAY,CAAC;gBACjC,CAAC;qBAAM,CAAC;oBACN,eAAe,GAAG,cAAc,CAAC;gBACnC,CAAC;gBACD,MAAM,SAAS,GAAG,IAAA,2CAA2B,EAC3C,QAAQ,EACR,MAAM,EACN,oBAAoB,EACpB,eAAe,CAChB,CAAC;gBAEF,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;gBAE5D,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;oBACrE,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YAOD,IACE,QAAQ,KAAK,gBAAgB;gBAC7B,CAAC,aAAa,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,EACxD,CAAC;gBAED,IAAI,mBAAU,KAAK,WAAW,EAAE,CAAC;oBAC/B,MAAM,MAAM,GACV,OAAO,CAAC,MAAM,CAAC,SAAS,IAAI,OAAO,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,KAAK,QAAQ;wBAC7E,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM;wBACjC,CAAC,CAAC,SAAS,CAAC;oBAChB,MAAM,cAAc,GAAG,IAAA,yBAAiB,GAAE,CAAC;oBAC3C,cAAc,CAAC,wBAAwB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;gBAC5D,CAAC;gBAED,MAAM,EAAE,eAAe,EAAE,GAAG,wDAAa,oBAAoB,GAAC,CAAC;gBAC/D,MAAM,eAAe,GAAG,eAAe,CAAC,WAAW,EAAE,CAAC;gBAKtD,IAAI,eAAe,CAAC,cAAc,CAAC,QAAQ,EAAE,oBAAoB,CAAC,EAAE,CAAC;oBACnE,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,WAAW,CAC9C,QAAQ,EACR,OAAO,CAAC,MAAM,CAAC,SAAS,EACxB,oBAAoB,CACrB,CAAC;oBACF,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;qBACnE,CAAC;gBACJ,CAAC;YACH,CAAC;YAGD,gBAAgB,GAAG,IAAI,CAAC;YACxB,MAAM,SAAS,GAAG,cAAc,EAAE,CAAC;YAEnC,IAAI,CAAC;gBAEH,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,oBAAoB,CAAC,EAAE,CAAC;oBACzD,IAAI,mBAAU,KAAK,SAAS,EAAE,CAAC;wBAC7B,IAAA,gBAAO,EAAC,yDAAyD,CAAC,CAAC;oBACrE,CAAC;oBACD,MAAM,iBAAiB,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;gBAC3D,CAAC;gBAGD,iBAAiB,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;gBAGlD,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,iBAAiB,CAAC,kBAAkB,CAAC,oBAAoB,CAAC,CAAC;gBACnE,CAAC;gBAKD,iBAAiB,GAAG,IAAI,CAAC;gBAMzB,CAAC;oBACC,MAAM,EAAE,eAAe,EAAE,GAAG,wDAAa,oBAAoB,GAAC,CAAC;oBAC/D,eAAe,CAAC,WAAW,EAAE,CAAC,YAAY,CAAC,oBAAoB,CAAC,CAAC;gBACnE,CAAC;gBAGD,IAAI,mBAAU,KAAK,SAAS,EAAE,CAAC;oBAC7B,IAAI,CAAC;wBACH,MAAM,YAAY,GAAG,iBAAiB,CAAC,eAAe,CAAC,oBAAoB,CAAC,CAAC;wBAC7E,IAAA,gBAAO,EAAC,wBAAwB,YAAY,CAAC,OAAO,IAAI,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;oBAC/E,CAAC;oBAAC,MAAM,CAAC;wBACP,IAAA,iBAAQ,EAAC,yDAAyD,EAAE;4BAClE,WAAW,EAAE,oBAAoB;yBAClC,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,SAAS,EAAE,CAAC;gBAInB,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBACvB,MAAM,aAAa,GAAG,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,IAAA,6BAAa,EAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;oBAI1F,IAAI,SAAS,YAAY,KAAK,EAAE,CAAC;wBAC/B,IAAI,CAAC,QAAQ,IAAI,aAAa,KAAK,MAAM,IAAI,aAAa,KAAK,WAAW,EAAE,CAAC;4BAC3E,aAAa,CAAC,WAAW,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC;wBAC7D,CAAC;oBACH,CAAC;oBACD,IAAA,iBAAQ,EACN,qCAAqC,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,EACzG,EAAE,WAAW,EAAE,oBAAoB,EAAE,CACtC,CAAC;oBAGF,MAAM,MAAM,GACV,OAAO,CAAC,MAAM,CAAC,SAAS,IAAI,OAAO,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,KAAK,QAAQ;wBAC7E,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM;wBACjC,CAAC,CAAC,SAAS,CAAC;oBAKhB,MAAM,YAAY,GAAG,aAAa,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC;oBAKlE,IAAI,YAAsD,CAAC;oBAC3D,IAAI,YAAY,KAAK,YAAY,IAAI,YAAY,KAAK,QAAQ,EAAE,CAAC;wBAC/D,YAAY,GAAG,YAAY,CAAC;oBAC9B,CAAC;yBAAM,IAAI,aAAa,KAAK,MAAM,IAAI,aAAa,KAAK,WAAW,EAAE,CAAC;wBACrE,YAAY,GAAG,QAAQ,CAAC;oBAC1B,CAAC;yBAAM,CAAC;wBACN,YAAY,GAAG,cAAc,CAAC;oBAChC,CAAC;oBACD,MAAM,SAAS,GAAG,IAAA,2CAA2B,EAC3C,QAAQ,EACR,MAAM,EACN,oBAAoB,EACpB,YAAY,CACb,CAAC;oBAGF,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;oBAC9D,CAAC;oBAED,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;wBACrE,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAKD,MAAM,SAAS,CAAC;YAClB,CAAC;YAGD,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC;YAC1C,MAAM,MAAM,GAAG,QAAQ,IAAI,OAAO,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;YAG7F,IAAI,mBAAU,KAAK,WAAW,EAAE,CAAC;gBAC/B,MAAM,cAAc,GAAG,IAAA,yBAAiB,GAAE,CAAC;gBAC3C,cAAc,CAAC,wBAAwB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;gBAG1D,MAAM,EAAE,iBAAiB,EAAE,GAAG,wDAAa,oCAAoC,GAAC,CAAC;gBACjF,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;gBAC3C,MAAM,cAAc,GAAG,cAAc,CAAC,UAAU,EAAE,CAAC;gBACnD,IAAI,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;oBAC/B,cAAc,CAAC,2BAA2B,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACxE,CAAC;gBACD,cAAc,CAAC,4BAA4B,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;gBAGrE,MAAM,gBAAgB,GAAG,IAAA,2BAAmB,GAAE,CAAC;gBAC/C,IAAI,gBAAgB,EAAE,CAAC;oBAErB,MAAM,KAAK,GAAG,cAAc,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;oBACxD,IAAI,KAAK,EAAE,SAAS,EAAE,CAAC;wBACrB,MAAM,iBAAiB,GAAG,IAAA,4BAAoB,GAAE,CAAC;wBACjD,iBAAiB,CAAC,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;oBACpD,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,CAAC;gBAEH,MAAM,EAAE,eAAe,EAAE,GAAG,wDAAa,oBAAoB,GAAC,CAAC;gBAC/D,MAAM,eAAe,GAAG,eAAe,CAAC,WAAW,EAAE,CAAC;gBAQtD,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,QAAQ,EAAE,oBAAoB,CAAC,EAAE,CAAC;oBACpE,MAAM,IAAI,KAAK,CAAC,SAAS,QAAQ,6CAA6C,CAAC,CAAC;gBAClF,CAAC;gBAED,IAAI,mBAAU,KAAK,SAAS,EAAE,CAAC;oBAC7B,IAAA,gBAAO,EAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;gBACzC,CAAC;gBAGD,MAAM,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,wDAAa,eAAe,GAAC,CAAC;gBAC1E,IAAI,cAAc,EAAE,EAAE,CAAC;oBACrB,MAAM,OAAO,GAAG,eAAe,EAAE,CAAC;oBAClC,IAAA,iBAAQ,EAAC,2CAA2C,EAAE;wBACpD,UAAU,EAAE,CAAC,CAAC,OAAO;wBACrB,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,WAAW;wBAChC,IAAI,EAAE,QAAQ;qBACf,CAAC,CAAC;gBACL,CAAC;gBAGD,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,WAAW,CAC9C,QAAQ,EACR,OAAO,CAAC,MAAM,CAAC,SAAS,EACxB,oBAAoB,CACrB,CAAC;gBAIF,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,aAAa,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAAC;gBACpD,CAAC;gBAED,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;yBACtC;qBACF;iBACF,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAKf,IAAI,CAAC,QAAQ,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;oBACxC,MAAM,QAAQ,GAAG,IAAA,6BAAa,EAAC,KAAK,CAAC,CAAC;oBACtC,IAAI,QAAQ,KAAK,WAAW,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;wBACpD,aAAa,CAAC,WAAW,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;oBACzD,CAAC;gBACH,CAAC;gBAED,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAE5E,MAAM,IAAI,KAAK,CAAC,2BAA2B,QAAQ,MAAM,YAAY,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;YAC7F,CAAC;QACH,CAAC,CAAC;QAEF,IAAI,CAAC;YAMH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC;YAEnE,IAAI,MAAM,KAAK,sBAAsB,EAAE,CAAC;gBAEtC,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;gBACrC,MAAM,MAAM,GACV,OAAO,CAAC,MAAM,CAAC,SAAS,IAAI,OAAO,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,KAAK,QAAQ;oBAC7E,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM;oBACjC,CAAC,CAAC,SAAS,CAAC;gBAChB,MAAM,SAAS,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;gBAClD,MAAM,YAAY,GAAG,IAAA,kCAAkB,EAAC,QAAQ,EAAE,MAAM,EAAE,2BAAkB,EAAE,SAAS,CAAC,CAAC;gBAEzF,IAAA,iBAAQ,EAAC,0BAA0B,QAAQ,qBAAqB,2BAAkB,IAAI,CAAC,CAAC;gBAKxF,IAAI,gBAAgB,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBAK3C,6BAAa,CAAC,WAAW,EAAE,CAAC,WAAW,CACrC,kBAAkB,EAClB,IAAI,KAAK,CACP,2BAA2B,2BAAkB,iCAAiC,CAC/E,CACF,CAAC;oBACF,qCAAiB,CAAC,WAAW,EAAE,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;gBACpE,CAAC;gBAED,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;gBAE/D,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;yBAC5C;qBACF;oBACD,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtE,IAAA,iBAAQ,EAAC,0BAA0B,MAAM,EAAE,CAAC,CAAC;YAG7C,MAAM,UAAU,GAAG,IAAA,yBAAiB,GAAE,CAAC;YACvC,UAAU,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;YAG7C,MAAM,YAAY,GAAG,IAAA,2BAAmB,GAAE,CAAC;YAC3C,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;gBAChD,IAAI,KAAK,EAAE,SAAS,EAAE,CAAC;oBACrB,MAAM,WAAW,GAAG,IAAA,4BAAoB,GAAE,CAAC;oBAC3C,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;gBACnD,CAAC;YACH,CAAC;YAGD,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;YACrC,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC;YAC1C,MAAM,eAAe,GAAG,iBAAiB,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAErE,IAAI,eAAe,EAAE,CAAC;gBACpB,IAAA,iBAAQ,EAAC,qCAAqC,EAAE,EAAE,eAAe,EAAE,CAAC,CAAC;gBACrE,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;yBAC/C;qBACF;oBACD,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YAGD,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;qBACvD;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,gBAAgB,CAAC,CAAC;QACjC,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -2,8 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DEFAULT_HEADERS = void 0;
4
4
  exports.DEFAULT_HEADERS = {
5
- "User-Agent": "GitLab MCP Server",
6
- "Content-Type": "application/json",
7
- Accept: "application/json",
5
+ 'User-Agent': 'GitLab MCP Server',
6
+ 'Content-Type': 'application/json',
7
+ Accept: 'application/json',
8
8
  };
9
9
  //# sourceMappingURL=http-client.js.map