@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
@@ -1,5 +1,17 @@
1
1
  import RunbookStepType from "../Runbook/RunbookStepType";
2
2
  import { KubectlCommandTier, PROTECTED_KUBERNETES_NAMESPACES, } from "../Kubernetes/KubernetesClusterAiAccess";
3
+ import { AiRemediationCommandPolicyVerdict, MAX_COMMAND_LENGTH_CHARS, } from "./AiRemediationCommandPolicyVerdict";
4
+ import { AI_RESOURCE_TYPE_INFO, isAiResourceType, } from "../ResourceAiAgent/AiResourceType";
5
+ import { RESOURCE_AI_ALLOW_WRITES_ENV, RESOURCE_AI_WRITE_TARGETS_ENV, ResourceCommandTier, } from "../ResourceAiAgent/ResourceAiAccess";
6
+ /*
7
+ * Defined in a leaf module of their own (no imports) so the pure kubectl
8
+ * policy closure — KubectlPolicy, KubectlWriteScope, CommandPolicy and the
9
+ * types they read — can be copied verbatim into the standalone Kubernetes AI
10
+ * agent (agents/KubernetesAIAgent) without dragging this file, and through
11
+ * its JSON import most of Common, along. Re-exported here so every existing
12
+ * importer keeps working.
13
+ */
14
+ export { AiRemediationCommandPolicyVerdict, MAX_COMMAND_LENGTH_CHARS };
3
15
  /*
4
16
  * The AI-composed command plan stored on
5
17
  * AutoRemediationSuggestion.commandPlan (jsonb). Everything in here is
@@ -12,28 +24,18 @@ import { KubectlCommandTier, PROTECTED_KUBERNETES_NAMESPACES, } from "../Kuberne
12
24
  * The only step types an AI remediation run may compose. The structured
13
25
  * Kubernetes step (restart/scale) stays runbook-only; AI reaches a cluster
14
26
  * through the Kubectl step instead, whose argv is tiered by KubectlPolicy
15
- * and which targets a Runner the cluster's AI page bound.
27
+ * and which targets a Runner the cluster's AI page bound. Every other
28
+ * infrastructure resource (Docker, Podman, Swarm, Proxmox, VMware, Ceph, a
29
+ * database server, a host) is reached through ResourceCommand, whose argv
30
+ * is tiered by the resource command policy and which targets the
31
+ * resource's own AI agent — never a Runner.
16
32
  */
17
33
  export const AI_COMMAND_STEP_TYPES = [
18
34
  RunbookStepType.Bash,
19
35
  RunbookStepType.SSH,
20
36
  RunbookStepType.Kubectl,
37
+ RunbookStepType.ResourceCommand,
21
38
  ];
22
- export var AiRemediationCommandPolicyVerdict;
23
- (function (AiRemediationCommandPolicyVerdict) {
24
- /*
25
- * Matched the rule's operator-authored allowlist and passed the
26
- * structural chain guard — eligible for FullAuto inline execution.
27
- */
28
- AiRemediationCommandPolicyVerdict["AutoApproved"] = "AutoApproved";
29
- // Not denylisted, but a human must approve before it runs.
30
- AiRemediationCommandPolicyVerdict["RequiresApproval"] = "RequiresApproval";
31
- /*
32
- * Matched the hard denylist. Denied commands are never stored in a plan —
33
- * the verdict exists so policy evaluation has a complete result type.
34
- */
35
- AiRemediationCommandPolicyVerdict["Denied"] = "Denied";
36
- })(AiRemediationCommandPolicyVerdict || (AiRemediationCommandPolicyVerdict = {}));
37
39
  export var AiRemediationCommandExecutionStatus;
