@oneuptime/common 11.7.4 → 12.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (896) hide show
  1. package/Models/AnalyticsModels/ExceptionInstance.ts +67 -0
  2. package/Models/AnalyticsModels/Index.ts +10 -0
  3. package/Models/AnalyticsModels/Log.ts +60 -0
  4. package/Models/AnalyticsModels/RumSession.ts +1401 -0
  5. package/Models/AnalyticsModels/RumSessionChunk.ts +798 -0
  6. package/Models/AnalyticsModels/Span.ts +60 -0
  7. package/Models/DatabaseModels/AIAgentTaskPullRequest.ts +52 -0
  8. package/Models/DatabaseModels/AIRun.ts +31 -0
  9. package/Models/DatabaseModels/Alert.ts +29 -0
  10. package/Models/DatabaseModels/AlertCustomField.ts +1 -1
  11. package/Models/DatabaseModels/AlertFeed.ts +1 -0
  12. package/Models/DatabaseModels/AutoRemediationRule.ts +989 -0
  13. package/Models/DatabaseModels/AutoRemediationSuggestion.ts +874 -0
  14. package/Models/DatabaseModels/CodeRepository.ts +129 -0
  15. package/Models/DatabaseModels/GlobalConfig.ts +312 -0
  16. package/Models/DatabaseModels/Incident.ts +29 -0
  17. package/Models/DatabaseModels/IncidentCustomField.ts +1 -1
  18. package/Models/DatabaseModels/IncidentFeed.ts +1 -0
  19. package/Models/DatabaseModels/Index.ts +21 -8
  20. package/Models/DatabaseModels/InstanceHealthLog.ts +8 -0
  21. package/Models/DatabaseModels/MonitorCustomField.ts +1 -1
  22. package/Models/DatabaseModels/MonitorStatus.ts +1 -1
  23. package/Models/DatabaseModels/NetworkDeviceLabelRule.ts +2 -2
  24. package/Models/DatabaseModels/NetworkDeviceOwnerRule.ts +2 -2
  25. package/Models/DatabaseModels/NetworkSiteAssignmentRule.ts +1 -1
  26. package/Models/DatabaseModels/OnCallDutyPolicyCustomField.ts +1 -1
  27. package/Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.ts +12 -2
  28. package/Models/DatabaseModels/Project.ts +231 -0
  29. package/Models/DatabaseModels/RumApplication.ts +906 -0
  30. package/Models/DatabaseModels/RumSessionErasureRequest.ts +561 -0
  31. package/Models/DatabaseModels/RumSessionPin.ts +457 -0
  32. package/Models/DatabaseModels/RumSessionReplayView.ts +406 -0
  33. package/Models/DatabaseModels/RunbookCredential.ts +673 -0
  34. package/Models/DatabaseModels/RunbookSecret.ts +7 -7
  35. package/Models/DatabaseModels/{RunbookAgent.ts → Runner.ts} +206 -46
  36. package/Models/DatabaseModels/{RunbookAgentJob.ts → RunnerJob.ts} +151 -18
  37. package/Models/DatabaseModels/{RunbookAgentOwnerTeam.ts → RunnerOwnerTeam.ts} +41 -43
  38. package/Models/DatabaseModels/{RunbookAgentOwnerUser.ts → RunnerOwnerUser.ts} +41 -43
  39. package/Models/DatabaseModels/ScheduledMaintenanceCustomField.ts +1 -1
  40. package/Models/DatabaseModels/StatusPageCustomField.ts +1 -1
  41. package/Models/DatabaseModels/TeamCustomField.ts +1 -1
  42. package/Models/DatabaseModels/TeamMemberCustomField.ts +1 -1
  43. package/Server/API/AIAgentDataAPI.ts +179 -48
  44. package/Server/API/AIAgentTaskAPI.ts +36 -37
  45. package/Server/API/AIAgentTaskLogAPI.ts +19 -33
  46. package/Server/API/AutoRemediationAPI.ts +557 -0
  47. package/Server/API/BaseAnalyticsAPI.ts +4 -1
  48. package/Server/API/CommonAPI.ts +35 -0
  49. package/Server/API/DashboardAPI.ts +340 -15
  50. package/Server/API/TelemetryAPI.ts +1622 -3
  51. package/Server/API/UserIncomingCallNumberAPI.ts +31 -0
  52. package/Server/DatabaseConfig.ts +26 -1
  53. package/Server/EnvironmentConfig.ts +13 -0
  54. package/Server/Infrastructure/Postgres/LocalMigrationGenerationDataSource.ts +12 -2
  55. package/Server/Infrastructure/Postgres/SchemaMigrations/1785417351021-AddSessionReplay.ts +293 -0
  56. package/Server/Infrastructure/Postgres/SchemaMigrations/1785491583874-EnableSessionReplayByDefault.ts +67 -0
  57. package/Server/Infrastructure/Postgres/SchemaMigrations/1785496223183-AddMonitorSummaryToIncidentAndAlert.ts +33 -0
  58. package/Server/Infrastructure/Postgres/SchemaMigrations/1785516996695-AddSessionReplayReliabilityColumns.ts +40 -0
  59. package/Server/Infrastructure/Postgres/SchemaMigrations/1785533806494-AddSessionReplayCorrelationColumns.ts +54 -0
  60. package/Server/Infrastructure/Postgres/SchemaMigrations/1785749674203-AddRedisAndPostgresHealthNotificationColumns.ts +104 -0
  61. package/Server/Infrastructure/Postgres/SchemaMigrations/1785763818197-AddAutoRemediation.ts +349 -0
  62. package/Server/Infrastructure/Postgres/SchemaMigrations/1785768089408-AddRemediationVerification.ts +67 -0
  63. package/Server/Infrastructure/Postgres/SchemaMigrations/1785776960660-AddRunnerCapabilities.ts +23 -0
  64. package/Server/Infrastructure/Postgres/SchemaMigrations/1785790000000-AddIncidentInvestigationGating.ts +42 -0
  65. package/Server/Infrastructure/Postgres/SchemaMigrations/1785800000000-AddRunbookCredential.ts +84 -0
  66. package/Server/Infrastructure/Postgres/SchemaMigrations/1785810000000-RenameRunbookAgentToRunner.ts +152 -0
  67. package/Server/Infrastructure/Postgres/SchemaMigrations/1785860000000-SessionReplayDefaultToSensitiveInputMasking.ts +81 -0
  68. package/Server/Infrastructure/Postgres/SchemaMigrations/1785870000000-AddAiCommandRemediation.ts +151 -0
  69. package/Server/Infrastructure/Postgres/SchemaMigrations/1785880000000-AlignRunnerSchemaWithEntities.ts +597 -0
  70. package/Server/Infrastructure/Postgres/SchemaMigrations/1785890000000-AddFixVerificationAndAutomaticCodeFixes.ts +71 -0
  71. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +32 -0
  72. package/Server/Services/AIRunService.ts +10 -0
  73. package/Server/Services/AIService.ts +30 -0
  74. package/Server/Services/AlertService.ts +41 -4
  75. package/Server/Services/AlertSeverityService.ts +25 -11
  76. package/Server/Services/AlertStateService.ts +25 -11
  77. package/Server/Services/AutoRemediationRuleEngineService.ts +1101 -0
  78. package/Server/Services/{RunbookAgentOwnerTeamService.ts → AutoRemediationRuleService.ts} +1 -1
  79. package/Server/Services/AutoRemediationSuggestionService.ts +183 -0
  80. package/Server/Services/BillingService.ts +50 -1
  81. package/Server/Services/DatabaseService.ts +92 -4
  82. package/Server/Services/IncidentService.ts +56 -4
  83. package/Server/Services/IncidentSeverityService.ts +25 -11
  84. package/Server/Services/IncidentStateService.ts +25 -11
  85. package/Server/Services/Index.ts +19 -0
  86. package/Server/Services/LlmProviderService.ts +69 -9
  87. package/Server/Services/MonitorService.ts +24 -0
  88. package/Server/Services/MonitorStatusService.ts +25 -11
  89. package/Server/Services/NetworkDeviceLabelRuleEngineService.ts +18 -19
  90. package/Server/Services/NetworkDeviceLabelRuleService.ts +39 -0
  91. package/Server/Services/NetworkDeviceOwnerRuleEngineService.ts +18 -19
  92. package/Server/Services/NetworkDeviceOwnerRuleService.ts +37 -0
  93. package/Server/Services/NetworkDeviceService.ts +172 -21
  94. package/Server/Services/NetworkSiteAssignmentRuleService.ts +92 -12
  95. package/Server/Services/NetworkSiteService.ts +27 -10
  96. package/Server/Services/ProjectService.ts +47 -0
  97. package/Server/Services/RumApplicationService.ts +240 -1
  98. package/Server/Services/RumSessionChunkService.ts +11 -0
  99. package/Server/Services/RumSessionErasureRequestService.ts +197 -0
  100. package/Server/Services/RumSessionPinService.ts +213 -0
  101. package/Server/Services/RumSessionReplayViewService.ts +201 -0
  102. package/Server/Services/RumSessionService.ts +123 -0
  103. package/Server/Services/RunbookCredentialService.ts +76 -0
  104. package/Server/Services/{RunbookAgentJobService.ts → RunnerJobService.ts} +202 -51
  105. package/Server/Services/{RunbookAgentOwnerUserService.ts → RunnerOwnerTeamService.ts} +1 -1
  106. package/Server/Services/RunnerOwnerUserService.ts +10 -0
  107. package/Server/Services/RunnerService.ts +166 -0
  108. package/Server/Services/ScheduledMaintenanceStateService.ts +25 -11
  109. package/Server/Services/ScheduledMaintenanceStateTimelineService.ts +15 -1
  110. package/Server/Services/ServiceService.ts +8 -2
  111. package/Server/Services/StatusPageService.ts +240 -36
  112. package/Server/Services/StatusPageSubscriberNotificationTemplateService.ts +20 -1
  113. package/Server/Services/TelemetryExceptionService.ts +3 -16
  114. package/Server/Services/TelemetryUsageBillingService.ts +33 -2
  115. package/Server/Services/TraceAggregationService.ts +196 -32
  116. package/Server/Types/Billing/MeteredPlan/AllMeteredPlans.ts +17 -0
  117. package/Server/Types/Billing/MeteredPlan/ServerMeteredPlan.ts +10 -0
  118. package/Server/Utils/AI/Chat/ObservabilityAssistant.ts +63 -7
  119. package/Server/Utils/AI/CodeFix/CodeFixAgentAuth.ts +128 -0
  120. package/Server/Utils/AI/CodeFix/CodeFixAgentAvailability.ts +54 -0
  121. package/Server/Utils/AI/CodeFix/CodeFixReadiness.ts +17 -10
  122. package/Server/Utils/AI/CodeFix/CodeFixRunQueue.ts +8 -6
  123. package/Server/Utils/AI/Remediation/RemediationCommandTools.ts +943 -0
  124. package/Server/Utils/AI/Remediation/RemediationExecutionRunner.ts +866 -0
  125. package/Server/Utils/AI/Remediation/RemediationPlanRunner.ts +823 -0
  126. package/Server/Utils/AI/SRE/AIInvestigationEngine.ts +103 -12
  127. package/Server/Utils/AI/SRE/AlertInvestigationRunner.ts +75 -17
  128. package/Server/Utils/AI/SRE/ConfidenceSignal.ts +28 -6
  129. package/Server/Utils/AI/SRE/FixFromIncidentTaskTrigger.ts +202 -12
  130. package/Server/Utils/AI/SRE/IncidentInvestigationRunner.ts +264 -14
  131. package/Server/Utils/AI/SRE/Insights/Triage.ts +2 -7
  132. package/Server/Utils/AI/SRE/InvestigationGrader.ts +5 -24
  133. package/Server/Utils/AI/SRE/InvestigationQueue.ts +259 -20
  134. package/Server/Utils/AI/SRE/PostedRootCause.ts +82 -0
  135. package/Server/Utils/AI/SRE/README.md +3 -2
  136. package/Server/Utils/AI/SRE/RemediationHandoff.ts +82 -0
  137. package/Server/Utils/AI/SRE/SubjectCodeFixRun.ts +6 -19
  138. package/Server/Utils/AI/Toolbox/CodeWriteTools.ts +2 -2
  139. package/Server/Utils/Alert/AlertPrivacyFilter.ts +58 -0
  140. package/Server/Utils/AutoRemediation/CommandPlanExecutor.ts +604 -0
  141. package/Server/Utils/AutoRemediation/RemediationVerifier.ts +619 -0
  142. package/Server/Utils/CorsOptions.ts +52 -0
  143. package/Server/Utils/Database/RelationIdUtil.ts +68 -0
  144. package/Server/Utils/Incident/IncidentPrivacyFilter.ts +60 -0
  145. package/Server/Utils/InstanceHealth/PostgresHealth.ts +286 -0
  146. package/Server/Utils/InstanceHealth/RedisHealth.ts +434 -0
  147. package/Server/Utils/Monitor/Criteria/CompareCriteria.ts +12 -0
  148. package/Server/Utils/Monitor/MonitorAlert.ts +20 -0
  149. package/Server/Utils/Monitor/MonitorIncident.ts +20 -0
  150. package/Server/Utils/Monitor/MonitorResource.ts +19 -0
  151. package/Server/Utils/Monitor/MonitorSummaryCapture.ts +104 -0
  152. package/Server/Utils/NetworkDevice/RulePatternValidator.ts +44 -0
  153. package/Server/Utils/OpenAPI.ts +2 -1
  154. package/Server/Utils/Runbook/RunbookExecutePermission.ts +94 -0
  155. package/Server/Utils/SessionReplay/SessionReplayErasureTombstone.ts +128 -0
  156. package/Server/Utils/SessionReplay/SessionReplayGateCache.ts +586 -0
  157. package/Server/Utils/SessionReplay/SessionReplayGateCacheStore.ts +188 -0
  158. package/Server/Utils/SessionReplay/SessionReplayReadService.ts +1449 -0
  159. package/Server/Utils/SessionReplay/SessionReplayRetention.ts +114 -0
  160. package/Server/Utils/SessionReplay/SessionReplayTargeting.ts +144 -0
  161. package/Server/Utils/SessionReplay/SessionReplayUsage.ts +92 -0
  162. package/Server/Utils/StartServer.ts +47 -3
  163. package/Server/Utils/Telemetry/TelemetryFanInWriter.ts +44 -10
  164. package/Tests/App/Dashboard/AddWidgetModal.test.tsx +557 -0
  165. package/Tests/App/Dashboard/RunnerInstallInstructions.test.tsx +119 -0
  166. package/Tests/App/Dashboard/RunnerStatus.test.tsx +274 -0
  167. package/Tests/App/Dashboard/WidgetCatalog.test.ts +479 -0
  168. package/Tests/App/StatusPage/BulkAddStatusPageMonitors.test.ts +343 -0
  169. package/Tests/App/StatusPage/BulkAddStatusPageMonitorsModal.test.tsx +320 -0
  170. package/Tests/Models/AnalyticsModels/RumSessionSchema.test.ts +455 -0
  171. package/Tests/Models/AnalyticsModels/SessionIdCorrelation.test.ts +158 -0
  172. package/Tests/Models/DatabaseModels/SessionReplayModels.test.ts +447 -0
  173. package/Tests/Models/RunnerVersionLabel.test.ts +223 -0
  174. package/Tests/Server/API/DashboardPublicResourceListAPI.test.ts +1287 -0
  175. package/Tests/Server/API/LegacyRunbookAgentRoutes.test.ts +117 -0
  176. package/Tests/Server/API/SessionReplayAPI.test.ts +2093 -0
  177. package/Tests/Server/API/UserIncomingCallNumberApi.test.ts +429 -0
  178. package/Tests/Server/API/UserSmsApi.test.ts +68 -2
  179. package/Tests/Server/DatabaseConfig.test.ts +150 -0
  180. package/Tests/Server/Infrastructure/ContainerBootConfiguration.test.ts +2 -2
  181. package/Tests/Server/Infrastructure/ProcessSignalDelivery.test.ts +2 -3
  182. package/Tests/Server/Services/AIRunCodeFixClaimScoping.test.ts +100 -0
  183. package/Tests/Server/Services/AIServiceDailyBudget.test.ts +8 -0
  184. package/Tests/Server/Services/AutoRemediationCommandRuleEngine.test.ts +334 -0
  185. package/Tests/Server/Services/AutoRemediationRuleEngineService.test.ts +517 -0
  186. package/Tests/Server/Services/BillingService.test.ts +158 -1
  187. package/Tests/Server/Services/DatabaseServiceEmptyUpdate.test.ts +24 -2
  188. package/Tests/Server/Services/DatabaseServiceSanitizeUpdateData.test.ts +17 -10
  189. package/Tests/Server/Services/DatabaseServiceUpdateColumnsWithoutHooks.test.ts +128 -0
  190. package/Tests/Server/Services/DatabaseServiceUpdateWriteRouting.test.ts +178 -0
  191. package/Tests/Server/Services/DatabaseServiceUpdateWriteRoutingMonitor.test.ts +206 -0
  192. package/Tests/Server/Services/LlmProviderUsableByProject.test.ts +293 -0
  193. package/Tests/Server/Services/MonitorServiceOperationalStatusSelection.test.ts +145 -0
  194. package/Tests/Server/Services/NetworkDeviceRuleEngines.test.ts +726 -0
  195. package/Tests/Server/Services/NetworkDeviceSiteAssignment.test.ts +570 -9
  196. package/Tests/Server/Services/NetworkSiteAssignmentRuleService.test.ts +94 -1
  197. package/Tests/Server/Services/NetworkSiteService.test.ts +85 -0
  198. package/Tests/Server/Services/RumApplicationReplayHealth.test.ts +114 -0
  199. package/Tests/Server/Services/RunbookCredentialService.test.ts +657 -0
  200. package/Tests/Server/Services/SessionReplayCreatePath.test.ts +376 -0
  201. package/Tests/Server/Services/SessionReplayGateCacheInvalidation.test.ts +211 -0
  202. package/Tests/Server/Services/SessionReplayMetering.test.ts +174 -0
  203. package/Tests/Server/Services/StatusPageSubscriberReport.test.ts +555 -0
  204. package/Tests/Server/Services/TelemetryExceptionAIFixReadiness.test.ts +25 -4
  205. package/Tests/Server/Services/TelemetryExceptionCodeFixRun.test.ts +17 -2
  206. package/Tests/Server/Services/TraceAggregationService.test.ts +48 -0
  207. package/Tests/Server/Services/TraceAnalyticsResourceDisplayNames.test.ts +855 -0
  208. package/Tests/Server/Services/UpdateOneByIdKeepsRowId.test.ts +38 -27
  209. package/Tests/Server/Utils/AI/AIConfidenceSignal.test.ts +44 -0
  210. package/Tests/Server/Utils/AI/AIIncidentGating.test.ts +475 -0
  211. package/Tests/Server/Utils/AI/CodeFix/CodeFixAgentAuth.test.ts +257 -0
  212. package/Tests/Server/Utils/AI/CodeFix/CodeFixAgentAvailability.test.ts +236 -0
  213. package/Tests/Server/Utils/AI/CodeFixReadiness.test.ts +44 -6
  214. package/Tests/Server/Utils/AI/CodeFixRunQueue.test.ts +47 -1
  215. package/Tests/Server/Utils/AI/CodeWriteTools.test.ts +2 -2
  216. package/Tests/Server/Utils/AI/FixFromIncidentAutoTrigger.test.ts +294 -0
  217. package/Tests/Server/Utils/AI/Insights/InsightTriageRunner.test.ts +2 -2
  218. package/Tests/Server/Utils/AI/Insights/InvestigationQueueInsightSubject.test.ts +47 -3
  219. package/Tests/Server/Utils/AI/InvestigationQueueRemediationExecution.test.ts +233 -0
  220. package/Tests/Server/Utils/AI/InvestigationSettlement.test.ts +463 -0
  221. package/Tests/Server/Utils/AI/PostedRootCause.test.ts +254 -0
  222. package/Tests/Server/Utils/AI/RemediationAllowlistNormalization.test.ts +248 -0
  223. package/Tests/Server/Utils/AI/RemediationCommandTools.test.ts +1008 -0
  224. package/Tests/Server/Utils/AI/RemediationExecutionRunner.test.ts +887 -0
  225. package/Tests/Server/Utils/AI/RemediationHandoff.test.ts +306 -0
  226. package/Tests/Server/Utils/AI/RemediationPlanRunner.test.ts +745 -0
  227. package/Tests/Server/Utils/AI/SubjectCodeFixRunDedupe.test.ts +291 -0
  228. package/Tests/Server/Utils/AI/ToolArgsExtractors.test.ts +141 -0
  229. package/Tests/Server/Utils/AI/Toolbox/WidgetBuilder.test.ts +205 -0
  230. package/Tests/Server/Utils/AutoRemediation/CommandPlanExecutor.test.ts +1050 -0
  231. package/Tests/Server/Utils/AutoRemediation/CommandPlanVerification.test.ts +350 -0
  232. package/Tests/Server/Utils/AutoRemediation/RemediationVerifier.test.ts +341 -0
  233. package/Tests/Server/Utils/CorsOptions.test.ts +119 -0
  234. package/Tests/Server/Utils/Database/RelationIdUtil.test.ts +120 -0
  235. package/Tests/Server/Utils/Database/ResolveReferenceId.test.ts +60 -0
  236. package/Tests/Server/Utils/InstanceHealth/PostgresHealth.test.ts +337 -0
  237. package/Tests/Server/Utils/InstanceHealth/RedisHealth.test.ts +671 -0
  238. package/Tests/Server/Utils/Monitor/Criteria/CompareCriteria.test.ts +897 -0
  239. package/Tests/Server/Utils/Monitor/MonitorSummaryCapture.test.ts +205 -0
  240. package/Tests/Server/Utils/Monitor/MonitorSummaryPersistence.test.ts +313 -0
  241. package/Tests/Server/Utils/PushNotificationUtil.test.ts +228 -0
  242. package/Tests/Server/Utils/SessionReplay/SessionReplayGateCachePolicy.test.ts +177 -0
  243. package/Tests/Server/Utils/SessionReplay/SessionReplayOriginAllowlist.test.ts +108 -0
  244. package/Tests/Server/Utils/SessionReplay/SessionReplayRetention.test.ts +229 -0
  245. package/Tests/Server/Utils/SessionReplay/SessionReplayTargeting.test.ts +246 -0
  246. package/Tests/Server/Utils/Telemetry/TelemetryFanInWriter.test.ts +110 -0
  247. package/Tests/Types/AI/AIRunStatus.test.ts +25 -0
  248. package/Tests/Types/AutoRemediation/AiRemediationCommandPlan.test.ts +1063 -0
  249. package/Tests/Types/BaseDatabase/AggregationType.test.ts +56 -0
  250. package/Tests/Types/CustomField/CustomFieldDropdownOption.test.ts +227 -0
  251. package/Tests/Types/Dashboard/DashboardTemplateInvariants.test.ts +811 -0
  252. package/Tests/Types/Dashboard/RumDashboardTemplate.test.ts +1238 -0
  253. package/Tests/Types/Day/DayOfWeek.test.ts +46 -0
  254. package/Tests/Types/Docker/DockerInventoryExtractor.test.ts +249 -0
  255. package/Tests/Types/Kubernetes/KubernetesInventoryExtractor.test.ts +231 -0
  256. package/Tests/Types/Kubernetes/KubernetesRightSizing.test.ts +323 -0
  257. package/Tests/Types/Metrics/MetricDownsamplingRetentionDays.test.ts +77 -0
  258. package/Tests/Types/Monitor/Recommendation/MonitorRecommendationCatalog.test.ts +42 -14
  259. package/Tests/Types/Monitor/Recommendation/MonitorRecommendationCoverage.test.ts +2 -2
  260. package/Tests/Types/Monitor/Recommendation/MonitorRecommendationNotificationMode.test.ts +3 -2
  261. package/Tests/Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.test.ts +1 -1
  262. package/Tests/Types/Monitor/Recommendation/MonitorRecommendationUtil.test.ts +6 -3
  263. package/Tests/Types/Monitor/RumAlertTemplates.test.ts +285 -0
  264. package/Tests/Types/Podman/PodmanInventoryExtractor.test.ts +159 -0
  265. package/Tests/Types/Runbook/RunbookExecutionDeadline.test.ts +268 -0
  266. package/Tests/Types/Runbook/RunbookStepType.test.ts +242 -0
  267. package/Tests/Types/Runner/RunnerLiveStatus.test.ts +320 -0
  268. package/Tests/Types/Telemetry/TelemetryRetentionConfig.test.ts +225 -0
  269. package/Tests/Types/Text.test.ts +60 -0
  270. package/Tests/UI/Components/AiInvestigationSettingsCard.test.tsx +285 -0
  271. package/Tests/UI/Components/AutocompleteTextInputMenu.test.tsx +555 -0
  272. package/Tests/UI/Components/BulkLabelActions.test.tsx +1502 -0
  273. package/Tests/UI/Components/BulkOwnerActions.test.tsx +1255 -0
  274. package/Tests/UI/Components/CustomFields/DropdownOptionsInput.test.tsx +228 -0
  275. package/Tests/UI/Components/Detail/DropdownColors.test.tsx +128 -0
  276. package/Tests/UI/Components/Detail/EntityFields.test.tsx +166 -0
  277. package/Tests/UI/Components/Dropdown/DropdownValueBadge.test.tsx +60 -0
  278. package/Tests/UI/Components/FilterModalOperatorMenu.test.tsx +674 -0
  279. package/Tests/UI/Components/Forms/ColorPicker.test.tsx +48 -0
  280. package/Tests/UI/Components/Forms/ColorPickerPopup.test.tsx +222 -0
  281. package/Tests/UI/Components/Forms/IconPickerPopup.test.tsx +270 -0
  282. package/Tests/UI/Components/ModelTable/CustomFieldColumns.test.tsx +125 -6
  283. package/Tests/UI/Components/OperatorSelectorFilterTypes.test.tsx +1595 -0
  284. package/Tests/UI/Components/OperatorSelectorKeyboard.test.tsx +851 -0
  285. package/Tests/UI/Components/OperatorSelectorMenu.test.tsx +1229 -0
  286. package/Tests/UI/Components/Pagination.test.tsx +85 -0
  287. package/Tests/UI/Monitor/MonitorSummarySnapshotRender.test.tsx +248 -0
  288. package/Tests/UI/Rum/ChunkLoader.test.ts +790 -0
  289. package/Tests/UI/Rum/ReplayScrubber.test.tsx +236 -0
  290. package/Tests/UI/Rum/ReplayStage.test.tsx +606 -0
  291. package/Tests/UI/Utils/Timezone.test.ts +86 -0
  292. package/Tests/UI/Utils/UseClockTick.test.tsx +276 -0
  293. package/Tests/Utils/AiRemediation/CommandPolicy.test.ts +1063 -0
  294. package/Tests/Utils/Dashboard/ClockWidgetFormat.test.ts +1374 -0
  295. package/Tests/Utils/Dashboard/DashboardClockComponent.test.ts +362 -0
  296. package/Tests/Utils/Dashboard/DashboardHtmlComponent.test.ts +217 -0
  297. package/Tests/Utils/Dashboard/HtmlWidgetDocument.test.ts +656 -0
  298. package/Tests/Utils/Dashboard/ValueWidgetLayout.test.ts +1007 -0
  299. package/Tests/Utils/Metrics/MetricSeriesScope.test.ts +1197 -0
  300. package/Tests/Utils/Monitor/MonitorSummarySnapshotUtil.test.ts +839 -0
  301. package/Tests/Utils/NetworkSite/CidrMatchUtil.test.ts +69 -0
  302. package/Tests/Utils/Rules/RulePatternMatchUtil.test.ts +274 -0
  303. package/Tests/Utils/Rum/ChunkMath.test.ts +286 -0
  304. package/Tests/Utils/Rum/Masking.test.ts +186 -0
  305. package/Tests/Utils/Rum/SessionIdentity.test.ts +272 -0
  306. package/Tests/Utils/Rum/SessionSampling.test.ts +164 -0
  307. package/Tests/Utils/Rum/UrlScrubber.test.ts +175 -0
  308. package/Tests/Utils/StatusPage/Report.test.ts +708 -0
  309. package/Tests/Utils/ValueFormatter.test.ts +299 -1
  310. package/Types/AI/AIRunStatus.ts +18 -7
  311. package/Types/AI/AIRunType.ts +18 -0
  312. package/Types/AI/FixVerificationStatus.ts +21 -0
  313. package/Types/AnalyticsDatabase/AnalyticsTableName.ts +16 -0
  314. package/Types/AutoRemediation/AiRemediationCommandPlan.ts +304 -0
  315. package/Types/AutoRemediation/AutoRemediationExecutionMode.ts +17 -0
  316. package/Types/AutoRemediation/AutoRemediationSuggestionStatus.ts +35 -0
  317. package/Types/AutoRemediation/AutoRemediationSuggestionType.ts +17 -0
  318. package/Types/AutoRemediation/AutoRemediationTriggerEntity.ts +11 -0
  319. package/Types/AutoRemediation/AutoRemediationVerificationStatus.ts +21 -0
  320. package/Types/CustomField/CustomFieldDropdownOption.ts +190 -0
  321. package/Types/Dashboard/DashboardComponentType.ts +2 -0
  322. package/Types/Dashboard/DashboardComponents/ComponentArgument.ts +4 -0
  323. package/Types/Dashboard/DashboardComponents/DashboardClockComponent.ts +45 -0
  324. package/Types/Dashboard/DashboardComponents/DashboardHtmlComponent.ts +27 -0
  325. package/Types/Dashboard/DashboardComponents/DashboardValueComponent.ts +8 -0
  326. package/Types/Dashboard/DashboardTemplates.ts +516 -0
  327. package/Types/Date.ts +6 -0
  328. package/Types/Email/EmailTemplateType.ts +2 -0
  329. package/Types/Kubernetes/KubernetesRightSizing.ts +353 -0
  330. package/Types/MeteredPlan/ProductType.ts +1 -0
  331. package/Types/Monitor/MonitorStepMetricMonitor.ts +27 -1
  332. package/Types/Monitor/MonitorSteps.ts +5 -0
  333. package/Types/Monitor/MonitorSummarySnapshot.ts +88 -0
  334. package/Types/Monitor/Recommendation/MonitorRecommendationCatalog.ts +52 -10
  335. package/Types/Monitor/Recommendation/MonitorRecommendationTypes.ts +7 -5
  336. package/Types/Monitor/Recommendation/MonitorRecommendationUtil.ts +101 -20
  337. package/Types/Monitor/RumAlertTemplates.ts +386 -0
  338. package/Types/Permission.ts +204 -24
  339. package/Types/Rum/SessionReplay.ts +452 -0
  340. package/Types/Rum/SessionReplayCaptureTrigger.ts +26 -0
  341. package/Types/Rum/SessionReplayConsentMode.ts +27 -0
  342. package/Types/Rum/SessionReplayMaskingMode.ts +86 -0
  343. package/Types/Rum/SessionReplayTriggerReason.ts +31 -0
  344. package/Types/Runbook/RunbookCredentialType.ts +6 -0
  345. package/Types/Runbook/RunbookStep.ts +81 -1
  346. package/Types/Runbook/RunbookStepType.ts +26 -0
  347. package/Types/Runbook/RunnerJobOrigin.ts +20 -0
  348. package/Types/Runbook/{RunbookAgentJobStatus.ts → RunnerJobStatus.ts} +2 -2
  349. package/Types/Runner/RunnerLiveStatus.ts +114 -0
  350. package/Types/StatusPage/StatusPageReport.ts +99 -0
  351. package/Types/Telemetry/TelemetryRetentionConfig.ts +18 -1
  352. package/Types/Text.ts +33 -0
  353. package/UI/Components/AutocompleteTextInput/AutocompleteTextInput.tsx +260 -75
  354. package/UI/Components/BulkUpdate/BulkLabelActions.tsx +99 -9
  355. package/UI/Components/BulkUpdate/BulkOwnerActions.tsx +11 -0
  356. package/UI/Components/CustomFields/CustomFieldsDetail.tsx +19 -14
  357. package/UI/Components/CustomFields/DropdownOptionsInput.tsx +144 -54
  358. package/UI/Components/Detail/Detail.tsx +164 -22
  359. package/UI/Components/Dropdown/Dropdown.tsx +2 -5
  360. package/UI/Components/Dropdown/DropdownMenuZIndex.ts +7 -0
  361. package/UI/Components/Dropdown/DropdownValueBadge.tsx +61 -0
  362. package/UI/Components/Filters/OperatorSelector.tsx +350 -39
  363. package/UI/Components/Forms/Fields/ColorPicker.tsx +60 -27
  364. package/UI/Components/Forms/Fields/IconPicker.tsx +89 -60
  365. package/UI/Components/Forms/Validation.ts +9 -4
  366. package/UI/Components/List/List.tsx +1 -0
  367. package/UI/Components/ModelTable/CustomFieldColumns.tsx +41 -32
  368. package/UI/Components/Pagination/Pagination.tsx +33 -10
  369. package/UI/Components/Table/Table.tsx +1 -0
  370. package/UI/Types/UseAnchoredFieldPopup.ts +321 -0
  371. package/UI/Utils/Dropdown.ts +26 -0
  372. package/UI/Utils/Timezone.ts +18 -2
  373. package/UI/Utils/UseClockTick.ts +78 -0
  374. package/Utils/AiRemediation/CommandPolicy.ts +398 -0
  375. package/Utils/Dashboard/ClockWidgetFormat.ts +604 -0
  376. package/Utils/Dashboard/Components/DashboardClockComponent.ts +181 -0
  377. package/Utils/Dashboard/Components/DashboardHtmlComponent.ts +162 -0
  378. package/Utils/Dashboard/Components/DashboardValueComponent.ts +12 -1
  379. package/Utils/Dashboard/Components/Index.ts +14 -0
  380. package/Utils/Dashboard/HtmlWidgetDocument.ts +309 -0
  381. package/Utils/Dashboard/ValueWidgetLayout.ts +471 -0
  382. package/Utils/Metrics/MetricSeriesScope.ts +301 -0
  383. package/Utils/Monitor/MonitorSummarySnapshotUtil.ts +593 -0
  384. package/Utils/NetworkSite/CidrMatchUtil.ts +30 -17
  385. package/Utils/Rules/RulePatternMatchUtil.ts +103 -0
  386. package/Utils/Rum/ChunkMath.ts +211 -0
  387. package/Utils/Rum/Masking.ts +168 -0
  388. package/Utils/Rum/SessionIdentity.ts +230 -0
  389. package/Utils/Rum/SessionSampling.ts +108 -0
  390. package/Utils/Rum/UrlScrubber.ts +185 -0
  391. package/Utils/Schema/ModelSchema.ts +27 -3
  392. package/Utils/StatusPage/Report.ts +304 -0
  393. package/Utils/ValueFormatter.ts +300 -54
  394. package/build/dist/Models/AnalyticsModels/ExceptionInstance.js +63 -0
  395. package/build/dist/Models/AnalyticsModels/ExceptionInstance.js.map +1 -1
  396. package/build/dist/Models/AnalyticsModels/Index.js +10 -0
  397. package/build/dist/Models/AnalyticsModels/Index.js.map +1 -1
  398. package/build/dist/Models/AnalyticsModels/Log.js +56 -0
  399. package/build/dist/Models/AnalyticsModels/Log.js.map +1 -1
  400. package/build/dist/Models/AnalyticsModels/RumSession.js +1159 -0
  401. package/build/dist/Models/AnalyticsModels/RumSession.js.map +1 -0
  402. package/build/dist/Models/AnalyticsModels/RumSessionChunk.js +670 -0
  403. package/build/dist/Models/AnalyticsModels/RumSessionChunk.js.map +1 -0
  404. package/build/dist/Models/AnalyticsModels/Span.js +56 -0
  405. package/build/dist/Models/AnalyticsModels/Span.js.map +1 -1
  406. package/build/dist/Models/DatabaseModels/AIAgentTaskPullRequest.js +54 -0
  407. package/build/dist/Models/DatabaseModels/AIAgentTaskPullRequest.js.map +1 -1
  408. package/build/dist/Models/DatabaseModels/AIRun.js +32 -0
  409. package/build/dist/Models/DatabaseModels/AIRun.js.map +1 -1
  410. package/build/dist/Models/DatabaseModels/Alert.js +30 -0
  411. package/build/dist/Models/DatabaseModels/Alert.js.map +1 -1
  412. package/build/dist/Models/DatabaseModels/AlertCustomField.js +1 -1
  413. package/build/dist/Models/DatabaseModels/AlertCustomField.js.map +1 -1
  414. package/build/dist/Models/DatabaseModels/AlertFeed.js +1 -0
  415. package/build/dist/Models/DatabaseModels/AlertFeed.js.map +1 -1
  416. package/build/dist/Models/DatabaseModels/AutoRemediationRule.js +998 -0
  417. package/build/dist/Models/DatabaseModels/AutoRemediationRule.js.map +1 -0
  418. package/build/dist/Models/DatabaseModels/AutoRemediationSuggestion.js +917 -0
  419. package/build/dist/Models/DatabaseModels/AutoRemediationSuggestion.js.map +1 -0
  420. package/build/dist/Models/DatabaseModels/CodeRepository.js +132 -0
  421. package/build/dist/Models/DatabaseModels/CodeRepository.js.map +1 -1
  422. package/build/dist/Models/DatabaseModels/GlobalConfig.js +327 -0
  423. package/build/dist/Models/DatabaseModels/GlobalConfig.js.map +1 -1
  424. package/build/dist/Models/DatabaseModels/Incident.js +30 -0
  425. package/build/dist/Models/DatabaseModels/Incident.js.map +1 -1
  426. package/build/dist/Models/DatabaseModels/IncidentCustomField.js +1 -1
  427. package/build/dist/Models/DatabaseModels/IncidentCustomField.js.map +1 -1
  428. package/build/dist/Models/DatabaseModels/IncidentFeed.js +1 -0
  429. package/build/dist/Models/DatabaseModels/IncidentFeed.js.map +1 -1
  430. package/build/dist/Models/DatabaseModels/Index.js +20 -8
  431. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  432. package/build/dist/Models/DatabaseModels/InstanceHealthLog.js +8 -0
  433. package/build/dist/Models/DatabaseModels/InstanceHealthLog.js.map +1 -1
  434. package/build/dist/Models/DatabaseModels/MonitorCustomField.js +1 -1
  435. package/build/dist/Models/DatabaseModels/MonitorCustomField.js.map +1 -1
  436. package/build/dist/Models/DatabaseModels/MonitorStatus.js +1 -1
  437. package/build/dist/Models/DatabaseModels/MonitorStatus.js.map +1 -1
  438. package/build/dist/Models/DatabaseModels/NetworkDeviceLabelRule.js +2 -2
  439. package/build/dist/Models/DatabaseModels/NetworkDeviceLabelRule.js.map +1 -1
  440. package/build/dist/Models/DatabaseModels/NetworkDeviceOwnerRule.js +2 -2
  441. package/build/dist/Models/DatabaseModels/NetworkDeviceOwnerRule.js.map +1 -1
  442. package/build/dist/Models/DatabaseModels/NetworkSiteAssignmentRule.js +1 -1
  443. package/build/dist/Models/DatabaseModels/NetworkSiteAssignmentRule.js.map +1 -1
  444. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyCustomField.js +1 -1
  445. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyCustomField.js.map +1 -1
  446. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.js +16 -4
  447. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.js.map +1 -1
  448. package/build/dist/Models/DatabaseModels/Project.js +235 -0
  449. package/build/dist/Models/DatabaseModels/Project.js.map +1 -1
  450. package/build/dist/Models/DatabaseModels/RumApplication.js +930 -0
  451. package/build/dist/Models/DatabaseModels/RumApplication.js.map +1 -1
  452. package/build/dist/Models/DatabaseModels/RumSessionErasureRequest.js +591 -0
  453. package/build/dist/Models/DatabaseModels/RumSessionErasureRequest.js.map +1 -0
  454. package/build/dist/Models/DatabaseModels/RumSessionPin.js +483 -0
  455. package/build/dist/Models/DatabaseModels/RumSessionPin.js.map +1 -0
  456. package/build/dist/Models/DatabaseModels/RumSessionReplayView.js +433 -0
  457. package/build/dist/Models/DatabaseModels/RumSessionReplayView.js.map +1 -0
  458. package/build/dist/Models/DatabaseModels/RunbookCredential.js +693 -0
  459. package/build/dist/Models/DatabaseModels/RunbookCredential.js.map +1 -0
  460. package/build/dist/Models/DatabaseModels/RunbookSecret.js +8 -8
  461. package/build/dist/Models/DatabaseModels/RunbookSecret.js.map +1 -1
  462. package/build/dist/Models/DatabaseModels/{RunbookAgent.js → Runner.js} +235 -70
  463. package/build/dist/Models/DatabaseModels/Runner.js.map +1 -0
  464. package/build/dist/Models/DatabaseModels/{RunbookAgentJob.js → RunnerJob.js} +173 -40
  465. package/build/dist/Models/DatabaseModels/RunnerJob.js.map +1 -0
  466. package/build/dist/Models/DatabaseModels/{RunbookAgentOwnerTeam.js → RunnerOwnerTeam.js} +57 -57
  467. package/build/dist/Models/DatabaseModels/RunnerOwnerTeam.js.map +1 -0
  468. package/build/dist/Models/DatabaseModels/{RunbookAgentOwnerUser.js → RunnerOwnerUser.js} +57 -57
  469. package/build/dist/Models/DatabaseModels/RunnerOwnerUser.js.map +1 -0
  470. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceCustomField.js +1 -1
  471. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceCustomField.js.map +1 -1
  472. package/build/dist/Models/DatabaseModels/StatusPageCustomField.js +1 -1
  473. package/build/dist/Models/DatabaseModels/StatusPageCustomField.js.map +1 -1
  474. package/build/dist/Models/DatabaseModels/TeamCustomField.js +1 -1
  475. package/build/dist/Models/DatabaseModels/TeamCustomField.js.map +1 -1
  476. package/build/dist/Models/DatabaseModels/TeamMemberCustomField.js +1 -1
  477. package/build/dist/Models/DatabaseModels/TeamMemberCustomField.js.map +1 -1
  478. package/build/dist/Server/API/AIAgentDataAPI.js +130 -45
  479. package/build/dist/Server/API/AIAgentDataAPI.js.map +1 -1
  480. package/build/dist/Server/API/AIAgentTaskAPI.js +26 -36
  481. package/build/dist/Server/API/AIAgentTaskAPI.js.map +1 -1
  482. package/build/dist/Server/API/AIAgentTaskLogAPI.js +11 -28
  483. package/build/dist/Server/API/AIAgentTaskLogAPI.js.map +1 -1
  484. package/build/dist/Server/API/AutoRemediationAPI.js +416 -0
  485. package/build/dist/Server/API/AutoRemediationAPI.js.map +1 -0
  486. package/build/dist/Server/API/BaseAnalyticsAPI.js +4 -1
  487. package/build/dist/Server/API/BaseAnalyticsAPI.js.map +1 -1
  488. package/build/dist/Server/API/CommonAPI.js +24 -0
  489. package/build/dist/Server/API/CommonAPI.js.map +1 -1
  490. package/build/dist/Server/API/DashboardAPI.js +265 -6
  491. package/build/dist/Server/API/DashboardAPI.js.map +1 -1
  492. package/build/dist/Server/API/TelemetryAPI.js +940 -3
  493. package/build/dist/Server/API/TelemetryAPI.js.map +1 -1
  494. package/build/dist/Server/API/UserIncomingCallNumberAPI.js +18 -0
  495. package/build/dist/Server/API/UserIncomingCallNumberAPI.js.map +1 -1
  496. package/build/dist/Server/DatabaseConfig.js +23 -4
  497. package/build/dist/Server/DatabaseConfig.js.map +1 -1
  498. package/build/dist/Server/EnvironmentConfig.js +8 -0
  499. package/build/dist/Server/EnvironmentConfig.js.map +1 -1
  500. package/build/dist/Server/Infrastructure/Postgres/LocalMigrationGenerationDataSource.js +11 -1
  501. package/build/dist/Server/Infrastructure/Postgres/LocalMigrationGenerationDataSource.js.map +1 -1
  502. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785417351021-AddSessionReplay.js +106 -0
  503. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785417351021-AddSessionReplay.js.map +1 -0
  504. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785491583874-EnableSessionReplayByDefault.js +37 -0
  505. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785491583874-EnableSessionReplayByDefault.js.map +1 -0
  506. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785496223183-AddMonitorSummaryToIncidentAndAlert.js +18 -0
  507. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785496223183-AddMonitorSummaryToIncidentAndAlert.js.map +1 -0
  508. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785516996695-AddSessionReplayReliabilityColumns.js +29 -0
  509. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785516996695-AddSessionReplayReliabilityColumns.js.map +1 -0
  510. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785533806494-AddSessionReplayCorrelationColumns.js +35 -0
  511. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785533806494-AddSessionReplayCorrelationColumns.js.map +1 -0
  512. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785749674203-AddRedisAndPostgresHealthNotificationColumns.js +40 -0
  513. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785749674203-AddRedisAndPostgresHealthNotificationColumns.js.map +1 -0
  514. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785763818197-AddAutoRemediation.js +128 -0
  515. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785763818197-AddAutoRemediation.js.map +1 -0
  516. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785768089408-AddRemediationVerification.js +28 -0
  517. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785768089408-AddRemediationVerification.js.map +1 -0
  518. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785776960660-AddRunnerCapabilities.js +14 -0
  519. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785776960660-AddRunnerCapabilities.js.map +1 -0
  520. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785790000000-AddIncidentInvestigationGating.js +27 -0
  521. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785790000000-AddIncidentInvestigationGating.js.map +1 -0
  522. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785800000000-AddRunbookCredential.js +44 -0
  523. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785800000000-AddRunbookCredential.js.map +1 -0
  524. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785810000000-RenameRunbookAgentToRunner.js +88 -0
  525. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785810000000-RenameRunbookAgentToRunner.js.map +1 -0
  526. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785860000000-SessionReplayDefaultToSensitiveInputMasking.js +59 -0
  527. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785860000000-SessionReplayDefaultToSensitiveInputMasking.js.map +1 -0
  528. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785870000000-AddAiCommandRemediation.js +76 -0
  529. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785870000000-AddAiCommandRemediation.js.map +1 -0
  530. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785880000000-AlignRunnerSchemaWithEntities.js +214 -0
  531. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785880000000-AlignRunnerSchemaWithEntities.js.map +1 -0
  532. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785890000000-AddFixVerificationAndAutomaticCodeFixes.js +44 -0
  533. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1785890000000-AddFixVerificationAndAutomaticCodeFixes.js.map +1 -0
  534. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +32 -0
  535. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  536. package/build/dist/Server/Services/AIRunService.js +1 -4
  537. package/build/dist/Server/Services/AIRunService.js.map +1 -1
  538. package/build/dist/Server/Services/AIService.js +26 -0
  539. package/build/dist/Server/Services/AIService.js.map +1 -1
  540. package/build/dist/Server/Services/AlertService.js +37 -4
  541. package/build/dist/Server/Services/AlertService.js.map +1 -1
  542. package/build/dist/Server/Services/AlertSeverityService.js +24 -11
  543. package/build/dist/Server/Services/AlertSeverityService.js.map +1 -1
  544. package/build/dist/Server/Services/AlertStateService.js +24 -11
  545. package/build/dist/Server/Services/AlertStateService.js.map +1 -1
  546. package/build/dist/Server/Services/AutoRemediationRuleEngineService.js +917 -0
  547. package/build/dist/Server/Services/AutoRemediationRuleEngineService.js.map +1 -0
  548. package/build/dist/Server/Services/{RunbookAgentOwnerTeamService.js → AutoRemediationRuleService.js} +2 -2
  549. package/build/dist/Server/Services/AutoRemediationRuleService.js.map +1 -0
  550. package/build/dist/Server/Services/AutoRemediationSuggestionService.js +127 -0
  551. package/build/dist/Server/Services/AutoRemediationSuggestionService.js.map +1 -0
  552. package/build/dist/Server/Services/BillingService.js +45 -1
  553. package/build/dist/Server/Services/BillingService.js.map +1 -1
  554. package/build/dist/Server/Services/DatabaseService.js +72 -4
  555. package/build/dist/Server/Services/DatabaseService.js.map +1 -1
  556. package/build/dist/Server/Services/IncidentService.js +52 -4
  557. package/build/dist/Server/Services/IncidentService.js.map +1 -1
  558. package/build/dist/Server/Services/IncidentSeverityService.js +24 -11
  559. package/build/dist/Server/Services/IncidentSeverityService.js.map +1 -1
  560. package/build/dist/Server/Services/IncidentStateService.js +24 -11
  561. package/build/dist/Server/Services/IncidentStateService.js.map +1 -1
  562. package/build/dist/Server/Services/Index.js +18 -0
  563. package/build/dist/Server/Services/Index.js.map +1 -1
  564. package/build/dist/Server/Services/LlmProviderService.js +61 -8
  565. package/build/dist/Server/Services/LlmProviderService.js.map +1 -1
  566. package/build/dist/Server/Services/MonitorService.js +24 -0
  567. package/build/dist/Server/Services/MonitorService.js.map +1 -1
  568. package/build/dist/Server/Services/MonitorStatusService.js +25 -11
  569. package/build/dist/Server/Services/MonitorStatusService.js.map +1 -1
  570. package/build/dist/Server/Services/NetworkDeviceLabelRuleEngineService.js +12 -11
  571. package/build/dist/Server/Services/NetworkDeviceLabelRuleEngineService.js.map +1 -1
  572. package/build/dist/Server/Services/NetworkDeviceLabelRuleService.js +43 -0
  573. package/build/dist/Server/Services/NetworkDeviceLabelRuleService.js.map +1 -1
  574. package/build/dist/Server/Services/NetworkDeviceOwnerRuleEngineService.js +12 -11
  575. package/build/dist/Server/Services/NetworkDeviceOwnerRuleEngineService.js.map +1 -1
  576. package/build/dist/Server/Services/NetworkDeviceOwnerRuleService.js +41 -0
  577. package/build/dist/Server/Services/NetworkDeviceOwnerRuleService.js.map +1 -1
  578. package/build/dist/Server/Services/NetworkDeviceService.js +129 -20
  579. package/build/dist/Server/Services/NetworkDeviceService.js.map +1 -1
  580. package/build/dist/Server/Services/NetworkSiteAssignmentRuleService.js +67 -10
  581. package/build/dist/Server/Services/NetworkSiteAssignmentRuleService.js.map +1 -1
  582. package/build/dist/Server/Services/NetworkSiteService.js +19 -8
  583. package/build/dist/Server/Services/NetworkSiteService.js.map +1 -1
  584. package/build/dist/Server/Services/ProjectService.js +43 -0
  585. package/build/dist/Server/Services/ProjectService.js.map +1 -1
  586. package/build/dist/Server/Services/RumApplicationService.js +202 -0
  587. package/build/dist/Server/Services/RumApplicationService.js.map +1 -1
  588. package/build/dist/Server/Services/RumSessionChunkService.js +9 -0
  589. package/build/dist/Server/Services/RumSessionChunkService.js.map +1 -0
  590. package/build/dist/Server/Services/RumSessionErasureRequestService.js +190 -0
  591. package/build/dist/Server/Services/RumSessionErasureRequestService.js.map +1 -0
  592. package/build/dist/Server/Services/RumSessionPinService.js +208 -0
  593. package/build/dist/Server/Services/RumSessionPinService.js.map +1 -0
  594. package/build/dist/Server/Services/RumSessionReplayViewService.js +180 -0
  595. package/build/dist/Server/Services/RumSessionReplayViewService.js.map +1 -0
  596. package/build/dist/Server/Services/RumSessionService.js +102 -0
  597. package/build/dist/Server/Services/RumSessionService.js.map +1 -0
  598. package/build/dist/Server/Services/RunbookCredentialService.js +67 -0
  599. package/build/dist/Server/Services/RunbookCredentialService.js.map +1 -0
  600. package/build/dist/Server/Services/{RunbookAgentJobService.js → RunnerJobService.js} +158 -46
  601. package/build/dist/Server/Services/RunnerJobService.js.map +1 -0
  602. package/build/dist/Server/Services/{RunbookAgentOwnerUserService.js → RunnerOwnerTeamService.js} +2 -2
  603. package/build/dist/Server/Services/RunnerOwnerTeamService.js.map +1 -0
  604. package/build/dist/Server/Services/RunnerOwnerUserService.js +9 -0
  605. package/build/dist/Server/Services/RunnerOwnerUserService.js.map +1 -0
  606. package/build/dist/Server/Services/RunnerService.js +163 -0
  607. package/build/dist/Server/Services/RunnerService.js.map +1 -0
  608. package/build/dist/Server/Services/ScheduledMaintenanceStateService.js +24 -11
  609. package/build/dist/Server/Services/ScheduledMaintenanceStateService.js.map +1 -1
  610. package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js +15 -1
  611. package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js.map +1 -1
  612. package/build/dist/Server/Services/ServiceService.js +8 -2
  613. package/build/dist/Server/Services/ServiceService.js.map +1 -1
  614. package/build/dist/Server/Services/StatusPageService.js +173 -16
  615. package/build/dist/Server/Services/StatusPageService.js.map +1 -1
  616. package/build/dist/Server/Services/StatusPageSubscriberNotificationTemplateService.js +17 -1
  617. package/build/dist/Server/Services/StatusPageSubscriberNotificationTemplateService.js.map +1 -1
  618. package/build/dist/Server/Services/TelemetryExceptionService.js +3 -16
  619. package/build/dist/Server/Services/TelemetryExceptionService.js.map +1 -1
  620. package/build/dist/Server/Services/TelemetryUsageBillingService.js +31 -3
  621. package/build/dist/Server/Services/TelemetryUsageBillingService.js.map +1 -1
  622. package/build/dist/Server/Services/TraceAggregationService.js +106 -2
  623. package/build/dist/Server/Services/TraceAggregationService.js.map +1 -1
  624. package/build/dist/Server/Types/Billing/MeteredPlan/AllMeteredPlans.js +16 -0
  625. package/build/dist/Server/Types/Billing/MeteredPlan/AllMeteredPlans.js.map +1 -1
  626. package/build/dist/Server/Types/Billing/MeteredPlan/ServerMeteredPlan.js +9 -0
  627. package/build/dist/Server/Types/Billing/MeteredPlan/ServerMeteredPlan.js.map +1 -1
  628. package/build/dist/Server/Utils/AI/Chat/ObservabilityAssistant.js +38 -6
  629. package/build/dist/Server/Utils/AI/Chat/ObservabilityAssistant.js.map +1 -1
  630. package/build/dist/Server/Utils/AI/CodeFix/CodeFixAgentAuth.js +104 -0
  631. package/build/dist/Server/Utils/AI/CodeFix/CodeFixAgentAuth.js.map +1 -0
  632. package/build/dist/Server/Utils/AI/CodeFix/CodeFixAgentAvailability.js +54 -0
  633. package/build/dist/Server/Utils/AI/CodeFix/CodeFixAgentAvailability.js.map +1 -0
  634. package/build/dist/Server/Utils/AI/CodeFix/CodeFixReadiness.js +11 -7
  635. package/build/dist/Server/Utils/AI/CodeFix/CodeFixReadiness.js.map +1 -1
  636. package/build/dist/Server/Utils/AI/CodeFix/CodeFixRunQueue.js +3 -4
  637. package/build/dist/Server/Utils/AI/CodeFix/CodeFixRunQueue.js.map +1 -1
  638. package/build/dist/Server/Utils/AI/Remediation/RemediationCommandTools.js +724 -0
  639. package/build/dist/Server/Utils/AI/Remediation/RemediationCommandTools.js.map +1 -0
  640. package/build/dist/Server/Utils/AI/Remediation/RemediationExecutionRunner.js +668 -0
  641. package/build/dist/Server/Utils/AI/Remediation/RemediationExecutionRunner.js.map +1 -0
  642. package/build/dist/Server/Utils/AI/Remediation/RemediationPlanRunner.js +657 -0
  643. package/build/dist/Server/Utils/AI/Remediation/RemediationPlanRunner.js.map +1 -0
  644. package/build/dist/Server/Utils/AI/SRE/AIInvestigationEngine.js +52 -7
  645. package/build/dist/Server/Utils/AI/SRE/AIInvestigationEngine.js.map +1 -1
  646. package/build/dist/Server/Utils/AI/SRE/AlertInvestigationRunner.js +53 -5
  647. package/build/dist/Server/Utils/AI/SRE/AlertInvestigationRunner.js.map +1 -1
  648. package/build/dist/Server/Utils/AI/SRE/ConfidenceSignal.js +25 -6
  649. package/build/dist/Server/Utils/AI/SRE/ConfidenceSignal.js.map +1 -1
  650. package/build/dist/Server/Utils/AI/SRE/FixFromIncidentTaskTrigger.js +131 -17
  651. package/build/dist/Server/Utils/AI/SRE/FixFromIncidentTaskTrigger.js.map +1 -1
  652. package/build/dist/Server/Utils/AI/SRE/IncidentInvestigationRunner.js +200 -5
  653. package/build/dist/Server/Utils/AI/SRE/IncidentInvestigationRunner.js.map +1 -1
  654. package/build/dist/Server/Utils/AI/SRE/Insights/Triage.js +2 -7
  655. package/build/dist/Server/Utils/AI/SRE/Insights/Triage.js.map +1 -1
  656. package/build/dist/Server/Utils/AI/SRE/InvestigationGrader.js +4 -17
  657. package/build/dist/Server/Utils/AI/SRE/InvestigationGrader.js.map +1 -1
  658. package/build/dist/Server/Utils/AI/SRE/InvestigationQueue.js +203 -19
  659. package/build/dist/Server/Utils/AI/SRE/InvestigationQueue.js.map +1 -1
  660. package/build/dist/Server/Utils/AI/SRE/PostedRootCause.js +89 -0
  661. package/build/dist/Server/Utils/AI/SRE/PostedRootCause.js.map +1 -0
  662. package/build/dist/Server/Utils/AI/SRE/RemediationHandoff.js +82 -0
  663. package/build/dist/Server/Utils/AI/SRE/RemediationHandoff.js.map +1 -0
  664. package/build/dist/Server/Utils/AI/SRE/SubjectCodeFixRun.js +4 -19
  665. package/build/dist/Server/Utils/AI/SRE/SubjectCodeFixRun.js.map +1 -1
  666. package/build/dist/Server/Utils/AI/Toolbox/CodeWriteTools.js +2 -2
  667. package/build/dist/Server/Utils/Alert/AlertPrivacyFilter.js +36 -0
  668. package/build/dist/Server/Utils/Alert/AlertPrivacyFilter.js.map +1 -1
  669. package/build/dist/Server/Utils/AutoRemediation/CommandPlanExecutor.js +498 -0
  670. package/build/dist/Server/Utils/AutoRemediation/CommandPlanExecutor.js.map +1 -0
  671. package/build/dist/Server/Utils/AutoRemediation/RemediationVerifier.js +492 -0
  672. package/build/dist/Server/Utils/AutoRemediation/RemediationVerifier.js.map +1 -0
  673. package/build/dist/Server/Utils/CorsOptions.js +47 -0
  674. package/build/dist/Server/Utils/CorsOptions.js.map +1 -0
  675. package/build/dist/Server/Utils/Database/RelationIdUtil.js +51 -0
  676. package/build/dist/Server/Utils/Database/RelationIdUtil.js.map +1 -0
  677. package/build/dist/Server/Utils/Incident/IncidentPrivacyFilter.js +38 -0
  678. package/build/dist/Server/Utils/Incident/IncidentPrivacyFilter.js.map +1 -1
  679. package/build/dist/Server/Utils/InstanceHealth/PostgresHealth.js +194 -0
  680. package/build/dist/Server/Utils/InstanceHealth/PostgresHealth.js.map +1 -0
  681. package/build/dist/Server/Utils/InstanceHealth/RedisHealth.js +292 -0
  682. package/build/dist/Server/Utils/InstanceHealth/RedisHealth.js.map +1 -0
  683. package/build/dist/Server/Utils/Monitor/Criteria/CompareCriteria.js +11 -0
  684. package/build/dist/Server/Utils/Monitor/Criteria/CompareCriteria.js.map +1 -1
  685. package/build/dist/Server/Utils/Monitor/MonitorAlert.js +9 -0
  686. package/build/dist/Server/Utils/Monitor/MonitorAlert.js.map +1 -1
  687. package/build/dist/Server/Utils/Monitor/MonitorIncident.js +9 -0
  688. package/build/dist/Server/Utils/Monitor/MonitorIncident.js.map +1 -1
  689. package/build/dist/Server/Utils/Monitor/MonitorResource.js +16 -0
  690. package/build/dist/Server/Utils/Monitor/MonitorResource.js.map +1 -1
  691. package/build/dist/Server/Utils/Monitor/MonitorSummaryCapture.js +92 -0
  692. package/build/dist/Server/Utils/Monitor/MonitorSummaryCapture.js.map +1 -0
  693. package/build/dist/Server/Utils/NetworkDevice/RulePatternValidator.js +27 -0
  694. package/build/dist/Server/Utils/NetworkDevice/RulePatternValidator.js.map +1 -0
  695. package/build/dist/Server/Utils/OpenAPI.js +2 -1
  696. package/build/dist/Server/Utils/OpenAPI.js.map +1 -1
  697. package/build/dist/Server/Utils/Runbook/RunbookExecutePermission.js +67 -0
  698. package/build/dist/Server/Utils/Runbook/RunbookExecutePermission.js.map +1 -0
  699. package/build/dist/Server/Utils/SessionReplay/SessionReplayErasureTombstone.js +98 -0
  700. package/build/dist/Server/Utils/SessionReplay/SessionReplayErasureTombstone.js.map +1 -0
  701. package/build/dist/Server/Utils/SessionReplay/SessionReplayGateCache.js +378 -0
  702. package/build/dist/Server/Utils/SessionReplay/SessionReplayGateCache.js.map +1 -0
  703. package/build/dist/Server/Utils/SessionReplay/SessionReplayGateCacheStore.js +137 -0
  704. package/build/dist/Server/Utils/SessionReplay/SessionReplayGateCacheStore.js.map +1 -0
  705. package/build/dist/Server/Utils/SessionReplay/SessionReplayReadService.js +998 -0
  706. package/build/dist/Server/Utils/SessionReplay/SessionReplayReadService.js.map +1 -0
  707. package/build/dist/Server/Utils/SessionReplay/SessionReplayRetention.js +59 -0
  708. package/build/dist/Server/Utils/SessionReplay/SessionReplayRetention.js.map +1 -0
  709. package/build/dist/Server/Utils/SessionReplay/SessionReplayTargeting.js +98 -0
  710. package/build/dist/Server/Utils/SessionReplay/SessionReplayTargeting.js.map +1 -0
  711. package/build/dist/Server/Utils/SessionReplay/SessionReplayUsage.js +69 -0
  712. package/build/dist/Server/Utils/SessionReplay/SessionReplayUsage.js.map +1 -0
  713. package/build/dist/Server/Utils/StartServer.js +40 -3
  714. package/build/dist/Server/Utils/StartServer.js.map +1 -1
  715. package/build/dist/Server/Utils/Telemetry/TelemetryFanInWriter.js +27 -6
  716. package/build/dist/Server/Utils/Telemetry/TelemetryFanInWriter.js.map +1 -1
  717. package/build/dist/Types/AI/AIRunStatus.js +17 -5
  718. package/build/dist/Types/AI/AIRunStatus.js.map +1 -1
  719. package/build/dist/Types/AI/AIRunType.js +18 -0
  720. package/build/dist/Types/AI/AIRunType.js.map +1 -1
  721. package/build/dist/Types/AI/FixVerificationStatus.js +22 -0
  722. package/build/dist/Types/AI/FixVerificationStatus.js.map +1 -0
  723. package/build/dist/Types/AnalyticsDatabase/AnalyticsTableName.js +16 -0
  724. package/build/dist/Types/AnalyticsDatabase/AnalyticsTableName.js.map +1 -1
  725. package/build/dist/Types/AutoRemediation/AiRemediationCommandPlan.js +192 -0
  726. package/build/dist/Types/AutoRemediation/AiRemediationCommandPlan.js.map +1 -0
  727. package/build/dist/Types/AutoRemediation/AutoRemediationExecutionMode.js +18 -0
  728. package/build/dist/Types/AutoRemediation/AutoRemediationExecutionMode.js.map +1 -0
  729. package/build/dist/Types/AutoRemediation/AutoRemediationSuggestionStatus.js +31 -0
  730. package/build/dist/Types/AutoRemediation/AutoRemediationSuggestionStatus.js.map +1 -0
  731. package/build/dist/Types/AutoRemediation/AutoRemediationSuggestionType.js +18 -0
  732. package/build/dist/Types/AutoRemediation/AutoRemediationSuggestionType.js.map +1 -0
  733. package/build/dist/Types/AutoRemediation/AutoRemediationTriggerEntity.js +12 -0
  734. package/build/dist/Types/AutoRemediation/AutoRemediationTriggerEntity.js.map +1 -0
  735. package/build/dist/Types/AutoRemediation/AutoRemediationVerificationStatus.js +22 -0
  736. package/build/dist/Types/AutoRemediation/AutoRemediationVerificationStatus.js.map +1 -0
  737. package/build/dist/Types/CustomField/CustomFieldDropdownOption.js +110 -0
  738. package/build/dist/Types/CustomField/CustomFieldDropdownOption.js.map +1 -0
  739. package/build/dist/Types/Dashboard/DashboardComponentType.js +2 -0
  740. package/build/dist/Types/Dashboard/DashboardComponentType.js.map +1 -1
  741. package/build/dist/Types/Dashboard/DashboardComponents/ComponentArgument.js +4 -0
  742. package/build/dist/Types/Dashboard/DashboardComponents/ComponentArgument.js.map +1 -1
  743. package/build/dist/Types/Dashboard/DashboardComponents/DashboardClockComponent.js +19 -0
  744. package/build/dist/Types/Dashboard/DashboardComponents/DashboardClockComponent.js.map +1 -0
  745. package/build/dist/Types/Dashboard/DashboardComponents/DashboardHtmlComponent.js +2 -0
  746. package/build/dist/Types/Dashboard/DashboardComponents/DashboardHtmlComponent.js.map +1 -0
  747. package/build/dist/Types/Dashboard/DashboardTemplates.js +487 -0
  748. package/build/dist/Types/Dashboard/DashboardTemplates.js.map +1 -1
  749. package/build/dist/Types/Date.js +6 -0
  750. package/build/dist/Types/Date.js.map +1 -1
  751. package/build/dist/Types/Email/EmailTemplateType.js +2 -0
  752. package/build/dist/Types/Email/EmailTemplateType.js.map +1 -1
  753. package/build/dist/Types/Kubernetes/KubernetesRightSizing.js +229 -0
  754. package/build/dist/Types/Kubernetes/KubernetesRightSizing.js.map +1 -0
  755. package/build/dist/Types/MeteredPlan/ProductType.js +1 -0
  756. package/build/dist/Types/MeteredPlan/ProductType.js.map +1 -1
  757. package/build/dist/Types/Monitor/MonitorStepMetricMonitor.js +12 -2
  758. package/build/dist/Types/Monitor/MonitorStepMetricMonitor.js.map +1 -1
  759. package/build/dist/Types/Monitor/MonitorSteps.js +5 -0
  760. package/build/dist/Types/Monitor/MonitorSteps.js.map +1 -1
  761. package/build/dist/Types/Monitor/MonitorSummarySnapshot.js +13 -0
  762. package/build/dist/Types/Monitor/MonitorSummarySnapshot.js.map +1 -0
  763. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationCatalog.js +40 -8
  764. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationCatalog.js.map +1 -1
  765. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationTypes.js +4 -3
  766. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationTypes.js.map +1 -1
  767. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationUtil.js +50 -10
  768. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationUtil.js.map +1 -1
  769. package/build/dist/Types/Monitor/RumAlertTemplates.js +297 -0
  770. package/build/dist/Types/Monitor/RumAlertTemplates.js.map +1 -0
  771. package/build/dist/Types/Permission.js +184 -24
  772. package/build/dist/Types/Permission.js.map +1 -1
  773. package/build/dist/Types/Rum/SessionReplay.js +155 -0
  774. package/build/dist/Types/Rum/SessionReplay.js.map +1 -0
  775. package/build/dist/Types/Rum/SessionReplayCaptureTrigger.js +26 -0
  776. package/build/dist/Types/Rum/SessionReplayCaptureTrigger.js.map +1 -0
  777. package/build/dist/Types/Rum/SessionReplayConsentMode.js +27 -0
  778. package/build/dist/Types/Rum/SessionReplayConsentMode.js.map +1 -0
  779. package/build/dist/Types/Rum/SessionReplayMaskingMode.js +79 -0
  780. package/build/dist/Types/Rum/SessionReplayMaskingMode.js.map +1 -0
  781. package/build/dist/Types/Rum/SessionReplayTriggerReason.js +28 -0
  782. package/build/dist/Types/Rum/SessionReplayTriggerReason.js.map +1 -0
  783. package/build/dist/Types/Runbook/RunbookCredentialType.js +7 -0
  784. package/build/dist/Types/Runbook/RunbookCredentialType.js.map +1 -0
  785. package/build/dist/Types/Runbook/RunbookStep.js +20 -1
  786. package/build/dist/Types/Runbook/RunbookStep.js.map +1 -1
  787. package/build/dist/Types/Runbook/RunbookStepType.js +24 -0
  788. package/build/dist/Types/Runbook/RunbookStepType.js.map +1 -1
  789. package/build/dist/Types/Runbook/RunnerJobOrigin.js +21 -0
  790. package/build/dist/Types/Runbook/RunnerJobOrigin.js.map +1 -0
  791. package/build/dist/Types/Runbook/RunnerJobStatus.js +22 -0
  792. package/build/dist/Types/Runbook/RunnerJobStatus.js.map +1 -0
  793. package/build/dist/Types/Runner/RunnerLiveStatus.js +69 -0
  794. package/build/dist/Types/Runner/RunnerLiveStatus.js.map +1 -0
  795. package/build/dist/Types/StatusPage/StatusPageReport.js +22 -0
  796. package/build/dist/Types/StatusPage/StatusPageReport.js.map +1 -0
  797. package/build/dist/Types/Telemetry/TelemetryRetentionConfig.js.map +1 -1
  798. package/build/dist/Types/Text.js +29 -0
  799. package/build/dist/Types/Text.js.map +1 -1
  800. package/build/dist/UI/Components/AutocompleteTextInput/AutocompleteTextInput.js +143 -28
  801. package/build/dist/UI/Components/AutocompleteTextInput/AutocompleteTextInput.js.map +1 -1
  802. package/build/dist/UI/Components/BulkUpdate/BulkLabelActions.js +82 -9
  803. package/build/dist/UI/Components/BulkUpdate/BulkLabelActions.js.map +1 -1
  804. package/build/dist/UI/Components/BulkUpdate/BulkOwnerActions.js +11 -0
  805. package/build/dist/UI/Components/BulkUpdate/BulkOwnerActions.js.map +1 -1
  806. package/build/dist/UI/Components/CustomFields/CustomFieldsDetail.js +11 -13
  807. package/build/dist/UI/Components/CustomFields/CustomFieldsDetail.js.map +1 -1
  808. package/build/dist/UI/Components/CustomFields/DropdownOptionsInput.js +76 -45
  809. package/build/dist/UI/Components/CustomFields/DropdownOptionsInput.js.map +1 -1
  810. package/build/dist/UI/Components/Detail/Detail.js +100 -8
  811. package/build/dist/UI/Components/Detail/Detail.js.map +1 -1
  812. package/build/dist/UI/Components/Dropdown/Dropdown.js +2 -5
  813. package/build/dist/UI/Components/Dropdown/Dropdown.js.map +1 -1
  814. package/build/dist/UI/Components/Dropdown/DropdownMenuZIndex.js +7 -0
  815. package/build/dist/UI/Components/Dropdown/DropdownMenuZIndex.js.map +1 -0
  816. package/build/dist/UI/Components/Dropdown/DropdownValueBadge.js +32 -0
  817. package/build/dist/UI/Components/Dropdown/DropdownValueBadge.js.map +1 -0
  818. package/build/dist/UI/Components/Filters/OperatorSelector.js +210 -20
  819. package/build/dist/UI/Components/Filters/OperatorSelector.js.map +1 -1
  820. package/build/dist/UI/Components/Forms/Fields/ColorPicker.js +26 -10
  821. package/build/dist/UI/Components/Forms/Fields/ColorPicker.js.map +1 -1
  822. package/build/dist/UI/Components/Forms/Fields/IconPicker.js +28 -13
  823. package/build/dist/UI/Components/Forms/Fields/IconPicker.js.map +1 -1
  824. package/build/dist/UI/Components/Forms/Validation.js +9 -5
  825. package/build/dist/UI/Components/Forms/Validation.js.map +1 -1
  826. package/build/dist/UI/Components/List/List.js +1 -1
  827. package/build/dist/UI/Components/List/List.js.map +1 -1
  828. package/build/dist/UI/Components/ModelTable/CustomFieldColumns.js +21 -19
  829. package/build/dist/UI/Components/ModelTable/CustomFieldColumns.js.map +1 -1
  830. package/build/dist/UI/Components/Pagination/Pagination.js +14 -3
  831. package/build/dist/UI/Components/Pagination/Pagination.js.map +1 -1
  832. package/build/dist/UI/Components/Table/Table.js +1 -1
  833. package/build/dist/UI/Components/Table/Table.js.map +1 -1
  834. package/build/dist/UI/Types/UseAnchoredFieldPopup.js +197 -0
  835. package/build/dist/UI/Types/UseAnchoredFieldPopup.js.map +1 -0
  836. package/build/dist/UI/Utils/Dropdown.js +18 -0
  837. package/build/dist/UI/Utils/Dropdown.js.map +1 -1
  838. package/build/dist/UI/Utils/Timezone.js +13 -2
  839. package/build/dist/UI/Utils/Timezone.js.map +1 -1
  840. package/build/dist/UI/Utils/UseClockTick.js +41 -0
  841. package/build/dist/UI/Utils/UseClockTick.js.map +1 -0
  842. package/build/dist/Utils/AiRemediation/CommandPolicy.js +303 -0
  843. package/build/dist/Utils/AiRemediation/CommandPolicy.js.map +1 -0
  844. package/build/dist/Utils/Dashboard/ClockWidgetFormat.js +232 -0
  845. package/build/dist/Utils/Dashboard/ClockWidgetFormat.js.map +1 -0
  846. package/build/dist/Utils/Dashboard/Components/DashboardClockComponent.js +146 -0
  847. package/build/dist/Utils/Dashboard/Components/DashboardClockComponent.js.map +1 -0
  848. package/build/dist/Utils/Dashboard/Components/DashboardHtmlComponent.js +133 -0
  849. package/build/dist/Utils/Dashboard/Components/DashboardHtmlComponent.js.map +1 -0
  850. package/build/dist/Utils/Dashboard/Components/DashboardValueComponent.js +10 -1
  851. package/build/dist/Utils/Dashboard/Components/DashboardValueComponent.js.map +1 -1
  852. package/build/dist/Utils/Dashboard/Components/Index.js +8 -0
  853. package/build/dist/Utils/Dashboard/Components/Index.js.map +1 -1
  854. package/build/dist/Utils/Dashboard/HtmlWidgetDocument.js +198 -0
  855. package/build/dist/Utils/Dashboard/HtmlWidgetDocument.js.map +1 -0
  856. package/build/dist/Utils/Dashboard/ValueWidgetLayout.js +276 -0
  857. package/build/dist/Utils/Dashboard/ValueWidgetLayout.js.map +1 -0
  858. package/build/dist/Utils/Metrics/MetricSeriesScope.js +203 -0
  859. package/build/dist/Utils/Metrics/MetricSeriesScope.js.map +1 -0
  860. package/build/dist/Utils/Monitor/MonitorSummarySnapshotUtil.js +382 -0
  861. package/build/dist/Utils/Monitor/MonitorSummarySnapshotUtil.js.map +1 -0
  862. package/build/dist/Utils/NetworkSite/CidrMatchUtil.js +13 -7
  863. package/build/dist/Utils/NetworkSite/CidrMatchUtil.js.map +1 -1
  864. package/build/dist/Utils/Rules/RulePatternMatchUtil.js +87 -0
  865. package/build/dist/Utils/Rules/RulePatternMatchUtil.js.map +1 -0
  866. package/build/dist/Utils/Rum/ChunkMath.js +147 -0
  867. package/build/dist/Utils/Rum/ChunkMath.js.map +1 -0
  868. package/build/dist/Utils/Rum/Masking.js +143 -0
  869. package/build/dist/Utils/Rum/Masking.js.map +1 -0
  870. package/build/dist/Utils/Rum/SessionIdentity.js +161 -0
  871. package/build/dist/Utils/Rum/SessionIdentity.js.map +1 -0
  872. package/build/dist/Utils/Rum/SessionSampling.js +91 -0
  873. package/build/dist/Utils/Rum/SessionSampling.js.map +1 -0
  874. package/build/dist/Utils/Rum/UrlScrubber.js +144 -0
  875. package/build/dist/Utils/Rum/UrlScrubber.js.map +1 -0
  876. package/build/dist/Utils/Schema/ModelSchema.js +28 -3
  877. package/build/dist/Utils/Schema/ModelSchema.js.map +1 -1
  878. package/build/dist/Utils/StatusPage/Report.js +194 -0
  879. package/build/dist/Utils/StatusPage/Report.js.map +1 -0
  880. package/build/dist/Utils/ValueFormatter.js +239 -46
  881. package/build/dist/Utils/ValueFormatter.js.map +1 -1
  882. package/jest.config.json +3 -0
  883. package/package.json +1 -1
  884. package/tsconfig.json +19 -1
  885. package/Server/Services/RunbookAgentService.ts +0 -93
  886. package/build/dist/Models/DatabaseModels/RunbookAgent.js.map +0 -1
  887. package/build/dist/Models/DatabaseModels/RunbookAgentJob.js.map +0 -1
  888. package/build/dist/Models/DatabaseModels/RunbookAgentOwnerTeam.js.map +0 -1
  889. package/build/dist/Models/DatabaseModels/RunbookAgentOwnerUser.js.map +0 -1
  890. package/build/dist/Server/Services/RunbookAgentJobService.js.map +0 -1
  891. package/build/dist/Server/Services/RunbookAgentOwnerTeamService.js.map +0 -1
  892. package/build/dist/Server/Services/RunbookAgentOwnerUserService.js.map +0 -1
  893. package/build/dist/Server/Services/RunbookAgentService.js +0 -91
  894. package/build/dist/Server/Services/RunbookAgentService.js.map +0 -1
  895. package/build/dist/Types/Runbook/RunbookAgentJobStatus.js +0 -22
  896. package/build/dist/Types/Runbook/RunbookAgentJobStatus.js.map +0 -1
