@oneuptime/common 14.0.8 → 14.0.10

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 (976) hide show
  1. package/Models/DatabaseModels/AutoRemediationSuggestion.ts +60 -0
  2. package/Models/DatabaseModels/CephCluster.ts +213 -0
  3. package/Models/DatabaseModels/DatabaseServer.ts +213 -0
  4. package/Models/DatabaseModels/DockerHost.ts +213 -0
  5. package/Models/DatabaseModels/DockerSwarmCluster.ts +213 -0
  6. package/Models/DatabaseModels/GlobalConfig.ts +1 -1
  7. package/Models/DatabaseModels/Host.ts +213 -0
  8. package/Models/DatabaseModels/Index.ts +4 -0
  9. package/Models/DatabaseModels/KubernetesAiAgent.ts +364 -0
  10. package/Models/DatabaseModels/KubernetesCluster.ts +3 -3
  11. package/Models/DatabaseModels/PodmanHost.ts +213 -0
  12. package/Models/DatabaseModels/Project.ts +55 -5
  13. package/Models/DatabaseModels/ProxmoxCluster.ts +213 -0
  14. package/Models/DatabaseModels/ProxmoxResource.ts +49 -1
  15. package/Models/DatabaseModels/ResourceAiAgent.ts +419 -0
  16. package/Models/DatabaseModels/RunnerJob.ts +219 -0
  17. package/Models/DatabaseModels/TeamComplianceSetting.ts +143 -2
  18. package/Models/DatabaseModels/VMwareVCenter.ts +213 -0
  19. package/Models/DatabaseModels/WorkspaceProjectAuthToken.ts +17 -0
  20. package/Server/API/AIChatAPI.ts +6 -3
  21. package/Server/API/AIInvestigationAPI.ts +17 -10
  22. package/Server/API/AutoRemediationAPI.ts +598 -25
  23. package/Server/API/KubernetesClusterAiAccessAPI.ts +623 -21
  24. package/Server/API/MicrosoftTeamsAPI.ts +93 -14
  25. package/Server/API/ProxmoxResourceAPI.ts +244 -14
  26. package/Server/API/ResourceAiAccessAPI.ts +1669 -0
  27. package/Server/Infrastructure/GlobalCache.ts +32 -0
  28. package/Server/Infrastructure/Postgres/SchemaMigrations/1796000000000-AddTeamComplianceRuleScope.ts +99 -0
  29. package/Server/Infrastructure/Postgres/SchemaMigrations/1796100000000-AddKubernetesAiAgentAndAiDefaults.ts +137 -0
  30. package/Server/Infrastructure/Postgres/SchemaMigrations/1796200000000-AddProxmoxResourceNativePushColumns.ts +42 -0
  31. package/Server/Infrastructure/Postgres/SchemaMigrations/1796300000000-AddResourceAiAgents.ts +423 -0
  32. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +8 -0
  33. package/Server/Infrastructure/Semaphore.ts +22 -0
  34. package/Server/Middleware/TelemetryIngest.ts +51 -18
  35. package/Server/Services/AIService.ts +70 -1
  36. package/Server/Services/AlertService.ts +352 -11
  37. package/Server/Services/AlertSeverityService.ts +65 -15
  38. package/Server/Services/AnalyticsDatabaseService.ts +45 -1
  39. package/Server/Services/AutoRemediationRuleEngineService.ts +940 -112
  40. package/Server/Services/AutoRemediationRuleService.ts +1 -1
  41. package/Server/Services/CephClusterService.ts +109 -1
  42. package/Server/Services/DatabaseServerService.ts +116 -1
  43. package/Server/Services/DockerHostService.ts +109 -1
  44. package/Server/Services/DockerSwarmClusterService.ts +113 -1
  45. package/Server/Services/HostService.ts +126 -4
  46. package/Server/Services/IncidentService.ts +280 -104
  47. package/Server/Services/IncidentSeverityService.ts +66 -15
  48. package/Server/Services/KubernetesAiAgentJobService.ts +185 -0
  49. package/Server/Services/KubernetesAiAgentService.ts +1634 -0
  50. package/Server/Services/KubernetesClusterAiAccessService.ts +1118 -451
  51. package/Server/Services/KubernetesClusterService.ts +129 -21
  52. package/Server/Services/MetricRecordingRuleService.ts +47 -0
  53. package/Server/Services/PodmanHostService.ts +109 -1
  54. package/Server/Services/ProjectService.ts +32 -0
  55. package/Server/Services/ProxmoxClusterService.ts +110 -1
  56. package/Server/Services/ProxmoxResourceService.ts +322 -5
  57. package/Server/Services/ResourceAiAccessService.ts +1439 -0
  58. package/Server/Services/ResourceAiAgentJobService.ts +202 -0
  59. package/Server/Services/ResourceAiAgentService.ts +2432 -0
  60. package/Server/Services/RunnerJobService.ts +852 -108
  61. package/Server/Services/RunnerService.ts +1 -1
  62. package/Server/Services/ScheduledMaintenanceService.ts +737 -1
  63. package/Server/Services/ScheduledMaintenanceStateTimelineService.ts +414 -56
  64. package/Server/Services/TeamComplianceSettingService.ts +1125 -9
  65. package/Server/Services/TelemetryUsageBillingService.ts +28 -0
  66. package/Server/Services/TraceRecordingRuleService.ts +33 -0
  67. package/Server/Services/VMwareVCenterService.ts +110 -1
  68. package/Server/Utils/AI/ClusterAccess/ClusterAccessContext.ts +67 -9
  69. package/Server/Utils/AI/ClusterAccess/KubectlInvestigationToolkit.ts +39 -10
  70. package/Server/Utils/AI/ClusterAccess/KubectlJobRunner.ts +14 -3
  71. package/Server/Utils/AI/Remediation/RemediationCommandTools.ts +1475 -51
  72. package/Server/Utils/AI/Remediation/RemediationExecutionRunner.ts +1000 -43
  73. package/Server/Utils/AI/Remediation/RemediationPlanRunner.ts +25 -1
  74. package/Server/Utils/AI/ResourceAccess/InfrastructureInvestigationToolkit.ts +577 -0
  75. package/Server/Utils/AI/ResourceAccess/ResourceAccessContext.ts +271 -0
  76. package/Server/Utils/AI/ResourceAccess/ResourceAccessToolNames.ts +45 -0
  77. package/Server/Utils/AI/ResourceAccess/ResourceAiAccessSettings.ts +964 -0
  78. package/Server/Utils/AI/ResourceAccess/ResourceAiDeleteCleanup.ts +333 -0
  79. package/Server/Utils/AI/ResourceAccess/ResourceCommandJobRunner.ts +873 -0
  80. package/Server/Utils/AI/SRE/AIInvestigationEngine.ts +120 -7
  81. package/Server/Utils/AI/SRE/AlertInvestigationRunner.ts +72 -5
  82. package/Server/Utils/AI/SRE/IncidentInvestigationRunner.ts +72 -5
  83. package/Server/Utils/AI/SRE/IncidentPostmortemRunner.ts +40 -8
  84. package/Server/Utils/AI/SRE/InvestigationEligibility.ts +13 -2
  85. package/Server/Utils/AI/SRE/InvestigationGrader.ts +1 -1
  86. package/Server/Utils/AutoRemediation/CommandPlanExecutor.ts +402 -14
  87. package/Server/Utils/AutoRemediation/RemediationVerifier.ts +35 -2
  88. package/Server/Utils/Database/ProjectScopedReferenceValidator.ts +9 -1
  89. package/Server/Utils/SessionReplay/SessionReplayBudgetMetrics.ts +920 -0
  90. package/Server/Utils/SessionReplay/SessionReplayUsage.ts +84 -6
  91. package/Server/Utils/Telemetry/InventoryEntityRegistry.ts +133 -7
  92. package/Server/Utils/Telemetry/ProxmoxCephSnapshotScan.ts +58 -4
  93. package/Server/Utils/Telemetry/ProxmoxNativeNodeLiveness.ts +447 -0
  94. package/Server/Utils/Telemetry/ProxmoxNativePush.ts +903 -0
  95. package/Server/Utils/Telemetry/TelemetryEntity.ts +87 -27
  96. package/Server/Utils/Workspace/MicrosoftTeams/Actions/Alert.ts +35 -15
  97. package/Server/Utils/Workspace/MicrosoftTeams/Actions/AlertEpisode.ts +33 -15
  98. package/Server/Utils/Workspace/MicrosoftTeams/Actions/Auth.ts +21 -1
  99. package/Server/Utils/Workspace/MicrosoftTeams/Actions/Incident.ts +298 -224
  100. package/Server/Utils/Workspace/MicrosoftTeams/Actions/IncidentEpisode.ts +35 -15
  101. package/Server/Utils/Workspace/MicrosoftTeams/Actions/ScheduledMaintenance.ts +389 -175
  102. package/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.ts +1073 -213
  103. package/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsActivityDeduplicator.ts +163 -0
  104. package/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsCardChoices.ts +396 -0
  105. package/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsCreateCommands.ts +418 -0
  106. package/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsMessageSize.ts +152 -0
  107. package/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsReplies.ts +251 -0
  108. package/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsTimezone.ts +214 -0
  109. package/Tests/App/AdminDashboard/RowActionPlacementOverrides.test.tsx +278 -0
  110. package/Tests/App/Dashboard/AIChatChartWidgetZoom.test.tsx +738 -0
  111. package/Tests/App/Dashboard/AIFeaturesSettingsPointers.test.tsx +147 -0
  112. package/Tests/App/Dashboard/AIInsightsKubernetesClusterPage.test.tsx +1523 -0
  113. package/Tests/App/Dashboard/AdminUserNotificationMethodsPage.test.tsx +463 -3
  114. package/Tests/App/Dashboard/AffectedResourcesPickerDropdownPlacement.test.tsx +958 -0
  115. package/Tests/App/Dashboard/AffectedResourcesPickerFocusLeave.test.tsx +595 -0
  116. package/Tests/App/Dashboard/AskAiAvailability.test.ts +20 -3
  117. package/Tests/App/Dashboard/AskAiDisabled.test.tsx +8 -3
  118. package/Tests/App/Dashboard/CephRateChartReload.test.tsx +1456 -0
  119. package/Tests/App/Dashboard/CephTimeRangeZoom.test.tsx +1229 -0
  120. package/Tests/App/Dashboard/ChartCardTimeRangeZoom.test.tsx +151 -0
  121. package/Tests/App/Dashboard/ChartCardZoomAffordances.test.tsx +257 -0
  122. package/Tests/App/Dashboard/ChartRefetchFrame.test.tsx +141 -0
  123. package/Tests/App/Dashboard/ChartZoomHarness.tsx +249 -0
  124. package/Tests/App/Dashboard/ChartZoomStandIn.tsx +131 -0
  125. package/Tests/App/Dashboard/CloudServerlessSlowLoads.test.tsx +628 -0
  126. package/Tests/App/Dashboard/CloudServerlessTimeRangeZoom.test.tsx +607 -0
  127. package/Tests/App/Dashboard/ClusterAccessNotice.test.tsx +184 -19
  128. package/Tests/App/Dashboard/CompanionMetricsTabZoom.test.tsx +632 -0
  129. package/Tests/App/Dashboard/ContainerChartZoomStandIn.tsx +195 -0
  130. package/Tests/App/Dashboard/ContainerHostOverviewSlowLoads.test.tsx +542 -0
  131. package/Tests/App/Dashboard/ContainerHostOverviewTimeRangeZoom.test.tsx +848 -0
  132. package/Tests/App/Dashboard/ContainerMetricsTimeRangeZoom.test.tsx +561 -0
  133. package/Tests/App/Dashboard/DashboardBoardWideZoomShell.test.tsx +1147 -0
  134. package/Tests/App/Dashboard/DashboardEditPermissions.test.tsx +3 -2
  135. package/Tests/App/Dashboard/DashboardHistogramWidgetDragCursor.test.tsx +399 -0
  136. package/Tests/App/Dashboard/DashboardHistogramWidgetZoom.test.tsx +985 -0
  137. package/Tests/App/Dashboard/DashboardHistogramWidgetZoomHint.test.tsx +803 -0
  138. package/Tests/App/Dashboard/DashboardLazyPages.test.tsx +1 -0
  139. package/Tests/App/Dashboard/DashboardSettingsPreviewZoom.test.tsx +679 -0
  140. package/Tests/App/Dashboard/DashboardSloAndDataSourceChartZoom.test.tsx +881 -0
  141. package/Tests/App/Dashboard/DashboardTraceStatusWidgets.test.tsx +878 -0
  142. package/Tests/App/Dashboard/DatabaseDocumentationMarkdown.test.ts +18 -6
  143. package/Tests/App/Dashboard/DatabaseMetricChartModalTimeRangeZoom.test.tsx +442 -0
  144. package/Tests/App/Dashboard/DatabaseOverviewTimeRangeZoom.test.tsx +831 -0
  145. package/Tests/App/Dashboard/DatabaseServerComponents.test.tsx +43 -0
  146. package/Tests/App/Dashboard/DockerSwarmInsightsTimeRangeZoom.test.tsx +524 -0
  147. package/Tests/App/Dashboard/DockerSwarmRateChartRefresh.test.tsx +259 -0
  148. package/Tests/App/Dashboard/EdgeDetailPanelHistory.test.tsx +763 -0
  149. package/Tests/App/Dashboard/EdgeDetailPanelTimeRangeZoom.test.tsx +547 -0
  150. package/Tests/App/Dashboard/EdgeHistoryBucketsCases.tsx +565 -0
  151. package/Tests/App/Dashboard/EdgeHistoryBucketsKathmandu.test.tsx +73 -0
  152. package/Tests/App/Dashboard/EdgeHistoryBucketsKolkata.test.tsx +74 -0
  153. package/Tests/App/Dashboard/EdgeHistoryBucketsNewYork.test.tsx +72 -0
  154. package/Tests/App/Dashboard/EdgeHistoryBucketsUtc.test.tsx +72 -0
  155. package/Tests/App/Dashboard/EmbeddedMetricCardRefresh.test.tsx +310 -0
  156. package/Tests/App/Dashboard/EmbeddedMetricCardTimeRangeZoom.test.tsx +536 -0
  157. package/Tests/App/Dashboard/EscalationRuleReadiness.test.tsx +3 -1
  158. package/Tests/App/Dashboard/EscalationRuleRowActions.test.tsx +660 -0
  159. package/Tests/App/Dashboard/EventNotes.test.tsx +2 -2
  160. package/Tests/App/Dashboard/EventOverviewPages.test.tsx +587 -13
  161. package/Tests/App/Dashboard/EventOverviewSnapshotExplorerZoom.test.tsx +1139 -0
  162. package/Tests/App/Dashboard/EventOverviewSnapshotZoomAcrossTabs.test.tsx +1057 -0
  163. package/Tests/App/Dashboard/EventOverviewTelemetrySnapshotZoom.test.tsx +757 -0
  164. package/Tests/App/Dashboard/ExceptionOccurrenceTrendZoom.test.tsx +675 -0
  165. package/Tests/App/Dashboard/ExceptionOccurrencesZoomSurvivesViewSwitch.test.tsx +405 -0
  166. package/Tests/App/Dashboard/ExceptionSignalPages.test.tsx +67 -3
  167. package/Tests/App/Dashboard/ExceptionTablesSpanStatus.test.tsx +515 -0
  168. package/Tests/App/Dashboard/ExplorerOwnZoomRegression.test.tsx +739 -0
  169. package/Tests/App/Dashboard/FlowBandwidthAxisCases.tsx +461 -0
  170. package/Tests/App/Dashboard/FlowBandwidthAxisKathmandu.test.tsx +25 -0
  171. package/Tests/App/Dashboard/FlowBandwidthAxisKolkata.test.tsx +25 -0
  172. package/Tests/App/Dashboard/FlowBandwidthAxisNewYork.test.tsx +25 -0
  173. package/Tests/App/Dashboard/FlowBandwidthAxisUtc.test.tsx +24 -0
  174. package/Tests/App/Dashboard/FlowTopTalkersZoomRefetch.test.tsx +722 -0
  175. package/Tests/App/Dashboard/FlowViewportGuard.test.tsx +2526 -0
  176. package/Tests/App/Dashboard/HostPagesSlowLoads.test.tsx +872 -0
  177. package/Tests/App/Dashboard/HostPagesTimeRangeZoom.test.tsx +1208 -0
  178. package/Tests/App/Dashboard/IncidentRootCauseTimeRangeZoom.test.tsx +358 -0
  179. package/Tests/App/Dashboard/InfrastructureGraph.test.tsx +100 -9
  180. package/Tests/App/Dashboard/InfrastructureMetricsTabTimeRangeZoom.test.tsx +485 -0
  181. package/Tests/App/Dashboard/InvestigationDrawerCompanionZoom.test.tsx +655 -0
  182. package/Tests/App/Dashboard/InvestigationDrawerZoom.test.tsx +830 -0
  183. package/Tests/App/Dashboard/InvestigationInfrastructureTools.test.tsx +506 -0
  184. package/Tests/App/Dashboard/InvestigationNotStarted.test.tsx +338 -2
  185. package/Tests/App/Dashboard/InvoicesPayInvoice.test.tsx +454 -16
  186. package/Tests/App/Dashboard/KubernetesClusterAiAccessSettings.test.ts +799 -819
  187. package/Tests/App/Dashboard/KubernetesClusterAiAgentOverviewCard.test.tsx +367 -0
  188. package/Tests/App/Dashboard/KubernetesClusterAiAgentStatus.test.ts +1202 -0
  189. package/Tests/App/Dashboard/KubernetesClusterAiDocumentationMarkdown.test.ts +106 -0
  190. package/Tests/App/Dashboard/KubernetesClusterAiNavigation.test.tsx +354 -0
  191. package/Tests/App/Dashboard/KubernetesClusterAiPage.test.tsx +1884 -2054
  192. package/Tests/App/Dashboard/KubernetesClusterAiPageServerParity.test.ts +478 -179
  193. package/Tests/App/Dashboard/KubernetesClusterMetricTooltips.test.ts +50 -0
  194. package/Tests/App/Dashboard/KubernetesClusterOverviewTooltips.test.tsx +2 -1
  195. package/Tests/App/Dashboard/KubernetesClusterOverviewZoom.test.tsx +1217 -0
  196. package/Tests/App/Dashboard/KubernetesClusterPagesZoom.test.tsx +731 -0
  197. package/Tests/App/Dashboard/KubernetesCostsLoadRecovery.test.tsx +869 -0
  198. package/Tests/App/Dashboard/KubernetesCostsZoom.test.tsx +1214 -0
  199. package/Tests/App/Dashboard/KubernetesCostsZoomExactHours.test.tsx +692 -0
  200. package/Tests/App/Dashboard/KubernetesNetworkThroughputReload.test.tsx +902 -0
  201. package/Tests/App/Dashboard/KubernetesNetworkZoomBucketEdges.test.tsx +571 -0
  202. package/Tests/App/Dashboard/KubernetesOverviewZoomBucketEdges.test.tsx +697 -0
  203. package/Tests/App/Dashboard/KubernetesResourceMetricsTabZoom.test.tsx +633 -0
  204. package/Tests/App/Dashboard/LogsExplorerTimeRangeZoom.test.tsx +470 -0
  205. package/Tests/App/Dashboard/LogsInsightsTimeRangeZoom.test.tsx +948 -0
  206. package/Tests/App/Dashboard/LogsViewerPinnedWindowZoom.test.tsx +486 -0
  207. package/Tests/App/Dashboard/MetricChartsBucketInspectorDoubleClick.test.tsx +1001 -0
  208. package/Tests/App/Dashboard/MetricExplorerInvestigationAutoRefresh.test.tsx +514 -0
  209. package/Tests/App/Dashboard/MetricExplorerSavedViewZoomRoundTrip.test.tsx +581 -0
  210. package/Tests/App/Dashboard/MetricExplorerTimeRangeZoom.test.tsx +1162 -0
  211. package/Tests/App/Dashboard/MetricMonitorPreviewZoomLabel.test.ts +72 -0
  212. package/Tests/App/Dashboard/MetricRowSparklineTimeRangeZoom.test.tsx +204 -0
  213. package/Tests/App/Dashboard/MetricViewFirstResultLands.test.tsx +408 -0
  214. package/Tests/App/Dashboard/MetricViewOwnZoomResetPlacement.test.tsx +952 -0
  215. package/Tests/App/Dashboard/MetricViewTimeRange.test.ts +139 -0
  216. package/Tests/App/Dashboard/MetricViewTimeRangeZoom.test.tsx +556 -0
  217. package/Tests/App/Dashboard/MonitorMetricsChartWrappersZoom.test.tsx +552 -0
  218. package/Tests/App/Dashboard/MonitorMetricsTabsTimeRangeZoom.test.tsx +740 -0
  219. package/Tests/App/Dashboard/MonitorOverviewChartsTimeRangeZoom.test.tsx +735 -0
  220. package/Tests/App/Dashboard/MonitorStepPreviewsTimeRangeZoom.test.tsx +835 -0
  221. package/Tests/App/Dashboard/NetworkDeviceTimeRangeZoom.test.tsx +1115 -0
  222. package/Tests/App/Dashboard/OnCallPreventionGuards.test.tsx +186 -17
  223. package/Tests/App/Dashboard/OnCallRulesDeleteGuard.test.tsx +155 -46
  224. package/Tests/App/Dashboard/PasskeySettings.test.tsx +87 -2
  225. package/Tests/App/Dashboard/ProjectAISettingsPages.test.tsx +884 -0
  226. package/Tests/App/Dashboard/ProxmoxNodeRemove.test.tsx +621 -0
  227. package/Tests/App/Dashboard/ProxmoxOverviewSlowLoads.test.tsx +584 -0
  228. package/Tests/App/Dashboard/ProxmoxPagesTimeRangeZoom.test.tsx +823 -0
  229. package/Tests/App/Dashboard/ProxmoxRateChartReload.test.tsx +1253 -0
  230. package/Tests/App/Dashboard/PublicDashboardBoardWideZoom.test.tsx +605 -0
  231. package/Tests/App/Dashboard/RealRowsLineChart.tsx +250 -0
  232. package/Tests/App/Dashboard/RechartsHostsPlotCursor.test.tsx +513 -0
  233. package/Tests/App/Dashboard/RemediationSuggestionCardDescription.test.tsx +209 -0
  234. package/Tests/App/Dashboard/RemediationSuggestionCardResource.test.tsx +317 -0
  235. package/Tests/App/Dashboard/ResourceAiAccessSettingsUtil.test.ts +921 -0
  236. package/Tests/App/Dashboard/ResourceAiAgentInstall.test.ts +860 -0
  237. package/Tests/App/Dashboard/ResourceAiAgentPage.test.tsx +1721 -0
  238. package/Tests/App/Dashboard/ResourceAiAgentStatus.test.ts +1002 -0
  239. package/Tests/App/Dashboard/ResourceAiInsightsPage.test.tsx +931 -0
  240. package/Tests/App/Dashboard/ResourceAiNavigation.test.tsx +575 -0
  241. package/Tests/App/Dashboard/RowActionPlacementOverrides.test.tsx +865 -0
  242. package/Tests/App/Dashboard/RumOverviewTimeRangeZoom.test.tsx +877 -0
  243. package/Tests/App/Dashboard/RunbookStepTypeMaps.test.ts +38 -7
  244. package/Tests/App/Dashboard/RunnerKubernetesAgentForm.test.tsx +20 -4
  245. package/Tests/App/Dashboard/RunnerSupersededByAiAgentNote.test.tsx +296 -0
  246. package/Tests/App/Dashboard/SecurityEventConnectionsTable.test.tsx +146 -36
  247. package/Tests/App/Dashboard/ServiceDatabaseSlowLoads.test.tsx +1166 -0
  248. package/Tests/App/Dashboard/ServiceMapGraph.test.tsx +1243 -104
  249. package/Tests/App/Dashboard/ServiceOverviewTimeRangeZoom.test.tsx +792 -0
  250. package/Tests/App/Dashboard/SloBudgetBurnDownZoom.test.tsx +771 -0
  251. package/Tests/App/Dashboard/SloBudgetBurnDownZoomAffordances.test.tsx +380 -0
  252. package/Tests/App/Dashboard/SloEventMetricsBarChartZoom.test.tsx +369 -0
  253. package/Tests/App/Dashboard/SloHistoryChartsTimeRangeZoom.test.tsx +694 -0
  254. package/Tests/App/Dashboard/SloHistoryChartsZoomAffordances.test.tsx +497 -0
  255. package/Tests/App/Dashboard/SloMetricsTimeRangeZoom.test.tsx +541 -0
  256. package/Tests/App/Dashboard/SlowLoadHarness.ts +123 -0
  257. package/Tests/App/Dashboard/SnapshotExplorerPrimaryZoom.test.tsx +1194 -0
  258. package/Tests/App/Dashboard/SnapshotViewerPinnedWindow.test.tsx +620 -0
  259. package/Tests/App/Dashboard/TelemetrySnapshotPanelTimeRangeZoom.test.tsx +765 -0
  260. package/Tests/App/Dashboard/TelemetrySnapshotZoom.test.tsx +516 -0
  261. package/Tests/App/Dashboard/TelemetrySnapshotZoomAcrossTabs.test.tsx +827 -0
  262. package/Tests/App/Dashboard/TimeRangeZoomPageHarness.tsx +463 -0
  263. package/Tests/App/Dashboard/TraceChartEditorStatusSplit.test.tsx +543 -0
  264. package/Tests/App/Dashboard/TraceStatusPresentation.test.tsx +967 -0
  265. package/Tests/App/Dashboard/TraceTimelineMinimapZoom.test.tsx +315 -0
  266. package/Tests/App/Dashboard/TracesAnalyticsStatusSplit.test.tsx +778 -0
  267. package/Tests/App/Dashboard/TracesAnalyticsViewZoom.test.tsx +349 -0
  268. package/Tests/App/Dashboard/TracesExplorerTimeRangeZoom.test.tsx +551 -0
  269. package/Tests/App/Dashboard/TracesStatusChartAndFacet.test.tsx +687 -0
  270. package/Tests/App/Dashboard/TracesViewerStaleResponses.test.tsx +458 -0
  271. package/Tests/App/Dashboard/UptimeStripsExcludedFromZoom.test.tsx +406 -0
  272. package/Tests/App/Dashboard/VMwareOverviewSlowLoads.test.tsx +535 -0
  273. package/Tests/App/Dashboard/VMwarePagesTimeRangeZoom.test.tsx +606 -0
  274. package/Tests/App/Dashboard/ValueWidgetSparklineStaleHover.test.tsx +1292 -0
  275. package/Tests/App/Dashboard/ValueWidgetSparklineZoom.test.tsx +765 -0
  276. package/Tests/App/StatusPage/StatusPageResourceExplorer.test.tsx +98 -0
  277. package/Tests/Models/DatabaseModels/DatabaseServerModels.test.ts +33 -1
  278. package/Tests/Models/DatabaseModels/KubernetesAiAgentModel.test.ts +295 -0
  279. package/Tests/Models/DatabaseModels/ResourceAiAccessColumns.test.ts +738 -0
  280. package/Tests/Models/DatabaseModels/ResourceAiAgentModel.test.ts +842 -0
  281. package/Tests/Models/DatabaseModels/TeamComplianceSettingModel.test.ts +347 -0
  282. package/Tests/Server/API/AIChatRouteAuthorization.test.ts +58 -0
  283. package/Tests/Server/API/AIGenerationProjectAIToggle.test.ts +1 -1
  284. package/Tests/Server/API/AIInvestigationAPI.test.ts +123 -45
  285. package/Tests/Server/API/AutoRemediationApproveClusterRound.test.ts +1329 -0
  286. package/Tests/Server/API/AutoRemediationApproveKubectlRecheck.test.ts +25 -2
  287. package/Tests/Server/API/AutoRemediationApproveResourceRound.test.ts +835 -0
  288. package/Tests/Server/API/KubernetesClusterAiAccessAPI.test.ts +2 -0
  289. package/Tests/Server/API/KubernetesClusterAiAccessAPIAgent.test.ts +903 -0
  290. package/Tests/Server/API/MicrosoftTeamsChatsRefreshRoute.test.ts +667 -0
  291. package/Tests/Server/API/MicrosoftTeamsManifest.test.ts +294 -6
  292. package/Tests/Server/API/ProxmoxResourceAPIRemoveNode.test.ts +1932 -0
  293. package/Tests/Server/API/ResourceAiAccessAPI.test.ts +2730 -0
  294. package/Tests/Server/Infrastructure/GlobalCache.test.ts +195 -0
  295. package/Tests/Server/Infrastructure/Postgres/AddDatabaseServerTablesMigration.test.ts +60 -0
  296. package/Tests/Server/Infrastructure/Postgres/AddKubernetesAiAgentAndAiDefaultsMigration.test.ts +623 -0
  297. package/Tests/Server/Infrastructure/Postgres/AddKubernetesClusterAiAccessMigration.test.ts +87 -10
  298. package/Tests/Server/Infrastructure/Postgres/AddResourceAiAgentsMigration.test.ts +659 -0
  299. package/Tests/Server/Infrastructure/Postgres/AddTeamComplianceRuleScopeMigration.test.ts +622 -0
  300. package/Tests/Server/Infrastructure/SemaphoreMutex.test.ts +31 -0
  301. package/Tests/Server/Middleware/TelemetryIngestBrowserKey.test.ts +119 -4
  302. package/Tests/Server/Middleware/TelemetryIngestKubernetesAgentRunnerPinnedKey.test.ts +196 -2
  303. package/Tests/Server/Middleware/TelemetryIngestKubernetesAgentRunnerRateLimit.test.ts +123 -2
  304. package/Tests/Server/Services/AIServiceBalanceBlocker.test.ts +282 -0
  305. package/Tests/Server/Services/AlertMonitorClearWritesNull.test.ts +409 -0
  306. package/Tests/Server/Services/AlertMonitorEditFeed.test.ts +474 -0
  307. package/Tests/Server/Services/AlertMonitorEditGuard.test.ts +610 -0
  308. package/Tests/Server/Services/AutoRemediationClusterRuleEngine.test.ts +2 -0
  309. package/Tests/Server/Services/AutoRemediationResourceRuleEngine.test.ts +1279 -0
  310. package/Tests/Server/Services/AutoRemediationRuleCommandRunners.test.ts +2 -1
  311. package/Tests/Server/Services/DatabaseServerService.test.ts +55 -0
  312. package/Tests/Server/Services/GroupTelemetryUsageExcludeNames.test.ts +299 -0
  313. package/Tests/Server/Services/HostServiceFindOrCreateMemo.test.ts +44 -0
  314. package/Tests/Server/Services/IncidentAffectedMonitorsEdit.test.ts +1360 -0
  315. package/Tests/Server/Services/IncidentAlertSloLinkSurvivesEdit.test.ts +3 -1
  316. package/Tests/Server/Services/IncidentSeverityDeletePausesComplianceRules.test.ts +488 -0
  317. package/Tests/Server/Services/KubernetesAiAgentJobService.test.ts +329 -0
  318. package/Tests/Server/Services/KubernetesAiAgentServiceHelpers.test.ts +618 -0
  319. package/Tests/Server/Services/KubernetesAiAgentServiceLifecycle.test.ts +1444 -0
  320. package/Tests/Server/Services/KubernetesAiAgentServiceRegister.test.ts +1666 -0
  321. package/Tests/Server/Services/KubernetesClusterAiAccessDeletedRunnerRemedy.test.ts +140 -111
  322. package/Tests/Server/Services/KubernetesClusterAiAccessGapNextSteps.test.ts +267 -105
  323. package/Tests/Server/Services/KubernetesClusterAiAccessLegacySuperseded.test.ts +440 -0
  324. package/Tests/Server/Services/KubernetesClusterAiAccessService.test.ts +567 -411
  325. package/Tests/Server/Services/KubernetesClusterAiAccessTarget.test.ts +1168 -0
  326. package/Tests/Server/Services/KubernetesClusterAiSettingsPermission.test.ts +410 -12
  327. package/Tests/Server/Services/KubernetesClusterServiceAiAccessFeed.test.ts +55 -0
  328. package/Tests/Server/Services/MonitorProbeServiceIntervalScheduling.test.ts +45 -6
  329. package/Tests/Server/Services/ProjectServiceNewProjectAiDefaults.test.ts +288 -0
  330. package/Tests/Server/Services/ProxmoxResourcePostgres.test.ts +5633 -0
  331. package/Tests/Server/Services/ProxmoxResourceService.test.ts +6458 -5
  332. package/Tests/Server/Services/RecordingRuleReservedMetricName.test.ts +171 -0
  333. package/Tests/Server/Services/ResourceAiAccessChangeAuthorization.test.ts +256 -0
  334. package/Tests/Server/Services/ResourceAiAccessService.test.ts +1373 -0
  335. package/Tests/Server/Services/ResourceAiAgentJobService.test.ts +375 -0
  336. package/Tests/Server/Services/ResourceAiAgentServiceHelpers.test.ts +1114 -0
  337. package/Tests/Server/Services/ResourceAiAgentServiceLifecycle.test.ts +1050 -0
  338. package/Tests/Server/Services/ResourceAiAgentServiceRegister.test.ts +2251 -0
  339. package/Tests/Server/Services/ResourceAiSettingsCreate.test.ts +373 -0
  340. package/Tests/Server/Services/ResourceAiSettingsPermission.test.ts +1042 -0
  341. package/Tests/Server/Services/ResourceServiceDeleteCleansUpAi.test.ts +319 -0
  342. package/Tests/Server/Services/RunnerJobEnqueueKubectl.test.ts +153 -15
  343. package/Tests/Server/Services/RunnerJobEnqueueKubectlAiAgent.test.ts +620 -0
  344. package/Tests/Server/Services/RunnerJobEnqueueResourceCommand.test.ts +986 -0
  345. package/Tests/Server/Services/RunnerJobKubectlWriteScope.test.ts +170 -3
  346. package/Tests/Server/Services/RunnerJobResourceCommandLane.test.ts +211 -0
  347. package/Tests/Server/Services/RunnerJobResourceCommandTimeoutAndRedaction.test.ts +352 -0
  348. package/Tests/Server/Services/RunnerJobTimeoutReason.test.ts +72 -0
  349. package/Tests/Server/Services/RunnerServiceAgentName.test.ts +6 -4
  350. package/Tests/Server/Services/ScheduledMaintenanceAttachmentEdit.test.ts +2113 -0
  351. package/Tests/Server/Services/ScheduledMaintenanceMonitorRelease.test.ts +972 -0
  352. package/Tests/Server/Services/TeamComplianceSettingPostgres.test.ts +2237 -0
  353. package/Tests/Server/Services/TeamComplianceSettingService.test.ts +3988 -138
  354. package/Tests/Server/Services/TelemetryUsageBillingSloExclusion.test.ts +218 -0
  355. package/Tests/Server/TestingUtils/Services/FakeRunnerJobCount.ts +145 -0
  356. package/Tests/Server/Utils/AI/ClusterAccessContext.test.ts +107 -1
  357. package/Tests/Server/Utils/AI/IncidentPostmortemRunner.test.ts +351 -0
  358. package/Tests/Server/Utils/AI/InvestigationClusterAccessWiring.test.ts +2 -0
  359. package/Tests/Server/Utils/AI/InvestigationEligibility.test.ts +310 -0
  360. package/Tests/Server/Utils/AI/InvestigationInfrastructureAccessWiring.test.ts +453 -0
  361. package/Tests/Server/Utils/AI/InvestigationInfrastructureReport.test.ts +721 -0
  362. package/Tests/Server/Utils/AI/KubectlInvestigationToolkit.test.ts +70 -0
  363. package/Tests/Server/Utils/AI/KubectlJobRunnerFinishedJob.test.ts +58 -0
  364. package/Tests/Server/Utils/AI/RemediationCommandTools.test.ts +94 -1
  365. package/Tests/Server/Utils/AI/RemediationCommandToolsKubectl.test.ts +2 -0
  366. package/Tests/Server/Utils/AI/RemediationCommandToolsKubectlOutcome.test.ts +2 -0
  367. package/Tests/Server/Utils/AI/RemediationCommandToolsLiveCluster.test.ts +2 -0
  368. package/Tests/Server/Utils/AI/RemediationCommandToolsResource.test.ts +1530 -0
  369. package/Tests/Server/Utils/AI/RemediationCommandToolsRunnerScope.test.ts +125 -1
  370. package/Tests/Server/Utils/AI/RemediationExecutionRunner.test.ts +252 -3
  371. package/Tests/Server/Utils/AI/RemediationExecutionRunnerClusterMode.test.ts +2 -0
  372. package/Tests/Server/Utils/AI/RemediationExecutionRunnerProjectGates.test.ts +240 -0
  373. package/Tests/Server/Utils/AI/RemediationExecutionRunnerResourceMode.test.ts +1249 -0
  374. package/Tests/Server/Utils/AI/RemediationKubectlCopyParity.test.ts +2 -0
  375. package/Tests/Server/Utils/AI/RemediationPlanRunner.test.ts +117 -0
  376. package/Tests/Server/Utils/AI/RemediationResourceCopyParity.test.ts +463 -0
  377. package/Tests/Server/Utils/AI/ResourceAccess/InfrastructureInvestigationToolkit.test.ts +722 -0
  378. package/Tests/Server/Utils/AI/ResourceAccess/ResourceAccessContext.test.ts +266 -0
  379. package/Tests/Server/Utils/AI/ResourceAccess/ResourceAiAccessSettings.test.ts +1220 -0
  380. package/Tests/Server/Utils/AI/ResourceAccess/ResourceAiDeleteCleanup.test.ts +569 -0
  381. package/Tests/Server/Utils/AI/ResourceAccess/ResourceCommandJobRunner.test.ts +830 -0
  382. package/Tests/Server/Utils/AutoRemediation/CommandPlanExecutor.test.ts +2 -0
  383. package/Tests/Server/Utils/AutoRemediation/CommandPlanExecutorResource.test.ts +717 -0
  384. package/Tests/Server/Utils/AutoRemediation/CommandPlanExecutorUnknownRun.test.ts +2 -0
  385. package/Tests/Server/Utils/AutoRemediation/CommandPlanVerification.test.ts +2 -0
  386. package/Tests/Server/Utils/AutoRemediation/RemediationVerifierResourceFollowUp.test.ts +338 -0
  387. package/Tests/Server/Utils/Monitor/Criteria/SessionReplayBudgetTemplateCriteria.test.ts +422 -0
  388. package/Tests/Server/Utils/SessionReplay/SessionReplayBudgetMetrics.test.ts +1647 -0
  389. package/Tests/Server/Utils/SessionReplay/SessionReplayUsage.test.ts +143 -1
  390. package/Tests/Server/Utils/Telemetry/HostAssetAttributesFromOtlp.test.ts +68 -0
  391. package/Tests/Server/Utils/Telemetry/InventoryMirrorPostgres.test.ts +370 -0
  392. package/Tests/Server/Utils/Telemetry/NetworkDeviceInventoryAttributes.test.ts +522 -0
  393. package/Tests/Server/Utils/Telemetry/ProxmoxCephSnapshotScan.test.ts +155 -0
  394. package/Tests/Server/Utils/Telemetry/ProxmoxNativeNodeLiveness.test.ts +8631 -0
  395. package/Tests/Server/Utils/Telemetry/ProxmoxNativePush.test.ts +2852 -0
  396. package/Tests/Server/Utils/Telemetry/TelemetryEntity.test.ts +367 -1
  397. package/Tests/Server/Utils/Telemetry/TelemetryIngestionKeyGuard.test.ts +75 -3
  398. package/Tests/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsAccountNotLinked.test.ts +1093 -0
  399. package/Tests/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsActivityDeduplicator.test.ts +1049 -0
  400. package/Tests/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsCardChoices.test.ts +1676 -0
  401. package/Tests/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsCreateCards.test.ts +2884 -0
  402. package/Tests/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsCreateCommands.test.ts +2490 -0
  403. package/Tests/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsCreateSubmit.test.ts +2293 -0
  404. package/Tests/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsCreateSubmitServerTimezone.test.ts +386 -0
  405. package/Tests/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsMessageSize.test.ts +1477 -0
  406. package/Tests/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsReplies.test.ts +1967 -0
  407. package/Tests/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsStripHtmlTags.test.ts +92 -0
  408. package/Tests/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsSubmittedFormRemoval.test.ts +1819 -0
  409. package/Tests/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsTimezone.test.ts +1033 -0
  410. package/Tests/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsTimezoneServerZone.test.ts +610 -0
  411. package/Tests/Server/Utils/Workspace/MicrosoftTeamsBotMessageHandling.test.ts +2610 -0
  412. package/Tests/Server/Utils/Workspace/MicrosoftTeamsChats.test.ts +25 -0
  413. package/Tests/Server/Utils/Workspace/MicrosoftTeamsCreateCommandsEndToEnd.test.ts +4672 -0
  414. package/Tests/Server/Utils/Workspace/MicrosoftTeamsGroupChatNames.test.ts +3119 -0
  415. package/Tests/Server/Utils/Workspace/MicrosoftTeamsGroupChatNamesPostgres.test.ts +1721 -0
  416. package/Tests/Server/Utils/Workspace/WorkspaceCreateProjectReferences.test.ts +190 -65
  417. package/Tests/Types/AutoRemediation/AiRemediationCommandPlan.test.ts +10 -4
  418. package/Tests/Types/AutoRemediation/AiRemediationCommandPlanResourceCommand.test.ts +305 -0
  419. package/Tests/Types/Kubernetes/KubernetesAgentChartAiAccess.test.ts +581 -113
  420. package/Tests/Types/Kubernetes/KubernetesAiAgentAccessContract.test.ts +510 -0
  421. package/Tests/Types/Monitor/Recommendation/MonitorRecommendationCatalog.test.ts +277 -13
  422. package/Tests/Types/Monitor/Recommendation/MonitorRecommendationUtil.test.ts +113 -0
  423. package/Tests/Types/Monitor/RumAlertTemplates.test.ts +773 -2
  424. package/Tests/Types/ResourceAiAgent/AiResourceType.test.ts +419 -0
  425. package/Tests/Types/ResourceAiAgent/ResourceAiAccess.test.ts +517 -0
  426. package/Tests/Types/Runbook/RunbookStepType.test.ts +147 -8
  427. package/Tests/Types/Team/ComplianceRule.test.ts +1029 -0
  428. package/Tests/Types/Team/TeamComplianceStatus.test.ts +176 -0
  429. package/Tests/UI/Components/ActionButton/RowActions.test.tsx +641 -0
  430. package/Tests/UI/Components/ActionButton/RowActionsAccessibility.test.tsx +414 -0
  431. package/Tests/UI/Components/ActionButton/SplitActionButtons.test.ts +565 -0
  432. package/Tests/UI/Components/Charts/BarChartDragToSelect.test.tsx +386 -0
  433. package/Tests/UI/Components/Charts/ChartDoubleClickResetWithoutDblclick.test.tsx +1025 -0
  434. package/Tests/UI/Components/Charts/ChartGroupPageZoomHint.test.tsx +196 -0
  435. package/Tests/UI/Components/Charts/ChartPlaceholdersTakeDoubleClick.test.tsx +1861 -0
  436. package/Tests/UI/Components/Charts/ChartPlotClicksWhileResetArmed.test.tsx +382 -0
  437. package/Tests/UI/Components/Charts/ChartRangeSelection.test.tsx +704 -0
  438. package/Tests/UI/Components/Charts/ChartRangeSelectionDoubleClickReset.test.tsx +1481 -0
  439. package/Tests/UI/Components/Charts/ChartRangeSelectionRealRecharts.test.tsx +918 -0
  440. package/Tests/UI/Components/Charts/ChartRowBucketStart.test.ts +350 -0
  441. package/Tests/UI/Components/Charts/DoubleClickReset.test.tsx +996 -0
  442. package/Tests/UI/Components/Charts/HistogramDoubleClickResetRealRecharts.test.tsx +965 -0
  443. package/Tests/UI/Components/Charts/HistogramDriftThenRefetch.test.tsx +277 -0
  444. package/Tests/UI/Components/Charts/HistogramRangeSelectionDataChange.test.tsx +1757 -0
  445. package/Tests/UI/Components/Charts/HistogramRangeSelectionRealRecharts.test.tsx +560 -0
  446. package/Tests/UI/Components/Charts/TimeRangeZoom/ChartPageTimeRangeZoom.test.tsx +513 -0
  447. package/Tests/UI/Components/Charts/TimeRangeZoom/TimeRangeZoomContext.test.tsx +845 -0
  448. package/Tests/UI/Components/Charts/TimeRangeZoom/TimeRangeZoomHint.test.tsx +119 -0
  449. package/Tests/UI/Components/Charts/TimeRangeZoom/TimeRangeZoomHintTailwind.test.tsx +274 -0
  450. package/Tests/UI/Components/Charts/TimeRangeZoom/TimeRangeZoomUtil.test.ts +433 -0
  451. package/Tests/UI/Components/Charts/TimeRangeZoom/UseTimeRangeZoom.test.tsx +863 -0
  452. package/Tests/UI/Components/Charts/TimeRangeZoom/ZoomDocsPromises.test.tsx +1147 -0
  453. package/Tests/UI/Components/DisabledButtonTooltip.test.tsx +14 -3
  454. package/Tests/UI/Components/EntityDropdownEscape.test.tsx +454 -0
  455. package/Tests/UI/Components/EntityDropdownFocusLeave.test.tsx +420 -0
  456. package/Tests/UI/Components/Forms/FormFieldDropdownDisabled.test.tsx +233 -0
  457. package/Tests/UI/Components/Input.test.tsx +80 -1
  458. package/Tests/UI/Components/LogsAnalyticsViewZoom.test.tsx +947 -0
  459. package/Tests/UI/Components/LogsHistogramDragTooltip.test.tsx +17 -5
  460. package/Tests/UI/Components/LogsViewerAnalyticsZoom.test.tsx +501 -0
  461. package/Tests/UI/Components/LogsViewerHistogramZoom.test.tsx +1 -1
  462. package/Tests/UI/Components/ModelTable/BaseModelTableBulkDelete.test.tsx +6 -4
  463. package/Tests/UI/Components/ModelTable/BaseModelTablePermissionGating.test.tsx +60 -8
  464. package/Tests/UI/Components/ModelTable/BaseModelTableRowActions.test.tsx +476 -0
  465. package/Tests/UI/Components/ModelTable/ModelTableWrapContent.test.tsx +7 -5
  466. package/Tests/UI/Components/MoreMenuPortal.test.tsx +623 -0
  467. package/Tests/UI/Components/StatusPage/ResourceGridActions.test.tsx +538 -0
  468. package/Tests/UI/Components/StatusPage/ResourceGridSelection.test.tsx +14 -4
  469. package/Tests/UI/Components/TableCellWrapping.test.tsx +3 -3
  470. package/Tests/UI/Components/TableRowActions.test.tsx +472 -0
  471. package/Tests/UI/Components/TelemetryHistogramDragTooltip.test.tsx +1 -1
  472. package/Tests/UI/Components/TelemetryViewer/TelemetryViewerHistogramClickZoom.test.tsx +1 -1
  473. package/Tests/UI/Components/TelemetryViewer/TelemetryViewerZoomScope.test.tsx +470 -0
  474. package/Tests/UI/Components/TelemetryViewer/UseViewerTimeRangeZoom.test.tsx +571 -0
  475. package/Tests/UI/Components/TelemetryViewer/ViewerDoubleClickResetUnderDataChange.test.tsx +928 -0
  476. package/Tests/UI/Components/TelemetryViewer/ViewerFollowsEnclosingZoom.test.tsx +1569 -0
  477. package/Tests/UI/Components/Toggle.test.tsx +66 -0
  478. package/Tests/UI/MicrosoftTeams/MicrosoftTeamsChatsCardRefreshNames.test.tsx +1023 -0
  479. package/Tests/UI/Rum/ChunkLoader.test.ts +201 -0
  480. package/Tests/UI/Rum/FidelityNotices.test.ts +54 -0
  481. package/Tests/UI/Rum/RecordingHealthDashboard.test.tsx +769 -1
  482. package/Tests/UI/Rum/ReplayCorrelationPanel.test.tsx +72 -0
  483. package/Tests/UI/Rum/ReplayFrameCapture.test.ts +1009 -9
  484. package/Tests/UI/Rum/ReplayRecordedAssets.test.ts +1069 -0
  485. package/Tests/UI/Rum/ReplayStage.test.tsx +913 -2
  486. package/Tests/UI/Rum/SessionReplayTable.test.tsx +443 -8
  487. package/Tests/UI/Rum/SessionReplayUsersTable.test.tsx +439 -9
  488. package/Tests/UI/Rum/UserFlowTablesRowActions.test.tsx +501 -0
  489. package/Tests/Utils/AiRemediation/KubectlPolicyChartRbacParity.test.ts +47 -19
  490. package/Tests/Utils/AiRemediation/KubectlWriteScopeCallerParity.test.ts +2 -0
  491. package/Tests/Utils/AiRemediation/KubernetesAiAgentPolicyCopyParity.test.ts +396 -0
  492. package/Tests/Utils/AiRemediation/Resource/CephCommandPolicy.test.ts +1653 -0
  493. package/Tests/Utils/AiRemediation/Resource/CephOutputRedaction.test.ts +204 -0
  494. package/Tests/Utils/AiRemediation/Resource/DatabaseCommandPolicy.test.ts +1077 -0
  495. package/Tests/Utils/AiRemediation/Resource/DatabaseDiagnosticCatalog.test.ts +558 -0
  496. package/Tests/Utils/AiRemediation/Resource/DatabaseQueryRedactor.test.ts +834 -0
  497. package/Tests/Utils/AiRemediation/Resource/DockerCliGrammar.test.ts +747 -0
  498. package/Tests/Utils/AiRemediation/Resource/DockerEngineCommandPolicy.test.ts +1259 -0
  499. package/Tests/Utils/AiRemediation/Resource/DockerOutputRedaction.test.ts +386 -0
  500. package/Tests/Utils/AiRemediation/Resource/DockerSwarmCommandPolicy.test.ts +782 -0
  501. package/Tests/Utils/AiRemediation/Resource/GovcCommandPolicy.test.ts +2259 -0
  502. package/Tests/Utils/AiRemediation/Resource/HostCommandPolicy.test.ts +2019 -0
  503. package/Tests/Utils/AiRemediation/Resource/ProxmoxCommandPolicy.test.ts +2497 -0
  504. package/Tests/Utils/AiRemediation/Resource/ResourceCommandPolicy.test.ts +1305 -0
  505. package/Tests/Utils/AiRemediation/Resource/ResourceCommandPolicyCore.test.ts +585 -0
  506. package/Tests/Utils/AiRemediation/Resource/ResourceOutputRedactor.test.ts +334 -0
  507. package/Tests/Utils/AiRemediation/Resource/ResourceOutputRedactorCopyParity.test.ts +98 -0
  508. package/Tests/Utils/AiRemediation/Resource/ResourcePolicyImportClosure.test.ts +391 -0
  509. package/Tests/Utils/AiRemediation/ResourceAiAgentPolicyCopyParity.test.ts +497 -0
  510. package/Tests/Utils/Dashboard/DashboardTimeRangeZoom.test.ts +104 -1
  511. package/Tests/Utils/SessionReplay/SessionReplayBudgetMetricType.test.ts +383 -0
  512. package/Types/AI/AIRunType.ts +9 -4
  513. package/Types/AI/InvestigationNotStartedReason.ts +6 -0
  514. package/Types/AI/ResourceAiAccessApi.ts +140 -0
  515. package/Types/AI/ResourceAiAccessPermissions.ts +126 -0
  516. package/Types/AutoRemediation/AiRemediationCommandPlan.ts +197 -18
  517. package/Types/AutoRemediation/AiRemediationCommandPolicyVerdict.ts +28 -0
  518. package/Types/Dashboard/DashboardComponents/DashboardTraceChartComponent.ts +4 -2
  519. package/Types/Kubernetes/KubernetesClusterAiAccess.ts +263 -32
  520. package/Types/Kubernetes/KubernetesClusterAiAccessPermissions.ts +20 -16
  521. package/Types/Kubernetes/KubernetesClusterAiInsights.ts +81 -0
  522. package/Types/Monitor/ProxmoxAlertTemplates.ts +4 -4
  523. package/Types/Monitor/Recommendation/MonitorRecommendationCatalog.ts +55 -22
  524. package/Types/Monitor/Recommendation/MonitorRecommendationTypes.ts +35 -3
  525. package/Types/Monitor/RumAlertTemplates.ts +351 -4
  526. package/Types/ResourceAiAgent/AiResourceType.ts +310 -0
  527. package/Types/ResourceAiAgent/ResourceAiAccess.ts +574 -0
  528. package/Types/Rum/SessionReplayBudgetMetricType.ts +47 -0
  529. package/Types/Runbook/RunbookStepType.ts +29 -0
  530. package/Types/Team/ComplianceNotificationChannel.ts +22 -0
  531. package/Types/Team/ComplianceRule.ts +434 -0
  532. package/Types/Team/ComplianceRuleType.ts +21 -0
  533. package/Types/Team/TeamComplianceStatus.ts +81 -0
  534. package/Types/Telemetry/TelemetryIngestSurface.ts +40 -0
  535. package/UI/Components/ActionButton/ActionButtonSchema.ts +21 -0
  536. package/UI/Components/ActionButton/RowActions.tsx +238 -0
  537. package/UI/Components/ActionButton/SplitActionButtons.ts +173 -0
  538. package/UI/Components/Charts/Area/AreaChart.tsx +32 -2
  539. package/UI/Components/Charts/Bar/BarChart.tsx +40 -3
  540. package/UI/Components/Charts/ChartGroup/ChartGroup.tsx +37 -11
  541. package/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.tsx +80 -243
  542. package/UI/Components/Charts/ChartLibrary/BarChart/BarChart.tsx +122 -31
  543. package/UI/Components/Charts/ChartLibrary/LineChart/LineChart.tsx +95 -244
  544. package/UI/Components/Charts/ChartLibrary/Utils/DoubleClick.ts +214 -0
  545. package/UI/Components/Charts/ChartLibrary/Utils/UseChartBucketsChange.ts +32 -0
  546. package/UI/Components/Charts/ChartLibrary/Utils/UseChartRangeSelection.ts +599 -0
  547. package/UI/Components/Charts/Line/LineChart.tsx +32 -2
  548. package/UI/Components/Charts/TimeRangeZoom/ResetTimeRangeZoomButton.tsx +70 -0
  549. package/UI/Components/Charts/TimeRangeZoom/TimeRangeZoomContext.tsx +226 -0
  550. package/UI/Components/Charts/TimeRangeZoom/TimeRangeZoomHint.tsx +73 -0
  551. package/UI/Components/Charts/TimeRangeZoom/TimeRangeZoomUtil.ts +163 -0
  552. package/UI/Components/Charts/TimeRangeZoom/UseTimeRangeZoom.ts +215 -0
  553. package/UI/Components/Charts/Utils/DataPoint.ts +20 -8
  554. package/UI/Components/Charts/Utils/XAxis.ts +75 -0
  555. package/UI/Components/Charts/Utils/useHistogramRangeSelection.ts +493 -59
  556. package/UI/Components/EntityDropdown/EntityDropdown.tsx +107 -11
  557. package/UI/Components/Forms/Fields/FormField.tsx +10 -0
  558. package/UI/Components/Input/Input.tsx +90 -57
  559. package/UI/Components/List/ListRow.tsx +8 -74
  560. package/UI/Components/LogsViewer/LogsViewer.tsx +40 -11
  561. package/UI/Components/LogsViewer/components/LogTimeRangePicker.tsx +22 -6
  562. package/UI/Components/LogsViewer/components/LogsAnalyticsView.tsx +209 -6
  563. package/UI/Components/LogsViewer/components/LogsHistogram.tsx +127 -84
  564. package/UI/Components/LogsViewer/components/LogsViewerToolbar.tsx +3 -0
  565. package/UI/Components/ModelTable/BaseModelTable.tsx +12 -1
  566. package/UI/Components/MoreMenu/MoreMenu.tsx +365 -30
  567. package/UI/Components/MoreMenu/MoreMenuItem.tsx +70 -17
  568. package/UI/Components/OrderedStatesList/Item.tsx +7 -72
  569. package/UI/Components/StatusPage/ResourceGrid.tsx +126 -77
  570. package/UI/Components/Table/TableBody.tsx +8 -2
  571. package/UI/Components/Table/TableRow.tsx +20 -140
  572. package/UI/Components/TelemetryViewer/TelemetryViewer.tsx +41 -10
  573. package/UI/Components/TelemetryViewer/components/TelemetryHistogram.tsx +47 -9
  574. package/UI/Components/TelemetryViewer/components/TelemetryTimeRangePicker.tsx +25 -6
  575. package/UI/Components/TelemetryViewer/types.ts +2 -0
  576. package/UI/Components/TelemetryViewer/useViewerTimeRangeZoom.ts +448 -0
  577. package/UI/Components/Toggle/Toggle.tsx +26 -0
  578. package/UI/Components/Tooltip/Tooltip.tsx +8 -1
  579. package/UI/Styles/Theme.css +14 -2
  580. package/Utils/AI/InvestigationReport.ts +121 -15
  581. package/Utils/AiRemediation/CommandPolicy.ts +1 -1
  582. package/Utils/AiRemediation/KubectlPolicy.ts +1 -1
  583. package/Utils/AiRemediation/Resource/CephCommandPolicy.ts +1936 -0
  584. package/Utils/AiRemediation/Resource/DatabaseCommandPolicy.ts +166 -0
  585. package/Utils/AiRemediation/Resource/DatabaseDiagnosticCatalog.ts +1532 -0
  586. package/Utils/AiRemediation/Resource/DatabaseQueryRedactor.ts +1394 -0
  587. package/Utils/AiRemediation/Resource/DockerCliGrammar.ts +1839 -0
  588. package/Utils/AiRemediation/Resource/DockerEngineCommandPolicy.ts +490 -0
  589. package/Utils/AiRemediation/Resource/DockerSwarmCommandPolicy.ts +687 -0
  590. package/Utils/AiRemediation/Resource/GovcCommandPolicy.ts +2096 -0
  591. package/Utils/AiRemediation/Resource/HostCommandPolicy.ts +2982 -0
  592. package/Utils/AiRemediation/Resource/ProxmoxCommandPolicy.ts +1679 -0
  593. package/Utils/AiRemediation/Resource/ResourceCommandPolicy.ts +851 -0
  594. package/Utils/AiRemediation/Resource/ResourceCommandPolicyCore.ts +593 -0
  595. package/Utils/AiRemediation/Resource/ResourceOutputRedactor.ts +2812 -0
  596. package/Utils/Dashboard/DashboardTimeRangeZoom.ts +46 -2
  597. package/Utils/SessionReplay/SessionReplayBudgetMetricType.ts +184 -0
  598. package/build/dist/Models/DatabaseModels/AutoRemediationSuggestion.js +62 -0
  599. package/build/dist/Models/DatabaseModels/AutoRemediationSuggestion.js.map +1 -1
  600. package/build/dist/Models/DatabaseModels/CephCluster.js +219 -0
  601. package/build/dist/Models/DatabaseModels/CephCluster.js.map +1 -1
  602. package/build/dist/Models/DatabaseModels/DatabaseServer.js +219 -0
  603. package/build/dist/Models/DatabaseModels/DatabaseServer.js.map +1 -1
  604. package/build/dist/Models/DatabaseModels/DockerHost.js +219 -0
  605. package/build/dist/Models/DatabaseModels/DockerHost.js.map +1 -1
  606. package/build/dist/Models/DatabaseModels/DockerSwarmCluster.js +219 -0
  607. package/build/dist/Models/DatabaseModels/DockerSwarmCluster.js.map +1 -1
  608. package/build/dist/Models/DatabaseModels/GlobalConfig.js +1 -1
  609. package/build/dist/Models/DatabaseModels/GlobalConfig.js.map +1 -1
  610. package/build/dist/Models/DatabaseModels/Host.js +219 -0
  611. package/build/dist/Models/DatabaseModels/Host.js.map +1 -1
  612. package/build/dist/Models/DatabaseModels/Index.js +4 -0
  613. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  614. package/build/dist/Models/DatabaseModels/KubernetesAiAgent.js +385 -0
  615. package/build/dist/Models/DatabaseModels/KubernetesAiAgent.js.map +1 -0
  616. package/build/dist/Models/DatabaseModels/KubernetesCluster.js +3 -3
  617. package/build/dist/Models/DatabaseModels/KubernetesCluster.js.map +1 -1
  618. package/build/dist/Models/DatabaseModels/PodmanHost.js +219 -0
  619. package/build/dist/Models/DatabaseModels/PodmanHost.js.map +1 -1
  620. package/build/dist/Models/DatabaseModels/Project.js +56 -5
  621. package/build/dist/Models/DatabaseModels/Project.js.map +1 -1
  622. package/build/dist/Models/DatabaseModels/ProxmoxCluster.js +219 -0
  623. package/build/dist/Models/DatabaseModels/ProxmoxCluster.js.map +1 -1
  624. package/build/dist/Models/DatabaseModels/ProxmoxResource.js +51 -1
  625. package/build/dist/Models/DatabaseModels/ProxmoxResource.js.map +1 -1
  626. package/build/dist/Models/DatabaseModels/ResourceAiAgent.js +439 -0
  627. package/build/dist/Models/DatabaseModels/ResourceAiAgent.js.map +1 -0
  628. package/build/dist/Models/DatabaseModels/RunnerJob.js +219 -0
  629. package/build/dist/Models/DatabaseModels/RunnerJob.js.map +1 -1
  630. package/build/dist/Models/DatabaseModels/TeamComplianceSetting.js +134 -3
  631. package/build/dist/Models/DatabaseModels/TeamComplianceSetting.js.map +1 -1
  632. package/build/dist/Models/DatabaseModels/VMwareVCenter.js +219 -0
  633. package/build/dist/Models/DatabaseModels/VMwareVCenter.js.map +1 -1
  634. package/build/dist/Models/DatabaseModels/WorkspaceProjectAuthToken.js.map +1 -1
  635. package/build/dist/Server/API/AIChatAPI.js +6 -1
  636. package/build/dist/Server/API/AIChatAPI.js.map +1 -1
  637. package/build/dist/Server/API/AIInvestigationAPI.js +17 -10
  638. package/build/dist/Server/API/AIInvestigationAPI.js.map +1 -1
  639. package/build/dist/Server/API/AutoRemediationAPI.js +374 -24
  640. package/build/dist/Server/API/AutoRemediationAPI.js.map +1 -1
  641. package/build/dist/Server/API/KubernetesClusterAiAccessAPI.js +436 -22
  642. package/build/dist/Server/API/KubernetesClusterAiAccessAPI.js.map +1 -1
  643. package/build/dist/Server/API/MicrosoftTeamsAPI.js +69 -13
  644. package/build/dist/Server/API/MicrosoftTeamsAPI.js.map +1 -1
  645. package/build/dist/Server/API/ProxmoxResourceAPI.js +187 -14
  646. package/build/dist/Server/API/ProxmoxResourceAPI.js.map +1 -1
  647. package/build/dist/Server/API/ResourceAiAccessAPI.js +1119 -0
  648. package/build/dist/Server/API/ResourceAiAccessAPI.js.map +1 -0
  649. package/build/dist/Server/Infrastructure/GlobalCache.js +27 -0
  650. package/build/dist/Server/Infrastructure/GlobalCache.js.map +1 -1
  651. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1796000000000-AddTeamComplianceRuleScope.js +50 -0
  652. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1796000000000-AddTeamComplianceRuleScope.js.map +1 -0
  653. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1796100000000-AddKubernetesAiAgentAndAiDefaults.js +84 -0
  654. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1796100000000-AddKubernetesAiAgentAndAiDefaults.js.map +1 -0
  655. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1796200000000-AddProxmoxResourceNativePushColumns.js +31 -0
  656. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1796200000000-AddProxmoxResourceNativePushColumns.js.map +1 -0
  657. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1796300000000-AddResourceAiAgents.js +168 -0
  658. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1796300000000-AddResourceAiAgents.js.map +1 -0
  659. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +8 -0
  660. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  661. package/build/dist/Server/Infrastructure/Semaphore.js +6 -0
  662. package/build/dist/Server/Infrastructure/Semaphore.js.map +1 -1
  663. package/build/dist/Server/Middleware/TelemetryIngest.js +41 -19
  664. package/build/dist/Server/Middleware/TelemetryIngest.js.map +1 -1
  665. package/build/dist/Server/Services/AIService.js +59 -1
  666. package/build/dist/Server/Services/AIService.js.map +1 -1
  667. package/build/dist/Server/Services/AlertService.js +248 -13
  668. package/build/dist/Server/Services/AlertService.js.map +1 -1
  669. package/build/dist/Server/Services/AlertSeverityService.js +51 -15
  670. package/build/dist/Server/Services/AlertSeverityService.js.map +1 -1
  671. package/build/dist/Server/Services/AnalyticsDatabaseService.js +26 -1
  672. package/build/dist/Server/Services/AnalyticsDatabaseService.js.map +1 -1
  673. package/build/dist/Server/Services/AutoRemediationRuleEngineService.js +601 -3
  674. package/build/dist/Server/Services/AutoRemediationRuleEngineService.js.map +1 -1
  675. package/build/dist/Server/Services/AutoRemediationRuleService.js +1 -1
  676. package/build/dist/Server/Services/AutoRemediationRuleService.js.map +1 -1
  677. package/build/dist/Server/Services/CephClusterService.js +104 -0
  678. package/build/dist/Server/Services/CephClusterService.js.map +1 -1
  679. package/build/dist/Server/Services/DatabaseServerService.js +99 -0
  680. package/build/dist/Server/Services/DatabaseServerService.js.map +1 -1
  681. package/build/dist/Server/Services/DockerHostService.js +104 -0
  682. package/build/dist/Server/Services/DockerHostService.js.map +1 -1
  683. package/build/dist/Server/Services/DockerSwarmClusterService.js +104 -0
  684. package/build/dist/Server/Services/DockerSwarmClusterService.js.map +1 -1
  685. package/build/dist/Server/Services/HostService.js +114 -2
  686. package/build/dist/Server/Services/HostService.js.map +1 -1
  687. package/build/dist/Server/Services/IncidentService.js +199 -72
  688. package/build/dist/Server/Services/IncidentService.js.map +1 -1
  689. package/build/dist/Server/Services/IncidentSeverityService.js +51 -15
  690. package/build/dist/Server/Services/IncidentSeverityService.js.map +1 -1
  691. package/build/dist/Server/Services/KubernetesAiAgentJobService.js +158 -0
  692. package/build/dist/Server/Services/KubernetesAiAgentJobService.js.map +1 -0
  693. package/build/dist/Server/Services/KubernetesAiAgentService.js +1145 -0
  694. package/build/dist/Server/Services/KubernetesAiAgentService.js.map +1 -0
  695. package/build/dist/Server/Services/KubernetesClusterAiAccessService.js +842 -371
  696. package/build/dist/Server/Services/KubernetesClusterAiAccessService.js.map +1 -1
  697. package/build/dist/Server/Services/KubernetesClusterService.js +86 -17
  698. package/build/dist/Server/Services/KubernetesClusterService.js.map +1 -1
  699. package/build/dist/Server/Services/MetricRecordingRuleService.js +46 -0
  700. package/build/dist/Server/Services/MetricRecordingRuleService.js.map +1 -1
  701. package/build/dist/Server/Services/PodmanHostService.js +104 -0
  702. package/build/dist/Server/Services/PodmanHostService.js.map +1 -1
  703. package/build/dist/Server/Services/ProjectService.js +22 -0
  704. package/build/dist/Server/Services/ProjectService.js.map +1 -1
  705. package/build/dist/Server/Services/ProxmoxClusterService.js +104 -0
  706. package/build/dist/Server/Services/ProxmoxClusterService.js.map +1 -1
  707. package/build/dist/Server/Services/ProxmoxResourceService.js +258 -3
  708. package/build/dist/Server/Services/ProxmoxResourceService.js.map +1 -1
  709. package/build/dist/Server/Services/ResourceAiAccessService.js +1028 -0
  710. package/build/dist/Server/Services/ResourceAiAccessService.js.map +1 -0
  711. package/build/dist/Server/Services/ResourceAiAgentJobService.js +173 -0
  712. package/build/dist/Server/Services/ResourceAiAgentJobService.js.map +1 -0
  713. package/build/dist/Server/Services/ResourceAiAgentService.js +1687 -0
  714. package/build/dist/Server/Services/ResourceAiAgentService.js.map +1 -0
  715. package/build/dist/Server/Services/RunnerJobService.js +522 -97
  716. package/build/dist/Server/Services/RunnerJobService.js.map +1 -1
  717. package/build/dist/Server/Services/RunnerService.js +1 -1
  718. package/build/dist/Server/Services/RunnerService.js.map +1 -1
  719. package/build/dist/Server/Services/ScheduledMaintenanceService.js +535 -3
  720. package/build/dist/Server/Services/ScheduledMaintenanceService.js.map +1 -1
  721. package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js +316 -46
  722. package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js.map +1 -1
  723. package/build/dist/Server/Services/TeamComplianceSettingService.js +833 -7
  724. package/build/dist/Server/Services/TeamComplianceSettingService.js.map +1 -1
  725. package/build/dist/Server/Services/TelemetryUsageBillingService.js +26 -0
  726. package/build/dist/Server/Services/TelemetryUsageBillingService.js.map +1 -1
  727. package/build/dist/Server/Services/TraceRecordingRuleService.js +37 -0
  728. package/build/dist/Server/Services/TraceRecordingRuleService.js.map +1 -1
  729. package/build/dist/Server/Services/VMwareVCenterService.js +104 -0
  730. package/build/dist/Server/Services/VMwareVCenterService.js.map +1 -1
  731. package/build/dist/Server/Utils/AI/ClusterAccess/ClusterAccessContext.js +52 -9
  732. package/build/dist/Server/Utils/AI/ClusterAccess/ClusterAccessContext.js.map +1 -1
  733. package/build/dist/Server/Utils/AI/ClusterAccess/KubectlInvestigationToolkit.js +13 -9
  734. package/build/dist/Server/Utils/AI/ClusterAccess/KubectlInvestigationToolkit.js.map +1 -1
  735. package/build/dist/Server/Utils/AI/ClusterAccess/KubectlJobRunner.js +7 -3
  736. package/build/dist/Server/Utils/AI/ClusterAccess/KubectlJobRunner.js.map +1 -1
  737. package/build/dist/Server/Utils/AI/Remediation/RemediationCommandTools.js +1056 -43
  738. package/build/dist/Server/Utils/AI/Remediation/RemediationCommandTools.js.map +1 -1
  739. package/build/dist/Server/Utils/AI/Remediation/RemediationExecutionRunner.js +683 -42
  740. package/build/dist/Server/Utils/AI/Remediation/RemediationExecutionRunner.js.map +1 -1
  741. package/build/dist/Server/Utils/AI/Remediation/RemediationPlanRunner.js +21 -1
  742. package/build/dist/Server/Utils/AI/Remediation/RemediationPlanRunner.js.map +1 -1
  743. package/build/dist/Server/Utils/AI/ResourceAccess/InfrastructureInvestigationToolkit.js +330 -0
  744. package/build/dist/Server/Utils/AI/ResourceAccess/InfrastructureInvestigationToolkit.js.map +1 -0
  745. package/build/dist/Server/Utils/AI/ResourceAccess/ResourceAccessContext.js +160 -0
  746. package/build/dist/Server/Utils/AI/ResourceAccess/ResourceAccessContext.js.map +1 -0
  747. package/build/dist/Server/Utils/AI/ResourceAccess/ResourceAccessToolNames.js +33 -0
  748. package/build/dist/Server/Utils/AI/ResourceAccess/ResourceAccessToolNames.js.map +1 -0
  749. package/build/dist/Server/Utils/AI/ResourceAccess/ResourceAiAccessSettings.js +640 -0
  750. package/build/dist/Server/Utils/AI/ResourceAccess/ResourceAiAccessSettings.js.map +1 -0
  751. package/build/dist/Server/Utils/AI/ResourceAccess/ResourceAiDeleteCleanup.js +226 -0
  752. package/build/dist/Server/Utils/AI/ResourceAccess/ResourceAiDeleteCleanup.js.map +1 -0
  753. package/build/dist/Server/Utils/AI/ResourceAccess/ResourceCommandJobRunner.js +600 -0
  754. package/build/dist/Server/Utils/AI/ResourceAccess/ResourceCommandJobRunner.js.map +1 -0
  755. package/build/dist/Server/Utils/AI/SRE/AIInvestigationEngine.js +89 -9
  756. package/build/dist/Server/Utils/AI/SRE/AIInvestigationEngine.js.map +1 -1
  757. package/build/dist/Server/Utils/AI/SRE/AlertInvestigationRunner.js +55 -4
  758. package/build/dist/Server/Utils/AI/SRE/AlertInvestigationRunner.js.map +1 -1
  759. package/build/dist/Server/Utils/AI/SRE/IncidentInvestigationRunner.js +55 -4
  760. package/build/dist/Server/Utils/AI/SRE/IncidentInvestigationRunner.js.map +1 -1
  761. package/build/dist/Server/Utils/AI/SRE/IncidentPostmortemRunner.js +30 -3
  762. package/build/dist/Server/Utils/AI/SRE/IncidentPostmortemRunner.js.map +1 -1
  763. package/build/dist/Server/Utils/AI/SRE/InvestigationEligibility.js +13 -2
  764. package/build/dist/Server/Utils/AI/SRE/InvestigationEligibility.js.map +1 -1
  765. package/build/dist/Server/Utils/AI/SRE/InvestigationGrader.js +1 -1
  766. package/build/dist/Server/Utils/AutoRemediation/CommandPlanExecutor.js +294 -15
  767. package/build/dist/Server/Utils/AutoRemediation/CommandPlanExecutor.js.map +1 -1
  768. package/build/dist/Server/Utils/AutoRemediation/RemediationVerifier.js +29 -1
  769. package/build/dist/Server/Utils/AutoRemediation/RemediationVerifier.js.map +1 -1
  770. package/build/dist/Server/Utils/Database/ProjectScopedReferenceValidator.js +9 -1
  771. package/build/dist/Server/Utils/Database/ProjectScopedReferenceValidator.js.map +1 -1
  772. package/build/dist/Server/Utils/SessionReplay/SessionReplayBudgetMetrics.js +627 -0
  773. package/build/dist/Server/Utils/SessionReplay/SessionReplayBudgetMetrics.js.map +1 -0
  774. package/build/dist/Server/Utils/SessionReplay/SessionReplayUsage.js +60 -5
  775. package/build/dist/Server/Utils/SessionReplay/SessionReplayUsage.js.map +1 -1
  776. package/build/dist/Server/Utils/Telemetry/InventoryEntityRegistry.js +111 -6
  777. package/build/dist/Server/Utils/Telemetry/InventoryEntityRegistry.js.map +1 -1
  778. package/build/dist/Server/Utils/Telemetry/ProxmoxCephSnapshotScan.js +40 -4
  779. package/build/dist/Server/Utils/Telemetry/ProxmoxCephSnapshotScan.js.map +1 -1
  780. package/build/dist/Server/Utils/Telemetry/ProxmoxNativeNodeLiveness.js +296 -0
  781. package/build/dist/Server/Utils/Telemetry/ProxmoxNativeNodeLiveness.js.map +1 -0
  782. package/build/dist/Server/Utils/Telemetry/ProxmoxNativePush.js +699 -0
  783. package/build/dist/Server/Utils/Telemetry/ProxmoxNativePush.js.map +1 -0
  784. package/build/dist/Server/Utils/Telemetry/TelemetryEntity.js +77 -19
  785. package/build/dist/Server/Utils/Telemetry/TelemetryEntity.js.map +1 -1
  786. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Alert.js +19 -15
  787. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Alert.js.map +1 -1
  788. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/AlertEpisode.js +19 -15
  789. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/AlertEpisode.js.map +1 -1
  790. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Auth.js +17 -1
  791. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Auth.js.map +1 -1
  792. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Incident.js +183 -209
  793. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Incident.js.map +1 -1
  794. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/IncidentEpisode.js +19 -15
  795. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/IncidentEpisode.js.map +1 -1
  796. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/ScheduledMaintenance.js +233 -167
  797. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/ScheduledMaintenance.js.map +1 -1
  798. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.js +768 -152
  799. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.js.map +1 -1
  800. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsActivityDeduplicator.js +129 -0
  801. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsActivityDeduplicator.js.map +1 -0
  802. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsCardChoices.js +266 -0
  803. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsCardChoices.js.map +1 -0
  804. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsCreateCommands.js +258 -0
  805. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsCreateCommands.js.map +1 -0
  806. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsMessageSize.js +104 -0
  807. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsMessageSize.js.map +1 -0
  808. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsReplies.js +183 -0
  809. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsReplies.js.map +1 -0
  810. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsTimezone.js +123 -0
  811. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeamsTimezone.js.map +1 -0
  812. package/build/dist/Types/AI/AIRunType.js +9 -4
  813. package/build/dist/Types/AI/AIRunType.js.map +1 -1
  814. package/build/dist/Types/AI/ResourceAiAccessApi.js +30 -0
  815. package/build/dist/Types/AI/ResourceAiAccessApi.js.map +1 -0
  816. package/build/dist/Types/AI/ResourceAiAccessPermissions.js +98 -0
  817. package/build/dist/Types/AI/ResourceAiAccessPermissions.js.map +1 -0
  818. package/build/dist/Types/AutoRemediation/AiRemediationCommandPlan.js +126 -45
  819. package/build/dist/Types/AutoRemediation/AiRemediationCommandPlan.js.map +1 -1
  820. package/build/dist/Types/AutoRemediation/AiRemediationCommandPolicyVerdict.js +28 -0
  821. package/build/dist/Types/AutoRemediation/AiRemediationCommandPolicyVerdict.js.map +1 -0
  822. package/build/dist/Types/Kubernetes/KubernetesClusterAiAccess.js +72 -16
  823. package/build/dist/Types/Kubernetes/KubernetesClusterAiAccess.js.map +1 -1
  824. package/build/dist/Types/Kubernetes/KubernetesClusterAiAccessPermissions.js +20 -16
  825. package/build/dist/Types/Kubernetes/KubernetesClusterAiAccessPermissions.js.map +1 -1
  826. package/build/dist/Types/Kubernetes/KubernetesClusterAiInsights.js +17 -0
  827. package/build/dist/Types/Kubernetes/KubernetesClusterAiInsights.js.map +1 -0
  828. package/build/dist/Types/Monitor/ProxmoxAlertTemplates.js +4 -4
  829. package/build/dist/Types/Monitor/ProxmoxAlertTemplates.js.map +1 -1
  830. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationCatalog.js +47 -21
  831. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationCatalog.js.map +1 -1
  832. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationTypes.js +5 -0
  833. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationTypes.js.map +1 -1
  834. package/build/dist/Types/Monitor/RumAlertTemplates.js +199 -3
  835. package/build/dist/Types/Monitor/RumAlertTemplates.js.map +1 -1
  836. package/build/dist/Types/ResourceAiAgent/AiResourceType.js +242 -0
  837. package/build/dist/Types/ResourceAiAgent/AiResourceType.js.map +1 -0
  838. package/build/dist/Types/ResourceAiAgent/ResourceAiAccess.js +275 -0
  839. package/build/dist/Types/ResourceAiAgent/ResourceAiAccess.js.map +1 -0
  840. package/build/dist/Types/Rum/SessionReplayBudgetMetricType.js +45 -0
  841. package/build/dist/Types/Rum/SessionReplayBudgetMetricType.js.map +1 -0
  842. package/build/dist/Types/Runbook/RunbookStepType.js +27 -0
  843. package/build/dist/Types/Runbook/RunbookStepType.js.map +1 -1
  844. package/build/dist/Types/Team/ComplianceNotificationChannel.js +23 -0
  845. package/build/dist/Types/Team/ComplianceNotificationChannel.js.map +1 -0
  846. package/build/dist/Types/Team/ComplianceRule.js +304 -0
  847. package/build/dist/Types/Team/ComplianceRule.js.map +1 -0
  848. package/build/dist/Types/Team/ComplianceRuleType.js +21 -0
  849. package/build/dist/Types/Team/ComplianceRuleType.js.map +1 -1
  850. package/build/dist/Types/Team/TeamComplianceStatus.js +2 -0
  851. package/build/dist/Types/Team/TeamComplianceStatus.js.map +1 -0
  852. package/build/dist/Types/Telemetry/TelemetryIngestSurface.js +36 -0
  853. package/build/dist/Types/Telemetry/TelemetryIngestSurface.js.map +1 -1
  854. package/build/dist/UI/Components/ActionButton/ActionButtonSchema.js +20 -1
  855. package/build/dist/UI/Components/ActionButton/ActionButtonSchema.js.map +1 -1
  856. package/build/dist/UI/Components/ActionButton/RowActions.js +113 -0
  857. package/build/dist/UI/Components/ActionButton/RowActions.js.map +1 -0
  858. package/build/dist/UI/Components/ActionButton/SplitActionButtons.js +71 -0
  859. package/build/dist/UI/Components/ActionButton/SplitActionButtons.js.map +1 -0
  860. package/build/dist/UI/Components/Charts/Area/AreaChart.js +16 -1
  861. package/build/dist/UI/Components/Charts/Area/AreaChart.js.map +1 -1
  862. package/build/dist/UI/Components/Charts/Bar/BarChart.js +16 -1
  863. package/build/dist/UI/Components/Charts/Bar/BarChart.js.map +1 -1
  864. package/build/dist/UI/Components/Charts/ChartGroup/ChartGroup.js +27 -5
  865. package/build/dist/UI/Components/Charts/ChartGroup/ChartGroup.js.map +1 -1
  866. package/build/dist/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.js +61 -194
  867. package/build/dist/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.js.map +1 -1
  868. package/build/dist/UI/Components/Charts/ChartLibrary/BarChart/BarChart.js +84 -26
  869. package/build/dist/UI/Components/Charts/ChartLibrary/BarChart/BarChart.js.map +1 -1
  870. package/build/dist/UI/Components/Charts/ChartLibrary/LineChart/LineChart.js +75 -196
  871. package/build/dist/UI/Components/Charts/ChartLibrary/LineChart/LineChart.js.map +1 -1
  872. package/build/dist/UI/Components/Charts/ChartLibrary/Utils/DoubleClick.js +133 -0
  873. package/build/dist/UI/Components/Charts/ChartLibrary/Utils/DoubleClick.js.map +1 -1
  874. package/build/dist/UI/Components/Charts/ChartLibrary/Utils/UseChartBucketsChange.js +26 -0
  875. package/build/dist/UI/Components/Charts/ChartLibrary/Utils/UseChartBucketsChange.js.map +1 -0
  876. package/build/dist/UI/Components/Charts/ChartLibrary/Utils/UseChartRangeSelection.js +371 -0
  877. package/build/dist/UI/Components/Charts/ChartLibrary/Utils/UseChartRangeSelection.js.map +1 -0
  878. package/build/dist/UI/Components/Charts/Line/LineChart.js +16 -1
  879. package/build/dist/UI/Components/Charts/Line/LineChart.js.map +1 -1
  880. package/build/dist/UI/Components/Charts/TimeRangeZoom/ResetTimeRangeZoomButton.js +35 -0
  881. package/build/dist/UI/Components/Charts/TimeRangeZoom/ResetTimeRangeZoomButton.js.map +1 -0
  882. package/build/dist/UI/Components/Charts/TimeRangeZoom/TimeRangeZoomContext.js +107 -0
  883. package/build/dist/UI/Components/Charts/TimeRangeZoom/TimeRangeZoomContext.js.map +1 -0
  884. package/build/dist/UI/Components/Charts/TimeRangeZoom/TimeRangeZoomHint.js +41 -0
  885. package/build/dist/UI/Components/Charts/TimeRangeZoom/TimeRangeZoomHint.js.map +1 -0
  886. package/build/dist/UI/Components/Charts/TimeRangeZoom/TimeRangeZoomUtil.js +117 -0
  887. package/build/dist/UI/Components/Charts/TimeRangeZoom/TimeRangeZoomUtil.js.map +1 -0
  888. package/build/dist/UI/Components/Charts/TimeRangeZoom/UseTimeRangeZoom.js +121 -0
  889. package/build/dist/UI/Components/Charts/TimeRangeZoom/UseTimeRangeZoom.js.map +1 -0
  890. package/build/dist/UI/Components/Charts/Utils/DataPoint.js +15 -7
  891. package/build/dist/UI/Components/Charts/Utils/DataPoint.js.map +1 -1
  892. package/build/dist/UI/Components/Charts/Utils/XAxis.js +70 -0
  893. package/build/dist/UI/Components/Charts/Utils/XAxis.js.map +1 -1
  894. package/build/dist/UI/Components/Charts/Utils/useHistogramRangeSelection.js +305 -38
  895. package/build/dist/UI/Components/Charts/Utils/useHistogramRangeSelection.js.map +1 -1
  896. package/build/dist/UI/Components/EntityDropdown/EntityDropdown.js +89 -14
  897. package/build/dist/UI/Components/EntityDropdown/EntityDropdown.js.map +1 -1
  898. package/build/dist/UI/Components/Forms/Fields/FormField.js +11 -2
  899. package/build/dist/UI/Components/Forms/Fields/FormField.js.map +1 -1
  900. package/build/dist/UI/Components/Input/Input.js +69 -54
  901. package/build/dist/UI/Components/Input/Input.js.map +1 -1
  902. package/build/dist/UI/Components/List/ListRow.js +4 -39
  903. package/build/dist/UI/Components/List/ListRow.js.map +1 -1
  904. package/build/dist/UI/Components/LogsViewer/LogsViewer.js +31 -8
  905. package/build/dist/UI/Components/LogsViewer/LogsViewer.js.map +1 -1
  906. package/build/dist/UI/Components/LogsViewer/components/LogTimeRangePicker.js +10 -1
  907. package/build/dist/UI/Components/LogsViewer/components/LogTimeRangePicker.js.map +1 -1
  908. package/build/dist/UI/Components/LogsViewer/components/LogsAnalyticsView.js +139 -21
  909. package/build/dist/UI/Components/LogsViewer/components/LogsAnalyticsView.js.map +1 -1
  910. package/build/dist/UI/Components/LogsViewer/components/LogsHistogram.js +30 -8
  911. package/build/dist/UI/Components/LogsViewer/components/LogsHistogram.js.map +1 -1
  912. package/build/dist/UI/Components/LogsViewer/components/LogsViewerToolbar.js +1 -1
  913. package/build/dist/UI/Components/LogsViewer/components/LogsViewerToolbar.js.map +1 -1
  914. package/build/dist/UI/Components/ModelTable/BaseModelTable.js +10 -0
  915. package/build/dist/UI/Components/ModelTable/BaseModelTable.js.map +1 -1
  916. package/build/dist/UI/Components/MoreMenu/MoreMenu.js +253 -14
  917. package/build/dist/UI/Components/MoreMenu/MoreMenu.js.map +1 -1
  918. package/build/dist/UI/Components/MoreMenu/MoreMenuItem.js +43 -13
  919. package/build/dist/UI/Components/MoreMenu/MoreMenuItem.js.map +1 -1
  920. package/build/dist/UI/Components/OrderedStatesList/Item.js +2 -38
  921. package/build/dist/UI/Components/OrderedStatesList/Item.js.map +1 -1
  922. package/build/dist/UI/Components/StatusPage/ResourceGrid.js +53 -15
  923. package/build/dist/UI/Components/StatusPage/ResourceGrid.js.map +1 -1
  924. package/build/dist/UI/Components/Table/TableBody.js +6 -2
  925. package/build/dist/UI/Components/Table/TableBody.js.map +1 -1
  926. package/build/dist/UI/Components/Table/TableRow.js +12 -75
  927. package/build/dist/UI/Components/Table/TableRow.js.map +1 -1
  928. package/build/dist/UI/Components/TelemetryViewer/TelemetryViewer.js +32 -7
  929. package/build/dist/UI/Components/TelemetryViewer/TelemetryViewer.js.map +1 -1
  930. package/build/dist/UI/Components/TelemetryViewer/components/TelemetryHistogram.js +27 -9
  931. package/build/dist/UI/Components/TelemetryViewer/components/TelemetryHistogram.js.map +1 -1
  932. package/build/dist/UI/Components/TelemetryViewer/components/TelemetryTimeRangePicker.js +11 -1
  933. package/build/dist/UI/Components/TelemetryViewer/components/TelemetryTimeRangePicker.js.map +1 -1
  934. package/build/dist/UI/Components/TelemetryViewer/useViewerTimeRangeZoom.js +272 -0
  935. package/build/dist/UI/Components/TelemetryViewer/useViewerTimeRangeZoom.js.map +1 -0
  936. package/build/dist/UI/Components/Toggle/Toggle.js +14 -1
  937. package/build/dist/UI/Components/Toggle/Toggle.js.map +1 -1
  938. package/build/dist/UI/Components/Tooltip/Tooltip.js +1 -1
  939. package/build/dist/UI/Components/Tooltip/Tooltip.js.map +1 -1
  940. package/build/dist/Utils/AI/InvestigationReport.js +71 -11
  941. package/build/dist/Utils/AI/InvestigationReport.js.map +1 -1
  942. package/build/dist/Utils/AiRemediation/CommandPolicy.js +1 -1
  943. package/build/dist/Utils/AiRemediation/CommandPolicy.js.map +1 -1
  944. package/build/dist/Utils/AiRemediation/KubectlPolicy.js +1 -1
  945. package/build/dist/Utils/AiRemediation/KubectlPolicy.js.map +1 -1
  946. package/build/dist/Utils/AiRemediation/Resource/CephCommandPolicy.js +1462 -0
  947. package/build/dist/Utils/AiRemediation/Resource/CephCommandPolicy.js.map +1 -0
  948. package/build/dist/Utils/AiRemediation/Resource/DatabaseCommandPolicy.js +122 -0
  949. package/build/dist/Utils/AiRemediation/Resource/DatabaseCommandPolicy.js.map +1 -0
  950. package/build/dist/Utils/AiRemediation/Resource/DatabaseDiagnosticCatalog.js +1139 -0
  951. package/build/dist/Utils/AiRemediation/Resource/DatabaseDiagnosticCatalog.js.map +1 -0
  952. package/build/dist/Utils/AiRemediation/Resource/DatabaseQueryRedactor.js +1060 -0
  953. package/build/dist/Utils/AiRemediation/Resource/DatabaseQueryRedactor.js.map +1 -0
  954. package/build/dist/Utils/AiRemediation/Resource/DockerCliGrammar.js +1301 -0
  955. package/build/dist/Utils/AiRemediation/Resource/DockerCliGrammar.js.map +1 -0
  956. package/build/dist/Utils/AiRemediation/Resource/DockerEngineCommandPolicy.js +370 -0
  957. package/build/dist/Utils/AiRemediation/Resource/DockerEngineCommandPolicy.js.map +1 -0
  958. package/build/dist/Utils/AiRemediation/Resource/DockerSwarmCommandPolicy.js +498 -0
  959. package/build/dist/Utils/AiRemediation/Resource/DockerSwarmCommandPolicy.js.map +1 -0
  960. package/build/dist/Utils/AiRemediation/Resource/GovcCommandPolicy.js +1565 -0
  961. package/build/dist/Utils/AiRemediation/Resource/GovcCommandPolicy.js.map +1 -0
  962. package/build/dist/Utils/AiRemediation/Resource/HostCommandPolicy.js +2206 -0
  963. package/build/dist/Utils/AiRemediation/Resource/HostCommandPolicy.js.map +1 -0
  964. package/build/dist/Utils/AiRemediation/Resource/ProxmoxCommandPolicy.js +1129 -0
  965. package/build/dist/Utils/AiRemediation/Resource/ProxmoxCommandPolicy.js.map +1 -0
  966. package/build/dist/Utils/AiRemediation/Resource/ResourceCommandPolicy.js +565 -0
  967. package/build/dist/Utils/AiRemediation/Resource/ResourceCommandPolicy.js.map +1 -0
  968. package/build/dist/Utils/AiRemediation/Resource/ResourceCommandPolicyCore.js +408 -0
  969. package/build/dist/Utils/AiRemediation/Resource/ResourceCommandPolicyCore.js.map +1 -0
  970. package/build/dist/Utils/AiRemediation/Resource/ResourceOutputRedactor.js +1910 -0
  971. package/build/dist/Utils/AiRemediation/Resource/ResourceOutputRedactor.js.map +1 -0
  972. package/build/dist/Utils/Dashboard/DashboardTimeRangeZoom.js +27 -1
  973. package/build/dist/Utils/Dashboard/DashboardTimeRangeZoom.js.map +1 -1
  974. package/build/dist/Utils/SessionReplay/SessionReplayBudgetMetricType.js +160 -0
  975. package/build/dist/Utils/SessionReplay/SessionReplayBudgetMetricType.js.map +1 -0
  976. package/package.json +1 -1
