@spotlightjs/spotlight 4.7.2 → 4.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (610) hide show
  1. package/dist/_virtual/_commonjsHelpers.js +1 -3
  2. package/dist/_virtual/_commonjsHelpers.js.map +1 -1
  3. package/dist/_virtual/_sentry-release-injection-file.js +2 -2
  4. package/dist/_virtual/additionalItems.js +13 -0
  5. package/dist/_virtual/additionalItems.js.map +1 -0
  6. package/dist/_virtual/additionalProperties.js +13 -0
  7. package/dist/_virtual/additionalProperties.js.map +1 -0
  8. package/dist/_virtual/{cache.js → ajv.js} +4 -4
  9. package/dist/_virtual/ajv.js.map +1 -0
  10. package/dist/_virtual/{uri.all.js → allOf.js} +4 -4
  11. package/dist/_virtual/allOf.js.map +1 -0
  12. package/dist/_virtual/anyOf.js +13 -0
  13. package/dist/_virtual/anyOf.js.map +1 -0
  14. package/dist/_virtual/applicability.js +13 -0
  15. package/dist/_virtual/applicability.js.map +1 -0
  16. package/dist/_virtual/boolSchema.js +13 -0
  17. package/dist/_virtual/boolSchema.js.map +1 -0
  18. package/dist/_virtual/code.js +13 -0
  19. package/dist/_virtual/code.js.map +1 -0
  20. package/dist/_virtual/code2.js +13 -0
  21. package/dist/_virtual/code2.js.map +1 -0
  22. package/dist/_virtual/const.js +13 -0
  23. package/dist/_virtual/const.js.map +1 -0
  24. package/dist/_virtual/contains.js +13 -0
  25. package/dist/_virtual/contains.js.map +1 -0
  26. package/dist/_virtual/core.js +13 -0
  27. package/dist/_virtual/core.js.map +1 -0
  28. package/dist/_virtual/dataType.js +13 -0
  29. package/dist/_virtual/dataType.js.map +1 -0
  30. package/dist/_virtual/defaults.js +13 -0
  31. package/dist/_virtual/defaults.js.map +1 -0
  32. package/dist/_virtual/dependencies.js +13 -0
  33. package/dist/_virtual/dependencies.js.map +1 -0
  34. package/dist/_virtual/draft7.js +13 -0
  35. package/dist/_virtual/draft7.js.map +1 -0
  36. package/dist/_virtual/enum.js +13 -0
  37. package/dist/_virtual/enum.js.map +1 -0
  38. package/dist/_virtual/equal.js +13 -0
  39. package/dist/_virtual/equal.js.map +1 -0
  40. package/dist/_virtual/errors.js +13 -0
  41. package/dist/_virtual/errors.js.map +1 -0
  42. package/dist/_virtual/format.js +13 -0
  43. package/dist/_virtual/format.js.map +1 -0
  44. package/dist/_virtual/formats.js +13 -0
  45. package/dist/_virtual/formats.js.map +1 -0
  46. package/dist/_virtual/id.js +13 -0
  47. package/dist/_virtual/id.js.map +1 -0
  48. package/dist/_virtual/if.js +13 -0
  49. package/dist/_virtual/if.js.map +1 -0
  50. package/dist/_virtual/index.js +3 -3
  51. package/dist/_virtual/index10.js +13 -0
  52. package/dist/_virtual/index10.js.map +1 -0
  53. package/dist/_virtual/index11.js +13 -0
  54. package/dist/_virtual/index11.js.map +1 -0
  55. package/dist/_virtual/index2.js +13 -0
  56. package/dist/_virtual/index2.js.map +1 -0
  57. package/dist/_virtual/index3.js +13 -0
  58. package/dist/_virtual/index3.js.map +1 -0
  59. package/dist/_virtual/index4.js +13 -0
  60. package/dist/_virtual/index4.js.map +1 -0
  61. package/dist/_virtual/index5.js +13 -0
  62. package/dist/_virtual/index5.js.map +1 -0
  63. package/dist/_virtual/index6.js +13 -0
  64. package/dist/_virtual/index6.js.map +1 -0
  65. package/dist/_virtual/index7.js +13 -0
  66. package/dist/_virtual/index7.js.map +1 -0
  67. package/dist/_virtual/index8.js +13 -0
  68. package/dist/_virtual/index8.js.map +1 -0
  69. package/dist/_virtual/index9.js +13 -0
  70. package/dist/_virtual/index9.js.map +1 -0
  71. package/dist/_virtual/items.js +13 -0
  72. package/dist/_virtual/items.js.map +1 -0
  73. package/dist/_virtual/items2020.js +13 -0
  74. package/dist/_virtual/items2020.js.map +1 -0
  75. package/dist/_virtual/keyword.js +13 -0
  76. package/dist/_virtual/keyword.js.map +1 -0
  77. package/dist/_virtual/limit.js +13 -0
  78. package/dist/_virtual/limit.js.map +1 -0
  79. package/dist/_virtual/limitItems.js +13 -0
  80. package/dist/_virtual/limitItems.js.map +1 -0
  81. package/dist/_virtual/limitLength.js +13 -0
  82. package/dist/_virtual/limitLength.js.map +1 -0
  83. package/dist/_virtual/limitNumber.js +13 -0
  84. package/dist/_virtual/limitNumber.js.map +1 -0
  85. package/dist/_virtual/limitProperties.js +13 -0
  86. package/dist/_virtual/limitProperties.js.map +1 -0
  87. package/dist/_virtual/metadata.js +13 -0
  88. package/dist/_virtual/metadata.js.map +1 -0
  89. package/dist/_virtual/multipleOf.js +13 -0
  90. package/dist/_virtual/multipleOf.js.map +1 -0
  91. package/dist/_virtual/names.js +13 -0
  92. package/dist/_virtual/names.js.map +1 -0
  93. package/dist/_virtual/not.js +13 -0
  94. package/dist/_virtual/not.js.map +1 -0
  95. package/dist/_virtual/oneOf.js +13 -0
  96. package/dist/_virtual/oneOf.js.map +1 -0
  97. package/dist/_virtual/pattern.js +13 -0
  98. package/dist/_virtual/pattern.js.map +1 -0
  99. package/dist/_virtual/patternProperties.js +13 -0
  100. package/dist/_virtual/patternProperties.js.map +1 -0
  101. package/dist/_virtual/prefixItems.js +13 -0
  102. package/dist/_virtual/prefixItems.js.map +1 -0
  103. package/dist/_virtual/properties.js +13 -0
  104. package/dist/_virtual/properties.js.map +1 -0
  105. package/dist/_virtual/propertyNames.js +13 -0
  106. package/dist/_virtual/propertyNames.js.map +1 -0
  107. package/dist/_virtual/ref.js +13 -0
  108. package/dist/_virtual/ref.js.map +1 -0
  109. package/dist/_virtual/ref_error.js +13 -0
  110. package/dist/_virtual/ref_error.js.map +1 -0
  111. package/dist/_virtual/required.js +13 -0
  112. package/dist/_virtual/required.js.map +1 -0
  113. package/dist/_virtual/resolve.js +13 -0
  114. package/dist/_virtual/resolve.js.map +1 -0
  115. package/dist/_virtual/rules.js +13 -0
  116. package/dist/_virtual/rules.js.map +1 -0
  117. package/dist/_virtual/scope.js +13 -0
  118. package/dist/_virtual/scope.js.map +1 -0
  119. package/dist/_virtual/subschema.js +13 -0
  120. package/dist/_virtual/subschema.js.map +1 -0
  121. package/dist/_virtual/thenElse.js +13 -0
  122. package/dist/_virtual/thenElse.js.map +1 -0
  123. package/dist/_virtual/types.js +13 -0
  124. package/dist/_virtual/types.js.map +1 -0
  125. package/dist/_virtual/ucs2length.js +13 -0
  126. package/dist/_virtual/ucs2length.js.map +1 -0
  127. package/dist/_virtual/uniqueItems.js +13 -0
  128. package/dist/_virtual/uniqueItems.js.map +1 -0
  129. package/dist/_virtual/uri.js +13 -0
  130. package/dist/_virtual/uri.js.map +1 -0
  131. package/dist/_virtual/util.js +13 -0
  132. package/dist/_virtual/util.js.map +1 -0
  133. package/dist/_virtual/validation_error.js +13 -0
  134. package/dist/_virtual/validation_error.js.map +1 -0
  135. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/client/index.js +454 -0
  136. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/client/index.js.map +1 -0
  137. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/client.js +166 -0
  138. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/client.js.map +1 -0
  139. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/helpers.js +44 -0
  140. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/helpers.js.map +1 -0
  141. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/interfaces.js +15 -0
  142. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/interfaces.js.map +1 -0
  143. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/mcp-server.js +25 -0
  144. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/mcp-server.js.map +1 -0
  145. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/server.js +82 -0
  146. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/experimental/tasks/server.js.map +1 -0
  147. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/server/completable.js +27 -0
  148. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/server/completable.js.map +1 -0
  149. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js +400 -0
  150. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js.map +1 -0
  151. package/dist/node_modules/.pnpm/{@modelcontextprotocol_sdk@1.16.0 → @modelcontextprotocol_sdk@1.24.3_zod@4.1.13}/node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.js +284 -97
  152. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.js.map +1 -0
  153. package/dist/node_modules/.pnpm/{@modelcontextprotocol_sdk@1.16.0 → @modelcontextprotocol_sdk@1.24.3_zod@4.1.13}/node_modules/@modelcontextprotocol/sdk/dist/esm/server/stdio.js +1 -1
  154. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/server/stdio.js.map +1 -0
  155. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-compat.js +176 -0
  156. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-compat.js.map +1 -0
  157. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-json-schema-compat.js +59 -0
  158. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/server/zod-json-schema-compat.js.map +1 -0
  159. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js +968 -0
  160. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js.map +1 -0
  161. package/dist/node_modules/.pnpm/{@modelcontextprotocol_sdk@1.16.0 → @modelcontextprotocol_sdk@1.24.3_zod@4.1.13}/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/stdio.js +1 -1
  162. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/stdio.js.map +1 -0
  163. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/toolNameValidation.js +70 -0
  164. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/toolNameValidation.js.map +1 -0
  165. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/types.js +1623 -0
  166. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/types.js.map +1 -0
  167. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/validation/ajv-provider.js +79 -0
  168. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/validation/ajv-provider.js.map +1 -0
  169. package/dist/node_modules/.pnpm/ajv-formats@3.0.1_ajv@8.17.1/node_modules/ajv-formats/dist/formats.js +209 -0
  170. package/dist/node_modules/.pnpm/ajv-formats@3.0.1_ajv@8.17.1/node_modules/ajv-formats/dist/formats.js.map +1 -0
  171. package/dist/node_modules/.pnpm/ajv-formats@3.0.1_ajv@8.17.1/node_modules/ajv-formats/dist/index.js +59 -0
  172. package/dist/node_modules/.pnpm/ajv-formats@3.0.1_ajv@8.17.1/node_modules/ajv-formats/dist/index.js.map +1 -0
  173. package/dist/node_modules/.pnpm/ajv-formats@3.0.1_ajv@8.17.1/node_modules/ajv-formats/dist/limit.js +81 -0
  174. package/dist/node_modules/.pnpm/ajv-formats@3.0.1_ajv@8.17.1/node_modules/ajv-formats/dist/limit.js.map +1 -0
  175. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/ajv.js +95 -0
  176. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/ajv.js.map +1 -0
  177. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/codegen/code.js +160 -0
  178. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/codegen/code.js.map +1 -0
  179. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/codegen/index.js +730 -0
  180. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/codegen/index.js.map +1 -0
  181. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/codegen/scope.js +153 -0
  182. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/codegen/scope.js.map +1 -0
  183. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/errors.js +134 -0
  184. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/errors.js.map +1 -0
  185. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/index.js +243 -0
  186. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/index.js.map +1 -0
  187. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/names.js +45 -0
  188. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/names.js.map +1 -0
  189. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/ref_error.js +23 -0
  190. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/ref_error.js.map +1 -0
  191. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/resolve.js +167 -0
  192. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/resolve.js.map +1 -0
  193. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/rules.js +38 -0
  194. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/rules.js.map +1 -0
  195. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/util.js +178 -0
  196. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/util.js.map +1 -0
  197. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/validate/applicability.js +30 -0
  198. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/validate/applicability.js.map +1 -0
  199. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/validate/boolSchema.js +64 -0
  200. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/validate/boolSchema.js.map +1 -0
  201. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/validate/dataType.js +201 -0
  202. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/validate/dataType.js.map +1 -0
  203. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/validate/defaults.js +48 -0
  204. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/validate/defaults.js.map +1 -0
  205. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/validate/index.js +536 -0
  206. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/validate/index.js.map +1 -0
  207. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/validate/keyword.js +133 -0
  208. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/validate/keyword.js.map +1 -0
  209. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/validate/subschema.js +94 -0
  210. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/compile/validate/subschema.js.map +1 -0
  211. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/core.js +638 -0
  212. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/core.js.map +1 -0
  213. package/dist/node_modules/.pnpm/{ajv@6.12.6/node_modules/ajv/lib → ajv@8.17.1/node_modules/ajv/dist}/refs/data.json.js +4 -7
  214. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/refs/data.json.js.map +1 -0
  215. package/dist/node_modules/.pnpm/{ajv@6.12.6/node_modules/ajv/lib → ajv@8.17.1/node_modules/ajv/dist}/refs/json-schema-draft-07.json.js +3 -3
  216. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/runtime/equal.js +16 -0
  217. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/runtime/equal.js.map +1 -0
  218. package/dist/node_modules/.pnpm/{ajv@6.12.6/node_modules/ajv/lib/compile → ajv@8.17.1/node_modules/ajv/dist/runtime}/ucs2length.js +13 -8
  219. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/runtime/ucs2length.js.map +1 -0
  220. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/runtime/uri.js +16 -0
  221. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/runtime/uri.js.map +1 -0
  222. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/runtime/validation_error.js +20 -0
  223. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/runtime/validation_error.js.map +1 -0
  224. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js +61 -0
  225. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js.map +1 -0
  226. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js +118 -0
  227. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js.map +1 -0
  228. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/allOf.js +33 -0
  229. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/allOf.js.map +1 -0
  230. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/anyOf.js +23 -0
  231. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/anyOf.js.map +1 -0
  232. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/contains.js +102 -0
  233. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/contains.js.map +1 -0
  234. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/dependencies.js +106 -0
  235. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/dependencies.js.map +1 -0
  236. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/if.js +77 -0
  237. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/if.js.map +1 -0
  238. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/index.js +84 -0
  239. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/index.js.map +1 -0
  240. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/items.js +67 -0
  241. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/items.js.map +1 -0
  242. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/items2020.js +47 -0
  243. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/items2020.js.map +1 -0
  244. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/not.js +37 -0
  245. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/not.js.map +1 -0
  246. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/oneOf.js +66 -0
  247. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/oneOf.js.map +1 -0
  248. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js +84 -0
  249. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js.map +1 -0
  250. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js +23 -0
  251. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js.map +1 -0
  252. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/properties.js +70 -0
  253. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/properties.js.map +1 -0
  254. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js +51 -0
  255. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js.map +1 -0
  256. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/thenElse.js +24 -0
  257. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/applicator/thenElse.js.map +1 -0
  258. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/code.js +146 -0
  259. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/code.js.map +1 -0
  260. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/core/id.js +19 -0
  261. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/core/id.js.map +1 -0
  262. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/core/index.js +29 -0
  263. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/core/index.js.map +1 -0
  264. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/core/ref.js +138 -0
  265. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/core/ref.js.map +1 -0
  266. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/discriminator/index.js +119 -0
  267. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/discriminator/index.js.map +1 -0
  268. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/discriminator/types.js +21 -0
  269. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/discriminator/types.js.map +1 -0
  270. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/draft7.js +36 -0
  271. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/draft7.js.map +1 -0
  272. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/format/format.js +96 -0
  273. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/format/format.js.map +1 -0
  274. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/format/index.js +17 -0
  275. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/format/index.js.map +1 -0
  276. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/metadata.js +30 -0
  277. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/metadata.js.map +1 -0
  278. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/validation/const.js +39 -0
  279. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/validation/const.js.map +1 -0
  280. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/validation/enum.js +59 -0
  281. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/validation/enum.js.map +1 -0
  282. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/validation/index.js +62 -0
  283. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/validation/index.js.map +1 -0
  284. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/validation/limitItems.js +35 -0
  285. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/validation/limitItems.js.map +1 -0
  286. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/validation/limitLength.js +42 -0
  287. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/validation/limitLength.js.map +1 -0
  288. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/validation/limitNumber.js +38 -0
  289. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/validation/limitNumber.js.map +1 -0
  290. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/validation/limitProperties.js +35 -0
  291. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/validation/limitProperties.js.map +1 -0
  292. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/validation/multipleOf.js +34 -0
  293. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/validation/multipleOf.js.map +1 -0
  294. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/validation/pattern.js +36 -0
  295. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/validation/pattern.js.map +1 -0
  296. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/validation/required.js +92 -0
  297. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/validation/required.js.map +1 -0
  298. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js +79 -0
  299. package/dist/node_modules/.pnpm/ajv@8.17.1/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js.map +1 -0
  300. package/dist/node_modules/.pnpm/fast-uri@3.0.2/node_modules/fast-uri/index.js +267 -0
  301. package/dist/node_modules/.pnpm/fast-uri@3.0.2/node_modules/fast-uri/index.js.map +1 -0
  302. package/dist/node_modules/.pnpm/fast-uri@3.0.2/node_modules/fast-uri/lib/schemes.js +152 -0
  303. package/dist/node_modules/.pnpm/fast-uri@3.0.2/node_modules/fast-uri/lib/schemes.js.map +1 -0
  304. package/dist/node_modules/.pnpm/fast-uri@3.0.2/node_modules/fast-uri/lib/scopedChars.js +40 -0
  305. package/dist/node_modules/.pnpm/fast-uri@3.0.2/node_modules/fast-uri/lib/scopedChars.js.map +1 -0
  306. package/dist/node_modules/.pnpm/fast-uri@3.0.2/node_modules/fast-uri/lib/utils.js +236 -0
  307. package/dist/node_modules/.pnpm/fast-uri@3.0.2/node_modules/fast-uri/lib/utils.js.map +1 -0
  308. package/dist/node_modules/.pnpm/{json-schema-traverse@0.4.1 → json-schema-traverse@1.0.0}/node_modules/json-schema-traverse/index.js +7 -3
  309. package/dist/node_modules/.pnpm/json-schema-traverse@1.0.0/node_modules/json-schema-traverse/index.js.map +1 -0
  310. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/Options.js.map +1 -0
  311. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/Refs.js.map +1 -0
  312. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/errorMessages.js.map +1 -0
  313. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/getRelativePath.js.map +1 -0
  314. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parseDef.js.map +1 -0
  315. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/any.js.map +1 -0
  316. package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/array.js +2 -2
  317. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/array.js.map +1 -0
  318. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/bigint.js.map +1 -0
  319. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/boolean.js.map +1 -0
  320. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/branded.js.map +1 -0
  321. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/catch.js.map +1 -0
  322. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/date.js.map +1 -0
  323. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/default.js.map +1 -0
  324. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/effects.js.map +1 -0
  325. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/enum.js.map +1 -0
  326. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/intersection.js.map +1 -0
  327. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/literal.js.map +1 -0
  328. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/map.js.map +1 -0
  329. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/nativeEnum.js.map +1 -0
  330. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/never.js.map +1 -0
  331. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/null.js.map +1 -0
  332. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/nullable.js.map +1 -0
  333. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/number.js.map +1 -0
  334. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/object.js.map +1 -0
  335. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/optional.js.map +1 -0
  336. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/pipeline.js.map +1 -0
  337. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/promise.js.map +1 -0
  338. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/readonly.js.map +1 -0
  339. package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/record.js +2 -2
  340. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/record.js.map +1 -0
  341. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/set.js.map +1 -0
  342. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/string.js.map +1 -0
  343. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/tuple.js.map +1 -0
  344. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/undefined.js.map +1 -0
  345. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/union.js.map +1 -0
  346. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/parsers/unknown.js.map +1 -0
  347. package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/selectParser.js +2 -2
  348. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/selectParser.js.map +1 -0
  349. package/dist/node_modules/.pnpm/zod-to-json-schema@3.25.0_zod@4.1.13/node_modules/zod-to-json-schema/dist/esm/zodToJsonSchema.js.map +1 -0
  350. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v3/ZodError.js +126 -0
  351. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v3/ZodError.js.map +1 -0
  352. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v3/errors.js +18 -0
  353. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v3/errors.js.map +1 -0
  354. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v3/helpers/errorUtil.js +17 -0
  355. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v3/helpers/errorUtil.js.map +1 -0
  356. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v3/helpers/parseUtil.js +130 -0
  357. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v3/helpers/parseUtil.js.map +1 -0
  358. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v3/helpers/util.js +147 -0
  359. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v3/helpers/util.js.map +1 -0
  360. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v3/locales/en.js +114 -0
  361. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v3/locales/en.js.map +1 -0
  362. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v3/types.js +3169 -0
  363. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v3/types.js.map +1 -0
  364. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/classic/errors.js +53 -0
  365. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/classic/errors.js.map +1 -0
  366. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/classic/iso.js +52 -0
  367. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/classic/iso.js.map +1 -0
  368. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/classic/parse.js +38 -0
  369. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/classic/parse.js.map +1 -0
  370. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/classic/schemas.js +686 -0
  371. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/classic/schemas.js.map +1 -0
  372. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/api.js +542 -0
  373. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/api.js.map +1 -0
  374. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/checks.js +414 -0
  375. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/checks.js.map +1 -0
  376. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/core.js +82 -0
  377. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/core.js.map +1 -0
  378. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/doc.js +46 -0
  379. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/doc.js.map +1 -0
  380. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/errors.js +81 -0
  381. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/errors.js.map +1 -0
  382. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/parse.js +108 -0
  383. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/parse.js.map +1 -0
  384. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/regexes.js +94 -0
  385. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/regexes.js.map +1 -0
  386. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/registries.js +63 -0
  387. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/registries.js.map +1 -0
  388. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/schemas.js +1391 -0
  389. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/schemas.js.map +1 -0
  390. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/to-json-schema.js +782 -0
  391. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/to-json-schema.js.map +1 -0
  392. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/util.js +419 -0
  393. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/util.js.map +1 -0
  394. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/versions.js +17 -0
  395. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/core/versions.js.map +1 -0
  396. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/mini/schemas.js +61 -0
  397. package/dist/node_modules/.pnpm/zod@4.1.13/node_modules/zod/v4/mini/schemas.js.map +1 -0
  398. package/dist/run.js +3 -3
  399. package/dist/run.js.map +1 -1
  400. package/dist/sentry-config.js +2 -2
  401. package/dist/server/cli/help.js +3 -1
  402. package/dist/server/cli/help.js.map +1 -1
  403. package/dist/server/cli/mcp.js +3 -3
  404. package/dist/server/cli/run.d.ts +1 -1
  405. package/dist/server/cli/run.js +25 -16
  406. package/dist/server/cli/run.js.map +1 -1
  407. package/dist/server/cli/server.d.ts +1 -1
  408. package/dist/server/cli/server.js +9 -3
  409. package/dist/server/cli/server.js.map +1 -1
  410. package/dist/server/cli.d.ts +1 -0
  411. package/dist/server/cli.js +10 -4
  412. package/dist/server/cli.js.map +1 -1
  413. package/dist/server/formatters/md/errors.d.ts +1 -1
  414. package/dist/server/formatters/md/errors.js.map +1 -1
  415. package/dist/server/formatters/md/event.d.ts +1 -1
  416. package/dist/server/formatters/md/event.js.map +1 -1
  417. package/dist/server/formatters/schema.d.ts +39 -39
  418. package/dist/server/mcp/mcp.d.ts +1 -1
  419. package/dist/server/mcp/mcp.js +14 -13
  420. package/dist/server/mcp/mcp.js.map +1 -1
  421. package/dist/server/routes/clear.js +2 -1
  422. package/dist/server/routes/clear.js.map +1 -1
  423. package/dist/server/routes/stream/index.js +3 -2
  424. package/dist/server/routes/stream/index.js.map +1 -1
  425. package/dist/server/types/cli.d.ts +1 -0
  426. package/dist/server/utils/docker-compose.d.ts +24 -0
  427. package/dist/server/utils/docker-compose.js +142 -37
  428. package/dist/server/utils/docker-compose.js.map +1 -1
  429. package/dist/server/utils/extras.d.ts +2 -0
  430. package/dist/server/utils/extras.js +29 -2
  431. package/dist/server/utils/extras.js.map +1 -1
  432. package/dist/ui/assets/index.js +38 -38
  433. package/dist/ui/assets/index.js.map +1 -1
  434. package/dist/ui/assets/instrumentation.js +2 -2
  435. package/dist/ui/assets/main.js +1 -1
  436. package/dist/ui/assets/serverTimingMeta.js +11 -11
  437. package/dist/ui/assets/serverTimingMeta.js.map +1 -1
  438. package/package.json +7 -8
  439. package/dist/_virtual/cache.js.map +0 -1
  440. package/dist/_virtual/uri.all.js.map +0 -1
  441. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/client/index.js +0 -241
  442. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/client/index.js.map +0 -1
  443. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/completable.js +0 -64
  444. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/completable.js.map +0 -1
  445. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js +0 -196
  446. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/index.js.map +0 -1
  447. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.js.map +0 -1
  448. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/stdio.js.map +0 -1
  449. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js +0 -391
  450. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/protocol.js.map +0 -1
  451. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/shared/stdio.js.map +0 -1
  452. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/types.js +0 -1045
  453. package/dist/node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/types.js.map +0 -1
  454. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/ajv.js +0 -365
  455. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/ajv.js.map +0 -1
  456. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/cache.js +0 -30
  457. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/cache.js.map +0 -1
  458. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/async.js +0 -74
  459. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/async.js.map +0 -1
  460. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/error_classes.js +0 -37
  461. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/error_classes.js.map +0 -1
  462. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/formats.js +0 -119
  463. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/formats.js.map +0 -1
  464. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/index.js +0 -288
  465. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/index.js.map +0 -1
  466. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/resolve.js +0 -228
  467. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/resolve.js.map +0 -1
  468. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/rules.js +0 -101
  469. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/rules.js.map +0 -1
  470. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/schema_obj.js +0 -19
  471. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/schema_obj.js.map +0 -1
  472. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/ucs2length.js.map +0 -1
  473. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/util.js +0 -192
  474. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/compile/util.js.map +0 -1
  475. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/data.js +0 -57
  476. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/data.js.map +0 -1
  477. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/definition_schema.js +0 -48
  478. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/definition_schema.js.map +0 -1
  479. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limit.js +0 -160
  480. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limit.js.map +0 -1
  481. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitItems.js +0 -90
  482. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitItems.js.map +0 -1
  483. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitLength.js +0 -95
  484. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitLength.js.map +0 -1
  485. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitProperties.js +0 -90
  486. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/_limitProperties.js.map +0 -1
  487. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/allOf.js +0 -52
  488. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/allOf.js.map +0 -1
  489. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/anyOf.js +0 -83
  490. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/anyOf.js.map +0 -1
  491. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/comment.js +0 -26
  492. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/comment.js.map +0 -1
  493. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/const.js +0 -63
  494. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/const.js.map +0 -1
  495. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/contains.js +0 -88
  496. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/contains.js.map +0 -1
  497. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/custom.js +0 -230
  498. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/custom.js.map +0 -1
  499. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/dependencies.js +0 -171
  500. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/dependencies.js.map +0 -1
  501. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/enum.js +0 -72
  502. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/enum.js.map +0 -1
  503. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/format.js +0 -157
  504. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/format.js.map +0 -1
  505. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/if.js +0 -110
  506. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/if.js.map +0 -1
  507. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/index.js +0 -67
  508. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/index.js.map +0 -1
  509. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/items.js +0 -147
  510. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/items.js.map +0 -1
  511. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/multipleOf.js +0 -90
  512. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/multipleOf.js.map +0 -1
  513. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/not.js +0 -95
  514. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/not.js.map +0 -1
  515. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/oneOf.js +0 -81
  516. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/oneOf.js.map +0 -1
  517. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/pattern.js +0 -85
  518. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/pattern.js.map +0 -1
  519. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/properties.js +0 -322
  520. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/properties.js.map +0 -1
  521. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/propertyNames.js +0 -84
  522. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/propertyNames.js.map +0 -1
  523. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/ref.js +0 -134
  524. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/ref.js.map +0 -1
  525. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/required.js +0 -263
  526. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/required.js.map +0 -1
  527. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/uniqueItems.js +0 -95
  528. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/uniqueItems.js.map +0 -1
  529. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/validate.js +0 -464
  530. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/dotjs/validate.js.map +0 -1
  531. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/keyword.js +0 -108
  532. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/keyword.js.map +0 -1
  533. package/dist/node_modules/.pnpm/ajv@6.12.6/node_modules/ajv/lib/refs/data.json.js.map +0 -1
  534. package/dist/node_modules/.pnpm/fast-json-stable-stringify@2.1.0/node_modules/fast-json-stable-stringify/index.js +0 -62
  535. package/dist/node_modules/.pnpm/fast-json-stable-stringify@2.1.0/node_modules/fast-json-stable-stringify/index.js.map +0 -1
  536. package/dist/node_modules/.pnpm/json-schema-traverse@0.4.1/node_modules/json-schema-traverse/index.js.map +0 -1
  537. package/dist/node_modules/.pnpm/uri-js@4.4.1/node_modules/uri-js/dist/es5/uri.all.js +0 -1035
  538. package/dist/node_modules/.pnpm/uri-js@4.4.1/node_modules/uri-js/dist/es5/uri.all.js.map +0 -1
  539. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/Options.js.map +0 -1
  540. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/Refs.js.map +0 -1
  541. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/errorMessages.js.map +0 -1
  542. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/getRelativePath.js.map +0 -1
  543. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parseDef.js.map +0 -1
  544. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/any.js.map +0 -1
  545. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/array.js.map +0 -1
  546. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/bigint.js.map +0 -1
  547. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/boolean.js.map +0 -1
  548. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/branded.js.map +0 -1
  549. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/catch.js.map +0 -1
  550. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/date.js.map +0 -1
  551. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/default.js.map +0 -1
  552. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/effects.js.map +0 -1
  553. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/enum.js.map +0 -1
  554. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/intersection.js.map +0 -1
  555. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/literal.js.map +0 -1
  556. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/map.js.map +0 -1
  557. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/nativeEnum.js.map +0 -1
  558. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/never.js.map +0 -1
  559. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/null.js.map +0 -1
  560. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/nullable.js.map +0 -1
  561. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/number.js.map +0 -1
  562. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/object.js.map +0 -1
  563. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/optional.js.map +0 -1
  564. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/pipeline.js.map +0 -1
  565. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/promise.js.map +0 -1
  566. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/readonly.js.map +0 -1
  567. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/record.js.map +0 -1
  568. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/set.js.map +0 -1
  569. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/string.js.map +0 -1
  570. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/tuple.js.map +0 -1
  571. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/undefined.js.map +0 -1
  572. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/union.js.map +0 -1
  573. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/parsers/unknown.js.map +0 -1
  574. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/selectParser.js.map +0 -1
  575. package/dist/node_modules/.pnpm/zod-to-json-schema@3.24.6_zod@3.25.76/node_modules/zod-to-json-schema/dist/esm/zodToJsonSchema.js.map +0 -1
  576. /package/dist/node_modules/.pnpm/{ajv@6.12.6/node_modules/ajv/lib → ajv@8.17.1/node_modules/ajv/dist}/refs/json-schema-draft-07.json.js.map +0 -0
  577. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/Options.js +0 -0
  578. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/Refs.js +0 -0
  579. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/errorMessages.js +0 -0
  580. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/getRelativePath.js +0 -0
  581. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parseDef.js +0 -0
  582. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/any.js +0 -0
  583. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/bigint.js +0 -0
  584. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/boolean.js +0 -0
  585. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/branded.js +0 -0
  586. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/catch.js +0 -0
  587. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/date.js +0 -0
  588. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/default.js +0 -0
  589. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/effects.js +0 -0
  590. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/enum.js +0 -0
  591. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/intersection.js +0 -0
  592. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/literal.js +0 -0
  593. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/map.js +0 -0
  594. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/nativeEnum.js +0 -0
  595. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/never.js +0 -0
  596. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/null.js +0 -0
  597. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/nullable.js +0 -0
  598. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/number.js +0 -0
  599. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/object.js +0 -0
  600. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/optional.js +0 -0
  601. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/pipeline.js +0 -0
  602. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/promise.js +0 -0
  603. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/readonly.js +0 -0
  604. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/set.js +0 -0
  605. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/string.js +0 -0
  606. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/tuple.js +0 -0
  607. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/undefined.js +0 -0
  608. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/union.js +0 -0
  609. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/parsers/unknown.js +0 -0
  610. /package/dist/node_modules/.pnpm/{zod-to-json-schema@3.24.6_zod@3.25.76 → zod-to-json-schema@3.25.0_zod@4.1.13}/node_modules/zod-to-json-schema/dist/esm/zodToJsonSchema.js +0 -0
