@marinoscar/platform-api 0.1.0-next.18 → 0.1.0-next.20

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 (598) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/README.md +1 -0
  3. package/dist/ai/runtime/ai-limits.service.d.ts.map +1 -1
  4. package/dist/ai/runtime/ai-limits.service.js +8 -1
  5. package/dist/ai/runtime/ai-limits.service.js.map +1 -1
  6. package/dist/ai/usage/ai-usage-admin.controller.d.ts +6 -3
  7. package/dist/ai/usage/ai-usage-admin.controller.d.ts.map +1 -1
  8. package/dist/ai/usage/ai-usage-admin.controller.js +31 -17
  9. package/dist/ai/usage/ai-usage-admin.controller.js.map +1 -1
  10. package/dist/ai/usage/ai-usage.controller.d.ts +5 -2
  11. package/dist/ai/usage/ai-usage.controller.d.ts.map +1 -1
  12. package/dist/ai/usage/ai-usage.controller.js +18 -11
  13. package/dist/ai/usage/ai-usage.controller.js.map +1 -1
  14. package/dist/ai/usage/ai-usage.service.d.ts +19 -4
  15. package/dist/ai/usage/ai-usage.service.d.ts.map +1 -1
  16. package/dist/ai/usage/ai-usage.service.js +84 -43
  17. package/dist/ai/usage/ai-usage.service.js.map +1 -1
  18. package/dist/ai/usage/dto/ai-usage.dto.d.ts +8 -0
  19. package/dist/ai/usage/dto/ai-usage.dto.d.ts.map +1 -1
  20. package/dist/ai/usage/dto/ai-usage.dto.js +16 -5
  21. package/dist/ai/usage/dto/ai-usage.dto.js.map +1 -1
  22. package/dist/alerts/alerts-admin.controller.d.ts +40 -0
  23. package/dist/alerts/alerts-admin.controller.d.ts.map +1 -0
  24. package/dist/alerts/alerts-admin.controller.js +297 -0
  25. package/dist/alerts/alerts-admin.controller.js.map +1 -0
  26. package/dist/alerts/alerts-context.service.d.ts +64 -0
  27. package/dist/alerts/alerts-context.service.d.ts.map +1 -0
  28. package/dist/alerts/alerts-context.service.js +190 -0
  29. package/dist/alerts/alerts-context.service.js.map +1 -0
  30. package/dist/alerts/alerts-dispatch.service.d.ts +53 -0
  31. package/dist/alerts/alerts-dispatch.service.d.ts.map +1 -0
  32. package/dist/alerts/alerts-dispatch.service.js +135 -0
  33. package/dist/alerts/alerts-dispatch.service.js.map +1 -0
  34. package/dist/alerts/alerts-evaluation.service.d.ts +88 -0
  35. package/dist/alerts/alerts-evaluation.service.d.ts.map +1 -0
  36. package/dist/alerts/alerts-evaluation.service.js +296 -0
  37. package/dist/alerts/alerts-evaluation.service.js.map +1 -0
  38. package/dist/alerts/alerts-event.listener.d.ts +22 -0
  39. package/dist/alerts/alerts-event.listener.d.ts.map +1 -0
  40. package/dist/alerts/alerts-event.listener.js +72 -0
  41. package/dist/alerts/alerts-event.listener.js.map +1 -0
  42. package/dist/alerts/alerts-incidents.service.d.ts +86 -0
  43. package/dist/alerts/alerts-incidents.service.d.ts.map +1 -0
  44. package/dist/alerts/alerts-incidents.service.js +144 -0
  45. package/dist/alerts/alerts-incidents.service.js.map +1 -0
  46. package/dist/alerts/alerts-rules.service.d.ts +73 -0
  47. package/dist/alerts/alerts-rules.service.d.ts.map +1 -0
  48. package/dist/alerts/alerts-rules.service.js +205 -0
  49. package/dist/alerts/alerts-rules.service.js.map +1 -0
  50. package/dist/alerts/alerts-seed.service.d.ts +25 -0
  51. package/dist/alerts/alerts-seed.service.d.ts.map +1 -0
  52. package/dist/alerts/alerts-seed.service.js +82 -0
  53. package/dist/alerts/alerts-seed.service.js.map +1 -0
  54. package/dist/alerts/alerts.constants.d.ts +53 -0
  55. package/dist/alerts/alerts.constants.d.ts.map +1 -0
  56. package/dist/alerts/alerts.constants.js +57 -0
  57. package/dist/alerts/alerts.constants.js.map +1 -0
  58. package/dist/alerts/alerts.errors.d.ts +44 -0
  59. package/dist/alerts/alerts.errors.d.ts.map +1 -0
  60. package/dist/alerts/alerts.errors.js +47 -0
  61. package/dist/alerts/alerts.errors.js.map +1 -0
  62. package/dist/alerts/alerts.metrics.d.ts +60 -0
  63. package/dist/alerts/alerts.metrics.d.ts.map +1 -0
  64. package/dist/alerts/alerts.metrics.js +135 -0
  65. package/dist/alerts/alerts.metrics.js.map +1 -0
  66. package/dist/alerts/alerts.module.d.ts +35 -0
  67. package/dist/alerts/alerts.module.d.ts.map +1 -0
  68. package/dist/alerts/alerts.module.js +96 -0
  69. package/dist/alerts/alerts.module.js.map +1 -0
  70. package/dist/alerts/alerts.options.d.ts +64 -0
  71. package/dist/alerts/alerts.options.d.ts.map +1 -0
  72. package/dist/alerts/alerts.options.js +34 -0
  73. package/dist/alerts/alerts.options.js.map +1 -0
  74. package/dist/alerts/alerts.permissions.d.ts +27 -0
  75. package/dist/alerts/alerts.permissions.d.ts.map +1 -0
  76. package/dist/alerts/alerts.permissions.js +29 -0
  77. package/dist/alerts/alerts.permissions.js.map +1 -0
  78. package/dist/alerts/alerts.types.d.ts +182 -0
  79. package/dist/alerts/alerts.types.d.ts.map +1 -0
  80. package/dist/alerts/alerts.types.js +3 -0
  81. package/dist/alerts/alerts.types.js.map +1 -0
  82. package/dist/alerts/data/alerts-db.d.ts +169 -0
  83. package/dist/alerts/data/alerts-db.d.ts.map +1 -0
  84. package/dist/alerts/data/alerts-db.js +18 -0
  85. package/dist/alerts/data/alerts-db.js.map +1 -0
  86. package/dist/alerts/dto/alerts.dto.d.ts +132 -0
  87. package/dist/alerts/dto/alerts.dto.d.ts.map +1 -0
  88. package/dist/alerts/dto/alerts.dto.js +42 -0
  89. package/dist/alerts/dto/alerts.dto.js.map +1 -0
  90. package/dist/alerts/handlers/alerts-evaluate-event.handler.d.ts +23 -0
  91. package/dist/alerts/handlers/alerts-evaluate-event.handler.d.ts.map +1 -0
  92. package/dist/alerts/handlers/alerts-evaluate-event.handler.js +71 -0
  93. package/dist/alerts/handlers/alerts-evaluate-event.handler.js.map +1 -0
  94. package/dist/alerts/handlers/alerts-evaluate.handler.d.ts +25 -0
  95. package/dist/alerts/handlers/alerts-evaluate.handler.d.ts.map +1 -0
  96. package/dist/alerts/handlers/alerts-evaluate.handler.js +54 -0
  97. package/dist/alerts/handlers/alerts-evaluate.handler.js.map +1 -0
  98. package/dist/alerts/handlers/alerts-incidents-purge.handler.d.ts +29 -0
  99. package/dist/alerts/handlers/alerts-incidents-purge.handler.d.ts.map +1 -0
  100. package/dist/alerts/handlers/alerts-incidents-purge.handler.js +76 -0
  101. package/dist/alerts/handlers/alerts-incidents-purge.handler.js.map +1 -0
  102. package/dist/alerts/index.d.ts +45 -0
  103. package/dist/alerts/index.d.ts.map +1 -0
  104. package/dist/alerts/index.js +108 -0
  105. package/dist/alerts/index.js.map +1 -0
  106. package/dist/alerts/kinds/alert-kind.registry.d.ts +33 -0
  107. package/dist/alerts/kinds/alert-kind.registry.d.ts.map +1 -0
  108. package/dist/alerts/kinds/alert-kind.registry.js +63 -0
  109. package/dist/alerts/kinds/alert-kind.registry.js.map +1 -0
  110. package/dist/alerts/kinds/builtin-kinds.d.ts +18 -0
  111. package/dist/alerts/kinds/builtin-kinds.d.ts.map +1 -0
  112. package/dist/alerts/kinds/builtin-kinds.js +33 -0
  113. package/dist/alerts/kinds/builtin-kinds.js.map +1 -0
  114. package/dist/alerts/kinds/metric-threshold.kind.d.ts +11 -0
  115. package/dist/alerts/kinds/metric-threshold.kind.d.ts.map +1 -0
  116. package/dist/alerts/kinds/metric-threshold.kind.js +63 -0
  117. package/dist/alerts/kinds/metric-threshold.kind.js.map +1 -0
  118. package/dist/alerts/kinds/metric-threshold.sql.d.ts +41 -0
  119. package/dist/alerts/kinds/metric-threshold.sql.d.ts.map +1 -0
  120. package/dist/alerts/kinds/metric-threshold.sql.js +124 -0
  121. package/dist/alerts/kinds/metric-threshold.sql.js.map +1 -0
  122. package/dist/alerts/kinds/node-event.kind.d.ts +44 -0
  123. package/dist/alerts/kinds/node-event.kind.d.ts.map +1 -0
  124. package/dist/alerts/kinds/node-event.kind.js +113 -0
  125. package/dist/alerts/kinds/node-event.kind.js.map +1 -0
  126. package/dist/alerts/kinds/node-offline.kind.d.ts +11 -0
  127. package/dist/alerts/kinds/node-offline.kind.d.ts.map +1 -0
  128. package/dist/alerts/kinds/node-offline.kind.js +41 -0
  129. package/dist/alerts/kinds/node-offline.kind.js.map +1 -0
  130. package/dist/alerts/kinds/telemetry-unavailable.kind.d.ts +11 -0
  131. package/dist/alerts/kinds/telemetry-unavailable.kind.d.ts.map +1 -0
  132. package/dist/alerts/kinds/telemetry-unavailable.kind.js +40 -0
  133. package/dist/alerts/kinds/telemetry-unavailable.kind.js.map +1 -0
  134. package/dist/alerts/kinds/verdict.kind.d.ts +13 -0
  135. package/dist/alerts/kinds/verdict.kind.d.ts.map +1 -0
  136. package/dist/alerts/kinds/verdict.kind.js +34 -0
  137. package/dist/alerts/kinds/verdict.kind.js.map +1 -0
  138. package/dist/alerts/notifications/alerts.notifications.d.ts +77 -0
  139. package/dist/alerts/notifications/alerts.notifications.d.ts.map +1 -0
  140. package/dist/alerts/notifications/alerts.notifications.js +145 -0
  141. package/dist/alerts/notifications/alerts.notifications.js.map +1 -0
  142. package/dist/alerts/starter-rules.d.ts +21 -0
  143. package/dist/alerts/starter-rules.d.ts.map +1 -0
  144. package/dist/alerts/starter-rules.js +141 -0
  145. package/dist/alerts/starter-rules.js.map +1 -0
  146. package/dist/alerts/state/alert-state-machine.d.ts +92 -0
  147. package/dist/alerts/state/alert-state-machine.d.ts.map +1 -0
  148. package/dist/alerts/state/alert-state-machine.js +96 -0
  149. package/dist/alerts/state/alert-state-machine.js.map +1 -0
  150. package/dist/alerts/tasks/alerts-evaluate.task.d.ts +18 -0
  151. package/dist/alerts/tasks/alerts-evaluate.task.d.ts.map +1 -0
  152. package/dist/alerts/tasks/alerts-evaluate.task.js +61 -0
  153. package/dist/alerts/tasks/alerts-evaluate.task.js.map +1 -0
  154. package/dist/alerts/tasks/alerts-purge.task.d.ts +15 -0
  155. package/dist/alerts/tasks/alerts-purge.task.d.ts.map +1 -0
  156. package/dist/alerts/tasks/alerts-purge.task.js +58 -0
  157. package/dist/alerts/tasks/alerts-purge.task.js.map +1 -0
  158. package/dist/alerts/testing/conformance.d.ts +58 -0
  159. package/dist/alerts/testing/conformance.d.ts.map +1 -0
  160. package/dist/alerts/testing/conformance.js +198 -0
  161. package/dist/alerts/testing/conformance.js.map +1 -0
  162. package/dist/alerts/testing/fakes.d.ts +80 -0
  163. package/dist/alerts/testing/fakes.d.ts.map +1 -0
  164. package/dist/alerts/testing/fakes.js +230 -0
  165. package/dist/alerts/testing/fakes.js.map +1 -0
  166. package/dist/alerts/testing/index.d.ts +5 -0
  167. package/dist/alerts/testing/index.d.ts.map +1 -0
  168. package/dist/alerts/testing/index.js +15 -0
  169. package/dist/alerts/testing/index.js.map +1 -0
  170. package/dist/core/index.d.ts +3 -0
  171. package/dist/core/index.d.ts.map +1 -1
  172. package/dist/core/index.js +13 -2
  173. package/dist/core/index.js.map +1 -1
  174. package/dist/core/net/ip-classify.d.ts +39 -0
  175. package/dist/core/net/ip-classify.d.ts.map +1 -0
  176. package/dist/core/net/ip-classify.js +196 -0
  177. package/dist/core/net/ip-classify.js.map +1 -0
  178. package/dist/core/timezone/request-time-zone.d.ts +61 -0
  179. package/dist/core/timezone/request-time-zone.d.ts.map +1 -0
  180. package/dist/core/timezone/request-time-zone.js +71 -0
  181. package/dist/core/timezone/request-time-zone.js.map +1 -0
  182. package/dist/credentials/testing/conformance.d.ts.map +1 -1
  183. package/dist/credentials/testing/conformance.js +1 -0
  184. package/dist/credentials/testing/conformance.js.map +1 -1
  185. package/dist/email/email-settings.controller.d.ts +5 -2
  186. package/dist/email/email-settings.controller.d.ts.map +1 -1
  187. package/dist/email/email-settings.controller.js +11 -5
  188. package/dist/email/email-settings.controller.js.map +1 -1
  189. package/dist/email/email-test-send.service.d.ts +11 -1
  190. package/dist/email/email-test-send.service.d.ts.map +1 -1
  191. package/dist/email/email-test-send.service.js +17 -3
  192. package/dist/email/email-test-send.service.js.map +1 -1
  193. package/dist/email/index.d.ts +2 -2
  194. package/dist/email/index.d.ts.map +1 -1
  195. package/dist/email/index.js +3 -1
  196. package/dist/email/index.js.map +1 -1
  197. package/dist/email/templates/backup-failed.email.d.ts.map +1 -1
  198. package/dist/email/templates/backup-failed.email.js +9 -5
  199. package/dist/email/templates/backup-failed.email.js.map +1 -1
  200. package/dist/email/templates/format-date.d.ts +39 -0
  201. package/dist/email/templates/format-date.d.ts.map +1 -0
  202. package/dist/email/templates/format-date.js +103 -0
  203. package/dist/email/templates/format-date.js.map +1 -0
  204. package/dist/email/templates/index.d.ts +2 -0
  205. package/dist/email/templates/index.d.ts.map +1 -1
  206. package/dist/email/templates/index.js +4 -1
  207. package/dist/email/templates/index.js.map +1 -1
  208. package/dist/email/templates/job-failed.email.d.ts +1 -1
  209. package/dist/email/templates/job-failed.email.d.ts.map +1 -1
  210. package/dist/email/templates/job-failed.email.js +6 -6
  211. package/dist/email/templates/job-failed.email.js.map +1 -1
  212. package/dist/email/templates/node-offline.email.d.ts.map +1 -1
  213. package/dist/email/templates/node-offline.email.js +11 -7
  214. package/dist/email/templates/node-offline.email.js.map +1 -1
  215. package/dist/email/templates/render-context.d.ts +5 -0
  216. package/dist/email/templates/render-context.d.ts.map +1 -1
  217. package/dist/email/templates/render-context.js.map +1 -1
  218. package/dist/email/templates/restore-completed.email.d.ts.map +1 -1
  219. package/dist/email/templates/restore-completed.email.js +9 -5
  220. package/dist/email/templates/restore-completed.email.js.map +1 -1
  221. package/dist/email/templates/role-changed.email.d.ts +1 -1
  222. package/dist/email/templates/role-changed.email.d.ts.map +1 -1
  223. package/dist/email/templates/role-changed.email.js +6 -7
  224. package/dist/email/templates/role-changed.email.js.map +1 -1
  225. package/dist/email/templates/test-email.email.d.ts +1 -1
  226. package/dist/email/templates/test-email.email.d.ts.map +1 -1
  227. package/dist/email/templates/test-email.email.js +6 -11
  228. package/dist/email/templates/test-email.email.js.map +1 -1
  229. package/dist/exports/export-job.d.ts +1 -0
  230. package/dist/exports/export-job.d.ts.map +1 -1
  231. package/dist/exports/export-job.js +2 -0
  232. package/dist/exports/export-job.js.map +1 -1
  233. package/dist/exports/export.types.d.ts +8 -0
  234. package/dist/exports/export.types.d.ts.map +1 -1
  235. package/dist/exports/exports.controller.d.ts +4 -2
  236. package/dist/exports/exports.controller.d.ts.map +1 -1
  237. package/dist/exports/exports.controller.js +15 -6
  238. package/dist/exports/exports.controller.js.map +1 -1
  239. package/dist/exports/exports.service.d.ts +5 -0
  240. package/dist/exports/exports.service.d.ts.map +1 -1
  241. package/dist/exports/exports.service.js +3 -0
  242. package/dist/exports/exports.service.js.map +1 -1
  243. package/dist/exports/handlers/export-run.handler.d.ts.map +1 -1
  244. package/dist/exports/handlers/export-run.handler.js +4 -1
  245. package/dist/exports/handlers/export-run.handler.js.map +1 -1
  246. package/dist/exports/index.d.ts +1 -0
  247. package/dist/exports/index.d.ts.map +1 -1
  248. package/dist/exports/index.js +7 -2
  249. package/dist/exports/index.js.map +1 -1
  250. package/dist/exports/testing/conformance.d.ts.map +1 -1
  251. package/dist/exports/testing/conformance.js +1 -0
  252. package/dist/exports/testing/conformance.js.map +1 -1
  253. package/dist/host/http/cors-options.d.ts +5 -1
  254. package/dist/host/http/cors-options.d.ts.map +1 -1
  255. package/dist/host/http/cors-options.js.map +1 -1
  256. package/dist/identity/pat/pat.controller.d.ts +4 -3
  257. package/dist/identity/pat/pat.controller.d.ts.map +1 -1
  258. package/dist/identity/pat/pat.controller.js +19 -5
  259. package/dist/identity/pat/pat.controller.js.map +1 -1
  260. package/dist/identity/pat/pat.service.d.ts +21 -0
  261. package/dist/identity/pat/pat.service.d.ts.map +1 -1
  262. package/dist/identity/pat/pat.service.js +27 -10
  263. package/dist/identity/pat/pat.service.js.map +1 -1
  264. package/dist/jobs/data/jobs-db.d.ts +26 -0
  265. package/dist/jobs/data/jobs-db.d.ts.map +1 -1
  266. package/dist/jobs/index.d.ts +1 -1
  267. package/dist/jobs/index.d.ts.map +1 -1
  268. package/dist/jobs/index.js.map +1 -1
  269. package/dist/manifest/platform-model-ownership.d.ts +1 -1
  270. package/dist/manifest/platform-model-ownership.d.ts.map +1 -1
  271. package/dist/manifest/platform-model-ownership.js +30 -1
  272. package/dist/manifest/platform-model-ownership.js.map +1 -1
  273. package/dist/manifest/platform-permissions.d.ts +6 -2
  274. package/dist/manifest/platform-permissions.d.ts.map +1 -1
  275. package/dist/manifest/platform-permissions.js +56 -44
  276. package/dist/manifest/platform-permissions.js.map +1 -1
  277. package/dist/manifest/platform-user-owned-models.d.ts.map +1 -1
  278. package/dist/manifest/platform-user-owned-models.js +16 -0
  279. package/dist/manifest/platform-user-owned-models.js.map +1 -1
  280. package/dist/nodes/dto/node-admin.dto.d.ts +5 -0
  281. package/dist/nodes/dto/node-admin.dto.d.ts.map +1 -1
  282. package/dist/nodes/dto/node-admin.dto.js +19 -0
  283. package/dist/nodes/dto/node-admin.dto.js.map +1 -1
  284. package/dist/nodes/dto/node-control-plane.dto.d.ts +26 -0
  285. package/dist/nodes/dto/node-control-plane.dto.d.ts.map +1 -1
  286. package/dist/nodes/dto/node-event.dto.d.ts +100 -0
  287. package/dist/nodes/dto/node-event.dto.d.ts.map +1 -0
  288. package/dist/nodes/dto/node-event.dto.js +239 -0
  289. package/dist/nodes/dto/node-event.dto.js.map +1 -0
  290. package/dist/nodes/dto/node-response.dto.d.ts +21 -0
  291. package/dist/nodes/dto/node-response.dto.d.ts.map +1 -1
  292. package/dist/nodes/dto/node-response.dto.js +42 -1
  293. package/dist/nodes/dto/node-response.dto.js.map +1 -1
  294. package/dist/nodes/events/node-event.event.d.ts +41 -0
  295. package/dist/nodes/events/node-event.event.d.ts.map +1 -0
  296. package/dist/nodes/events/node-event.event.js +69 -0
  297. package/dist/nodes/events/node-event.event.js.map +1 -0
  298. package/dist/nodes/handlers/node-events-purge.handler.d.ts +31 -0
  299. package/dist/nodes/handlers/node-events-purge.handler.d.ts.map +1 -0
  300. package/dist/nodes/handlers/node-events-purge.handler.js +91 -0
  301. package/dist/nodes/handlers/node-events-purge.handler.js.map +1 -0
  302. package/dist/nodes/index.d.ts +11 -4
  303. package/dist/nodes/index.d.ts.map +1 -1
  304. package/dist/nodes/index.js +20 -1
  305. package/dist/nodes/index.js.map +1 -1
  306. package/dist/nodes/node-events.service.d.ts +87 -0
  307. package/dist/nodes/node-events.service.d.ts.map +1 -0
  308. package/dist/nodes/node-events.service.js +271 -0
  309. package/dist/nodes/node-events.service.js.map +1 -0
  310. package/dist/nodes/node-fleet-metrics.service.d.ts +10 -1
  311. package/dist/nodes/node-fleet-metrics.service.d.ts.map +1 -1
  312. package/dist/nodes/node-fleet-metrics.service.js +31 -0
  313. package/dist/nodes/node-fleet-metrics.service.js.map +1 -1
  314. package/dist/nodes/node-lifecycle.service.d.ts +16 -1
  315. package/dist/nodes/node-lifecycle.service.d.ts.map +1 -1
  316. package/dist/nodes/node-lifecycle.service.js +7 -0
  317. package/dist/nodes/node-lifecycle.service.js.map +1 -1
  318. package/dist/nodes/nodes-admin.controller.d.ts +5 -1
  319. package/dist/nodes/nodes-admin.controller.d.ts.map +1 -1
  320. package/dist/nodes/nodes-admin.controller.js +32 -2
  321. package/dist/nodes/nodes-admin.controller.js.map +1 -1
  322. package/dist/nodes/nodes.controller.d.ts +7 -3
  323. package/dist/nodes/nodes.controller.d.ts.map +1 -1
  324. package/dist/nodes/nodes.controller.js +46 -6
  325. package/dist/nodes/nodes.controller.js.map +1 -1
  326. package/dist/nodes/nodes.metrics.d.ts +23 -1
  327. package/dist/nodes/nodes.metrics.d.ts.map +1 -1
  328. package/dist/nodes/nodes.metrics.js +80 -1
  329. package/dist/nodes/nodes.metrics.js.map +1 -1
  330. package/dist/nodes/nodes.module.d.ts.map +1 -1
  331. package/dist/nodes/nodes.module.js +6 -0
  332. package/dist/nodes/nodes.module.js.map +1 -1
  333. package/dist/nodes/nodes.options.d.ts +17 -0
  334. package/dist/nodes/nodes.options.d.ts.map +1 -1
  335. package/dist/nodes/nodes.options.js +13 -2
  336. package/dist/nodes/nodes.options.js.map +1 -1
  337. package/dist/nodes/nodes.service.d.ts +3 -1
  338. package/dist/nodes/nodes.service.d.ts.map +1 -1
  339. package/dist/nodes/nodes.service.js +14 -3
  340. package/dist/nodes/nodes.service.js.map +1 -1
  341. package/dist/nodes/tasks/node-events-purge.task.d.ts +13 -0
  342. package/dist/nodes/tasks/node-events-purge.task.d.ts.map +1 -0
  343. package/dist/nodes/tasks/node-events-purge.task.js +73 -0
  344. package/dist/nodes/tasks/node-events-purge.task.js.map +1 -0
  345. package/dist/notifications/channels/browser-notification.channel.js +1 -1
  346. package/dist/notifications/channels/browser-notification.channel.js.map +1 -1
  347. package/dist/notifications/channels/browser-templates.d.ts +12 -1
  348. package/dist/notifications/channels/browser-templates.d.ts.map +1 -1
  349. package/dist/notifications/channels/browser-templates.js +5 -4
  350. package/dist/notifications/channels/browser-templates.js.map +1 -1
  351. package/dist/notifications/channels/email-notification.channel.d.ts.map +1 -1
  352. package/dist/notifications/channels/email-notification.channel.js +3 -3
  353. package/dist/notifications/channels/email-notification.channel.js.map +1 -1
  354. package/dist/notifications/channels/push-notification.channel.js +1 -1
  355. package/dist/notifications/channels/push-notification.channel.js.map +1 -1
  356. package/dist/notifications/index.d.ts +1 -1
  357. package/dist/notifications/index.d.ts.map +1 -1
  358. package/dist/notifications/notification.types.d.ts +15 -0
  359. package/dist/notifications/notification.types.d.ts.map +1 -1
  360. package/dist/notifications/notification.types.js.map +1 -1
  361. package/dist/notifications/notifications.service.d.ts.map +1 -1
  362. package/dist/notifications/notifications.service.js +8 -0
  363. package/dist/notifications/notifications.service.js.map +1 -1
  364. package/dist/notifications/push-config.controller.d.ts +5 -2
  365. package/dist/notifications/push-config.controller.d.ts.map +1 -1
  366. package/dist/notifications/push-config.controller.js +11 -5
  367. package/dist/notifications/push-config.controller.js.map +1 -1
  368. package/dist/notifications/push-test.service.d.ts +1 -1
  369. package/dist/notifications/push-test.service.d.ts.map +1 -1
  370. package/dist/notifications/push-test.service.js +6 -4
  371. package/dist/notifications/push-test.service.js.map +1 -1
  372. package/dist/settings/settings-resolver.d.ts +28 -1
  373. package/dist/settings/settings-resolver.d.ts.map +1 -1
  374. package/dist/settings/settings-resolver.js +41 -0
  375. package/dist/settings/settings-resolver.js.map +1 -1
  376. package/dist/settings/settings.module.d.ts.map +1 -1
  377. package/dist/settings/settings.module.js +9 -4
  378. package/dist/settings/settings.module.js.map +1 -1
  379. package/dist/settings/user-settings/user-settings.service.d.ts.map +1 -1
  380. package/dist/settings/user-settings/user-settings.service.js +2 -4
  381. package/dist/settings/user-settings/user-settings.service.js.map +1 -1
  382. package/dist/sharing/grants/grants.service.js +2 -2
  383. package/dist/sharing/grants/grants.service.js.map +1 -1
  384. package/dist/sharing/groups/group-invites.service.js +1 -1
  385. package/dist/sharing/groups/group-invites.service.js.map +1 -1
  386. package/dist/sharing/groups/sharing-effects.d.ts +2 -1
  387. package/dist/sharing/groups/sharing-effects.d.ts.map +1 -1
  388. package/dist/sharing/groups/sharing-effects.js +4 -4
  389. package/dist/sharing/groups/sharing-effects.js.map +1 -1
  390. package/dist/sharing/index.d.ts +1 -1
  391. package/dist/sharing/index.d.ts.map +1 -1
  392. package/dist/sharing/index.js.map +1 -1
  393. package/dist/sharing/notifications/group-invitation.templates.d.ts +23 -0
  394. package/dist/sharing/notifications/group-invitation.templates.d.ts.map +1 -1
  395. package/dist/sharing/notifications/group-invitation.templates.js +17 -2
  396. package/dist/sharing/notifications/group-invitation.templates.js.map +1 -1
  397. package/dist/sharing/notifications/shared-with-you.templates.d.ts +1 -1
  398. package/dist/sharing/notifications/shared-with-you.templates.d.ts.map +1 -1
  399. package/dist/sharing/notifications/shared-with-you.templates.js +3 -2
  400. package/dist/sharing/notifications/shared-with-you.templates.js.map +1 -1
  401. package/dist/sharing/ports.d.ts +15 -2
  402. package/dist/sharing/ports.d.ts.map +1 -1
  403. package/dist/sharing/ports.js.map +1 -1
  404. package/dist/telemetry/dashboard/telemetry-dashboard.service.d.ts +30 -8
  405. package/dist/telemetry/dashboard/telemetry-dashboard.service.d.ts.map +1 -1
  406. package/dist/telemetry/dashboard/telemetry-dashboard.service.js +12 -0
  407. package/dist/telemetry/dashboard/telemetry-dashboard.service.js.map +1 -1
  408. package/dist/telemetry/dashboard/telemetry-dashboard.verdict.d.ts +15 -0
  409. package/dist/telemetry/dashboard/telemetry-dashboard.verdict.d.ts.map +1 -1
  410. package/dist/telemetry/dashboard/telemetry-dashboard.verdict.js +17 -2
  411. package/dist/telemetry/dashboard/telemetry-dashboard.verdict.js.map +1 -1
  412. package/dist/telemetry/dto/telemetry-dashboard.dto.d.ts +3 -3
  413. package/dist/telemetry/index.d.ts +4 -2
  414. package/dist/telemetry/index.d.ts.map +1 -1
  415. package/dist/telemetry/index.js +4 -1
  416. package/dist/telemetry/index.js.map +1 -1
  417. package/dist/telemetry/metrics/groups/nodes.metric-group.d.ts.map +1 -1
  418. package/dist/telemetry/metrics/groups/nodes.metric-group.js +77 -0
  419. package/dist/telemetry/metrics/groups/nodes.metric-group.js.map +1 -1
  420. package/dist/telemetry/metrics/metric-verdict.d.ts +1 -1
  421. package/dist/telemetry/metrics/metric-verdict.d.ts.map +1 -1
  422. package/dist/telemetry/metrics/metric-verdict.js +15 -1
  423. package/dist/telemetry/metrics/metric-verdict.js.map +1 -1
  424. package/dist/telemetry/query/telemetry-query-facade.d.ts +1 -1
  425. package/dist/telemetry/query/telemetry-query-facade.d.ts.map +1 -1
  426. package/dist/telemetry/query/telemetry-query-facade.js.map +1 -1
  427. package/dist/telemetry/query/telemetry-query.service.d.ts +2 -2
  428. package/dist/telemetry/query/telemetry-query.service.d.ts.map +1 -1
  429. package/dist/telemetry/query/telemetry-query.service.js +4 -0
  430. package/dist/telemetry/query/telemetry-query.service.js.map +1 -1
  431. package/dist/telemetry/stack/dto/telemetry-stack.dto.d.ts +1 -1
  432. package/dist/telemetry/telemetry-support-bundle.section.d.ts +4 -4
  433. package/dist/telemetry/telemetry.module.d.ts.map +1 -1
  434. package/dist/telemetry/telemetry.module.js +1 -0
  435. package/dist/telemetry/telemetry.module.js.map +1 -1
  436. package/dist/telemetry/testing/metric-schema.fixture.d.ts.map +1 -1
  437. package/dist/telemetry/testing/metric-schema.fixture.js +56 -0
  438. package/dist/telemetry/testing/metric-schema.fixture.js.map +1 -1
  439. package/dist/user-data/platform-user-data.d.ts.map +1 -1
  440. package/dist/user-data/platform-user-data.js +2 -0
  441. package/dist/user-data/platform-user-data.js.map +1 -1
  442. package/dist/webhooks/data/webhooks-db.d.ts +176 -0
  443. package/dist/webhooks/data/webhooks-db.d.ts.map +1 -0
  444. package/dist/webhooks/data/webhooks-db.js +14 -0
  445. package/dist/webhooks/data/webhooks-db.js.map +1 -0
  446. package/dist/webhooks/egress/egress-guard.d.ts +99 -0
  447. package/dist/webhooks/egress/egress-guard.d.ts.map +1 -0
  448. package/dist/webhooks/egress/egress-guard.js +172 -0
  449. package/dist/webhooks/egress/egress-guard.js.map +1 -0
  450. package/dist/webhooks/egress/transport.d.ts +58 -0
  451. package/dist/webhooks/egress/transport.d.ts.map +1 -0
  452. package/dist/webhooks/egress/transport.js +115 -0
  453. package/dist/webhooks/egress/transport.js.map +1 -0
  454. package/dist/webhooks/handlers/webhook-deliver.handler.d.ts +76 -0
  455. package/dist/webhooks/handlers/webhook-deliver.handler.d.ts.map +1 -0
  456. package/dist/webhooks/handlers/webhook-deliver.handler.js +332 -0
  457. package/dist/webhooks/handlers/webhook-deliver.handler.js.map +1 -0
  458. package/dist/webhooks/handlers/webhook-fanout.handler.d.ts +28 -0
  459. package/dist/webhooks/handlers/webhook-fanout.handler.d.ts.map +1 -0
  460. package/dist/webhooks/handlers/webhook-fanout.handler.js +73 -0
  461. package/dist/webhooks/handlers/webhook-fanout.handler.js.map +1 -0
  462. package/dist/webhooks/handlers/webhook-purge.handler.d.ts +33 -0
  463. package/dist/webhooks/handlers/webhook-purge.handler.d.ts.map +1 -0
  464. package/dist/webhooks/handlers/webhook-purge.handler.js +77 -0
  465. package/dist/webhooks/handlers/webhook-purge.handler.js.map +1 -0
  466. package/dist/webhooks/http/admin-webhooks.controller.d.ts +36 -0
  467. package/dist/webhooks/http/admin-webhooks.controller.d.ts.map +1 -0
  468. package/dist/webhooks/http/admin-webhooks.controller.js +250 -0
  469. package/dist/webhooks/http/admin-webhooks.controller.js.map +1 -0
  470. package/dist/webhooks/http/org-webhooks.controller.d.ts +36 -0
  471. package/dist/webhooks/http/org-webhooks.controller.d.ts.map +1 -0
  472. package/dist/webhooks/http/org-webhooks.controller.js +249 -0
  473. package/dist/webhooks/http/org-webhooks.controller.js.map +1 -0
  474. package/dist/webhooks/http/scope-context.d.ts +17 -0
  475. package/dist/webhooks/http/scope-context.d.ts.map +1 -0
  476. package/dist/webhooks/http/scope-context.js +28 -0
  477. package/dist/webhooks/http/scope-context.js.map +1 -0
  478. package/dist/webhooks/http/webhook.dto.d.ts +174 -0
  479. package/dist/webhooks/http/webhook.dto.d.ts.map +1 -0
  480. package/dist/webhooks/http/webhook.dto.js +58 -0
  481. package/dist/webhooks/http/webhook.dto.js.map +1 -0
  482. package/dist/webhooks/http/webhooks.controller.d.ts +36 -0
  483. package/dist/webhooks/http/webhooks.controller.d.ts.map +1 -0
  484. package/dist/webhooks/http/webhooks.controller.js +243 -0
  485. package/dist/webhooks/http/webhooks.controller.js.map +1 -0
  486. package/dist/webhooks/index.d.ts +43 -0
  487. package/dist/webhooks/index.d.ts.map +1 -0
  488. package/dist/webhooks/index.js +147 -0
  489. package/dist/webhooks/index.js.map +1 -0
  490. package/dist/webhooks/listeners/webhook-event.listeners.d.ts +23 -0
  491. package/dist/webhooks/listeners/webhook-event.listeners.d.ts.map +1 -0
  492. package/dist/webhooks/listeners/webhook-event.listeners.js +120 -0
  493. package/dist/webhooks/listeners/webhook-event.listeners.js.map +1 -0
  494. package/dist/webhooks/notifications/webhook-notification.channel.d.ts +31 -0
  495. package/dist/webhooks/notifications/webhook-notification.channel.d.ts.map +1 -0
  496. package/dist/webhooks/notifications/webhook-notification.channel.js +127 -0
  497. package/dist/webhooks/notifications/webhook-notification.channel.js.map +1 -0
  498. package/dist/webhooks/notifications/webhook-notifications.d.ts +98 -0
  499. package/dist/webhooks/notifications/webhook-notifications.d.ts.map +1 -0
  500. package/dist/webhooks/notifications/webhook-notifications.js +150 -0
  501. package/dist/webhooks/notifications/webhook-notifications.js.map +1 -0
  502. package/dist/webhooks/ports.d.ts +29 -0
  503. package/dist/webhooks/ports.d.ts.map +1 -0
  504. package/dist/webhooks/ports.js +23 -0
  505. package/dist/webhooks/ports.js.map +1 -0
  506. package/dist/webhooks/registry/builtin-events.d.ts +57 -0
  507. package/dist/webhooks/registry/builtin-events.d.ts.map +1 -0
  508. package/dist/webhooks/registry/builtin-events.js +113 -0
  509. package/dist/webhooks/registry/builtin-events.js.map +1 -0
  510. package/dist/webhooks/registry/webhook-catalog.d.ts +63 -0
  511. package/dist/webhooks/registry/webhook-catalog.d.ts.map +1 -0
  512. package/dist/webhooks/registry/webhook-catalog.js +123 -0
  513. package/dist/webhooks/registry/webhook-catalog.js.map +1 -0
  514. package/dist/webhooks/registry/webhook-event.registry.d.ts +116 -0
  515. package/dist/webhooks/registry/webhook-event.registry.d.ts.map +1 -0
  516. package/dist/webhooks/registry/webhook-event.registry.js +152 -0
  517. package/dist/webhooks/registry/webhook-event.registry.js.map +1 -0
  518. package/dist/webhooks/signing.d.ts +31 -0
  519. package/dist/webhooks/signing.d.ts.map +1 -0
  520. package/dist/webhooks/signing.js +48 -0
  521. package/dist/webhooks/signing.js.map +1 -0
  522. package/dist/webhooks/tasks/webhook-purge.task.d.ts +17 -0
  523. package/dist/webhooks/tasks/webhook-purge.task.d.ts.map +1 -0
  524. package/dist/webhooks/tasks/webhook-purge.task.js +68 -0
  525. package/dist/webhooks/tasks/webhook-purge.task.js.map +1 -0
  526. package/dist/webhooks/testing/conformance.d.ts +61 -0
  527. package/dist/webhooks/testing/conformance.d.ts.map +1 -0
  528. package/dist/webhooks/testing/conformance.js +316 -0
  529. package/dist/webhooks/testing/conformance.js.map +1 -0
  530. package/dist/webhooks/testing/in-memory.d.ts +156 -0
  531. package/dist/webhooks/testing/in-memory.d.ts.map +1 -0
  532. package/dist/webhooks/testing/in-memory.js +323 -0
  533. package/dist/webhooks/testing/in-memory.js.map +1 -0
  534. package/dist/webhooks/testing/index.d.ts +7 -0
  535. package/dist/webhooks/testing/index.d.ts.map +1 -0
  536. package/dist/webhooks/testing/index.js +25 -0
  537. package/dist/webhooks/testing/index.js.map +1 -0
  538. package/dist/webhooks/testing/kit.d.ts +86 -0
  539. package/dist/webhooks/testing/kit.d.ts.map +1 -0
  540. package/dist/webhooks/testing/kit.js +113 -0
  541. package/dist/webhooks/testing/kit.js.map +1 -0
  542. package/dist/webhooks/webhook-endpoints.service.d.ts +142 -0
  543. package/dist/webhooks/webhook-endpoints.service.d.ts.map +1 -0
  544. package/dist/webhooks/webhook-endpoints.service.js +366 -0
  545. package/dist/webhooks/webhook-endpoints.service.js.map +1 -0
  546. package/dist/webhooks/webhook-envelope.d.ts +36 -0
  547. package/dist/webhooks/webhook-envelope.d.ts.map +1 -0
  548. package/dist/webhooks/webhook-envelope.js +46 -0
  549. package/dist/webhooks/webhook-envelope.js.map +1 -0
  550. package/dist/webhooks/webhook-secrets.service.d.ts +49 -0
  551. package/dist/webhooks/webhook-secrets.service.d.ts.map +1 -0
  552. package/dist/webhooks/webhook-secrets.service.js +118 -0
  553. package/dist/webhooks/webhook-secrets.service.js.map +1 -0
  554. package/dist/webhooks/webhook-views.d.ts +34 -0
  555. package/dist/webhooks/webhook-views.d.ts.map +1 -0
  556. package/dist/webhooks/webhook-views.js +83 -0
  557. package/dist/webhooks/webhook-views.js.map +1 -0
  558. package/dist/webhooks/webhooks.access.d.ts +28 -0
  559. package/dist/webhooks/webhooks.access.d.ts.map +1 -0
  560. package/dist/webhooks/webhooks.access.js +55 -0
  561. package/dist/webhooks/webhooks.access.js.map +1 -0
  562. package/dist/webhooks/webhooks.constants.d.ts +73 -0
  563. package/dist/webhooks/webhooks.constants.d.ts.map +1 -0
  564. package/dist/webhooks/webhooks.constants.js +100 -0
  565. package/dist/webhooks/webhooks.constants.js.map +1 -0
  566. package/dist/webhooks/webhooks.credentials.d.ts +28 -0
  567. package/dist/webhooks/webhooks.credentials.d.ts.map +1 -0
  568. package/dist/webhooks/webhooks.credentials.js +51 -0
  569. package/dist/webhooks/webhooks.credentials.js.map +1 -0
  570. package/dist/webhooks/webhooks.errors.d.ts +25 -0
  571. package/dist/webhooks/webhooks.errors.d.ts.map +1 -0
  572. package/dist/webhooks/webhooks.errors.js +65 -0
  573. package/dist/webhooks/webhooks.errors.js.map +1 -0
  574. package/dist/webhooks/webhooks.metrics.d.ts +24 -0
  575. package/dist/webhooks/webhooks.metrics.d.ts.map +1 -0
  576. package/dist/webhooks/webhooks.metrics.js +70 -0
  577. package/dist/webhooks/webhooks.metrics.js.map +1 -0
  578. package/dist/webhooks/webhooks.module.d.ts +29 -0
  579. package/dist/webhooks/webhooks.module.d.ts.map +1 -0
  580. package/dist/webhooks/webhooks.module.js +108 -0
  581. package/dist/webhooks/webhooks.module.js.map +1 -0
  582. package/dist/webhooks/webhooks.options.d.ts +119 -0
  583. package/dist/webhooks/webhooks.options.d.ts.map +1 -0
  584. package/dist/webhooks/webhooks.options.js +80 -0
  585. package/dist/webhooks/webhooks.options.js.map +1 -0
  586. package/dist/webhooks/webhooks.permissions.d.ts +47 -0
  587. package/dist/webhooks/webhooks.permissions.d.ts.map +1 -0
  588. package/dist/webhooks/webhooks.permissions.js +83 -0
  589. package/dist/webhooks/webhooks.permissions.js.map +1 -0
  590. package/dist/webhooks/webhooks.repository.d.ts +162 -0
  591. package/dist/webhooks/webhooks.repository.d.ts.map +1 -0
  592. package/dist/webhooks/webhooks.repository.js +246 -0
  593. package/dist/webhooks/webhooks.repository.js.map +1 -0
  594. package/dist/webhooks/webhooks.service.d.ts +91 -0
  595. package/dist/webhooks/webhooks.service.d.ts.map +1 -0
  596. package/dist/webhooks/webhooks.service.js +216 -0
  597. package/dist/webhooks/webhooks.service.js.map +1 -0
  598. package/package.json +19 -3