@@ -0,0 +1,242 @@
1
+ /*
2
+ * The infrastructure resources a resource AI agent can give OneUptime AI
3
+ * access to, and what each one's agent runs.
4
+ *
5
+ * One resource AI agent (image RESOURCE_AI_AGENT_IMAGE_REPOSITORY) is
6
+ * installed next to each resource's telemetry collector. It registers the
7
+ * resource by the same identity the collector reports (identityEnvVars), and
8
+ * runs only the programs listed for its type — every command an argv, never
9
+ * a shell line, tiered by the resource command policy
10
+ * (Utils/AiRemediation/Resource) on the server tool, at the enqueue
11
+ * chokepoint and again on the agent before anything is spawned.
12
+ *
13
+ * Kubernetes clusters are NOT here: they keep their own Kubernetes AI agent
14
+ * (Types/Kubernetes/KubernetesClusterAiAccess).
15
+ *
16
+ * This file imports NOTHING outside Types/ResourceAiAgent on purpose: the
17
+ * resource AI agent (agents/ResourceAIAgent) carries a byte-identical copy of
18
+ * this directory and must compile without the rest of Common.
19
+ */
20
+ /*
21
+ * Stored as a plain string (ResourceAiAgent.resourceType, RunnerJob and
22
+ * AutoRemediationSuggestion rows, job payloads), so each value IS the wire
23
+ * and database contract: never rename one.
24
+ */
25
+ var AiResourceType;
26
+ (function (AiResourceType) {
27
+ AiResourceType["DockerHost"] = "DockerHost";
28
+ AiResourceType["PodmanHost"] = "PodmanHost";
29
+ AiResourceType["DockerSwarmCluster"] = "DockerSwarmCluster";
30
+ AiResourceType["ProxmoxCluster"] = "ProxmoxCluster";
31
+ AiResourceType["VMwareVCenter"] = "VMwareVCenter";
32
+ AiResourceType["CephCluster"] = "CephCluster";
33
+ AiResourceType["DatabaseServer"] = "DatabaseServer";
34
+ AiResourceType["Host"] = "Host";
35
+ })(AiResourceType || (AiResourceType = {}));
36
+ export default AiResourceType;
37
+ /*
38
+ * Every type, in declaration order. This is also the priority order in
39
+ * which a remediation round picks among several resources linked to one
40
+ * incident or alert, so reordering it changes which resource AI fixes first.
41
+ */
42
+ export const ALL_AI_RESOURCE_TYPES = [
43
+ AiResourceType.DockerHost,
44
+ AiResourceType.PodmanHost,
45
+ AiResourceType.DockerSwarmCluster,
46
+ AiResourceType.ProxmoxCluster,
47
+ AiResourceType.VMwareVCenter,
48
+ AiResourceType.CephCluster,
49
+ AiResourceType.DatabaseServer,
50
+ AiResourceType.Host,
51
+ ];
52
+ // Exactly an enum value, case included — what a stored row must hold.
53
+ export function isAiResourceType(value) {
54
+ return (typeof value === "string" &&
55
+ ALL_AI_RESOURCE_TYPES.includes(value));
56
+ }
57
+ // The CLIs a Host agent runs through nsenter on the host itself.
58
+ const HOST_PROGRAMS = [
59
+ "systemctl",
60
+ "journalctl",
61
+ "df",
62
+ "free",
63
+ "uptime",
64
+ "ps",
65
+ "ss",
66
+ "ip",
67
+ "dmesg",
68
+ "lsblk",
69
+ "cat",
70
+ "top",
71
+ "uname",
72
+ "hostnamectl",
73
+ "timedatectl",
74
+ "kill",
75
+ ];
76
+ export const AI_RESOURCE_TYPE_INFO = {
77
+ [AiResourceType.DockerHost]: {
78
+ type: AiResourceType.DockerHost,
79
+ displayName: "Docker host",
80
+ agentDisplayName: "Docker AI agent",
81
+ agentAlias: "docker",
82
+ programs: ["docker"],
83
+ testCommands: ["docker version", "docker info"],
84
+ identityEnvVars: ["DOCKER_HOST_NAME"],
85
+ defaultIdentityPlaceholders: ["docker-host"],
86
+ },
87
+ /*
88
+ * Podman serves the Docker-compatible API on its socket, so the agent
89
+ * drives it with the same docker CLI and the same engine policy.
90
+ */
91
+ [AiResourceType.PodmanHost]: {
92
+ type: AiResourceType.PodmanHost,
93
+ displayName: "Podman host",
94
+ agentDisplayName: "Podman AI agent",
95
+ agentAlias: "podman",
96
+ programs: ["docker"],
97
+ testCommands: ["docker version", "docker info"],
98
+ identityEnvVars: ["PODMAN_HOST_NAME"],
99
+ defaultIdentityPlaceholders: ["podman-host"],
100
+ },
101
+ /*
102
+ * The swarm agent must run on a manager node: `docker node ls` fails on a
103
+ * worker, which is exactly what "Test connection" should reveal.
104
+ */
105
+ [AiResourceType.DockerSwarmCluster]: {
106
+ type: AiResourceType.DockerSwarmCluster,
107
+ displayName: "Docker Swarm cluster",
108
+ agentDisplayName: "Docker Swarm AI agent",
109
+ agentAlias: "docker-swarm",
110
+ programs: ["docker"],
111
+ testCommands: ["docker version", "docker node ls"],
112
+ identityEnvVars: ["DOCKER_SWARM_CLUSTER_NAME"],
113
+ // The compose default, and the name install.sh suggests.
114
+ defaultIdentityPlaceholders: ["docker-swarm", "my-swarm"],
115
+ },
116
+ /*
117
+ * There is no Proxmox CLI in the agent: "pvesh" is parsed by the policy
118
+ * and executed as calls to the Proxmox VE HTTPS API with the agent's own
119
+ * API token.
120
+ */
121
+ [AiResourceType.ProxmoxCluster]: {
122
+ type: AiResourceType.ProxmoxCluster,
123
+ displayName: "Proxmox cluster",
124
+ agentDisplayName: "Proxmox AI agent",
125
+ agentAlias: "proxmox",
126
+ programs: ["pvesh"],
127
+ testCommands: ["pvesh get /version", "pvesh get /cluster/status"],
128
+ identityEnvVars: ["PROXMOX_CLUSTER_NAME"],
129
+ defaultIdentityPlaceholders: ["proxmox-cluster"],
130
+ },
131
+ [AiResourceType.VMwareVCenter]: {
132
+ type: AiResourceType.VMwareVCenter,
133
+ displayName: "VMware vCenter",
134
+ agentDisplayName: "VMware AI agent",
135
+ agentAlias: "vmware",
136
+ programs: ["govc"],
137
+ testCommands: ["govc about"],
138
+ identityEnvVars: ["VMWARE_VCENTER_NAME"],
139
+ defaultIdentityPlaceholders: ["vmware-vcenter"],
140
+ },
141
+ [AiResourceType.CephCluster]: {
142
+ type: AiResourceType.CephCluster,
143
+ displayName: "Ceph cluster",
144
+ agentDisplayName: "Ceph AI agent",
145
+ agentAlias: "ceph",
146
+ programs: ["ceph"],
147
+ testCommands: ["ceph health", "ceph versions"],
148
+ identityEnvVars: ["CEPH_CLUSTER_NAME"],
149
+ defaultIdentityPlaceholders: ["ceph"],
150
+ },
151
+ /*
152
+ * "db" is not a binary: it names a typed catalog of diagnostic queries the
153
+ * agent runs through the database's own driver. Free SQL never runs.
154
+ * Database servers register by id or endpoint, never by name (names are
155
+ * not unique), so there is no placeholder to warn about.
156
+ */
157
+ [AiResourceType.DatabaseServer]: {
158
+ type: AiResourceType.DatabaseServer,
159
+ displayName: "Database server",
160
+ agentDisplayName: "Database AI agent",
161
+ agentAlias: "database",
162
+ programs: ["db"],
163
+ testCommands: ["db ping", "db version"],
164
+ identityEnvVars: [
165
+ "DATABASE_SERVER_ID",
166
+ "DATABASE_SYSTEM",
167
+ "DATABASE_SERVER_ADDRESS",
168
+ "DATABASE_SERVER_PORT",
169
+ ],
170
+ defaultIdentityPlaceholders: [],
171
+ },
172
+ // HOST_NAME defaults to the host's own hostname, so there is no placeholder.
173
+ [AiResourceType.Host]: {
174
+ type: AiResourceType.Host,
175
+ displayName: "Host",
176
+ agentDisplayName: "Host AI agent",
177
+ agentAlias: "host",
178
+ programs: HOST_PROGRAMS,
179
+ testCommands: ["uptime", "systemctl list-units --failed --no-pager"],
180
+ identityEnvVars: ["HOST_NAME"],
181
+ defaultIdentityPlaceholders: [],
182
+ },
183
+ };
184
+ export function getAiResourceTypeInfo(type) {
185
+ return AI_RESOURCE_TYPE_INFO[type];
186
+ }
187
+ /*
188
+ * Words an operator may set ONEUPTIME_AI_AGENT_RESOURCE_TYPE to besides the
189
+ * agentAlias itself. Compared after trimming, lowercasing and reading "_"
190
+ * as "-".
191
+ */
192
+ const EXTRA_AGENT_ALIASES = {
193
+ swarm: AiResourceType.DockerSwarmCluster,
194
+ vcenter: AiResourceType.VMwareVCenter,
195
+ db: AiResourceType.DatabaseServer,
196
+ };
197
+ /*
198
+ * Read a resource type from configuration or a request: an enum value in
199
+ * any case ("DockerHost", "dockerhost"), or an agent alias ("docker",
200
+ * "podman", "docker-swarm"/"swarm", "proxmox", "vmware"/"vcenter", "ceph",
201
+ * "database"/"db", "host"). Anything else is null — never a guess.
202
+ */
203
+ export function parseAiResourceType(value) {
204
+ if (typeof value !== "string") {
205
+ return null;
206
+ }
207
+ const trimmed = value.trim();
208
+ if (!trimmed) {
209
+ return null;
210
+ }
211
+ const folded = trimmed.toLowerCase();
212
+ for (const type of ALL_AI_RESOURCE_TYPES) {
213
+ if (type.toLowerCase() === folded) {
214
+ return type;
215
+ }
216
+ }
217
+ const alias = folded.replace(/_/g, "-");
218
+ for (const type of ALL_AI_RESOURCE_TYPES) {
219
+ if (AI_RESOURCE_TYPE_INFO[type].agentAlias === alias) {
220
+ return type;
221
+ }
222
+ }
223
+ if (Object.prototype.hasOwnProperty.call(EXTRA_AGENT_ALIASES, alias)) {
224
+ return EXTRA_AGENT_ALIASES[alias] || null;
225
+ }
226
+ return null;
227
+ }
228
+ /*
229
+ * Whether an agent's identity is one of its collector's defaults, compared
230
+ * the way the resource rows are looked up (trimmed, case-insensitively). The
231
+ * agent warns on true; it never refuses.
232
+ */
233
+ export function isDefaultIdentityPlaceholder(type, identifier) {
234
+ if (typeof identifier !== "string" || !isAiResourceType(type)) {
235
+ return false;
236
+ }
237
+ const folded = identifier.trim().toLowerCase();
238
+ return AI_RESOURCE_TYPE_INFO[type].defaultIdentityPlaceholders.some((placeholder) => {
239
+ return placeholder.toLowerCase() === folded;
240
+ });
241
+ }
242
+ //# sourceMappingURL=AiResourceType.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AiResourceType.js","sourceRoot":"","sources":["../../../../Types/ResourceAiAgent/AiResourceType.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,275 @@
1
+ /*
2
+ * OneUptime AI access to an infrastructure resource through its resource AI
3
+ * agent: the command tiers and remediation modes, the agent's posture, the
4
+ * access status the dashboard and the AI runs read, the agent <-> server
5
+ * wire protocol and the shared caps.
6
+ *
7
+ * The tier and mode enums carry exactly the string values of the Kubernetes
8
+ * ones (KubectlCommandTier, KubernetesAiRemediationMode — a Common test
9
+ * asserts it), so stored strings are interchangeable and every prompt,
10
+ * card and ladder that reads a tier or a mode means the same thing for a
11
+ * cluster and for any other resource.
12
+ *
13
+ * Imports only ./AiResourceType on purpose: the resource AI agent
14
+ * (agents/ResourceAIAgent) carries a byte-identical copy of this directory
15
+ * and must compile without the rest of Common.
16
+ */
17
+ import { isAiResourceType } from "./AiResourceType";
18
+ /*
19
+ * The tier the resource command policy assigns to one command. Tiers are the
20
+ * whole safety model: what a run may execute is a function of (tier, mode),
21
+ * never of prose in a prompt.
22
+ *
23
+ * Read: inspects the resource and changes nothing (docker ps, pvesh
24
+ * get, govc vm.info, ceph health, systemctl status, ...).
25
+ * Investigations only ever run these.
26
+ * SafeWrite: a reversible change to exactly ONE named object (restart one
27
+ * container, start one VM, restart one unit, ...). Automatic mode
28
+ * runs these without a human.
29
+ * RiskyWrite: a change that can take something down or alter what runs
30
+ * (stop, kill, update, migrate, ...). Needs a human unless the
31
+ * operator allowlisted the exact shape on the resource or the
32
+ * resource bypasses approvals.
33
+ * Denied: never runs, even with human approval (exec, run, rm, prune,
34
+ * anything reading credentials, anything the policy does not
35
+ * know).
36
+ */
37
+ export var ResourceCommandTier;
38
+ (function (ResourceCommandTier) {
39
+ ResourceCommandTier["Read"] = "Read";
40
+ ResourceCommandTier["SafeWrite"] = "SafeWrite";
41
+ ResourceCommandTier["RiskyWrite"] = "RiskyWrite";
42
+ ResourceCommandTier["Denied"] = "Denied";
43
+ })(ResourceCommandTier || (ResourceCommandTier = {}));
44
+ /*
45
+ * How OneUptime AI may change a resource once it has diagnosed a signal —
46
+ * the same four modes a Kubernetes cluster has.
47
+ *
48
+ * Disabled: AI never proposes or runs a change on this resource.
49
+ * RequireApproval: AI composes a command plan and a human approves it with
50
+ * one click before anything runs.
51
+ * Automatic: safe changes (SafeWrite) run without a human; a riskier
52
+ * change is proposed for approval unless the resource's
53
+ * allowlist names its exact shape.
54
+ * BypassApproval: every change the policy allows — safe AND riskier — runs
55
+ * on its own, except what always needs a human.
56
+ *
57
+ * In EVERY mode: Denied commands never run, commands the policy marks
58
+ * requiresHuman always ask, and the agent itself refuses every write unless
59
+ * it was started with RESOURCE_AI_ALLOW_WRITES_ENV=true (and then only on
60
+ * the targets RESOURCE_AI_WRITE_TARGETS_ENV allows, never its protected
61
+ * targets).
62
+ */
63
+ export var ResourceAiRemediationMode;
64
+ (function (ResourceAiRemediationMode) {
65
+ ResourceAiRemediationMode["Disabled"] = "Disabled";
66
+ ResourceAiRemediationMode["RequireApproval"] = "RequireApproval";
67
+ ResourceAiRemediationMode["Automatic"] = "Automatic";
68
+ ResourceAiRemediationMode["BypassApproval"] = "BypassApproval";
69
+ })(ResourceAiRemediationMode || (ResourceAiRemediationMode = {}));
70
+ // The modes in which OneUptime AI executes changes without a human.
71
+ export const UNATTENDED_RESOURCE_REMEDIATION_MODES = [
72
+ ResourceAiRemediationMode.Automatic,
73
+ ResourceAiRemediationMode.BypassApproval,
74
+ ];
75
+ export function isUnattendedResourceRemediationMode(mode) {
76
+ return (mode !== undefined &&
77
+ mode !== null &&
78
+ UNATTENDED_RESOURCE_REMEDIATION_MODES.includes(mode));
79
+ }
80
+ /*
81
+ * A stored or submitted mode, exactly as spelled. Anything unknown is
82
+ * Disabled: a value this build cannot read must never widen what AI may do.
83
+ */
84
+ export function parseResourceAiRemediationMode(value) {
85
+ if (typeof value === "string" &&
86
+ Object.values(ResourceAiRemediationMode).includes(value)) {
87
+ return value;
88
+ }
89
+ return ResourceAiRemediationMode.Disabled;
90
+ }
91
+ // The agent heartbeats every 30 seconds; it counts as online this long after.
92
+ export const RESOURCE_AI_AGENT_ALIVE_WINDOW_IN_MINUTES = 5;
93
+ // Every agent route (register, heartbeat, claim-next-job, ...) lives under it.
94
+ export const RESOURCE_AI_AGENT_INGEST_PATH = "/resource-ai-agent-ingest";
95
+ export const RESOURCE_AI_AGENT_IMAGE_REPOSITORY = "oneuptime/resource-ai-agent";
96
+ // The Kubernetes AI agent uses 3876; both can run on one host.
97
+ export const RESOURCE_AI_AGENT_DEFAULT_HEALTH_PORT = 3877;
98
+ /*
99
+ * Environment the resource AI agent reads. The single source of truth: the
100
+ * agent's Config imports these from its copy of this file, and the install
101
+ * docs are pinned against them.
102
+ *
103
+ * RESOURCE_TYPE: which resource the agent serves (an agentAlias or an enum
104
+ * value, read with parseAiResourceType).
105
+ * RESOURCE_NAME: overrides the identity otherwise read from the type's
106
+ * identityEnvVars (the collector's own variables).
107
+ * ALLOW_WRITES: "true" lets the agent run writes at all. Anything else —
108
+ * unset included — keeps it read-only, whatever the dashboard
109
+ * says.
110
+ * WRITE_TARGETS: comma-separated globs of the targets (container, service,
111
+ * VM, unit, ... names) a write may touch. Empty or unset means
112
+ * any target except the agent's protected ones.
113
+ * API_KEY: the first non-empty of these authenticates registration
114
+ * (the collectors already set one of them).
115
+ */
116
+ export const RESOURCE_AI_AGENT_RESOURCE_TYPE_ENV = "ONEUPTIME_AI_AGENT_RESOURCE_TYPE";
117
+ export const RESOURCE_AI_AGENT_RESOURCE_NAME_ENV = "ONEUPTIME_AI_AGENT_RESOURCE_NAME";
118
+ export const RESOURCE_AI_ALLOW_WRITES_ENV = "ONEUPTIME_AI_ALLOW_WRITES";
119
+ export const RESOURCE_AI_WRITE_TARGETS_ENV = "ONEUPTIME_AI_WRITE_TARGETS";
120
+ export const RESOURCE_AI_AGENT_API_KEY_ENVS = [
121
+ "ONEUPTIME_API_KEY",
122
+ "ONEUPTIME_TELEMETRY_INGESTION_KEY",
123
+ "ONEUPTIME_SERVICE_TOKEN",
124
+ ];
125
+ // Bounds parseResourceAiAgentPosture holds every posture to.
126
+ export const MAX_POSTURE_LIST_ENTRIES = 64;
127
+ export const MAX_POSTURE_STRING_LENGTH = 256;
128
+ // Keys that would reach an object's prototype if assigned.
129
+ const UNSAFE_OBJECT_KEYS = [
130
+ "__proto__",
131
+ "constructor",
132
+ "prototype",
133
+ ];
134
+ // A display-only string: kept (trimmed, capped) when it is one, else null.
135
+ function readDisplayString(value) {
136
+ if (typeof value !== "string") {
137
+ return null;
138
+ }
139
+ const trimmed = value.trim();
140
+ if (!trimmed) {
141
+ return null;
142
+ }
143
+ return trimmed.slice(0, MAX_POSTURE_STRING_LENGTH);
144
+ }
145
+ /*
146
+ * A list the write scope depends on. Absent reads as []; anything else must
147
+ * be an array of at most MAX_POSTURE_LIST_ENTRIES non-empty strings of at
148
+ * most MAX_POSTURE_STRING_LENGTH characters. A list that breaks the rules is
149
+ * reported as malformed (never partially trusted): dropping one entry of a
150
+ * protected list, or one of an allowlist, would change what a write may
151
+ * touch.
152
+ */
153
+ function readTargetList(value) {
154
+ if (value === undefined || value === null) {
155
+ return { list: [], malformed: false };
156
+ }
157
+ if (!Array.isArray(value) || value.length > MAX_POSTURE_LIST_ENTRIES) {
158
+ return { list: [], malformed: true };
159
+ }
160
+ const list = [];
161
+ for (const entry of value) {
162
+ if (typeof entry !== "string") {
163
+ return { list: [], malformed: true };
164
+ }
165
+ const trimmed = entry.trim();
166
+ if (!trimmed || trimmed.length > MAX_POSTURE_STRING_LENGTH) {
167
+ return { list: [], malformed: true };
168
+ }
169
+ if (!list.includes(trimmed)) {
170
+ list.push(trimmed);
171
+ }
172
+ }
173
+ return { list, malformed: false };
174
+ }
175
+ function readDetails(value) {
176
+ const details = {};
177
+ if (!value || typeof value !== "object" || Array.isArray(value)) {
178
+ return details;
179
+ }
180
+ let count = 0;
181
+ for (const key of Object.keys(value)) {
182
+ if (count >= MAX_POSTURE_LIST_ENTRIES) {
183
+ break;
184
+ }
185
+ if (!key ||
186
+ key.length > MAX_POSTURE_STRING_LENGTH ||
187
+ UNSAFE_OBJECT_KEYS.includes(key)) {
188
+ continue;
189
+ }
190
+ const entry = value[key];
191
+ if (typeof entry === "string") {
192
+ details[key] = entry.slice(0, MAX_POSTURE_STRING_LENGTH);
193
+ }
194
+ else if (typeof entry === "number" && Number.isFinite(entry)) {
195
+ details[key] = entry;
196
+ }
197
+ else if (typeof entry === "boolean" || entry === null) {
198
+ details[key] = entry;
199
+ }
200
+ else {
201
+ continue;
202
+ }
203
+ count++;
204
+ }
205
+ return details;
206
+ }
207
+ /*
208
+ * Read a posture from an agent's request body or the ResourceAiAgent.posture
209
+ * column. Strict and fail-closed:
210
+ * - null unless resourceType is exactly an AiResourceType value and
211
+ * resourceIdentifier a non-empty string of at most 256 characters;
212
+ * - allowWrites is true only for the boolean true;
213
+ * - a malformed writeTargets or protectedTargets list (not an array of
214
+ * non-empty strings, over 64 entries, an entry over 256 characters)
215
+ * forces allowWrites to false rather than being partly trusted;
216
+ * - display strings are trimmed and capped at 256 characters, details keep
217
+ * only scalar values (at most 64 of them), and reportedAt only a
218
+ * parseable date.
219
+ */
220
+ export function parseResourceAiAgentPosture(value) {
221
+ if (!value || typeof value !== "object" || Array.isArray(value)) {
222
+ return null;
223
+ }
224
+ const raw = value;
225
+ const resourceType = raw["resourceType"];
226
+ if (!isAiResourceType(resourceType)) {
227
+ return null;
228
+ }
229
+ const identifierRaw = raw["resourceIdentifier"];
230
+ if (typeof identifierRaw !== "string") {
231
+ return null;
232
+ }
233
+ const resourceIdentifier = identifierRaw.trim();
234
+ if (!resourceIdentifier ||
235
+ resourceIdentifier.length > MAX_POSTURE_STRING_LENGTH) {
236
+ return null;
237
+ }
238
+ const writeTargets = readTargetList(raw["writeTargets"]);
239
+ const protectedTargets = readTargetList(raw["protectedTargets"]);
240
+ const posture = {
241
+ resourceType,
242
+ resourceIdentifier,
243
+ agentVersion: readDisplayString(raw["agentVersion"]),
244
+ allowWrites: raw["allowWrites"] === true &&
245
+ !writeTargets.malformed &&
246
+ !protectedTargets.malformed,
247
+ allowWritesSetting: readDisplayString(raw["allowWritesSetting"]),
248
+ writeTargets: writeTargets.list,
249
+ protectedTargets: protectedTargets.list,
250
+ toolVersion: readDisplayString(raw["toolVersion"]),
251
+ reachable: raw["reachable"] === true,
252
+ reachError: readDisplayString(raw["reachError"]),
253
+ details: readDetails(raw["details"]),
254
+ };
255
+ const reportedAt = raw["reportedAt"];
256
+ if (typeof reportedAt === "string" &&
257
+ reportedAt.length <= 64 &&
258
+ !Number.isNaN(Date.parse(reportedAt))) {
259
+ posture.reportedAt = reportedAt;
260
+ }
261
+ return posture;
262
+ }
263
+ // The refusals that clear without anyone doing anything; retrying is right.
264
+ export const TRANSIENT_RESOURCE_AI_AGENT_REGISTRATION_REFUSALS = ["previous_instance_online"];
265
+ export function isTransientResourceAiAgentRegistrationRefusal(reason) {
266
+ return (typeof reason === "string" &&
267
+ TRANSIENT_RESOURCE_AI_AGENT_REGISTRATION_REFUSALS.includes(reason));
268
+ }
269
+ // Caps shared by the investigation tool, the remediation toolkit and the agent.
270
+ export const MAX_RESOURCE_COMMANDS_PER_INVESTIGATION = 8;
271
+ export const DEFAULT_RESOURCE_COMMAND_TIMEOUT_MS = 30 * 1000;
272
+ export const MAX_RESOURCE_COMMAND_TIMEOUT_MS = 2 * 60 * 1000;
273
+ export const MAX_RESOURCE_COMMAND_OUTPUT_CHARS_FOR_LLM = 8000;
274
+ export const MAX_RESOURCE_AGENT_OUTPUT_BYTES = 50 * 1024;
275
+ //# sourceMappingURL=ResourceAiAccess.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResourceAiAccess.js","sourceRoot":"","sources":["../../../../Types/ResourceAiAgent/ResourceAiAccess.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ /*
2
+ * Metric names the session replay budget sweep posts every five minutes
3
+ * (Common/Server/Utils/SessionReplay/SessionReplayBudgetMetrics.ts), so the
4
+ * two storage budgets on the Replay Health page can be charted and alerted on
5
+ * like any other metric - the same way monitors post `oneuptime.monitor.*`
6
+ * and SLOs post `oneuptime.slo.*`. Without them a spent budget was only ever
7
+ * visible to someone looking at the Health page: recorders are told to stop,
8
+ * quietly, and recordings simply stop appearing.
9
+ *
10
+ * The values are stored verbatim as metric names in ClickHouse. Renaming one
11
+ * orphans every point already written under the old name and silences every
12
+ * monitor watching it, so treat them as a public, append-only contract.
13
+ *
14
+ * Every row is keyed to a RUM application (primaryEntityId = its id, type
15
+ * RealUserMonitor), which is what lets a monitor scoped to that application
16
+ * see it. The project series carry only a `projectId` attribute: the daily
17
+ * limit belongs to the project, and the same value is posted under each
18
+ * application that records, so nothing about the row may read as that
19
+ * application's own usage. The application series also carry
20
+ * `rumApplicationId` and `rumApplicationName`.
21
+ */
22
+ var SessionReplayBudgetMetricType;
23
+ (function (SessionReplayBudgetMetricType) {
24
+ /*
25
+ * Replay upload bytes the gate has charged since 00:00 UTC, for the whole
26
+ * project (every application together). Unit "By".
27
+ */
28
+ SessionReplayBudgetMetricType["ProjectDailyUsedBytes"] = "oneuptime.rum.session.replay.budget.project.daily.used.bytes";
29
+ /*
30
+ * The above as a percent of the deployment's daily limit, rounded down to
31
+ * 0.01 so ">= 100" means exactly what the gate means by "spent". Not
32
+ * capped: the request that crosses the limit stays charged. Unit "%".
33
+ */
34
+ SessionReplayBudgetMetricType["ProjectDailyUsedPercent"] = "oneuptime.rum.session.replay.budget.project.daily.used.percent";
35
+ /*
36
+ * Replay upload bytes charged to one application's monthly budget since the
37
+ * 1st (UTC). Only counted, and only posted, while the application has a
38
+ * monthly budget. Unit "By".
39
+ */
40
+ SessionReplayBudgetMetricType["ApplicationMonthlyUsedBytes"] = "oneuptime.rum.session.replay.budget.application.monthly.used.bytes";
41
+ // The above as a percent of the application's monthly budget. Unit "%".
42
+ SessionReplayBudgetMetricType["ApplicationMonthlyUsedPercent"] = "oneuptime.rum.session.replay.budget.application.monthly.used.percent";
43
+ })(SessionReplayBudgetMetricType || (SessionReplayBudgetMetricType = {}));
44
+ export default SessionReplayBudgetMetricType;
45
+ //# sourceMappingURL=SessionReplayBudgetMetricType.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SessionReplayBudgetMetricType.js","sourceRoot":"","sources":["../../../../Types/Rum/SessionReplayBudgetMetricType.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,IAAK,6BAuBJ;AAvBD,WAAK,6BAA6B;IAChC;;;OAGG;IACH,uHAAsF,CAAA;IAEtF;;;;OAIG;IACH,2HAA0F,CAAA;IAE1F;;;;OAIG;IACH,mIAAkG,CAAA;IAElG,wEAAwE;IACxE,uIAAsG,CAAA;AACxG,CAAC,EAvBI,6BAA6B,KAA7B,6BAA6B,QAuBjC;AAED,eAAe,6BAA6B,CAAC"}
@@ -15,6 +15,15 @@ var RunbookStepType;
15
15
  * commands, remediations run policy-tiered writes); not authored in runbooks.