@@ -1,5 +1,5 @@
1
1
  import { Envelope, EnvelopeItem } from '@sentry/core';
2
- import { z } from 'zod';
2
+ import { z } from 'zod/v3';
3
3
  import { EventContainer } from '../../utils/index.ts';
4
4
  import { ErrorEventSchema } from '../schema.ts';
5
5
  export declare function formatErrorEnvelope(container: EventContainer): string[];
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sources":["../../../../src/server/formatters/md/errors.ts"],"sourcesContent":["import type { Envelope, EnvelopeItem } from \"@sentry/core\";\nimport type { z } from \"zod\";\nimport { type SentryErrorEvent, type SentryEvent, isErrorEvent } from \"../../parser/index.ts\";\nimport type { EventContainer } from \"../../utils/index.ts\";\nimport type { ErrorEventSchema } from \"../schema.ts\";\nimport { formatTimestamp } from \"../utils.ts\";\nimport { formatEventOutput } from \"./event.ts\";\n\nexport function formatErrorEnvelope(container: EventContainer) {\n const processedEnvelope = container.getParsedEnvelope();\n\n const {\n envelope: [envelopeHeader, items],\n } = processedEnvelope;\n\n const formatted: string[] = [];\n for (const item of items) {\n const [{ type }, payload] = item;\n\n if (type === \"event\" && isErrorEvent(payload as SentryEvent)) {\n formatted.push(...formatError(payload, envelopeHeader));\n }\n }\n\n return formatted;\n}\n\nexport function processErrorEvent(event: any): z.infer<typeof ErrorEventSchema> {\n const entries: z.infer<typeof ErrorEventSchema>[\"entries\"] = [];\n\n if (event.exception) {\n entries.push({\n type: \"exception\",\n data: event.exception,\n });\n }\n\n if (event.request) {\n entries.push({\n type: \"request\",\n data: event.request,\n });\n }\n\n if (event.breadcrumbs) {\n entries.push({\n type: \"breadcrumbs\",\n data: event.breadcrumbs,\n });\n }\n\n if (event.spans) {\n entries.push({\n type: \"spans\",\n data: event.spans,\n });\n }\n\n if (event.threads) {\n entries.push({\n type: \"threads\",\n data: event.threads,\n });\n }\n\n const message = typeof event.message === \"string\" ? event.message : (event.message?.formatted ?? \"\");\n\n return {\n message,\n id: event.event_id ?? \"\",\n type: \"error\" as const,\n culprit: event.culprit ?? null,\n tags: Object.entries(event.tags ?? {}).map(([key, value]) => ({\n key,\n value: String(value),\n })),\n dateCreated: formatTimestamp(event.timestamp),\n title: message,\n entries,\n contexts: event.contexts as any,\n platform: event.platform,\n };\n}\n\n/**\n * Format an error event to markdown string\n */\nexport function formatError(payload: EnvelopeItem[1], _envelopeHeader: Envelope[0]): string[] {\n const event = payload as SentryErrorEvent;\n return [formatEventOutput(processErrorEvent(event))];\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;AAQO,SAAS,oBAAoB,WAA2B;AAC7D,QAAM,oBAAoB,UAAU,kBAAA;AAEpC,QAAM;AAAA,IACJ,UAAU,CAAC,gBAAgB,KAAK;AAAA,EAAA,IAC9B;AAEJ,QAAM,YAAsB,CAAA;AAC5B,aAAW,QAAQ,OAAO;AACxB,UAAM,CAAC,EAAE,QAAQ,OAAO,IAAI;AAE5B,QAAI,SAAS,WAAW,aAAa,OAAsB,GAAG;AAC5D,gBAAU,KAAK,GAAG,YAAY,OAAuB,CAAC;AAAA,IACxD;AAAA,EACF;AAEA,SAAO;AACT;AAEO,SAAS,kBAAkB,OAA8C;AAC9E,QAAM,UAAuD,CAAA;AAE7D,MAAI,MAAM,WAAW;AACnB,YAAQ,KAAK;AAAA,MACX,MAAM;AAAA,MACN,MAAM,MAAM;AAAA,IAAA,CACb;AAAA,EACH;AAEA,MAAI,MAAM,SAAS;AACjB,YAAQ,KAAK;AAAA,MACX,MAAM;AAAA,MACN,MAAM,MAAM;AAAA,IAAA,CACb;AAAA,EACH;AAEA,MAAI,MAAM,aAAa;AACrB,YAAQ,KAAK;AAAA,MACX,MAAM;AAAA,MACN,MAAM,MAAM;AAAA,IAAA,CACb;AAAA,EACH;AAEA,MAAI,MAAM,OAAO;AACf,YAAQ,KAAK;AAAA,MACX,MAAM;AAAA,MACN,MAAM,MAAM;AAAA,IAAA,CACb;AAAA,EACH;AAEA,MAAI,MAAM,SAAS;AACjB,YAAQ,KAAK;AAAA,MACX,MAAM;AAAA,MACN,MAAM,MAAM;AAAA,IAAA,CACb;AAAA,EACH;AAEA,QAAM,UAAU,OAAO,MAAM,YAAY,WAAW,MAAM,UAAW,MAAM,SAAS,aAAa;AAEjG,SAAO;AAAA,IACL;AAAA,IACA,IAAI,MAAM,YAAY;AAAA,IACtB,MAAM;AAAA,IACN,SAAS,MAAM,WAAW;AAAA,IAC1B,MAAM,OAAO,QAAQ,MAAM,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,OAAO;AAAA,MAC5D;AAAA,MACA,OAAO,OAAO,KAAK;AAAA,IAAA,EACnB;AAAA,IACF,aAAa,gBAAgB,MAAM,SAAS;AAAA,IAC5C,OAAO;AAAA,IACP;AAAA,IACA,UAAU,MAAM;AAAA,IAChB,UAAU,MAAM;AAAA,EAAA;AAEpB;AAKO,SAAS,YAAY,SAA0B,iBAAwC;AAC5F,QAAM,QAAQ;AACd,SAAO,CAAC,kBAAkB,kBAAkB,KAAK,CAAC,CAAC;AACrD;"}
1
+ {"version":3,"file":"errors.js","sources":["../../../../src/server/formatters/md/errors.ts"],"sourcesContent":["import type { Envelope, EnvelopeItem } from \"@sentry/core\";\nimport type { z } from \"zod/v3\";\nimport { type SentryErrorEvent, type SentryEvent, isErrorEvent } from \"../../parser/index.ts\";\nimport type { EventContainer } from \"../../utils/index.ts\";\nimport type { ErrorEventSchema } from \"../schema.ts\";\nimport { formatTimestamp } from \"../utils.ts\";\nimport { formatEventOutput } from \"./event.ts\";\n\nexport function formatErrorEnvelope(container: EventContainer) {\n const processedEnvelope = container.getParsedEnvelope();\n\n const {\n envelope: [envelopeHeader, items],\n } = processedEnvelope;\n\n const formatted: string[] = [];\n for (const item of items) {\n const [{ type }, payload] = item;\n\n if (type === \"event\" && isErrorEvent(payload as SentryEvent)) {\n formatted.push(...formatError(payload, envelopeHeader));\n }\n }\n\n return formatted;\n}\n\nexport function processErrorEvent(event: any): z.infer<typeof ErrorEventSchema> {\n const entries: z.infer<typeof ErrorEventSchema>[\"entries\"] = [];\n\n if (event.exception) {\n entries.push({\n type: \"exception\",\n data: event.exception,\n });\n }\n\n if (event.request) {\n entries.push({\n type: \"request\",\n data: event.request,\n });\n }\n\n if (event.breadcrumbs) {\n entries.push({\n type: \"breadcrumbs\",\n data: event.breadcrumbs,\n });\n }\n\n if (event.spans) {\n entries.push({\n type: \"spans\",\n data: event.spans,\n });\n }\n\n if (event.threads) {\n entries.push({\n type: \"threads\",\n data: event.threads,\n });\n }\n\n const message = typeof event.message === \"string\" ? event.message : (event.message?.formatted ?? \"\");\n\n return {\n message,\n id: event.event_id ?? \"\",\n type: \"error\" as const,\n culprit: event.culprit ?? null,\n tags: Object.entries(event.tags ?? {}).map(([key, value]) => ({\n key,\n value: String(value),\n })),\n dateCreated: formatTimestamp(event.timestamp),\n title: message,\n entries,\n contexts: event.contexts as any,\n platform: event.platform,\n };\n}\n\n/**\n * Format an error event to markdown string\n */\nexport function formatError(payload: EnvelopeItem[1], _envelopeHeader: Envelope[0]): string[] {\n const event = payload as SentryErrorEvent;\n return [formatEventOutput(processErrorEvent(event))];\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;AAQO,SAAS,oBAAoB,WAA2B;AAC7D,QAAM,oBAAoB,UAAU,kBAAA;AAEpC,QAAM;AAAA,IACJ,UAAU,CAAC,gBAAgB,KAAK;AAAA,EAAA,IAC9B;AAEJ,QAAM,YAAsB,CAAA;AAC5B,aAAW,QAAQ,OAAO;AACxB,UAAM,CAAC,EAAE,QAAQ,OAAO,IAAI;AAE5B,QAAI,SAAS,WAAW,aAAa,OAAsB,GAAG;AAC5D,gBAAU,KAAK,GAAG,YAAY,OAAuB,CAAC;AAAA,IACxD;AAAA,EACF;AAEA,SAAO;AACT;AAEO,SAAS,kBAAkB,OAA8C;AAC9E,QAAM,UAAuD,CAAA;AAE7D,MAAI,MAAM,WAAW;AACnB,YAAQ,KAAK;AAAA,MACX,MAAM;AAAA,MACN,MAAM,MAAM;AAAA,IAAA,CACb;AAAA,EACH;AAEA,MAAI,MAAM,SAAS;AACjB,YAAQ,KAAK;AAAA,MACX,MAAM;AAAA,MACN,MAAM,MAAM;AAAA,IAAA,CACb;AAAA,EACH;AAEA,MAAI,MAAM,aAAa;AACrB,YAAQ,KAAK;AAAA,MACX,MAAM;AAAA,MACN,MAAM,MAAM;AAAA,IAAA,CACb;AAAA,EACH;AAEA,MAAI,MAAM,OAAO;AACf,YAAQ,KAAK;AAAA,MACX,MAAM;AAAA,MACN,MAAM,MAAM;AAAA,IAAA,CACb;AAAA,EACH;AAEA,MAAI,MAAM,SAAS;AACjB,YAAQ,KAAK;AAAA,MACX,MAAM;AAAA,MACN,MAAM,MAAM;AAAA,IAAA,CACb;AAAA,EACH;AAEA,QAAM,UAAU,OAAO,MAAM,YAAY,WAAW,MAAM,UAAW,MAAM,SAAS,aAAa;AAEjG,SAAO;AAAA,IACL;AAAA,IACA,IAAI,MAAM,YAAY;AAAA,IACtB,MAAM;AAAA,IACN,SAAS,MAAM,WAAW;AAAA,IAC1B,MAAM,OAAO,QAAQ,MAAM,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,OAAO;AAAA,MAC5D;AAAA,MACA,OAAO,OAAO,KAAK;AAAA,IAAA,EACnB;AAAA,IACF,aAAa,gBAAgB,MAAM,SAAS;AAAA,IAC5C,OAAO;AAAA,IACP;AAAA,IACA,UAAU,MAAM;AAAA,IAChB,UAAU,MAAM;AAAA,EAAA;AAEpB;AAKO,SAAS,YAAY,SAA0B,iBAAwC;AAC5F,QAAM,QAAQ;AACd,SAAO,CAAC,kBAAkB,kBAAkB,KAAK,CAAC,CAAC;AACrD;"}
@@ -1,4 +1,4 @@
1
- import { z } from 'zod';
1
+ import { z } from 'zod/v3';
2
2
  import { EventSchema } from '../schema.ts';
3
3
  export type Event = z.infer<typeof EventSchema>;
4
4
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"event.js","sources":["../../../../src/server/formatters/md/event.ts"],"sourcesContent":["/**\n * LLM response formatting utilities for Sentry data.\n *\n * Converts Sentry API responses into structured markdown format optimized\n * for LLM consumption. Handles stacktraces, event details, issue summaries,\n * and contextual information with consistent formatting patterns.\n */\nimport type { z } from \"zod\";\nimport type {\n ErrorEntrySchema,\n EventSchema,\n FrameInterface,\n MessageEntrySchema,\n RequestEntrySchema,\n ThreadsEntrySchema,\n} from \"../schema.ts\";\n\nexport type Event = z.infer<typeof EventSchema>;\n\n// Language detection mappings\nconst LANGUAGE_EXTENSIONS: Record<string, string> = {\n \".java\": \"java\",\n \".py\": \"python\",\n \".js\": \"javascript\",\n \".jsx\": \"javascript\",\n \".ts\": \"javascript\",\n \".tsx\": \"javascript\",\n \".rb\": \"ruby\",\n \".php\": \"php\",\n};\n\nconst LANGUAGE_MODULE_PATTERNS: Array<[RegExp, string]> = [[/^(java\\.|com\\.|org\\.)/, \"java\"]];\n\n/**\n * Detects the programming language of a stack frame based on the file extension.\n * Falls back to the platform parameter if no filename is available or extension is unrecognized.\n *\n * @param frame - The stack frame containing file and location information\n * @param platform - Optional platform hint to use as fallback\n * @returns The detected language or platform fallback or \"unknown\"\n */\nfunction detectLanguage(frame: z.infer<typeof FrameInterface>, platform?: string | null): string {\n // Check filename extensions\n if (frame.filename) {\n const ext = frame.filename.toLowerCase().match(/\\.[^.]+$/)?.[0];\n if (ext && LANGUAGE_EXTENSIONS[ext]) {\n return LANGUAGE_EXTENSIONS[ext];\n }\n }\n\n // Check module patterns\n if (frame.module) {\n for (const [pattern, language] of LANGUAGE_MODULE_PATTERNS) {\n if (pattern.test(frame.module)) {\n return language;\n }\n }\n }\n\n // Fallback to platform or unknown\n return platform || \"unknown\";\n}\n\n/**\n * Formats a stack frame into a language-specific string representation.\n * Different languages have different conventions for displaying stack traces.\n *\n * @param frame - The stack frame to format\n * @param frameIndex - Optional frame index for languages that display frame numbers\n * @param platform - Optional platform hint for language detection fallback\n * @returns Formatted stack frame string\n */\nfunction formatFrameHeader(frame: z.infer<typeof FrameInterface>, frameIndex?: number, platform?: string | null) {\n const language = detectLanguage(frame, platform);\n\n switch (language) {\n case \"java\": {\n // at com.example.ClassName.methodName(FileName.java:123)\n const className = frame.module || \"UnknownClass\";\n const method = frame.function || \"<unknown>\";\n const source = frame.filename || \"Unknown Source\";\n const location = frame.lineNo ? `:${frame.lineNo}` : \"\";\n return `at ${className}.${method}(${source}${location})`;\n }\n\n case \"python\": {\n // File \"/path/to/file.py\", line 42, in function_name\n const file = frame.filename || frame.absPath || frame.module || \"<unknown>\";\n const func = frame.function || \"<module>\";\n const line = frame.lineNo ? `, line ${frame.lineNo}` : \"\";\n return ` File \"${file}\"${line}, in ${func}`;\n }\n\n case \"javascript\": {\n // Original compact format: filename:line:col (function)\n // This preserves backward compatibility\n return `${[frame.filename, frame.lineNo, frame.colNo]\n .filter(i => !!i)\n .join(\":\")}${frame.function ? ` (${frame.function})` : \"\"}`;\n }\n\n case \"ruby\": {\n // from /path/to/file.rb:42:in `method_name'\n const file = frame.filename || frame.module || \"<unknown>\";\n const func = frame.function ? ` \\`${frame.function}\\`` : \"\";\n const line = frame.lineNo ? `:${frame.lineNo}:in` : \"\";\n return ` from ${file}${line}${func}`;\n }\n\n case \"php\": {\n // #0 /path/to/file.php(42): functionName()\n const file = frame.filename || \"<unknown>\";\n const line = frame.lineNo ? `(${frame.lineNo})` : \"\";\n const func = frame.function || \"<unknown>\";\n const prefix = frameIndex !== undefined ? `#${frameIndex} ` : \"\";\n return `${prefix}${file}${line}: ${func}()`;\n }\n\n default: {\n // Generic format for unknown languages\n const func = frame.function || \"<unknown>\";\n const location = frame.filename || frame.module || \"<unknown>\";\n const line = frame.lineNo ? `:${frame.lineNo}` : \"\";\n const col = frame.colNo != null ? `:${frame.colNo}` : \"\";\n return ` at ${func} (${location}${line}${col})`;\n }\n }\n}\n\n/**\n * Formats a Sentry event into a structured markdown output.\n * Includes error messages, stack traces, request info, and contextual data.\n *\n * @param event - The Sentry event to format\n * @returns Formatted markdown string\n */\nexport function formatEventOutput(event: Event) {\n let output = \"\";\n\n // Look for the primary error information\n const messageEntry = event.entries.find(e => e.type === \"message\");\n const exceptionEntry = event.entries.find(e => e.type === \"exception\");\n const threadsEntry = event.entries.find(e => e.type === \"threads\");\n const requestEntry = event.entries.find(e => e.type === \"request\");\n\n // Error message (if present)\n if (messageEntry) {\n output += formatMessageInterfaceOutput(event, messageEntry.data as z.infer<typeof MessageEntrySchema>);\n }\n\n // Stack trace (from exception or threads)\n if (exceptionEntry) {\n output += formatExceptionInterfaceOutput(event, exceptionEntry.data as z.infer<typeof ErrorEntrySchema>);\n } else if (threadsEntry) {\n output += formatThreadsInterfaceOutput(event, threadsEntry.data as z.infer<typeof ThreadsEntrySchema>);\n }\n\n // Request info (if HTTP error)\n if (requestEntry) {\n output += formatRequestInterfaceOutput(event, requestEntry.data as z.infer<typeof RequestEntrySchema>);\n }\n\n output += formatTags(event.tags);\n output += formatContexts(event.contexts);\n return output;\n}\n\n/**\n * Extracts the context line matching the frame's line number for inline display.\n * This is used in the full stacktrace view to show the actual line of code\n * that caused the error inline with the stack frame.\n *\n * @param frame - The stack frame containing context lines\n * @returns The line of code at the frame's line number, or empty string if not available\n */\nfunction renderInlineContext(frame: z.infer<typeof FrameInterface>): string {\n if (!frame.context?.length || !frame.lineNo) {\n return \"\";\n }\n\n const contextLine = frame.context.find(([lineNo]) => lineNo === frame.lineNo);\n return contextLine ? `\\n${contextLine[1]}` : \"\";\n}\n\n/**\n * Renders an enhanced view of a stack frame with context lines and variables.\n * Used for the \"Most Relevant Frame\" section to provide detailed information\n * about the most relevant application frame where the error occurred.\n *\n * @param frame - The stack frame to render with enhanced information\n * @param event - The Sentry event containing platform information for language detection\n * @returns Formatted string with frame header, context lines, and variables table\n */\nfunction renderEnhancedFrame(frame: z.infer<typeof FrameInterface>, event: Event): string {\n const parts: string[] = [];\n\n parts.push(\"**Most Relevant Frame:**\");\n parts.push(\"─────────────────────\");\n parts.push(formatFrameHeader(frame, undefined, event.platform));\n\n // Add context lines if available\n if (frame.context?.length) {\n const contextLines = renderContextLines(frame);\n if (contextLines) {\n parts.push(\"\");\n parts.push(contextLines);\n }\n }\n\n // Add variables table if available\n if (frame.vars && Object.keys(frame.vars).length > 0) {\n parts.push(\"\");\n parts.push(renderVariablesTable(frame.vars));\n }\n\n return parts.join(\"\\n\");\n}\n\nfunction formatExceptionInterfaceOutput(event: Event, data: z.infer<typeof ErrorEntrySchema>) {\n const parts: string[] = [];\n\n // Handle both single exception (value) and chained exceptions (values)\n const exceptions = data.values || (data.value ? [data.value] : []);\n\n if (exceptions.length === 0) {\n return \"\";\n }\n\n // For chained exceptions, they are typically ordered from innermost to outermost\n // We'll render them in reverse order (outermost first) to match how they occurred\n const isChained = exceptions.length > 1;\n\n // Create a copy before reversing to avoid mutating the original array\n [...exceptions].reverse().forEach((exception, index) => {\n if (!exception) return;\n\n // Add language-specific chain indicator for multiple exceptions\n if (isChained && index > 0) {\n parts.push(\"\");\n parts.push(getExceptionChainMessage(event.platform || null, index, exceptions.length));\n parts.push(\"\");\n }\n\n // Use the actual exception type and value as the heading\n const exceptionTitle = `${exception.type}${exception.value ? `: ${exception.value}` : \"\"}`;\n\n parts.push(index === 0 ? \"### Error\" : `### ${exceptionTitle}`);\n parts.push(\"\");\n\n // Add the error details in a code block for the first exception\n // to maintain backward compatibility\n if (index === 0) {\n parts.push(\"```\");\n parts.push(exceptionTitle);\n parts.push(\"```\");\n parts.push(\"\");\n }\n\n if (!exception.stacktrace || !exception.stacktrace.frames) {\n parts.push(\"**Stacktrace:**\");\n parts.push(\"```\");\n parts.push(\"No stacktrace available\");\n parts.push(\"```\");\n return;\n }\n\n const frames = exception.stacktrace.frames;\n\n // Only show enhanced frame for the first (outermost) exception to avoid overwhelming output\n if (index === 0) {\n const firstInAppFrame = findFirstInAppFrame(frames);\n if (firstInAppFrame && (firstInAppFrame.context?.length || firstInAppFrame.vars)) {\n parts.push(renderEnhancedFrame(firstInAppFrame, event));\n parts.push(\"\");\n parts.push(\"**Full Stacktrace:**\");\n parts.push(\"────────────────\");\n } else {\n parts.push(\"**Stacktrace:**\");\n }\n } else {\n parts.push(\"**Stacktrace:**\");\n }\n\n parts.push(\"```\");\n parts.push(\n frames\n .map(frame => {\n const header = formatFrameHeader(frame, undefined, event.platform);\n const context = renderInlineContext(frame);\n return `${header}${context}`;\n })\n .join(\"\\n\"),\n );\n parts.push(\"```\");\n });\n\n parts.push(\"\");\n parts.push(\"\");\n\n return parts.join(\"\\n\");\n}\n\n/**\n * Get the appropriate exception chain message based on the platform\n */\nfunction getExceptionChainMessage(platform: string | null, index: number, _totalExceptions: number): string {\n // Default message for unknown platforms\n const defaultMessage = \"**During handling of the above exception, another exception occurred:**\";\n\n if (!platform) {\n return defaultMessage;\n }\n\n switch (platform.toLowerCase()) {\n case \"python\":\n // Python has two distinct messages, but without additional metadata\n // we default to the implicit chaining message\n return \"**During handling of the above exception, another exception occurred:**\";\n\n case \"java\":\n return \"**Caused by:**\";\n\n case \"csharp\":\n case \"dotnet\":\n return \"**---> Inner Exception:**\";\n\n case \"ruby\":\n return \"**Caused by:**\";\n\n case \"go\":\n return \"**Wrapped error:**\";\n\n case \"rust\":\n return `**Caused by (${index}):**`;\n\n default:\n return defaultMessage;\n }\n}\n\nfunction formatRequestInterfaceOutput(_event: Event, data: z.infer<typeof RequestEntrySchema>) {\n if (!data.method || !data.url) {\n return \"\";\n }\n return `### HTTP Request\\n\\n**Method:** ${data.method}\\n**URL:** ${data.url}\\n\\n`;\n}\n\nfunction formatMessageInterfaceOutput(_event: Event, data: z.infer<typeof MessageEntrySchema>) {\n if (!data.formatted && !data.message) {\n return \"\";\n }\n const message = data.formatted || data.message || \"\";\n return `### Error\\n\\n${\"```\"}\\n${message}\\n${\"```\"}\\n\\n`;\n}\n\nfunction formatThreadsInterfaceOutput(event: Event, data: z.infer<typeof ThreadsEntrySchema>) {\n if (!data.values || data.values.length === 0) {\n return \"\";\n }\n\n // Find the crashed thread only\n const crashedThread = data.values.find(t => t.crashed);\n\n if (!crashedThread?.stacktrace?.frames) {\n return \"\";\n }\n\n const parts: string[] = [];\n\n // Include thread name if available\n if (crashedThread.name) {\n parts.push(`**Thread** (${crashedThread.name})`);\n parts.push(\"\");\n }\n\n const frames = crashedThread.stacktrace.frames;\n\n // Find and format the first in-app frame with enhanced view\n const firstInAppFrame = findFirstInAppFrame(frames);\n if (firstInAppFrame && (firstInAppFrame.context?.length || firstInAppFrame.vars)) {\n parts.push(renderEnhancedFrame(firstInAppFrame, event));\n parts.push(\"\");\n parts.push(\"**Full Stacktrace:**\");\n parts.push(\"────────────────\");\n } else {\n parts.push(\"**Stacktrace:**\");\n }\n\n parts.push(\"```\");\n parts.push(\n frames\n .map(frame => {\n const header = formatFrameHeader(frame, undefined, event.platform);\n const context = renderInlineContext(frame);\n return `${header}${context}`;\n })\n .join(\"\\n\"),\n );\n parts.push(\"```\");\n parts.push(\"\");\n\n return parts.join(\"\\n\");\n}\n\n/**\n * Renders surrounding source code context for a stack frame.\n * Shows a window of code lines around the error line with visual indicators.\n *\n * @param frame - The stack frame containing context lines\n * @param contextSize - Number of lines to show before and after the error line (default: 3)\n * @returns Formatted context lines with line numbers and arrow indicator for the error line\n */\nfunction renderContextLines(frame: z.infer<typeof FrameInterface>, contextSize = 3): string {\n if (!frame.context || frame.context.length === 0 || !frame.lineNo) {\n return \"\";\n }\n\n const lines: string[] = [];\n const errorLine = frame.lineNo;\n const maxLineNoWidth = Math.max(...frame.context.map(([lineNo]) => lineNo.toString().length));\n\n for (const [lineNo, code] of frame.context) {\n const isErrorLine = lineNo === errorLine;\n const lineNoStr = lineNo.toString().padStart(maxLineNoWidth, \" \");\n\n if (Math.abs(lineNo - errorLine) <= contextSize) {\n if (isErrorLine) {\n lines.push(` → ${lineNoStr} │ ${code}`);\n } else {\n lines.push(` ${lineNoStr} │ ${code}`);\n }\n }\n }\n\n return lines.join(\"\\n\");\n}\n\n/**\n * Formats a variable value for display in the variables table.\n * Handles different types appropriately and safely, converting complex objects\n * to readable representations and handling edge cases like circular references.\n *\n * @param value - The variable value to format (can be any type)\n * @param maxLength - Maximum length for stringified objects/arrays (default: 80)\n * @returns markdown string representation of the value\n */\nfunction formatVariableValue(value: unknown, maxLength = 80): string {\n try {\n if (typeof value === \"string\") {\n return `\"${value}\"`;\n }\n if (value === null) {\n return \"null\";\n }\n if (value === undefined) {\n return \"undefined\";\n }\n if (typeof value === \"object\") {\n const stringified = JSON.stringify(value);\n if (stringified.length > maxLength) {\n // Leave room for \", ...]\" or \", ...}\"\n const truncateAt = maxLength - 6;\n let truncated = stringified.substring(0, truncateAt);\n\n // Find the last complete element by looking for the last comma\n const lastComma = truncated.lastIndexOf(\",\");\n if (lastComma > 0) {\n truncated = truncated.substring(0, lastComma);\n }\n\n // Add the appropriate ending\n if (Array.isArray(value)) {\n return `${truncated}, ...]`;\n }\n return `${truncated}, ...}`;\n }\n return stringified;\n }\n return String(value);\n } catch {\n // Handle circular references or other stringify errors\n return `<${typeof value}>`;\n }\n}\n\n/**\n * Renders a table of local variables in a tree-like format.\n * Uses box-drawing characters to create a visual hierarchy of variables\n * and their values at the point where the error occurred.\n *\n * @param vars - Object containing variable names as keys and their values\n * @returns Formatted variables table with tree-style prefix characters\n */\nfunction renderVariablesTable(vars: Record<string, unknown>): string {\n const entries = Object.entries(vars);\n if (entries.length === 0) {\n return \"\";\n }\n\n const lines: string[] = [\"Local Variables:\"];\n const lastIndex = entries.length - 1;\n\n entries.forEach(([key, value], index) => {\n const prefix = index === lastIndex ? \"└─\" : \"├─\";\n const valueStr = formatVariableValue(value);\n lines.push(`${prefix} ${key}: ${valueStr}`);\n });\n\n return lines.join(\"\\n\");\n}\n\n/**\n * Finds the first application frame (in_app) in a stack trace.\n * Searches from the bottom of the stack (oldest frame) to find the first\n * frame that belongs to the user's application code rather than libraries.\n *\n * @param frames - Array of stack frames, typically in reverse chronological order\n * @returns The first in-app frame found, or undefined if none exist\n */\nfunction findFirstInAppFrame(frames: z.infer<typeof FrameInterface>[]): z.infer<typeof FrameInterface> | undefined {\n // Frames are usually in reverse order (most recent first)\n // We want the first in-app frame from the bottom\n for (let i = frames.length - 1; i >= 0; i--) {\n if (frames[i].inApp === true) {\n return frames[i];\n }\n }\n return undefined;\n}\n\nfunction formatTags(tags: z.infer<typeof EventSchema>[\"tags\"]) {\n if (!tags || tags.length === 0) {\n return \"\";\n }\n return `### Tags\\n\\n${tags.map(tag => `**${tag.key}**: ${tag.value}`).join(\"\\n\")}\\n\\n`;\n}\n\nfunction formatContexts(contexts: z.infer<typeof EventSchema>[\"contexts\"]) {\n if (!contexts || Object.keys(contexts).length === 0) {\n return \"\";\n }\n return `### Additional Context\\n\\nThese are additional context provided by the user when they're instrumenting their application.\\n\\n${Object.entries(\n contexts,\n )\n .map(\n ([name, data]) =>\n `**${name}**\\n${Object.entries(data)\n .filter(([key, _]) => key !== \"type\")\n .map(([key, value]) => {\n return `${key}: ${JSON.stringify(value, undefined, 2)}`;\n })\n .join(\"\\n\")}`,\n )\n .join(\"\\n\\n\")}\\n\\n`;\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event.js","sources":["../../../../src/server/formatters/md/event.ts"],"sourcesContent":["/**\n * LLM response formatting utilities for Sentry data.\n *\n * Converts Sentry API responses into structured markdown format optimized\n * for LLM consumption. Handles stacktraces, event details, issue summaries,\n * and contextual information with consistent formatting patterns.\n */\nimport type { z } from \"zod/v3\";\nimport type {\n ErrorEntrySchema,\n EventSchema,\n FrameInterface,\n MessageEntrySchema,\n RequestEntrySchema,\n ThreadsEntrySchema,\n} from \"../schema.ts\";\n\nexport type Event = z.infer<typeof EventSchema>;\n\n// Language detection mappings\nconst LANGUAGE_EXTENSIONS: Record<string, string> = {\n \".java\": \"java\",\n \".py\": \"python\",\n \".js\": \"javascript\",\n \".jsx\": \"javascript\",\n \".ts\": \"javascript\",\n \".tsx\": \"javascript\",\n \".rb\": \"ruby\",\n \".php\": \"php\",\n};\n\nconst LANGUAGE_MODULE_PATTERNS: Array<[RegExp, string]> = [[/^(java\\.|com\\.|org\\.)/, \"java\"]];\n\n/**\n * Detects the programming language of a stack frame based on the file extension.\n * Falls back to the platform parameter if no filename is available or extension is unrecognized.\n *\n * @param frame - The stack frame containing file and location information\n * @param platform - Optional platform hint to use as fallback\n * @returns The detected language or platform fallback or \"unknown\"\n */\nfunction detectLanguage(frame: z.infer<typeof FrameInterface>, platform?: string | null): string {\n // Check filename extensions\n if (frame.filename) {\n const ext = frame.filename.toLowerCase().match(/\\.[^.]+$/)?.[0];\n if (ext && LANGUAGE_EXTENSIONS[ext]) {\n return LANGUAGE_EXTENSIONS[ext];\n }\n }\n\n // Check module patterns\n if (frame.module) {\n for (const [pattern, language] of LANGUAGE_MODULE_PATTERNS) {\n if (pattern.test(frame.module)) {\n return language;\n }\n }\n }\n\n // Fallback to platform or unknown\n return platform || \"unknown\";\n}\n\n/**\n * Formats a stack frame into a language-specific string representation.\n * Different languages have different conventions for displaying stack traces.\n *\n * @param frame - The stack frame to format\n * @param frameIndex - Optional frame index for languages that display frame numbers\n * @param platform - Optional platform hint for language detection fallback\n * @returns Formatted stack frame string\n */\nfunction formatFrameHeader(frame: z.infer<typeof FrameInterface>, frameIndex?: number, platform?: string | null) {\n const language = detectLanguage(frame, platform);\n\n switch (language) {\n case \"java\": {\n // at com.example.ClassName.methodName(FileName.java:123)\n const className = frame.module || \"UnknownClass\";\n const method = frame.function || \"<unknown>\";\n const source = frame.filename || \"Unknown Source\";\n const location = frame.lineNo ? `:${frame.lineNo}` : \"\";\n return `at ${className}.${method}(${source}${location})`;\n }\n\n case \"python\": {\n // File \"/path/to/file.py\", line 42, in function_name\n const file = frame.filename || frame.absPath || frame.module || \"<unknown>\";\n const func = frame.function || \"<module>\";\n const line = frame.lineNo ? `, line ${frame.lineNo}` : \"\";\n return ` File \"${file}\"${line}, in ${func}`;\n }\n\n case \"javascript\": {\n // Original compact format: filename:line:col (function)\n // This preserves backward compatibility\n return `${[frame.filename, frame.lineNo, frame.colNo]\n .filter(i => !!i)\n .join(\":\")}${frame.function ? ` (${frame.function})` : \"\"}`;\n }\n\n case \"ruby\": {\n // from /path/to/file.rb:42:in `method_name'\n const file = frame.filename || frame.module || \"<unknown>\";\n const func = frame.function ? ` \\`${frame.function}\\`` : \"\";\n const line = frame.lineNo ? `:${frame.lineNo}:in` : \"\";\n return ` from ${file}${line}${func}`;\n }\n\n case \"php\": {\n // #0 /path/to/file.php(42): functionName()\n const file = frame.filename || \"<unknown>\";\n const line = frame.lineNo ? `(${frame.lineNo})` : \"\";\n const func = frame.function || \"<unknown>\";\n const prefix = frameIndex !== undefined ? `#${frameIndex} ` : \"\";\n return `${prefix}${file}${line}: ${func}()`;\n }\n\n default: {\n // Generic format for unknown languages\n const func = frame.function || \"<unknown>\";\n const location = frame.filename || frame.module || \"<unknown>\";\n const line = frame.lineNo ? `:${frame.lineNo}` : \"\";\n const col = frame.colNo != null ? `:${frame.colNo}` : \"\";\n return ` at ${func} (${location}${line}${col})`;\n }\n }\n}\n\n/**\n * Formats a Sentry event into a structured markdown output.\n * Includes error messages, stack traces, request info, and contextual data.\n *\n * @param event - The Sentry event to format\n * @returns Formatted markdown string\n */\nexport function formatEventOutput(event: Event) {\n let output = \"\";\n\n // Look for the primary error information\n const messageEntry = event.entries.find(e => e.type === \"message\");\n const exceptionEntry = event.entries.find(e => e.type === \"exception\");\n const threadsEntry = event.entries.find(e => e.type === \"threads\");\n const requestEntry = event.entries.find(e => e.type === \"request\");\n\n // Error message (if present)\n if (messageEntry) {\n output += formatMessageInterfaceOutput(event, messageEntry.data as z.infer<typeof MessageEntrySchema>);\n }\n\n // Stack trace (from exception or threads)\n if (exceptionEntry) {\n output += formatExceptionInterfaceOutput(event, exceptionEntry.data as z.infer<typeof ErrorEntrySchema>);\n } else if (threadsEntry) {\n output += formatThreadsInterfaceOutput(event, threadsEntry.data as z.infer<typeof ThreadsEntrySchema>);\n }\n\n // Request info (if HTTP error)\n if (requestEntry) {\n output += formatRequestInterfaceOutput(event, requestEntry.data as z.infer<typeof RequestEntrySchema>);\n }\n\n output += formatTags(event.tags);\n output += formatContexts(event.contexts);\n return output;\n}\n\n/**\n * Extracts the context line matching the frame's line number for inline display.\n * This is used in the full stacktrace view to show the actual line of code\n * that caused the error inline with the stack frame.\n *\n * @param frame - The stack frame containing context lines\n * @returns The line of code at the frame's line number, or empty string if not available\n */\nfunction renderInlineContext(frame: z.infer<typeof FrameInterface>): string {\n if (!frame.context?.length || !frame.lineNo) {\n return \"\";\n }\n\n const contextLine = frame.context.find(([lineNo]) => lineNo === frame.lineNo);\n return contextLine ? `\\n${contextLine[1]}` : \"\";\n}\n\n/**\n * Renders an enhanced view of a stack frame with context lines and variables.\n * Used for the \"Most Relevant Frame\" section to provide detailed information\n * about the most relevant application frame where the error occurred.\n *\n * @param frame - The stack frame to render with enhanced information\n * @param event - The Sentry event containing platform information for language detection\n * @returns Formatted string with frame header, context lines, and variables table\n */\nfunction renderEnhancedFrame(frame: z.infer<typeof FrameInterface>, event: Event): string {\n const parts: string[] = [];\n\n parts.push(\"**Most Relevant Frame:**\");\n parts.push(\"─────────────────────\");\n parts.push(formatFrameHeader(frame, undefined, event.platform));\n\n // Add context lines if available\n if (frame.context?.length) {\n const contextLines = renderContextLines(frame);\n if (contextLines) {\n parts.push(\"\");\n parts.push(contextLines);\n }\n }\n\n // Add variables table if available\n if (frame.vars && Object.keys(frame.vars).length > 0) {\n parts.push(\"\");\n parts.push(renderVariablesTable(frame.vars));\n }\n\n return parts.join(\"\\n\");\n}\n\nfunction formatExceptionInterfaceOutput(event: Event, data: z.infer<typeof ErrorEntrySchema>) {\n const parts: string[] = [];\n\n // Handle both single exception (value) and chained exceptions (values)\n const exceptions = data.values || (data.value ? [data.value] : []);\n\n if (exceptions.length === 0) {\n return \"\";\n }\n\n // For chained exceptions, they are typically ordered from innermost to outermost\n // We'll render them in reverse order (outermost first) to match how they occurred\n const isChained = exceptions.length > 1;\n\n // Create a copy before reversing to avoid mutating the original array\n [...exceptions].reverse().forEach((exception, index) => {\n if (!exception) return;\n\n // Add language-specific chain indicator for multiple exceptions\n if (isChained && index > 0) {\n parts.push(\"\");\n parts.push(getExceptionChainMessage(event.platform || null, index, exceptions.length));\n parts.push(\"\");\n }\n\n // Use the actual exception type and value as the heading\n const exceptionTitle = `${exception.type}${exception.value ? `: ${exception.value}` : \"\"}`;\n\n parts.push(index === 0 ? \"### Error\" : `### ${exceptionTitle}`);\n parts.push(\"\");\n\n // Add the error details in a code block for the first exception\n // to maintain backward compatibility\n if (index === 0) {\n parts.push(\"```\");\n parts.push(exceptionTitle);\n parts.push(\"```\");\n parts.push(\"\");\n }\n\n if (!exception.stacktrace || !exception.stacktrace.frames) {\n parts.push(\"**Stacktrace:**\");\n parts.push(\"```\");\n parts.push(\"No stacktrace available\");\n parts.push(\"```\");\n return;\n }\n\n const frames = exception.stacktrace.frames;\n\n // Only show enhanced frame for the first (outermost) exception to avoid overwhelming output\n if (index === 0) {\n const firstInAppFrame = findFirstInAppFrame(frames);\n if (firstInAppFrame && (firstInAppFrame.context?.length || firstInAppFrame.vars)) {\n parts.push(renderEnhancedFrame(firstInAppFrame, event));\n parts.push(\"\");\n parts.push(\"**Full Stacktrace:**\");\n parts.push(\"────────────────\");\n } else {\n parts.push(\"**Stacktrace:**\");\n }\n } else {\n parts.push(\"**Stacktrace:**\");\n }\n\n parts.push(\"```\");\n parts.push(\n frames\n .map(frame => {\n const header = formatFrameHeader(frame, undefined, event.platform);\n const context = renderInlineContext(frame);\n return `${header}${context}`;\n })\n .join(\"\\n\"),\n );\n parts.push(\"```\");\n });\n\n parts.push(\"\");\n parts.push(\"\");\n\n return parts.join(\"\\n\");\n}\n\n/**\n * Get the appropriate exception chain message based on the platform\n */\nfunction getExceptionChainMessage(platform: string | null, index: number, _totalExceptions: number): string {\n // Default message for unknown platforms\n const defaultMessage = \"**During handling of the above exception, another exception occurred:**\";\n\n if (!platform) {\n return defaultMessage;\n }\n\n switch (platform.toLowerCase()) {\n case \"python\":\n // Python has two distinct messages, but without additional metadata\n // we default to the implicit chaining message\n return \"**During handling of the above exception, another exception occurred:**\";\n\n case \"java\":\n return \"**Caused by:**\";\n\n case \"csharp\":\n case \"dotnet\":\n return \"**---> Inner Exception:**\";\n\n case \"ruby\":\n return \"**Caused by:**\";\n\n case \"go\":\n return \"**Wrapped error:**\";\n\n case \"rust\":\n return `**Caused by (${index}):**`;\n\n default:\n return defaultMessage;\n }\n}\n\nfunction formatRequestInterfaceOutput(_event: Event, data: z.infer<typeof RequestEntrySchema>) {\n if (!data.method || !data.url) {\n return \"\";\n }\n return `### HTTP Request\\n\\n**Method:** ${data.method}\\n**URL:** ${data.url}\\n\\n`;\n}\n\nfunction formatMessageInterfaceOutput(_event: Event, data: z.infer<typeof MessageEntrySchema>) {\n if (!data.formatted && !data.message) {\n return \"\";\n }\n const message = data.formatted || data.message || \"\";\n return `### Error\\n\\n${\"```\"}\\n${message}\\n${\"```\"}\\n\\n`;\n}\n\nfunction formatThreadsInterfaceOutput(event: Event, data: z.infer<typeof ThreadsEntrySchema>) {\n if (!data.values || data.values.length === 0) {\n return \"\";\n }\n\n // Find the crashed thread only\n const crashedThread = data.values.find(t => t.crashed);\n\n if (!crashedThread?.stacktrace?.frames) {\n return \"\";\n }\n\n const parts: string[] = [];\n\n // Include thread name if available\n if (crashedThread.name) {\n parts.push(`**Thread** (${crashedThread.name})`);\n parts.push(\"\");\n }\n\n const frames = crashedThread.stacktrace.frames;\n\n // Find and format the first in-app frame with enhanced view\n const firstInAppFrame = findFirstInAppFrame(frames);\n if (firstInAppFrame && (firstInAppFrame.context?.length || firstInAppFrame.vars)) {\n parts.push(renderEnhancedFrame(firstInAppFrame, event));\n parts.push(\"\");\n parts.push(\"**Full Stacktrace:**\");\n parts.push(\"────────────────\");\n } else {\n parts.push(\"**Stacktrace:**\");\n }\n\n parts.push(\"```\");\n parts.push(\n frames\n .map(frame => {\n const header = formatFrameHeader(frame, undefined, event.platform);\n const context = renderInlineContext(frame);\n return `${header}${context}`;\n })\n .join(\"\\n\"),\n );\n parts.push(\"```\");\n parts.push(\"\");\n\n return parts.join(\"\\n\");\n}\n\n/**\n * Renders surrounding source code context for a stack frame.\n * Shows a window of code lines around the error line with visual indicators.\n *\n * @param frame - The stack frame containing context lines\n * @param contextSize - Number of lines to show before and after the error line (default: 3)\n * @returns Formatted context lines with line numbers and arrow indicator for the error line\n */\nfunction renderContextLines(frame: z.infer<typeof FrameInterface>, contextSize = 3): string {\n if (!frame.context || frame.context.length === 0 || !frame.lineNo) {\n return \"\";\n }\n\n const lines: string[] = [];\n const errorLine = frame.lineNo;\n const maxLineNoWidth = Math.max(...frame.context.map(([lineNo]) => lineNo.toString().length));\n\n for (const [lineNo, code] of frame.context) {\n const isErrorLine = lineNo === errorLine;\n const lineNoStr = lineNo.toString().padStart(maxLineNoWidth, \" \");\n\n if (Math.abs(lineNo - errorLine) <= contextSize) {\n if (isErrorLine) {\n lines.push(` → ${lineNoStr} │ ${code}`);\n } else {\n lines.push(` ${lineNoStr} │ ${code}`);\n }\n }\n }\n\n return lines.join(\"\\n\");\n}\n\n/**\n * Formats a variable value for display in the variables table.\n * Handles different types appropriately and safely, converting complex objects\n * to readable representations and handling edge cases like circular references.\n *\n * @param value - The variable value to format (can be any type)\n * @param maxLength - Maximum length for stringified objects/arrays (default: 80)\n * @returns markdown string representation of the value\n */\nfunction formatVariableValue(value: unknown, maxLength = 80): string {\n try {\n if (typeof value === \"string\") {\n return `\"${value}\"`;\n }\n if (value === null) {\n return \"null\";\n }\n if (value === undefined) {\n return \"undefined\";\n }\n if (typeof value === \"object\") {\n const stringified = JSON.stringify(value);\n if (stringified.length > maxLength) {\n // Leave room for \", ...]\" or \", ...}\"\n const truncateAt = maxLength - 6;\n let truncated = stringified.substring(0, truncateAt);\n\n // Find the last complete element by looking for the last comma\n const lastComma = truncated.lastIndexOf(\",\");\n if (lastComma > 0) {\n truncated = truncated.substring(0, lastComma);\n }\n\n // Add the appropriate ending\n if (Array.isArray(value)) {\n return `${truncated}, ...]`;\n }\n return `${truncated}, ...}`;\n }\n return stringified;\n }\n return String(value);\n } catch {\n // Handle circular references or other stringify errors\n return `<${typeof value}>`;\n }\n}\n\n/**\n * Renders a table of local variables in a tree-like format.\n * Uses box-drawing characters to create a visual hierarchy of variables\n * and their values at the point where the error occurred.\n *\n * @param vars - Object containing variable names as keys and their values\n * @returns Formatted variables table with tree-style prefix characters\n */\nfunction renderVariablesTable(vars: Record<string, unknown>): string {\n const entries = Object.entries(vars);\n if (entries.length === 0) {\n return \"\";\n }\n\n const lines: string[] = [\"Local Variables:\"];\n const lastIndex = entries.length - 1;\n\n entries.forEach(([key, value], index) => {\n const prefix = index === lastIndex ? \"└─\" : \"├─\";\n const valueStr = formatVariableValue(value);\n lines.push(`${prefix} ${key}: ${valueStr}`);\n });\n\n return lines.join(\"\\n\");\n}\n\n/**\n * Finds the first application frame (in_app) in a stack trace.\n * Searches from the bottom of the stack (oldest frame) to find the first\n * frame that belongs to the user's application code rather than libraries.\n *\n * @param frames - Array of stack frames, typically in reverse chronological order\n * @returns The first in-app frame found, or undefined if none exist\n */\nfunction findFirstInAppFrame(frames: z.infer<typeof FrameInterface>[]): z.infer<typeof FrameInterface> | undefined {\n // Frames are usually in reverse order (most recent first)\n // We want the first in-app frame from the bottom\n for (let i = frames.length - 1; i >= 0; i--) {\n if (frames[i].inApp === true) {\n return frames[i];\n }\n }\n return undefined;\n}\n\nfunction formatTags(tags: z.infer<typeof EventSchema>[\"tags\"]) {\n if (!tags || tags.length === 0) {\n return \"\";\n }\n return `### Tags\\n\\n${tags.map(tag => `**${tag.key}**: ${tag.value}`).join(\"\\n\")}\\n\\n`;\n}\n\nfunction formatContexts(contexts: z.infer<typeof EventSchema>[\"contexts\"]) {\n if (!contexts || Object.keys(contexts).length === 0) {\n return \"\";\n }\n return `### Additional Context\\n\\nThese are additional context provided by the user when they're instrumenting their application.\\n\\n${Object.entries(\n contexts,\n )\n .map(\n ([name, data]) =>\n `**${name}**\\n${Object.entries(data)\n .filter(([key, _]) => key !== \"type\")\n .map(([key, value]) => {\n return `${key}: ${JSON.stringify(value, undefined, 2)}`;\n })\n .join(\"\\n\")}`,\n )\n .join(\"\\n\\n\")}\\n\\n`;\n}\n"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { z } from 'zod';
1
+ import { z } from 'zod/v3';
2
2
  export declare const FrameInterface: z.ZodObject<{
3
3
  filename: z.ZodOptional<z.ZodNullable<z.ZodString>>;
4
4
  function: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -455,11 +455,11 @@ export declare const RequestEntrySchema: z.ZodObject<{
455
455
  method: z.ZodOptional<z.ZodNullable<z.ZodString>>;
456
456
  url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
457
457
  }, "strip", z.ZodTypeAny, {
458
- method?: string | null | undefined;
459
458
  url?: string | null | undefined;
460
- }, {
461
459
  method?: string | null | undefined;
460
+ }, {
462
461
  url?: string | null | undefined;
462
+ method?: string | null | undefined;
463
463
  }>;
464
464
  export declare const MessageEntrySchema: z.ZodObject<{
465
465
  formatted: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -1427,22 +1427,22 @@ export declare const ErrorEventSchema: z.ZodObject<Omit<{
1427
1427
  method: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1428
1428
  url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1429
1429
  }, "strip", z.ZodTypeAny, {
1430
- method?: string | null | undefined;
1431
1430
  url?: string | null | undefined;
1432
- }, {
1433
1431
  method?: string | null | undefined;
1432
+ }, {
1434
1433
  url?: string | null | undefined;
1434
+ method?: string | null | undefined;
1435
1435
  }>;
1436
1436
  }, "strip", z.ZodTypeAny, {
1437
1437
  data: {
1438
- method?: string | null | undefined;
1439
1438
  url?: string | null | undefined;
1439
+ method?: string | null | undefined;
1440
1440
  };
1441
1441
  type: "request";
1442
1442
  }, {
1443
1443
  data: {
1444
- method?: string | null | undefined;
1445
1444
  url?: string | null | undefined;
1445
+ method?: string | null | undefined;
1446
1446
  };
1447
1447
  type: "request";
1448
1448
  }>, z.ZodObject<{
@@ -1634,8 +1634,8 @@ export declare const ErrorEventSchema: z.ZodObject<Omit<{
1634
1634
  type: "threads";
1635
1635
  } | {
1636
1636
  data: {
1637
- method?: string | null | undefined;
1638
1637
  url?: string | null | undefined;
1638
+ method?: string | null | undefined;
1639
1639
  };
1640
1640
  type: "request";
1641
1641
  } | {
@@ -1751,8 +1751,8 @@ export declare const ErrorEventSchema: z.ZodObject<Omit<{
1751
1751
  type: "threads";
1752
1752
  } | {
1753
1753
  data: {
1754
- method?: string | null | undefined;
1755
1754
  url?: string | null | undefined;
1755
+ method?: string | null | undefined;
1756
1756
  };
1757
1757
  type: "request";
1758
1758
  } | {
@@ -2429,22 +2429,22 @@ export declare const TransactionEventSchema: z.ZodObject<Omit<{
2429
2429
  method: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2430
2430
  url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2431
2431
  }, "strip", z.ZodTypeAny, {
2432
- method?: string | null | undefined;
2433
2432
  url?: string | null | undefined;
2434
- }, {
2435
2433
  method?: string | null | undefined;
2434
+ }, {
2436
2435
  url?: string | null | undefined;
2436
+ method?: string | null | undefined;
2437
2437
  }>;
2438
2438
  }, "strip", z.ZodTypeAny, {
2439
2439
  data: {
2440
- method?: string | null | undefined;
2441
2440
  url?: string | null | undefined;
2441
+ method?: string | null | undefined;
2442
2442
  };
2443
2443
  type: "request";
2444
2444
  }, {
2445
2445
  data: {
2446
- method?: string | null | undefined;
2447
2446
  url?: string | null | undefined;
2447
+ method?: string | null | undefined;
2448
2448
  };
2449
2449
  type: "request";
2450
2450
  }>, z.ZodObject<{
@@ -2644,8 +2644,8 @@ export declare const TransactionEventSchema: z.ZodObject<Omit<{
2644
2644
  type: "threads";
2645
2645
  } | {
2646
2646
  data: {
2647
- method?: string | null | undefined;
2648
2647
  url?: string | null | undefined;
2648
+ method?: string | null | undefined;
2649
2649
  };
2650
2650
  type: "request";
2651
2651
  } | {
@@ -2763,8 +2763,8 @@ export declare const TransactionEventSchema: z.ZodObject<Omit<{
2763
2763
  type: "threads";
2764
2764
  } | {
2765
2765
  data: {
2766
- method?: string | null | undefined;
2767
2766
  url?: string | null | undefined;
2767
+ method?: string | null | undefined;
2768
2768
  };
2769
2769
  type: "request";
2770
2770
  } | {
@@ -3443,22 +3443,22 @@ export declare const UnknownEventSchema: z.ZodObject<Omit<{
3443
3443
  method: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3444
3444
  url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3445
3445
  }, "strip", z.ZodTypeAny, {
3446
- method?: string | null | undefined;
3447
3446
  url?: string | null | undefined;
3448
- }, {
3449
3447
  method?: string | null | undefined;
3448
+ }, {
3450
3449
  url?: string | null | undefined;
3450
+ method?: string | null | undefined;
3451
3451
  }>;
3452
3452
  }, "strip", z.ZodTypeAny, {
3453
3453
  data: {
3454
- method?: string | null | undefined;
3455
3454
  url?: string | null | undefined;
3455
+ method?: string | null | undefined;
3456
3456
  };
3457
3457
  type: "request";
3458
3458
  }, {
3459
3459
  data: {
3460
- method?: string | null | undefined;
3461
3460
  url?: string | null | undefined;
3461
+ method?: string | null | undefined;
3462
3462
  };
3463
3463
  type: "request";
3464
3464
  }>, z.ZodObject<{
@@ -3648,8 +3648,8 @@ export declare const UnknownEventSchema: z.ZodObject<Omit<{
3648
3648
  type: "threads";
3649
3649
  } | {
3650
3650
  data: {
3651
- method?: string | null | undefined;
3652
3651
  url?: string | null | undefined;
3652
+ method?: string | null | undefined;
3653
3653
  };
3654
3654
  type: "request";
3655
3655
  } | {
@@ -3763,8 +3763,8 @@ export declare const UnknownEventSchema: z.ZodObject<Omit<{
3763
3763
  type: "threads";
3764
3764
  } | {
3765
3765
  data: {
3766
- method?: string | null | undefined;
3767
3766
  url?: string | null | undefined;
3767
+ method?: string | null | undefined;
3768
3768
  };
3769
3769
  type: "request";
3770
3770
  } | {
@@ -4439,22 +4439,22 @@ export declare const EventSchema: z.ZodUnion<[z.ZodObject<Omit<{
4439
4439
  method: z.ZodOptional<z.ZodNullable<z.ZodString>>;
4440
4440
  url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
4441
4441
  }, "strip", z.ZodTypeAny, {
4442
- method?: string | null | undefined;
4443
4442
  url?: string | null | undefined;
4444
- }, {
4445
4443
  method?: string | null | undefined;
4444
+ }, {
4446
4445
  url?: string | null | undefined;
4446
+ method?: string | null | undefined;
4447
4447
  }>;
4448
4448
  }, "strip", z.ZodTypeAny, {
4449
4449
  data: {
4450
- method?: string | null | undefined;
4451
4450
  url?: string | null | undefined;
4451
+ method?: string | null | undefined;
4452
4452
  };
4453
4453
  type: "request";
4454
4454
  }, {
4455
4455
  data: {
4456
- method?: string | null | undefined;
4457
4456
  url?: string | null | undefined;
4457
+ method?: string | null | undefined;
4458
4458
  };
4459
4459
  type: "request";
4460
4460
  }>, z.ZodObject<{
@@ -4646,8 +4646,8 @@ export declare const EventSchema: z.ZodUnion<[z.ZodObject<Omit<{
4646
4646
  type: "threads";
4647
4647
  } | {
4648
4648
  data: {
4649
- method?: string | null | undefined;
4650
4649
  url?: string | null | undefined;
4650
+ method?: string | null | undefined;
4651
4651
  };
4652
4652
  type: "request";
4653
4653
  } | {
@@ -4763,8 +4763,8 @@ export declare const EventSchema: z.ZodUnion<[z.ZodObject<Omit<{
4763
4763
  type: "threads";
4764
4764
  } | {
4765
4765
  data: {
4766
- method?: string | null | undefined;
4767
4766
  url?: string | null | undefined;
4767
+ method?: string | null | undefined;
4768
4768
  };
4769
4769
  type: "request";
4770
4770
  } | {
@@ -5440,22 +5440,22 @@ export declare const EventSchema: z.ZodUnion<[z.ZodObject<Omit<{
5440
5440
  method: z.ZodOptional<z.ZodNullable<z.ZodString>>;
5441
5441
  url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
5442
5442
  }, "strip", z.ZodTypeAny, {
5443
- method?: string | null | undefined;
5444
5443
  url?: string | null | undefined;
5445
- }, {
5446
5444
  method?: string | null | undefined;
5445
+ }, {
5447
5446
  url?: string | null | undefined;
5447
+ method?: string | null | undefined;
5448
5448
  }>;
5449
5449
  }, "strip", z.ZodTypeAny, {
5450
5450
  data: {
5451
- method?: string | null | undefined;
5452
5451
  url?: string | null | undefined;
5452
+ method?: string | null | undefined;
5453
5453
  };
5454
5454
  type: "request";
5455
5455
  }, {
5456
5456
  data: {
5457
- method?: string | null | undefined;
5458
5457
  url?: string | null | undefined;
5458
+ method?: string | null | undefined;
5459
5459
  };
5460
5460
  type: "request";
5461
5461
  }>, z.ZodObject<{
@@ -5655,8 +5655,8 @@ export declare const EventSchema: z.ZodUnion<[z.ZodObject<Omit<{
5655
5655
  type: "threads";
5656
5656
  } | {
5657
5657
  data: {
5658
- method?: string | null | undefined;
5659
5658
  url?: string | null | undefined;
5659
+ method?: string | null | undefined;
5660
5660
  };
5661
5661
  type: "request";
5662
5662
  } | {
@@ -5774,8 +5774,8 @@ export declare const EventSchema: z.ZodUnion<[z.ZodObject<Omit<{
5774
5774
  type: "threads";
5775
5775
  } | {
5776
5776
  data: {
5777
- method?: string | null | undefined;
5778
5777
  url?: string | null | undefined;
5778
+ method?: string | null | undefined;
5779
5779
  };
5780
5780
  type: "request";
5781
5781
  } | {
@@ -6453,22 +6453,22 @@ export declare const EventSchema: z.ZodUnion<[z.ZodObject<Omit<{
6453
6453
  method: z.ZodOptional<z.ZodNullable<z.ZodString>>;
6454
6454
  url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
6455
6455
  }, "strip", z.ZodTypeAny, {
6456
- method?: string | null | undefined;
6457
6456
  url?: string | null | undefined;
6458
- }, {
6459
6457
  method?: string | null | undefined;
6458
+ }, {
6460
6459
  url?: string | null | undefined;
6460
+ method?: string | null | undefined;
6461
6461
  }>;
6462
6462
  }, "strip", z.ZodTypeAny, {
6463
6463
  data: {
6464
- method?: string | null | undefined;
6465
6464
  url?: string | null | undefined;
6465
+ method?: string | null | undefined;
6466
6466
  };
6467
6467
  type: "request";
6468
6468
  }, {
6469
6469
  data: {
6470
- method?: string | null | undefined;
6471
6470
  url?: string | null | undefined;
6471
+ method?: string | null | undefined;
6472
6472
  };
6473
6473
  type: "request";
6474
6474
  }>, z.ZodObject<{
@@ -6658,8 +6658,8 @@ export declare const EventSchema: z.ZodUnion<[z.ZodObject<Omit<{
6658
6658
  type: "threads";
6659
6659
  } | {
6660
6660
  data: {
6661
- method?: string | null | undefined;
6662
6661
  url?: string | null | undefined;
6662
+ method?: string | null | undefined;
6663
6663
  };
6664
6664
  type: "request";
6665
6665
  } | {
@@ -6773,8 +6773,8 @@ export declare const EventSchema: z.ZodUnion<[z.ZodObject<Omit<{
6773
6773
  type: "threads";
6774
6774
  } | {
6775
6775
  data: {
6776
- method?: string | null | undefined;
6777
6776
  url?: string | null | undefined;
6777
+ method?: string | null | undefined;
6778
6778
  };
6779
6779
  type: "request";
6780
6780
  } | {
@@ -1,5 +1,5 @@
1
1
  import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
- import { z } from 'zod';
2
+ import { z } from 'zod/v3';
3
3
  declare const inputSchema: {
4
4
  filters: z.ZodUnion<[z.ZodObject<{
5
5
  timeWindow: z.ZodNumber;
@@ -2,13 +2,12 @@
2
2
  !function() {
3
3
  try {
4
4
  var e = "undefined" != typeof window ? window : "undefined" != typeof global ? global : "undefined" != typeof globalThis ? globalThis : "undefined" != typeof self ? self : {}, n = new e.Error().stack;
5
- n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "cfc20e89-a00d-417d-82ac-ae68b723eab0", e._sentryDebugIdIdentifier = "sentry-dbid-cfc20e89-a00d-417d-82ac-ae68b723eab0");
5
+ n && (e._sentryDebugIds = e._sentryDebugIds || {}, e._sentryDebugIds[n] = "9a0f2972-d124-46a6-8cc0-f319b99677ec", e._sentryDebugIdIdentifier = "sentry-dbid-9a0f2972-d124-46a6-8cc0-f319b99677ec");
6
6
  } catch (e2) {
7
7
  }
8
8
  }();
9
- import { McpServer } from "../../node_modules/.pnpm/@modelcontextprotocol_sdk@1.16.0/node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.js";
9
+ import { McpServer } from "../../node_modules/.pnpm/@modelcontextprotocol_sdk@1.24.3_zod@4.1.13/node_modules/@modelcontextprotocol/sdk/dist/esm/server/mcp.js";
10
10
  import { wrapMcpServerWithSentry, captureException } from "@sentry/node";
11
- import { z } from "zod";
12
11
  import { formatErrorEnvelope } from "../formatters/md/errors.js";
13
12
  import { formatLogEnvelope } from "../formatters/md/logs.js";
14
13
  import { extractTracesFromEnvelopes, formatTraceSummary, buildSpanTree, renderSpanTree } from "../formatters/md/traces.js";
@@ -16,20 +15,22 @@ import { getBuffer } from "../utils/getBuffer.js";
16
15
  import "../parser/helpers.js";
17
16
  import "uuidv7";
18
17
  import "../../_virtual/_sentry-release-injection-file.js";
18
+ import "node:child_process";
19
19
  import "node:http";
20
20
  import "node:dns/promises";
21
21
  import "node:net";
22
22
  import "node:os";
23
23
  import { NO_ERRORS_CONTENT, NO_LOGS_CONTENT } from "./constants.js";
24
+ import { union as unionType, object as objectType, number as numberType, string as stringType } from "../../node_modules/.pnpm/zod@4.1.13/node_modules/zod/v3/types.js";
24
25
  const inputSchema = {
25
- filters: z.union([
26
- z.object({
27
- timeWindow: z.number().describe(
26
+ filters: unionType([
27
+ objectType({
28
+ timeWindow: numberType().describe(
28
29
  "Number of seconds to look back from now. Examples: 60 = last minute, 300 = last 5 minutes, 3600 = last hour. Default: 60"
29
30
  )
30
31
  }),
31
- z.object({
32
- filename: z.string().describe(
32
+ objectType({
33
+ filename: stringType().describe(
33
34
  "Exact filename to search in stack traces or logs. Examples: 'Button.tsx', 'auth.js', 'api/routes.ts'. Case-sensitive."
34
35
  )
35
36
  }),
@@ -40,9 +41,9 @@ const inputSchema = {
40
41
  *
41
42
  * https://github.com/getsentry/spotlight/pull/968#discussion_r2391587907
42
43
  */
43
- z.object({
44
- limit: z.number().describe("Maximum number of results to return. Examples: 10, 20, 50. Default: no limit"),
45
- offset: z.number().default(0).describe(
44
+ objectType({
45
+ limit: numberType().describe("Maximum number of results to return. Examples: 10, 20, 50. Default: no limit"),
46
+ offset: numberType().default(0).describe(
46
47
  "Number of results to skip from the beginning. Examples: 0 = start from first, 10 = skip first 10. Default: 0"
47
48
  )
48
49
  }).optional().describe("Pagination: Use when timeWindow doesn't work or for browsing through many results")
@@ -58,7 +59,7 @@ function createMCPInstance() {
58
59
  const mcp = wrapMcpServerWithSentry(
59
60
  new McpServer({
60
61
  name: "spotlight-mcp",
61
- version: String("4.7.2")
62
+ version: String("4.8.0")
62
63
  })
63
64
  );
64
65
  mcp.registerTool(
@@ -357,7 +358,7 @@ get_traces({ traceId: "71a8c5e41ae1044dee67f50a07538fe7" })
357
358
  - Or full 32-character hex string
358
359
  - Case-insensitive`,
359
360
  inputSchema: {
360
- traceId: z.string().describe(
361
+ traceId: stringType().describe(
361
362
  "Trace ID to retrieve. Format: 8 or 32 hex characters. Examples: '71a8c5e4' or '71a8c5e41ae1044dee67f50a07538fe7'"
362
363
  )
363
364
  }