@oneuptime/common 12.0.32 → 12.0.33

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 (597) hide show
  1. package/Models/AnalyticsModels/Span.ts +14 -0
  2. package/Models/DatabaseModels/EnterpriseLicense.ts +56 -0
  3. package/Models/DatabaseModels/Index.ts +10 -0
  4. package/Models/DatabaseModels/Monitor.ts +76 -0
  5. package/Models/DatabaseModels/NetworkAlertPolicy.ts +690 -0
  6. package/Models/DatabaseModels/NetworkDevice.ts +176 -1
  7. package/Models/DatabaseModels/NetworkSite.ts +201 -2
  8. package/Models/DatabaseModels/NetworkSiteType.ts +102 -3
  9. package/Models/DatabaseModels/NetworkSnmpCredentialProfile.ts +841 -0
  10. package/Models/DatabaseModels/TelemetryException.ts +119 -0
  11. package/Models/DatabaseModels/UserNotificationEmailRollupBatch.ts +334 -0
  12. package/Models/DatabaseModels/UserNotificationEmailRollupItem.ts +370 -0
  13. package/Models/DatabaseModels/UserNotificationEmailRollupSetting.ts +282 -0
  14. package/Server/API/EnterpriseLicenseAPI.ts +391 -64
  15. package/Server/API/LlmProviderAPI.ts +137 -22
  16. package/Server/EnvironmentConfig.ts +14 -0
  17. package/Server/Infrastructure/Postgres/SchemaMigrations/1790700000000-AddNetworkSiteTypeParentHierarchy.ts +55 -0
  18. package/Server/Infrastructure/Postgres/SchemaMigrations/1790900000000-AddEnterpriseLicenseUsageProvenance.ts +31 -0
  19. package/Server/Infrastructure/Postgres/SchemaMigrations/1790900000000-AddTelemetryExceptionErrorClass.ts +124 -0
  20. package/Server/Infrastructure/Postgres/SchemaMigrations/1791000000000-AddUserNotificationEmailRollup.ts +132 -0
  21. package/Server/Infrastructure/Postgres/SchemaMigrations/1791100000000-AddUserNotificationEmailRollupSetting.ts +79 -0
  22. package/Server/Infrastructure/Postgres/SchemaMigrations/1791200000000-AddNetworkSnmpCredentialProfilesAndAlertPolicies.ts +191 -0
  23. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +12 -0
  24. package/Server/Infrastructure/QueueWorker.ts +38 -8
  25. package/Server/Middleware/BearerTokenAuthorization.ts +12 -0
  26. package/Server/Middleware/ProjectAuthorization.ts +11 -0
  27. package/Server/Middleware/SCIMAuthorization.ts +12 -0
  28. package/Server/Middleware/TelemetryIngest.ts +11 -0
  29. package/Server/Services/AIBillingService.ts +101 -27
  30. package/Server/Services/EnterpriseLicenseInstanceService.ts +197 -0
  31. package/Server/Services/EnterpriseLicenseService.ts +55 -0
  32. package/Server/Services/Index.ts +10 -0
  33. package/Server/Services/MonitorService.ts +143 -21
  34. package/Server/Services/MonitorStatusTimelineService.ts +150 -8
  35. package/Server/Services/MonitorTemplateService.ts +217 -1
  36. package/Server/Services/NetworkAlertPolicyEngineService.ts +2159 -0
  37. package/Server/Services/NetworkAlertPolicyService.ts +944 -0
  38. package/Server/Services/NetworkDeviceAutoImportRuleEngineService.ts +9 -10
  39. package/Server/Services/NetworkDeviceAutoImportRuleService.ts +60 -15
  40. package/Server/Services/NetworkDeviceService.ts +1032 -73
  41. package/Server/Services/NetworkSiteService.ts +1502 -129
  42. package/Server/Services/NetworkSiteTypeService.ts +1216 -0
  43. package/Server/Services/NetworkSnmpCredentialProfileService.ts +238 -0
  44. package/Server/Services/NotificationService.ts +118 -28
  45. package/Server/Services/ProjectService.ts +105 -48
  46. package/Server/Services/StatusPagePrivateUserService.ts +103 -3
  47. package/Server/Services/UserNotificationEmailRollupBatchService.ts +78 -0
  48. package/Server/Services/UserNotificationEmailRollupItemService.ts +79 -0
  49. package/Server/Services/UserNotificationEmailRollupSettingService.ts +113 -0
  50. package/Server/Services/UserNotificationSettingService.ts +62 -25
  51. package/Server/Services/UserService.ts +95 -0
  52. package/Server/Types/Database/QueryHelper.ts +2 -2
  53. package/Server/Utils/AI/Chat/ObservabilityChatPrompt.ts +14 -3
  54. package/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.ts +10 -0
  55. package/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.ts +10 -0
  56. package/Server/Utils/AI/SRE/Insights/InsightTriageRunner.ts +62 -1
  57. package/Server/Utils/AI/Toolbox/AlertTools.ts +15 -1
  58. package/Server/Utils/Billing/BillingFailureNoticeThrottle.ts +80 -0
  59. package/Server/Utils/DataSource/HttpFetch.ts +9 -2
  60. package/Server/Utils/EmailRollup/EmailRollupConstants.ts +98 -0
  61. package/Server/Utils/EmailRollup/EmailRollupFlushRunner.ts +872 -0
  62. package/Server/Utils/EmailRollup/EmailRollupRenderer.ts +781 -0
  63. package/Server/Utils/EmailRollup/EmailRollupWriter.ts +368 -0
  64. package/Server/Utils/LLM/LLMService.ts +78 -0
  65. package/Server/Utils/LogRedaction.ts +8 -0
  66. package/Server/Utils/Logger.ts +79 -1
  67. package/Server/Utils/Monitor/Criteria/DatabaseMonitorCriteria.ts +190 -0
  68. package/Server/Utils/Monitor/Criteria/EvaluateOverTime.ts +9 -2
  69. package/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.ts +61 -1
  70. package/Server/Utils/Monitor/MonitorCriteriaDataExtractor.ts +14 -0
  71. package/Server/Utils/Monitor/MonitorCriteriaEvaluator.ts +49 -0
  72. package/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.ts +255 -4
  73. package/Server/Utils/Monitor/MonitorMetricUtil.ts +41 -0
  74. package/Server/Utils/Monitor/MonitorTemplateUtil.ts +43 -0
  75. package/Server/Utils/Monitor/NetworkDeviceHydrationUtil.ts +499 -19
  76. package/Server/Utils/Monitor/NetworkDeviceMetricUtil.ts +66 -10
  77. package/Server/Utils/Monitor/NetworkDeviceWalkUtil.ts +238 -44
  78. package/Server/Utils/Monitor/NetworkInventoryUtil.ts +146 -39
  79. package/Server/Utils/NetworkDevice/DeviceHealthAggregation.ts +31 -18
  80. package/Server/Utils/NetworkSite/NetworkSiteHierarchyLock.ts +213 -0
  81. package/Server/Utils/OutboundUserAgent.ts +152 -0
  82. package/Server/Utils/StartServer.ts +51 -19
  83. package/Server/Utils/Telemetry/CaptureSpan.ts +32 -8
  84. package/Server/Utils/Telemetry/ErrorClassResolver.ts +120 -0
  85. package/Server/Utils/Telemetry/SpanUtil.ts +33 -0
  86. package/Server/Utils/Telemetry.ts +198 -51
  87. package/Server/Views/Partials/SensitiveUrlToken.ejs +140 -0
  88. package/Tests/App/Dashboard/AddNeighborToMonitoringModal.test.tsx +134 -33
  89. package/Tests/App/Dashboard/AskAiSuggestedPrompts.test.ts +279 -0
  90. package/Tests/App/Dashboard/DashboardEditPermissions.test.tsx +517 -0
  91. package/Tests/App/Dashboard/DashboardVariablesDiscard.test.tsx +26 -0
  92. package/Tests/App/Dashboard/DeviceStatusHero.test.tsx +588 -0
  93. package/Tests/App/Dashboard/DiscoveryScanWizardValidation.test.tsx +18 -9
  94. package/Tests/App/Dashboard/MonitorCreateFromMonitorBackedDevice.test.tsx +632 -0
  95. package/Tests/App/Dashboard/MonitorRecommendationCreateProgress.test.tsx +682 -0
  96. package/Tests/App/Dashboard/MonitorTypePicker.test.tsx +4 -2
  97. package/Tests/App/Dashboard/NetworkDeviceCreateFormMonitorBinding.test.tsx +676 -0
  98. package/Tests/App/Dashboard/NetworkDeviceCreateFormPingMonitor.test.tsx +791 -0
  99. package/Tests/App/Dashboard/NetworkDeviceCreateFormProbeAndSnmp.test.tsx +833 -0
  100. package/Tests/App/Dashboard/NetworkDeviceCriteriaFilter.test.ts +161 -0
  101. package/Tests/App/Dashboard/NetworkDeviceSettingsMonitoringSection.test.tsx +458 -0
  102. package/Tests/App/Dashboard/NetworkSideMenu.test.tsx +41 -5
  103. package/Tests/App/Dashboard/PingMonitorProvisioning.test.ts +368 -0
  104. package/Tests/App/Dashboard/RecommendationCard.test.tsx +796 -0
  105. package/Tests/App/Dashboard/RecommendationToolbar.test.tsx +519 -0
  106. package/Tests/App/Dashboard/RecommendationsList.test.tsx +661 -0
  107. package/Tests/App/Dashboard/UseBulkCreatePingMonitors.test.tsx +899 -0
  108. package/Tests/App/Dashboard/UseBulkSnmpCredentialProfileActions.test.tsx +732 -0
  109. package/Tests/App/SensitiveUrlTokenBootstrap.test.ts +256 -0
  110. package/Tests/App/StatusPage/StatusPageIndexPageRobotsMeta.test.ts +11 -1
  111. package/Tests/App/StatusPage/StatusPageLoginCodeBootstrap.test.ts +9 -4
  112. package/Tests/Models/NetworkSiteHierarchy.test.ts +41 -4
  113. package/Tests/Server/API/EnterpriseLicenseReportUserCount.test.ts +951 -7
  114. package/Tests/Server/API/LlmProviderConnectionTest.test.ts +522 -0
  115. package/Tests/Server/Infrastructure/Postgres/NetworkSnmpCredentialProfilesAndAlertPoliciesMigration.test.ts +854 -0
  116. package/Tests/Server/Infrastructure/Postgres/SchemaMigrationsOrdering.test.ts +18 -0
  117. package/Tests/Server/Infrastructure/Postgres/UserNotificationEmailRollupTableMigration.test.ts +535 -0
  118. package/Tests/Server/Services/AIChatPrivacyPin.test.ts +560 -0
  119. package/Tests/Server/Services/BillingRechargeOwnerEmailGuards.test.ts +783 -0
  120. package/Tests/Server/Services/EnterpriseLicenseInstanceServiceDeletionUsage.test.ts +707 -0
  121. package/Tests/Server/Services/EnterpriseLicenseServiceUsageAggregationLock.test.ts +329 -0
  122. package/Tests/Server/Services/MonitorServiceDeleteNetworkDeviceCleanup.test.ts +294 -0
  123. package/Tests/Server/Services/MonitorStatusBridgeProbePath.test.ts +802 -0
  124. package/Tests/Server/Services/MonitorStatusTimelineService.test.ts +72 -2
  125. package/Tests/Server/Services/NetworkAlertPolicyEngineHooks.test.ts +752 -0
  126. package/Tests/Server/Services/NetworkAlertPolicyEngineService.test.ts +1849 -0
  127. package/Tests/Server/Services/NetworkAlertPolicyModel.test.ts +1793 -0
  128. package/Tests/Server/Services/NetworkDeviceAutoImportRuleEngineService.test.ts +47 -4
  129. package/Tests/Server/Services/NetworkDeviceAutoImportRuleService.test.ts +97 -12
  130. package/Tests/Server/Services/NetworkDeviceAutoMonitorLifecycle.test.ts +148 -3
  131. package/Tests/Server/Services/NetworkDeviceMonitorBindingUpdateGuard.test.ts +514 -0
  132. package/Tests/Server/Services/NetworkDeviceMonitorStatusStamp.test.ts +447 -58
  133. package/Tests/Server/Services/NetworkDeviceMonitoringMethodTransition.test.ts +739 -0
  134. package/Tests/Server/Services/NetworkDevicePollingTenancy.test.ts +501 -0
  135. package/Tests/Server/Services/NetworkDeviceSiteDefaultProbe.test.ts +432 -0
  136. package/Tests/Server/Services/NetworkSiteMonitoringDefaults.test.ts +498 -0
  137. package/Tests/Server/Services/NetworkSiteRollupPolicyAndMaintenance.test.ts +337 -55
  138. package/Tests/Server/Services/NetworkSiteService.test.ts +1868 -131
  139. package/Tests/Server/Services/NetworkSiteTypeService.test.ts +1109 -0
  140. package/Tests/Server/Services/NetworkSnmpCredentialProfileModel.test.ts +926 -0
  141. package/Tests/Server/Services/NetworkSnmpCredentialProfileService.test.ts +796 -0
  142. package/Tests/Server/Services/ProjectServiceNetworkSiteTypeDefaults.test.ts +214 -0
  143. package/Tests/Server/Services/StatusPagePrivateUserEmailChangePasswordResetExpiry.test.ts +269 -0
  144. package/Tests/Server/Services/UserEmailChangePasswordResetExpiry.test.ts +472 -0
  145. package/Tests/Server/Services/UserNotificationEmailRollupModels.test.ts +569 -0
  146. package/Tests/Server/Services/UserNotificationEmailRollupSettingModel.test.ts +314 -0
  147. package/Tests/Server/Services/UserNotificationEmailRollupSettingService.test.ts +409 -0
  148. package/Tests/Server/Services/UserNotificationSettingRollupRouting.test.ts +856 -0
  149. package/Tests/Server/Services/UserNotificationSettingWorkspaceChannels.test.ts +102 -1
  150. package/Tests/Server/Types/Database/Permissions/DashboardAccessPermission.test.ts +321 -0
  151. package/Tests/Server/Types/Database/QueryHelperOperators.test.ts +17 -0
  152. package/Tests/Server/Utils/AI/AlertMonitorFilters.test.ts +124 -0
  153. package/Tests/Server/Utils/AI/Insights/InsightTriageRunner.test.ts +208 -0
  154. package/Tests/Server/Utils/AI/LLMServiceToolCalling.test.ts +235 -0
  155. package/Tests/Server/Utils/AI/ObservabilityChatPrompt.test.ts +253 -0
  156. package/Tests/Server/Utils/Captcha.test.ts +422 -0
  157. package/Tests/Server/Utils/DataSource/HttpFetch.test.ts +96 -2
  158. package/Tests/Server/Utils/Database/MigrationFailureLog.test.ts +466 -0
  159. package/Tests/Server/Utils/EmailRollup/EmailRollupFlushRunnerBehaviour.test.ts +1096 -0
  160. package/Tests/Server/Utils/EmailRollup/EmailRollupFlushRunnerClaim.test.ts +466 -0
  161. package/Tests/Server/Utils/EmailRollup/EmailRollupRenderer.test.ts +1428 -0
  162. package/Tests/Server/Utils/EmailRollup/EmailRollupTestHarness.ts +752 -0
  163. package/Tests/Server/Utils/EmailRollup/EmailRollupWriter.test.ts +864 -0
  164. package/Tests/Server/Utils/LoggerFaultDemotion.test.ts +346 -0
  165. package/Tests/Server/Utils/Monitor/Criteria/DatabaseMonitorCriteria.test.ts +633 -0
  166. package/Tests/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.test.ts +196 -0
  167. package/Tests/Server/Utils/Monitor/DatabaseMetricWrite.test.ts +367 -0
  168. package/Tests/Server/Utils/Monitor/MonitorCriteriaObservationBuilderUnits.test.ts +100 -0
  169. package/Tests/Server/Utils/Monitor/MonitorStepResourceIdentity.test.ts +5 -0
  170. package/Tests/Server/Utils/Monitor/NetworkDeviceHydrationUtil.test.ts +512 -31
  171. package/Tests/Server/Utils/Monitor/NetworkDeviceMetricUtil.test.ts +252 -0
  172. package/Tests/Server/Utils/Monitor/NetworkDeviceWalkUtil.test.ts +479 -42
  173. package/Tests/Server/Utils/Monitor/NetworkInventoryUtil.test.ts +351 -5
  174. package/Tests/Server/Utils/NetworkDevice/DeviceHealthAggregation.test.ts +136 -12
  175. package/Tests/Server/Utils/NetworkSite/NetworkSiteHierarchyLock.test.ts +306 -0
  176. package/Tests/Server/Utils/OutboundUserAgent.test.ts +266 -0
  177. package/Tests/Server/Utils/SecurityEvent/ThreatIntel/TaxiiClientUserAgent.test.ts +141 -0
  178. package/Tests/Server/Utils/Telemetry/ErrorClassResolver.test.ts +298 -0
  179. package/Tests/Server/Utils/Telemetry.test.ts +456 -66
  180. package/Tests/Types/Monitor/DatabaseMetricCatalog.test.ts +388 -0
  181. package/Tests/Types/Monitor/MonitorStepDatabaseMonitor.test.ts +243 -0
  182. package/Tests/Types/Monitor/MonitorStepDefaultTelemetryConfig.test.ts +1 -0
  183. package/Tests/Types/Monitor/MonitorType.test.ts +1 -0
  184. package/Tests/Types/Monitor/MonitorTypeKeywords.test.ts +16 -7
  185. package/Tests/Types/Monitor/NetworkDeviceAlertPack.test.ts +60 -0
  186. package/Tests/Types/NetworkDevice/NetworkAlertPolicyScope.test.ts +655 -0
  187. package/Tests/Types/NetworkDevice/NetworkDeviceMonitoringMethod.test.ts +115 -26
  188. package/Tests/Types/NetworkSite/DefaultNetworkSiteType.test.ts +39 -0
  189. package/Tests/Types/NotificationSetting/NotificationEmailRollupPolicy.test.ts +299 -0
  190. package/Tests/Types/Telemetry/ErrorClass.test.ts +483 -0
  191. package/Tests/UI/Components/BasicRadioButtons.test.tsx +336 -0
  192. package/Tests/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.test.ts +15 -0
  193. package/Tests/UI/Components/ProgressBar.test.tsx +38 -2
  194. package/Tests/UI/Components/SideMenuItem.test.tsx +226 -4
  195. package/Tests/UI/Components/SideMenuSection.test.tsx +310 -0
  196. package/Tests/UI/Components/SideOverSubmitState.test.tsx +335 -0
  197. package/Tests/UI/Utils/PageScrollLock.test.tsx +377 -0
  198. package/Tests/UI/Utils/PermissionGate.test.ts +78 -0
  199. package/Tests/UI/Utils/SensitiveUrlToken.test.ts +140 -0
  200. package/Tests/Utils/EnterpriseLicenseSeats.test.ts +69 -0
  201. package/Tests/Utils/EnterpriseLicenseSync.test.ts +7 -1
  202. package/Tests/Utils/EnterpriseLicenseUsage.test.ts +433 -2
  203. package/Tests/Utils/Monitor/MonitorMetricType.test.ts +280 -1
  204. package/Tests/Utils/Monitor/MonitorSummarySnapshotUtil.test.ts +1 -0
  205. package/Tests/Utils/Monitor/NetworkTopologyUtil.test.ts +38 -0
  206. package/Tests/Utils/NetworkDevice/DeviceHealthStateUtil.test.ts +284 -23
  207. package/Tests/Utils/NetworkDevice/DeviceReachabilityUtil.test.ts +177 -0
  208. package/Tests/Utils/NetworkDevice/MonitoringMethodThreadedClassifiers.test.ts +992 -0
  209. package/Tests/Utils/NetworkDevice/NetworkAlertPolicyBootstrapUtil.test.ts +427 -0
  210. package/Tests/Utils/NetworkDevice/ReachabilityStampConsistency.test.ts +185 -0
  211. package/Tests/Utils/NetworkDevice/SnmpCredentialUtil.test.ts +268 -0
  212. package/Tests/Utils/NetworkDiscovery/AutoImportRuleMatcher.test.ts +55 -5
  213. package/Tests/Utils/NetworkDiscovery/DiscoveredDeviceBuilder.test.ts +98 -21
  214. package/Tests/Utils/NetworkDiscovery/DiscoveryImportEligibility.test.ts +98 -20
  215. package/Tests/Utils/NetworkDiscovery/DiscoveryReverseDnsChain.test.ts +8 -7
  216. package/Tests/Utils/NetworkDiscovery/PingMonitorBuilderForAddress.test.ts +274 -0
  217. package/Tests/Utils/NetworkSite/SiteStatusRollupUtil.test.ts +230 -51
  218. package/Tests/Utils/NetworkSite/TypeHierarchyUtil.test.ts +209 -0
  219. package/Tests/Utils/Telemetry/CaptureSpanExportGating.test.ts +145 -0
  220. package/Types/AI/ExceptionAIClassification.ts +10 -24
  221. package/Types/Email/EmailTemplateType.ts +2 -0
  222. package/Types/EnterpriseLicense/EnterpriseLicenseInstanceSummary.ts +5 -0
  223. package/Types/EnterpriseLicense/EnterpriseLicenseUsageSnapshot.ts +13 -0
  224. package/Types/EnterpriseLicense/EnterpriseLicenseUserCountSource.ts +6 -0
  225. package/Types/Exception/ApiException.ts +10 -0
  226. package/Types/Exception/BadDataException.ts +11 -0
  227. package/Types/Exception/BadRequestException.ts +11 -0
  228. package/Types/Exception/Exception.ts +65 -0
  229. package/Types/Exception/ForbiddenException.ts +10 -0
  230. package/Types/Exception/NotAuthenticatedException.ts +10 -0
  231. package/Types/Exception/NotAuthorizedException.ts +10 -0
  232. package/Types/Exception/NotFoundException.ts +11 -0
  233. package/Types/Exception/PayloadTooLargeException.ts +11 -0
  234. package/Types/Exception/PaymentRequiredException.ts +10 -0
  235. package/Types/Exception/ServiceUnavailableException.ts +10 -0
  236. package/Types/Exception/SsoAuthorizationException.ts +10 -0
  237. package/Types/Exception/TenantNotFoundException.ts +11 -0
  238. package/Types/Exception/TimeoutException.ts +10 -0
  239. package/Types/Exception/TooManyRequestsException.ts +10 -0
  240. package/Types/Exception/UnableToReachServer.ts +10 -0
  241. package/Types/Exception/WebsiteRequestException.ts +10 -0
  242. package/Types/Monitor/CriteriaFilter.ts +60 -2
  243. package/Types/Monitor/DatabaseMetricCatalog.ts +693 -0
  244. package/Types/Monitor/DatabaseMonitor/DatabaseMonitorResponse.ts +83 -0
  245. package/Types/Monitor/MonitorCriteriaInstance.ts +76 -0
  246. package/Types/Monitor/MonitorMetricType.ts +71 -0
  247. package/Types/Monitor/MonitorStep.ts +76 -0
  248. package/Types/Monitor/MonitorStepDatabaseMonitor.ts +171 -0
  249. package/Types/Monitor/MonitorStepSqlMonitor.ts +2 -20
  250. package/Types/Monitor/MonitorType.ts +47 -1
  251. package/Types/Monitor/SnmpMonitor/NetworkDeviceAlertPack.ts +22 -1
  252. package/Types/Monitor/SqlConnectionConfig.ts +31 -0
  253. package/Types/NetworkDevice/NetworkAlertPolicyScope.ts +343 -0
  254. package/Types/NetworkDevice/NetworkDeviceMonitoringMethod.ts +42 -22
  255. package/Types/NetworkSite/DefaultNetworkSiteTypeHierarchy.ts +30 -0
  256. package/Types/NotificationSetting/NotificationEmailRollupCategory.ts +255 -0
  257. package/Types/NotificationSetting/NotificationEmailRollupPolicy.ts +104 -0
  258. package/Types/Permission.ts +90 -0
  259. package/Types/Probe/ProbeMonitorResponse.ts +16 -0
  260. package/Types/Telemetry/ErrorClass.ts +274 -0
  261. package/Types/Telemetry/UnitOfWork.ts +59 -0
  262. package/UI/Components/CommandPalette/CommandPalette.tsx +2 -8
  263. package/UI/Components/EditionLabel/EditionLabel.tsx +4 -0
  264. package/UI/Components/Modal/Modal.tsx +2 -8
  265. package/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.ts +44 -0
  266. package/UI/Components/ProgressBar/ProgressBar.tsx +12 -1
  267. package/UI/Components/RadioButtons/BasicRadioButtons.tsx +37 -7
  268. package/UI/Components/SideMenu/SideMenu.tsx +123 -5
  269. package/UI/Components/SideMenu/SideMenuItem.tsx +76 -84
  270. package/UI/Components/SideMenu/SideMenuSection.tsx +55 -23
  271. package/UI/Components/SideOver/SideOver.tsx +21 -20
  272. package/UI/Utils/PageScrollLock.ts +79 -3
  273. package/UI/Utils/PermissionGate.ts +61 -0
  274. package/UI/Utils/SensitiveUrlToken.ts +112 -0
  275. package/UI/Utils/TestLLMProvider.ts +11 -0
  276. package/Utils/EnterpriseLicense/EnterpriseLicenseSeats.ts +16 -0
  277. package/Utils/EnterpriseLicense/EnterpriseLicenseUsage.ts +191 -11
  278. package/Utils/Monitor/MonitorMetricType.ts +153 -1
  279. package/Utils/Monitor/NetworkTopologyUtil.ts +23 -3
  280. package/Utils/NetworkDevice/DeviceHealthStateUtil.ts +65 -14
  281. package/Utils/NetworkDevice/DeviceReachabilityUtil.ts +43 -14
  282. package/Utils/NetworkDevice/NetworkAlertPolicyBootstrapUtil.ts +247 -0
  283. package/Utils/NetworkDevice/SnmpCredentialUtil.ts +68 -0
  284. package/Utils/NetworkDiscovery/AutoImportRuleMatcher.ts +15 -7
  285. package/Utils/NetworkDiscovery/DiscoveredDeviceBuilder.ts +52 -17
  286. package/Utils/NetworkDiscovery/DiscoveryImportEligibility.ts +55 -23
  287. package/Utils/NetworkDiscovery/PingMonitorBuilder.ts +115 -13
  288. package/Utils/NetworkSite/SiteStatusRollupUtil.ts +66 -20
  289. package/Utils/NetworkSite/TypeHierarchyUtil.ts +313 -0
  290. package/build/dist/Models/AnalyticsModels/Span.js +14 -0
  291. package/build/dist/Models/AnalyticsModels/Span.js.map +1 -1
  292. package/build/dist/Models/DatabaseModels/EnterpriseLicense.js +59 -0
  293. package/build/dist/Models/DatabaseModels/EnterpriseLicense.js.map +1 -1
  294. package/build/dist/Models/DatabaseModels/Index.js +10 -0
  295. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  296. package/build/dist/Models/DatabaseModels/Monitor.js +75 -0
  297. package/build/dist/Models/DatabaseModels/Monitor.js.map +1 -1
  298. package/build/dist/Models/DatabaseModels/NetworkAlertPolicy.js +713 -0
  299. package/build/dist/Models/DatabaseModels/NetworkAlertPolicy.js.map +1 -0
  300. package/build/dist/Models/DatabaseModels/NetworkDevice.js +180 -1
  301. package/build/dist/Models/DatabaseModels/NetworkDevice.js.map +1 -1
  302. package/build/dist/Models/DatabaseModels/NetworkSite.js +200 -2
  303. package/build/dist/Models/DatabaseModels/NetworkSite.js.map +1 -1
  304. package/build/dist/Models/DatabaseModels/NetworkSiteType.js +102 -3
  305. package/build/dist/Models/DatabaseModels/NetworkSiteType.js.map +1 -1
  306. package/build/dist/Models/DatabaseModels/NetworkSnmpCredentialProfile.js +878 -0
  307. package/build/dist/Models/DatabaseModels/NetworkSnmpCredentialProfile.js.map +1 -0
  308. package/build/dist/Models/DatabaseModels/TelemetryException.js +123 -0
  309. package/build/dist/Models/DatabaseModels/TelemetryException.js.map +1 -1
  310. package/build/dist/Models/DatabaseModels/UserNotificationEmailRollupBatch.js +363 -0
  311. package/build/dist/Models/DatabaseModels/UserNotificationEmailRollupBatch.js.map +1 -0
  312. package/build/dist/Models/DatabaseModels/UserNotificationEmailRollupItem.js +402 -0
  313. package/build/dist/Models/DatabaseModels/UserNotificationEmailRollupItem.js.map +1 -0
  314. package/build/dist/Models/DatabaseModels/UserNotificationEmailRollupSetting.js +296 -0
  315. package/build/dist/Models/DatabaseModels/UserNotificationEmailRollupSetting.js.map +1 -0
  316. package/build/dist/Server/API/EnterpriseLicenseAPI.js +273 -60
  317. package/build/dist/Server/API/EnterpriseLicenseAPI.js.map +1 -1
  318. package/build/dist/Server/API/LlmProviderAPI.js +108 -13
  319. package/build/dist/Server/API/LlmProviderAPI.js.map +1 -1
  320. package/build/dist/Server/EnvironmentConfig.js +12 -0
  321. package/build/dist/Server/EnvironmentConfig.js.map +1 -1
  322. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1790700000000-AddNetworkSiteTypeParentHierarchy.js +24 -0
  323. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1790700000000-AddNetworkSiteTypeParentHierarchy.js.map +1 -0
  324. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1790900000000-AddEnterpriseLicenseUsageProvenance.js +16 -0
  325. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1790900000000-AddEnterpriseLicenseUsageProvenance.js.map +1 -0
  326. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1790900000000-AddTelemetryExceptionErrorClass.js +111 -0
  327. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1790900000000-AddTelemetryExceptionErrorClass.js.map +1 -0
  328. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791000000000-AddUserNotificationEmailRollup.js +77 -0
  329. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791000000000-AddUserNotificationEmailRollup.js.map +1 -0
  330. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791100000000-AddUserNotificationEmailRollupSetting.js +50 -0
  331. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791100000000-AddUserNotificationEmailRollupSetting.js.map +1 -0
  332. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791200000000-AddNetworkSnmpCredentialProfilesAndAlertPolicies.js +83 -0
  333. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791200000000-AddNetworkSnmpCredentialProfilesAndAlertPolicies.js.map +1 -0
  334. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +12 -0
  335. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  336. package/build/dist/Server/Infrastructure/QueueWorker.js +33 -5
  337. package/build/dist/Server/Infrastructure/QueueWorker.js.map +1 -1
  338. package/build/dist/Server/Middleware/BearerTokenAuthorization.js +12 -0
  339. package/build/dist/Server/Middleware/BearerTokenAuthorization.js.map +1 -1
  340. package/build/dist/Server/Middleware/ProjectAuthorization.js +11 -0
  341. package/build/dist/Server/Middleware/ProjectAuthorization.js.map +1 -1
  342. package/build/dist/Server/Middleware/SCIMAuthorization.js +12 -0
  343. package/build/dist/Server/Middleware/SCIMAuthorization.js.map +1 -1
  344. package/build/dist/Server/Middleware/TelemetryIngest.js +11 -0
  345. package/build/dist/Server/Middleware/TelemetryIngest.js.map +1 -1
  346. package/build/dist/Server/Services/AIBillingService.js +70 -16
  347. package/build/dist/Server/Services/AIBillingService.js.map +1 -1
  348. package/build/dist/Server/Services/EnterpriseLicenseInstanceService.js +167 -0
  349. package/build/dist/Server/Services/EnterpriseLicenseInstanceService.js.map +1 -1
  350. package/build/dist/Server/Services/EnterpriseLicenseService.js +39 -0
  351. package/build/dist/Server/Services/EnterpriseLicenseService.js.map +1 -1
  352. package/build/dist/Server/Services/Index.js +10 -0
  353. package/build/dist/Server/Services/Index.js.map +1 -1
  354. package/build/dist/Server/Services/MonitorService.js +119 -21
  355. package/build/dist/Server/Services/MonitorService.js.map +1 -1
  356. package/build/dist/Server/Services/MonitorStatusTimelineService.js +127 -8
  357. package/build/dist/Server/Services/MonitorStatusTimelineService.js.map +1 -1
  358. package/build/dist/Server/Services/MonitorTemplateService.js +162 -0
  359. package/build/dist/Server/Services/MonitorTemplateService.js.map +1 -1
  360. package/build/dist/Server/Services/NetworkAlertPolicyEngineService.js +1683 -0
  361. package/build/dist/Server/Services/NetworkAlertPolicyEngineService.js.map +1 -0
  362. package/build/dist/Server/Services/NetworkAlertPolicyService.js +732 -0
  363. package/build/dist/Server/Services/NetworkAlertPolicyService.js.map +1 -0
  364. package/build/dist/Server/Services/NetworkDeviceAutoImportRuleEngineService.js +10 -9
  365. package/build/dist/Server/Services/NetworkDeviceAutoImportRuleEngineService.js.map +1 -1
  366. package/build/dist/Server/Services/NetworkDeviceAutoImportRuleService.js +54 -11
  367. package/build/dist/Server/Services/NetworkDeviceAutoImportRuleService.js.map +1 -1
  368. package/build/dist/Server/Services/NetworkDeviceService.js +841 -70
  369. package/build/dist/Server/Services/NetworkDeviceService.js.map +1 -1
  370. package/build/dist/Server/Services/NetworkSiteService.js +1145 -107
  371. package/build/dist/Server/Services/NetworkSiteService.js.map +1 -1
  372. package/build/dist/Server/Services/NetworkSiteTypeService.js +863 -0
  373. package/build/dist/Server/Services/NetworkSiteTypeService.js.map +1 -1
  374. package/build/dist/Server/Services/NetworkSnmpCredentialProfileService.js +217 -0
  375. package/build/dist/Server/Services/NetworkSnmpCredentialProfileService.js.map +1 -0
  376. package/build/dist/Server/Services/NotificationService.js +80 -17
  377. package/build/dist/Server/Services/NotificationService.js.map +1 -1
  378. package/build/dist/Server/Services/ProjectService.js +66 -30
  379. package/build/dist/Server/Services/ProjectService.js.map +1 -1
  380. package/build/dist/Server/Services/StatusPagePrivateUserService.js +92 -2
  381. package/build/dist/Server/Services/StatusPagePrivateUserService.js.map +1 -1
  382. package/build/dist/Server/Services/UserNotificationEmailRollupBatchService.js +76 -0
  383. package/build/dist/Server/Services/UserNotificationEmailRollupBatchService.js.map +1 -0
  384. package/build/dist/Server/Services/UserNotificationEmailRollupItemService.js +77 -0
  385. package/build/dist/Server/Services/UserNotificationEmailRollupItemService.js.map +1 -0
  386. package/build/dist/Server/Services/UserNotificationEmailRollupSettingService.js +111 -0
  387. package/build/dist/Server/Services/UserNotificationEmailRollupSettingService.js.map +1 -0
  388. package/build/dist/Server/Services/UserNotificationSettingService.js +46 -20
  389. package/build/dist/Server/Services/UserNotificationSettingService.js.map +1 -1
  390. package/build/dist/Server/Services/UserService.js +90 -0
  391. package/build/dist/Server/Services/UserService.js.map +1 -1
  392. package/build/dist/Server/Types/Database/QueryHelper.js +1 -1
  393. package/build/dist/Server/Types/Database/QueryHelper.js.map +1 -1
  394. package/build/dist/Server/Utils/AI/Chat/ObservabilityChatPrompt.js +14 -3
  395. package/build/dist/Server/Utils/AI/Chat/ObservabilityChatPrompt.js.map +1 -1
  396. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.js +10 -0
  397. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.js.map +1 -1
  398. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.js +10 -0
  399. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.js.map +1 -1
  400. package/build/dist/Server/Utils/AI/SRE/Insights/InsightTriageRunner.js +54 -1
  401. package/build/dist/Server/Utils/AI/SRE/Insights/InsightTriageRunner.js.map +1 -1
  402. package/build/dist/Server/Utils/AI/Toolbox/AlertTools.js +18 -4
  403. package/build/dist/Server/Utils/AI/Toolbox/AlertTools.js.map +1 -1
  404. package/build/dist/Server/Utils/Billing/BillingFailureNoticeThrottle.js +59 -0
  405. package/build/dist/Server/Utils/Billing/BillingFailureNoticeThrottle.js.map +1 -0
  406. package/build/dist/Server/Utils/DataSource/HttpFetch.js +2 -1
  407. package/build/dist/Server/Utils/DataSource/HttpFetch.js.map +1 -1
  408. package/build/dist/Server/Utils/EmailRollup/EmailRollupConstants.js +91 -0
  409. package/build/dist/Server/Utils/EmailRollup/EmailRollupConstants.js.map +1 -0
  410. package/build/dist/Server/Utils/EmailRollup/EmailRollupFlushRunner.js +691 -0
  411. package/build/dist/Server/Utils/EmailRollup/EmailRollupFlushRunner.js.map +1 -0
  412. package/build/dist/Server/Utils/EmailRollup/EmailRollupRenderer.js +497 -0
  413. package/build/dist/Server/Utils/EmailRollup/EmailRollupRenderer.js.map +1 -0
  414. package/build/dist/Server/Utils/EmailRollup/EmailRollupWriter.js +257 -0
  415. package/build/dist/Server/Utils/EmailRollup/EmailRollupWriter.js.map +1 -0
  416. package/build/dist/Server/Utils/LLM/LLMService.js +64 -1
  417. package/build/dist/Server/Utils/LLM/LLMService.js.map +1 -1
  418. package/build/dist/Server/Utils/LogRedaction.js +8 -0
  419. package/build/dist/Server/Utils/LogRedaction.js.map +1 -1
  420. package/build/dist/Server/Utils/Logger.js +63 -1
  421. package/build/dist/Server/Utils/Logger.js.map +1 -1
  422. package/build/dist/Server/Utils/Monitor/Criteria/DatabaseMonitorCriteria.js +141 -0
  423. package/build/dist/Server/Utils/Monitor/Criteria/DatabaseMonitorCriteria.js.map +1 -0
  424. package/build/dist/Server/Utils/Monitor/Criteria/EvaluateOverTime.js +8 -1
  425. package/build/dist/Server/Utils/Monitor/Criteria/EvaluateOverTime.js.map +1 -1
  426. package/build/dist/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.js +51 -1
  427. package/build/dist/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.js.map +1 -1
  428. package/build/dist/Server/Utils/Monitor/MonitorCriteriaDataExtractor.js +7 -0
  429. package/build/dist/Server/Utils/Monitor/MonitorCriteriaDataExtractor.js.map +1 -1
  430. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js +37 -0
  431. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js.map +1 -1
  432. package/build/dist/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.js +158 -6
  433. package/build/dist/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.js.map +1 -1
  434. package/build/dist/Server/Utils/Monitor/MonitorMetricUtil.js +33 -0
  435. package/build/dist/Server/Utils/Monitor/MonitorMetricUtil.js.map +1 -1
  436. package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js +32 -0
  437. package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js.map +1 -1
  438. package/build/dist/Server/Utils/Monitor/NetworkDeviceHydrationUtil.js +330 -21
  439. package/build/dist/Server/Utils/Monitor/NetworkDeviceHydrationUtil.js.map +1 -1
  440. package/build/dist/Server/Utils/Monitor/NetworkDeviceMetricUtil.js +55 -10
  441. package/build/dist/Server/Utils/Monitor/NetworkDeviceMetricUtil.js.map +1 -1
  442. package/build/dist/Server/Utils/Monitor/NetworkDeviceWalkUtil.js +178 -49
  443. package/build/dist/Server/Utils/Monitor/NetworkDeviceWalkUtil.js.map +1 -1
  444. package/build/dist/Server/Utils/Monitor/NetworkInventoryUtil.js +119 -29
  445. package/build/dist/Server/Utils/Monitor/NetworkInventoryUtil.js.map +1 -1
  446. package/build/dist/Server/Utils/NetworkDevice/DeviceHealthAggregation.js +30 -17
  447. package/build/dist/Server/Utils/NetworkDevice/DeviceHealthAggregation.js.map +1 -1
  448. package/build/dist/Server/Utils/NetworkSite/NetworkSiteHierarchyLock.js +158 -0
  449. package/build/dist/Server/Utils/NetworkSite/NetworkSiteHierarchyLock.js.map +1 -0
  450. package/build/dist/Server/Utils/OutboundUserAgent.js +123 -0
  451. package/build/dist/Server/Utils/OutboundUserAgent.js.map +1 -0
  452. package/build/dist/Server/Utils/StartServer.js +38 -14
  453. package/build/dist/Server/Utils/StartServer.js.map +1 -1
  454. package/build/dist/Server/Utils/Telemetry/CaptureSpan.js +28 -8
  455. package/build/dist/Server/Utils/Telemetry/CaptureSpan.js.map +1 -1
  456. package/build/dist/Server/Utils/Telemetry/ErrorClassResolver.js +95 -0
  457. package/build/dist/Server/Utils/Telemetry/ErrorClassResolver.js.map +1 -0
  458. package/build/dist/Server/Utils/Telemetry/SpanUtil.js +29 -0
  459. package/build/dist/Server/Utils/Telemetry/SpanUtil.js.map +1 -1
  460. package/build/dist/Server/Utils/Telemetry.js +162 -46
  461. package/build/dist/Server/Utils/Telemetry.js.map +1 -1
  462. package/build/dist/Types/AI/ExceptionAIClassification.js +10 -24
  463. package/build/dist/Types/AI/ExceptionAIClassification.js.map +1 -1
  464. package/build/dist/Types/Email/EmailTemplateType.js +1 -0
  465. package/build/dist/Types/Email/EmailTemplateType.js.map +1 -1
  466. package/build/dist/Types/EnterpriseLicense/EnterpriseLicenseUsageSnapshot.js +2 -0
  467. package/build/dist/Types/EnterpriseLicense/EnterpriseLicenseUsageSnapshot.js.map +1 -0
  468. package/build/dist/Types/EnterpriseLicense/EnterpriseLicenseUserCountSource.js +7 -0
  469. package/build/dist/Types/EnterpriseLicense/EnterpriseLicenseUserCountSource.js.map +1 -0
  470. package/build/dist/Types/Exception/ApiException.js +9 -0
  471. package/build/dist/Types/Exception/ApiException.js.map +1 -1
  472. package/build/dist/Types/Exception/BadDataException.js +10 -0
  473. package/build/dist/Types/Exception/BadDataException.js.map +1 -1
  474. package/build/dist/Types/Exception/BadRequestException.js +10 -0
  475. package/build/dist/Types/Exception/BadRequestException.js.map +1 -1
  476. package/build/dist/Types/Exception/Exception.js +56 -0
  477. package/build/dist/Types/Exception/Exception.js.map +1 -1
  478. package/build/dist/Types/Exception/ForbiddenException.js +9 -0
  479. package/build/dist/Types/Exception/ForbiddenException.js.map +1 -1
  480. package/build/dist/Types/Exception/NotAuthenticatedException.js +9 -0
  481. package/build/dist/Types/Exception/NotAuthenticatedException.js.map +1 -1
  482. package/build/dist/Types/Exception/NotAuthorizedException.js +9 -0
  483. package/build/dist/Types/Exception/NotAuthorizedException.js.map +1 -1
  484. package/build/dist/Types/Exception/NotFoundException.js +10 -0
  485. package/build/dist/Types/Exception/NotFoundException.js.map +1 -1
  486. package/build/dist/Types/Exception/PayloadTooLargeException.js +10 -0
  487. package/build/dist/Types/Exception/PayloadTooLargeException.js.map +1 -1
  488. package/build/dist/Types/Exception/PaymentRequiredException.js +9 -0
  489. package/build/dist/Types/Exception/PaymentRequiredException.js.map +1 -1
  490. package/build/dist/Types/Exception/ServiceUnavailableException.js +9 -0
  491. package/build/dist/Types/Exception/ServiceUnavailableException.js.map +1 -1
  492. package/build/dist/Types/Exception/SsoAuthorizationException.js +9 -0
  493. package/build/dist/Types/Exception/SsoAuthorizationException.js.map +1 -1
  494. package/build/dist/Types/Exception/TenantNotFoundException.js +10 -0
  495. package/build/dist/Types/Exception/TenantNotFoundException.js.map +1 -1
  496. package/build/dist/Types/Exception/TimeoutException.js +9 -0
  497. package/build/dist/Types/Exception/TimeoutException.js.map +1 -1
  498. package/build/dist/Types/Exception/TooManyRequestsException.js +9 -0
  499. package/build/dist/Types/Exception/TooManyRequestsException.js.map +1 -1
  500. package/build/dist/Types/Exception/UnableToReachServer.js +9 -0
  501. package/build/dist/Types/Exception/UnableToReachServer.js.map +1 -1
  502. package/build/dist/Types/Exception/WebsiteRequestException.js +9 -0
  503. package/build/dist/Types/Exception/WebsiteRequestException.js.map +1 -1
  504. package/build/dist/Types/Monitor/CriteriaFilter.js +45 -2
  505. package/build/dist/Types/Monitor/CriteriaFilter.js.map +1 -1
  506. package/build/dist/Types/Monitor/DatabaseMetricCatalog.js +594 -0
  507. package/build/dist/Types/Monitor/DatabaseMetricCatalog.js.map +1 -0
  508. package/build/dist/Types/Monitor/DatabaseMonitor/DatabaseMonitorResponse.js +21 -0
  509. package/build/dist/Types/Monitor/DatabaseMonitor/DatabaseMonitorResponse.js.map +1 -0
  510. package/build/dist/Types/Monitor/MonitorCriteriaInstance.js +70 -0
  511. package/build/dist/Types/Monitor/MonitorCriteriaInstance.js.map +1 -1
  512. package/build/dist/Types/Monitor/MonitorMetricType.js +61 -0
  513. package/build/dist/Types/Monitor/MonitorMetricType.js.map +1 -1
  514. package/build/dist/Types/Monitor/MonitorStep.js +54 -0
  515. package/build/dist/Types/Monitor/MonitorStep.js.map +1 -1
  516. package/build/dist/Types/Monitor/MonitorStepDatabaseMonitor.js +122 -0
  517. package/build/dist/Types/Monitor/MonitorStepDatabaseMonitor.js.map +1 -0
  518. package/build/dist/Types/Monitor/MonitorStepSqlMonitor.js.map +1 -1
  519. package/build/dist/Types/Monitor/MonitorType.js +45 -1
  520. package/build/dist/Types/Monitor/MonitorType.js.map +1 -1
  521. package/build/dist/Types/Monitor/SnmpMonitor/NetworkDeviceAlertPack.js +21 -1
  522. package/build/dist/Types/Monitor/SnmpMonitor/NetworkDeviceAlertPack.js.map +1 -1
  523. package/build/dist/Types/Monitor/SqlConnectionConfig.js +2 -0
  524. package/build/dist/Types/Monitor/SqlConnectionConfig.js.map +1 -0
  525. package/build/dist/Types/NetworkDevice/NetworkAlertPolicyScope.js +172 -0
  526. package/build/dist/Types/NetworkDevice/NetworkAlertPolicyScope.js.map +1 -0
  527. package/build/dist/Types/NetworkDevice/NetworkDeviceMonitoringMethod.js +40 -22
  528. package/build/dist/Types/NetworkDevice/NetworkDeviceMonitoringMethod.js.map +1 -1
  529. package/build/dist/Types/NetworkSite/DefaultNetworkSiteTypeHierarchy.js +26 -0
  530. package/build/dist/Types/NetworkSite/DefaultNetworkSiteTypeHierarchy.js.map +1 -0
  531. package/build/dist/Types/NotificationSetting/NotificationEmailRollupCategory.js +186 -0
  532. package/build/dist/Types/NotificationSetting/NotificationEmailRollupCategory.js.map +1 -0
  533. package/build/dist/Types/NotificationSetting/NotificationEmailRollupPolicy.js +87 -0
  534. package/build/dist/Types/NotificationSetting/NotificationEmailRollupPolicy.js.map +1 -0
  535. package/build/dist/Types/Permission.js +80 -0
  536. package/build/dist/Types/Permission.js.map +1 -1
  537. package/build/dist/Types/Telemetry/ErrorClass.js +216 -0
  538. package/build/dist/Types/Telemetry/ErrorClass.js.map +1 -0
  539. package/build/dist/Types/Telemetry/UnitOfWork.js +59 -0
  540. package/build/dist/Types/Telemetry/UnitOfWork.js.map +1 -0
  541. package/build/dist/UI/Components/CommandPalette/CommandPalette.js +2 -7
  542. package/build/dist/UI/Components/CommandPalette/CommandPalette.js.map +1 -1
  543. package/build/dist/UI/Components/EditionLabel/EditionLabel.js +3 -0
  544. package/build/dist/UI/Components/EditionLabel/EditionLabel.js.map +1 -1
  545. package/build/dist/UI/Components/Modal/Modal.js +2 -7
  546. package/build/dist/UI/Components/Modal/Modal.js.map +1 -1
  547. package/build/dist/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.js +39 -0
  548. package/build/dist/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.js.map +1 -1
  549. package/build/dist/UI/Components/ProgressBar/ProgressBar.js +12 -1
  550. package/build/dist/UI/Components/ProgressBar/ProgressBar.js.map +1 -1
  551. package/build/dist/UI/Components/RadioButtons/BasicRadioButtons.js +6 -6
  552. package/build/dist/UI/Components/RadioButtons/BasicRadioButtons.js.map +1 -1
  553. package/build/dist/UI/Components/SideMenu/SideMenu.js +67 -5
  554. package/build/dist/UI/Components/SideMenu/SideMenu.js.map +1 -1
  555. package/build/dist/UI/Components/SideMenu/SideMenuItem.js +49 -53
  556. package/build/dist/UI/Components/SideMenu/SideMenuItem.js.map +1 -1
  557. package/build/dist/UI/Components/SideMenu/SideMenuSection.js +25 -7
  558. package/build/dist/UI/Components/SideMenu/SideMenuSection.js.map +1 -1
  559. package/build/dist/UI/Components/SideOver/SideOver.js +5 -20
  560. package/build/dist/UI/Components/SideOver/SideOver.js.map +1 -1
  561. package/build/dist/UI/Utils/PageScrollLock.js +31 -3
  562. package/build/dist/UI/Utils/PageScrollLock.js.map +1 -1
  563. package/build/dist/UI/Utils/PermissionGate.js +42 -1
  564. package/build/dist/UI/Utils/PermissionGate.js.map +1 -1
  565. package/build/dist/UI/Utils/SensitiveUrlToken.js +97 -0
  566. package/build/dist/UI/Utils/SensitiveUrlToken.js.map +1 -0
  567. package/build/dist/UI/Utils/TestLLMProvider.js +4 -5
  568. package/build/dist/UI/Utils/TestLLMProvider.js.map +1 -1
  569. package/build/dist/Utils/EnterpriseLicense/EnterpriseLicenseSeats.js +15 -0
  570. package/build/dist/Utils/EnterpriseLicense/EnterpriseLicenseSeats.js.map +1 -1
  571. package/build/dist/Utils/EnterpriseLicense/EnterpriseLicenseUsage.js +111 -9
  572. package/build/dist/Utils/EnterpriseLicense/EnterpriseLicenseUsage.js.map +1 -1
  573. package/build/dist/Utils/Monitor/MonitorMetricType.js +109 -1
  574. package/build/dist/Utils/Monitor/MonitorMetricType.js.map +1 -1
  575. package/build/dist/Utils/Monitor/NetworkTopologyUtil.js +8 -3
  576. package/build/dist/Utils/Monitor/NetworkTopologyUtil.js.map +1 -1
  577. package/build/dist/Utils/NetworkDevice/DeviceHealthStateUtil.js +27 -7
  578. package/build/dist/Utils/NetworkDevice/DeviceHealthStateUtil.js.map +1 -1
  579. package/build/dist/Utils/NetworkDevice/DeviceReachabilityUtil.js +7 -5
  580. package/build/dist/Utils/NetworkDevice/DeviceReachabilityUtil.js.map +1 -1
  581. package/build/dist/Utils/NetworkDevice/NetworkAlertPolicyBootstrapUtil.js +180 -0
  582. package/build/dist/Utils/NetworkDevice/NetworkAlertPolicyBootstrapUtil.js.map +1 -0
  583. package/build/dist/Utils/NetworkDevice/SnmpCredentialUtil.js +12 -0
  584. package/build/dist/Utils/NetworkDevice/SnmpCredentialUtil.js.map +1 -0
  585. package/build/dist/Utils/NetworkDiscovery/AutoImportRuleMatcher.js +15 -5
  586. package/build/dist/Utils/NetworkDiscovery/AutoImportRuleMatcher.js.map +1 -1
  587. package/build/dist/Utils/NetworkDiscovery/DiscoveredDeviceBuilder.js +44 -15
  588. package/build/dist/Utils/NetworkDiscovery/DiscoveredDeviceBuilder.js.map +1 -1
  589. package/build/dist/Utils/NetworkDiscovery/DiscoveryImportEligibility.js +52 -23
  590. package/build/dist/Utils/NetworkDiscovery/DiscoveryImportEligibility.js.map +1 -1
  591. package/build/dist/Utils/NetworkDiscovery/PingMonitorBuilder.js +85 -13
  592. package/build/dist/Utils/NetworkDiscovery/PingMonitorBuilder.js.map +1 -1
  593. package/build/dist/Utils/NetworkSite/SiteStatusRollupUtil.js +30 -15
  594. package/build/dist/Utils/NetworkSite/SiteStatusRollupUtil.js.map +1 -1
  595. package/build/dist/Utils/NetworkSite/TypeHierarchyUtil.js +191 -0
  596. package/build/dist/Utils/NetworkSite/TypeHierarchyUtil.js.map +1 -0
  597. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"NetworkDeviceMonitoringMethod.js","sourceRoot":"","sources":["../../../../Types/NetworkDevice/NetworkDeviceMonitoringMethod.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAN,IAAY,6BAKX;AALD,WAAY,6BAA6B;IACvC,oEAAoE;IACpE,8CAAa,CAAA;IACb,wEAAwE;IACxE,oDAAmB,CAAA;AACrB,CAAC,EALW,6BAA6B,KAA7B,6BAA6B,QAKxC;AAED,MAAM,OAAO,iCAAiC;IAC5C;;;;OAIG;IACI,MAAM,CAAC,KAAK,CACjB,KAAgC;QAEhC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,SAAS,EAAE,CAAC;YACrD,OAAO,6BAA6B,CAAC,OAAO,CAAC;QAC/C,CAAC;QACD,OAAO,6BAA6B,CAAC,IAAI,CAAC;IAC5C,CAAC;IAEM,MAAM,CAAC,eAAe,CAAC,KAAgC;QAC5D,OAAO,CACL,iCAAiC,CAAC,KAAK,CAAC,KAAK,CAAC;YAC9C,6BAA6B,CAAC,OAAO,CACtC,CAAC;IACJ,CAAC;CACF;AAED,eAAe,6BAA6B,CAAC"}