16
16
  */
17
17
  RunbookStepType["Kubectl"] = "Kubectl";
18
+ /*
19
+ * A single command for an infrastructure resource's AI agent (Docker,
20
+ * Podman, Docker Swarm, Proxmox, VMware, Ceph, a database server or a
21
+ * host), dispatched as an argv (never a shell line) to that resource's
22
+ * online ResourceAiAgent — never claimed by a Runner, never run by the
23
+ * Worker. Composed only by OneUptime AI and tiered by the resource command
24
+ * policy (Utils/AiRemediation/Resource); not authored in runbooks.
25
+ */
26
+ RunbookStepType["ResourceCommand"] = "ResourceCommand";
18
27
  })(RunbookStepType || (RunbookStepType = {}));
19
28
  export default RunbookStepType;
20
29
  /*
@@ -62,4 +71,22 @@ export const PAYLOAD_CARRYING_STEP_TYPES = [
62
71
  export function isPayloadCarryingStepType(type) {
63
72
  return PAYLOAD_CARRYING_STEP_TYPES.includes(type);
64
73
  }
74
+ /*
75
+ * Step types executed by an infrastructure resource's AI agent (a
76
+ * ResourceAiAgent row), a third lane beside the Runner and the Worker. Such
77
+ * a job is written with targetResourceAiAgentId and no targetAgentId, so no
78
+ * Runner can claim it: RunnerJobService.enqueue refuses these types (they
79
+ * are not in RUNNER_EXECUTED_STEP_TYPES), a Runner may not ask for them on a
80
+ * claim, and the Worker's step switch has no case for them.
81
+ *
82
+ * Deliberately NOT in PAYLOAD_CARRYING_STEP_TYPES, which is the payload half
83
+ * of the Runner lane (a test asserts the two Runner halves are
84
+ * complementary); these jobs still carry their argv in RunnerJob.payload.
85
+ */
86
+ export const AI_AGENT_EXECUTED_STEP_TYPES = [
87
+ RunbookStepType.ResourceCommand,
88
+ ];
89
+ export function isAiAgentExecutedStepType(type) {
90
+ return AI_AGENT_EXECUTED_STEP_TYPES.includes(type);
91
+ }
65
92
  //# sourceMappingURL=RunbookStepType.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RunbookStepType.js","sourceRoot":"","sources":["../../../../Types/Runbook/RunbookStepType.ts"],"names":[],"mappings":"AAAA,IAAK,eAgBJ;AAhBD,WAAK,eAAe;IAClB,oCAAiB,CAAA;IACjB,4CAAyB,CAAA;IACzB,8CAA2B,CAAA;IAC3B,gCAAa,CAAA;IACb,4BAAS,CAAA;IACT,8BAAW,CAAA;IACX,4CAAyB,CAAA;IACzB;;;;;;OAMG;IACH,sCAAmB,CAAA;AACrB,CAAC,EAhBI,eAAe,KAAf,eAAe,QAgBnB;AAED,eAAe,eAAe,CAAC;AAE/B;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAA2B;IAChE,eAAe,CAAC,UAAU;IAC1B,eAAe,CAAC,IAAI;IACpB,eAAe,CAAC,GAAG;IACnB,eAAe,CAAC,UAAU;IAC1B,eAAe,CAAC,OAAO;CACxB,CAAC;AAEF,MAAM,UAAU,wBAAwB,CAAC,IAAqB;IAC5D,OAAO,0BAA0B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACnD,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAA2B;IACjE,eAAe,CAAC,GAAG;IACnB,eAAe,CAAC,UAAU;IAC1B,eAAe,CAAC,OAAO;CACxB,CAAC;AAEF,MAAM,UAAU,yBAAyB,CAAC,IAAqB;IAC7D,OAAO,2BAA2B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACpD,CAAC"}