@@ -0,0 +1,53 @@
1
+ /**
2
+ * The job type of the periodic evaluation. PERMANENT once jobs of it exist.
3
+ *
4
+ * @stability experimental
5
+ */
6
+ export declare const ALERTS_EVALUATE_TYPE = "alerts.evaluate";
7
+ /**
8
+ * The job type of the event-driven evaluation (one node event). PERMANENT.
9
+ *
10
+ * @stability experimental
11
+ */
12
+ export declare const ALERTS_EVALUATE_EVENT_TYPE = "alerts.evaluate_event";
13
+ /**
14
+ * The job type of the resolved-incident purge. PERMANENT.
15
+ *
16
+ * @stability experimental
17
+ */
18
+ export declare const ALERTS_INCIDENTS_PURGE_TYPE = "alerts.incidents_purge";
19
+ /**
20
+ * The notification event raised when an alert fires. PERMANENT: preferences
21
+ * and delivery rows name it.
22
+ *
23
+ * @stability experimental
24
+ */
25
+ export declare const ALERT_FIRED_NOTIFICATION = "alerts.alert_fired";
26
+ /**
27
+ * The notification event raised when an alert resolves. PERMANENT.
28
+ *
29
+ * @stability experimental
30
+ */
31
+ export declare const ALERT_RESOLVED_NOTIFICATION = "alerts.alert_resolved";
32
+ /**
33
+ * Injection token of the OPTIONAL webhook emitter port ({@link AlertsWebhookEmitter}).
34
+ * The webhooks slice, or the app, binds it; the alerts slice compiles and runs
35
+ * without it.
36
+ *
37
+ * @extensionPoint token
38
+ * @stability experimental
39
+ */
40
+ export declare const ALERTS_WEBHOOK_EMITTER: unique symbol;
41
+ /**
42
+ * Injection token of the resolved module options.
43
+ *
44
+ * @stability experimental
45
+ */
46
+ export declare const ALERTS_OPTIONS: unique symbol;
47
+ /**
48
+ * Name of the raw-SQL partial unique index: one open incident per rule and label set.
49
+ *
50
+ * @stability experimental
51
+ */
52
+ export declare const ALERT_OPEN_INCIDENT_INDEX = "alert_incidents_open_uniq_idx";
53
+ //# sourceMappingURL=alerts.constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alerts.constants.d.ts","sourceRoot":"","sources":["../../src/alerts/alerts.constants.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAEtD;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,0BAA0B,CAAC;AAElE;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,2BAA2B,CAAC;AAEpE;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,uBAAuB,CAAC;AAE7D;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,0BAA0B,CAAC;AAEnE;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,EAAE,OAAO,MAAkE,CAAC;AAE/G;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAE,OAAO,MAA0D,CAAC;AAE/F;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,kCAAkC,CAAC"}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ // The alerts slice's permanent strings and injection tokens.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.ALERT_OPEN_INCIDENT_INDEX = exports.ALERTS_OPTIONS = exports.ALERTS_WEBHOOK_EMITTER = exports.ALERT_RESOLVED_NOTIFICATION = exports.ALERT_FIRED_NOTIFICATION = exports.ALERTS_INCIDENTS_PURGE_TYPE = exports.ALERTS_EVALUATE_EVENT_TYPE = exports.ALERTS_EVALUATE_TYPE = void 0;
5
+ /**
6
+ * The job type of the periodic evaluation. PERMANENT once jobs of it exist.
7
+ *
8
+ * @stability experimental
9
+ */
10
+ exports.ALERTS_EVALUATE_TYPE = 'alerts.evaluate';
11
+ /**
12
+ * The job type of the event-driven evaluation (one node event). PERMANENT.
13
+ *
14
+ * @stability experimental
15
+ */
16
+ exports.ALERTS_EVALUATE_EVENT_TYPE = 'alerts.evaluate_event';
17
+ /**
18
+ * The job type of the resolved-incident purge. PERMANENT.
19
+ *
20
+ * @stability experimental
21
+ */
22
+ exports.ALERTS_INCIDENTS_PURGE_TYPE = 'alerts.incidents_purge';
23
+ /**
24
+ * The notification event raised when an alert fires. PERMANENT: preferences
25
+ * and delivery rows name it.
26
+ *
27
+ * @stability experimental
28
+ */
29
+ exports.ALERT_FIRED_NOTIFICATION = 'alerts.alert_fired';
30
+ /**
31
+ * The notification event raised when an alert resolves. PERMANENT.
32
+ *
33
+ * @stability experimental
34
+ */
35
+ exports.ALERT_RESOLVED_NOTIFICATION = 'alerts.alert_resolved';
36
+ /**
37
+ * Injection token of the OPTIONAL webhook emitter port ({@link AlertsWebhookEmitter}).
38
+ * The webhooks slice, or the app, binds it; the alerts slice compiles and runs
39
+ * without it.
40
+ *
41
+ * @extensionPoint token
42
+ * @stability experimental
43
+ */
44
+ exports.ALERTS_WEBHOOK_EMITTER = Symbol.for('@marinoscar/platform/alerts/WEBHOOK_EMITTER');
45
+ /**
46
+ * Injection token of the resolved module options.
47
+ *
48
+ * @stability experimental
49
+ */
50
+ exports.ALERTS_OPTIONS = Symbol.for('@marinoscar/platform/alerts/OPTIONS');
51
+ /**
52
+ * Name of the raw-SQL partial unique index: one open incident per rule and label set.
53
+ *
54
+ * @stability experimental
55
+ */
56
+ exports.ALERT_OPEN_INCIDENT_INDEX = 'alert_incidents_open_uniq_idx';
57
+ //# sourceMappingURL=alerts.constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alerts.constants.js","sourceRoot":"","sources":["../../src/alerts/alerts.constants.ts"],"names":[],"mappings":";AAAA,6DAA6D;;;AAE7D;;;;GAIG;AACU,QAAA,oBAAoB,GAAG,iBAAiB,CAAC;AAEtD;;;;GAIG;AACU,QAAA,0BAA0B,GAAG,uBAAuB,CAAC;AAElE;;;;GAIG;AACU,QAAA,2BAA2B,GAAG,wBAAwB,CAAC;AAEpE;;;;;GAKG;AACU,QAAA,wBAAwB,GAAG,oBAAoB,CAAC;AAE7D;;;;GAIG;AACU,QAAA,2BAA2B,GAAG,uBAAuB,CAAC;AAEnE;;;;;;;GAOG;AACU,QAAA,sBAAsB,GAAkB,MAAM,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;AAE/G;;;;GAIG;AACU,QAAA,cAAc,GAAkB,MAAM,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;AAE/F;;;;GAIG;AACU,QAAA,yBAAyB,GAAG,+BAA+B,CAAC"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * The telemetry store cannot be queried right now (not configured, disabled,
3
+ * unreachable, timed out). A kind throws it; the evaluator records it on the
4
+ * rule (`lastError`) and leaves the rule's incidents untouched, so a store
5
+ * outage never resolves, flaps or fires anything by itself.
6
+ *
7
+ * @stability experimental
8
+ */
9
+ export declare class AlertStoreUnavailableError extends Error {
10
+ readonly cause?: unknown | undefined;
11
+ /**
12
+ * @param message - why the store could not be used.
13
+ * @param cause - the underlying error, if any.
14
+ */
15
+ constructor(message: string, cause?: unknown | undefined);
16
+ }
17
+ /**
18
+ * One schema issue of a refused config.
19
+ *
20
+ * @stability experimental
21
+ */
22
+ export interface AlertConfigIssue {
23
+ /** Dotted path of the offending value. */
24
+ path: string;
25
+ /** What is wrong with it. */
26
+ message: string;
27
+ }
28
+ /**
29
+ * A rule's config does not match its kind's schema (on write), or a kind id
30
+ * nobody registered.
31
+ *
32
+ * @stability experimental
33
+ */
34
+ export declare class AlertConfigError extends Error {
35
+ readonly code: string;
36
+ readonly issues?: ReadonlyArray<AlertConfigIssue> | undefined;
37
+ /**
38
+ * @param code - an `ALERT_ERROR_CODES` value.
39
+ * @param message - what is wrong.
40
+ * @param issues - the schema issues, when the config failed validation.
41
+ */
42
+ constructor(code: string, message: string, issues?: ReadonlyArray<AlertConfigIssue> | undefined);
43
+ }
44
+ //# sourceMappingURL=alerts.errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alerts.errors.d.ts","sourceRoot":"","sources":["../../src/alerts/alerts.errors.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,qBAAa,0BAA2B,SAAQ,KAAK;IAKtB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO;IAJrD;;;OAGG;gBACS,OAAO,EAAE,MAAM,EAAW,KAAK,CAAC,EAAE,OAAO,YAAA;CAItD;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;IAM7B,QAAQ,CAAC,IAAI,EAAE,MAAM;IAAmB,QAAQ,CAAC,MAAM,CAAC,EAAE,aAAa,CAAC,gBAAgB,CAAC;IALrG;;;;OAIG;gBACkB,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAW,MAAM,CAAC,EAAE,aAAa,CAAC,gBAAgB,CAAC,YAAA;CAItG"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AlertConfigError = exports.AlertStoreUnavailableError = void 0;
4
+ /**
5
+ * The telemetry store cannot be queried right now (not configured, disabled,
6
+ * unreachable, timed out). A kind throws it; the evaluator records it on the
7
+ * rule (`lastError`) and leaves the rule's incidents untouched, so a store
8
+ * outage never resolves, flaps or fires anything by itself.
9
+ *
10
+ * @stability experimental
11
+ */
12
+ class AlertStoreUnavailableError extends Error {
13
+ cause;
14
+ /**
15
+ * @param message - why the store could not be used.
16
+ * @param cause - the underlying error, if any.
17
+ */
18
+ constructor(message, cause) {
19
+ super(message);
20
+ this.cause = cause;
21
+ this.name = 'AlertStoreUnavailableError';
22
+ }
23
+ }
24
+ exports.AlertStoreUnavailableError = AlertStoreUnavailableError;
25
+ /**
26
+ * A rule's config does not match its kind's schema (on write), or a kind id
27
+ * nobody registered.
28
+ *
29
+ * @stability experimental
30
+ */
31
+ class AlertConfigError extends Error {
32
+ code;
33
+ issues;
34
+ /**
35
+ * @param code - an `ALERT_ERROR_CODES` value.
36
+ * @param message - what is wrong.
37
+ * @param issues - the schema issues, when the config failed validation.
38
+ */
39
+ constructor(code, message, issues) {
40
+ super(message);
41
+ this.code = code;
42
+ this.issues = issues;
43
+ this.name = 'AlertConfigError';
44
+ }
45
+ }
46
+ exports.AlertConfigError = AlertConfigError;
47
+ //# sourceMappingURL=alerts.errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alerts.errors.js","sourceRoot":"","sources":["../../src/alerts/alerts.errors.ts"],"names":[],"mappings":";;;AAAA;;;;;;;GAOG;AACH,MAAa,0BAA2B,SAAQ,KAAK;IAKb;IAJtC;;;OAGG;IACH,YAAY,OAAe,EAAW,KAAe;QACnD,KAAK,CAAC,OAAO,CAAC,CAAC;QADqB,UAAK,GAAL,KAAK,CAAU;QAEnD,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAC;IAC3C,CAAC;CACF;AATD,gEASC;AAcD;;;;;GAKG;AACH,MAAa,gBAAiB,SAAQ,KAAK;IAMpB;IAAwC;IAL7D;;;;OAIG;IACH,YAAqB,IAAY,EAAE,OAAe,EAAW,MAAwC;QACnG,KAAK,CAAC,OAAO,CAAC,CAAC;QADI,SAAI,GAAJ,IAAI,CAAQ;QAA4B,WAAM,GAAN,MAAM,CAAkC;QAEnG,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IACjC,CAAC;CACF;AAVD,4CAUC"}
@@ -0,0 +1,60 @@
1
+ import { OnModuleInit } from '@nestjs/common';
2
+ import type { BatchObservableResult, ObservableGauge } from '@opentelemetry/api';
3
+ import { MetricsHostService, type AppGaugeContext, type AppMetricDef } from '../otel-core/index';
4
+ import type { AlertsPrisma } from './data/alerts-db';
5
+ /**
6
+ * One alerts metric's declaration, its `key` a literal.
7
+ *
8
+ * @typeParam Key - the metric's code key.
9
+ * @stability experimental
10
+ */
11
+ export interface AlertsAppMetricDef<Key extends string> extends AppMetricDef {
12
+ /** The metric's code key. */
13
+ readonly key: Key;
14
+ }
15
+ /**
16
+ * The alerts metrics: the `app.alerts.transitions` counter (`to` = `fired` or
17
+ * `resolved`, and the severity) and the `app.alerts.firing` gauge (incidents
18
+ * firing now, by severity). Neither carries a rule or label value.
19
+ * Register with `registerAppMetrics(ALERTS_APP_METRICS)` before the metrics
20
+ * host is built.
21
+ *
22
+ * @example
23
+ * ```ts
24
+ * registerAppMetrics([...PLATFORM_APP_METRICS, ...ALERTS_APP_METRICS]);
25
+ * ```
26
+ *
27
+ * @stability experimental
28
+ */
29
+ export declare const ALERTS_APP_METRICS: readonly [AlertsAppMetricDef<'alertsTransitions'>, AlertsAppMetricDef<'alertsFiring'>];
30
+ /** How long one firing count is reused across collections. */
31
+ export declare const ALERTS_GAUGE_CACHE_TTL_MS = 30000;
32
+ /**
33
+ * Records the transition counter and observes the firing gauge. Never throws:
34
+ * a metrics failure must not fail an evaluation.
35
+ *
36
+ * @stability experimental
37
+ */
38
+ export declare class AlertsMetrics implements OnModuleInit {
39
+ private readonly prisma;
40
+ private readonly logger;
41
+ private readonly metrics;
42
+ private registered;
43
+ private cache;
44
+ constructor(prisma: AlertsPrisma, metrics?: MetricsHostService);
45
+ /** Registers the firing gauge. */
46
+ onModuleInit(): void;
47
+ /**
48
+ * Counts one transition.
49
+ *
50
+ * @param to - `fired` or `resolved`.
51
+ * @param level - the incident's severity.
52
+ */
53
+ transition(to: 'fired' | 'resolved', level: string): void;
54
+ /** Registers the gauge once, only when gauges are on for this process. */
55
+ registerGauge(): void;
56
+ /** The batch callback. Never throws. */
57
+ observe(result: BatchObservableResult, gauge: ObservableGauge, context: AppGaugeContext): Promise<void>;
58
+ private counts;
59
+ }
60
+ //# sourceMappingURL=alerts.metrics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alerts.metrics.d.ts","sourceRoot":"","sources":["../../src/alerts/alerts.metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAA8B,YAAY,EAAY,MAAM,gBAAgB,CAAC;AACpF,OAAO,KAAK,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAIjF,OAAO,EACL,kBAAkB,EAElB,KAAK,eAAe,EACpB,KAAK,YAAY,EAElB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAIrD;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB,CAAC,GAAG,SAAS,MAAM,CAAE,SAAQ,YAAY;IAC1E,6BAA6B;IAC7B,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;CACnB;AAED;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,kBAAkB,EAAE,SAAS,CAAC,kBAAkB,CAAC,mBAAmB,CAAC,EAAE,kBAAkB,CAAC,cAAc,CAAC,CAiBrH,CAAC;AAEF,8DAA8D;AAC9D,eAAO,MAAM,yBAAyB,QAAS,CAAC;AAEhD;;;;;GAKG;AACH,qBACa,aAAc,YAAW,YAAY;IAOrB,OAAO,CAAC,QAAQ,CAAC,MAAM;IANlD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAkC;IACzD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,KAAK,CAAqE;gBAGtC,MAAM,EAAE,YAAY,EAClD,OAAO,CAAC,EAAE,kBAAkB;IAK1C,kCAAkC;IAClC,YAAY,IAAI,IAAI;IAIpB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,EAAE,OAAO,GAAG,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAQzD,0EAA0E;IAC1E,aAAa,IAAI,IAAI;IAarB,wCAAwC;IAClC,OAAO,CAAC,MAAM,EAAE,qBAAqB,EAAE,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;YAU/F,MAAM;CASrB"}
@@ -0,0 +1,135 @@
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 __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ var AlertsMetrics_1;
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.AlertsMetrics = exports.ALERTS_GAUGE_CACHE_TTL_MS = exports.ALERTS_APP_METRICS = void 0;
17
+ const common_1 = require("@nestjs/common");
18
+ const alerts_1 = require("@marinoscar/platform-contract/alerts");
19
+ const index_1 = require("../core/index");
20
+ const index_2 = require("../otel-core/index");
21
+ const severity = { kind: 'enum', values: [...alerts_1.ALERT_SEVERITIES] };
22
+ /**
23
+ * The alerts metrics: the `app.alerts.transitions` counter (`to` = `fired` or
24
+ * `resolved`, and the severity) and the `app.alerts.firing` gauge (incidents
25
+ * firing now, by severity). Neither carries a rule or label value.
26
+ * Register with `registerAppMetrics(ALERTS_APP_METRICS)` before the metrics
27
+ * host is built.
28
+ *
29
+ * @example
30
+ * ```ts
31
+ * registerAppMetrics([...PLATFORM_APP_METRICS, ...ALERTS_APP_METRICS]);
32
+ * ```
33
+ *
34
+ * @stability experimental
35
+ */
36
+ exports.ALERTS_APP_METRICS = [
37
+ {
38
+ key: 'alertsTransitions',
39
+ name: 'app.alerts.transitions',
40
+ kind: 'counter',
41
+ unit: '{transition}',
42
+ description: 'Alert incidents that fired or resolved, by direction and severity.',
43
+ attributes: { to: { kind: 'enum', values: ['fired', 'resolved'] }, severity },
44
+ },
45
+ {
46
+ key: 'alertsFiring',
47
+ name: 'app.alerts.firing',
48
+ kind: 'gauge',
49
+ unit: '{incident}',
50
+ description: 'Alert incidents firing now, by severity.',
51
+ attributes: { severity },
52
+ },
53
+ ];
54
+ /** How long one firing count is reused across collections. */
55
+ exports.ALERTS_GAUGE_CACHE_TTL_MS = 30_000;
56
+ /**
57
+ * Records the transition counter and observes the firing gauge. Never throws:
58
+ * a metrics failure must not fail an evaluation.
59
+ *
60
+ * @stability experimental
61
+ */
62
+ let AlertsMetrics = AlertsMetrics_1 = class AlertsMetrics {
63
+ prisma;
64
+ logger = new common_1.Logger(AlertsMetrics_1.name);
65
+ metrics;
66
+ registered = false;
67
+ cache = null;
68
+ constructor(prisma, metrics) {
69
+ this.prisma = prisma;
70
+ this.metrics = metrics ?? new index_2.MetricsHostService();
71
+ }
72
+ /** Registers the firing gauge. */
73
+ onModuleInit() {
74
+ this.registerGauge();
75
+ }
76
+ /**
77
+ * Counts one transition.
78
+ *
79
+ * @param to - `fired` or `resolved`.
80
+ * @param level - the incident's severity.
81
+ */
82
+ transition(to, level) {
83
+ try {
84
+ this.metrics.add('alertsTransitions', 1, { to, severity: level });
85
+ }
86
+ catch (error) {
87
+ this.logger.debug(`Could not count an alert transition: ${error instanceof Error ? error.message : String(error)}`);
88
+ }
89
+ }
90
+ /** Registers the gauge once, only when gauges are on for this process. */
91
+ registerGauge() {
92
+ if (this.registered)
93
+ return;
94
+ try {
95
+ const context = this.metrics.gaugeContext();
96
+ if (!context)
97
+ return;
98
+ const gauge = (0, index_2.createRegisteredGauge)(context.meter, 'alertsFiring');
99
+ context.meter.addBatchObservableCallback((result) => this.observe(result, gauge, context), [gauge]);
100
+ this.registered = true;
101
+ }
102
+ catch (error) {
103
+ this.logger.debug(`Could not register the alerts gauge: ${error instanceof Error ? error.message : String(error)}`);
104
+ }
105
+ }
106
+ /** The batch callback. Never throws. */
107
+ async observe(result, gauge, context) {
108
+ try {
109
+ if (!context.gateOpen())
110
+ return;
111
+ const counts = await this.counts(context.now());
112
+ for (const level of alerts_1.ALERT_SEVERITIES)
113
+ result.observe(gauge, counts[level], { severity: level });
114
+ }
115
+ catch (error) {
116
+ this.logger.debug(`Alerts gauge callback skipped: ${error instanceof Error ? error.message : String(error)}`);
117
+ }
118
+ }
119
+ async counts(nowMs) {
120
+ if (this.cache && nowMs - this.cache.at < exports.ALERTS_GAUGE_CACHE_TTL_MS)
121
+ return this.cache.value;
122
+ const entries = await Promise.all(alerts_1.ALERT_SEVERITIES.map(async (level) => [level, await this.prisma.alertIncident.count({ where: { state: 'firing', severity: level } })]));
123
+ const value = Object.fromEntries(entries);
124
+ this.cache = { at: nowMs, value };
125
+ return value;
126
+ }
127
+ };
128
+ exports.AlertsMetrics = AlertsMetrics;
129
+ exports.AlertsMetrics = AlertsMetrics = AlertsMetrics_1 = __decorate([
130
+ (0, common_1.Injectable)(),
131
+ __param(0, (0, common_1.Inject)(index_1.PLATFORM_PRISMA)),
132
+ __param(1, (0, common_1.Optional)()),
133
+ __metadata("design:paramtypes", [Object, index_2.MetricsHostService])
134
+ ], AlertsMetrics);
135
+ //# sourceMappingURL=alerts.metrics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alerts.metrics.js","sourceRoot":"","sources":["../../src/alerts/alerts.metrics.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ import { type DynamicModule } from '@nestjs/common';
2
+ import { type AlertsModuleOptions } from './alerts.options';
3
+ /**
4
+ * The alerts slice: rules over telemetry metrics, worker-node events and
5
+ * fleet health; incidents with a pending/firing/resolved state machine;
6
+ * notifications and optional webhooks on a transition; the admin routes under
7
+ * `/api/admin/alerts`.
8
+ *
9
+ * @stability experimental
10
+ */
11
+ export declare class AlertsModule {
12
+ /**
13
+ * The slice for one app. Requires the core `PlatformHostModule`
14
+ * (`PLATFORM_PRISMA`), the global settings and notifications modules, the
15
+ * jobs module (for `JobsService` and the handler registry), the composed
16
+ * `alerts` fragment, and `registerAlertsEmailTemplates()` plus
17
+ * `registerNotifications(ALERTS_NOTIFICATIONS)` in the app's notification
18
+ * manifest. Pass the configured telemetry module in `imports` to enable the
19
+ * metric and verdict kinds; without it they report the store unavailable.
20
+ *
21
+ * @param options - see {@link AlertsModuleOptions}.
22
+ * @returns the dynamic module. It exports the rules, incidents and evaluation services.
23
+ * @throws Error when an option is out of range.
24
+ *
25
+ * @example
26
+ * ```ts
27
+ * export const alertsModule = AlertsModule.forRoot({ imports: [TelemetryModule] });
28
+ * ```
29
+ *
30
+ * @extensionPoint option
31
+ * @stability experimental
32
+ */
33
+ static forRoot(options?: AlertsModuleOptions): DynamicModule;
34
+ }
35
+ //# sourceMappingURL=alerts.module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alerts.module.d.ts","sourceRoot":"","sources":["../../src/alerts/alerts.module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,KAAK,aAAa,EAA4B,MAAM,gBAAgB,CAAC;AAatF,OAAO,EAA8B,KAAK,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAQxF;;;;;;;GAOG;AACH,qBACa,YAAY;IACvB;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,MAAM,CAAC,OAAO,CAAC,OAAO,GAAE,mBAAwB,GAAG,aAAa;CA+BjE"}
@@ -0,0 +1,96 @@
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 AlertsModule_1;
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.AlertsModule = void 0;
11
+ const common_1 = require("@nestjs/common");
12
+ const index_1 = require("../nodes/index");
13
+ const alerts_context_service_1 = require("./alerts-context.service");
14
+ const alerts_admin_controller_1 = require("./alerts-admin.controller");
15
+ const alerts_dispatch_service_1 = require("./alerts-dispatch.service");
16
+ const alerts_evaluation_service_1 = require("./alerts-evaluation.service");
17
+ const alerts_event_listener_1 = require("./alerts-event.listener");
18
+ const alerts_incidents_service_1 = require("./alerts-incidents.service");
19
+ const alerts_rules_service_1 = require("./alerts-rules.service");
20
+ const alerts_seed_service_1 = require("./alerts-seed.service");
21
+ const alerts_constants_1 = require("./alerts.constants");
22
+ const alerts_metrics_1 = require("./alerts.metrics");
23
+ const alerts_options_1 = require("./alerts.options");
24
+ const alerts_evaluate_event_handler_1 = require("./handlers/alerts-evaluate-event.handler");
25
+ const alerts_evaluate_handler_1 = require("./handlers/alerts-evaluate.handler");
26
+ const alerts_incidents_purge_handler_1 = require("./handlers/alerts-incidents-purge.handler");
27
+ const builtin_kinds_1 = require("./kinds/builtin-kinds");
28
+ const alerts_evaluate_task_1 = require("./tasks/alerts-evaluate.task");
29
+ const alerts_purge_task_1 = require("./tasks/alerts-purge.task");
30
+ /**
31
+ * The alerts slice: rules over telemetry metrics, worker-node events and
32
+ * fleet health; incidents with a pending/firing/resolved state machine;
33
+ * notifications and optional webhooks on a transition; the admin routes under
34
+ * `/api/admin/alerts`.
35
+ *
36
+ * @stability experimental
37
+ */
38
+ let AlertsModule = AlertsModule_1 = class AlertsModule {
39
+ /**
40
+ * The slice for one app. Requires the core `PlatformHostModule`
41
+ * (`PLATFORM_PRISMA`), the global settings and notifications modules, the
42
+ * jobs module (for `JobsService` and the handler registry), the composed
43
+ * `alerts` fragment, and `registerAlertsEmailTemplates()` plus
44
+ * `registerNotifications(ALERTS_NOTIFICATIONS)` in the app's notification
45
+ * manifest. Pass the configured telemetry module in `imports` to enable the
46
+ * metric and verdict kinds; without it they report the store unavailable.
47
+ *
48
+ * @param options - see {@link AlertsModuleOptions}.
49
+ * @returns the dynamic module. It exports the rules, incidents and evaluation services.
50
+ * @throws Error when an option is out of range.
51
+ *
52
+ * @example
53
+ * ```ts
54
+ * export const alertsModule = AlertsModule.forRoot({ imports: [TelemetryModule] });
55
+ * ```
56
+ *
57
+ * @extensionPoint option
58
+ * @stability experimental
59
+ */
60
+ static forRoot(options = {}) {
61
+ const resolved = (0, alerts_options_1.resolveAlertsModuleOptions)(options);
62
+ (0, builtin_kinds_1.registerBuiltinAlertKinds)();
63
+ const tasks = [
64
+ ...(resolved.evaluateTask ? [alerts_evaluate_task_1.AlertsEvaluateTask] : []),
65
+ ...(resolved.purgeTask ? [alerts_purge_task_1.AlertsPurgeTask] : []),
66
+ ];
67
+ const providers = [
68
+ { provide: alerts_constants_1.ALERTS_OPTIONS, useValue: resolved },
69
+ index_1.NodeLifecycleService,
70
+ alerts_metrics_1.AlertsMetrics,
71
+ alerts_context_service_1.AlertContextService,
72
+ alerts_dispatch_service_1.AlertsDispatchService,
73
+ alerts_evaluation_service_1.AlertsEvaluationService,
74
+ alerts_rules_service_1.AlertsRulesService,
75
+ alerts_incidents_service_1.AlertsIncidentsService,
76
+ alerts_seed_service_1.AlertsSeedService,
77
+ alerts_event_listener_1.AlertsEventListener,
78
+ alerts_evaluate_handler_1.AlertsEvaluateHandler,
79
+ alerts_evaluate_event_handler_1.AlertsEvaluateEventHandler,
80
+ alerts_incidents_purge_handler_1.AlertsIncidentsPurgeHandler,
81
+ ...tasks,
82
+ ];
83
+ return {
84
+ module: AlertsModule_1,
85
+ imports: [...resolved.imports],
86
+ controllers: [alerts_admin_controller_1.AlertsAdminController],
87
+ providers,
88
+ exports: [alerts_constants_1.ALERTS_OPTIONS, alerts_rules_service_1.AlertsRulesService, alerts_incidents_service_1.AlertsIncidentsService, alerts_evaluation_service_1.AlertsEvaluationService, alerts_metrics_1.AlertsMetrics],
89
+ };
90
+ }
91
+ };
92
+ exports.AlertsModule = AlertsModule;
93
+ exports.AlertsModule = AlertsModule = AlertsModule_1 = __decorate([
94
+ (0, common_1.Module)({})
95
+ ], AlertsModule);
96
+ //# sourceMappingURL=alerts.module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alerts.module.js","sourceRoot":"","sources":["../../src/alerts/alerts.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAsF;AAEtF,0CAAsD;AACtD,qEAA+D;AAC/D,uEAAkE;AAClE,uEAAkE;AAClE,2EAAsE;AACtE,mEAA8D;AAC9D,yEAAoE;AACpE,iEAA4D;AAC5D,+DAA0D;AAC1D,yDAAoD;AACpD,qDAAiD;AACjD,qDAAwF;AACxF,4FAAsF;AACtF,gFAA2E;AAC3E,8FAAwF;AACxF,yDAAkE;AAClE,uEAAkE;AAClE,iEAA4D;AAE5D;;;;;;;GAOG;AAEI,IAAM,YAAY,oBAAlB,MAAM,YAAY;IACvB;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,MAAM,CAAC,OAAO,CAAC,UAA+B,EAAE;QAC9C,MAAM,QAAQ,GAAG,IAAA,2CAA0B,EAAC,OAAO,CAAC,CAAC;QACrD,IAAA,yCAAyB,GAAE,CAAC;QAC5B,MAAM,KAAK,GAAoB;YAC7B,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,yCAAkB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACtD,GAAG,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,mCAAe,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SACjD,CAAC;QACF,MAAM,SAAS,GAAe;YAC5B,EAAE,OAAO,EAAE,iCAAc,EAAE,QAAQ,EAAE,QAAQ,EAAE;YAC/C,4BAAoB;YACpB,8BAAa;YACb,4CAAmB;YACnB,+CAAqB;YACrB,mDAAuB;YACvB,yCAAkB;YAClB,iDAAsB;YACtB,uCAAiB;YACjB,2CAAmB;YACnB,+CAAqB;YACrB,0DAA0B;YAC1B,4DAA2B;YAC3B,GAAG,KAAK;SACT,CAAC;QACF,OAAO;YACL,MAAM,EAAE,cAAY;YACpB,OAAO,EAAE,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC;YAC9B,WAAW,EAAE,CAAC,+CAAqB,CAAC;YACpC,SAAS;YACT,OAAO,EAAE,CAAC,iCAAc,EAAE,yCAAkB,EAAE,iDAAsB,EAAE,mDAAuB,EAAE,8BAAa,CAAC;SAC9G,CAAC;IACJ,CAAC;CACF,CAAA;AArDY,oCAAY;uBAAZ,YAAY;IADxB,IAAA,eAAM,EAAC,EAAE,CAAC;GACE,YAAY,CAqDxB"}
@@ -0,0 +1,64 @@
1
+ import type { DynamicModule, ForwardReference, Type } from '@nestjs/common';
2
+ import { ALERTS_OPTIONS } from './alerts.constants';
3
+ export { ALERTS_OPTIONS };
4
+ /**
5
+ * A module the slice needs from the app: the configured telemetry module
6
+ * (`TelemetryQueryService`, `TELEMETRY_SQL_DIALECT`, `TelemetrySchemaService`,
7
+ * `TelemetryDashboardService`), when the app has one.
8
+ *
9
+ * @stability experimental
10
+ */
11
+ export type AlertsImport = Type<unknown> | DynamicModule | Promise<DynamicModule> | ForwardReference;
12
+ /**
13
+ * `AlertsModule.forRoot` options.
14
+ *
15
+ * @extensionPoint option
16
+ * @stability experimental
17
+ */
18
+ export interface AlertsModuleOptions {
19
+ /** Which crons this process runs. Each defaults to on. */
20
+ tasks?: {
21
+ /** The every-minute evaluation (`alerts.evaluate`). */
22
+ evaluate?: boolean;
23
+ /** The daily purge of resolved incidents (`alerts.incidents_purge`). */
24
+ purge?: boolean;
25
+ };
26
+ /** Days a RESOLVED incident is kept (whole days, 1 to 3650). Default 90. */
27
+ incidentRetentionDays?: number;
28
+ /** Milliseconds one rule may take to evaluate before it is abandoned (1 000 to 110 000). Default 20 000. */
29
+ evaluationBudgetMs?: number;
30
+ /** Seed the disabled starter rules at start. Default `true`. */
31
+ seedStarterRules?: boolean;
32
+ /** Modules to import: normally the app's configured telemetry module. */
33
+ imports?: AlertsImport[];
34
+ }
35
+ /**
36
+ * The options after defaults and validation.
37
+ *
38
+ * @stability experimental
39
+ */
40
+ export interface ResolvedAlertsModuleOptions {
41
+ /** Whether the evaluation cron runs here. */
42
+ readonly evaluateTask: boolean;
43
+ /** Whether the purge cron runs here. */
44
+ readonly purgeTask: boolean;
45
+ /** Retention of resolved incidents, in days. */
46
+ readonly incidentRetentionDays: number;
47
+ /** Per-rule evaluation budget, in milliseconds. */
48
+ readonly evaluationBudgetMs: number;
49
+ /** Whether the starter rules are seeded. */
50
+ readonly seedStarterRules: boolean;
51
+ /** The imports. */
52
+ readonly imports: readonly AlertsImport[];
53
+ }
54
+ /**
55
+ * Applies the defaults and validates.
56
+ *
57
+ * @param options - the app's options.
58
+ * @returns the resolved, frozen options.
59
+ * @throws Error naming the option when one is out of range.
60
+ *
61
+ * @stability experimental
62
+ */
63
+ export declare function resolveAlertsModuleOptions(options?: AlertsModuleOptions): ResolvedAlertsModuleOptions;
64
+ //# sourceMappingURL=alerts.options.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"alerts.options.d.ts","sourceRoot":"","sources":["../../src/alerts/alerts.options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AAE5E,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD,OAAO,EAAE,cAAc,EAAE,CAAC;AAE1B;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC,GAAG,gBAAgB,CAAC;AAErG;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC,0DAA0D;IAC1D,KAAK,CAAC,EAAE;QACN,uDAAuD;QACvD,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,wEAAwE;QACxE,KAAK,CAAC,EAAE,OAAO,CAAC;KACjB,CAAC;IACF,4EAA4E;IAC5E,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,4GAA4G;IAC5G,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,gEAAgE;IAChE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,yEAAyE;IACzE,OAAO,CAAC,EAAE,YAAY,EAAE,CAAC;CAC1B;AAED;;;;GAIG;AACH,MAAM,WAAW,2BAA2B;IAC1C,6CAA6C;IAC7C,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,wCAAwC;IACxC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,gDAAgD;IAChD,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACvC,mDAAmD;IACnD,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,4CAA4C;IAC5C,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACnC,mBAAmB;IACnB,QAAQ,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,CAAC;CAC3C;AAED;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,GAAE,mBAAwB,GAAG,2BAA2B,CAiBzG"}