1
+ {"version":3,"file":"NetworkDeviceMonitoringMethod.js","sourceRoot":"","sources":["../../../../Types/NetworkDevice/NetworkDeviceMonitoringMethod.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,CAAN,IAAY,6BAQX;AARD,WAAY,6BAA6B;IACvC;;;OAGG;IACH,gDAAe,CAAA;IACf,8EAA8E;IAC9E,oDAAmB,CAAA;AACrB,CAAC,EARW,6BAA6B,KAA7B,6BAA6B,QAQxC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAW,MAAM,CAAC;AAE5D,MAAM,OAAO,iCAAiC;IAC5C;;;;;OAKG;IACI,MAAM,CAAC,KAAK,CACjB,KAAgC;QAEhC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,SAAS,EAAE,CAAC;YACrD,OAAO,6BAA6B,CAAC,OAAO,CAAC;QAC/C,CAAC;QACD,OAAO,6BAA6B,CAAC,KAAK,CAAC;IAC7C,CAAC;IAEM,MAAM,CAAC,eAAe,CAAC,KAAgC;QAC5D,OAAO,CACL,iCAAiC,CAAC,KAAK,CAAC,KAAK,CAAC;YAC9C,6BAA6B,CAAC,OAAO,CACtC,CAAC;IACJ,CAAC;IAED,8EAA8E;IACvE,MAAM,CAAC,aAAa,CAAC,KAAgC;QAC1D,OAAO,CAAC,iCAAiC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;IACnE,CAAC;CACF;AAED,eAAe,6BAA6B,CAAC"}
@@ -0,0 +1,26 @@
1
+ import DefaultNetworkSiteType from "./DefaultNetworkSiteType";
2
+ /*
3
+ * One shared hierarchy policy for new-project seeding and the idempotent data
4
+ * migration that repairs projects created before parent site types existed.
5
+ * Keep parents before children in creation order so every FK can be resolved
6
+ * from a row that has already been found or created.
7
+ */
8
+ export const DefaultNetworkSiteTypeParent = Object.freeze({
9
+ [DefaultNetworkSiteType.AccountType]: null,
10
+ [DefaultNetworkSiteType.Region]: DefaultNetworkSiteType.AccountType,
11
+ [DefaultNetworkSiteType.Franchisee]: DefaultNetworkSiteType.Region,
12
+ [DefaultNetworkSiteType.Market]: DefaultNetworkSiteType.Franchisee,
13
+ [DefaultNetworkSiteType.Unit]: DefaultNetworkSiteType.Market,
14
+ [DefaultNetworkSiteType.DataCenter]: null,
15
+ [DefaultNetworkSiteType.Other]: null,
16
+ });
17
+ export const DefaultNetworkSiteTypeCreationOrder = Object.freeze([
18
+ DefaultNetworkSiteType.AccountType,
19
+ DefaultNetworkSiteType.Region,
20
+ DefaultNetworkSiteType.Franchisee,
21
+ DefaultNetworkSiteType.Market,
22
+ DefaultNetworkSiteType.Unit,
23
+ DefaultNetworkSiteType.DataCenter,
24
+ DefaultNetworkSiteType.Other,
25
+ ]);
26
+ //# sourceMappingURL=DefaultNetworkSiteTypeHierarchy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DefaultNetworkSiteTypeHierarchy.js","sourceRoot":"","sources":["../../../../Types/NetworkSite/DefaultNetworkSiteTypeHierarchy.ts"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,MAAM,0BAA0B,CAAC;AAE9D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAErC,MAAM,CAAC,MAAM,CAAC;IAChB,CAAC,sBAAsB,CAAC,WAAW,CAAC,EAAE,IAAI;IAC1C,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE,sBAAsB,CAAC,WAAW;IACnE,CAAC,sBAAsB,CAAC,UAAU,CAAC,EAAE,sBAAsB,CAAC,MAAM;IAClE,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE,sBAAsB,CAAC,UAAU;IAClE,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,sBAAsB,CAAC,MAAM;IAC5D,CAAC,sBAAsB,CAAC,UAAU,CAAC,EAAE,IAAI;IACzC,CAAC,sBAAsB,CAAC,KAAK,CAAC,EAAE,IAAI;CACrC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mCAAmC,GAC9C,MAAM,CAAC,MAAM,CAAC;IACZ,sBAAsB,CAAC,WAAW;IAClC,sBAAsB,CAAC,MAAM;IAC7B,sBAAsB,CAAC,UAAU;IACjC,sBAAsB,CAAC,MAAM;IAC7B,sBAAsB,CAAC,IAAI;IAC3B,sBAAsB,CAAC,UAAU;IACjC,sBAAsB,CAAC,KAAK;CAC7B,CAAC,CAAC"}
@@ -0,0 +1,186 @@
1
+ import NotificationSettingEventType from "./NotificationSettingEventType";
2
+ /*
3
+ * Why this file exists: the burst counter that decides whether an owner email
4
+ * is sent now or coalesced into a rollup has to be scoped to something
5
+ * narrower than "this recipient". Scoped per recipient alone, a probe
6
+ * connection storm - the noisiest event the product produces, and the one
7
+ * event seeded on by default with no cooldown - would push the first incident
8
+ * email of a real outage over the threshold and delay it. The category is that
9
+ * scope. It is also the heading the rollup email groups its rows under, so one
10
+ * classification serves both the throttle and the reader.
11
+ *
12
+ * The VALUES below are stable machine codes, never display strings, because
13
+ * they are persisted in UserNotificationEmailRollupItem.rollupCategory.
14
+ * Changing a value orphans every existing row that carries the old one: the
15
+ * burst count for that category silently restarts from zero, and any row still
16
+ * pending a flush can never be matched to its bucket again. This is precisely
17
+ * the hazard NotificationSettingEventType already lives with - its stored
18
+ * value IS the English prose sentence shown in the UI, so no member of it can
19
+ * ever be reworded - and there is no reason to repeat that mistake on purpose.
20
+ * Display text lives in ROLLUP_CATEGORY_LABEL below, where it is free to
21
+ * change on any afternoon.
22
+ */
23
+ export var RollupCategory;
24
+ (function (RollupCategory) {
25
+ RollupCategory["Incidents"] = "incidents";
26
+ RollupCategory["Alerts"] = "alerts";
27
+ RollupCategory["IncidentEpisodes"] = "incident-episodes";
28
+ RollupCategory["AlertEpisodes"] = "alert-episodes";
29
+ RollupCategory["Monitors"] = "monitors";
30
+ RollupCategory["ScheduledMaintenance"] = "scheduled-maintenance";
31
+ RollupCategory["StatusPages"] = "status-pages";
32
+ RollupCategory["Probes"] = "probes";
33
+ RollupCategory["AIAgents"] = "ai-agents";
34
+ RollupCategory["Slos"] = "slos";
35
+ RollupCategory["OnCall"] = "on-call";
36
+ RollupCategory["Other"] = "other";
37
+ })(RollupCategory || (RollupCategory = {}));
38
+ /*
39
+ * The human-readable heading for each category. Separate from the enum value
40
+ * on purpose: this map is presentation, the enum value is storage, and only
41
+ * one of the two is safe to edit.
42
+ */
43
+ export const ROLLUP_CATEGORY_LABEL = {
44
+ [RollupCategory.Incidents]: "Incidents",
45
+ [RollupCategory.Alerts]: "Alerts",
46
+ [RollupCategory.IncidentEpisodes]: "Incident Episodes",
47
+ [RollupCategory.AlertEpisodes]: "Alert Episodes",
48
+ [RollupCategory.Monitors]: "Monitors",
49
+ [RollupCategory.ScheduledMaintenance]: "Scheduled Maintenance",
50
+ [RollupCategory.StatusPages]: "Status Pages",
51
+ [RollupCategory.Probes]: "Probes",
52
+ [RollupCategory.AIAgents]: "AI Agents",
53
+ [RollupCategory.Slos]: "SLOs",
54
+ [RollupCategory.OnCall]: "On Call",
55
+ [RollupCategory.Other]: "Other",
56
+ };
57
+ /*
58
+ * Every NotificationSettingEventType, classified. The grouping follows the
59
+ * comment groups the enum already declares about itself, so the two files say
60
+ * the same thing and a reader only has to learn one taxonomy.
61
+ *
62
+ * This is deliberately an exhaustive Record rather than a lookup with a
63
+ * default: because the key type is the enum itself, adding a 48th member to
64
+ * NotificationSettingEventType is a COMPILE ERROR here until somebody decides
65
+ * which bucket it belongs in. That is the same idiom the Dashboard's
66
+ * EVENT_LIBRARY uses, and it is the whole reason to spell out 47 lines instead
67
+ * of matching on a name prefix - a prefix match would quietly file a new
68
+ * resource type under the wrong heading, or under none, and nobody would
69
+ * notice until a customer read the email.
70
+ */
71
+ export const ROLLUP_CATEGORY_BY_EVENT_TYPE = {
72
+ // Incident
73
+ [NotificationSettingEventType.SEND_INCIDENT_CREATED_OWNER_NOTIFICATION]: RollupCategory.Incidents,
74
+ [NotificationSettingEventType.SEND_INCIDENT_NOTE_POSTED_OWNER_NOTIFICATION]: RollupCategory.Incidents,
75
+ [NotificationSettingEventType.SEND_INCIDENT_STATE_CHANGED_OWNER_NOTIFICATION]: RollupCategory.Incidents,
76
+ [NotificationSettingEventType.SEND_INCIDENT_OWNER_ADDED_NOTIFICATION]: RollupCategory.Incidents,
77
+ [NotificationSettingEventType.SEND_INCIDENT_MEMBER_ADDED_NOTIFICATION]: RollupCategory.Incidents,
78
+ [NotificationSettingEventType.SEND_INCIDENT_REMINDER_OWNER_NOTIFICATION]: RollupCategory.Incidents,
79
+ // Alerts
80
+ [NotificationSettingEventType.SEND_ALERT_CREATED_OWNER_NOTIFICATION]: RollupCategory.Alerts,
81
+ [NotificationSettingEventType.SEND_ALERT_NOTE_POSTED_OWNER_NOTIFICATION]: RollupCategory.Alerts,
82
+ [NotificationSettingEventType.SEND_ALERT_STATE_CHANGED_OWNER_NOTIFICATION]: RollupCategory.Alerts,
83
+ [NotificationSettingEventType.SEND_ALERT_OWNER_ADDED_NOTIFICATION]: RollupCategory.Alerts,
84
+ [NotificationSettingEventType.SEND_ALERT_REMINDER_OWNER_NOTIFICATION]: RollupCategory.Alerts,
85
+ // Alert Episodes
86
+ [NotificationSettingEventType.SEND_ALERT_EPISODE_CREATED_OWNER_NOTIFICATION]: RollupCategory.AlertEpisodes,
87
+ [NotificationSettingEventType.SEND_ALERT_EPISODE_NOTE_POSTED_OWNER_NOTIFICATION]: RollupCategory.AlertEpisodes,
88
+ [NotificationSettingEventType.SEND_ALERT_EPISODE_STATE_CHANGED_OWNER_NOTIFICATION]: RollupCategory.AlertEpisodes,
89
+ [NotificationSettingEventType.SEND_ALERT_EPISODE_OWNER_ADDED_NOTIFICATION]: RollupCategory.AlertEpisodes,
90
+ [NotificationSettingEventType.SEND_ALERT_ADDED_TO_EPISODE_OWNER_NOTIFICATION]: RollupCategory.AlertEpisodes,
91
+ // Incident Episodes
92
+ [NotificationSettingEventType.SEND_INCIDENT_EPISODE_CREATED_OWNER_NOTIFICATION]: RollupCategory.IncidentEpisodes,
93
+ [NotificationSettingEventType.SEND_INCIDENT_EPISODE_NOTE_POSTED_OWNER_NOTIFICATION]: RollupCategory.IncidentEpisodes,
94
+ [NotificationSettingEventType.SEND_INCIDENT_EPISODE_STATE_CHANGED_OWNER_NOTIFICATION]: RollupCategory.IncidentEpisodes,
95
+ [NotificationSettingEventType.SEND_INCIDENT_EPISODE_OWNER_ADDED_NOTIFICATION]: RollupCategory.IncidentEpisodes,
96
+ [NotificationSettingEventType.SEND_INCIDENT_ADDED_TO_EPISODE_OWNER_NOTIFICATION]: RollupCategory.IncidentEpisodes,
97
+ // Monitors
98
+ [NotificationSettingEventType.SEND_MONITOR_OWNER_ADDED_NOTIFICATION]: RollupCategory.Monitors,
99
+ [NotificationSettingEventType.SEND_MONITOR_CREATED_OWNER_NOTIFICATION]: RollupCategory.Monitors,
100
+ [NotificationSettingEventType.SEND_MONITOR_STATUS_CHANGED_OWNER_NOTIFICATION]: RollupCategory.Monitors,
101
+ [NotificationSettingEventType.SEND_MONITOR_NOTIFICATION_WHEN_PORBE_STATUS_CHANGES]: RollupCategory.Monitors,
102
+ [NotificationSettingEventType.SEND_MONITOR_NOTIFICATION_WHEN_NO_PROBES_ARE_MONITORING_THE_MONITOR]: RollupCategory.Monitors,
103
+ // Scheduled Maintenance
104
+ [NotificationSettingEventType.SEND_SCHEDULED_MAINTENANCE_CREATED_OWNER_NOTIFICATION]: RollupCategory.ScheduledMaintenance,
105
+ [NotificationSettingEventType.SEND_SCHEDULED_MAINTENANCE_NOTE_POSTED_OWNER_NOTIFICATION]: RollupCategory.ScheduledMaintenance,
106
+ [NotificationSettingEventType.SEND_SCHEDULED_MAINTENANCE_OWNER_ADDED_NOTIFICATION]: RollupCategory.ScheduledMaintenance,
107
+ [NotificationSettingEventType.SEND_SCHEDULED_MAINTENANCE_STATE_CHANGED_OWNER_NOTIFICATION]: RollupCategory.ScheduledMaintenance,
108
+ [NotificationSettingEventType.SEND_SCHEDULED_MAINTENANCE_REMINDER_OWNER_NOTIFICATION]: RollupCategory.ScheduledMaintenance,
109
+ // Status Page
110
+ [NotificationSettingEventType.SEND_STATUS_PAGE_ANNOUNCEMENT_CREATED_OWNER_NOTIFICATION]: RollupCategory.StatusPages,
111
+ [NotificationSettingEventType.SEND_STATUS_PAGE_CREATED_OWNER_NOTIFICATION]: RollupCategory.StatusPages,
112
+ [NotificationSettingEventType.SEND_STATUS_PAGE_OWNER_ADDED_NOTIFICATION]: RollupCategory.StatusPages,
113
+ // Probe Status change Notification
114
+ [NotificationSettingEventType.SEND_PROBE_STATUS_CHANGED_OWNER_NOTIFICATION]: RollupCategory.Probes,
115
+ [NotificationSettingEventType.SEND_PROBE_OWNER_ADDED_NOTIFICATION]: RollupCategory.Probes,
116
+ // AI Agent Status change Notification
117
+ [NotificationSettingEventType.SEND_AI_AGENT_STATUS_CHANGED_OWNER_NOTIFICATION]: RollupCategory.AIAgents,
118
+ [NotificationSettingEventType.SEND_AI_AGENT_OWNER_ADDED_NOTIFICATION]: RollupCategory.AIAgents,
119
+ // SLO
120
+ [NotificationSettingEventType.SEND_SLO_OWNER_STATUS_CHANGE_NOTIFICATION]: RollupCategory.Slos,
121
+ [NotificationSettingEventType.SEND_SLO_OWNER_ADDED_NOTIFICATION]: RollupCategory.Slos,
122
+ /*
123
+ * On Call Notifications, including the two shift reminders. Five of these
124
+ * seven are never rolled up at all (see NotificationEmailRollupPolicy); they
125
+ * are classified anyway so the Record stays exhaustive, and so that the one
126
+ * row per notification the write path records for accounting has a heading
127
+ * whichever way the policy is later tuned.
128
+ */
129
+ [NotificationSettingEventType.SEND_WHEN_USER_IS_ON_CALL_ROSTER]: RollupCategory.OnCall,
130
+ [NotificationSettingEventType.SEND_WHEN_USER_IS_NEXT_ON_CALL_ROSTER]: RollupCategory.OnCall,
131
+ [NotificationSettingEventType.SEND_WHEN_USER_IS_ADDED_TO_ON_CALL_POLICY]: RollupCategory.OnCall,
132
+ [NotificationSettingEventType.SEND_WHEN_USER_IS_REMOVED_FROM_ON_CALL_POLICY]: RollupCategory.OnCall,
133
+ [NotificationSettingEventType.SEND_WHEN_USER_IS_NO_LONGER_ACTIVE_ON_ON_CALL_ROSTER]: RollupCategory.OnCall,
134
+ [NotificationSettingEventType.SEND_BEFORE_USER_ON_CALL_SHIFT_STARTS]: RollupCategory.OnCall,
135
+ [NotificationSettingEventType.SEND_WHEN_USER_ON_CALL_SHIFT_IS_REASSIGNED]: RollupCategory.OnCall,
136
+ };
137
+ /*
138
+ * The order the rollup email lists its sections in, most urgent first.
139
+ *
140
+ * A rollup exists because something happened forty times in ten minutes, so
141
+ * the reader is scanning, not reading. Ordering sections by how much they can
142
+ * cost - an incident before the monitor that declared it, and both before the
143
+ * probe that noticed - means the first thing under the summary is the first
144
+ * thing worth clicking. Ordering by count instead would put a flapping probe
145
+ * above a production incident precisely when that is most wrong, and ordering
146
+ * by recency would move the sections around between two rollups five minutes
147
+ * apart, which is exactly the shape a reader learns to skim.
148
+ *
149
+ * Categories with no items in a given rollup are not rendered at all, so this
150
+ * being longer than any one email's section list is expected.
151
+ *
152
+ * Every RollupCategory MUST appear here exactly once - a category missing
153
+ * from this array would silently drop its section out of every rollup email.
154
+ * That is pinned by NotificationEmailRollupCategory.test.ts rather than by the
155
+ * type system, because an array cannot express "exhaustive" the way the
156
+ * Record above can.
157
+ */
158
+ export const ROLLUP_CATEGORY_ORDER = [
159
+ RollupCategory.Incidents,
160
+ RollupCategory.IncidentEpisodes,
161
+ RollupCategory.Alerts,
162
+ RollupCategory.AlertEpisodes,
163
+ RollupCategory.Slos,
164
+ RollupCategory.Monitors,
165
+ RollupCategory.ScheduledMaintenance,
166
+ RollupCategory.Probes,
167
+ RollupCategory.AIAgents,
168
+ RollupCategory.StatusPages,
169
+ RollupCategory.OnCall,
170
+ RollupCategory.Other,
171
+ ];
172
+ /*
173
+ * The `?? Other` is not defending against a hole in the Record above - the
174
+ * type system already guarantees there is none. It defends against a value
175
+ * that was never a member of the enum in the first place: an eventType read
176
+ * back out of Postgres and cast, or a row written by an older build whose
177
+ * member has since been renamed. Falling back to Other keeps that row in the
178
+ * rollup under a slightly vague heading instead of throwing on a send path
179
+ * whose whole point is to be no worse than sending the email directly.
180
+ */
181
+ export const getRollupCategory = (eventType) => {
182
+ var _a;
183
+ return (_a = ROLLUP_CATEGORY_BY_EVENT_TYPE[eventType]) !== null && _a !== void 0 ? _a : RollupCategory.Other;
184
+ };
185
+ export default RollupCategory;
186
+ //# sourceMappingURL=NotificationEmailRollupCategory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NotificationEmailRollupCategory.js","sourceRoot":"","sources":["../../../../Types/NotificationSetting/NotificationEmailRollupCategory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,87 @@
1
+ import NotificationSettingEventType from "./NotificationSettingEventType";
2
+ /*
3
+ * Why this file exists: burst coalescing holds an owner email back for a few
4
+ * minutes so the fourth-and-later message of a flood can arrive as one. That
5
+ * trade is fine for "an incident you own changed state" and unacceptable for
6
+ * "you are on call now". This file is the single place that decides which is
7
+ * which, and it is pure - no imports beyond the enum - so the runtime write
8
+ * path and the ratchet test read exactly the same constants with no mocks
9
+ * between them.
10
+ */
11
+ /*
12
+ * Time-critical on-call mail. Never held back, never counted, never written to
13
+ * the queue table at all.
14
+ *
15
+ * A five-minute coalescing window eats a thirty-minute shift lead time, which
16
+ * is the entire value of "your shift starts soon". And "you are on call now",
17
+ * delayed, is a missed page - the one failure mode an incident tool is not
18
+ * allowed to have. The saving from rolling these up would be nil anyway: they
19
+ * fire once per roster transition, not per resource, so they are not what
20
+ * floods anyone's inbox.
21
+ */
22
+ export const NEVER_ROLLED_UP_EVENT_TYPES = new Set([
23
+ NotificationSettingEventType.SEND_WHEN_USER_IS_ON_CALL_ROSTER,
24
+ NotificationSettingEventType.SEND_WHEN_USER_IS_NEXT_ON_CALL_ROSTER,
25
+ NotificationSettingEventType.SEND_WHEN_USER_IS_NO_LONGER_ACTIVE_ON_ON_CALL_ROSTER,
26
+ NotificationSettingEventType.SEND_BEFORE_USER_ON_CALL_SHIFT_STARTS,
27
+ NotificationSettingEventType.SEND_WHEN_USER_ON_CALL_SHIFT_IS_REASSIGNED,
28
+ ]);
29
+ /*
30
+ * SHRINK-ONLY. These two carry ON_CALL in their member name and are still
31
+ * rollup-eligible, which is the one place in this feature where the obvious
32
+ * reading of "never delay on-call mail" is deliberately not followed. The
33
+ * reasoning, in full, because anyone auditing this file will stop here:
34
+ *
35
+ * They are configuration notices, not pages. "You were added to an on-call
36
+ * policy" carries no deadline; nothing about it is actionable in the next five
37
+ * minutes, and nobody is being asked to acknowledge anything. The escalation
38
+ * pages that ARE time-critical do not pass through here at all - they call
39
+ * MailService directly from UserNotificationRuleService and never consult
40
+ * UserNotificationSetting - so nothing about this decision can reach them.
41
+ *
42
+ * And they are high volume in exactly the shape burst coalescing exists to
43
+ * fix: they fan out per user per escalation rule, from six call sites
44
+ * (Common/Server/Services/OnCallDutyPolicyEscalationRuleUserService.ts:136 and
45
+ * :370, ...RuleTeamService.ts:117/:153/:318/:355, and
46
+ * ...RuleScheduleService.ts:270/:307/:495/:532). Adding a twenty-person team
47
+ * to a five-rule policy is one hundred emails out of one admin click.
48
+ * Excluding them would give away most of the real volume for no safety gain.
49
+ *
50
+ * Nothing may be ADDED to this list without a deliberate edit to
51
+ * Common/Tests/Types/NotificationSetting/NotificationEmailRollupPolicy.test.ts,
52
+ * which pins its exact membership. That is on purpose: the next member someone
53
+ * is tempted to add here is far more likely to be a page than these two are.
54
+ */
55
+ export const ROLLUP_ELIGIBLE_ON_CALL_ADMIN_EVENT_TYPES = new Set([
56
+ NotificationSettingEventType.SEND_WHEN_USER_IS_ADDED_TO_ON_CALL_POLICY,
57
+ NotificationSettingEventType.SEND_WHEN_USER_IS_REMOVED_FROM_ON_CALL_POLICY,
58
+ ]);
59
+ /*
60
+ * Everything else - the other 42 members. Derived from the enum by exclusion
61
+ * rather than listed by hand, so the two sets are a partition by construction
62
+ * and cannot drift: there is no edit that adds a member to both, and no edit
63
+ * that drops one from both.
64
+ */
65
+ export const ROLLUP_ELIGIBLE_EVENT_TYPES = new Set(Object.values(NotificationSettingEventType).filter((eventType) => {
66
+ return !NEVER_ROLLED_UP_EVENT_TYPES.has(eventType);
67
+ }));
68
+ /*
69
+ * A POSITIVE allow-list, not `!NEVER_ROLLED_UP_EVENT_TYPES.has(...)`. The two
70
+ * are equivalent for every real enum member and deliberately different for a
71
+ * value that is not one - a string cast in from the database, or a member a
72
+ * newer build wrote and this one has never heard of. Under the allow-list such
73
+ * a value is sent immediately, which is exactly what the product does today
74
+ * and therefore the only safe answer. Under a deny-list it would be silently
75
+ * coalesced, which is a behaviour change nobody asked for arriving through the
76
+ * one path least likely to be noticed.
77
+ *
78
+ * The other half of the ratchet lives in NotificationEmailRollupCategory: a
79
+ * genuinely new enum member is picked up here by Object.values and is
80
+ * rollup-eligible by default, but it cannot compile until the exhaustive
81
+ * Record over there classifies it, so nobody adds one without reading this
82
+ * file.
83
+ */
84
+ export const isRollupEligible = (eventType) => {
85
+ return ROLLUP_ELIGIBLE_EVENT_TYPES.has(eventType);
86
+ };
87
+ //# sourceMappingURL=NotificationEmailRollupPolicy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NotificationEmailRollupPolicy.js","sourceRoot":"","sources":["../../../../Types/NotificationSetting/NotificationEmailRollupPolicy.ts"],"names":[],"mappings":"AAAA,OAAO,4BAA4B,MAAM,gCAAgC,CAAC;AAE1E;;;;;;;;GAQG;AAEH;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,2BAA2B,GACtC,IAAI,GAAG,CAA+B;IACpC,4BAA4B,CAAC,gCAAgC;IAC7D,4BAA4B,CAAC,qCAAqC;IAClE,4BAA4B,CAAC,oDAAoD;IACjF,4BAA4B,CAAC,qCAAqC;IAClE,4BAA4B,CAAC,0CAA0C;CACxE,CAAC,CAAC;AAEL;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,MAAM,yCAAyC,GACpD,IAAI,GAAG,CAA+B;IACpC,4BAA4B,CAAC,yCAAyC;IACtE,4BAA4B,CAAC,6CAA6C;CAC3E,CAAC,CAAC;AAEL;;;;;GAKG;AACH,MAAM,CAAC,MAAM,2BAA2B,GACtC,IAAI,GAAG,CACL,MAAM,CAAC,MAAM,CAAC,4BAA4B,CAAC,CAAC,MAAM,CAChD,CAAC,SAAuC,EAAW,EAAE;IACnD,OAAO,CAAC,2BAA2B,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AACrD,CAAC,CACF,CACF,CAAC;AAMJ;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAA6B,CACxD,SAAuC,EAC9B,EAAE;IACX,OAAO,2BAA2B,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AACpD,CAAC,CAAC"}
@@ -1135,6 +1135,14 @@ var Permission;
1135
1135
  Permission["DeleteNetworkDeviceRole"] = "DeleteNetworkDeviceRole";
1136
1136
  Permission["EditNetworkDeviceRole"] = "EditNetworkDeviceRole";
1137
1137
  Permission["ReadNetworkDeviceRole"] = "ReadNetworkDeviceRole";
1138
+ Permission["CreateNetworkAlertPolicy"] = "CreateNetworkAlertPolicy";
1139
+ Permission["DeleteNetworkAlertPolicy"] = "DeleteNetworkAlertPolicy";
1140
+ Permission["EditNetworkAlertPolicy"] = "EditNetworkAlertPolicy";
1141
+ Permission["ReadNetworkAlertPolicy"] = "ReadNetworkAlertPolicy";
1142
+ Permission["CreateNetworkSnmpCredentialProfile"] = "CreateNetworkSnmpCredentialProfile";
1143
+ Permission["DeleteNetworkSnmpCredentialProfile"] = "DeleteNetworkSnmpCredentialProfile";
1144
+ Permission["EditNetworkSnmpCredentialProfile"] = "EditNetworkSnmpCredentialProfile";
1145
+ Permission["ReadNetworkSnmpCredentialProfile"] = "ReadNetworkSnmpCredentialProfile";
1138
1146
  Permission["CreateRecommendationDismissal"] = "CreateRecommendationDismissal";
1139
1147
  Permission["DeleteRecommendationDismissal"] = "DeleteRecommendationDismissal";
1140
1148
  Permission["EditRecommendationDismissal"] = "EditRecommendationDismissal";
@@ -7571,6 +7579,78 @@ export class PermissionHelper {
7571
7579
  isRolePermission: false,
7572
7580
  group: PermissionGroup.Monitor,
7573
7581
  },
7582
+ {
7583
+ permission: Permission.CreateNetworkSnmpCredentialProfile,
7584
+ title: "Create SNMP Credential Profile",
7585
+ description: "This permission can create SNMP Credential Profile in this project.",
7586
+ isAssignableToTenant: true,
7587
+ isAccessControlPermission: false,
7588
+ isRolePermission: false,
7589
+ group: PermissionGroup.Monitor,
7590
+ },
7591
+ {
7592
+ permission: Permission.DeleteNetworkSnmpCredentialProfile,
7593
+ title: "Delete SNMP Credential Profile",
7594
+ description: "This permission can delete SNMP Credential Profile of this project.",
7595
+ isAssignableToTenant: true,
7596
+ isAccessControlPermission: true,
7597
+ isRolePermission: false,
7598
+ group: PermissionGroup.Monitor,
7599
+ },
7600
+ {
7601
+ permission: Permission.EditNetworkSnmpCredentialProfile,
7602
+ title: "Edit SNMP Credential Profile",
7603
+ description: "This permission can edit SNMP Credential Profile of this project.",
7604
+ isAssignableToTenant: true,
7605
+ isAccessControlPermission: true,
7606
+ isRolePermission: false,
7607
+ group: PermissionGroup.Monitor,
7608
+ },
7609
+ {
7610
+ permission: Permission.ReadNetworkSnmpCredentialProfile,
7611
+ title: "Read SNMP Credential Profile",
7612
+ description: "This permission can read SNMP Credential Profile of this project.",
7613
+ isAssignableToTenant: true,
7614
+ isAccessControlPermission: true,
7615
+ isRolePermission: false,
7616
+ group: PermissionGroup.Monitor,
7617
+ },
7618
+ {
7619
+ permission: Permission.CreateNetworkAlertPolicy,
7620
+ title: "Create Network Alert Policy",
7621
+ description: "This permission can create Network Alert Policy in this project.",
7622
+ isAssignableToTenant: true,
7623
+ isAccessControlPermission: false,
7624
+ isRolePermission: false,
7625
+ group: PermissionGroup.Monitor,
7626
+ },
7627
+ {
7628
+ permission: Permission.DeleteNetworkAlertPolicy,
7629
+ title: "Delete Network Alert Policy",
7630
+ description: "This permission can delete Network Alert Policy of this project.",
7631
+ isAssignableToTenant: true,
7632
+ isAccessControlPermission: true,
7633
+ isRolePermission: false,
7634
+ group: PermissionGroup.Monitor,
7635
+ },
7636
+ {
7637
+ permission: Permission.EditNetworkAlertPolicy,
7638
+ title: "Edit Network Alert Policy",
7639
+ description: "This permission can edit Network Alert Policy of this project.",
7640
+ isAssignableToTenant: true,
7641
+ isAccessControlPermission: true,
7642
+ isRolePermission: false,
7643
+ group: PermissionGroup.Monitor,
7644
+ },
7645
+ {
7646
+ permission: Permission.ReadNetworkAlertPolicy,
7647
+ title: "Read Network Alert Policy",
7648
+ description: "This permission can read Network Alert Policy of this project.",
7649
+ isAssignableToTenant: true,
7650
+ isAccessControlPermission: true,
7651
+ isRolePermission: false,
7652
+ group: PermissionGroup.Monitor,
7653
+ },
7574
7654
  {
7575
7655
  permission: Permission.CreateRecommendationDismissal,
7576
7656
  title: "Create Recommendation Dismissal",