1
+ {"version":3,"file":"RunbookStepType.js","sourceRoot":"","sources":["../../../../Types/Runbook/RunbookStepType.ts"],"names":[],"mappings":"AAAA,IAAK,eAyBJ;AAzBD,WAAK,eAAe;IAClB,oCAAiB,CAAA;IACjB,4CAAyB,CAAA;IACzB,8CAA2B,CAAA;IAC3B,gCAAa,CAAA;IACb,4BAAS,CAAA;IACT,8BAAW,CAAA;IACX,4CAAyB,CAAA;IACzB;;;;;;OAMG;IACH,sCAAmB,CAAA;IACnB;;;;;;;OAOG;IACH,sDAAmC,CAAA;AACrC,CAAC,EAzBI,eAAe,KAAf,eAAe,QAyBnB;AAED,eAAe,eAAe,CAAC;AAE/B;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAA2B;IAChE,eAAe,CAAC,UAAU;IAC1B,eAAe,CAAC,IAAI;IACpB,eAAe,CAAC,GAAG;IACnB,eAAe,CAAC,UAAU;IAC1B,eAAe,CAAC,OAAO;CACxB,CAAC;AAEF,MAAM,UAAU,wBAAwB,CAAC,IAAqB;IAC5D,OAAO,0BAA0B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACnD,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAA2B;IACjE,eAAe,CAAC,GAAG;IACnB,eAAe,CAAC,UAAU;IAC1B,eAAe,CAAC,OAAO;CACxB,CAAC;AAEF,MAAM,UAAU,yBAAyB,CAAC,IAAqB;IAC7D,OAAO,2BAA2B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACpD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAA2B;IAClE,eAAe,CAAC,eAAe;CAChC,CAAC;AAEF,MAAM,UAAU,yBAAyB,CAAC,IAAqB;IAC7D,OAAO,4BAA4B,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AACrD,CAAC"}
@@ -0,0 +1,23 @@
1
+ /*
2
+ * The notification channel an on-call compliance rule can insist on
3
+ * (TeamComplianceSetting.notificationChannel). NULL on a setting means "any
4
+ * channel". The string values are stored, so they must never be renamed.
5
+ *
6
+ * Every channel a UserNotificationRule can point at is here, because a
7
+ * compliance rule that could only ask about four of the nine would report a
8
+ * member whose pager is Telegram as unreachable when they are not.
9
+ */
10
+ var ComplianceNotificationChannel;
11
+ (function (ComplianceNotificationChannel) {
12
+ ComplianceNotificationChannel["Call"] = "Call";
13
+ ComplianceNotificationChannel["SMS"] = "SMS";
14
+ ComplianceNotificationChannel["Push"] = "Push";
15
+ ComplianceNotificationChannel["Email"] = "Email";
16
+ ComplianceNotificationChannel["WhatsApp"] = "WhatsApp";
17
+ ComplianceNotificationChannel["Telegram"] = "Telegram";
18
+ ComplianceNotificationChannel["Slack"] = "Slack";
19
+ ComplianceNotificationChannel["MicrosoftTeams"] = "MicrosoftTeams";
20
+ ComplianceNotificationChannel["Webhook"] = "Webhook";
21
+ })(ComplianceNotificationChannel || (ComplianceNotificationChannel = {}));
22
+ export default ComplianceNotificationChannel;
23
+ //# sourceMappingURL=ComplianceNotificationChannel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ComplianceNotificationChannel.js","sourceRoot":"","sources":["../../../../Types/Team/ComplianceNotificationChannel.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,IAAK,6BAUJ;AAVD,WAAK,6BAA6B;IAChC,8CAAa,CAAA;IACb,4CAAW,CAAA;IACX,8CAAa,CAAA;IACb,gDAAe,CAAA;IACf,sDAAqB,CAAA;IACrB,sDAAqB,CAAA;IACrB,gDAAe,CAAA;IACf,kEAAiC,CAAA;IACjC,oDAAmB,CAAA;AACrB,CAAC,EAVI,6BAA6B,KAA7B,6BAA6B,QAUjC;AAED,eAAe,6BAA6B,CAAC"}