@@ -72,6 +72,84 @@ export interface AIStepConfig {
72
72
  * Response token cap. Defaults to 4096; clamped server-side.
73
73
  */
74
74
  maxTokens?: number;
75
+ /*
76
+ * Pin this step to a specific LLM provider. Optional — when unset the step
77
+ * uses the project's default provider (and, failing that, the global
78
+ * OneUptime provider), which is what every AI step did before this field
79
+ * existed.
80
+ *
81
+ * The id must name a provider the project owns or a global one; the server
82
+ * re-checks that on every run rather than trusting the stored config, since
83
+ * Runbook.steps is an unvalidated JSON column. A pinned provider that no
84
+ * longer resolves FAILS the step instead of quietly falling back to the
85
+ * default: an AI step runs unattended, and silently answering on a
86
+ * different model than the one a responder pinned is a change nobody would
87
+ * see. (Interactive chat, which has a human watching, does fall back.)
88
+ */
89
+ llmProviderId?: string;
90
+ }
91
+
92
+ /*
93
+ * Run a command on a host the Runner can reach over SSH.
94
+ *
95
+ * The point of a first-class step type — rather than "write `ssh host cmd` in
96
+ * a Bash step" — is that the credential is a managed, encrypted object with
97
+ * its own permissions instead of a private key sitting on the Runner's disk,
98
+ * and the command is a value we can validate rather than an opaque script.
99
+ */
100
+ export interface SSHStepConfig {
101
+ /*
102
+ * ID of the RunbookCredential (type SSH) holding the host, user and key.
103
+ * The Runner resolves it at claim time; it is never stored on the step.
104
+ */
105
+ credentialId: string;
106
+ // The command to run on the remote host, verbatim.
107
+ command: string;
108
+ timeoutInMs?: number;
109
+ // ID of the Runner that opens the connection. Only it may claim the job.
110
+ agentId: string;
111
+ claimTimeoutInMs?: number;
112
+ }
113
+
114
+ /*
115
+ * The workload actions that cover almost every "turn it off and on again"
116
+ * remediation. Deliberately a closed set of verbs rather than free-form
117
+ * manifests: a runbook that can PATCH arbitrary Kubernetes objects is a
118
+ * cluster-admin shell, and the whole reason this exists is to make the common
119
+ * remediations safe rather than to add another way to run anything.
120
+ */
121
+ export enum KubernetesAction {
122
+ // Rolling restart: stamps the pod template so the controller recreates pods.
123
+ RestartWorkload = "RestartWorkload",
124
+ // Set replica count — scale out under load, or to zero and back.
125
+ ScaleWorkload = "ScaleWorkload",
126
+ }
127
+
128
+ export enum KubernetesWorkloadKind {
129
+ Deployment = "Deployment",
130
+ StatefulSet = "StatefulSet",
131
+ DaemonSet = "DaemonSet",
132
+ }
133
+
134
+ export interface KubernetesStepConfig {
135
+ /*
136
+ * ID of the RunbookCredential (type Kubernetes) holding the API server URL,
137
+ * the service-account token and the CA certificate.
138
+ */
139
+ credentialId: string;
140
+ action: KubernetesAction;
141
+ workloadKind: KubernetesWorkloadKind;
142
+ namespace: string;
143
+ workloadName: string;
144
+ /*
145
+ * Target replica count. Required for ScaleWorkload and ignored otherwise.
146
+ * Zero is legitimate — draining a workload is a remediation.
147
+ */
148
+ replicas?: number;
149
+ timeoutInMs?: number;
150
+ // ID of the Runner that talks to the API server. Only it may claim the job.
151
+ agentId: string;
152
+ claimTimeoutInMs?: number;
75
153
  }