38
40
  (function (AiRemediationCommandExecutionStatus) {
39
41
  AiRemediationCommandExecutionStatus["Pending"] = "Pending";
@@ -99,7 +101,6 @@ export function getRollbackCommandStepId(command) {
99
101
  }
100
102
  // Hard caps — enforced at plan acceptance, not just in the prompt.
101
103
  export const MAX_PLAN_COMMANDS = 5;
102
- export const MAX_COMMAND_LENGTH_CHARS = 2000;
103
104
  export const MIN_COMMAND_TIMEOUT_MS = 1000;
104
105
  export const MAX_COMMAND_TIMEOUT_MS = 5 * 60 * 1000;
105
106
  export const DEFAULT_COMMAND_TIMEOUT_MS = 60 * 1000;
@@ -141,6 +142,45 @@ export const KUBECTL_AUTOMATIC_MODE_SUMMARY = getKubectlAutomaticModeSummary({ a
141
142
  */
142
143
  export const KUBECTL_BYPASS_MODE_SUMMARY = "Bypass approval: AI does not ask. Every change the policy allows — safe AND riskier — runs on its own, follow-up rounds included, except for what always needs a human.";
143
144
  export const KUBECTL_EVERY_MODE_LIMITS_SUMMARY = `In every mode, Bypass approval included: ${KUBECTL_NEVER_RUNS_SUMMARY}; ${KUBECTL_ALWAYS_ASKS_SUMMARY}; the cluster's in-cluster Runner never changes its own namespace, nor a namespace outside the ones its chart lets it change, nor nodes when its chart turned node operations off; and an unattended run becomes a proposal when the hourly per-cluster circuit breaker trips or another unattended round already holds the cluster.`;
145
+ /*
146
+ * The resource command tiers and the unattended resource modes in the words
147
+ * every resource remediation prompt, tool description and feed item uses —
148
+ * for the Docker and Podman hosts, Docker Swarm, Proxmox, VMware and Ceph
149
+ * clusters, database servers and hosts reached through their resource AI
150
+ * agents. They restate the ResourceCommandTier and ResourceAiRemediationMode
151
+ * doc comments in Types/ResourceAiAgent/ResourceAiAccess and must keep
152
+ * matching them — and the resource command policy (ResourceCommandPolicy),
153
+ * which is what actually decides. What each kind of resource accepts is its
154
+ * tool policy's own guide (ResourceCommandPolicy.getWriteCommandGuide); these
155
+ * are the rules every kind shares. One copy, so a prompt can never describe
156
+ * a tier the policy no longer has.
157
+ */
158
+ // SafeWrite: what an Automatic resource runs without a human.
159
+ export const RESOURCE_SAFE_CHANGES_SUMMARY = "a reversible change to exactly ONE named object — restart or start one container, a rolling restart of one service, start one VM, restart one unit, cancel one query — never several objects at once";
160
+ // RiskyWrite: needs a human unless the allowlist names it or approvals are bypassed.
161
+ export const RESOURCE_RISKIER_CHANGES_SUMMARY = "a change that can take something down or alter what runs — stop, kill or pause a container, update limits, scale a service to zero, shut down, power off or reset a VM, mark an OSD out, stop a unit, terminate a session — and a change to several objects at once";
162
+ /*
163
+ * Asks a human whatever the resource's mode, allowlist included: what the
164
+ * resource command policy marks requiresHuman (the canonical mode text in
165
+ * ResourceAiAccess).
166
+ */
167
+ export const RESOURCE_ALWAYS_ASKS_SUMMARY = "a change the resource's command policy marks as always needing a human (draining a Swarm node, migrating a VM, putting an ESXi host into maintenance, killing a process on a host, ...) always needs a human, in every mode — Bypass approval and the allowlist included";
168
+ // Denied: never runs, whoever approves it.
169
+ export const RESOURCE_NEVER_RUNS_SUMMARY = "destructive commands never run, even with approval: exec, run, rm, prune, deleting or destroying anything, anything that reads or changes credentials, anything the resource's command policy does not know, and anything written as a shell line (pipes, redirects, ;, &&, $( ), sudo)";
170
+ // How the resource's allowlist is read.
171
+ export const RESOURCE_ALLOWLIST_SUMMARY = "the resource's command allowlist is matched word by word: a pattern must have exactly as many words as the command, a * stands for exactly one whole word (never part of one), and every other word must be spelled exactly as the command spells it";
172
+ /*
173
+ * The every-mode clause about unattended resource runs (the resource
174
+ * sibling of ClusterAccessContext's UNATTENDED_ROUND_BECOMES_PROPOSAL_SUMMARY).
175
+ */
176
+ export const RESOURCE_UNATTENDED_ROUND_BECOMES_PROPOSAL_SUMMARY = "an unattended run becomes a proposal when the hourly per-resource circuit breaker trips or another unattended round already holds the resource";
177
+ export const RESOURCE_AUTOMATIC_MODE_SUMMARY = `Automatic: safe changes run without a human (${RESOURCE_SAFE_CHANGES_SUMMARY}). A riskier change (${RESOURCE_RISKIER_CHANGES_SUMMARY}) never runs without one: when the round could only find riskier fixes it ends by proposing exactly those for one-click approval; when it also ran safe fixes, a riskier fix is proposed only if verification shows the safe ones did not recover the signal (the follow-up round, which asks). Shapes on the resource's command allowlist run on their own.`;
178
+ /*
179
+ * Interpolated into prompts and feed copy on its own, so it names the
180
+ * exceptions instead of pointing at a list "below".
181
+ */
182
+ export const RESOURCE_BYPASS_MODE_SUMMARY = "Bypass approval: AI does not ask. Every change the policy allows — safe AND riskier — runs on its own, follow-up rounds included, except for what always needs a human.";
183
+ export const RESOURCE_EVERY_MODE_LIMITS_SUMMARY = `In every mode, Bypass approval included: ${RESOURCE_NEVER_RUNS_SUMMARY}; ${RESOURCE_ALWAYS_ASKS_SUMMARY}; the resource's AI agent changes nothing unless it was started with ${RESOURCE_AI_ALLOW_WRITES_ENV}=true, never changes its own protected targets (itself and what it runs in), and with ${RESOURCE_AI_WRITE_TARGETS_ENV} set changes only the targets it names; and ${RESOURCE_UNATTENDED_ROUND_BECOMES_PROPOSAL_SUMMARY}.`;
144
184
  export class AiRemediationCommandPlanUtil {
145
185
  /*
146
186
  * Parse a jsonb column value back into a typed plan. Fail-closed: any
@@ -185,6 +225,19 @@ export class AiRemediationCommandPlanUtil {
185
225
  !obj["kubernetesClusterId"].trim())) {
186
226
  return null;
187
227
  }
228
+ /*
229
+ * A ResourceCommand step names its resource by type and id, runs
230
+ * through the resource's AI agent (runnerId holds the ResourceAiAgent
231
+ * id) and never carries a credential or a cluster. Anything else is a
232
+ * plan this build cannot execute safely, so the whole plan is refused.
233
+ */
234
+ let resourceFields = null;
235
+ if (stepType === RunbookStepType.ResourceCommand) {
236
+ resourceFields = AiRemediationCommandPlanUtil.parseResourceFields(obj);
237
+ if (!resourceFields) {
238
+ return null;
239
+ }
240
+ }
188
241
  const kubectlTierRaw = String(obj["kubectlTier"] || "");
189
242
  const kubectlTier = Object.values(KubectlCommandTier).includes(kubectlTierRaw)
190
243
  ? kubectlTierRaw
@@ -199,43 +252,27 @@ export class AiRemediationCommandPlanUtil {
199
252
  const timeoutInMs = typeof timeoutRaw === "number" && Number.isFinite(timeoutRaw)
200
253
  ? Math.min(MAX_COMMAND_TIMEOUT_MS, Math.max(MIN_COMMAND_TIMEOUT_MS, Math.floor(timeoutRaw)))
201
254
  : DEFAULT_COMMAND_TIMEOUT_MS;
202
- commands.push({
203
- sequence: typeof obj["sequence"] === "number"
255
+ commands.push(Object.assign(Object.assign({ sequence: typeof obj["sequence"] === "number"
204
256
  ? obj["sequence"]
205
- : commands.length + 1,
206
- stepType: stepType,
207
- runnerId: runnerId,
208
- runnerNameSnapshot: typeof obj["runnerNameSnapshot"] === "string"
257
+ : commands.length + 1, stepType: stepType, runnerId: runnerId, runnerNameSnapshot: typeof obj["runnerNameSnapshot"] === "string"
209
258
  ? obj["runnerNameSnapshot"]
210
- : "Runner",
211
- credentialId: typeof obj["credentialId"] === "string"
259
+ : (resourceFields === null || resourceFields === void 0 ? void 0 : resourceFields.resourceType)
260
+ ? AI_RESOURCE_TYPE_INFO[resourceFields.resourceType]
261
+ .agentDisplayName
262
+ : "Runner", credentialId: typeof obj["credentialId"] === "string"
212
263
  ? obj["credentialId"]
213
- : undefined,
214
- credentialNameSnapshot: typeof obj["credentialNameSnapshot"] === "string"
264
+ : undefined, credentialNameSnapshot: typeof obj["credentialNameSnapshot"] === "string"
215
265
  ? obj["credentialNameSnapshot"]
216
- : undefined,
217
- kubernetesClusterId: typeof obj["kubernetesClusterId"] === "string"
266
+ : undefined, kubernetesClusterId: typeof obj["kubernetesClusterId"] === "string"
218
267
  ? obj["kubernetesClusterId"]
219
- : undefined,
220
- kubernetesClusterNameSnapshot: typeof obj["kubernetesClusterNameSnapshot"] === "string"
268
+ : undefined, kubernetesClusterNameSnapshot: typeof obj["kubernetesClusterNameSnapshot"] === "string"
221
269
  ? obj["kubernetesClusterNameSnapshot"]
222
- : undefined,
223
- kubectlTier,
224
- command: command,
225
- timeoutInMs: timeoutInMs,
226
- rationale: typeof obj["rationale"] === "string" ? obj["rationale"] : "",
227
- expectedEffect: typeof obj["expectedEffect"] === "string"
270
+ : undefined, kubectlTier }, (resourceFields || {})), { command: command, timeoutInMs: timeoutInMs, rationale: typeof obj["rationale"] === "string" ? obj["rationale"] : "", expectedEffect: typeof obj["expectedEffect"] === "string"
228
271
  ? obj["expectedEffect"]
229
- : "",
230
- rollbackCommand: typeof obj["rollbackCommand"] === "string" &&
272
+ : "", rollbackCommand: typeof obj["rollbackCommand"] === "string" &&
231
273
  obj["rollbackCommand"].trim()
232
274
  ? obj["rollbackCommand"]
233
- : undefined,
234
- policyVerdict: verdict,
235
- wasAutoExecuted: obj["wasAutoExecuted"] === true,
236
- execution: AiRemediationCommandPlanUtil.parseExecutionState(obj["execution"]),
237
- rollbackExecution: AiRemediationCommandPlanUtil.parseExecutionState(obj["rollbackExecution"]),
238
- });
275
+ : undefined, policyVerdict: verdict, wasAutoExecuted: obj["wasAutoExecuted"] === true, execution: AiRemediationCommandPlanUtil.parseExecutionState(obj["execution"]), rollbackExecution: AiRemediationCommandPlanUtil.parseExecutionState(obj["rollbackExecution"]) }));
239
276
  }
240
277
  // Execution order must be unambiguous.
241
278
  commands.sort((a, b) => {
@@ -262,6 +299,50 @@ export class AiRemediationCommandPlanUtil {
262
299
  }
263
300
  return plan;
264
301
  }
302
+ /*
303
+ * The resource fields of a stored ResourceCommand step, or null when the
304
+ * step must not be trusted: an unknown resourceType, a blank resourceId,
305
+ * any credential or cluster field, or a tier that is Denied or not a
306
+ * tier at all.
307
+ */
308
+ static parseResourceFields(obj) {
309
+ const resourceType = obj["resourceType"];
310
+ if (!isAiResourceType(resourceType)) {
311
+ return null;
312
+ }
313
+ const resourceId = obj["resourceId"];
314
+ if (typeof resourceId !== "string" || !resourceId.trim()) {
315
+ return null;
316
+ }
317
+ for (const field of [
318
+ "credentialId",
319
+ "credentialNameSnapshot",
320
+ "credential",
321
+ "kubernetesClusterId",
322
+ ]) {
323
+ if (obj[field] !== undefined && obj[field] !== null) {
324
+ return null;
325
+ }
326
+ }
327
+ const tierRaw = obj["resourceCommandTier"];
328
+ let resourceCommandTier = undefined;
329
+ if (tierRaw !== undefined && tierRaw !== null && tierRaw !== "") {
330
+ if (typeof tierRaw !== "string" ||
331
+ !Object.values(ResourceCommandTier).includes(tierRaw) ||
332
+ tierRaw === ResourceCommandTier.Denied) {
333
+ return null;
334
+ }
335
+ resourceCommandTier = tierRaw;
336
+ }
337
+ return {
338
+ resourceType,
339
+ resourceId,
340
+ resourceNameSnapshot: typeof obj["resourceNameSnapshot"] === "string"
341
+ ? obj["resourceNameSnapshot"]
342
+ : undefined,
343
+ resourceCommandTier,
344
+ };
345
+ }
265
346
  static toJSON(plan) {
266
347
  return JSON.parse(JSON.stringify(plan));
267
348
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AiRemediationCommandPlan.js","sourceRoot":"","sources":["../../../../Types/AutoRemediation/AiRemediationCommandPlan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AiRemediationCommandPlan.js","sourceRoot":"","sources":["../../../../Types/AutoRemediation/AiRemediationCommandPlan.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,4BAA4B,CAAC;AAEzD,OAAO,EACL,kBAAkB,EAClB,+BAA+B,GAChC,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACL,iCAAiC,EACjC,wBAAwB,GACzB,MAAM,qCAAqC,CAAC;AAC7C,OAAuB,EACrB,qBAAqB,EACrB,gBAAgB,GACjB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EACL,4BAA4B,EAC5B,6BAA6B,EAC7B,mBAAmB,GACpB,MAAM,qCAAqC,CAAC;AAE7C;;;;;;;GAOG;AACH,OAAO,EAAE,iCAAiC,EAAE,wBAAwB,EAAE,CAAC;AAEvE;;;;;;;GAOG;AAEH;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAA2B;IAC3D,eAAe,CAAC,IAAI;IACpB,eAAe,CAAC,GAAG;IACnB,eAAe,CAAC,OAAO;IACvB,eAAe,CAAC,eAAe;CAChC,CAAC;AAEF,MAAM,CAAN,IAAY,mCAYX;AAZD,WAAY,mCAAmC;IAC7C,0DAAmB,CAAA;IACnB,0DAAmB,CAAA;IACnB,8DAAuB,CAAA;IACvB,wDAAiB,CAAA;IACjB;;;;;OAKG;IACH,0DAAmB,CAAA;AACrB,CAAC,EAZW,mCAAmC,KAAnC,mCAAmC,QAY9C;AAED,MAAM,CAAN,IAAY,gCAKX;AALD,WAAY,gCAAgC;IAC1C,6DAAyB,CAAA;IACzB,uDAAmB,CAAA;IACnB,2DAAuB,CAAA;IACvB,qDAAiB,CAAA;AACnB,CAAC,EALW,gCAAgC,KAAhC,gCAAgC,QAK3C;AAED,MAAM,CAAN,IAAY,2BAMX;AAND,WAAY,2BAA2B;IACrC,4DAA6B,CAAA;IAC7B,sDAAuB,CAAA;IACvB,gDAAiB,CAAA;IACjB,kDAAkD;IAClD,8DAA+B,CAAA;AACjC,CAAC,EANW,2BAA2B,KAA3B,2BAA2B,QAMtC;AAuFD;;;GAGG;AACH,MAAM,UAAU,+BAA+B,CAC7C,MAAuD;IAEvD,OAAO,CACL,MAAM,KAAK,mCAAmC,CAAC,SAAS;QACxD,MAAM,KAAK,mCAAmC,CAAC,MAAM;QACrD,MAAM,KAAK,mCAAmC,CAAC,OAAO,CACvD,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAW,aAAa,CAAC;AACnE,MAAM,CAAC,MAAM,+BAA+B,GAAW,cAAc,CAAC;AACtE,MAAM,CAAC,MAAM,+BAA+B,GAAW,cAAc,CAAC;AAEtE;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CACrC,OAAmE;IAEnE,OAAO,GACL,OAAO,CAAC,eAAe,KAAK,IAAI;QAC9B,CAAC,CAAC,6BAA6B;QAC/B,CAAC,CAAC,+BACN,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,OAA+C;IAE/C,OAAO,GAAG,+BAA+B,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;AACjE,CAAC;AAED,mEAAmE;AACnE,MAAM,CAAC,MAAM,iBAAiB,GAAW,CAAC,CAAC;AAC3C,MAAM,CAAC,MAAM,sBAAsB,GAAW,IAAI,CAAC;AACnD,MAAM,CAAC,MAAM,sBAAsB,GAAW,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAC5D,MAAM,CAAC,MAAM,0BAA0B,GAAW,EAAE,GAAG,IAAI,CAAC;AAuB5D,6DAA6D;AAC7D,MAAM,UAAU,4BAA4B,CAC1C,OAAoC;IAEpC,OAAO,kIACL,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC,EAClE,2LAA2L,CAAC;AAC9L,CAAC;AAED,qFAAqF;AACrF,MAAM,UAAU,+BAA+B,CAC7C,OAAoC;IAEpC,OAAO,mCACL,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EACnD,oIAAoI,CAAC;AACvI,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,2BAA2B,CACzC,OAAoC;IAEpC,OAAO,qCAAqC,+BAA+B,CAAC,IAAI,CAC9E,IAAI,CACL,IACC,OAAO,CAAC,mBAAmB;QACzB,CAAC,CAAC,gEAAgE;QAClE,CAAC,CAAC,eACN,sEAAsE,CAAC;AACzE,CAAC;AAED,MAAM,CAAC,MAAM,4BAA4B,GACvC,4BAA4B,CAAC,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC;AAE9D,MAAM,CAAC,MAAM,+BAA+B,GAC1C,+BAA+B,CAAC,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC;AAEjE,MAAM,CAAC,MAAM,2BAA2B,GAAW,2BAA2B,CAAC;IAC7E,mBAAmB,EAAE,IAAI;CAC1B,CAAC,CAAC;AAEH,2CAA2C;AAC3C,MAAM,CAAC,MAAM,0BAA0B,GACrC,2WAA2W,CAAC;AAE9W,uCAAuC;AACvC,MAAM,CAAC,MAAM,yBAAyB,GACpC,8MAA8M,CAAC;AAEjN,MAAM,UAAU,8BAA8B,CAC5C,OAAoC;IAEpC,OAAO,gDAAgD,4BAA4B,CACjF,OAAO,CACR,wBAAwB,+BAA+B,CACtD,OAAO,CACR,6VAA6V,CAAC;AACjW,CAAC;AAED,MAAM,CAAC,MAAM,8BAA8B,GACzC,8BAA8B,CAAC,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC;AAEhE;;;GAGG;AACH,MAAM,CAAC,MAAM,2BAA2B,GACtC,yKAAyK,CAAC;AAE5K,MAAM,CAAC,MAAM,iCAAiC,GAAW,4CAA4C,0BAA0B,KAAK,2BAA2B,sUAAsU,CAAC;AAEte;;;;;;;;;;;;GAYG;AAEH,8DAA8D;AAC9D,MAAM,CAAC,MAAM,6BAA6B,GACxC,sMAAsM,CAAC;AAEzM,qFAAqF;AACrF,MAAM,CAAC,MAAM,gCAAgC,GAC3C,qQAAqQ,CAAC;AAExQ;;;;GAIG;AACH,MAAM,CAAC,MAAM,4BAA4B,GACvC,0QAA0Q,CAAC;AAE7Q,2CAA2C;AAC3C,MAAM,CAAC,MAAM,2BAA2B,GACtC,yRAAyR,CAAC;AAE5R,wCAAwC;AACxC,MAAM,CAAC,MAAM,0BAA0B,GACrC,sPAAsP,CAAC;AAEzP;;;GAGG;AACH,MAAM,CAAC,MAAM,kDAAkD,GAC7D,gJAAgJ,CAAC;AAEnJ,MAAM,CAAC,MAAM,+BAA+B,GAAW,gDAAgD,6BAA6B,wBAAwB,gCAAgC,8VAA8V,CAAC;AAE3hB;;;GAGG;AACH,MAAM,CAAC,MAAM,4BAA4B,GACvC,yKAAyK,CAAC;AAE5K,MAAM,CAAC,MAAM,kCAAkC,GAAW,4CAA4C,2BAA2B,KAAK,4BAA4B,wEAAwE,4BAA4B,yFAAyF,6BAA6B,+CAA+C,kDAAkD,GAAG,CAAC;AAEje,MAAM,OAAO,4BAA4B;IACvC;;;;OAIG;IACI,MAAM,CAAC,KAAK,CACjB,IAAmC;QAEnC,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,WAAW,GAAY,IAAI,CAAC,UAAU,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5D,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,WAAW,CAAC,MAAM,GAAG,iBAAiB,EAAE,CAAC;YAC3C,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,QAAQ,GAAgC,EAAE,CAAC;QAEjD,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;YAC/B,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACtC,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,GAAG,GAAe,IAAkB,CAAC;YAE3C,MAAM,QAAQ,GAAW,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;YACvD,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,QAA2B,CAAC,EAAE,CAAC;gBACjE,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,OAAO,GACX,OAAO,GAAG,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3D,MAAM,QAAQ,GACZ,OAAO,GAAG,CAAC,UAAU,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;gBACxC,OAAO,IAAI,CAAC;YACd,CAAC;YAED,IAAI,OAAO,CAAC,MAAM,GAAG,wBAAwB,EAAE,CAAC;gBAC9C,OAAO,IAAI,CAAC;YACd,CAAC;YAED,IACE,QAAQ,KAAK,eAAe,CAAC,GAAG;gBAChC,CAAC,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,IAAI,EAAE,CAAC,EACxE,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,IACE,QAAQ,KAAK,eAAe,CAAC,OAAO;gBACpC,CAAC,OAAO,GAAG,CAAC,qBAAqB,CAAC,KAAK,QAAQ;oBAC7C,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,IAAI,EAAE,CAAC,EACrC,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YAED;;;;;eAKG;YACH,IAAI,cAAc,GAMP,IAAI,CAAC;YAEhB,IAAI,QAAQ,KAAK,eAAe,CAAC,eAAe,EAAE,CAAC;gBACjD,cAAc,GAAG,4BAA4B,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;gBAEvE,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,OAAO,IAAI,CAAC;gBACd,CAAC;YACH,CAAC;YAED,MAAM,cAAc,GAAW,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;YAChE,MAAM,WAAW,GAAmC,MAAM,CAAC,MAAM,CAC/D,kBAAkB,CACnB,CAAC,QAAQ,CAAC,cAAoC,CAAC;gBAC9C,CAAC,CAAE,cAAqC;gBACxC,CAAC,CAAC,SAAS,CAAC;YAEd,MAAM,OAAO,GAAW,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,CAAC;YAC3D,IACE,OAAO,KAAK,iCAAiC,CAAC,YAAY;gBAC1D,OAAO,KAAK,iCAAiC,CAAC,gBAAgB,EAC9D,CAAC;gBACD,+CAA+C;gBAC/C,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,UAAU,GAAY,GAAG,CAAC,aAAa,CAAC,CAAC;YAC/C,MAAM,WAAW,GACf,OAAO,UAAU,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAC3D,CAAC,CAAC,IAAI,CAAC,GAAG,CACN,sBAAsB,EACtB,IAAI,CAAC,GAAG,CAAC,sBAAsB,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CACzD;gBACH,CAAC,CAAC,0BAA0B,CAAC;YAEjC,QAAQ,CAAC,IAAI,+BACX,QAAQ,EACN,OAAO,GAAG,CAAC,UAAU,CAAC,KAAK,QAAQ;oBACjC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC;oBACjB,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EACzB,QAAQ,EAAE,QAA2B,EACrC,QAAQ,EAAE,QAAQ,EAClB,kBAAkB,EAChB,OAAO,GAAG,CAAC,oBAAoB,CAAC,KAAK,QAAQ;oBAC3C,CAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC;oBAC3B,CAAC,CAAC,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,YAAY;wBAC5B,CAAC,CAAC,qBAAqB,CAAC,cAAc,CAAC,YAAY,CAAC;6BAC/C,gBAAgB;wBACrB,CAAC,CAAC,QAAQ,EAChB,YAAY,EACV,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,QAAQ;oBACrC,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC;oBACrB,CAAC,CAAC,SAAS,EACf,sBAAsB,EACpB,OAAO,GAAG,CAAC,wBAAwB,CAAC,KAAK,QAAQ;oBAC/C,CAAC,CAAC,GAAG,CAAC,wBAAwB,CAAC;oBAC/B,CAAC,CAAC,SAAS,EACf,mBAAmB,EACjB,OAAO,GAAG,CAAC,qBAAqB,CAAC,KAAK,QAAQ;oBAC5C,CAAC,CAAC,GAAG,CAAC,qBAAqB,CAAC;oBAC5B,CAAC,CAAC,SAAS,EACf,6BAA6B,EAC3B,OAAO,GAAG,CAAC,+BAA+B,CAAC,KAAK,QAAQ;oBACtD,CAAC,CAAC,GAAG,CAAC,+BAA+B,CAAC;oBACtC,CAAC,CAAC,SAAS,EACf,WAAW,IACR,CAAC,cAAc,IAAI,EAAE,CAAC,KACzB,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,OAAO,GAAG,CAAC,WAAW,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,EACvE,cAAc,EACZ,OAAO,GAAG,CAAC,gBAAgB,CAAC,KAAK,QAAQ;oBACvC,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC;oBACvB,CAAC,CAAC,EAAE,EACR,eAAe,EACb,OAAO,GAAG,CAAC,iBAAiB,CAAC,KAAK,QAAQ;oBAC1C,GAAG,CAAC,iBAAiB,CAAC,CAAC,IAAI,EAAE;oBAC3B,CAAC,CAAC,GAAG,CAAC,iBAAiB,CAAC;oBACxB,CAAC,CAAC,SAAS,EACf,aAAa,EAAE,OAA4C,EAC3D,eAAe,EAAE,GAAG,CAAC,iBAAiB,CAAC,KAAK,IAAI,EAChD,SAAS,EAAE,4BAA4B,CAAC,mBAAmB,CACzD,GAAG,CAAC,WAAW,CAAC,CACjB,EACD,iBAAiB,EAAE,4BAA4B,CAAC,mBAAmB,CACjE,GAAG,CAAC,mBAAmB,CAAC,CACzB,IACD,CAAC;QACL,CAAC;QAED,uCAAuC;QACvC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAuB,EAAE,CAAuB,EAAE,EAAE;YACjE,OAAO,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,GAA6B,EAAE,QAAQ,EAAE,CAAC;QAEpD,MAAM,eAAe,GAAW,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC;QACtE,IACE,MAAM,CAAC,MAAM,CAAC,gCAAgC,CAAC,CAAC,QAAQ,CACtD,eAAmD,CACpD,EACD,CAAC;YACD,IAAI,CAAC,eAAe;gBAClB,eAAmD,CAAC;QACxD,CAAC;QACD,IAAI,OAAO,IAAI,CAAC,oBAAoB,CAAC,KAAK,QAAQ,EAAE,CAAC;YACnD,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACvD,CAAC;QACD,IAAI,OAAO,IAAI,CAAC,sBAAsB,CAAC,KAAK,QAAQ,EAAE,CAAC;YACrD,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC,sBAAsB,CAAC,CAAC;QAC3D,CAAC;QACD,MAAM,cAAc,GAAW,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,CAAC;QACpE,IACE,MAAM,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC,QAAQ,CACjD,cAA6C,CAC9C,EACD,CAAC;YACD,IAAI,CAAC,cAAc,GAAG,cAA6C,CAAC;QACtE,CAAC;QACD,IAAI,OAAO,IAAI,CAAC,qBAAqB,CAAC,KAAK,QAAQ,EAAE,CAAC;YACpD,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,qBAAqB,CAAC,CAAC;QACzD,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;OAKG;IACK,MAAM,CAAC,mBAAmB,CAChC,GAAe;QAQf,MAAM,YAAY,GAAY,GAAG,CAAC,cAAc,CAAC,CAAC;QAElD,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,UAAU,GAAY,GAAG,CAAC,YAAY,CAAC,CAAC;QAE9C,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC;YACzD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,KAAK,MAAM,KAAK,IAAI;YAClB,cAAc;YACd,wBAAwB;YACxB,YAAY;YACZ,qBAAqB;SACtB,EAAE,CAAC;YACF,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,SAAS,IAAI,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;gBACpD,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAAY,GAAG,CAAC,qBAAqB,CAAC,CAAC;QACpD,IAAI,mBAAmB,GAAoC,SAAS,CAAC;QAErE,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;YAChE,IACE,OAAO,OAAO,KAAK,QAAQ;gBAC3B,CAAE,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAmB,CAAC,QAAQ,CAC7D,OAAO,CACR;gBACD,OAAO,KAAK,mBAAmB,CAAC,MAAM,EACtC,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,mBAAmB,GAAG,OAA8B,CAAC;QACvD,CAAC;QAED,OAAO;YACL,YAAY;YACZ,UAAU;YACV,oBAAoB,EAClB,OAAO,GAAG,CAAC,sBAAsB,CAAC,KAAK,QAAQ;gBAC7C,CAAC,CAAC,GAAG,CAAC,sBAAsB,CAAC;gBAC7B,CAAC,CAAC,SAAS;YACf,mBAAmB;SACpB,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,IAA8B;QACjD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAe,CAAC;IACxD,CAAC;IAEO,MAAM,CAAC,mBAAmB,CAChC,KAAc;QAEd,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACxC,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,MAAM,GAAG,GAAe,KAAmB,CAAC;QAC5C,MAAM,MAAM,GAAW,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QACnD,IACE,CAAC,MAAM,CAAC,MAAM,CAAC,mCAAmC,CAAC,CAAC,QAAQ,CAC1D,MAA6C,CAC9C,EACD,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO;YACL,MAAM,EAAE,MAA6C;YACrD,WAAW,EACT,OAAO,GAAG,CAAC,aAAa,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS;YACzE,MAAM,EAAE,OAAO,GAAG,CAAC,QAAQ,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;YACrE,QAAQ,EACN,OAAO,GAAG,CAAC,UAAU,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS;YACnE,YAAY,EACV,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,QAAQ;gBACrC,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC;gBACrB,CAAC,CAAC,SAAS;YACf,SAAS,EACP,OAAO,GAAG,CAAC,WAAW,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS;YACrE,WAAW,EACT,OAAO,GAAG,CAAC,aAAa,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS;SAC1E,CAAC;IACJ,CAAC;CACF"}
@@ -0,0 +1,28 @@
1
+ /*
2
+ * The verdict the command policies (CommandPolicy, KubectlPolicy) give one
3
+ * AI-composed command, and the longest command either accepts.
4
+ *
5
+ * A leaf module with no imports on purpose: it is part of the pure policy
6
+ * closure that agents/KubernetesAIAgent carries a byte-identical copy of
7
+ * (see Tests/Utils/AiRemediation/KubernetesAiAgentPolicyCopyParity.test.ts),
8
+ * so it must never import anything outside that closure.
9
+ * AiRemediationCommandPlan re-exports both names.
10
+ */
11
+ export var AiRemediationCommandPolicyVerdict;
12
+ (function (AiRemediationCommandPolicyVerdict) {
13
+ /*
14
+ * Matched the rule's operator-authored allowlist and passed the
15
+ * structural chain guard — eligible for FullAuto inline execution.
16
+ */
17
+ AiRemediationCommandPolicyVerdict["AutoApproved"] = "AutoApproved";
18
+ // Not denylisted, but a human must approve before it runs.
19
+ AiRemediationCommandPolicyVerdict["RequiresApproval"] = "RequiresApproval";
20
+ /*
21
+ * Matched the hard denylist. Denied commands are never stored in a plan —
22
+ * the verdict exists so policy evaluation has a complete result type.
23
+ */
24
+ AiRemediationCommandPolicyVerdict["Denied"] = "Denied";
25
+ })(AiRemediationCommandPolicyVerdict || (AiRemediationCommandPolicyVerdict = {}));
26
+ // Hard cap — enforced at plan acceptance, not just in the prompt.
27
+ export const MAX_COMMAND_LENGTH_CHARS = 2000;
28
+ //# sourceMappingURL=AiRemediationCommandPolicyVerdict.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AiRemediationCommandPolicyVerdict.js","sourceRoot":"","sources":["../../../../Types/AutoRemediation/AiRemediationCommandPolicyVerdict.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,MAAM,CAAN,IAAY,iCAaX;AAbD,WAAY,iCAAiC;IAC3C;;;OAGG;IACH,kEAA6B,CAAA;IAC7B,2DAA2D;IAC3D,0EAAqC,CAAA;IACrC;;;OAGG;IACH,sDAAiB,CAAA;AACnB,CAAC,EAbW,iCAAiC,KAAjC,iCAAiC,QAa5C;AAED,kEAAkE;AAClE,MAAM,CAAC,MAAM,wBAAwB,GAAW,IAAI,CAAC"}
@@ -1,12 +1,18 @@
1
1
  /*
2
2
  * OneUptime AI access to a Kubernetes cluster.
3
3
  *
4
- * A cluster's AI page binds one Runner (in-cluster, installed by the
5
- * kubernetes-agent chart, or an existing Runner plus a Kubernetes
6
- * credential) and two switches: whether AI may run read-only kubectl during
7
- * investigations, and how AI may remediate. Everything here is shared by the
8
- * server, the Runner binary and the dashboard so the three never disagree
9
- * about what a mode or a tier means.
4
+ * AI reaches a cluster through one access target: the Kubernetes AI agent
5
+ * the kubernetes-agent chart installs (its own identity, never a Runner), the
6
+ * chart's previous in-cluster Runner, or an existing Runner plus a Kubernetes
7
+ * credential. Two switches decide what AI may do there: whether it may run
8
+ * read-only kubectl during investigations, and how it may remediate.
9
+ * Everything here is shared by the server, the Runner binary, the Kubernetes
10
+ * AI agent and the dashboard so they never disagree about what a mode or a
11
+ * tier means.
12
+ *
13
+ * This file has NO imports on purpose: the Kubernetes AI agent
14
+ * (agents/KubernetesAIAgent) carries a byte-identical copy of it and must
15
+ * compile without the rest of Common.
10
16
  */
11
17
  /*
12
18
  * How OneUptime AI may change a cluster once it has diagnosed a signal.
@@ -83,6 +89,16 @@ export var KubectlCommandTier;
83
89
  KubectlCommandTier["RiskyWrite"] = "RiskyWrite";
84
90
  KubectlCommandTier["Denied"] = "Denied";
85
91
  })(KubectlCommandTier || (KubectlCommandTier = {}));
92
+ /*
93
+ * The kind of an access target summary, defaulting an absent kind to
94
+ * "runner" the way the field is documented.
95
+ */
96
+ export function getKubernetesAiAccessTargetKind(runner) {
97
+ if (!runner) {
98
+ return null;
99
+ }
100
+ return runner.kind === "ai_agent" ? "ai_agent" : "runner";
101
+ }
86
102
  // Runner rows the kubernetes-agent chart registers are named from this prefix.
87
103
  export const KUBERNETES_AGENT_RUNNER_NAME_PREFIX = "kubernetes-agent";
88
104
  export function getKubernetesAgentRunnerName(clusterIdentifier) {
@@ -107,20 +123,31 @@ export function isKubernetesAgentRunnerName(name) {
107
123
  .startsWith(`${KUBERNETES_AGENT_RUNNER_NAME_PREFIX}/`));
108
124
  }
109
125
  /*
110
- * The Runner is the only component that ever holds cluster credentials, so
111
- * the server learns the Runner's write posture from the Runner itself. A
112
- * Runner installed with read-only RBAC reports allowWrites=false and the
113
- * server then never enqueues a write for it.
126
+ * The in-cluster executor (the Kubernetes AI agent, or a Runner) is the only
127
+ * component that ever holds cluster credentials, so the server learns its
128
+ * write posture from the executor itself. One installed with read-only RBAC
129
+ * reports allowWrites=false and the server then never enqueues a write for
130
+ * it.
131
+ *
132
+ * parseKubernetesAgentPosture reads a BARE posture object: the body the
133
+ * Kubernetes AI agent sends and the KubernetesAiAgent.posture column.
134
+ * parseKubernetesRunnerPosture reads a Runner's hostInfo, where the same
135
+ * object sits under hostInfo.kubernetes. Both validate every field the same
136
+ * way: anything of the wrong type is dropped, never trusted.
114
137
  */
115
- export function parseKubernetesRunnerPosture(hostInfo) {
116
- if (!hostInfo || typeof hostInfo !== "object") {
138
+ export function parseKubernetesAgentPosture(raw) {
139
+ if (!raw || typeof raw !== "object") {
117
140
  return undefined;
118
141
  }
119
- const kubernetes = hostInfo["kubernetes"];
120
- if (!kubernetes || typeof kubernetes !== "object") {
142
+ return parsePostureFields(raw);
143
+ }
144
+ export function parseKubernetesRunnerPosture(hostInfo) {
145
+ if (!hostInfo || typeof hostInfo !== "object") {
121
146
  return undefined;
122
147
  }
123
- const raw = kubernetes;
148
+ return parseKubernetesAgentPosture(hostInfo["kubernetes"]);
149
+ }
150
+ function parsePostureFields(raw) {
124
151
  return {
125
152
  clusterIdentifier: typeof raw["clusterIdentifier"] === "string"
126
153
  ? raw["clusterIdentifier"]
@@ -238,8 +265,37 @@ export const KUBECTL_ALLOW_WRITES_ENV = "ONEUPTIME_KUBECTL_ALLOW_WRITES";
238
265
  export const KUBECTL_WRITE_NAMESPACES_ENV = "ONEUPTIME_KUBECTL_WRITE_NAMESPACES";
239
266
  export const RUNNER_POD_NAMESPACE_ENV = "ONEUPTIME_RUNNER_POD_NAMESPACE";
240
267
  export const KUBECTL_ALLOW_NODE_OPERATIONS_ENV = "ONEUPTIME_KUBECTL_ALLOW_NODE_OPERATIONS";
268
+ /*
269
+ * The Kubernetes AI agent (image KUBERNETES_AI_AGENT_IMAGE_REPOSITORY) is
270
+ * the chart's in-cluster kubectl executor from this release on. It reads
271
+ * KUBECTL_ALLOW_WRITES_ENV, KUBECTL_WRITE_NAMESPACES_ENV and
272
+ * KUBECTL_ALLOW_NODE_OPERATIONS_ENV with exactly the meanings above (the
273
+ * chart fills them from aiAgent.remediation.*), plus its own pod namespace
274
+ * from AI_AGENT_POD_NAMESPACE_ENV (downward API) — the namespace it never
275
+ * writes into, reported as posture.podNamespace.
276
+ */
277
+ export const AI_AGENT_POD_NAMESPACE_ENV = "ONEUPTIME_AI_AGENT_POD_NAMESPACE";
278
+ // The chart labels the agent's Deployment and pod `component: ai-agent`.
279
+ export const KUBERNETES_AI_AGENT_COMPONENT = "ai-agent";
280
+ export const KUBERNETES_AI_AGENT_IMAGE_REPOSITORY = "oneuptime/kubernetes-ai-agent";
281
+ // How the agent is named wherever a Runner name would otherwise appear.
282
+ export const KUBERNETES_AI_AGENT_DISPLAY_NAME = "Kubernetes AI agent";
283
+ /*
284
+ * The agent heartbeats every 30 seconds; it counts as online while its last
285
+ * heartbeat is at most this old (the same window a Runner gets).
286
+ */
287
+ export const KUBERNETES_AI_AGENT_ALIVE_WINDOW_IN_MINUTES = 5;
288
+ // The legacy Runner refusals that clear on their own.
289
+ export const TRANSIENT_KUBERNETES_AGENT_REGISTRATION_REFUSALS = ["previous_instance_online", "superseded_by_ai_agent"];
241
290
  // Refusals that clear without anyone doing anything; retrying is right.
242
291
  export function isTransientKubernetesAgentRegistrationRefusal(reason) {
243
- return reason === "previous_instance_online";
292
+ return (typeof reason === "string" &&
293
+ TRANSIENT_KUBERNETES_AGENT_REGISTRATION_REFUSALS.includes(reason));
294
+ }
295
+ export const TRANSIENT_KUBERNETES_AI_AGENT_REGISTRATION_REFUSALS = ["previous_instance_online", "legacy_runner_online"];
296
+ // Agent refusals that clear without anyone doing anything; retrying is right.
297
+ export function isTransientKubernetesAiAgentRegistrationRefusal(reason) {
298
+ return (typeof reason === "string" &&
299
+ TRANSIENT_KUBERNETES_AI_AGENT_REGISTRATION_REFUSALS.includes(reason));
244
300
  }
245
301
  //# sourceMappingURL=KubernetesClusterAiAccess.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"KubernetesClusterAiAccess.js","sourceRoot":"","sources":["../../../../Types/Kubernetes/KubernetesClusterAiAccess.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"KubernetesClusterAiAccess.js","sourceRoot":"","sources":["../../../../Types/Kubernetes/KubernetesClusterAiAccess.ts"],"names":[],"mappings":"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"}
@@ -6,16 +6,20 @@ import Permission, { PermissionHelper } from "../Permission";
6
6
  * imports and which therefore stays free of the permission catalog.
7
7
  */
8
8
  /*
9
- * Who may LOOSEN a cluster's AI access: switch remediation to an unattended
10
- * mode (Automatic or Bypass approval), author a kubectl allowlist, or bind
11
- * the Runner / Kubernetes credential kubectl runs through. A cluster's AI
12
- * mode does the job of a FullAuto AutoRemediationRule without a rule row, so
13
- * it takes the same set AutoRemediationRule uses for executionMode,
14
- * commandAllowlist and commandRunners.
9
+ * Who may LOOSEN a cluster's AI access: turn AI fixes on (any move up from
10
+ * Off, Ask for approval included) or give them more autonomy (Automatic,
11
+ * Bypass approval), author a kubectl allowlist, bind the Runner / Kubernetes
12
+ * credential kubectl runs through, or clear that binding while the cluster
13
+ * has a Kubernetes AI agent (which hands the cluster to the agent), and
14
+ * reset the cluster's Kubernetes AI agent. A cluster's AI mode does the job
15
+ * of a FullAuto AutoRemediationRule without a rule row, so it takes the
16
+ * same set AutoRemediationRule uses for executionMode, commandAllowlist and
17
+ * commandRunners.
15
18
  *
16
- * Tightening (Off or Ask for approval, clearing the allowlist or the
17
- * binding) stays open to anyone who may edit the cluster: making AI do less
18
- * never needs more privilege than the cluster itself.
19
+ * Tightening (Off, moving down, clearing the allowlist, or clearing the
20
+ * binding of a cluster with no AI agent) stays open to anyone who may edit
21
+ * the cluster: making AI do less never needs more privilege than the
22
+ * cluster itself.
19
23
  */
20
24
  export const KUBERNETES_AI_ACCESS_ADMIN_PERMISSIONS = [
21
25
  Permission.ProjectOwner,
@@ -33,17 +37,17 @@ export const KUBERNETES_AI_ACCESS_CREDENTIAL_PERMISSIONS = [
33
37
  Permission.ReadRunbookCredential,
34
38
  ];
35
39
  /*
36
- * Why deleting an in-cluster Runner is a two-step remedy. The binding's
37
- * foreign key is ON DELETE SET NULL, so a deleted Runner's clusters are
38
- * left with no Runner bound, and registration never binds a cluster that
39
- * had one (left_unbound_by_operator): the fresh Runner the agent registers
40
- * is used only once someone selects it on the cluster's AI page. Selecting
41
- * a Runner loosens AI access, so it needs one of these permissions — which
40
+ * What deleting a previous in-cluster Runner does. The binding's foreign
41
+ * key is ON DELETE SET NULL, so a deleted Runner's clusters are left with
42
+ * no Runner bound, and registration never binds a cluster that had one
43
+ * (left_unbound_by_operator): such a cluster is then reached through its
44
+ * Kubernetes AI agent, which the current chart installs. Binding a Runner
45
+ * again loosens AI access, so it needs one of these permissions — which
42
46
  * whoever deleted the Runner may not hold. Here, not in
43
47
  * KubernetesClusterAiAccessService, so RunnerService (which that service
44
48
  * imports) can name it too without an import cycle.
45
49
  */
46
50
  export function getDeletedAgentRunnerRebindNote() {
47
- return `Deleting a Runner leaves the clusters it was bound to with no Runner bound, and a registering Runner never binds a cluster that had one. Selecting a Runner needs one of these permissions: ${PermissionHelper.getPermissionTitles(KUBERNETES_AI_ACCESS_ADMIN_PERMISSIONS).join(", ")}.`;
51
+ return `Deleting a Runner leaves the clusters it was bound to with no Runner bound; they then use their Kubernetes AI agent (upgrade the Kubernetes agent chart to install it). A registering Runner never binds a cluster that had one, and binding a Runner again needs one of these permissions: ${PermissionHelper.getPermissionTitles(KUBERNETES_AI_ACCESS_ADMIN_PERMISSIONS).join(", ")}.`;
48
52
  }
49
53
  //# sourceMappingURL=KubernetesClusterAiAccessPermissions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"KubernetesClusterAiAccessPermissions.js","sourceRoot":"","sources":["../../../../Types/Kubernetes/KubernetesClusterAiAccessPermissions.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,EAAE,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAE7D;;;;;GAKG;AAEH;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,sCAAsC,GAAsB;IACvE,UAAU,CAAC,YAAY;IACvB,UAAU,CAAC,YAAY;IACvB,UAAU,CAAC,uBAAuB;CACnC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,2CAA2C,GAAsB;IAC5E,UAAU,CAAC,YAAY;IACvB,UAAU,CAAC,YAAY;IACvB,UAAU,CAAC,qBAAqB;CACjC,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,UAAU,+BAA+B;IAC7C,OAAO,+LAA+L,gBAAgB,CAAC,mBAAmB,CACxO,sCAAsC,CACvC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"KubernetesClusterAiAccessPermissions.js","sourceRoot":"","sources":["../../../../Types/Kubernetes/KubernetesClusterAiAccessPermissions.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,EAAE,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAE7D;;;;;GAKG;AAEH;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,sCAAsC,GAAsB;IACvE,UAAU,CAAC,YAAY;IACvB,UAAU,CAAC,YAAY;IACvB,UAAU,CAAC,uBAAuB;CACnC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,2CAA2C,GAAsB;IAC5E,UAAU,CAAC,YAAY;IACvB,UAAU,CAAC,YAAY;IACvB,UAAU,CAAC,qBAAqB;CACjC,CAAC;AAEF;;;;;;;;;;GAUG;AACH,MAAM,UAAU,+BAA+B;IAC7C,OAAO,+RAA+R,gBAAgB,CAAC,mBAAmB,CACxU,sCAAsC,CACvC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AAClB,CAAC"}
@@ -0,0 +1,17 @@
1
+ /*
2
+ * What OneUptime AI investigated and changed on one Kubernetes cluster: the
3
+ * response of POST /api/kubernetes-cluster/ai-access/insights, which the
4
+ * cluster's AI Insights page renders.
5
+ *
6
+ * Summaries only. Nothing here carries kubectl output, a prompt or a
7
+ * command plan: the route is readable by everyone who may read the
8
+ * cluster, a wider audience than the AI runs, suggestions and Runner jobs
9
+ * it summarises.
10
+ */
11
+ // How many investigations, and how many fixes, the route returns (newest).
12
+ export const KUBERNETES_CLUSTER_AI_INSIGHTS_LIMIT = 25;
13
+ // The window commandCounts covers.
14
+ export const KUBERNETES_CLUSTER_AI_INSIGHTS_COMMAND_WINDOW_IN_DAYS = 30;
15
+ // How much of a fix's rationale the route returns.
16
+ export const KUBERNETES_CLUSTER_AI_INSIGHTS_RATIONALE_MAX_LENGTH = 300;
17
+ //# sourceMappingURL=KubernetesClusterAiInsights.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KubernetesClusterAiInsights.js","sourceRoot":"","sources":["../../../../Types/Kubernetes/KubernetesClusterAiInsights.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,2EAA2E;AAC3E,MAAM,CAAC,MAAM,oCAAoC,GAAW,EAAE,CAAC;AAE/D,mCAAmC;AACnC,MAAM,CAAC,MAAM,qDAAqD,GAAW,EAAE,CAAC;AAEhF,mDAAmD;AACnD,MAAM,CAAC,MAAM,mDAAmD,GAAW,GAAG,CAAC"}
@@ -197,7 +197,7 @@ export function buildProxmoxRatioMonitorConfig(args) {
197
197
  const nodeOfflineTemplate = {
198
198
  id: "pve-node-offline",
199
199
  name: "Node Offline",
200
- description: "Alert when any Proxmox node reports as down (pve_up = 0, scoped to nodes via pve.scope). One incident per node.",
200
+ description: "Alert when any Proxmox node is down (pve_up = 0, scoped to nodes via pve.scope). One incident per node. On the Proxmox VE native OpenTelemetry push, a node that stops reporting is reported down by the nodes still alive, so this fires about 5 minutes after its last report; a standalone host or a whole cluster going silent turns the cluster Disconnected instead.",
201
201
  category: "Availability",
202
202
  severity: "Critical",
203
203
  getMonitorStep: (args) => {
@@ -225,7 +225,7 @@ const nodeOfflineTemplate = {
225
225
  filterType: FilterType.LessThan,
226
226
  value: 1,
227
227
  incidentTitle: `[Proxmox] Node Offline - ${args.monitorName}`,
228
- incidentDescription: `A Proxmox node is reporting as down (pve_up = 0). The node is unreachable or has crashed and every guest running on it may be offline. Check the root cause for the affected node id, verify the node's power/network state, and check whether HA has relocated its guests.`,
228
+ incidentDescription: `A Proxmox node is down (pve_up = 0): the cluster reports it offline or, on the Proxmox VE native OpenTelemetry push, it has stopped reporting and the nodes still alive report it (those points carry oneuptime.proxmox.inferred = not-reporting). The node may have crashed or lost power or network, and every guest running on it may be offline; a node that is up but whose pvestatd or pmxcfs has stopped, or that cannot reach OneUptime, is reported the same way. Check the root cause for the affected node id, verify the node's power/network state and its pvestatd service, and check whether HA has relocated its guests. If you took the node out of the cluster on purpose, use Remove Node on its page in OneUptime to resolve this.`,
229
229
  criteriaName: "Node Offline - pve_up < 1",
230
230
  criteriaDescription: "Triggers when any node reports pve_up below 1 over the monitoring window.",
231
231
  }),
@@ -360,7 +360,7 @@ const guestDownTemplate = {
360
360
  const quorumRiskTemplate = {
361
361
  id: "pve-quorum-risk",
362
362
  name: "Cluster Quorum at Risk",
363
- description: "Alert when 50% or fewer of the cluster's nodes are online. Derived from node visibility (online pve_up nodes ÷ pve_node_info node count) — pve-exporter exposes no corosync metric, so this is the honest quorum proxy: at ≤50% node availability the cluster has lost (or is about to lose) quorum and HA recovery stops.",
363
+ description: "Alert when 50% or fewer of the cluster's nodes are online. Derived from node visibility (online pve_up nodes ÷ pve_node_info node count) — pve-exporter exposes no corosync metric, so this is the honest quorum proxy: at ≤50% node availability the cluster has lost (or is about to lose) quorum and HA recovery stops. On the Proxmox VE native OpenTelemetry push, a node that stops reporting counts as offline (the nodes still alive report it); a whole cluster going silent turns the cluster Disconnected instead.",
364
364
  category: "Availability",
365
365
  severity: "Critical",
366
366
  getMonitorStep: (args) => {
@@ -391,7 +391,7 @@ const quorumRiskTemplate = {
391
391
  filterType: FilterType.LessThanOrEqualTo,
392
392
  value: 50,
393
393
  incidentTitle: `[Proxmox] CRITICAL: Cluster Quorum at Risk - ${args.monitorName}`,
394
- incidentDescription: `Half or more of the Proxmox cluster's nodes are offline. With ≤50% of nodes online the cluster has lost (or is about to lose) corosync quorum — pmxcfs goes read-only, guests cannot be started or migrated, and HA recovery stops. Identify and recover the offline nodes immediately. (This is derived from node visibility: online nodes ÷ total nodes; pve-exporter exposes no direct corosync metric.)`,
394
+ incidentDescription: `Half or more of the Proxmox cluster's nodes are offline. With ≤50% of nodes online the cluster has lost (or is about to lose) corosync quorum — pmxcfs goes read-only, guests cannot be started or migrated, and HA recovery stops. Identify and recover the offline nodes immediately. (This is derived from node visibility: online nodes ÷ total nodes; pve-exporter exposes no direct corosync metric. On the Proxmox VE native OpenTelemetry push, a node counts as offline once it has stopped reporting, as reported by the nodes still alive — so a node that is up but cannot reach OneUptime counts too.)`,
395
395
  criteriaName: "Quorum Risk - Node Availability <= 50%",
396
396
  criteriaDescription: "Triggers when 50% or fewer of the cluster's nodes report as online.",
397
397
  }),