@marinoscar/platform-api 0.0.0-stage → 0.1.0-next.3

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 (616) hide show
  1. package/CHANGELOG.md +54 -0
  2. package/LICENSE +21 -0
  3. package/README.md +106 -2
  4. package/dist/core/crypto/encryption-key-startup-check.d.ts +29 -0
  5. package/dist/core/crypto/encryption-key-startup-check.d.ts.map +1 -0
  6. package/dist/core/crypto/encryption-key-startup-check.js +221 -0
  7. package/dist/core/crypto/encryption-key-startup-check.js.map +1 -0
  8. package/dist/core/crypto/secret-cipher.d.ts +151 -0
  9. package/dist/core/crypto/secret-cipher.d.ts.map +1 -0
  10. package/dist/core/crypto/secret-cipher.js +452 -0
  11. package/dist/core/crypto/secret-cipher.js.map +1 -0
  12. package/dist/core/data-access/index.d.ts +6 -0
  13. package/dist/core/data-access/index.d.ts.map +1 -0
  14. package/dist/core/data-access/index.js +19 -0
  15. package/dist/core/data-access/index.js.map +1 -0
  16. package/dist/core/data-access/scoped-access.error.d.ts +35 -0
  17. package/dist/core/data-access/scoped-access.error.d.ts.map +1 -0
  18. package/dist/core/data-access/scoped-access.error.js +43 -0
  19. package/dist/core/data-access/scoped-access.error.js.map +1 -0
  20. package/dist/core/data-access/scoped-client.d.ts +104 -0
  21. package/dist/core/data-access/scoped-client.d.ts.map +1 -0
  22. package/dist/core/data-access/scoped-client.js +270 -0
  23. package/dist/core/data-access/scoped-client.js.map +1 -0
  24. package/dist/core/data-access/types.d.ts +85 -0
  25. package/dist/core/data-access/types.d.ts.map +1 -0
  26. package/dist/core/data-access/types.js +12 -0
  27. package/dist/core/data-access/types.js.map +1 -0
  28. package/dist/core/data-access/user-owned-data.registry.d.ts +60 -0
  29. package/dist/core/data-access/user-owned-data.registry.d.ts.map +1 -0
  30. package/dist/core/data-access/user-owned-data.registry.js +140 -0
  31. package/dist/core/data-access/user-owned-data.registry.js.map +1 -0
  32. package/dist/core/errors/database-seed.exception.d.ts +23 -0
  33. package/dist/core/errors/database-seed.exception.d.ts.map +1 -0
  34. package/dist/core/errors/database-seed.exception.js +49 -0
  35. package/dist/core/errors/database-seed.exception.js.map +1 -0
  36. package/dist/core/errors/error.dto.d.ts +47 -0
  37. package/dist/core/errors/error.dto.d.ts.map +1 -0
  38. package/dist/core/errors/error.dto.js +121 -0
  39. package/dist/core/errors/error.dto.js.map +1 -0
  40. package/dist/core/errors/http-exception.filter.d.ts +63 -0
  41. package/dist/core/errors/http-exception.filter.d.ts.map +1 -0
  42. package/dist/core/errors/http-exception.filter.js +234 -0
  43. package/dist/core/errors/http-exception.filter.js.map +1 -0
  44. package/dist/core/errors/verbatim-error-body.exception.d.ts +46 -0
  45. package/dist/core/errors/verbatim-error-body.exception.d.ts.map +1 -0
  46. package/dist/core/errors/verbatim-error-body.exception.js +135 -0
  47. package/dist/core/errors/verbatim-error-body.exception.js.map +1 -0
  48. package/dist/core/host/index.d.ts +7 -0
  49. package/dist/core/host/index.d.ts.map +1 -0
  50. package/dist/core/host/index.js +14 -0
  51. package/dist/core/host/index.js.map +1 -0
  52. package/dist/core/host/platform-host.d.ts +58 -0
  53. package/dist/core/host/platform-host.d.ts.map +1 -0
  54. package/dist/core/host/platform-host.js +104 -0
  55. package/dist/core/host/platform-host.js.map +1 -0
  56. package/dist/core/host/platform-host.module.d.ts +53 -0
  57. package/dist/core/host/platform-host.module.d.ts.map +1 -0
  58. package/dist/core/host/platform-host.module.js +90 -0
  59. package/dist/core/host/platform-host.module.js.map +1 -0
  60. package/dist/core/host/ports.d.ts +132 -0
  61. package/dist/core/host/ports.d.ts.map +1 -0
  62. package/dist/core/host/ports.js +48 -0
  63. package/dist/core/host/ports.js.map +1 -0
  64. package/dist/core/index.d.ts +15 -0
  65. package/dist/core/index.d.ts.map +1 -0
  66. package/dist/core/index.js +77 -0
  67. package/dist/core/index.js.map +1 -0
  68. package/dist/core/openapi/openapi-tag.registry.d.ts +80 -0
  69. package/dist/core/openapi/openapi-tag.registry.d.ts.map +1 -0
  70. package/dist/core/openapi/openapi-tag.registry.js +72 -0
  71. package/dist/core/openapi/openapi-tag.registry.js.map +1 -0
  72. package/dist/core/principal/index.d.ts +6 -0
  73. package/dist/core/principal/index.d.ts.map +1 -0
  74. package/dist/core/principal/index.js +3 -0
  75. package/dist/core/principal/index.js.map +1 -0
  76. package/dist/core/principal/principal.types.d.ts +222 -0
  77. package/dist/core/principal/principal.types.d.ts.map +1 -0
  78. package/dist/core/principal/principal.types.js +22 -0
  79. package/dist/core/principal/principal.types.js.map +1 -0
  80. package/dist/core/registry/index.d.ts +4 -0
  81. package/dist/core/registry/index.d.ts.map +1 -0
  82. package/dist/core/registry/index.js +19 -0
  83. package/dist/core/registry/index.js.map +1 -0
  84. package/dist/core/registry/registry-freeze.service.d.ts +14 -0
  85. package/dist/core/registry/registry-freeze.service.d.ts.map +1 -0
  86. package/dist/core/registry/registry-freeze.service.js +55 -0
  87. package/dist/core/registry/registry-freeze.service.js.map +1 -0
  88. package/dist/core/registry/registry.d.ts +268 -0
  89. package/dist/core/registry/registry.d.ts.map +1 -0
  90. package/dist/core/registry/registry.js +351 -0
  91. package/dist/core/registry/registry.js.map +1 -0
  92. package/dist/core/registry/testing.d.ts +29 -0
  93. package/dist/core/registry/testing.d.ts.map +1 -0
  94. package/dist/core/registry/testing.js +63 -0
  95. package/dist/core/registry/testing.js.map +1 -0
  96. package/dist/doctor/doctor-check.interface.d.ts +100 -0
  97. package/dist/doctor/doctor-check.interface.d.ts.map +1 -0
  98. package/dist/doctor/doctor-check.interface.js +95 -0
  99. package/dist/doctor/doctor-check.interface.js.map +1 -0
  100. package/dist/doctor/doctor-check.registry.d.ts +37 -0
  101. package/dist/doctor/doctor-check.registry.d.ts.map +1 -0
  102. package/dist/doctor/doctor-check.registry.js +96 -0
  103. package/dist/doctor/doctor-check.registry.js.map +1 -0
  104. package/dist/doctor/doctor.controller.factory.d.ts +29 -0
  105. package/dist/doctor/doctor.controller.factory.d.ts.map +1 -0
  106. package/dist/doctor/doctor.controller.factory.js +121 -0
  107. package/dist/doctor/doctor.controller.factory.js.map +1 -0
  108. package/dist/doctor/doctor.module.d.ts +78 -0
  109. package/dist/doctor/doctor.module.d.ts.map +1 -0
  110. package/dist/doctor/doctor.module.js +158 -0
  111. package/dist/doctor/doctor.module.js.map +1 -0
  112. package/dist/doctor/doctor.options.d.ts +39 -0
  113. package/dist/doctor/doctor.options.d.ts.map +1 -0
  114. package/dist/doctor/doctor.options.js +21 -0
  115. package/dist/doctor/doctor.options.js.map +1 -0
  116. package/dist/doctor/doctor.service.d.ts +80 -0
  117. package/dist/doctor/doctor.service.d.ts.map +1 -0
  118. package/dist/doctor/doctor.service.js +301 -0
  119. package/dist/doctor/doctor.service.js.map +1 -0
  120. package/dist/doctor/dto/doctor-query.dto.d.ts +15 -0
  121. package/dist/doctor/dto/doctor-query.dto.d.ts.map +1 -0
  122. package/dist/doctor/dto/doctor-query.dto.js +16 -0
  123. package/dist/doctor/dto/doctor-query.dto.js.map +1 -0
  124. package/dist/doctor/dto/doctor-report.dto.d.ts +27 -0
  125. package/dist/doctor/dto/doctor-report.dto.d.ts.map +1 -0
  126. package/dist/doctor/dto/doctor-report.dto.js +23 -0
  127. package/dist/doctor/dto/doctor-report.dto.js.map +1 -0
  128. package/dist/doctor/egress/classify-host.d.ts +73 -0
  129. package/dist/doctor/egress/classify-host.d.ts.map +1 -0
  130. package/dist/doctor/egress/classify-host.js +210 -0
  131. package/dist/doctor/egress/classify-host.js.map +1 -0
  132. package/dist/doctor/egress/egress.registry.d.ts +34 -0
  133. package/dist/doctor/egress/egress.registry.d.ts.map +1 -0
  134. package/dist/doctor/egress/egress.registry.js +70 -0
  135. package/dist/doctor/egress/egress.registry.js.map +1 -0
  136. package/dist/doctor/egress/egress.types.d.ts +135 -0
  137. package/dist/doctor/egress/egress.types.d.ts.map +1 -0
  138. package/dist/doctor/egress/egress.types.js +42 -0
  139. package/dist/doctor/egress/egress.types.js.map +1 -0
  140. package/dist/doctor/egress/index.d.ts +6 -0
  141. package/dist/doctor/egress/index.d.ts.map +1 -0
  142. package/dist/doctor/egress/index.js +23 -0
  143. package/dist/doctor/egress/index.js.map +1 -0
  144. package/dist/doctor/egress/network-egress.doctor-check.d.ts +78 -0
  145. package/dist/doctor/egress/network-egress.doctor-check.d.ts.map +1 -0
  146. package/dist/doctor/egress/network-egress.doctor-check.js +226 -0
  147. package/dist/doctor/egress/network-egress.doctor-check.js.map +1 -0
  148. package/dist/doctor/index.d.ts +19 -0
  149. package/dist/doctor/index.d.ts.map +1 -0
  150. package/dist/doctor/index.js +66 -0
  151. package/dist/doctor/index.js.map +1 -0
  152. package/dist/doctor/support-bundle/index.d.ts +12 -0
  153. package/dist/doctor/support-bundle/index.d.ts.map +1 -0
  154. package/dist/doctor/support-bundle/index.js +32 -0
  155. package/dist/doctor/support-bundle/index.js.map +1 -0
  156. package/dist/doctor/support-bundle/redact.d.ts +76 -0
  157. package/dist/doctor/support-bundle/redact.d.ts.map +1 -0
  158. package/dist/doctor/support-bundle/redact.js +236 -0
  159. package/dist/doctor/support-bundle/redact.js.map +1 -0
  160. package/dist/doctor/support-bundle/sections/doctor.section.d.ts +81 -0
  161. package/dist/doctor/support-bundle/sections/doctor.section.d.ts.map +1 -0
  162. package/dist/doctor/support-bundle/sections/doctor.section.js +83 -0
  163. package/dist/doctor/support-bundle/sections/doctor.section.js.map +1 -0
  164. package/dist/doctor/support-bundle/sections/egress.section.d.ts +73 -0
  165. package/dist/doctor/support-bundle/sections/egress.section.d.ts.map +1 -0
  166. package/dist/doctor/support-bundle/sections/egress.section.js +97 -0
  167. package/dist/doctor/support-bundle/sections/egress.section.js.map +1 -0
  168. package/dist/doctor/support-bundle/sections/meta.section.d.ts +39 -0
  169. package/dist/doctor/support-bundle/sections/meta.section.d.ts.map +1 -0
  170. package/dist/doctor/support-bundle/sections/meta.section.js +89 -0
  171. package/dist/doctor/support-bundle/sections/meta.section.js.map +1 -0
  172. package/dist/doctor/support-bundle/support-bundle-section.interface.d.ts +100 -0
  173. package/dist/doctor/support-bundle/support-bundle-section.interface.d.ts.map +1 -0
  174. package/dist/doctor/support-bundle/support-bundle-section.interface.js +59 -0
  175. package/dist/doctor/support-bundle/support-bundle-section.interface.js.map +1 -0
  176. package/dist/doctor/support-bundle/support-bundle.controller.d.ts +57 -0
  177. package/dist/doctor/support-bundle/support-bundle.controller.d.ts.map +1 -0
  178. package/dist/doctor/support-bundle/support-bundle.controller.js +141 -0
  179. package/dist/doctor/support-bundle/support-bundle.controller.js.map +1 -0
  180. package/dist/doctor/support-bundle/support-bundle.options.d.ts +92 -0
  181. package/dist/doctor/support-bundle/support-bundle.options.d.ts.map +1 -0
  182. package/dist/doctor/support-bundle/support-bundle.options.js +100 -0
  183. package/dist/doctor/support-bundle/support-bundle.options.js.map +1 -0
  184. package/dist/doctor/support-bundle/support-bundle.registry.d.ts +38 -0
  185. package/dist/doctor/support-bundle/support-bundle.registry.d.ts.map +1 -0
  186. package/dist/doctor/support-bundle/support-bundle.registry.js +90 -0
  187. package/dist/doctor/support-bundle/support-bundle.registry.js.map +1 -0
  188. package/dist/doctor/support-bundle/support-bundle.service.d.ts +63 -0
  189. package/dist/doctor/support-bundle/support-bundle.service.d.ts.map +1 -0
  190. package/dist/doctor/support-bundle/support-bundle.service.js +244 -0
  191. package/dist/doctor/support-bundle/support-bundle.service.js.map +1 -0
  192. package/dist/index.d.ts +11 -0
  193. package/dist/index.d.ts.map +1 -0
  194. package/dist/index.js +14 -0
  195. package/dist/index.js.map +1 -0
  196. package/dist/otel-core/index.d.ts +9 -0
  197. package/dist/otel-core/index.d.ts.map +1 -0
  198. package/dist/otel-core/index.js +58 -0
  199. package/dist/otel-core/index.js.map +1 -0
  200. package/dist/otel-core/metrics/gauge-provider.d.ts +44 -0
  201. package/dist/otel-core/metrics/gauge-provider.d.ts.map +1 -0
  202. package/dist/otel-core/metrics/gauge-provider.js +37 -0
  203. package/dist/otel-core/metrics/gauge-provider.js.map +1 -0
  204. package/dist/otel-core/metrics/labels.d.ts +79 -0
  205. package/dist/otel-core/metrics/labels.d.ts.map +1 -0
  206. package/dist/otel-core/metrics/labels.js +135 -0
  207. package/dist/otel-core/metrics/labels.js.map +1 -0
  208. package/dist/otel-core/metrics/metric-name.registry.d.ts +130 -0
  209. package/dist/otel-core/metrics/metric-name.registry.d.ts.map +1 -0
  210. package/dist/otel-core/metrics/metric-name.registry.js +134 -0
  211. package/dist/otel-core/metrics/metric-name.registry.js.map +1 -0
  212. package/dist/otel-core/metrics/metrics-host.service.d.ts +163 -0
  213. package/dist/otel-core/metrics/metrics-host.service.d.ts.map +1 -0
  214. package/dist/otel-core/metrics/metrics-host.service.js +344 -0
  215. package/dist/otel-core/metrics/metrics-host.service.js.map +1 -0
  216. package/dist/otel-core/metrics/otel-metrics.module.d.ts +54 -0
  217. package/dist/otel-core/metrics/otel-metrics.module.d.ts.map +1 -0
  218. package/dist/otel-core/metrics/otel-metrics.module.js +83 -0
  219. package/dist/otel-core/metrics/otel-metrics.module.js.map +1 -0
  220. package/dist/otel-core/sdk/index.d.ts +5 -0
  221. package/dist/otel-core/sdk/index.d.ts.map +1 -0
  222. package/dist/otel-core/sdk/index.js +27 -0
  223. package/dist/otel-core/sdk/index.js.map +1 -0
  224. package/dist/otel-core/sdk/initialize-otel.d.ts +126 -0
  225. package/dist/otel-core/sdk/initialize-otel.d.ts.map +1 -0
  226. package/dist/otel-core/sdk/initialize-otel.js +204 -0
  227. package/dist/otel-core/sdk/initialize-otel.js.map +1 -0
  228. package/dist/otel-core/sdk/instance-id.d.ts +29 -0
  229. package/dist/otel-core/sdk/instance-id.d.ts.map +1 -0
  230. package/dist/otel-core/sdk/instance-id.js +65 -0
  231. package/dist/otel-core/sdk/instance-id.js.map +1 -0
  232. package/dist/otel-core/sdk/service-name.d.ts +28 -0
  233. package/dist/otel-core/sdk/service-name.d.ts.map +1 -0
  234. package/dist/otel-core/sdk/service-name.js +63 -0
  235. package/dist/otel-core/sdk/service-name.js.map +1 -0
  236. package/dist/otel-core/sdk/telemetry-gate.d.ts +116 -0
  237. package/dist/otel-core/sdk/telemetry-gate.d.ts.map +1 -0
  238. package/dist/otel-core/sdk/telemetry-gate.js +297 -0
  239. package/dist/otel-core/sdk/telemetry-gate.js.map +1 -0
  240. package/dist/otel-core/spans/request-span-attributes.d.ts +58 -0
  241. package/dist/otel-core/spans/request-span-attributes.d.ts.map +1 -0
  242. package/dist/otel-core/spans/request-span-attributes.js +155 -0
  243. package/dist/otel-core/spans/request-span-attributes.js.map +1 -0
  244. package/dist/otel-core/spans/trace.decorator.d.ts +36 -0
  245. package/dist/otel-core/spans/trace.decorator.d.ts.map +1 -0
  246. package/dist/otel-core/spans/trace.decorator.js +74 -0
  247. package/dist/otel-core/spans/trace.decorator.js.map +1 -0
  248. package/dist/telemetry/assistant/telemetry-ai-enabled.guard.d.ts +15 -0
  249. package/dist/telemetry/assistant/telemetry-ai-enabled.guard.d.ts.map +1 -0
  250. package/dist/telemetry/assistant/telemetry-ai-enabled.guard.js +50 -0
  251. package/dist/telemetry/assistant/telemetry-ai-enabled.guard.js.map +1 -0
  252. package/dist/telemetry/assistant/telemetry-assistant.controller.d.ts +14 -0
  253. package/dist/telemetry/assistant/telemetry-assistant.controller.d.ts.map +1 -0
  254. package/dist/telemetry/assistant/telemetry-assistant.controller.js +178 -0
  255. package/dist/telemetry/assistant/telemetry-assistant.controller.js.map +1 -0
  256. package/dist/telemetry/assistant/telemetry-assistant.metrics.d.ts +147 -0
  257. package/dist/telemetry/assistant/telemetry-assistant.metrics.d.ts.map +1 -0
  258. package/dist/telemetry/assistant/telemetry-assistant.metrics.js +495 -0
  259. package/dist/telemetry/assistant/telemetry-assistant.metrics.js.map +1 -0
  260. package/dist/telemetry/assistant/telemetry-assistant.service.d.ts +216 -0
  261. package/dist/telemetry/assistant/telemetry-assistant.service.d.ts.map +1 -0
  262. package/dist/telemetry/assistant/telemetry-assistant.service.js +1256 -0
  263. package/dist/telemetry/assistant/telemetry-assistant.service.js.map +1 -0
  264. package/dist/telemetry/assistant/telemetry-assistant.sql.d.ts +69 -0
  265. package/dist/telemetry/assistant/telemetry-assistant.sql.d.ts.map +1 -0
  266. package/dist/telemetry/assistant/telemetry-assistant.sql.js +471 -0
  267. package/dist/telemetry/assistant/telemetry-assistant.sql.js.map +1 -0
  268. package/dist/telemetry/assistant/telemetry-assistant.sse.d.ts +15 -0
  269. package/dist/telemetry/assistant/telemetry-assistant.sse.d.ts.map +1 -0
  270. package/dist/telemetry/assistant/telemetry-assistant.sse.js +68 -0
  271. package/dist/telemetry/assistant/telemetry-assistant.sse.js.map +1 -0
  272. package/dist/telemetry/connection/dto/telemetry-connection.dto.d.ts +92 -0
  273. package/dist/telemetry/connection/dto/telemetry-connection.dto.d.ts.map +1 -0
  274. package/dist/telemetry/connection/dto/telemetry-connection.dto.js +41 -0
  275. package/dist/telemetry/connection/dto/telemetry-connection.dto.js.map +1 -0
  276. package/dist/telemetry/connection/telemetry-connection-admin.service.d.ts +45 -0
  277. package/dist/telemetry/connection/telemetry-connection-admin.service.d.ts.map +1 -0
  278. package/dist/telemetry/connection/telemetry-connection-admin.service.js +303 -0
  279. package/dist/telemetry/connection/telemetry-connection-admin.service.js.map +1 -0
  280. package/dist/telemetry/connection/telemetry-connection-test.service.d.ts +41 -0
  281. package/dist/telemetry/connection/telemetry-connection-test.service.d.ts.map +1 -0
  282. package/dist/telemetry/connection/telemetry-connection-test.service.js +187 -0
  283. package/dist/telemetry/connection/telemetry-connection-test.service.js.map +1 -0
  284. package/dist/telemetry/connection/telemetry-connection.controller.d.ts +14 -0
  285. package/dist/telemetry/connection/telemetry-connection.controller.d.ts.map +1 -0
  286. package/dist/telemetry/connection/telemetry-connection.controller.js +192 -0
  287. package/dist/telemetry/connection/telemetry-connection.controller.js.map +1 -0
  288. package/dist/telemetry/connection/telemetry-connection.schema.d.ts +28 -0
  289. package/dist/telemetry/connection/telemetry-connection.schema.d.ts.map +1 -0
  290. package/dist/telemetry/connection/telemetry-connection.schema.js +106 -0
  291. package/dist/telemetry/connection/telemetry-connection.schema.js.map +1 -0
  292. package/dist/telemetry/connection/telemetry-connection.service.d.ts +197 -0
  293. package/dist/telemetry/connection/telemetry-connection.service.d.ts.map +1 -0
  294. package/dist/telemetry/connection/telemetry-connection.service.js +461 -0
  295. package/dist/telemetry/connection/telemetry-connection.service.js.map +1 -0
  296. package/dist/telemetry/dashboard/sql-literals.d.ts +19 -0
  297. package/dist/telemetry/dashboard/sql-literals.d.ts.map +1 -0
  298. package/dist/telemetry/dashboard/sql-literals.js +75 -0
  299. package/dist/telemetry/dashboard/sql-literals.js.map +1 -0
  300. package/dist/telemetry/dashboard/telemetry-dashboard.controller.d.ts +14 -0
  301. package/dist/telemetry/dashboard/telemetry-dashboard.controller.d.ts.map +1 -0
  302. package/dist/telemetry/dashboard/telemetry-dashboard.controller.js +277 -0
  303. package/dist/telemetry/dashboard/telemetry-dashboard.controller.js.map +1 -0
  304. package/dist/telemetry/dashboard/telemetry-dashboard.service.d.ts +112 -0
  305. package/dist/telemetry/dashboard/telemetry-dashboard.service.d.ts.map +1 -0
  306. package/dist/telemetry/dashboard/telemetry-dashboard.service.js +904 -0
  307. package/dist/telemetry/dashboard/telemetry-dashboard.service.js.map +1 -0
  308. package/dist/telemetry/dashboard/telemetry-dashboard.sql.d.ts +212 -0
  309. package/dist/telemetry/dashboard/telemetry-dashboard.sql.d.ts.map +1 -0
  310. package/dist/telemetry/dashboard/telemetry-dashboard.sql.js +486 -0
  311. package/dist/telemetry/dashboard/telemetry-dashboard.sql.js.map +1 -0
  312. package/dist/telemetry/dashboard/telemetry-dashboard.verdict.d.ts +235 -0
  313. package/dist/telemetry/dashboard/telemetry-dashboard.verdict.d.ts.map +1 -0
  314. package/dist/telemetry/dashboard/telemetry-dashboard.verdict.js +269 -0
  315. package/dist/telemetry/dashboard/telemetry-dashboard.verdict.js.map +1 -0
  316. package/dist/telemetry/dashboard/verdict-policy.d.ts +51 -0
  317. package/dist/telemetry/dashboard/verdict-policy.d.ts.map +1 -0
  318. package/dist/telemetry/dashboard/verdict-policy.js +77 -0
  319. package/dist/telemetry/dashboard/verdict-policy.js.map +1 -0
  320. package/dist/telemetry/doctor/egress/greptimedb.egress.contributor.d.ts +21 -0
  321. package/dist/telemetry/doctor/egress/greptimedb.egress.contributor.d.ts.map +1 -0
  322. package/dist/telemetry/doctor/egress/greptimedb.egress.contributor.js +59 -0
  323. package/dist/telemetry/doctor/egress/greptimedb.egress.contributor.js.map +1 -0
  324. package/dist/telemetry/doctor/telemetry-connection.doctor-check.d.ts +23 -0
  325. package/dist/telemetry/doctor/telemetry-connection.doctor-check.d.ts.map +1 -0
  326. package/dist/telemetry/doctor/telemetry-connection.doctor-check.js +69 -0
  327. package/dist/telemetry/doctor/telemetry-connection.doctor-check.js.map +1 -0
  328. package/dist/telemetry/doctor/telemetry-export.doctor-check.d.ts +33 -0
  329. package/dist/telemetry/doctor/telemetry-export.doctor-check.d.ts.map +1 -0
  330. package/dist/telemetry/doctor/telemetry-export.doctor-check.js +105 -0
  331. package/dist/telemetry/doctor/telemetry-export.doctor-check.js.map +1 -0
  332. package/dist/telemetry/doctor/telemetry-freshness.doctor-check.d.ts +38 -0
  333. package/dist/telemetry/doctor/telemetry-freshness.doctor-check.d.ts.map +1 -0
  334. package/dist/telemetry/doctor/telemetry-freshness.doctor-check.js +104 -0
  335. package/dist/telemetry/doctor/telemetry-freshness.doctor-check.js.map +1 -0
  336. package/dist/telemetry/doctor/telemetry-reachable.doctor-check.d.ts +23 -0
  337. package/dist/telemetry/doctor/telemetry-reachable.doctor-check.d.ts.map +1 -0
  338. package/dist/telemetry/doctor/telemetry-reachable.doctor-check.js +65 -0
  339. package/dist/telemetry/doctor/telemetry-reachable.doctor-check.js.map +1 -0
  340. package/dist/telemetry/doctor/telemetry-tables.doctor-check.d.ts +23 -0
  341. package/dist/telemetry/doctor/telemetry-tables.doctor-check.d.ts.map +1 -0
  342. package/dist/telemetry/doctor/telemetry-tables.doctor-check.js +91 -0
  343. package/dist/telemetry/doctor/telemetry-tables.doctor-check.js.map +1 -0
  344. package/dist/telemetry/dto/telemetry-assistant.dto.d.ts +14 -0
  345. package/dist/telemetry/dto/telemetry-assistant.dto.d.ts.map +1 -0
  346. package/dist/telemetry/dto/telemetry-assistant.dto.js +29 -0
  347. package/dist/telemetry/dto/telemetry-assistant.dto.js.map +1 -0
  348. package/dist/telemetry/dto/telemetry-config.dto.d.ts +59 -0
  349. package/dist/telemetry/dto/telemetry-config.dto.d.ts.map +1 -0
  350. package/dist/telemetry/dto/telemetry-config.dto.js +18 -0
  351. package/dist/telemetry/dto/telemetry-config.dto.js.map +1 -0
  352. package/dist/telemetry/dto/telemetry-dashboard.dto.d.ts +397 -0
  353. package/dist/telemetry/dto/telemetry-dashboard.dto.d.ts.map +1 -0
  354. package/dist/telemetry/dto/telemetry-dashboard.dto.js +118 -0
  355. package/dist/telemetry/dto/telemetry-dashboard.dto.js.map +1 -0
  356. package/dist/telemetry/dto/telemetry-query.dto.d.ts +44 -0
  357. package/dist/telemetry/dto/telemetry-query.dto.d.ts.map +1 -0
  358. package/dist/telemetry/dto/telemetry-query.dto.js +42 -0
  359. package/dist/telemetry/dto/telemetry-query.dto.js.map +1 -0
  360. package/dist/telemetry/dto/telemetry-status.dto.d.ts +22 -0
  361. package/dist/telemetry/dto/telemetry-status.dto.d.ts.map +1 -0
  362. package/dist/telemetry/dto/telemetry-status.dto.js +12 -0
  363. package/dist/telemetry/dto/telemetry-status.dto.js.map +1 -0
  364. package/dist/telemetry/export/parquet-writer.loader.d.ts +13 -0
  365. package/dist/telemetry/export/parquet-writer.loader.d.ts.map +1 -0
  366. package/dist/telemetry/export/parquet-writer.loader.js +29 -0
  367. package/dist/telemetry/export/parquet-writer.loader.js.map +1 -0
  368. package/dist/telemetry/export/telemetry-export.service.d.ts +39 -0
  369. package/dist/telemetry/export/telemetry-export.service.d.ts.map +1 -0
  370. package/dist/telemetry/export/telemetry-export.service.js +185 -0
  371. package/dist/telemetry/export/telemetry-export.service.js.map +1 -0
  372. package/dist/telemetry/greptime/greptime-host.d.ts +44 -0
  373. package/dist/telemetry/greptime/greptime-host.d.ts.map +1 -0
  374. package/dist/telemetry/greptime/greptime-host.js +114 -0
  375. package/dist/telemetry/greptime/greptime-host.js.map +1 -0
  376. package/dist/telemetry/greptime/greptime.client.d.ts +171 -0
  377. package/dist/telemetry/greptime/greptime.client.d.ts.map +1 -0
  378. package/dist/telemetry/greptime/greptime.client.js +352 -0
  379. package/dist/telemetry/greptime/greptime.client.js.map +1 -0
  380. package/dist/telemetry/greptime/greptime.errors.d.ts +59 -0
  381. package/dist/telemetry/greptime/greptime.errors.d.ts.map +1 -0
  382. package/dist/telemetry/greptime/greptime.errors.js +100 -0
  383. package/dist/telemetry/greptime/greptime.errors.js.map +1 -0
  384. package/dist/telemetry/handlers/telemetry-retention.handler.d.ts +27 -0
  385. package/dist/telemetry/handlers/telemetry-retention.handler.d.ts.map +1 -0
  386. package/dist/telemetry/handlers/telemetry-retention.handler.js +123 -0
  387. package/dist/telemetry/handlers/telemetry-retention.handler.js.map +1 -0
  388. package/dist/telemetry/index.d.ts +37 -0
  389. package/dist/telemetry/index.d.ts.map +1 -0
  390. package/dist/telemetry/index.js +97 -0
  391. package/dist/telemetry/index.js.map +1 -0
  392. package/dist/telemetry/internal/blank-secret.d.ts +3 -0
  393. package/dist/telemetry/internal/blank-secret.d.ts.map +1 -0
  394. package/dist/telemetry/internal/blank-secret.js +14 -0
  395. package/dist/telemetry/internal/blank-secret.js.map +1 -0
  396. package/dist/telemetry/internal/csv.d.ts +9 -0
  397. package/dist/telemetry/internal/csv.d.ts.map +1 -0
  398. package/dist/telemetry/internal/csv.js +23 -0
  399. package/dist/telemetry/internal/csv.js.map +1 -0
  400. package/dist/telemetry/internal/sse.d.ts +23 -0
  401. package/dist/telemetry/internal/sse.d.ts.map +1 -0
  402. package/dist/telemetry/internal/sse.js +43 -0
  403. package/dist/telemetry/internal/sse.js.map +1 -0
  404. package/dist/telemetry/metrics/groups/database.metric-group.d.ts +7 -0
  405. package/dist/telemetry/metrics/groups/database.metric-group.d.ts.map +1 -0
  406. package/dist/telemetry/metrics/groups/database.metric-group.js +159 -0
  407. package/dist/telemetry/metrics/groups/database.metric-group.js.map +1 -0
  408. package/dist/telemetry/metrics/groups/host.metric-group.d.ts +7 -0
  409. package/dist/telemetry/metrics/groups/host.metric-group.d.ts.map +1 -0
  410. package/dist/telemetry/metrics/groups/host.metric-group.js +146 -0
  411. package/dist/telemetry/metrics/groups/host.metric-group.js.map +1 -0
  412. package/dist/telemetry/metrics/groups/nodes.metric-group.d.ts +7 -0
  413. package/dist/telemetry/metrics/groups/nodes.metric-group.d.ts.map +1 -0
  414. package/dist/telemetry/metrics/groups/nodes.metric-group.js +159 -0
  415. package/dist/telemetry/metrics/groups/nodes.metric-group.js.map +1 -0
  416. package/dist/telemetry/metrics/groups/pipeline.metric-group.d.ts +7 -0
  417. package/dist/telemetry/metrics/groups/pipeline.metric-group.d.ts.map +1 -0
  418. package/dist/telemetry/metrics/groups/pipeline.metric-group.js +144 -0
  419. package/dist/telemetry/metrics/groups/pipeline.metric-group.js.map +1 -0
  420. package/dist/telemetry/metrics/groups/queue.metric-group.d.ts +7 -0
  421. package/dist/telemetry/metrics/groups/queue.metric-group.d.ts.map +1 -0
  422. package/dist/telemetry/metrics/groups/queue.metric-group.js +163 -0
  423. package/dist/telemetry/metrics/groups/queue.metric-group.js.map +1 -0
  424. package/dist/telemetry/metrics/groups/uptime.metric-group.d.ts +7 -0
  425. package/dist/telemetry/metrics/groups/uptime.metric-group.d.ts.map +1 -0
  426. package/dist/telemetry/metrics/groups/uptime.metric-group.js +103 -0
  427. package/dist/telemetry/metrics/groups/uptime.metric-group.js.map +1 -0
  428. package/dist/telemetry/metrics/metric-catalog.d.ts +324 -0
  429. package/dist/telemetry/metrics/metric-catalog.d.ts.map +1 -0
  430. package/dist/telemetry/metrics/metric-catalog.helpers.d.ts +30 -0
  431. package/dist/telemetry/metrics/metric-catalog.helpers.d.ts.map +1 -0
  432. package/dist/telemetry/metrics/metric-catalog.helpers.js +37 -0
  433. package/dist/telemetry/metrics/metric-catalog.helpers.js.map +1 -0
  434. package/dist/telemetry/metrics/metric-catalog.js +180 -0
  435. package/dist/telemetry/metrics/metric-catalog.js.map +1 -0
  436. package/dist/telemetry/metrics/metric-group-registry.service.d.ts +59 -0
  437. package/dist/telemetry/metrics/metric-group-registry.service.d.ts.map +1 -0
  438. package/dist/telemetry/metrics/metric-group-registry.service.js +99 -0
  439. package/dist/telemetry/metrics/metric-group-registry.service.js.map +1 -0
  440. package/dist/telemetry/metrics/metric-group.d.ts +113 -0
  441. package/dist/telemetry/metrics/metric-group.d.ts.map +1 -0
  442. package/dist/telemetry/metrics/metric-group.js +647 -0
  443. package/dist/telemetry/metrics/metric-group.js.map +1 -0
  444. package/dist/telemetry/metrics/metric-group.manifest.d.ts +2 -0
  445. package/dist/telemetry/metrics/metric-group.manifest.d.ts.map +1 -0
  446. package/dist/telemetry/metrics/metric-group.manifest.js +30 -0
  447. package/dist/telemetry/metrics/metric-group.manifest.js.map +1 -0
  448. package/dist/telemetry/metrics/metric-group.registry.d.ts +109 -0
  449. package/dist/telemetry/metrics/metric-group.registry.d.ts.map +1 -0
  450. package/dist/telemetry/metrics/metric-group.registry.js +181 -0
  451. package/dist/telemetry/metrics/metric-group.registry.js.map +1 -0
  452. package/dist/telemetry/metrics/metric-sql.d.ts +98 -0
  453. package/dist/telemetry/metrics/metric-sql.d.ts.map +1 -0
  454. package/dist/telemetry/metrics/metric-sql.js +259 -0
  455. package/dist/telemetry/metrics/metric-sql.js.map +1 -0
  456. package/dist/telemetry/metrics/metric-values.d.ts +19 -0
  457. package/dist/telemetry/metrics/metric-values.d.ts.map +1 -0
  458. package/dist/telemetry/metrics/metric-values.js +97 -0
  459. package/dist/telemetry/metrics/metric-values.js.map +1 -0
  460. package/dist/telemetry/metrics/metric-verdict.d.ts +20 -0
  461. package/dist/telemetry/metrics/metric-verdict.d.ts.map +1 -0
  462. package/dist/telemetry/metrics/metric-verdict.js +218 -0
  463. package/dist/telemetry/metrics/metric-verdict.js.map +1 -0
  464. package/dist/telemetry/ports.d.ts +575 -0
  465. package/dist/telemetry/ports.d.ts.map +1 -0
  466. package/dist/telemetry/ports.js +78 -0
  467. package/dist/telemetry/ports.js.map +1 -0
  468. package/dist/telemetry/query/sql-guard.d.ts +71 -0
  469. package/dist/telemetry/query/sql-guard.d.ts.map +1 -0
  470. package/dist/telemetry/query/sql-guard.js +258 -0
  471. package/dist/telemetry/query/sql-guard.js.map +1 -0
  472. package/dist/telemetry/query/telemetry-availability.d.ts +11 -0
  473. package/dist/telemetry/query/telemetry-availability.d.ts.map +1 -0
  474. package/dist/telemetry/query/telemetry-availability.js +55 -0
  475. package/dist/telemetry/query/telemetry-availability.js.map +1 -0
  476. package/dist/telemetry/query/telemetry-query.errors.d.ts +48 -0
  477. package/dist/telemetry/query/telemetry-query.errors.d.ts.map +1 -0
  478. package/dist/telemetry/query/telemetry-query.errors.js +100 -0
  479. package/dist/telemetry/query/telemetry-query.errors.js.map +1 -0
  480. package/dist/telemetry/query/telemetry-query.service.d.ts +57 -0
  481. package/dist/telemetry/query/telemetry-query.service.d.ts.map +1 -0
  482. package/dist/telemetry/query/telemetry-query.service.js +194 -0
  483. package/dist/telemetry/query/telemetry-query.service.js.map +1 -0
  484. package/dist/telemetry/query/telemetry-schema.service.d.ts +36 -0
  485. package/dist/telemetry/query/telemetry-schema.service.d.ts.map +1 -0
  486. package/dist/telemetry/query/telemetry-schema.service.js +154 -0
  487. package/dist/telemetry/query/telemetry-schema.service.js.map +1 -0
  488. package/dist/telemetry/stack/dto/telemetry-stack.dto.d.ts +29 -0
  489. package/dist/telemetry/stack/dto/telemetry-stack.dto.d.ts.map +1 -0
  490. package/dist/telemetry/stack/dto/telemetry-stack.dto.js +27 -0
  491. package/dist/telemetry/stack/dto/telemetry-stack.dto.js.map +1 -0
  492. package/dist/telemetry/stack/stack-agent.client.d.ts +76 -0
  493. package/dist/telemetry/stack/stack-agent.client.d.ts.map +1 -0
  494. package/dist/telemetry/stack/stack-agent.client.js +208 -0
  495. package/dist/telemetry/stack/stack-agent.client.js.map +1 -0
  496. package/dist/telemetry/stack/telemetry-stack-deploy.handler.d.ts +43 -0
  497. package/dist/telemetry/stack/telemetry-stack-deploy.handler.d.ts.map +1 -0
  498. package/dist/telemetry/stack/telemetry-stack-deploy.handler.js +159 -0
  499. package/dist/telemetry/stack/telemetry-stack-deploy.handler.js.map +1 -0
  500. package/dist/telemetry/stack/telemetry-stack.controller.d.ts +14 -0
  501. package/dist/telemetry/stack/telemetry-stack.controller.d.ts.map +1 -0
  502. package/dist/telemetry/stack/telemetry-stack.controller.js +107 -0
  503. package/dist/telemetry/stack/telemetry-stack.controller.js.map +1 -0
  504. package/dist/telemetry/stack/telemetry-stack.service.d.ts +19 -0
  505. package/dist/telemetry/stack/telemetry-stack.service.d.ts.map +1 -0
  506. package/dist/telemetry/stack/telemetry-stack.service.js +122 -0
  507. package/dist/telemetry/stack/telemetry-stack.service.js.map +1 -0
  508. package/dist/telemetry/tasks/telemetry-retention.task.d.ts +8 -0
  509. package/dist/telemetry/tasks/telemetry-retention.task.d.ts.map +1 -0
  510. package/dist/telemetry/tasks/telemetry-retention.task.js +61 -0
  511. package/dist/telemetry/tasks/telemetry-retention.task.js.map +1 -0
  512. package/dist/telemetry/telemetry-admin.controller.d.ts +14 -0
  513. package/dist/telemetry/telemetry-admin.controller.d.ts.map +1 -0
  514. package/dist/telemetry/telemetry-admin.controller.js +148 -0
  515. package/dist/telemetry/telemetry-admin.controller.js.map +1 -0
  516. package/dist/telemetry/telemetry-config.controller.d.ts +14 -0
  517. package/dist/telemetry/telemetry-config.controller.d.ts.map +1 -0
  518. package/dist/telemetry/telemetry-config.controller.js +73 -0
  519. package/dist/telemetry/telemetry-config.controller.js.map +1 -0
  520. package/dist/telemetry/telemetry-explorer.controller.d.ts +14 -0
  521. package/dist/telemetry/telemetry-explorer.controller.d.ts.map +1 -0
  522. package/dist/telemetry/telemetry-explorer.controller.js +193 -0
  523. package/dist/telemetry/telemetry-explorer.controller.js.map +1 -0
  524. package/dist/telemetry/telemetry-settings.service.d.ts +85 -0
  525. package/dist/telemetry/telemetry-settings.service.d.ts.map +1 -0
  526. package/dist/telemetry/telemetry-settings.service.js +278 -0
  527. package/dist/telemetry/telemetry-settings.service.js.map +1 -0
  528. package/dist/telemetry/telemetry-status.service.d.ts +28 -0
  529. package/dist/telemetry/telemetry-status.service.d.ts.map +1 -0
  530. package/dist/telemetry/telemetry-status.service.js +185 -0
  531. package/dist/telemetry/telemetry-status.service.js.map +1 -0
  532. package/dist/telemetry/telemetry-support-bundle.section.d.ts +163 -0
  533. package/dist/telemetry/telemetry-support-bundle.section.d.ts.map +1 -0
  534. package/dist/telemetry/telemetry-support-bundle.section.js +187 -0
  535. package/dist/telemetry/telemetry-support-bundle.section.js.map +1 -0
  536. package/dist/telemetry/telemetry.module.d.ts +35 -0
  537. package/dist/telemetry/telemetry.module.d.ts.map +1 -0
  538. package/dist/telemetry/telemetry.module.js +210 -0
  539. package/dist/telemetry/telemetry.module.js.map +1 -0
  540. package/dist/telemetry/telemetry.options.d.ts +176 -0
  541. package/dist/telemetry/telemetry.options.d.ts.map +1 -0
  542. package/dist/telemetry/telemetry.options.js +246 -0
  543. package/dist/telemetry/telemetry.options.js.map +1 -0
  544. package/dist/telemetry/telemetry.permissions.d.ts +76 -0
  545. package/dist/telemetry/telemetry.permissions.d.ts.map +1 -0
  546. package/dist/telemetry/telemetry.permissions.js +85 -0
  547. package/dist/telemetry/telemetry.permissions.js.map +1 -0
  548. package/dist/telemetry/telemetry.settings.d.ts +79 -0
  549. package/dist/telemetry/telemetry.settings.d.ts.map +1 -0
  550. package/dist/telemetry/telemetry.settings.js +92 -0
  551. package/dist/telemetry/telemetry.settings.js.map +1 -0
  552. package/dist/telemetry/testing/coach-metric-group.fixture.d.ts +17 -0
  553. package/dist/telemetry/testing/coach-metric-group.fixture.d.ts.map +1 -0
  554. package/dist/telemetry/testing/coach-metric-group.fixture.js +128 -0
  555. package/dist/telemetry/testing/coach-metric-group.fixture.js.map +1 -0
  556. package/dist/telemetry/testing/conformance.d.ts +257 -0
  557. package/dist/telemetry/testing/conformance.d.ts.map +1 -0
  558. package/dist/telemetry/testing/conformance.js +626 -0
  559. package/dist/telemetry/testing/conformance.js.map +1 -0
  560. package/dist/telemetry/testing/index.d.ts +10 -0
  561. package/dist/telemetry/testing/index.d.ts.map +1 -0
  562. package/dist/telemetry/testing/index.js +41 -0
  563. package/dist/telemetry/testing/index.js.map +1 -0
  564. package/dist/telemetry/testing/metric-schema.fixture.d.ts +73 -0
  565. package/dist/telemetry/testing/metric-schema.fixture.d.ts.map +1 -0
  566. package/dist/telemetry/testing/metric-schema.fixture.js +362 -0
  567. package/dist/telemetry/testing/metric-schema.fixture.js.map +1 -0
  568. package/dist/telemetry/testing/stub-ports.d.ts +46 -0
  569. package/dist/telemetry/testing/stub-ports.d.ts.map +1 -0
  570. package/dist/telemetry/testing/stub-ports.js +119 -0
  571. package/dist/telemetry/testing/stub-ports.js.map +1 -0
  572. package/dist/testing/conformance-suite.d.ts +106 -0
  573. package/dist/testing/conformance-suite.d.ts.map +1 -0
  574. package/dist/testing/conformance-suite.js +8 -0
  575. package/dist/testing/conformance-suite.js.map +1 -0
  576. package/dist/testing/conformance-suites.d.ts +14 -0
  577. package/dist/testing/conformance-suites.d.ts.map +1 -0
  578. package/dist/testing/conformance-suites.js +27 -0
  579. package/dist/testing/conformance-suites.js.map +1 -0
  580. package/dist/testing/host/in-memory-audit-sink.d.ts +23 -0
  581. package/dist/testing/host/in-memory-audit-sink.d.ts.map +1 -0
  582. package/dist/testing/host/in-memory-audit-sink.js +30 -0
  583. package/dist/testing/host/in-memory-audit-sink.js.map +1 -0
  584. package/dist/testing/host/in-memory-system-settings-store.d.ts +31 -0
  585. package/dist/testing/host/in-memory-system-settings-store.d.ts.map +1 -0
  586. package/dist/testing/host/in-memory-system-settings-store.js +54 -0
  587. package/dist/testing/host/in-memory-system-settings-store.js.map +1 -0
  588. package/dist/testing/host/index.d.ts +4 -0
  589. package/dist/testing/host/index.d.ts.map +1 -0
  590. package/dist/testing/host/index.js +13 -0
  591. package/dist/testing/host/index.js.map +1 -0
  592. package/dist/testing/host/test-platform-host.d.ts +35 -0
  593. package/dist/testing/host/test-platform-host.d.ts.map +1 -0
  594. package/dist/testing/host/test-platform-host.js +81 -0
  595. package/dist/testing/host/test-platform-host.js.map +1 -0
  596. package/dist/testing/index.d.ts +12 -0
  597. package/dist/testing/index.d.ts.map +1 -0
  598. package/dist/testing/index.js +32 -0
  599. package/dist/testing/index.js.map +1 -0
  600. package/dist/testing/prisma-schema.d.ts +99 -0
  601. package/dist/testing/prisma-schema.d.ts.map +1 -0
  602. package/dist/testing/prisma-schema.js +175 -0
  603. package/dist/testing/prisma-schema.js.map +1 -0
  604. package/dist/testing/run-platform-conformance.d.ts +70 -0
  605. package/dist/testing/run-platform-conformance.d.ts.map +1 -0
  606. package/dist/testing/run-platform-conformance.js +77 -0
  607. package/dist/testing/run-platform-conformance.js.map +1 -0
  608. package/dist/testing/suites/cron-enqueue-only.d.ts +46 -0
  609. package/dist/testing/suites/cron-enqueue-only.d.ts.map +1 -0
  610. package/dist/testing/suites/cron-enqueue-only.js +177 -0
  611. package/dist/testing/suites/cron-enqueue-only.js.map +1 -0
  612. package/dist/testing/suites/user-owned-data.d.ts +86 -0
  613. package/dist/testing/suites/user-owned-data.d.ts.map +1 -0
  614. package/dist/testing/suites/user-owned-data.js +329 -0
  615. package/dist/testing/suites/user-owned-data.js.map +1 -0
  616. package/package.json +129 -4