76
154
 
77
155
  export type RunbookStepConfig =
@@ -79,7 +157,9 @@ export type RunbookStepConfig =
79
157
  | JavaScriptStepConfig
80
158
  | HttpRequestStepConfig
81
159
  | BashStepConfig
82
- | AIStepConfig;
160
+ | AIStepConfig
161
+ | SSHStepConfig
162
+ | KubernetesStepConfig;
83
163
 
84
164
  export interface RunbookStep {
85
165
  id: string;
@@ -4,6 +4,32 @@ enum RunbookStepType {
4
4
  HttpRequest = "HttpRequest",
5
5
  Bash = "Bash",
6
6
  AI = "AI",
7
+ SSH = "SSH",
8
+ Kubernetes = "Kubernetes",
7
9
  }
8
10
 
9
11
  export default RunbookStepType;
12
+
13
+ /*
14
+ * Step types that execute on a Runner rather than on the OneUptime Worker,
15
+ * because they act on the customer's own infrastructure. Everything listed
16
+ * here carries an agentId on its config and goes through the RunnerJob
17
+ * claim path.
18
+ *
19
+ * This list is the ENFORCEMENT point — RunnerJobService refuses to
20
+ * enqueue a job for any type not in it, so a Runner can never be handed work
21
+ * it has no executor for. The Worker's own dispatch is a per-type switch
22
+ * rather than a list check (each type needs different arguments), so adding a
23
+ * type here without adding it there means the step fails with "unknown step
24
+ * type" rather than being silently mis-run.
25
+ */
26
+ export const RUNNER_EXECUTED_STEP_TYPES: Array<RunbookStepType> = [
27
+ RunbookStepType.JavaScript,
28
+ RunbookStepType.Bash,
29
+ RunbookStepType.SSH,
30
+ RunbookStepType.Kubernetes,
31
+ ];
32
+
33
+ export function isRunnerExecutedStepType(type: RunbookStepType): boolean {
34
+ return RUNNER_EXECUTED_STEP_TYPES.includes(type);
35
+ }
@@ -0,0 +1,20 @@
1
+ /*
2
+ * Where a RunnerJob came from — the discriminator that decides which Runner
3
+ * capability gates its claim.
4
+ *
5
+ * Runbook: a step of a runbook execution (the original job source).
6
+ * Claimable only by Runners with canRunRunbooks.
7
+ * AiRemediation: an ad-hoc command composed by an AI remediation run (either
8
+ * auto-executed under an operator allowlist or human-approved
9
+ * as part of a command plan). Claimable only by Runners with
10
+ * canRunAiCommands.
11
+ *
12
+ * Rows created before this enum existed were backfilled to Runbook by the
13
+ * AddAiCommandRemediation migration, so the column is NOT NULL.
14
+ */
15
+ enum RunnerJobOrigin {
16
+ Runbook = "Runbook",
17
+ AiRemediation = "AiRemediation",
18
+ }
19
+
20
+ export default RunnerJobOrigin;
@@ -1,4 +1,4 @@
1
- enum RunbookAgentJobStatus {
1
+ enum RunnerJobStatus {
2
2
  // Inserted by the Worker. No agent has claimed it yet.
3
3
  Pending = "Pending",
4
4
  // An agent has atomically claimed the job and is preparing to execute it.
@@ -18,4 +18,4 @@ enum RunbookAgentJobStatus {
18
18
  Cancelled = "Cancelled",
19
19
  }
20
20
 
21
- export default RunbookAgentJobStatus;
21
+ export default RunnerJobStatus;
@@ -0,0 +1,114 @@
1
+ import OneUptimeDate from "../Date";
2
+
3
+ /*
4
+ * How recently a Runner must have heartbeated to count as online. Matches the
5
+ * window AIAgentService.isAgentAlive uses, and comfortably clears the Runner's
6
+ * 60s heartbeat interval.
7
+ *
8
+ * This lives in Types, not in RunnerService, because the dashboard has to
9
+ * answer the same question the server does. RunnerService imports it from
10
+ * here so the two cannot drift: a server that hands out work to Runners it
11
+ * considers alive, next to a dashboard that calls those same Runners
12
+ * disconnected, is worse than either answer on its own.
13
+ */
14
+ export const RUNNER_ALIVE_WINDOW_IN_MINUTES: number = 5;
15
+
16
+ /*
17
+ * What a Runner's heartbeat actually says about it right now.
18
+ *
19
+ * Deliberately NOT the same thing as the persisted RunnerConnectionStatus
20
+ * column. That column is written exactly twice — Disconnected when the row is
21
+ * created, Connected on the first heartbeat — and nothing ever writes it back,
22
+ * so a Runner that ran once last March still reads "connected" today. Every
23
+ * server-side liveness check already ignores it and compares lastAlive against
24
+ * the window above; this enum lets the dashboard tell the user the same truth.
25
+ */
26
+ export enum RunnerLiveStatus {
27
+ /* Heartbeated within the window: it is polling for work right now. */
28
+ Connected = "connected",
29
+
30
+ /*
31
+ * Heartbeated at some point, but not recently enough. The container is
32
+ * stopped, wedged, or cannot reach OneUptime.
33
+ */
34
+ Disconnected = "disconnected",
35
+
36
+ /*
37
+ * Never heartbeated at all. The row exists because someone created it in the
38
+ * dashboard, but the Docker command has not been run yet. This is a setup
39
+ * step the user still owes us, not a failure, and the UI must not dress it up
40
+ * as one.
41
+ */
42
+ NeverConnected = "never-connected",
43
+ }
44
+
45
+ /*
46
+ * lastAlive arrives as a Date from a hydrated model and as an ISO string from
47
+ * a raw API payload, so both are accepted. Anything falsy — null from Postgres,
48
+ * undefined from a select that never asked for the column — means "no heartbeat
49
+ * has ever been recorded".
50
+ */
51
+ export type GetRunnerLiveStatusFunction = (
52
+ lastAlive: Date | string | null | undefined,
53
+ ) => RunnerLiveStatus;
54
+
55
+ export const getRunnerLiveStatus: GetRunnerLiveStatusFunction = (
56
+ lastAlive: Date | string | null | undefined,
57
+ ): RunnerLiveStatus => {
58
+ if (!lastAlive) {
59
+ return RunnerLiveStatus.NeverConnected;
60
+ }
61
+
62
+ const lastAliveDate: Date = OneUptimeDate.fromString(lastAlive);
63
+
64
+ /*
65
+ * An unparseable value is not evidence of life. Returning Disconnected keeps
66
+ * a malformed timestamp from being reported as a healthy Runner.
67
+ */
68
+ if (isNaN(lastAliveDate.getTime())) {
69
+ return RunnerLiveStatus.Disconnected;
70
+ }
71
+
72
+ const windowStart: Date = OneUptimeDate.getSomeMinutesAgo(
73
+ RUNNER_ALIVE_WINDOW_IN_MINUTES,
74
+ );
75
+
76
+ if (OneUptimeDate.isAfter(lastAliveDate, windowStart)) {
77
+ return RunnerLiveStatus.Connected;
78
+ }
79
+
80
+ return RunnerLiveStatus.Disconnected;
81
+ };
82
+
83
+ /*
84
+ * The English label for each state, which is also its i18next lookup key.
85
+ *
86
+ * "Connected" and "Disconnected" already had translations in all sixteen
87
+ * Dashboard locale files before any of this — the probe pages have used them
88
+ * for years — so routing every Runner status label through these three
89
+ * constants is what lets the new state reuse them instead of inventing a
90
+ * parallel set that would have to be translated again.
91
+ *
92
+ * It lives here rather than in the component because two very different
93
+ * surfaces need the same words: the status bubble, and the plain-string
94
+ * option label in the runbook step editor's Runner picker.
95
+ */
96
+ export type GetRunnerLiveStatusLabelFunction = (
97
+ status: RunnerLiveStatus,
98
+ ) => string;
99
+
100
+ export const getRunnerLiveStatusLabel: GetRunnerLiveStatusLabelFunction = (
101
+ status: RunnerLiveStatus,
102
+ ): string => {
103
+ if (status === RunnerLiveStatus.Connected) {
104
+ return "Connected";
105
+ }
106
+
107
+ if (status === RunnerLiveStatus.NeverConnected) {
108
+ return "Never connected";
109
+ }
110
+
111
+ return "Disconnected";
112
+ };
113
+
114
+ export default RunnerLiveStatus;
@@ -0,0 +1,99 @@
1
+ /*
2
+ * The shape of the scheduled "Uptime Report" email for a status page.
3
+ *
4
+ * A status page organises its resources into a tree of groups (Corporate Unit ->
5
+ * Region -> Market -> Unit), and every level of that tree shows a rolled up
6
+ * availability on the live page. Recipients of this email frequently have no
7
+ * login, so the report has to carry the same hierarchy - a flat list of monitor
8
+ * names says nothing about which region or unit a monitor belongs to.
9
+ *
10
+ * Three views of the same numbers are exposed, because the built-in email
11
+ * template and customer authored templates need different things:
12
+ *
13
+ * - `resources` - every resource, flat. The original shape, kept so templates
14
+ * written before groups existed keep rendering. Each row now
15
+ * also carries the group it belongs to.
16
+ * - `groups` - the nested tree, for templates that can recurse.
17
+ * - `rows` - the tree flattened into render order with a `depth` on each
18
+ * row. Email HTML cannot recurse comfortably, so the built-in
19
+ * template walks this.
20
+ */
21
+
22
+ export interface StatusPageReportItem {
23
+ resourceName: string;
24
+ totalIncidentCount: number;
25
+ uptimePercent: number;
26
+ uptimePercentAsString: string;
27
+ downtimeInHoursAndMinutes: string;
28
+ /*
29
+ * The group this resource is attached to directly. Empty string when the
30
+ * resource is not in any group (it renders above the groups on the live page).
31
+ */
32
+ groupName: string;
33
+ /*
34
+ * Every group from the top of the tree down to this resource's own group,
35
+ * joined with " / " - e.g. "Region 001 / Market 001 / Unit 0660". Empty string
36
+ * when the resource is not in any group.
37
+ */
38
+ groupPath: string;
39
+ }
40
+
41
+ /*
42
+ * Numbers rolled up over a group and everything nested under it - the same set
43
+ * of resources the live status page rolls a group's uptime over.
44
+ */
45
+ export interface StatusPageReportGroupMetrics {
46
+ uptimePercent: number;
47
+ uptimePercentAsString: string;
48
+ downtimeInHoursAndMinutes: string;
49
+ totalIncidentCount: number;
50
+ }
51
+
52
+ export interface StatusPageReportGroup extends StatusPageReportGroupMetrics {
53
+ groupName: string;
54
+ // Ancestors and this group joined with " / ".
55
+ groupPath: string;
56
+ // 0 for a top level group, 1 for its children, and so on.
57
+ depth: number;
58
+ // Resources in this group AND in every group nested under it.
59
+ totalResources: number;
60
+ // Resources attached to this group directly, in status page order.
61
+ resources: Array<StatusPageReportItem>;
62
+ subGroups: Array<StatusPageReportGroup>;
63
+ }
64
+
65
+ /*
66
+ * One line of the report, in the order the live status page renders it:
67
+ * ungrouped resources first, then each group followed by its own resources and
68
+ * then its sub groups.
69
+ */
70
+ export interface StatusPageReportRow {
71
+ isGroup: boolean;
72
+ name: string;
73
+ depth: number;
74
+ // Precomputed so an email template does not have to do arithmetic in Handlebars.
75
+ indentInPixels: number;
76
+ uptimePercentAsString: string;
77
+ downtimeInHoursAndMinutes: string;
78
+ totalIncidentCount: number;
79
+ /*
80
+ * Only meaningful on a group row: how many resources the group rolls up.
81
+ * Always 0 on a resource row.
82
+ */
83
+ totalResources: number;
84
+ }
85
+
86
+ export interface StatusPageReport {
87
+ reportDates: string; // start date and end date in string. e.g. "01 July 2021 - 14 July 2021"
88
+ totalResources: number;
89
+ totalIncidents: number;
90
+ averageUptimePercent: string;
91
+ totalDowntimeInHoursAndMinutes: string;
92
+ resources: Array<StatusPageReportItem>;
93
+ groups: Array<StatusPageReportGroup>;
94
+ // Resources that are not in any group, in status page order.
95
+ ungroupedResources: Array<StatusPageReportItem>;
96
+ rows: Array<StatusPageReportRow>;
97
+ // Whether this status page organises its resources into groups at all.
98
+ hasGroups: boolean;
99
+ }
@@ -29,9 +29,26 @@ export default interface TelemetryRetentionConfig {
29
29
  profiles?: {
30
30
  default?: number | null;
31
31
  };
32
+ /*
33
+ * Session replay does NOT go through resolveTelemetryRetentionInDays
34
+ * below. That function puts service.retainTelemetryDataForDays above the
35
+ * project pillar default, so an application configured for 90-day trace
36
+ * retention would silently inherit 90-day replay retention, and an
37
+ * unconfigured one would get 15 days rather than replay's 7. Replay is
38
+ * resolved by Common/Server/Utils/SessionReplay/SessionReplayRetention.ts,
39
+ * which reads only this pillar and then clamps to the allowed set.
40
+ */
41
+ sessionReplay?: {
42
+ default?: number | null;
43
+ };
32
44
  }
33
45
 
34
- export type TelemetryPillar = "logs" | "traces" | "metrics" | "profiles";
46
+ export type TelemetryPillar =
47
+ | "logs"
48
+ | "traces"
49
+ | "metrics"
50
+ | "profiles"
51
+ | "sessionReplay";
35
52
 
36
53
  export const HARDCODED_DEFAULT_TELEMETRY_RETENTION_IN_DAYS: number = 15;
37
54
 
package/Types/Text.ts CHANGED
@@ -63,6 +63,39 @@ export default class Text {
63
63
  return result.toLowerCase();
64
64
  }
65
65
 
66
+ /*
67
+ * Space out a PascalCase identifier for display: "MaskAllText" becomes
68
+ * "Mask All Text".
69
+ *
70
+ * Casing is preserved rather than lowercased, so acronyms survive
71
+ * ("OIDCProvider" -> "OIDC Provider" and not "Oidc Provider"). Text that
72
+ * is already spaced is returned unchanged, which makes this safe to
73
+ * apply to an enum whose values are a mix of both.
74
+ *
75
+ * LIMITATION, and the reason callers must opt in rather than getting
76
+ * this for free: a case boundary inside a single word is
77
+ * indistinguishable from a word boundary, so proper nouns and
78
+ * initialisms that embed one come out wrong - "GitHub" -> "Git Hub",
79
+ * "NodeJS" -> "Node JS", "IPv4Address" -> "I Pv4 Address". Do not use
80
+ * this on values that are product names, identifiers, or anything else
81
+ * that is not simply English words concatenated.
82
+ */
83
+ public static fromPascalCaseToReadable(text: string): string {
84
+ if (!text) {
85
+ return text;
86
+ }
87
+
88
+ return (
89
+ text
90
+ // "maskAll" / "v2Recorder" -> "mask All" / "v2 Recorder"
91
+ .replace(/([a-z0-9])([A-Z])/g, "$1 $2")
92
+ // "OIDCProvider" -> "OIDC Provider"; the run keeps its own casing.
93
+ .replace(/([A-Z]+)([A-Z][a-z])/g, "$1 $2")
94
+ .replace(/\s+/g, " ")
95
+ .trim()
96
+ );
97
+ }
98
+
66
99
  public static getFirstWord(text: string): string {
67
100
  if (!text || text.length === 0) {
68
101
  return text;