@@ -0,0 +1,210 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var TelemetryModule_1;
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.TelemetryModule = void 0;
11
+ const common_1 = require("@nestjs/common");
12
+ const telemetry_ai_enabled_guard_1 = require("./assistant/telemetry-ai-enabled.guard");
13
+ const telemetry_assistant_controller_1 = require("./assistant/telemetry-assistant.controller");
14
+ const telemetry_assistant_service_1 = require("./assistant/telemetry-assistant.service");
15
+ const telemetry_connection_admin_service_1 = require("./connection/telemetry-connection-admin.service");
16
+ const telemetry_connection_test_service_1 = require("./connection/telemetry-connection-test.service");
17
+ const telemetry_connection_controller_1 = require("./connection/telemetry-connection.controller");
18
+ const telemetry_connection_service_1 = require("./connection/telemetry-connection.service");
19
+ const telemetry_dashboard_controller_1 = require("./dashboard/telemetry-dashboard.controller");
20
+ const telemetry_dashboard_service_1 = require("./dashboard/telemetry-dashboard.service");
21
+ const telemetry_export_service_1 = require("./export/telemetry-export.service");
22
+ const greptime_client_1 = require("./greptime/greptime.client");
23
+ const telemetry_retention_handler_1 = require("./handlers/telemetry-retention.handler");
24
+ const telemetry_query_service_1 = require("./query/telemetry-query.service");
25
+ const telemetry_schema_service_1 = require("./query/telemetry-schema.service");
26
+ const stack_agent_client_1 = require("./stack/stack-agent.client");
27
+ const telemetry_stack_deploy_handler_1 = require("./stack/telemetry-stack-deploy.handler");
28
+ const telemetry_stack_controller_1 = require("./stack/telemetry-stack.controller");
29
+ const telemetry_stack_service_1 = require("./stack/telemetry-stack.service");
30
+ const telemetry_retention_task_1 = require("./tasks/telemetry-retention.task");
31
+ const telemetry_admin_controller_1 = require("./telemetry-admin.controller");
32
+ const telemetry_config_controller_1 = require("./telemetry-config.controller");
33
+ const telemetry_explorer_controller_1 = require("./telemetry-explorer.controller");
34
+ const telemetry_settings_service_1 = require("./telemetry-settings.service");
35
+ const telemetry_status_service_1 = require("./telemetry-status.service");
36
+ const telemetry_support_bundle_section_1 = require("./telemetry-support-bundle.section");
37
+ const telemetry_connection_doctor_check_1 = require("./doctor/telemetry-connection.doctor-check");
38
+ const greptimedb_egress_contributor_1 = require("./doctor/egress/greptimedb.egress.contributor");
39
+ const telemetry_export_doctor_check_1 = require("./doctor/telemetry-export.doctor-check");
40
+ const telemetry_freshness_doctor_check_1 = require("./doctor/telemetry-freshness.doctor-check");
41
+ const telemetry_reachable_doctor_check_1 = require("./doctor/telemetry-reachable.doctor-check");
42
+ const telemetry_tables_doctor_check_1 = require("./doctor/telemetry-tables.doctor-check");
43
+ const metric_group_registry_service_1 = require("./metrics/metric-group-registry.service");
44
+ const metric_group_registry_1 = require("./metrics/metric-group.registry");
45
+ const verdict_policy_1 = require("./dashboard/verdict-policy");
46
+ const telemetry_options_1 = require("./telemetry.options");
47
+ // =============================================================================
48
+ // TelemetryModule (issue #534, epic #528; packaged as
49
+ // `@marinoscar/platform-api/telemetry` by #703)
50
+ // =============================================================================
51
+ //
52
+ // The API side of observability: the `telemetry` settings (and the runtime
53
+ // export gate they drive), the GreptimeDB client, the store's status, and the
54
+ // server-only `telemetry.retention.apply` job with its enqueue-only cron.
55
+ //
56
+ // PACKAGED (#703). Nothing here imports the app: every app capability comes
57
+ // through a host port (./ports.ts) the app binds in `forRoot({ imports })`,
58
+ // and every route through the controller-factory recipe with the app's
59
+ // access decorators (`forRoot({ host })`).
60
+ //
61
+ // The explorer (#535): `TelemetryQueryService` (the one entry point for
62
+ // caller-supplied SQL: guard, row cap, timeout, audit), `TelemetrySchemaService`
63
+ // (tables and columns) and `TelemetryExportService` (csv/ndjson/xlsx/parquet),
64
+ // behind `TelemetryExplorerController` on `telemetry:query`.
65
+ //
66
+ // The assistant (#536, #571): `TelemetryAssistantService` runs a
67
+ // troubleshooting agent's tool loop through the `TELEMETRY_AI` port (the
68
+ // app's `AiService.forUser`);
69
+ // every statement its tools run — the model's and the ones it builds itself
70
+ // (`assistant/telemetry-assistant.sql.ts`) — goes through
71
+ // `TelemetryQueryService.run` with `source: 'assistant'`, so it is held to
72
+ // exactly the explorer's guard and bounds; `TelemetrySchemaService` lists and
73
+ // describes tables, and the `TELEMETRY_SETTINGS_STORE` port gives the
74
+ // allowlisted feature flags `get_app_context` reports. Streamed by
75
+ // `TelemetryAssistantController`.
76
+ //
77
+ // The connection (#558): `TelemetryConnectionService` resolves the GreptimeDB
78
+ // connection at runtime — the one saved at /admin/settings/telemetry (a
79
+ // `telemetry_connection` system-settings row plus two passwords in the
80
+ // credential store, the `TELEMETRY_CREDENTIAL_STORE` port), else the `GREPTIME_*`
81
+ // deployment default. `GreptimeClient` builds its pools from it and rebuilds
82
+ // them when it changes. `TelemetryConnectionController` is the admin surface.
83
+ //
84
+ // The services (#567): on a VPS, `StackAgentClient` talks to the
85
+ // `stack-agent` sidecar (STACK_AGENT_URL/TOKEN) to report the telemetry
86
+ // containers' state and to start them through the server-only
87
+ // `telemetry.stack.deploy` job. `TelemetryStackController` is the admin
88
+ // surface, under /api/admin/telemetry/stack.
89
+ //
90
+ // The dashboard (#577): `TelemetryDashboardService` runs the fixed,
91
+ // server-authored statements of `dashboard/telemetry-dashboard.sql.ts` (no
92
+ // caller SQL) on the reader pool, with a 15 s result cache, behind
93
+ // `TelemetryDashboardController` on `telemetry:query`.
94
+ //
95
+ // `GreptimeClient`, `TelemetrySettingsService` and the two query services are
96
+ // exported for it.
97
+ // =============================================================================
98
+ const PROVIDERS = [
99
+ // Rung 2 (#703): the metric-group registry, injectable; frozen on bootstrap.
100
+ metric_group_registry_service_1.MetricGroupRegistry,
101
+ telemetry_connection_service_1.TelemetryConnectionService,
102
+ telemetry_connection_admin_service_1.TelemetryConnectionAdminService,
103
+ telemetry_connection_test_service_1.TelemetryConnectionTestService,
104
+ greptime_client_1.GreptimeClient,
105
+ telemetry_settings_service_1.TelemetrySettingsService,
106
+ telemetry_status_service_1.TelemetryStatusService,
107
+ telemetry_retention_handler_1.TelemetryRetentionHandler,
108
+ telemetry_retention_task_1.TelemetryRetentionTask,
109
+ telemetry_query_service_1.TelemetryQueryService,
110
+ telemetry_schema_service_1.TelemetrySchemaService,
111
+ telemetry_export_service_1.TelemetryExportService,
112
+ telemetry_assistant_service_1.TelemetryAssistantService,
113
+ telemetry_ai_enabled_guard_1.TelemetryAiEnabledGuard,
114
+ stack_agent_client_1.StackAgentClient,
115
+ telemetry_stack_service_1.TelemetryStackService,
116
+ telemetry_stack_deploy_handler_1.TelemetryStackDeployHandler,
117
+ telemetry_dashboard_service_1.TelemetryDashboardService,
118
+ // Doctor checks (#634): read-only — never the connection test (it
119
+ // audits) and never the dashboard service's audited reads. Each registers
120
+ // itself with the Doctor's DoctorCheckRegistry (`@marinoscar/platform-api/doctor`).
121
+ telemetry_export_doctor_check_1.TelemetryExportDoctorCheck,
122
+ telemetry_connection_doctor_check_1.TelemetryConnectionDoctorCheck,
123
+ telemetry_reachable_doctor_check_1.TelemetryReachableDoctorCheck,
124
+ telemetry_tables_doctor_check_1.TelemetryTablesDoctorCheck,
125
+ telemetry_freshness_doctor_check_1.TelemetryFreshnessDoctorCheck,
126
+ // Egress inventory (#773): the GreptimeDB host.
127
+ greptimedb_egress_contributor_1.GreptimeDbEgressContributor,
128
+ // Support-bundle section (#772): telemetry health as aggregates only,
129
+ // gated on telemetry:query. Registers itself with SupportBundleRegistry.
130
+ telemetry_support_bundle_section_1.TelemetrySupportBundleSection,
131
+ ];
132
+ /**
133
+ * The telemetry slice: settings and the export gate, the GreptimeDB
134
+ * connection and client, the explorer, the assistant, the dashboard, the
135
+ * stack-agent surface, the two server-only job types, five Doctor checks, an
136
+ * egress contributor and a support-bundle section.
137
+ *
138
+ * @stability experimental
139
+ */
140
+ let TelemetryModule = TelemetryModule_1 = class TelemetryModule {
141
+ /**
142
+ * The slice for one app: its routes guarded by `options.host`, its host
143
+ * ports bound by `options.imports`.
144
+ *
145
+ * @param options - the module options.
146
+ * @returns the dynamic module. It exports `GreptimeClient`,
147
+ * `TelemetrySettingsService`, `TelemetryQueryService`, `TelemetrySchemaService`,
148
+ * `MetricGroupRegistry`, `DefaultVerdictPolicy`, `VERDICT_POLICY` and
149
+ * `TELEMETRY_VERDICT_THRESHOLDS`.
150
+ * @throws Error when an option is invalid (a bad verdict threshold names the
151
+ * field); RegistryError when an extra metric group is refused (a duplicate id
152
+ * or family key fails boot here).
153
+ *
154
+ * @example
155
+ * ```ts
156
+ * TelemetryModule.forRoot({ host: platformHost, imports: [TelemetryHostModule] });
157
+ * ```
158
+ *
159
+ * @extensionPoint option
160
+ * @stability experimental
161
+ */
162
+ static forRoot(options) {
163
+ const resolved = (0, telemetry_options_1.resolveTelemetryModuleOptions)(options);
164
+ // Extra groups go in BEFORE the controllers are created, so the dashboard
165
+ // route's documented `group` enum includes them. Re-registering the very
166
+ // same definition (a second forRoot in one process) is a no-op.
167
+ (0, metric_group_registry_1.registerMetricGroups)(resolved.metricGroups.filter((group) => metric_group_registry_1.metricGroupRegistry.get(group.id) !== group));
168
+ return {
169
+ module: TelemetryModule_1,
170
+ imports: [...resolved.imports],
171
+ controllers: [
172
+ (0, telemetry_admin_controller_1.createTelemetryAdminController)(resolved),
173
+ (0, telemetry_config_controller_1.createTelemetryConfigController)(resolved),
174
+ (0, telemetry_explorer_controller_1.createTelemetryExplorerController)(resolved),
175
+ (0, telemetry_assistant_controller_1.createTelemetryAssistantController)(resolved),
176
+ (0, telemetry_connection_controller_1.createTelemetryConnectionController)(resolved),
177
+ (0, telemetry_stack_controller_1.createTelemetryStackController)(resolved),
178
+ (0, telemetry_dashboard_controller_1.createTelemetryDashboardController)(resolved),
179
+ ],
180
+ providers: [
181
+ { provide: telemetry_options_1.TELEMETRY_OPTIONS, useValue: resolved },
182
+ // Rung 1: the resolved, frozen thresholds every reader injects.
183
+ { provide: telemetry_options_1.TELEMETRY_VERDICT_THRESHOLDS, useValue: resolved.verdictThresholds },
184
+ // Rung 1: the metric groups' freshness window (`metrics.freshMs`).
185
+ { provide: telemetry_options_1.TELEMETRY_METRIC_FRESH_MS, useValue: resolved.metricFreshMs },
186
+ // Rung 3: the verdict policy. The default is always provided, so an
187
+ // app policy can inject it and delegate.
188
+ verdict_policy_1.DefaultVerdictPolicy,
189
+ { provide: verdict_policy_1.VERDICT_POLICY, ...(resolved.verdictPolicy ?? { useExisting: verdict_policy_1.DefaultVerdictPolicy }) },
190
+ ...PROVIDERS,
191
+ ],
192
+ exports: [
193
+ greptime_client_1.GreptimeClient,
194
+ telemetry_settings_service_1.TelemetrySettingsService,
195
+ telemetry_query_service_1.TelemetryQueryService,
196
+ telemetry_schema_service_1.TelemetrySchemaService,
197
+ metric_group_registry_service_1.MetricGroupRegistry,
198
+ verdict_policy_1.DefaultVerdictPolicy,
199
+ verdict_policy_1.VERDICT_POLICY,
200
+ telemetry_options_1.TELEMETRY_VERDICT_THRESHOLDS,
201
+ telemetry_options_1.TELEMETRY_METRIC_FRESH_MS,
202
+ ],
203
+ };
204
+ }
205
+ };
206
+ exports.TelemetryModule = TelemetryModule;
207
+ exports.TelemetryModule = TelemetryModule = TelemetryModule_1 = __decorate([
208
+ (0, common_1.Module)({})
209
+ ], TelemetryModule);
210
+ //# sourceMappingURL=telemetry.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"telemetry.module.js","sourceRoot":"","sources":["../../src/telemetry/telemetry.module.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,176 @@
1
+ import { type ModuleMetadata } from '@nestjs/common';
2
+ import { type PlatformHost, type PortBinding } from '../core/index';
3
+ import { type VerdictThresholds } from './dashboard/telemetry-dashboard.verdict';
4
+ import type { VerdictPolicy } from './dashboard/verdict-policy';
5
+ import type { MetricGroupDef } from './metrics/metric-group.registry';
6
+ /**
7
+ * A partial {@link VerdictThresholds}: any field, at any depth, may be left out
8
+ * and keeps its default.
9
+ *
10
+ * @stability experimental
11
+ */
12
+ export type VerdictThresholdsOverride = {
13
+ -readonly [K in keyof VerdictThresholds]?: VerdictThresholds[K] extends object ? {
14
+ -readonly [L in keyof VerdictThresholds[K]]?: VerdictThresholds[K][L];
15
+ } : VerdictThresholds[K];
16
+ };
17
+ /**
18
+ * The dashboard's options.
19
+ *
20
+ * @example
21
+ * ```ts
22
+ * TelemetryModule.forRoot({ host, imports, dashboard: { verdictThresholds: { noDataMinutes: 10 } } });
23
+ * ```
24
+ *
25
+ * @extensionPoint option
26
+ * @stability experimental
27
+ */
28
+ export interface TelemetryDashboardOptions {
29
+ /** Deep-merged over `DEFAULT_VERDICT_THRESHOLDS`; validated at boot. */
30
+ verdictThresholds?: VerdictThresholdsOverride;
31
+ /** What `VERDICT_POLICY` is bound to; default `{ useClass: DefaultVerdictPolicy }`. Its own dependencies come from `imports`. */
32
+ verdictPolicy?: PortBinding<VerdictPolicy>;
33
+ }
34
+ /**
35
+ * The dashboard metric groups' options.
36
+ *
37
+ * @example
38
+ * ```ts
39
+ * TelemetryModule.forRoot({ host, imports, metrics: { freshMs: 300_000 } });
40
+ * ```
41
+ *
42
+ * @extensionPoint option
43
+ * @stability experimental
44
+ */
45
+ export interface TelemetryMetricsOptions {
46
+ /**
47
+ * The freshness window, in milliseconds: a per-key table cell read as `last`
48
+ * (and an uptime check) older than its table's newest reading by more than
49
+ * this is not current. A whole number from 1 000 (1 s) to 86 400 000 (24 h);
50
+ * default `METRIC_FRESH_MS` (150 000, 150 s). Raise it when the app's
51
+ * metrics export interval is longer than the default's 60 s.
52
+ */
53
+ freshMs?: number;
54
+ }
55
+ /**
56
+ * Options of `TelemetryModule.forRoot()`.
57
+ *
58
+ * @example
59
+ * ```ts
60
+ * TelemetryModule.forRoot({ host: platformHost, imports: [TelemetryHostModule] });
61
+ * ```
62
+ *
63
+ * @extensionPoint option
64
+ * @stability experimental
65
+ */
66
+ export interface TelemetryModuleOptions {
67
+ /** The app's access decorators (`definePlatformHost`); required: a platform route is never public. */
68
+ host: PlatformHost;
69
+ /** Modules that export the host-port providers (`TELEMETRY_AUDIT_SINK`, `TELEMETRY_SETTINGS_STORE`, ...): the app's adapters. */
70
+ imports: NonNullable<ModuleMetadata['imports']>;
71
+ /** Extra metric groups, registered after the six platform groups when `forRoot` runs. */
72
+ metricGroups?: readonly MetricGroupDef[];
73
+ /**
74
+ * Reads the caller's user id off the framework request. Defaults to
75
+ * `request.requestUser.id`, else `request.user.id`.
76
+ *
77
+ * @param request - the framework request.
78
+ * @returns the user id, or `undefined` for an anonymous request (the access decorators refuse those first).
79
+ */
80
+ actorId?: (request: unknown) => string | undefined;
81
+ /** The dashboard's verdict thresholds and policy. */
82
+ dashboard?: TelemetryDashboardOptions;
83
+ /** The dashboard metric groups' freshness window. */
84
+ metrics?: TelemetryMetricsOptions;
85
+ }
86
+ /**
87
+ * The options after validation and defaults, as the slice's providers and
88
+ * controller factories receive them.
89
+ *
90
+ * @stability experimental
91
+ */
92
+ export interface ResolvedTelemetryModuleOptions {
93
+ /** The validated, frozen host. */
94
+ readonly host: PlatformHost;
95
+ /** The host-port modules. */
96
+ readonly imports: NonNullable<ModuleMetadata['imports']>;
97
+ /** The extra metric groups (possibly empty). */
98
+ readonly metricGroups: readonly MetricGroupDef[];
99
+ /** The caller resolver. */
100
+ readonly actorId: (request: unknown) => string | undefined;
101
+ /** A parameter decorator injecting `actorId(request)` into a route handler. */
102
+ readonly actorIdParam: () => ParameterDecorator;
103
+ /** The resolved, frozen verdict thresholds (`TELEMETRY_VERDICT_THRESHOLDS`). */
104
+ readonly verdictThresholds: VerdictThresholds;
105
+ /** The binding of `VERDICT_POLICY`, or `undefined` for the default policy. */
106
+ readonly verdictPolicy: PortBinding<VerdictPolicy> | undefined;
107
+ /** The metric groups' freshness window in milliseconds (`TELEMETRY_METRIC_FRESH_MS`). */
108
+ readonly metricFreshMs: number;
109
+ }
110
+ /**
111
+ * Injection token of the {@link ResolvedTelemetryModuleOptions}.
112
+ *
113
+ * @stability experimental
114
+ */
115
+ export declare const TELEMETRY_OPTIONS: unique symbol;
116
+ /**
117
+ * Injection token of the resolved {@link VerdictThresholds}: the defaults with
118
+ * the app's `dashboard.verdictThresholds` deep-merged over them, frozen. Every
119
+ * reader of a threshold injects this.
120
+ *
121
+ * @extensionPoint token
122
+ * @stability experimental
123
+ */
124
+ export declare const TELEMETRY_VERDICT_THRESHOLDS: unique symbol;
125
+ /**
126
+ * Injection token of the metric groups' freshness window in milliseconds: the
127
+ * app's `metrics.freshMs`, else `METRIC_FRESH_MS`. The dashboard's `/metrics`
128
+ * route reads it and reports it as the response's `freshMs`.
129
+ *
130
+ * @extensionPoint token
131
+ * @stability experimental
132
+ */
133
+ export declare const TELEMETRY_METRIC_FRESH_MS: unique symbol;
134
+ /**
135
+ * The freshness window for an override: validated, else the default.
136
+ *
137
+ * @param metrics - the app's `metrics`, or `undefined`.
138
+ * @returns the window in milliseconds.
139
+ * @throws Error when `metrics` is not an object or `freshMs` is not a whole number from 1 000 to 86 400 000.
140
+ *
141
+ * @stability experimental
142
+ */
143
+ export declare function resolveMetricFreshMs(metrics: TelemetryMetricsOptions | undefined): number;
144
+ /**
145
+ * The verdict thresholds for an override: validated, deep-merged over
146
+ * {@link DEFAULT_VERDICT_THRESHOLDS} and frozen.
147
+ *
148
+ * @param override - the app's `dashboard.verdictThresholds`, or `undefined`.
149
+ * @returns the resolved thresholds.
150
+ * @throws Error naming every invalid field, or a degraded bound beyond its critical one.
151
+ *
152
+ * @stability experimental
153
+ */
154
+ export declare function resolveVerdictThresholds(override: VerdictThresholdsOverride | undefined): VerdictThresholds;
155
+ /**
156
+ * The default caller resolver: the authenticated user's `id`, from
157
+ * `request.requestUser` (set by the app's guards) or `request.user` (the JWT
158
+ * strategy's user).
159
+ *
160
+ * @param request - the framework request.
161
+ * @returns the user id, or `undefined`.
162
+ *
163
+ * @stability experimental
164
+ */
165
+ export declare function defaultTelemetryActorId(request: unknown): string | undefined;
166
+ /**
167
+ * Validates `options` and applies the defaults.
168
+ *
169
+ * @param options - what the app passed to `forRoot`.
170
+ * @returns the resolved, frozen options.
171
+ * @throws Error naming the bad option.
172
+ *
173
+ * @stability experimental
174
+ */
175
+ export declare function resolveTelemetryModuleOptions(options: TelemetryModuleOptions): ResolvedTelemetryModuleOptions;
176
+ //# sourceMappingURL=telemetry.options.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"telemetry.options.d.ts","sourceRoot":"","sources":["../../src/telemetry/telemetry.options.ts"],"names":[],"mappings":"AA6BA,OAAO,EAA+C,KAAK,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGlG,OAAO,EAAsB,KAAK,YAAY,EAAE,KAAK,WAAW,EAAE,MAAM,eAAe,CAAC;AACxF,OAAO,EAA8B,KAAK,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AAC7G,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEhE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEtE;;;;;GAKG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,CAAC,UAAU,CAAC,IAAI,MAAM,iBAAiB,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,SAAS,MAAM,GAC1E;QAAE,CAAC,UAAU,CAAC,IAAI,MAAM,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KAAE,GACzE,iBAAiB,CAAC,CAAC,CAAC;CACzB,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,WAAW,yBAAyB;IACxC,wEAAwE;IACxE,iBAAiB,CAAC,EAAE,yBAAyB,CAAC;IAC9C,iIAAiI;IACjI,aAAa,CAAC,EAAE,WAAW,CAAC,aAAa,CAAC,CAAC;CAC5C;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,sBAAsB;IACrC,sGAAsG;IACtG,IAAI,EAAE,YAAY,CAAC;IACnB,iIAAiI;IACjI,OAAO,EAAE,WAAW,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC;IAChD,yFAAyF;IACzF,YAAY,CAAC,EAAE,SAAS,cAAc,EAAE,CAAC;IACzC;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,GAAG,SAAS,CAAC;IACnD,qDAAqD;IACrD,SAAS,CAAC,EAAE,yBAAyB,CAAC;IACtC,qDAAqD;IACrD,OAAO,CAAC,EAAE,uBAAuB,CAAC;CACnC;AAED;;;;;GAKG;AACH,MAAM,WAAW,8BAA8B;IAC7C,kCAAkC;IAClC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,6BAA6B;IAC7B,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC;IACzD,gDAAgD;IAChD,QAAQ,CAAC,YAAY,EAAE,SAAS,cAAc,EAAE,CAAC;IACjD,2BAA2B;IAC3B,QAAQ,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,MAAM,GAAG,SAAS,CAAC;IAC3D,+EAA+E;IAC/E,QAAQ,CAAC,YAAY,EAAE,MAAM,kBAAkB,CAAC;IAChD,gFAAgF;IAChF,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAC9C,8EAA8E;IAC9E,QAAQ,CAAC,aAAa,EAAE,WAAW,CAAC,aAAa,CAAC,GAAG,SAAS,CAAC;IAC/D,yFAAyF;IACzF,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,OAAO,MAA6D,CAAC;AAErG;;;;;;;GAOG;AACH,eAAO,MAAM,4BAA4B,EAAE,OAAO,MAAwE,CAAC;AAE3H;;;;;;;GAOG;AACH,eAAO,MAAM,yBAAyB,EAAE,OAAO,MAAqE,CAAC;AAMrH;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,uBAAuB,GAAG,SAAS,GAAG,MAAM,CASzF;AAiDD;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,yBAAyB,GAAG,SAAS,GAAG,iBAAiB,CAuC3G;AAED;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAK5E;AAMD;;;;;;;;GAQG;AACH,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,sBAAsB,GAAG,8BAA8B,CAoC7G"}
@@ -0,0 +1,246 @@
1
+ "use strict";
2
+ // =============================================================================
3
+ // TelemetryModule.forRoot options (issue #703, PP-4.2; Extension Contract rung 1)
4
+ // =============================================================================
5
+ //
6
+ // What an app configures when it imports the telemetry slice:
7
+ //
8
+ // host the app's access decorators (`definePlatformHost`, issue
9
+ // #696): every packaged route is guarded by them, so a
10
+ // telemetry route authenticates and authorizes exactly as an
11
+ // app route does.
12
+ // imports the modules exporting the host-port providers (./ports.ts);
13
+ // the reference app passes its `TelemetryHostModule`.
14
+ // metricGroups extra dashboard metric groups, registered after the six
15
+ // platform groups.
16
+ // actorId how a route reads the caller's user id off the request
17
+ // (default: `request.requestUser.id ?? request.user.id`, the
18
+ // reference app's `@CurrentUser('id')`).
19
+ // dashboard `verdictThresholds`: deep-merged over
20
+ // `DEFAULT_VERDICT_THRESHOLDS` (zod-validated); `verdictPolicy`:
21
+ // what `VERDICT_POLICY` is bound to (rung 3; default
22
+ // `DefaultVerdictPolicy`).
23
+ // metrics `freshMs`: how much older than its table's newest reading a
24
+ // `last` cell (and an uptime check) may be and still count as
25
+ // current (default `METRIC_FRESH_MS`, 150 s).
26
+ //
27
+ // Validated once, in `forRoot`: a bad option fails boot with a message naming
28
+ // it.
29
+ // =============================================================================
30
+ Object.defineProperty(exports, "__esModule", { value: true });
31
+ exports.TELEMETRY_METRIC_FRESH_MS = exports.TELEMETRY_VERDICT_THRESHOLDS = exports.TELEMETRY_OPTIONS = void 0;
32
+ exports.resolveMetricFreshMs = resolveMetricFreshMs;
33
+ exports.resolveVerdictThresholds = resolveVerdictThresholds;
34
+ exports.defaultTelemetryActorId = defaultTelemetryActorId;
35
+ exports.resolveTelemetryModuleOptions = resolveTelemetryModuleOptions;
36
+ const common_1 = require("@nestjs/common");
37
+ const zod_1 = require("zod");
38
+ const index_1 = require("../core/index");
39
+ const telemetry_dashboard_verdict_1 = require("./dashboard/telemetry-dashboard.verdict");
40
+ const metric_group_1 = require("./metrics/metric-group");
41
+ /**
42
+ * Injection token of the {@link ResolvedTelemetryModuleOptions}.
43
+ *
44
+ * @stability experimental
45
+ */
46
+ exports.TELEMETRY_OPTIONS = Symbol.for('@marinoscar/platform/telemetry/OPTIONS');
47
+ /**
48
+ * Injection token of the resolved {@link VerdictThresholds}: the defaults with
49
+ * the app's `dashboard.verdictThresholds` deep-merged over them, frozen. Every
50
+ * reader of a threshold injects this.
51
+ *
52
+ * @extensionPoint token
53
+ * @stability experimental
54
+ */
55
+ exports.TELEMETRY_VERDICT_THRESHOLDS = Symbol.for('@marinoscar/platform/telemetry/VERDICT_THRESHOLDS');
56
+ /**
57
+ * Injection token of the metric groups' freshness window in milliseconds: the
58
+ * app's `metrics.freshMs`, else `METRIC_FRESH_MS`. The dashboard's `/metrics`
59
+ * route reads it and reports it as the response's `freshMs`.
60
+ *
61
+ * @extensionPoint token
62
+ * @stability experimental
63
+ */
64
+ exports.TELEMETRY_METRIC_FRESH_MS = Symbol.for('@marinoscar/platform/telemetry/METRIC_FRESH_MS');
65
+ /** The bounds of `metrics.freshMs`: one second to one day. */
66
+ const FRESH_MS_MIN = 1_000;
67
+ const FRESH_MS_MAX = 86_400_000;
68
+ /**
69
+ * The freshness window for an override: validated, else the default.
70
+ *
71
+ * @param metrics - the app's `metrics`, or `undefined`.
72
+ * @returns the window in milliseconds.
73
+ * @throws Error when `metrics` is not an object or `freshMs` is not a whole number from 1 000 to 86 400 000.
74
+ *
75
+ * @stability experimental
76
+ */
77
+ function resolveMetricFreshMs(metrics) {
78
+ if (metrics === undefined)
79
+ return metric_group_1.METRIC_FRESH_MS;
80
+ if (metrics === null || typeof metrics !== 'object')
81
+ fail('`metrics` must be an object');
82
+ const { freshMs } = metrics;
83
+ if (freshMs === undefined)
84
+ return metric_group_1.METRIC_FRESH_MS;
85
+ if (typeof freshMs !== 'number' || !Number.isInteger(freshMs) || freshMs < FRESH_MS_MIN || freshMs > FRESH_MS_MAX) {
86
+ fail(`\`metrics.freshMs\` must be a whole number of milliseconds from ${FRESH_MS_MIN} to ${FRESH_MS_MAX} (got ${String(freshMs)})`);
87
+ }
88
+ return freshMs;
89
+ }
90
+ const amount = zod_1.z.number().finite().nonnegative();
91
+ const count = zod_1.z.number().int().positive();
92
+ const levels = zod_1.z.object({ degraded: amount, critical: amount }).partial().strict();
93
+ /** What a `dashboard.verdictThresholds` override may contain. */
94
+ const verdictThresholdsOverrideSchema = zod_1.z
95
+ .object({
96
+ minRequests: zod_1.z.number().int().nonnegative(),
97
+ errorRatePct: levels,
98
+ p95Ms: levels,
99
+ errorLogs: zod_1.z
100
+ .object({ minCurrent: zod_1.z.number().int().nonnegative(), degradedRatio: amount, criticalRatio: amount })
101
+ .partial()
102
+ .strict(),
103
+ noDataMinutes: zod_1.z.number().finite().positive(),
104
+ unknownRoutes: zod_1.z.object({ criticalBearerRequests: count, criticalDistinctRoutes: count }).partial().strict(),
105
+ diskUtilizationPct: levels,
106
+ memoryUtilizationPct: levels,
107
+ dbConnectionsPct: levels,
108
+ oldestPendingJobMinutes: levels,
109
+ tlsDaysLeft: levels,
110
+ uptimeMinChecksForCritical: count,
111
+ collectorFailedPct: zod_1.z.object({ critical: amount }).partial().strict(),
112
+ backupAgeHours: levels,
113
+ })
114
+ .partial()
115
+ .strict();
116
+ /** The `{ degraded, critical }` pairs whose degraded bound must not exceed the critical one (`>`/`>=` rules). */
117
+ const RISING = [
118
+ 'errorRatePct',
119
+ 'p95Ms',
120
+ 'diskUtilizationPct',
121
+ 'memoryUtilizationPct',
122
+ 'dbConnectionsPct',
123
+ 'oldestPendingJobMinutes',
124
+ 'backupAgeHours',
125
+ ];
126
+ function deepFreeze(value) {
127
+ if (value && typeof value === 'object') {
128
+ for (const inner of Object.values(value))
129
+ deepFreeze(inner);
130
+ Object.freeze(value);
131
+ }
132
+ return value;
133
+ }
134
+ /**
135
+ * The verdict thresholds for an override: validated, deep-merged over
136
+ * {@link DEFAULT_VERDICT_THRESHOLDS} and frozen.
137
+ *
138
+ * @param override - the app's `dashboard.verdictThresholds`, or `undefined`.
139
+ * @returns the resolved thresholds.
140
+ * @throws Error naming every invalid field, or a degraded bound beyond its critical one.
141
+ *
142
+ * @stability experimental
143
+ */
144
+ function resolveVerdictThresholds(override) {
145
+ const parsed = verdictThresholdsOverrideSchema.safeParse(override ?? {});
146
+ if (!parsed.success) {
147
+ const problems = parsed.error.issues
148
+ .map((issue) => `${issue.path.length ? issue.path.join('.') : '(root)'}: ${issue.message}`)
149
+ .join('; ');
150
+ fail(`\`dashboard.verdictThresholds\` is invalid (${problems})`);
151
+ }
152
+ const merged = structuredClone(telemetry_dashboard_verdict_1.DEFAULT_VERDICT_THRESHOLDS);
153
+ for (const [key, value] of Object.entries(parsed.data)) {
154
+ if (value === undefined)
155
+ continue;
156
+ merged[key] =
157
+ value !== null && typeof value === 'object'
158
+ ? { ...merged[key], ...value }
159
+ : value;
160
+ }
161
+ const resolved = merged;
162
+ for (const key of RISING) {
163
+ const pair = resolved[key];
164
+ if (pair.degraded > pair.critical) {
165
+ fail(`\`dashboard.verdictThresholds.${key}\`: degraded (${pair.degraded}) must not exceed critical (${pair.critical})`);
166
+ }
167
+ }
168
+ if (resolved.tlsDaysLeft.degraded < resolved.tlsDaysLeft.critical) {
169
+ fail(`\`dashboard.verdictThresholds.tlsDaysLeft\`: degraded (${resolved.tlsDaysLeft.degraded}) must not be below ` +
170
+ `critical (${resolved.tlsDaysLeft.critical}); fewer days left is worse`);
171
+ }
172
+ if (resolved.errorLogs.degradedRatio > resolved.errorLogs.criticalRatio) {
173
+ fail(`\`dashboard.verdictThresholds.errorLogs\`: degradedRatio (${resolved.errorLogs.degradedRatio}) must not exceed ` +
174
+ `criticalRatio (${resolved.errorLogs.criticalRatio})`);
175
+ }
176
+ return deepFreeze(resolved);
177
+ }
178
+ /**
179
+ * The default caller resolver: the authenticated user's `id`, from
180
+ * `request.requestUser` (set by the app's guards) or `request.user` (the JWT
181
+ * strategy's user).
182
+ *
183
+ * @param request - the framework request.
184
+ * @returns the user id, or `undefined`.
185
+ *
186
+ * @stability experimental
187
+ */
188
+ function defaultTelemetryActorId(request) {
189
+ if (request === null || typeof request !== 'object')
190
+ return undefined;
191
+ const { requestUser, user } = request;
192
+ const id = (requestUser || user)?.id;
193
+ return typeof id === 'string' ? id : undefined;
194
+ }
195
+ function fail(why) {
196
+ throw new Error(`TelemetryModule.forRoot: ${why}.`);
197
+ }
198
+ /**
199
+ * Validates `options` and applies the defaults.
200
+ *
201
+ * @param options - what the app passed to `forRoot`.
202
+ * @returns the resolved, frozen options.
203
+ * @throws Error naming the bad option.
204
+ *
205
+ * @stability experimental
206
+ */
207
+ function resolveTelemetryModuleOptions(options) {
208
+ if (options === null || typeof options !== 'object')
209
+ fail('options are required ({ host, imports })');
210
+ if (!options.host)
211
+ fail('`host` is required (the app\'s definePlatformHost(...)): a platform route is never public');
212
+ const host = (0, index_1.definePlatformHost)(options.host);
213
+ if (!Array.isArray(options.imports)) {
214
+ fail('`imports` must list the modules that provide the telemetry host ports (the app\'s TelemetryHostModule)');
215
+ }
216
+ if (options.metricGroups !== undefined && !Array.isArray(options.metricGroups))
217
+ fail('`metricGroups` must be an array');
218
+ if (options.actorId !== undefined && typeof options.actorId !== 'function')
219
+ fail('`actorId` must be a function');
220
+ if (options.dashboard !== undefined && (options.dashboard === null || typeof options.dashboard !== 'object')) {
221
+ fail('`dashboard` must be an object');
222
+ }
223
+ const verdictPolicy = options.dashboard?.verdictPolicy;
224
+ if (verdictPolicy !== undefined) {
225
+ const kinds = verdictPolicy && typeof verdictPolicy === 'object'
226
+ ? ['useExisting', 'useClass', 'useFactory'].filter((k) => k in verdictPolicy)
227
+ : [];
228
+ if (kinds.length !== 1)
229
+ fail('`dashboard.verdictPolicy` needs exactly one of useExisting, useClass or useFactory');
230
+ }
231
+ const verdictThresholds = resolveVerdictThresholds(options.dashboard?.verdictThresholds);
232
+ const metricFreshMs = resolveMetricFreshMs(options.metrics);
233
+ const actorId = options.actorId ?? defaultTelemetryActorId;
234
+ const param = (0, common_1.createParamDecorator)((_data, ctx) => actorId(ctx.switchToHttp().getRequest()));
235
+ return Object.freeze({
236
+ host,
237
+ imports: [...options.imports],
238
+ metricGroups: Object.freeze([...(options.metricGroups ?? [])]),
239
+ actorId,
240
+ actorIdParam: () => param(),
241
+ verdictThresholds,
242
+ verdictPolicy,
243
+ metricFreshMs,
244
+ });
245
+ }
246
+ //# sourceMappingURL=telemetry.options.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"telemetry.options.js","sourceRoot":"","sources":["../../src/telemetry/telemetry.options.ts"],"names":[],"mappings":"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"}