@oneuptime/common 14.0.10 → 14.0.11
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.
- package/Models/DatabaseModels/AIConversation.ts +127 -1
- package/Models/DatabaseModels/CephCluster.ts +12 -0
- package/Models/DatabaseModels/CloudResource.ts +12 -0
- package/Models/DatabaseModels/DatabaseServer.ts +12 -0
- package/Models/DatabaseModels/DockerHost.ts +12 -0
- package/Models/DatabaseModels/DockerSwarmCluster.ts +12 -0
- package/Models/DatabaseModels/GlobalOidc.ts +0 -4
- package/Models/DatabaseModels/GlobalOidcProject.ts +0 -4
- package/Models/DatabaseModels/GlobalSso.ts +0 -4
- package/Models/DatabaseModels/GlobalSsoProject.ts +0 -4
- package/Models/DatabaseModels/Host.ts +12 -0
- package/Models/DatabaseModels/IncidentForm.ts +594 -0
- package/Models/DatabaseModels/IncidentFormSubmission.ts +283 -0
- package/Models/DatabaseModels/IncidentTemplate.ts +59 -0
- package/Models/DatabaseModels/Index.ts +14 -0
- package/Models/DatabaseModels/IoTFleet.ts +12 -0
- package/Models/DatabaseModels/KubernetesCluster.ts +12 -0
- package/Models/DatabaseModels/MessageQueue.ts +1102 -0
- package/Models/DatabaseModels/MessageQueueLabelRule.ts +553 -0
- package/Models/DatabaseModels/MessageQueueOwnerRule.ts +633 -0
- package/Models/DatabaseModels/MessageQueueOwnerTeam.ts +491 -0
- package/Models/DatabaseModels/MessageQueueOwnerUser.ts +490 -0
- package/Models/DatabaseModels/PodmanHost.ts +12 -0
- package/Models/DatabaseModels/Project.ts +59 -0
- package/Models/DatabaseModels/ProjectOidc.ts +0 -4
- package/Models/DatabaseModels/ProjectSso.ts +0 -4
- package/Models/DatabaseModels/ProxmoxCluster.ts +12 -0
- package/Models/DatabaseModels/RumApplication.ts +12 -0
- package/Models/DatabaseModels/ServerlessFunction.ts +12 -0
- package/Models/DatabaseModels/Service.ts +12 -0
- package/Models/DatabaseModels/StatusPageOidc.ts +0 -4
- package/Models/DatabaseModels/StatusPageSso.ts +0 -4
- package/Models/DatabaseModels/TeamComplianceSetting.ts +47 -2
- package/Models/DatabaseModels/VMwareVCenter.ts +12 -0
- package/Server/API/AIChatAPI.ts +13 -114
- package/Server/API/AIInvestigationAPI.ts +3 -3
- package/Server/API/AIInvestigationConversationAPI.ts +266 -0
- package/Server/API/IncidentFormAPI.ts +376 -0
- package/Server/API/ProjectOIDC.ts +16 -25
- package/Server/API/ProjectSSO.ts +16 -24
- package/Server/API/StatusPageAPI.ts +42 -77
- package/Server/Enterprise/EnterpriseEdition.ts +93 -28
- package/Server/Enterprise/EnterpriseFeature.ts +25 -3
- package/Server/Enterprise/EnterpriseLicenseSnapshot.ts +1 -1
- package/Server/Enterprise/EnterpriseServerModule.ts +4 -1
- package/Server/EnvironmentConfig.ts +1 -1
- package/Server/Infrastructure/Postgres/SchemaMigrations/1796400000000-AddIncidentForms.ts +129 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1796500000000-AddTeamComplianceRuleNotificationChannels.ts +52 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1796600000000-AddAIInvestigationConversationAndTimeLimits.ts +75 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1796700000000-AddMessageQueueTables.ts +477 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +8 -0
- package/Server/Middleware/IncidentFormRateLimit.ts +847 -0
- package/Server/Middleware/UserAuthorization.ts +16 -38
- package/Server/Services/AIService.ts +10 -13
- package/Server/Services/IncidentCustomFieldService.ts +112 -2
- package/Server/Services/IncidentEpisodeMemberService.ts +24 -4
- package/Server/Services/IncidentEpisodeService.ts +10 -1
- package/Server/Services/IncidentFormService.ts +1566 -0
- package/Server/Services/IncidentFormSubmissionService.ts +97 -0
- package/Server/Services/IncidentGroupingEngineService.ts +45 -8
- package/Server/Services/IncidentService.ts +123 -5
- package/Server/Services/IncidentTemplateService.ts +22 -0
- package/Server/Services/Index.ts +14 -0
- package/Server/Services/MessageQueueLabelRuleEngineService.ts +321 -0
- package/Server/Services/MessageQueueLabelRuleService.ts +14 -0
- package/Server/Services/MessageQueueOwnerRuleEngineService.ts +412 -0
- package/Server/Services/MessageQueueOwnerRuleService.ts +14 -0
- package/Server/Services/MessageQueueOwnerTeamService.ts +62 -0
- package/Server/Services/MessageQueueOwnerUserService.ts +62 -0
- package/Server/Services/MessageQueueService.ts +1463 -0
- package/Server/Services/OpenTelemetryIngestService.ts +37 -4
- package/Server/Services/ProjectService.ts +0 -59
- package/Server/Services/StatusPagePrivateUserService.ts +1 -4
- package/Server/Services/StatusPageService.ts +1 -51
- package/Server/Services/TeamComplianceSettingService.ts +163 -42
- package/Server/Services/UserNotificationRuleService.ts +8 -1
- package/Server/Services/WorkspaceNotificationSummaryService.ts +12 -3
- package/Server/Types/Database/Permissions/CreatePermission.ts +17 -3
- package/Server/Types/Database/Permissions/EditionPermission.ts +140 -38
- package/Server/Types/Database/Permissions/OwnerTableRegistry.ts +16 -0
- package/Server/Types/Database/Permissions/TablePermission.ts +3 -3
- package/Server/Types/Database/Permissions/UpdatePermission.ts +20 -6
- package/Server/Utils/AI/Chat/AgentContextCompactor.ts +200 -0
- package/Server/Utils/AI/Chat/ChatAgentRunner.ts +307 -48
- package/Server/Utils/AI/Chat/ChatRunCancellation.ts +156 -0
- package/Server/Utils/AI/Chat/ObservabilityAssistant.ts +78 -18
- package/Server/Utils/AI/Chat/ObservabilityChatPrompt.ts +1 -1
- package/Server/Utils/AI/Chat/ToolOutputPager.ts +322 -0
- package/Server/Utils/AI/ClusterAccess/KubectlInvestigationToolkit.ts +88 -30
- package/Server/Utils/AI/ClusterAccess/KubectlJobRunner.ts +13 -1
- package/Server/Utils/AI/CodeFix/CodeFixReadiness.ts +0 -32
- package/Server/Utils/AI/CodeFix/FixRunBudget.ts +27 -25
- package/Server/Utils/AI/Remediation/RemediationCommandTools.ts +7 -1
- package/Server/Utils/AI/Remediation/RemediationExecutionRunner.ts +34 -14
- package/Server/Utils/AI/ResourceAccess/InfrastructureInvestigationToolkit.ts +69 -24
- package/Server/Utils/AI/ResourceAccess/ResourceCommandJobRunner.ts +9 -0
- package/Server/Utils/AI/SRE/AIInvestigationEngine.ts +53 -10
- package/Server/Utils/AI/SRE/AlertInvestigationRunner.ts +27 -10
- package/Server/Utils/AI/SRE/IncidentInvestigationRunner.ts +27 -10
- package/Server/Utils/AI/SRE/InvestigationQueue.ts +16 -19
- package/Server/Utils/AI/SRE/InvestigationThread.ts +646 -0
- package/Server/Utils/AI/SRE/InvestigationThreadService.ts +715 -0
- package/Server/Utils/AI/Toolbox/Serializer.ts +10 -3
- package/Server/Utils/EditionEnforcement.ts +19 -202
- package/Server/Utils/LLM/LLMService.ts +259 -63
- package/Server/Utils/RelaxedScimTeamLocksReport.ts +245 -0
- package/Server/Utils/Rules/RuleRun/RuleRunRegistry.ts +25 -0
- package/Server/Utils/SameOriginRequest.ts +203 -0
- package/Server/Utils/TeamMember/ProjectLeaveResourceCleanup.ts +2 -0
- package/Server/Utils/Telemetry/EntityRegistry.ts +4 -1
- package/Server/Utils/Telemetry/MessageQueueDiscovery.ts +1402 -0
- package/Server/Utils/Telemetry/ResourceEntityFilter.ts +4 -1
- package/Server/Utils/VendorAssets.ts +3 -3
- package/Server/Utils/Workspace/MicrosoftTeams/Actions/Incident.ts +3 -1
- package/Server/Utils/Workspace/MicrosoftTeams/Actions/IncidentEpisode.ts +3 -1
- package/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.ts +10 -1
- package/Tests/App/Accounts/IncidentFormPage.test.tsx +2036 -0
- package/Tests/App/Accounts/IncidentFormServerMessages.test.ts +119 -0
- package/Tests/App/Accounts/IncidentFormUtils.test.ts +1157 -0
- package/Tests/App/Accounts/LoginPasskey.test.tsx +6 -4
- package/Tests/App/Accounts/LoginSso.test.tsx +724 -0
- package/Tests/App/AdminDashboard/AdminAuthenticationRequireSso.test.tsx +338 -0
- package/Tests/App/AdminDashboard/AdminAuthenticationSsoCardLocales.test.tsx +331 -0
- package/Tests/App/AdminDashboard/AdminEnterprisePluginPage.test.tsx +47 -33
- package/Tests/App/AdminDashboard/GlobalSsoOidcPages.test.tsx +1021 -0
- package/Tests/App/Dashboard/AffectedResourcesDisplay.test.tsx +876 -78
- package/Tests/App/Dashboard/AffectedResourcesSlo.test.tsx +20 -3
- package/Tests/App/Dashboard/CephProxmoxVMwareDocumentationCards.test.tsx +359 -0
- package/Tests/App/Dashboard/CephSetupGuide.test.ts +961 -0
- package/Tests/App/Dashboard/CloudDocumentationCard.test.tsx +381 -95
- package/Tests/App/Dashboard/CloudSetupGuide.test.ts +1463 -0
- package/Tests/App/Dashboard/ClusterAccessNotice.test.tsx +174 -12
- package/Tests/App/Dashboard/ContainerSetupGuideCards.test.tsx +345 -0
- package/Tests/App/Dashboard/CoreListEmptyStates.test.tsx +501 -0
- package/Tests/App/Dashboard/DashboardLazyPages.test.tsx +0 -1
- package/Tests/App/Dashboard/DatabaseDocumentationCard.test.tsx +400 -0
- package/Tests/App/Dashboard/DatabaseDocumentationMarkdown.test.ts +5 -0
- package/Tests/App/Dashboard/DatabaseSetupGuide.test.ts +1869 -0
- package/Tests/App/Dashboard/DatabaseTelemetryScope.test.ts +44 -0
- package/Tests/App/Dashboard/DatabaseTelemetryTabs.test.tsx +50 -9
- package/Tests/App/Dashboard/DockerSetupGuide.test.ts +899 -0
- package/Tests/App/Dashboard/DockerSwarmSetupGuide.test.ts +964 -0
- package/Tests/App/Dashboard/EnterpriseFeatureUpgrade.test.tsx +141 -7
- package/Tests/App/Dashboard/EnterprisePluginPage.test.tsx +52 -39
- package/Tests/App/Dashboard/EventOverviewPages.test.tsx +7 -1
- package/Tests/App/Dashboard/GettingStartedTaskRoutes.test.tsx +331 -0
- package/Tests/App/Dashboard/HomeOverviewStatsFirstRun.test.tsx +925 -0
- package/Tests/App/Dashboard/HostDocumentationCard.test.tsx +225 -0
- package/Tests/App/Dashboard/HostSetupGuide.test.ts +1183 -0
- package/Tests/App/Dashboard/IdentityEnterpriseShells.test.tsx +69 -45
- package/Tests/App/Dashboard/IncidentCreateTemplateCustomFieldSettings.test.tsx +745 -0
- package/Tests/App/Dashboard/IncidentCreateTemplateOwners.test.tsx +414 -0
- package/Tests/App/Dashboard/IncidentCustomFieldCreateSettingsForm.test.ts +1042 -0
- package/Tests/App/Dashboard/IncidentCustomFieldSettingsCard.test.tsx +1816 -0
- package/Tests/App/Dashboard/IncidentFormPlan.test.ts +89 -0
- package/Tests/App/Dashboard/IncidentFormShareLinkCard.test.tsx +846 -0
- package/Tests/App/Dashboard/IncidentFormsPages.test.tsx +1324 -0
- package/Tests/App/Dashboard/IncidentTemplateCustomFieldSettings.test.tsx +630 -0
- package/Tests/App/Dashboard/IncidentsSideMenu.test.tsx +13 -0
- package/Tests/App/Dashboard/IncomingEmailMonitorLinkVerifyHint.test.tsx +104 -0
- package/Tests/App/Dashboard/InvestigationConversation.test.tsx +1107 -0
- package/Tests/App/Dashboard/InvestigationConversationData.test.ts +546 -0
- package/Tests/App/Dashboard/InvestigationEvidenceList.test.tsx +170 -5
- package/Tests/App/Dashboard/InvestigationNotStarted.test.tsx +207 -2
- package/Tests/App/Dashboard/InvestigationPanel.test.tsx +729 -34
- package/Tests/App/Dashboard/InvestigationPanelStatus.test.tsx +9 -21
- package/Tests/App/Dashboard/InvestigationReportView.test.tsx +274 -37
- package/Tests/App/Dashboard/InvestigationStatusBadge.test.tsx +130 -0
- package/Tests/App/Dashboard/IoTDocumentationCard.test.tsx +218 -0
- package/Tests/App/Dashboard/IoTSetupGuide.test.ts +1124 -0
- package/Tests/App/Dashboard/KubernetesClusterAiAccessSettings.test.ts +20 -6
- package/Tests/App/Dashboard/KubernetesClusterAiDocumentationMarkdown.test.ts +107 -83
- package/Tests/App/Dashboard/KubernetesSetupGuide.test.ts +787 -0
- package/Tests/App/Dashboard/MessageQueueBreadcrumbs.test.tsx +228 -0
- package/Tests/App/Dashboard/MessageQueueBrokerHealth.test.tsx +1538 -0
- package/Tests/App/Dashboard/MessageQueueBrokerHealthMetricChart.test.tsx +969 -0
- package/Tests/App/Dashboard/MessageQueueBrokerHealthReads.test.ts +889 -0
- package/Tests/App/Dashboard/MessageQueueBrokerMetricsReach.test.ts +236 -0
- package/Tests/App/Dashboard/MessageQueueDocumentationCard.test.tsx +479 -0
- package/Tests/App/Dashboard/MessageQueueListPages.test.tsx +1232 -0
- package/Tests/App/Dashboard/MessageQueueMetricDescriptions.test.ts +244 -0
- package/Tests/App/Dashboard/MessageQueueMonitorLink.test.ts +952 -0
- package/Tests/App/Dashboard/MessageQueueMonitorLinkMonitorCreate.test.tsx +859 -0
- package/Tests/App/Dashboard/MessageQueueOverview.test.tsx +1773 -0
- package/Tests/App/Dashboard/MessageQueueOverviewPresentation.test.ts +196 -0
- package/Tests/App/Dashboard/MessageQueuePresentation.test.ts +799 -0
- package/Tests/App/Dashboard/MessageQueueProducersConsumers.test.tsx +680 -0
- package/Tests/App/Dashboard/MessageQueueRoutes.test.tsx +383 -0
- package/Tests/App/Dashboard/MessageQueueRulePages.test.tsx +278 -0
- package/Tests/App/Dashboard/MessageQueueSetupGuide.test.ts +2778 -0
- package/Tests/App/Dashboard/MessageQueueSideMenus.test.tsx +273 -0
- package/Tests/App/Dashboard/MessageQueueSpanPopulations.test.ts +930 -0
- package/Tests/App/Dashboard/MessageQueueSpanStore.ts +351 -0
- package/Tests/App/Dashboard/MessageQueueTelemetryScope.test.ts +375 -0
- package/Tests/App/Dashboard/MessageQueueTelemetryScopeTabs.test.tsx +668 -0
- package/Tests/App/Dashboard/MessageQueueViewPages.test.tsx +685 -0
- package/Tests/App/Dashboard/MonitorAndHomeNotOperationalMenus.test.tsx +342 -0
- package/Tests/App/Dashboard/MonitorCreateFirstRunDefaults.test.tsx +623 -0
- package/Tests/App/Dashboard/MonitorCreateFromMonitorBackedDevice.test.tsx +442 -0
- package/Tests/App/Dashboard/MonitorLogsPageViewSummary.test.tsx +814 -0
- package/Tests/App/Dashboard/MonitorSetupCardBodies.test.tsx +246 -0
- package/Tests/App/Dashboard/NavigationSearchKeywords.test.tsx +8 -0
- package/Tests/App/Dashboard/OnboardingSsoEmptyState.test.tsx +27 -12
- package/Tests/App/Dashboard/PlanGatedPage.test.tsx +292 -0
- package/Tests/App/Dashboard/PodmanSetupGuide.test.ts +948 -0
- package/Tests/App/Dashboard/ProductOrientation.test.tsx +5 -4
- package/Tests/App/Dashboard/ProductSettingsSectionCollapsed.test.tsx +266 -0
- package/Tests/App/Dashboard/ProxmoxSetupGuide.test.ts +1318 -0
- package/Tests/App/Dashboard/ResourceAiAgentAttentionServerParity.test.ts +555 -0
- package/Tests/App/Dashboard/ResourceAiAgentPage.test.tsx +298 -9
- package/Tests/App/Dashboard/ResourceAiAgentStatus.test.ts +453 -0
- package/Tests/App/Dashboard/ResourceArchiveSettings.test.tsx +16 -0
- package/Tests/App/Dashboard/ResourceConnectionGuideCard.test.tsx +444 -0
- package/Tests/App/Dashboard/ResourceConnectionGuideOverviewsInfra.test.tsx +798 -0
- package/Tests/App/Dashboard/ResourceConnectionGuideOverviewsPlatforms.test.tsx +717 -0
- package/Tests/App/Dashboard/ResourceConnectionGuides.test.ts +981 -0
- package/Tests/App/Dashboard/ResourceConnectionState.test.ts +132 -0
- package/Tests/App/Dashboard/RumDocumentationCard.test.tsx +293 -0
- package/Tests/App/Dashboard/RumSessionReplayRetentionSettings.test.tsx +467 -0
- package/Tests/App/Dashboard/RumSetupGuide.test.ts +758 -0
- package/Tests/App/Dashboard/ScheduledMaintenanceOverviewPage.test.tsx +25 -0
- package/Tests/App/Dashboard/ServerlessDocumentationCard.test.tsx +254 -0
- package/Tests/App/Dashboard/ServerlessSetupGuide.test.ts +1074 -0
- package/Tests/App/Dashboard/SetupGuide.test.ts +246 -0
- package/Tests/App/Dashboard/SetupGuideCard.test.tsx +756 -0
- package/Tests/App/Dashboard/SloListSideMenu.test.tsx +120 -0
- package/Tests/App/Dashboard/SsoPages.test.tsx +833 -0
- package/Tests/App/Dashboard/TelemetryDocumentation.test.tsx +253 -0
- package/Tests/App/Dashboard/TelemetryRetentionShells.test.tsx +730 -0
- package/Tests/App/Dashboard/VMwareSetupGuide.test.ts +1033 -0
- package/Tests/App/StatusPage/StatusPageSsoEmptyState.test.tsx +87 -7
- package/Tests/Models/DatabaseModels/DatabaseServerModels.test.ts +28 -9
- package/Tests/Models/DatabaseModels/IncidentFormModel.test.ts +1250 -0
- package/Tests/Models/DatabaseModels/MessageQueueModels.test.ts +1983 -0
- package/Tests/Models/DatabaseModels/StaticRuleCriteriaInheritance.test.ts +4 -2
- package/Tests/Models/DatabaseModels/TeamComplianceSettingModel.test.ts +190 -14
- package/Tests/Models/IncidentTemplateCustomFieldSettingsColumn.test.ts +291 -0
- package/Tests/Server/API/AIInvestigationConversationAPI.test.ts +412 -0
- package/Tests/Server/API/GlobalConfigLicense.test.ts +38 -9
- package/Tests/Server/API/IncidentFormAPI.test.ts +942 -0
- package/Tests/Server/API/IncidentFormPublicRoutes.test.ts +1653 -0
- package/Tests/Server/API/KubernetesClusterAiAccessAPI.test.ts +2 -1
- package/Tests/Server/API/{SsoProviderListingsEdition.test.ts → SsoProviderListings.test.ts} +164 -110
- package/Tests/Server/Enterprise/EnterpriseEdition.test.ts +76 -54
- package/Tests/Server/Enterprise/EnterpriseFeatureActive.test.ts +125 -42
- package/Tests/Server/Enterprise/EnterpriseLicenseSnapshot.test.ts +36 -10
- package/Tests/Server/Enterprise/EnterpriseModelFeatureMap.test.ts +51 -9
- package/Tests/Server/Enterprise/FakeEnterpriseModule.ts +13 -8
- package/Tests/Server/Enterprise/SsoInCommunityEdition.test.ts +540 -0
- package/Tests/Server/Infrastructure/Postgres/AddConfigurableRuleCriteriaMigration.test.ts +3 -0
- package/Tests/Server/Infrastructure/Postgres/AddIncidentFormsMigration.test.ts +438 -0
- package/Tests/Server/Infrastructure/Postgres/AddTeamComplianceRuleNotificationChannelsMigration.test.ts +255 -0
- package/Tests/Server/Infrastructure/Postgres/MessageQueueTablesMigration.test.ts +637 -0
- package/Tests/Server/Middleware/IncidentFormRateLimit.test.ts +1630 -0
- package/Tests/Server/Middleware/UserAuthorization.test.ts +16 -17
- package/Tests/Server/Middleware/UserAuthorizationSsoEnforcement.test.ts +544 -0
- package/Tests/Server/Services/AIServiceDailyBudget.test.ts +37 -8
- package/Tests/Server/Services/IncidentCreatedFeedTitle.test.ts +212 -0
- package/Tests/Server/Services/IncidentCustomFieldDeleteFormQuestions.test.ts +297 -0
- package/Tests/Server/Services/IncidentFormOwnersCreatedNotification.test.ts +497 -0
- package/Tests/Server/Services/IncidentFormPostgres.test.ts +958 -0
- package/Tests/Server/Services/IncidentFormPublicForm.test.ts +1260 -0
- package/Tests/Server/Services/IncidentFormPublicSubmission.test.ts +2520 -0
- package/Tests/Server/Services/IncidentFormRegistration.test.ts +159 -0
- package/Tests/Server/Services/IncidentFormService.test.ts +663 -0
- package/Tests/Server/Services/IncidentFormSubmissionService.test.ts +430 -0
- package/Tests/Server/Services/IncidentFormSubmissionTemplateBranch.test.ts +473 -0
- package/Tests/Server/Services/IncidentGroupingTemplateSubstitution.test.ts +81 -0
- package/Tests/Server/Services/IncidentTemplateCustomFieldSettings.test.ts +262 -0
- package/Tests/Server/Services/IncidentTemplateOwnersOnDeclare.test.ts +566 -0
- package/Tests/Server/Services/IncidentTitleMarkdownSinks.test.ts +640 -0
- package/Tests/Server/Services/LlmLogServiceTokenAggregateParams.test.ts +3 -3
- package/Tests/Server/Services/MessageQueueOwnerServices.test.ts +440 -0
- package/Tests/Server/Services/MessageQueueRegistries.test.ts +577 -0
- package/Tests/Server/Services/MessageQueueRuleEngines.test.ts +900 -0
- package/Tests/Server/Services/MessageQueueService.test.ts +2210 -0
- package/Tests/Server/Services/MessageQueueSqlPostgres.test.ts +1271 -0
- package/Tests/Server/Services/OpenTelemetryResourceRetentionMemo.test.ts +28 -1
- package/Tests/Server/Services/OpenTelemetryRetentionOverrideEdition.test.ts +474 -0
- package/Tests/Server/Services/OpenTelemetryServiceResolutionCache.test.ts +21 -0
- package/Tests/Server/Services/OwnerRowUniqueness.test.ts +3 -0
- package/Tests/Server/Services/ProjectServiceAuditLogLicense.test.ts +0 -1
- package/Tests/Server/Services/RuleRun/LabelRuleEnginesGroupBRun.test.ts +56 -6
- package/Tests/Server/Services/RuleRun/OwnerRuleEnginesGroupBRun.test.ts +30 -1
- package/Tests/Server/Services/SsoRequirementReads.test.ts +454 -0
- package/Tests/Server/Services/SsoRequirementWrites.test.ts +529 -0
- package/Tests/Server/Services/StaticRuleCriteriaRuntimeCoverage.test.ts +3 -3
- package/Tests/Server/Services/StatusPagePrivateUserInvitationPolicy.test.ts +107 -89
- package/Tests/Server/Services/TeamComplianceSettingPostgres.test.ts +1068 -176
- package/Tests/Server/Services/TeamComplianceSettingService.test.ts +1962 -200
- package/Tests/Server/Types/Database/Permissions/EditionPermission.test.ts +654 -297
- package/Tests/Server/Types/Database/Permissions/RetentionOverrideColumns.test.ts +784 -0
- package/Tests/Server/Types/Database/Permissions/SsoScalePlanGate.test.ts +418 -0
- package/Tests/Server/Utils/AI/AIAlertGating.test.ts +0 -1
- package/Tests/Server/Utils/AI/AIInvestigationEngineRunLimits.test.ts +136 -0
- package/Tests/Server/Utils/AI/AIInvestigationQueue.test.ts +15 -14
- package/Tests/Server/Utils/AI/AgentContextCompactor.test.ts +351 -0
- package/Tests/Server/Utils/AI/ChatAgentRunnerSharedThread.test.ts +842 -0
- package/Tests/Server/Utils/AI/ChatRunCancellation.test.ts +195 -0
- package/Tests/Server/Utils/AI/CodeFixReadiness.test.ts +10 -57
- package/Tests/Server/Utils/AI/FixRunBudget.test.ts +20 -24
- package/Tests/Server/Utils/AI/Insights/InvestigationQueueInsightSubject.test.ts +7 -30
- package/Tests/Server/Utils/AI/InvestigationClusterAccessWiring.test.ts +225 -29
- package/Tests/Server/Utils/AI/InvestigationInfrastructureAccessWiring.test.ts +266 -25
- package/Tests/Server/Utils/AI/InvestigationThread.test.ts +580 -0
- package/Tests/Server/Utils/AI/InvestigationThreadService.test.ts +801 -0
- package/Tests/Server/Utils/AI/KubectlInvestigationToolkit.test.ts +525 -43
- package/Tests/Server/Utils/AI/KubectlJobRunner.test.ts +4 -2
- package/Tests/Server/Utils/AI/LLMServiceUnreachableProvider.test.ts +435 -0
- package/Tests/Server/Utils/AI/ObservabilityAssistantLimits.test.ts +462 -0
- package/Tests/Server/Utils/AI/RemediationExecutionRunner.test.ts +14 -25
- package/Tests/Server/Utils/AI/RemediationExecutionRunnerResourceMode.test.ts +2 -0
- package/Tests/Server/Utils/AI/ResourceAccess/InfrastructureInvestigationToolkit.test.ts +297 -15
- package/Tests/Server/Utils/AI/ResourceAccess/ResourceCommandJobRunner.test.ts +10 -6
- package/Tests/Server/Utils/AI/ToolOutputPager.test.ts +382 -0
- package/Tests/Server/Utils/AI/ToolResultSerializer.test.ts +23 -4
- package/Tests/Server/Utils/AI/Toolbox/LogTools.test.ts +25 -6
- package/Tests/Server/Utils/AI/Toolbox/Serializer.test.ts +14 -3
- package/Tests/Server/Utils/EditionEnforcement.test.ts +107 -147
- package/Tests/Server/Utils/{CommunityEditionSsoReport.test.ts → RelaxedScimTeamLocksReport.test.ts} +212 -208
- package/Tests/Server/Utils/SameOriginRequest.test.ts +372 -0
- package/Tests/Server/Utils/Telemetry/EntityRegistry.test.ts +20 -0
- package/Tests/Server/Utils/Telemetry/MessageQueueDiscovery.test.ts +2590 -0
- package/Tests/Server/Utils/Telemetry/MessageQueueSpanQueryTwin.ts +246 -0
- package/Tests/Server/Utils/Telemetry/TelemetryEntity.test.ts +23 -0
- package/Tests/Types/AI/AIAgentRunLimits.test.ts +255 -0
- package/Tests/Types/Code/JsonSyntax.test.ts +1300 -0
- package/Tests/Types/CustomField/CustomFieldCreateSettings.test.ts +1113 -0
- package/Tests/Types/CustomField/CustomFieldMappingCatalog.test.ts +91 -0
- package/Tests/Types/CustomField/CustomFieldValueValidator.test.ts +30 -0
- package/Tests/Types/Incident/IncidentFormIpAllowlist.test.ts +227 -0
- package/Tests/Types/Incident/IncidentFormPublic.test.ts +1916 -0
- package/Tests/Types/MessageQueue/MessageQueueEntityKey.test.ts +916 -0
- package/Tests/Types/MessageQueue/MessageQueueIdentity.test.ts +567 -0
- package/Tests/Types/MessageQueue/MessageQueueManualIdentity.test.ts +686 -0
- package/Tests/Types/MessageQueue/MessageQueueMetricCatalog.test.ts +1726 -0
- package/Tests/Types/MessageQueue/MessageQueueMetricResolution.test.ts +1758 -0
- package/Tests/Types/MessageQueue/MessagingInstrumentationFixtures.test.ts +4686 -0
- package/Tests/Types/MessageQueue/MessagingSystem.test.ts +840 -0
- package/Tests/Types/MessageQueue/MessagingTelemetryFixtures.ts +3287 -0
- package/Tests/Types/MessageQueue/MessagingTelemetryResolver.test.ts +2966 -0
- package/Tests/Types/Monitor/MessageQueueAlertTemplates.test.ts +5401 -0
- package/Tests/Types/Monitor/MetricEngineFold.ts +154 -0
- package/Tests/Types/ResourceAiAgent/ResourceAiAccess.test.ts +5 -3
- package/Tests/Types/Team/ComplianceRule.test.ts +588 -37
- package/Tests/Types/Team/TeamComplianceStatus.test.ts +64 -11
- package/Tests/Types/XML.test.ts +51 -0
- package/Tests/UI/Components/CodeEditor/CodeEditor.test.tsx +2362 -0
- package/Tests/UI/Components/CodeEditor/CodeEditorCommands.test.ts +810 -0
- package/Tests/UI/Components/CodeEditor/CodeEditorHighlight.test.ts +338 -0
- package/Tests/UI/Components/CodeEditor/CodeEditorLanguages.test.ts +222 -0
- package/Tests/UI/Components/CodeEditor/CodeEditorStyles.test.ts +807 -0
- package/Tests/UI/Components/CodeEditor/NoMonaco.test.ts +245 -0
- package/Tests/UI/Components/CodeEditor/YamlEditor.test.tsx +729 -0
- package/Tests/UI/Components/CopyTextButton.test.tsx +76 -0
- package/Tests/UI/Components/EditionLabelLapseCopy.ts +51 -14
- package/Tests/UI/Components/EditionLabelLicenseStatus.test.tsx +131 -23
- package/Tests/UI/Components/ErrorMessageAction.test.tsx +142 -0
- package/Tests/UI/Components/FacetSidebarInScope.test.tsx +459 -0
- package/Tests/UI/Components/FacetValuesInScope.test.ts +270 -0
- package/Tests/UI/Components/Forms/FormFieldCodeEditors.test.tsx +294 -0
- package/Tests/UI/Components/Forms/FormFieldMarkdown.test.tsx +126 -0
- package/Tests/UI/Components/Forms/FormFieldYaml.test.tsx +22 -75
- package/Tests/UI/Components/Forms/ModelFormOnBeforeCreateMiscData.test.tsx +254 -0
- package/Tests/UI/Components/Icon.test.tsx +32 -0
- package/Tests/UI/Components/Input.test.tsx +31 -0
- package/Tests/UI/Components/LockedFilterChipScope.test.tsx +501 -0
- package/Tests/UI/Components/MarkdownConverters.test.ts +253 -1
- package/Tests/UI/Components/MarkdownEditor.test.tsx +2785 -2
- package/Tests/UI/Components/MarkdownEditorHistory.test.ts +243 -0
- package/Tests/UI/Components/MarkdownListEditing.test.ts +1118 -0
- package/Tests/UI/Components/MarkdownPaste.test.ts +1180 -0
- package/Tests/UI/Components/MarkdownViewerCopy.test.tsx +466 -0
- package/Tests/UI/Components/MarkdownVisualEditing.test.ts +1089 -0
- package/Tests/UI/Components/ModelTable/BaseModelTableEmptyStateAction.test.tsx +623 -0
- package/Tests/UI/Components/ResetObjectID.test.tsx +282 -0
- package/Tests/UI/Components/RuleCriteria/RuleCriteriaModelTable.test.tsx +3 -3
- package/Tests/UI/Components/Table/EmptyTableMessage.test.ts +439 -0
- package/Tests/UI/Components/Table/TableEmptyState.test.tsx +352 -0
- package/Tests/UI/Components/TableRowMobileTitles.test.tsx +78 -0
- package/Tests/UI/Components/TextArea.test.tsx +19 -0
- package/Tests/UI/Components/Workflow/ModelColumnEditor.render.test.tsx +12 -29
- package/Tests/UI/Components/fixtures/MarkdownPasteFixtures.ts +460 -0
- package/Tests/UI/EsbuildConfig.test.ts +115 -39
- package/Tests/UI/EsbuildEnterpriseAlias.test.ts +4 -4
- package/Tests/UI/Monitor/MonitorLogSummaryRender.test.tsx +377 -0
- package/Tests/UI/Utils/Breadcrumb/fixtures/RealBreadcrumbTrails.ts +81 -1
- package/Tests/UI/Utils/Breadcrumb/fixtures/RealRoutePatterns.ts +17 -0
- package/Tests/Utils/LabelRuleImportExport.test.ts +5 -0
- package/Tests/Utils/Markdown/DashboardMarkdownRenderer.ts +81 -0
- package/Tests/Utils/Markdown/UntrustedMarkdown.test.ts +1339 -0
- package/Tests/Utils/Monitor/MonitorLogSummaryUtil.test.ts +862 -0
- package/Types/AI/AIAgentRunLimits.ts +146 -0
- package/Types/Code/CodeType.ts +2 -0
- package/Types/Code/JsonSyntax.ts +923 -0
- package/Types/CustomField/CustomFieldCreateSettings.ts +549 -0
- package/Types/CustomField/CustomFieldMappingCatalog.ts +77 -0
- package/Types/CustomField/CustomFieldValueValidator.ts +10 -7
- package/Types/EnterpriseLicense/EnterpriseLicensePeriods.ts +1 -1
- package/Types/Icon/IconProp.ts +2 -0
- package/Types/Incident/IncidentFormIpAllowlist.ts +206 -0
- package/Types/Incident/IncidentFormPublic.ts +1145 -0
- package/Types/Kubernetes/KubernetesClusterAiAccess.ts +10 -3
- package/Types/MessageQueue/MessageQueueIdentity.ts +256 -0
- package/Types/MessageQueue/MessageQueueManualIdentity.ts +325 -0
- package/Types/MessageQueue/MessageQueueMetricCatalog.ts +1357 -0
- package/Types/MessageQueue/MessagingSystem.ts +518 -0
- package/Types/MessageQueue/MessagingTelemetryResolver.ts +2311 -0
- package/Types/Monitor/MessageQueueAlertTemplates.ts +2128 -0
- package/Types/Permission.ts +310 -0
- package/Types/ResourceAiAgent/ResourceAiAccess.ts +10 -4
- package/Types/Rules/RuleCriteriaFieldRegistry.ts +12 -0
- package/Types/Rules/RuleRun.ts +4 -0
- package/Types/Team/ComplianceNotificationChannel.ts +4 -3
- package/Types/Team/ComplianceRule.ts +71 -18
- package/Types/Team/ComplianceRuleType.ts +2 -2
- package/Types/Team/TeamComplianceStatus.ts +6 -2
- package/Types/Telemetry/EntityType.ts +16 -0
- package/Types/Telemetry/LockedFilterDetail.ts +22 -0
- package/Types/XML.ts +26 -0
- package/UI/Components/CodeEditor/CodeEditor.css +379 -0
- package/UI/Components/CodeEditor/CodeEditor.tsx +1128 -294
- package/UI/Components/CodeEditor/CodeEditorCommands.ts +774 -0
- package/UI/Components/CodeEditor/CodeEditorHighlight.ts +106 -0
- package/UI/Components/CodeEditor/CodeEditorLanguages.ts +164 -0
- package/UI/Components/CodeEditor/YamlEditor.tsx +28 -326
- package/UI/Components/CopyTextButton/CopyTextButton.tsx +5 -1
- package/UI/Components/CustomFields/CustomFieldModelFormFields.tsx +6 -25
- package/UI/Components/EditionLabel/EditionLabel.tsx +14 -13
- package/UI/Components/ErrorMessage/ErrorMessage.tsx +11 -1
- package/UI/Components/Forms/Fields/FormField.tsx +8 -0
- package/UI/Components/Forms/Types/Field.ts +8 -0
- package/UI/Components/Icon/Icon.tsx +18 -0
- package/UI/Components/Input/Input.tsx +11 -4
- package/UI/Components/LogsViewer/LogsViewer.tsx +4 -0
- package/UI/Components/LogsViewer/components/LogsFacetSidebar.tsx +21 -3
- package/UI/Components/Markdown.tsx/MarkdownConverters.ts +0 -0
- package/UI/Components/Markdown.tsx/MarkdownEditor.tsx +877 -79
- package/UI/Components/Markdown.tsx/MarkdownEditorHistory.ts +284 -0
- package/UI/Components/Markdown.tsx/MarkdownListEditing.ts +1362 -0
- package/UI/Components/Markdown.tsx/MarkdownPaste.ts +1326 -0
- package/UI/Components/Markdown.tsx/MarkdownViewer.tsx +106 -10
- package/UI/Components/Markdown.tsx/MarkdownVisualEditing.ts +1032 -0
- package/UI/Components/ModelTable/BaseModelTable.tsx +85 -7
- package/UI/Components/ResetObjectID/ResetObjectID.tsx +35 -9
- package/UI/Components/Table/EmptyTableMessage.ts +81 -0
- package/UI/Components/Table/Table.tsx +50 -21
- package/UI/Components/Table/TableRow.tsx +9 -1
- package/UI/Components/TelemetryViewer/FacetVisibility.ts +97 -2
- package/UI/Components/TelemetryViewer/TelemetryViewer.tsx +13 -0
- package/UI/Components/TelemetryViewer/components/LockedFilterChip.tsx +214 -7
- package/UI/Components/TelemetryViewer/components/TelemetryFacetSidebar.tsx +21 -3
- package/UI/Components/TextArea/TextArea.tsx +9 -2
- package/UI/Components/Workflow/ModelFieldPicker.tsx +10 -12
- package/UI/Styles/Theme.css +8 -0
- package/UI/esbuild-config.js +2 -32
- package/Utils/LabelRuleImportExport.ts +2 -0
- package/Utils/Markdown/UntrustedMarkdown.ts +1513 -0
- package/Utils/Monitor/IncomingEmailMonitorRequestUtil.ts +41 -0
- package/Utils/Monitor/MonitorLogSummaryUtil.ts +212 -0
- package/Utils/Telemetry/EntityKey.ts +48 -0
- package/build/dist/Models/DatabaseModels/AIConversation.js +125 -1
- package/build/dist/Models/DatabaseModels/AIConversation.js.map +1 -1
- package/build/dist/Models/DatabaseModels/CephCluster.js +12 -0
- package/build/dist/Models/DatabaseModels/CephCluster.js.map +1 -1
- package/build/dist/Models/DatabaseModels/CloudResource.js +12 -0
- package/build/dist/Models/DatabaseModels/CloudResource.js.map +1 -1
- package/build/dist/Models/DatabaseModels/DatabaseServer.js +12 -0
- package/build/dist/Models/DatabaseModels/DatabaseServer.js.map +1 -1
- package/build/dist/Models/DatabaseModels/DockerHost.js +12 -0
- package/build/dist/Models/DatabaseModels/DockerHost.js.map +1 -1
- package/build/dist/Models/DatabaseModels/DockerSwarmCluster.js +12 -0
- package/build/dist/Models/DatabaseModels/DockerSwarmCluster.js.map +1 -1
- package/build/dist/Models/DatabaseModels/GlobalOidc.js +0 -4
- package/build/dist/Models/DatabaseModels/GlobalOidc.js.map +1 -1
- package/build/dist/Models/DatabaseModels/GlobalOidcProject.js +0 -4
- package/build/dist/Models/DatabaseModels/GlobalOidcProject.js.map +1 -1
- package/build/dist/Models/DatabaseModels/GlobalSso.js +0 -4
- package/build/dist/Models/DatabaseModels/GlobalSso.js.map +1 -1
- package/build/dist/Models/DatabaseModels/GlobalSsoProject.js +0 -4
- package/build/dist/Models/DatabaseModels/GlobalSsoProject.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Host.js +12 -0
- package/build/dist/Models/DatabaseModels/Host.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentForm.js +605 -0
- package/build/dist/Models/DatabaseModels/IncidentForm.js.map +1 -0
- package/build/dist/Models/DatabaseModels/IncidentFormSubmission.js +299 -0
- package/build/dist/Models/DatabaseModels/IncidentFormSubmission.js.map +1 -0
- package/build/dist/Models/DatabaseModels/IncidentTemplate.js +60 -0
- package/build/dist/Models/DatabaseModels/IncidentTemplate.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Index.js +14 -0
- package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IoTFleet.js +12 -0
- package/build/dist/Models/DatabaseModels/IoTFleet.js.map +1 -1
- package/build/dist/Models/DatabaseModels/KubernetesCluster.js +12 -0
- package/build/dist/Models/DatabaseModels/KubernetesCluster.js.map +1 -1
- package/build/dist/Models/DatabaseModels/MessageQueue.js +1106 -0
- package/build/dist/Models/DatabaseModels/MessageQueue.js.map +1 -0
- package/build/dist/Models/DatabaseModels/MessageQueueLabelRule.js +562 -0
- package/build/dist/Models/DatabaseModels/MessageQueueLabelRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/MessageQueueOwnerRule.js +643 -0
- package/build/dist/Models/DatabaseModels/MessageQueueOwnerRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/MessageQueueOwnerTeam.js +506 -0
- package/build/dist/Models/DatabaseModels/MessageQueueOwnerTeam.js.map +1 -0
- package/build/dist/Models/DatabaseModels/MessageQueueOwnerUser.js +505 -0
- package/build/dist/Models/DatabaseModels/MessageQueueOwnerUser.js.map +1 -0
- package/build/dist/Models/DatabaseModels/PodmanHost.js +12 -0
- package/build/dist/Models/DatabaseModels/PodmanHost.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Project.js +61 -0
- package/build/dist/Models/DatabaseModels/Project.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ProjectOidc.js +0 -4
- package/build/dist/Models/DatabaseModels/ProjectOidc.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ProjectSso.js +0 -4
- package/build/dist/Models/DatabaseModels/ProjectSso.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ProxmoxCluster.js +12 -0
- package/build/dist/Models/DatabaseModels/ProxmoxCluster.js.map +1 -1
- package/build/dist/Models/DatabaseModels/RumApplication.js +12 -0
- package/build/dist/Models/DatabaseModels/RumApplication.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ServerlessFunction.js +12 -0
- package/build/dist/Models/DatabaseModels/ServerlessFunction.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Service.js +12 -0
- package/build/dist/Models/DatabaseModels/Service.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageOidc.js +0 -4
- package/build/dist/Models/DatabaseModels/StatusPageOidc.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageSso.js +0 -4
- package/build/dist/Models/DatabaseModels/StatusPageSso.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TeamComplianceSetting.js +49 -3
- package/build/dist/Models/DatabaseModels/TeamComplianceSetting.js.map +1 -1
- package/build/dist/Models/DatabaseModels/VMwareVCenter.js +12 -0
- package/build/dist/Models/DatabaseModels/VMwareVCenter.js.map +1 -1
- package/build/dist/Server/API/AIChatAPI.js +9 -103
- package/build/dist/Server/API/AIChatAPI.js.map +1 -1
- package/build/dist/Server/API/AIInvestigationAPI.js +3 -3
- package/build/dist/Server/API/AIInvestigationAPI.js.map +1 -1
- package/build/dist/Server/API/AIInvestigationConversationAPI.js +162 -0
- package/build/dist/Server/API/AIInvestigationConversationAPI.js.map +1 -0
- package/build/dist/Server/API/IncidentFormAPI.js +245 -0
- package/build/dist/Server/API/IncidentFormAPI.js.map +1 -0
- package/build/dist/Server/API/ProjectOIDC.js +16 -24
- package/build/dist/Server/API/ProjectOIDC.js.map +1 -1
- package/build/dist/Server/API/ProjectSSO.js +16 -24
- package/build/dist/Server/API/ProjectSSO.js.map +1 -1
- package/build/dist/Server/API/StatusPageAPI.js +42 -75
- package/build/dist/Server/API/StatusPageAPI.js.map +1 -1
- package/build/dist/Server/Enterprise/EnterpriseEdition.js +79 -25
- package/build/dist/Server/Enterprise/EnterpriseEdition.js.map +1 -1
- package/build/dist/Server/Enterprise/EnterpriseFeature.js +24 -3
- package/build/dist/Server/Enterprise/EnterpriseFeature.js.map +1 -1
- package/build/dist/Server/Enterprise/EnterpriseLicenseSnapshot.js +1 -1
- package/build/dist/Server/Enterprise/EnterpriseServerModule.js.map +1 -1
- package/build/dist/Server/EnvironmentConfig.js +1 -1
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1796400000000-AddIncidentForms.js +63 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1796400000000-AddIncidentForms.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1796500000000-AddTeamComplianceRuleNotificationChannels.js +41 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1796500000000-AddTeamComplianceRuleNotificationChannels.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1796600000000-AddAIInvestigationConversationAndTimeLimits.js +40 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1796600000000-AddAIInvestigationConversationAndTimeLimits.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1796700000000-AddMessageQueueTables.js +183 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1796700000000-AddMessageQueueTables.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +8 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
- package/build/dist/Server/Middleware/IncidentFormRateLimit.js +559 -0
- package/build/dist/Server/Middleware/IncidentFormRateLimit.js.map +1 -0
- package/build/dist/Server/Middleware/UserAuthorization.js +11 -30
- package/build/dist/Server/Middleware/UserAuthorization.js.map +1 -1
- package/build/dist/Server/Services/AIService.js +10 -13
- package/build/dist/Server/Services/AIService.js.map +1 -1
- package/build/dist/Server/Services/IncidentCustomFieldService.js +83 -0
- package/build/dist/Server/Services/IncidentCustomFieldService.js.map +1 -1
- package/build/dist/Server/Services/IncidentEpisodeMemberService.js +8 -4
- package/build/dist/Server/Services/IncidentEpisodeMemberService.js.map +1 -1
- package/build/dist/Server/Services/IncidentEpisodeService.js +10 -1
- package/build/dist/Server/Services/IncidentEpisodeService.js.map +1 -1
- package/build/dist/Server/Services/IncidentFormService.js +1202 -0
- package/build/dist/Server/Services/IncidentFormService.js.map +1 -0
- package/build/dist/Server/Services/IncidentFormSubmissionService.js +91 -0
- package/build/dist/Server/Services/IncidentFormSubmissionService.js.map +1 -0
- package/build/dist/Server/Services/IncidentGroupingEngineService.js +20 -8
- package/build/dist/Server/Services/IncidentGroupingEngineService.js.map +1 -1
- package/build/dist/Server/Services/IncidentService.js +106 -4
- package/build/dist/Server/Services/IncidentService.js.map +1 -1
- package/build/dist/Server/Services/IncidentTemplateService.js +18 -0
- package/build/dist/Server/Services/IncidentTemplateService.js.map +1 -1
- package/build/dist/Server/Services/Index.js +14 -0
- package/build/dist/Server/Services/Index.js.map +1 -1
- package/build/dist/Server/Services/MessageQueueLabelRuleEngineService.js +262 -0
- package/build/dist/Server/Services/MessageQueueLabelRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/MessageQueueLabelRuleService.js +13 -0
- package/build/dist/Server/Services/MessageQueueLabelRuleService.js.map +1 -0
- package/build/dist/Server/Services/MessageQueueOwnerRuleEngineService.js +334 -0
- package/build/dist/Server/Services/MessageQueueOwnerRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/MessageQueueOwnerRuleService.js +13 -0
- package/build/dist/Server/Services/MessageQueueOwnerRuleService.js.map +1 -0
- package/build/dist/Server/Services/MessageQueueOwnerTeamService.js +62 -0
- package/build/dist/Server/Services/MessageQueueOwnerTeamService.js.map +1 -0
- package/build/dist/Server/Services/MessageQueueOwnerUserService.js +62 -0
- package/build/dist/Server/Services/MessageQueueOwnerUserService.js.map +1 -0
- package/build/dist/Server/Services/MessageQueueService.js +1140 -0
- package/build/dist/Server/Services/MessageQueueService.js.map +1 -0
- package/build/dist/Server/Services/OpenTelemetryIngestService.js +25 -4
- package/build/dist/Server/Services/OpenTelemetryIngestService.js.map +1 -1
- package/build/dist/Server/Services/ProjectService.js +0 -54
- package/build/dist/Server/Services/ProjectService.js.map +1 -1
- package/build/dist/Server/Services/StatusPagePrivateUserService.js +1 -4
- package/build/dist/Server/Services/StatusPagePrivateUserService.js.map +1 -1
- package/build/dist/Server/Services/StatusPageService.js +0 -46
- package/build/dist/Server/Services/StatusPageService.js.map +1 -1
- package/build/dist/Server/Services/TeamComplianceSettingService.js +120 -31
- package/build/dist/Server/Services/TeamComplianceSettingService.js.map +1 -1
- package/build/dist/Server/Services/UserNotificationRuleService.js +8 -1
- package/build/dist/Server/Services/UserNotificationRuleService.js.map +1 -1
- package/build/dist/Server/Services/WorkspaceNotificationSummaryService.js +12 -3
- package/build/dist/Server/Services/WorkspaceNotificationSummaryService.js.map +1 -1
- package/build/dist/Server/Types/Database/Permissions/CreatePermission.js +6 -3
- package/build/dist/Server/Types/Database/Permissions/CreatePermission.js.map +1 -1
- package/build/dist/Server/Types/Database/Permissions/EditionPermission.js +109 -37
- package/build/dist/Server/Types/Database/Permissions/EditionPermission.js.map +1 -1
- package/build/dist/Server/Types/Database/Permissions/OwnerTableRegistry.js +16 -0
- package/build/dist/Server/Types/Database/Permissions/OwnerTableRegistry.js.map +1 -1
- package/build/dist/Server/Types/Database/Permissions/TablePermission.js +3 -3
- package/build/dist/Server/Types/Database/Permissions/UpdatePermission.js +9 -6
- package/build/dist/Server/Types/Database/Permissions/UpdatePermission.js.map +1 -1
- package/build/dist/Server/Utils/AI/Chat/AgentContextCompactor.js +128 -0
- package/build/dist/Server/Utils/AI/Chat/AgentContextCompactor.js.map +1 -0
- package/build/dist/Server/Utils/AI/Chat/ChatAgentRunner.js +192 -50
- package/build/dist/Server/Utils/AI/Chat/ChatAgentRunner.js.map +1 -1
- package/build/dist/Server/Utils/AI/Chat/ChatRunCancellation.js +133 -0
- package/build/dist/Server/Utils/AI/Chat/ChatRunCancellation.js.map +1 -0
- package/build/dist/Server/Utils/AI/Chat/ObservabilityAssistant.js +53 -13
- package/build/dist/Server/Utils/AI/Chat/ObservabilityAssistant.js.map +1 -1
- package/build/dist/Server/Utils/AI/Chat/ObservabilityChatPrompt.js +1 -1
- package/build/dist/Server/Utils/AI/Chat/ToolOutputPager.js +206 -0
- package/build/dist/Server/Utils/AI/Chat/ToolOutputPager.js.map +1 -0
- package/build/dist/Server/Utils/AI/ClusterAccess/KubectlInvestigationToolkit.js +53 -26
- package/build/dist/Server/Utils/AI/ClusterAccess/KubectlInvestigationToolkit.js.map +1 -1
- package/build/dist/Server/Utils/AI/ClusterAccess/KubectlJobRunner.js +4 -2
- package/build/dist/Server/Utils/AI/ClusterAccess/KubectlJobRunner.js.map +1 -1
- package/build/dist/Server/Utils/AI/CodeFix/CodeFixReadiness.js +1 -29
- package/build/dist/Server/Utils/AI/CodeFix/CodeFixReadiness.js.map +1 -1
- package/build/dist/Server/Utils/AI/CodeFix/FixRunBudget.js +24 -24
- package/build/dist/Server/Utils/AI/CodeFix/FixRunBudget.js.map +1 -1
- package/build/dist/Server/Utils/AI/Remediation/RemediationCommandTools.js +7 -2
- package/build/dist/Server/Utils/AI/Remediation/RemediationCommandTools.js.map +1 -1
- package/build/dist/Server/Utils/AI/Remediation/RemediationExecutionRunner.js +29 -14
- package/build/dist/Server/Utils/AI/Remediation/RemediationExecutionRunner.js.map +1 -1
- package/build/dist/Server/Utils/AI/ResourceAccess/InfrastructureInvestigationToolkit.js +38 -14
- package/build/dist/Server/Utils/AI/ResourceAccess/InfrastructureInvestigationToolkit.js.map +1 -1
- package/build/dist/Server/Utils/AI/ResourceAccess/ResourceCommandJobRunner.js +2 -0
- package/build/dist/Server/Utils/AI/ResourceAccess/ResourceCommandJobRunner.js.map +1 -1
- package/build/dist/Server/Utils/AI/SRE/AIInvestigationEngine.js +40 -10
- package/build/dist/Server/Utils/AI/SRE/AIInvestigationEngine.js.map +1 -1
- package/build/dist/Server/Utils/AI/SRE/AlertInvestigationRunner.js +19 -7
- package/build/dist/Server/Utils/AI/SRE/AlertInvestigationRunner.js.map +1 -1
- package/build/dist/Server/Utils/AI/SRE/IncidentInvestigationRunner.js +19 -7
- package/build/dist/Server/Utils/AI/SRE/IncidentInvestigationRunner.js.map +1 -1
- package/build/dist/Server/Utils/AI/SRE/InvestigationQueue.js +15 -18
- package/build/dist/Server/Utils/AI/SRE/InvestigationQueue.js.map +1 -1
- package/build/dist/Server/Utils/AI/SRE/InvestigationThread.js +412 -0
- package/build/dist/Server/Utils/AI/SRE/InvestigationThread.js.map +1 -0
- package/build/dist/Server/Utils/AI/SRE/InvestigationThreadService.js +495 -0
- package/build/dist/Server/Utils/AI/SRE/InvestigationThreadService.js.map +1 -0
- package/build/dist/Server/Utils/AI/Toolbox/Serializer.js +10 -3
- package/build/dist/Server/Utils/AI/Toolbox/Serializer.js.map +1 -1
- package/build/dist/Server/Utils/EditionEnforcement.js +20 -158
- package/build/dist/Server/Utils/EditionEnforcement.js.map +1 -1
- package/build/dist/Server/Utils/LLM/LLMService.js +193 -54
- package/build/dist/Server/Utils/LLM/LLMService.js.map +1 -1
- package/build/dist/Server/Utils/RelaxedScimTeamLocksReport.js +160 -0
- package/build/dist/Server/Utils/RelaxedScimTeamLocksReport.js.map +1 -0
- package/build/dist/Server/Utils/Rules/RuleRun/RuleRunRegistry.js +25 -0
- package/build/dist/Server/Utils/Rules/RuleRun/RuleRunRegistry.js.map +1 -1
- package/build/dist/Server/Utils/SameOriginRequest.js +151 -0
- package/build/dist/Server/Utils/SameOriginRequest.js.map +1 -0
- package/build/dist/Server/Utils/TeamMember/ProjectLeaveResourceCleanup.js +2 -0
- package/build/dist/Server/Utils/TeamMember/ProjectLeaveResourceCleanup.js.map +1 -1
- package/build/dist/Server/Utils/Telemetry/EntityRegistry.js +4 -1
- package/build/dist/Server/Utils/Telemetry/EntityRegistry.js.map +1 -1
- package/build/dist/Server/Utils/Telemetry/MessageQueueDiscovery.js +1015 -0
- package/build/dist/Server/Utils/Telemetry/MessageQueueDiscovery.js.map +1 -0
- package/build/dist/Server/Utils/Telemetry/ResourceEntityFilter.js +4 -1
- package/build/dist/Server/Utils/Telemetry/ResourceEntityFilter.js.map +1 -1
- package/build/dist/Server/Utils/VendorAssets.js +3 -3
- package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Incident.js +3 -1
- package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Incident.js.map +1 -1
- package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/IncidentEpisode.js +3 -1
- package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/IncidentEpisode.js.map +1 -1
- package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.js +10 -1
- package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.js.map +1 -1
- package/build/dist/Types/AI/AIAgentRunLimits.js +91 -0
- package/build/dist/Types/AI/AIAgentRunLimits.js.map +1 -0
- package/build/dist/Types/Code/CodeType.js +2 -0
- package/build/dist/Types/Code/CodeType.js.map +1 -1
- package/build/dist/Types/Code/JsonSyntax.js +604 -0
- package/build/dist/Types/Code/JsonSyntax.js.map +1 -0
- package/build/dist/Types/CustomField/CustomFieldCreateSettings.js +310 -0
- package/build/dist/Types/CustomField/CustomFieldCreateSettings.js.map +1 -0
- package/build/dist/Types/CustomField/CustomFieldMappingCatalog.js +38 -0
- package/build/dist/Types/CustomField/CustomFieldMappingCatalog.js.map +1 -1
- package/build/dist/Types/CustomField/CustomFieldValueValidator.js +10 -7
- package/build/dist/Types/CustomField/CustomFieldValueValidator.js.map +1 -1
- package/build/dist/Types/EnterpriseLicense/EnterpriseLicensePeriods.js +1 -1
- package/build/dist/Types/Icon/IconProp.js +2 -0
- package/build/dist/Types/Icon/IconProp.js.map +1 -1
- package/build/dist/Types/Incident/IncidentFormIpAllowlist.js +119 -0
- package/build/dist/Types/Incident/IncidentFormIpAllowlist.js.map +1 -0
- package/build/dist/Types/Incident/IncidentFormPublic.js +678 -0
- package/build/dist/Types/Incident/IncidentFormPublic.js.map +1 -0
- package/build/dist/Types/Kubernetes/KubernetesClusterAiAccess.js +10 -3
- package/build/dist/Types/Kubernetes/KubernetesClusterAiAccess.js.map +1 -1
- package/build/dist/Types/MessageQueue/MessageQueueIdentity.js +184 -0
- package/build/dist/Types/MessageQueue/MessageQueueIdentity.js.map +1 -0
- package/build/dist/Types/MessageQueue/MessageQueueManualIdentity.js +190 -0
- package/build/dist/Types/MessageQueue/MessageQueueManualIdentity.js.map +1 -0
- package/build/dist/Types/MessageQueue/MessageQueueMetricCatalog.js +1057 -0
- package/build/dist/Types/MessageQueue/MessageQueueMetricCatalog.js.map +1 -0
- package/build/dist/Types/MessageQueue/MessagingSystem.js +394 -0
- package/build/dist/Types/MessageQueue/MessagingSystem.js.map +1 -0
- package/build/dist/Types/MessageQueue/MessagingTelemetryResolver.js +1768 -0
- package/build/dist/Types/MessageQueue/MessagingTelemetryResolver.js.map +1 -0
- package/build/dist/Types/Monitor/MessageQueueAlertTemplates.js +1207 -0
- package/build/dist/Types/Monitor/MessageQueueAlertTemplates.js.map +1 -0
- package/build/dist/Types/Permission.js +274 -0
- package/build/dist/Types/Permission.js.map +1 -1
- package/build/dist/Types/ResourceAiAgent/ResourceAiAccess.js +10 -4
- package/build/dist/Types/ResourceAiAgent/ResourceAiAccess.js.map +1 -1
- package/build/dist/Types/Rules/RuleCriteriaFieldRegistry.js +12 -0
- package/build/dist/Types/Rules/RuleCriteriaFieldRegistry.js.map +1 -1
- package/build/dist/Types/Rules/RuleRun.js +4 -0
- package/build/dist/Types/Rules/RuleRun.js.map +1 -1
- package/build/dist/Types/Team/ComplianceNotificationChannel.js +4 -3
- package/build/dist/Types/Team/ComplianceNotificationChannel.js.map +1 -1
- package/build/dist/Types/Team/ComplianceRule.js +48 -14
- package/build/dist/Types/Team/ComplianceRule.js.map +1 -1
- package/build/dist/Types/Team/ComplianceRuleType.js +2 -2
- package/build/dist/Types/Telemetry/EntityType.js +16 -0
- package/build/dist/Types/Telemetry/EntityType.js.map +1 -1
- package/build/dist/Types/XML.js +23 -0
- package/build/dist/Types/XML.js.map +1 -1
- package/build/dist/UI/Components/CodeEditor/CodeEditor.js +641 -266
- package/build/dist/UI/Components/CodeEditor/CodeEditor.js.map +1 -1
- package/build/dist/UI/Components/CodeEditor/CodeEditorCommands.js +464 -0
- package/build/dist/UI/Components/CodeEditor/CodeEditorCommands.js.map +1 -0
- package/build/dist/UI/Components/CodeEditor/CodeEditorHighlight.js +69 -0
- package/build/dist/UI/Components/CodeEditor/CodeEditorHighlight.js.map +1 -0
- package/build/dist/UI/Components/CodeEditor/CodeEditorLanguages.js +108 -0
- package/build/dist/UI/Components/CodeEditor/CodeEditorLanguages.js.map +1 -0
- package/build/dist/UI/Components/CodeEditor/YamlEditor.js +14 -186
- package/build/dist/UI/Components/CodeEditor/YamlEditor.js.map +1 -1
- package/build/dist/UI/Components/CopyTextButton/CopyTextButton.js +5 -1
- package/build/dist/UI/Components/CopyTextButton/CopyTextButton.js.map +1 -1
- package/build/dist/UI/Components/CustomFields/CustomFieldModelFormFields.js +5 -14
- package/build/dist/UI/Components/CustomFields/CustomFieldModelFormFields.js.map +1 -1
- package/build/dist/UI/Components/EditionLabel/EditionLabel.js +14 -13
- package/build/dist/UI/Components/EditionLabel/EditionLabel.js.map +1 -1
- package/build/dist/UI/Components/ErrorMessage/ErrorMessage.js +1 -1
- package/build/dist/UI/Components/ErrorMessage/ErrorMessage.js.map +1 -1
- package/build/dist/UI/Components/Forms/Fields/FormField.js +8 -3
- package/build/dist/UI/Components/Forms/Fields/FormField.js.map +1 -1
- package/build/dist/UI/Components/Icon/Icon.js +8 -0
- package/build/dist/UI/Components/Icon/Icon.js.map +1 -1
- package/build/dist/UI/Components/Input/Input.js +11 -3
- package/build/dist/UI/Components/Input/Input.js.map +1 -1
- package/build/dist/UI/Components/LogsViewer/LogsViewer.js +2 -1
- package/build/dist/UI/Components/LogsViewer/LogsViewer.js.map +1 -1
- package/build/dist/UI/Components/LogsViewer/components/LogsFacetSidebar.js +14 -4
- package/build/dist/UI/Components/LogsViewer/components/LogsFacetSidebar.js.map +1 -1
- package/build/dist/UI/Components/Markdown.tsx/MarkdownConverters.js +0 -0
- package/build/dist/UI/Components/Markdown.tsx/MarkdownConverters.js.map +1 -1
- package/build/dist/UI/Components/Markdown.tsx/MarkdownEditor.js +710 -65
- package/build/dist/UI/Components/Markdown.tsx/MarkdownEditor.js.map +1 -1
- package/build/dist/UI/Components/Markdown.tsx/MarkdownEditorHistory.js +238 -0
- package/build/dist/UI/Components/Markdown.tsx/MarkdownEditorHistory.js.map +1 -0
- package/build/dist/UI/Components/Markdown.tsx/MarkdownListEditing.js +1028 -0
- package/build/dist/UI/Components/Markdown.tsx/MarkdownListEditing.js.map +1 -0
- package/build/dist/UI/Components/Markdown.tsx/MarkdownPaste.js +1088 -0
- package/build/dist/UI/Components/Markdown.tsx/MarkdownPaste.js.map +1 -0
- package/build/dist/UI/Components/Markdown.tsx/MarkdownViewer.js +70 -10
- package/build/dist/UI/Components/Markdown.tsx/MarkdownViewer.js.map +1 -1
- package/build/dist/UI/Components/Markdown.tsx/MarkdownVisualEditing.js +887 -0
- package/build/dist/UI/Components/Markdown.tsx/MarkdownVisualEditing.js.map +1 -0
- package/build/dist/UI/Components/ModelTable/BaseModelTable.js +57 -6
- package/build/dist/UI/Components/ModelTable/BaseModelTable.js.map +1 -1
- package/build/dist/UI/Components/ResetObjectID/ResetObjectID.js +7 -5
- package/build/dist/UI/Components/ResetObjectID/ResetObjectID.js.map +1 -1
- package/build/dist/UI/Components/Table/EmptyTableMessage.js +51 -0
- package/build/dist/UI/Components/Table/EmptyTableMessage.js.map +1 -0
- package/build/dist/UI/Components/Table/Table.js +30 -11
- package/build/dist/UI/Components/Table/Table.js.map +1 -1
- package/build/dist/UI/Components/Table/TableRow.js +9 -2
- package/build/dist/UI/Components/Table/TableRow.js.map +1 -1
- package/build/dist/UI/Components/TelemetryViewer/FacetVisibility.js +63 -1
- package/build/dist/UI/Components/TelemetryViewer/FacetVisibility.js.map +1 -1
- package/build/dist/UI/Components/TelemetryViewer/TelemetryViewer.js +4 -2
- package/build/dist/UI/Components/TelemetryViewer/TelemetryViewer.js.map +1 -1
- package/build/dist/UI/Components/TelemetryViewer/components/LockedFilterChip.js +91 -10
- package/build/dist/UI/Components/TelemetryViewer/components/LockedFilterChip.js.map +1 -1
- package/build/dist/UI/Components/TelemetryViewer/components/TelemetryFacetSidebar.js +14 -4
- package/build/dist/UI/Components/TelemetryViewer/components/TelemetryFacetSidebar.js.map +1 -1
- package/build/dist/UI/Components/TextArea/TextArea.js +9 -3
- package/build/dist/UI/Components/TextArea/TextArea.js.map +1 -1
- package/build/dist/UI/Components/Workflow/ModelFieldPicker.js +1 -2
- package/build/dist/UI/Components/Workflow/ModelFieldPicker.js.map +1 -1
- package/build/dist/Utils/LabelRuleImportExport.js +2 -0
- package/build/dist/Utils/LabelRuleImportExport.js.map +1 -1
- package/build/dist/Utils/Markdown/UntrustedMarkdown.js +988 -0
- package/build/dist/Utils/Markdown/UntrustedMarkdown.js.map +1 -0
- package/build/dist/Utils/Monitor/IncomingEmailMonitorRequestUtil.js +34 -0
- package/build/dist/Utils/Monitor/IncomingEmailMonitorRequestUtil.js.map +1 -0
- package/build/dist/Utils/Monitor/MonitorLogSummaryUtil.js +148 -0
- package/build/dist/Utils/Monitor/MonitorLogSummaryUtil.js.map +1 -0
- package/build/dist/Utils/Telemetry/EntityKey.js +36 -0
- package/build/dist/Utils/Telemetry/EntityKey.js.map +1 -1
- package/package.json +1 -3
- package/Server/Utils/CommunityEditionSsoReport.ts +0 -361
- package/Tests/App/Accounts/LoginSsoEdition.test.tsx +0 -616
- package/Tests/App/AdminDashboard/AdminAuthenticationSsoEdition.test.tsx +0 -217
- package/Tests/App/AdminDashboard/GlobalSSOEnterpriseShells.test.tsx +0 -271
- package/Tests/App/Dashboard/CloudDocumentationMarkdown.test.ts +0 -215
- package/Tests/App/Dashboard/TelemetryResourceRetentionSettings.test.tsx +0 -784
- package/Tests/Server/Middleware/UserAuthorizationEditionEnforcement.test.ts +0 -518
- package/Tests/Server/Services/SsoRequirementReadMasking.test.ts +0 -419
- package/Tests/Server/Services/SsoRequirementWriteGuard.test.ts +0 -769
- package/Tests/UI/Components/CodeEditor.test.tsx +0 -638
- package/Tests/UI/Components/MonacoLoader.test.ts +0 -67
- package/Tests/UI/Components/MonacoRuntime.test.ts +0 -121
- package/Tests/UI/Components/Telemetry/TelemetryRetentionConfigForm.test.tsx +0 -329
- package/Tests/UI/Components/YamlEditor.test.tsx +0 -847
- package/UI/Components/CodeEditor/MonacoLoader.ts +0 -36
- package/UI/Components/Telemetry/TelemetryRetentionConfigForm.tsx +0 -319
- package/UI/Components/Telemetry/TelemetryRetentionConfigSummary.tsx +0 -223
- package/build/dist/Server/Utils/CommunityEditionSsoReport.js +0 -223
- package/build/dist/Server/Utils/CommunityEditionSsoReport.js.map +0 -1
- package/build/dist/UI/Components/CodeEditor/MonacoLoader.js +0 -34
- package/build/dist/UI/Components/CodeEditor/MonacoLoader.js.map +0 -1
- package/build/dist/UI/Components/Telemetry/TelemetryRetentionConfigForm.js +0 -171
- package/build/dist/UI/Components/Telemetry/TelemetryRetentionConfigForm.js.map +0 -1
- package/build/dist/UI/Components/Telemetry/TelemetryRetentionConfigSummary.js +0 -119
- package/build/dist/UI/Components/Telemetry/TelemetryRetentionConfigSummary.js.map +0 -1
package/Types/Permission.ts
CHANGED
|
@@ -1888,6 +1888,16 @@ enum Permission {
|
|
|
1888
1888
|
EditIncidentAlert = "EditIncidentAlert",
|
|
1889
1889
|
ReadIncidentAlert = "ReadIncidentAlert",
|
|
1890
1890
|
|
|
1891
|
+
// Incident Form (public forms that declare incidents) Permissions
|
|
1892
|
+
CreateIncidentForm = "CreateIncidentForm",
|
|
1893
|
+
DeleteIncidentForm = "DeleteIncidentForm",
|
|
1894
|
+
EditIncidentForm = "EditIncidentForm",
|
|
1895
|
+
ReadIncidentForm = "ReadIncidentForm",
|
|
1896
|
+
|
|
1897
|
+
// Incident Form Submission Permissions
|
|
1898
|
+
DeleteIncidentFormSubmission = "DeleteIncidentFormSubmission",
|
|
1899
|
+
ReadIncidentFormSubmission = "ReadIncidentFormSubmission",
|
|
1900
|
+
|
|
1891
1901
|
// Incident Episode State Timeline Permissions
|
|
1892
1902
|
CreateIncidentEpisodeStateTimeline = "CreateIncidentEpisodeStateTimeline",
|
|
1893
1903
|
DeleteIncidentEpisodeStateTimeline = "DeleteIncidentEpisodeStateTimeline",
|
|
@@ -2067,6 +2077,36 @@ enum Permission {
|
|
|
2067
2077
|
EditServiceLevelObjectiveLabelRule = "EditServiceLevelObjectiveLabelRule",
|
|
2068
2078
|
ReadServiceLevelObjectiveLabelRule = "ReadServiceLevelObjectiveLabelRule",
|
|
2069
2079
|
|
|
2080
|
+
// Queue (MessageQueue) Permissions
|
|
2081
|
+
CreateMessageQueue = "CreateMessageQueue",
|
|
2082
|
+
DeleteMessageQueue = "DeleteMessageQueue",
|
|
2083
|
+
EditMessageQueue = "EditMessageQueue",
|
|
2084
|
+
ReadMessageQueue = "ReadMessageQueue",
|
|
2085
|
+
|
|
2086
|
+
// Queue Owner Team Permissions
|
|
2087
|
+
CreateMessageQueueOwnerTeam = "CreateMessageQueueOwnerTeam",
|
|
2088
|
+
DeleteMessageQueueOwnerTeam = "DeleteMessageQueueOwnerTeam",
|
|
2089
|
+
EditMessageQueueOwnerTeam = "EditMessageQueueOwnerTeam",
|
|
2090
|
+
ReadMessageQueueOwnerTeam = "ReadMessageQueueOwnerTeam",
|
|
2091
|
+
|
|
2092
|
+
// Queue Owner User Permissions
|
|
2093
|
+
CreateMessageQueueOwnerUser = "CreateMessageQueueOwnerUser",
|
|
2094
|
+
DeleteMessageQueueOwnerUser = "DeleteMessageQueueOwnerUser",
|
|
2095
|
+
EditMessageQueueOwnerUser = "EditMessageQueueOwnerUser",
|
|
2096
|
+
ReadMessageQueueOwnerUser = "ReadMessageQueueOwnerUser",
|
|
2097
|
+
|
|
2098
|
+
// Queue Label Rule Permissions
|
|
2099
|
+
CreateMessageQueueLabelRule = "CreateMessageQueueLabelRule",
|
|
2100
|
+
DeleteMessageQueueLabelRule = "DeleteMessageQueueLabelRule",
|
|
2101
|
+
EditMessageQueueLabelRule = "EditMessageQueueLabelRule",
|
|
2102
|
+
ReadMessageQueueLabelRule = "ReadMessageQueueLabelRule",
|
|
2103
|
+
|
|
2104
|
+
// Queue Owner Rule Permissions
|
|
2105
|
+
CreateMessageQueueOwnerRule = "CreateMessageQueueOwnerRule",
|
|
2106
|
+
DeleteMessageQueueOwnerRule = "DeleteMessageQueueOwnerRule",
|
|
2107
|
+
EditMessageQueueOwnerRule = "EditMessageQueueOwnerRule",
|
|
2108
|
+
ReadMessageQueueOwnerRule = "ReadMessageQueueOwnerRule",
|
|
2109
|
+
|
|
2070
2110
|
/*
|
|
2071
2111
|
* Wildcard permissions covering all models marked @OperationalResource().
|
|
2072
2112
|
* These short-circuit table-level checks for that resource class. Scope on
|
|
@@ -13642,6 +13682,212 @@ export class PermissionHelper {
|
|
|
13642
13682
|
group: PermissionGroup.Telemetry,
|
|
13643
13683
|
},
|
|
13644
13684
|
|
|
13685
|
+
// Queue (MessageQueue) Permissions
|
|
13686
|
+
{
|
|
13687
|
+
permission: Permission.CreateMessageQueue,
|
|
13688
|
+
title: "Create Queue",
|
|
13689
|
+
description: "This permission can create queues in this project.",
|
|
13690
|
+
isAssignableToTenant: true,
|
|
13691
|
+
isAccessControlPermission: false,
|
|
13692
|
+
isRolePermission: false,
|
|
13693
|
+
group: PermissionGroup.Telemetry,
|
|
13694
|
+
},
|
|
13695
|
+
{
|
|
13696
|
+
permission: Permission.DeleteMessageQueue,
|
|
13697
|
+
title: "Delete Queue",
|
|
13698
|
+
description: "This permission can delete queues of this project.",
|
|
13699
|
+
isAssignableToTenant: true,
|
|
13700
|
+
isAccessControlPermission: true,
|
|
13701
|
+
isRolePermission: false,
|
|
13702
|
+
group: PermissionGroup.Telemetry,
|
|
13703
|
+
},
|
|
13704
|
+
{
|
|
13705
|
+
permission: Permission.EditMessageQueue,
|
|
13706
|
+
title: "Edit Queue",
|
|
13707
|
+
description: "This permission can edit queues of this project.",
|
|
13708
|
+
isAssignableToTenant: true,
|
|
13709
|
+
isAccessControlPermission: true,
|
|
13710
|
+
isRolePermission: false,
|
|
13711
|
+
group: PermissionGroup.Telemetry,
|
|
13712
|
+
},
|
|
13713
|
+
{
|
|
13714
|
+
permission: Permission.ReadMessageQueue,
|
|
13715
|
+
title: "Read Queue",
|
|
13716
|
+
description: "This permission can read queues of this project.",
|
|
13717
|
+
isAssignableToTenant: true,
|
|
13718
|
+
isAccessControlPermission: true,
|
|
13719
|
+
isRolePermission: false,
|
|
13720
|
+
group: PermissionGroup.Telemetry,
|
|
13721
|
+
},
|
|
13722
|
+
|
|
13723
|
+
// Queue Team Owner Permissions
|
|
13724
|
+
{
|
|
13725
|
+
permission: Permission.CreateMessageQueueOwnerTeam,
|
|
13726
|
+
title: "Create Queue Team Owner",
|
|
13727
|
+
description:
|
|
13728
|
+
"This permission can create Queue Team Owner of this project.",
|
|
13729
|
+
isAssignableToTenant: true,
|
|
13730
|
+
isAccessControlPermission: false,
|
|
13731
|
+
isRolePermission: false,
|
|
13732
|
+
group: PermissionGroup.Telemetry,
|
|
13733
|
+
},
|
|
13734
|
+
{
|
|
13735
|
+
permission: Permission.DeleteMessageQueueOwnerTeam,
|
|
13736
|
+
title: "Delete Queue Team Owner",
|
|
13737
|
+
description:
|
|
13738
|
+
"This permission can delete Queue Team Owner of this project.",
|
|
13739
|
+
isAssignableToTenant: true,
|
|
13740
|
+
isAccessControlPermission: false,
|
|
13741
|
+
isRolePermission: false,
|
|
13742
|
+
group: PermissionGroup.Telemetry,
|
|
13743
|
+
},
|
|
13744
|
+
{
|
|
13745
|
+
permission: Permission.EditMessageQueueOwnerTeam,
|
|
13746
|
+
title: "Edit Queue Team Owner",
|
|
13747
|
+
description:
|
|
13748
|
+
"This permission can edit Queue Team Owner of this project.",
|
|
13749
|
+
isAssignableToTenant: true,
|
|
13750
|
+
isAccessControlPermission: false,
|
|
13751
|
+
isRolePermission: false,
|
|
13752
|
+
group: PermissionGroup.Telemetry,
|
|
13753
|
+
},
|
|
13754
|
+
{
|
|
13755
|
+
permission: Permission.ReadMessageQueueOwnerTeam,
|
|
13756
|
+
title: "Read Queue Team Owner",
|
|
13757
|
+
description:
|
|
13758
|
+
"This permission can read Queue Team Owner of this project.",
|
|
13759
|
+
isAssignableToTenant: true,
|
|
13760
|
+
isAccessControlPermission: false,
|
|
13761
|
+
isRolePermission: false,
|
|
13762
|
+
group: PermissionGroup.Telemetry,
|
|
13763
|
+
},
|
|
13764
|
+
|
|
13765
|
+
// Queue User Owner Permissions
|
|
13766
|
+
{
|
|
13767
|
+
permission: Permission.CreateMessageQueueOwnerUser,
|
|
13768
|
+
title: "Create Queue User Owner",
|
|
13769
|
+
description:
|
|
13770
|
+
"This permission can create Queue User Owner of this project.",
|
|
13771
|
+
isAssignableToTenant: true,
|
|
13772
|
+
isAccessControlPermission: false,
|
|
13773
|
+
isRolePermission: false,
|
|
13774
|
+
group: PermissionGroup.Telemetry,
|
|
13775
|
+
},
|
|
13776
|
+
{
|
|
13777
|
+
permission: Permission.DeleteMessageQueueOwnerUser,
|
|
13778
|
+
title: "Delete Queue User Owner",
|
|
13779
|
+
description:
|
|
13780
|
+
"This permission can delete Queue User Owner of this project.",
|
|
13781
|
+
isAssignableToTenant: true,
|
|
13782
|
+
isAccessControlPermission: false,
|
|
13783
|
+
isRolePermission: false,
|
|
13784
|
+
group: PermissionGroup.Telemetry,
|
|
13785
|
+
},
|
|
13786
|
+
{
|
|
13787
|
+
permission: Permission.EditMessageQueueOwnerUser,
|
|
13788
|
+
title: "Edit Queue User Owner",
|
|
13789
|
+
description:
|
|
13790
|
+
"This permission can edit Queue User Owner of this project.",
|
|
13791
|
+
isAssignableToTenant: true,
|
|
13792
|
+
isAccessControlPermission: false,
|
|
13793
|
+
isRolePermission: false,
|
|
13794
|
+
group: PermissionGroup.Telemetry,
|
|
13795
|
+
},
|
|
13796
|
+
{
|
|
13797
|
+
permission: Permission.ReadMessageQueueOwnerUser,
|
|
13798
|
+
title: "Read Queue User Owner",
|
|
13799
|
+
description:
|
|
13800
|
+
"This permission can read Queue User Owner of this project.",
|
|
13801
|
+
isAssignableToTenant: true,
|
|
13802
|
+
isAccessControlPermission: false,
|
|
13803
|
+
isRolePermission: false,
|
|
13804
|
+
group: PermissionGroup.Telemetry,
|
|
13805
|
+
},
|
|
13806
|
+
|
|
13807
|
+
// Queue Label Rule Permissions
|
|
13808
|
+
{
|
|
13809
|
+
permission: Permission.CreateMessageQueueLabelRule,
|
|
13810
|
+
title: "Create Queue Label Rule",
|
|
13811
|
+
description:
|
|
13812
|
+
"This permission can create Queue Label Rules in this project.",
|
|
13813
|
+
isAssignableToTenant: true,
|
|
13814
|
+
isAccessControlPermission: false,
|
|
13815
|
+
isRolePermission: false,
|
|
13816
|
+
group: PermissionGroup.Telemetry,
|
|
13817
|
+
},
|
|
13818
|
+
{
|
|
13819
|
+
permission: Permission.DeleteMessageQueueLabelRule,
|
|
13820
|
+
title: "Delete Queue Label Rule",
|
|
13821
|
+
description:
|
|
13822
|
+
"This permission can delete Queue Label Rules of this project.",
|
|
13823
|
+
isAssignableToTenant: true,
|
|
13824
|
+
isAccessControlPermission: false,
|
|
13825
|
+
isRolePermission: false,
|
|
13826
|
+
group: PermissionGroup.Telemetry,
|
|
13827
|
+
},
|
|
13828
|
+
{
|
|
13829
|
+
permission: Permission.EditMessageQueueLabelRule,
|
|
13830
|
+
title: "Edit Queue Label Rule",
|
|
13831
|
+
description:
|
|
13832
|
+
"This permission can edit Queue Label Rules of this project.",
|
|
13833
|
+
isAssignableToTenant: true,
|
|
13834
|
+
isAccessControlPermission: false,
|
|
13835
|
+
isRolePermission: false,
|
|
13836
|
+
group: PermissionGroup.Telemetry,
|
|
13837
|
+
},
|
|
13838
|
+
{
|
|
13839
|
+
permission: Permission.ReadMessageQueueLabelRule,
|
|
13840
|
+
title: "Read Queue Label Rule",
|
|
13841
|
+
description:
|
|
13842
|
+
"This permission can read Queue Label Rules of this project.",
|
|
13843
|
+
isAssignableToTenant: true,
|
|
13844
|
+
isAccessControlPermission: false,
|
|
13845
|
+
isRolePermission: false,
|
|
13846
|
+
group: PermissionGroup.Telemetry,
|
|
13847
|
+
},
|
|
13848
|
+
|
|
13849
|
+
// Queue Owner Rule Permissions
|
|
13850
|
+
{
|
|
13851
|
+
permission: Permission.CreateMessageQueueOwnerRule,
|
|
13852
|
+
title: "Create Queue Owner Rule",
|
|
13853
|
+
description:
|
|
13854
|
+
"This permission can create Queue Owner Rules in this project.",
|
|
13855
|
+
isAssignableToTenant: true,
|
|
13856
|
+
isAccessControlPermission: false,
|
|
13857
|
+
isRolePermission: false,
|
|
13858
|
+
group: PermissionGroup.Telemetry,
|
|
13859
|
+
},
|
|
13860
|
+
{
|
|
13861
|
+
permission: Permission.DeleteMessageQueueOwnerRule,
|
|
13862
|
+
title: "Delete Queue Owner Rule",
|
|
13863
|
+
description:
|
|
13864
|
+
"This permission can delete Queue Owner Rules of this project.",
|
|
13865
|
+
isAssignableToTenant: true,
|
|
13866
|
+
isAccessControlPermission: false,
|
|
13867
|
+
isRolePermission: false,
|
|
13868
|
+
group: PermissionGroup.Telemetry,
|
|
13869
|
+
},
|
|
13870
|
+
{
|
|
13871
|
+
permission: Permission.EditMessageQueueOwnerRule,
|
|
13872
|
+
title: "Edit Queue Owner Rule",
|
|
13873
|
+
description:
|
|
13874
|
+
"This permission can edit Queue Owner Rules of this project.",
|
|
13875
|
+
isAssignableToTenant: true,
|
|
13876
|
+
isAccessControlPermission: false,
|
|
13877
|
+
isRolePermission: false,
|
|
13878
|
+
group: PermissionGroup.Telemetry,
|
|
13879
|
+
},
|
|
13880
|
+
{
|
|
13881
|
+
permission: Permission.ReadMessageQueueOwnerRule,
|
|
13882
|
+
title: "Read Queue Owner Rule",
|
|
13883
|
+
description:
|
|
13884
|
+
"This permission can read Queue Owner Rules of this project.",
|
|
13885
|
+
isAssignableToTenant: true,
|
|
13886
|
+
isAccessControlPermission: false,
|
|
13887
|
+
isRolePermission: false,
|
|
13888
|
+
group: PermissionGroup.Telemetry,
|
|
13889
|
+
},
|
|
13890
|
+
|
|
13645
13891
|
// Runbook Owner Rule Permissions
|
|
13646
13892
|
{
|
|
13647
13893
|
permission: Permission.CreateRunbookOwnerRule,
|
|
@@ -15330,6 +15576,70 @@ export class PermissionHelper {
|
|
|
15330
15576
|
group: PermissionGroup.Incident,
|
|
15331
15577
|
},
|
|
15332
15578
|
|
|
15579
|
+
// Incident Form Permissions
|
|
15580
|
+
{
|
|
15581
|
+
permission: Permission.CreateIncidentForm,
|
|
15582
|
+
title: "Create Incident Form",
|
|
15583
|
+
description:
|
|
15584
|
+
"This permission can create incident forms in this project. Anyone with a form's link can declare an incident through it.",
|
|
15585
|
+
isAssignableToTenant: true,
|
|
15586
|
+
isAccessControlPermission: false,
|
|
15587
|
+
isRolePermission: false,
|
|
15588
|
+
group: PermissionGroup.Incident,
|
|
15589
|
+
},
|
|
15590
|
+
{
|
|
15591
|
+
permission: Permission.DeleteIncidentForm,
|
|
15592
|
+
title: "Delete Incident Form",
|
|
15593
|
+
description:
|
|
15594
|
+
"This permission can delete incident forms in this project.",
|
|
15595
|
+
isAssignableToTenant: true,
|
|
15596
|
+
isAccessControlPermission: false,
|
|
15597
|
+
isRolePermission: false,
|
|
15598
|
+
group: PermissionGroup.Incident,
|
|
15599
|
+
},
|
|
15600
|
+
{
|
|
15601
|
+
permission: Permission.EditIncidentForm,
|
|
15602
|
+
title: "Edit Incident Form",
|
|
15603
|
+
description:
|
|
15604
|
+
"This permission can edit incident forms in this project, including turning a form off and resetting its link.",
|
|
15605
|
+
isAssignableToTenant: true,
|
|
15606
|
+
isAccessControlPermission: false,
|
|
15607
|
+
isRolePermission: false,
|
|
15608
|
+
group: PermissionGroup.Incident,
|
|
15609
|
+
},
|
|
15610
|
+
{
|
|
15611
|
+
permission: Permission.ReadIncidentForm,
|
|
15612
|
+
title: "Read Incident Form",
|
|
15613
|
+
description:
|
|
15614
|
+
"This permission can read incident forms in this project, including their links.",
|
|
15615
|
+
isAssignableToTenant: true,
|
|
15616
|
+
isAccessControlPermission: false,
|
|
15617
|
+
isRolePermission: false,
|
|
15618
|
+
group: PermissionGroup.Incident,
|
|
15619
|
+
},
|
|
15620
|
+
|
|
15621
|
+
// Incident Form Submission Permissions
|
|
15622
|
+
{
|
|
15623
|
+
permission: Permission.DeleteIncidentFormSubmission,
|
|
15624
|
+
title: "Delete Incident Form Submission",
|
|
15625
|
+
description:
|
|
15626
|
+
"This permission can delete incident form submissions, and the reporter's name and email they hold, in this project.",
|
|
15627
|
+
isAssignableToTenant: true,
|
|
15628
|
+
isAccessControlPermission: false,
|
|
15629
|
+
isRolePermission: false,
|
|
15630
|
+
group: PermissionGroup.Incident,
|
|
15631
|
+
},
|
|
15632
|
+
{
|
|
15633
|
+
permission: Permission.ReadIncidentFormSubmission,
|
|
15634
|
+
title: "Read Incident Form Submission",
|
|
15635
|
+
description:
|
|
15636
|
+
"This permission can read the submissions made through incident forms in this project, including the reporter's name and email.",
|
|
15637
|
+
isAssignableToTenant: true,
|
|
15638
|
+
isAccessControlPermission: false,
|
|
15639
|
+
isRolePermission: false,
|
|
15640
|
+
group: PermissionGroup.Incident,
|
|
15641
|
+
},
|
|
15642
|
+
|
|
15333
15643
|
// Incident Episode State Timeline Permissions
|
|
15334
15644
|
{
|
|
15335
15645
|
permission: Permission.CreateIncidentEpisodeStateTimeline,
|
|
@@ -566,9 +566,15 @@ export interface ResourceCommandJobPayload {
|
|
|
566
566
|
tier: ResourceCommandTier;
|
|
567
567
|
}
|
|
568
568
|
|
|
569
|
-
|
|
570
|
-
|
|
569
|
+
/*
|
|
570
|
+
* Caps shared by the investigation tool, the remediation toolkit and the
|
|
571
|
+
* agent. The command count is a runaway guard, not a ration. The agent keeps
|
|
572
|
+
* up to a megabyte of a command's output, and the investigation and
|
|
573
|
+
* conversation toolkits read all of it and page it (ToolOutputPager); the
|
|
574
|
+
* character cap is only what a caller that does not page gets.
|
|
575
|
+
*/
|
|
576
|
+
export const MAX_RESOURCE_COMMANDS_PER_INVESTIGATION: number = 200;
|
|
571
577
|
export const DEFAULT_RESOURCE_COMMAND_TIMEOUT_MS: number = 30 * 1000;
|
|
572
578
|
export const MAX_RESOURCE_COMMAND_TIMEOUT_MS: number = 2 * 60 * 1000;
|
|
573
|
-
export const MAX_RESOURCE_COMMAND_OUTPUT_CHARS_FOR_LLM: number =
|
|
574
|
-
export const MAX_RESOURCE_AGENT_OUTPUT_BYTES: number =
|
|
579
|
+
export const MAX_RESOURCE_COMMAND_OUTPUT_CHARS_FOR_LLM: number = 40_000;
|
|
580
|
+
export const MAX_RESOURCE_AGENT_OUTPUT_BYTES: number = 1024 * 1024;
|
|
@@ -267,6 +267,18 @@ export const RULE_CRITERIA_FIELDS_BY_MODEL: Readonly<
|
|
|
267
267
|
"kubernetesClusterNamePattern",
|
|
268
268
|
"kubernetesClusterDescriptionPattern",
|
|
269
269
|
],
|
|
270
|
+
MessageQueueLabelRule: [
|
|
271
|
+
"messageQueueLabels",
|
|
272
|
+
"messageQueueNamePattern",
|
|
273
|
+
"messageQueueDescriptionPattern",
|
|
274
|
+
"messageQueueSystemPattern",
|
|
275
|
+
],
|
|
276
|
+
MessageQueueOwnerRule: [
|
|
277
|
+
"messageQueueLabels",
|
|
278
|
+
"messageQueueNamePattern",
|
|
279
|
+
"messageQueueDescriptionPattern",
|
|
280
|
+
"messageQueueSystemPattern",
|
|
281
|
+
],
|
|
270
282
|
MonitorLabelRule: [
|
|
271
283
|
"monitorLabels",
|
|
272
284
|
"monitorNamePattern",
|
package/Types/Rules/RuleRun.ts
CHANGED
|
@@ -73,6 +73,8 @@ export enum RuleRunType {
|
|
|
73
73
|
IoTFleetOwnerRule = "IoTFleetOwnerRule",
|
|
74
74
|
KubernetesClusterLabelRule = "KubernetesClusterLabelRule",
|
|
75
75
|
KubernetesClusterOwnerRule = "KubernetesClusterOwnerRule",
|
|
76
|
+
MessageQueueLabelRule = "MessageQueueLabelRule",
|
|
77
|
+
MessageQueueOwnerRule = "MessageQueueOwnerRule",
|
|
76
78
|
MonitorLabelRule = "MonitorLabelRule",
|
|
77
79
|
MonitorOwnerRule = "MonitorOwnerRule",
|
|
78
80
|
NetworkDeviceLabelRule = "NetworkDeviceLabelRule",
|
|
@@ -245,6 +247,8 @@ export const RULE_RUN_TYPE_METADATA: Readonly<
|
|
|
245
247
|
"Kubernetes cluster",
|
|
246
248
|
"Kubernetes clusters",
|
|
247
249
|
),
|
|
250
|
+
[RuleRunType.MessageQueueLabelRule]: metadata(Labels, "queue", "queues"),
|
|
251
|
+
[RuleRunType.MessageQueueOwnerRule]: metadata(Owners, "queue", "queues"),
|
|
248
252
|
[RuleRunType.MonitorLabelRule]: metadata(Labels, "monitor", "monitors"),
|
|
249
253
|
[RuleRunType.MonitorOwnerRule]: metadata(Owners, "monitor", "monitors"),
|
|
250
254
|
[RuleRunType.NetworkDeviceLabelRule]: metadata(
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
/*
|
|
2
|
-
*
|
|
3
|
-
* (TeamComplianceSetting.
|
|
4
|
-
*
|
|
2
|
+
* A notification channel an on-call compliance rule can insist on
|
|
3
|
+
* (TeamComplianceSetting.notificationChannels, every one of which a member
|
|
4
|
+
* must be notified on). No channels on a setting means "any channel". The
|
|
5
|
+
* string values are stored, so they must never be renamed.
|
|
5
6
|
*
|
|
6
7
|
* Every channel a UserNotificationRule can point at is here, because a
|
|
7
8
|
* compliance rule that could only ask about four of the nine would report a
|
|
@@ -18,7 +18,7 @@ export enum ComplianceRuleCategory {
|
|
|
18
18
|
NotificationMethod = "NotificationMethod",
|
|
19
19
|
/*
|
|
20
20
|
* The member has on-call notification rules for a set of severities,
|
|
21
|
-
* optionally on one
|
|
21
|
+
* optionally on specific channels - on every one of them.
|
|
22
22
|
*/
|
|
23
23
|
OnCallRule = "OnCallRule",
|
|
24
24
|
}
|
|
@@ -176,7 +176,7 @@ export const COMPLIANCE_RULE_DEFINITIONS: ReadonlyArray<ComplianceRuleDefinition
|
|
|
176
176
|
subject: "incident",
|
|
177
177
|
title: "Incident on-call rules",
|
|
178
178
|
description:
|
|
179
|
-
"Members are notified when an incident on-call policy pages them - for the severities and
|
|
179
|
+
"Members are notified when an incident on-call policy pages them - for the severities and channels you choose.",
|
|
180
180
|
}),
|
|
181
181
|
onCallRule({
|
|
182
182
|
ruleType: ComplianceRuleType.HasAlertOnCallRules,
|
|
@@ -185,7 +185,7 @@ export const COMPLIANCE_RULE_DEFINITIONS: ReadonlyArray<ComplianceRuleDefinition
|
|
|
185
185
|
subject: "alert",
|
|
186
186
|
title: "Alert on-call rules",
|
|
187
187
|
description:
|
|
188
|
-
"Members are notified when an alert on-call policy pages them - for the severities and
|
|
188
|
+
"Members are notified when an alert on-call policy pages them - for the severities and channels you choose.",
|
|
189
189
|
}),
|
|
190
190
|
onCallRule({
|
|
191
191
|
ruleType: ComplianceRuleType.HasIncidentEpisodeOnCallRules,
|
|
@@ -195,7 +195,7 @@ export const COMPLIANCE_RULE_DEFINITIONS: ReadonlyArray<ComplianceRuleDefinition
|
|
|
195
195
|
subject: "incident episode",
|
|
196
196
|
title: "Incident episode on-call rules",
|
|
197
197
|
description:
|
|
198
|
-
"Members are notified when an incident episode on-call policy pages them - for the severities and
|
|
198
|
+
"Members are notified when an incident episode on-call policy pages them - for the severities and channels you choose.",
|
|
199
199
|
}),
|
|
200
200
|
onCallRule({
|
|
201
201
|
ruleType: ComplianceRuleType.HasAlertEpisodeOnCallRules,
|
|
@@ -204,7 +204,7 @@ export const COMPLIANCE_RULE_DEFINITIONS: ReadonlyArray<ComplianceRuleDefinition
|
|
|
204
204
|
subject: "alert episode",
|
|
205
205
|
title: "Alert episode on-call rules",
|
|
206
206
|
description:
|
|
207
|
-
"Members are notified when an alert episode on-call policy pages them - for the severities and
|
|
207
|
+
"Members are notified when an alert episode on-call policy pages them - for the severities and channels you choose.",
|
|
208
208
|
}),
|
|
209
209
|
methodRule({
|
|
210
210
|
ruleType: ComplianceRuleType.HasNotificationCallMethod,
|
|
@@ -313,6 +313,32 @@ export default class ComplianceRule {
|
|
|
313
313
|
);
|
|
314
314
|
}
|
|
315
315
|
|
|
316
|
+
/*
|
|
317
|
+
* A rule's channels as one canonical list: the known channels in `value`,
|
|
318
|
+
* each once, in catalog order - so two lists naming the same channels read,
|
|
319
|
+
* compare and store alike however they were picked. Anything that is not a
|
|
320
|
+
* list reads as no channels ("any channel"), and so does a list of nothing
|
|
321
|
+
* this build recognises; the settings service refuses such input on write,
|
|
322
|
+
* so only rows it did not write can hold it.
|
|
323
|
+
*/
|
|
324
|
+
public static normaliseChannels(
|
|
325
|
+
value: unknown,
|
|
326
|
+
): Array<ComplianceNotificationChannel> {
|
|
327
|
+
if (!Array.isArray(value)) {
|
|
328
|
+
return [];
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
return COMPLIANCE_CHANNEL_DEFINITIONS.map(
|
|
332
|
+
(
|
|
333
|
+
definition: ComplianceChannelDefinition,
|
|
334
|
+
): ComplianceNotificationChannel => {
|
|
335
|
+
return definition.channel;
|
|
336
|
+
},
|
|
337
|
+
).filter((channel: ComplianceNotificationChannel): boolean => {
|
|
338
|
+
return value.includes(channel);
|
|
339
|
+
});
|
|
340
|
+
}
|
|
341
|
+
|
|
316
342
|
public static isOnCallRule(ruleType: string | undefined | null): boolean {
|
|
317
343
|
return (
|
|
318
344
|
ComplianceRule.getDefinition(ruleType)?.category ===
|
|
@@ -321,7 +347,7 @@ export default class ComplianceRule {
|
|
|
321
347
|
}
|
|
322
348
|
|
|
323
349
|
/*
|
|
324
|
-
* Only on-call rules take a severity scope and
|
|
350
|
+
* Only on-call rules take a severity scope and channels. A method rule
|
|
325
351
|
* ("has a verified email") has neither, and any that arrive with one are
|
|
326
352
|
* ignored rather than half-applied.
|
|
327
353
|
*/
|
|
@@ -356,11 +382,12 @@ export default class ComplianceRule {
|
|
|
356
382
|
|
|
357
383
|
/*
|
|
358
384
|
* The rule's name as a list row shows it: "Call for incidents",
|
|
359
|
-
* "Incident on-call rules",
|
|
385
|
+
* "Call and Push notification for incidents", "Incident on-call rules",
|
|
386
|
+
* "Verified push device".
|
|
360
387
|
*/
|
|
361
388
|
public static getTitle(data: {
|
|
362
389
|
ruleType: string | undefined | null;
|
|
363
|
-
|
|
390
|
+
notificationChannels?: Array<string> | undefined | null;
|
|
364
391
|
}): string {
|
|
365
392
|
const definition: ComplianceRuleDefinition | undefined =
|
|
366
393
|
ComplianceRule.getDefinition(data.ruleType);
|
|
@@ -369,11 +396,15 @@ export default class ComplianceRule {
|
|
|
369
396
|
return data.ruleType || "Unknown rule";
|
|
370
397
|
}
|
|
371
398
|
|
|
372
|
-
const
|
|
373
|
-
|
|
399
|
+
const channelLabels: Array<string> = ComplianceRule.getChannelLabels(
|
|
400
|
+
data.notificationChannels,
|
|
401
|
+
);
|
|
374
402
|
|
|
375
|
-
if (
|
|
376
|
-
|
|
403
|
+
if (
|
|
404
|
+
definition.category === ComplianceRuleCategory.OnCallRule &&
|
|
405
|
+
channelLabels.length > 0
|
|
406
|
+
) {
|
|
407
|
+
return `${joinAsProse(channelLabels)} for ${definition.subject}s`;
|
|
377
408
|
}
|
|
378
409
|
|
|
379
410
|
return definition.title;
|
|
@@ -382,14 +413,16 @@ export default class ComplianceRule {
|
|
|
382
413
|
/*
|
|
383
414
|
* The rule as one sentence about what every member must have, e.g.
|
|
384
415
|
* "Every member has an incident on-call rule that notifies them by Call for
|
|
385
|
-
* Critical Incident and Major Incident."
|
|
416
|
+
* Critical Incident and Major Incident." A rule on several channels needs a
|
|
417
|
+
* rule on each, and says so: "Every member has incident on-call rules that
|
|
418
|
+
* notify them by Call and by Push notification for Critical Incident."
|
|
386
419
|
*
|
|
387
420
|
* `severityNames` is the rule's scope. Empty means every severity, which is
|
|
388
421
|
* what a rule with no severities selected enforces.
|
|
389
422
|
*/
|
|
390
423
|
public static describe(data: {
|
|
391
424
|
ruleType: string | undefined | null;
|
|
392
|
-
|
|
425
|
+
notificationChannels?: Array<string> | undefined | null;
|
|
393
426
|
severityNames?: Array<string> | undefined;
|
|
394
427
|
}): string {
|
|
395
428
|
const definition: ComplianceRuleDefinition | undefined =
|
|
@@ -416,16 +449,36 @@ export default class ComplianceRule {
|
|
|
416
449
|
? `every ${definition.subject} severity`
|
|
417
450
|
: joinAsProse(severityNames);
|
|
418
451
|
|
|
419
|
-
const
|
|
420
|
-
|
|
452
|
+
const channelLabels: Array<string> = ComplianceRule.getChannelLabels(
|
|
453
|
+
data.notificationChannels,
|
|
454
|
+
);
|
|
455
|
+
|
|
456
|
+
if (channelLabels.length > 1) {
|
|
457
|
+
return `Every member has ${definition.subject || ""} on-call rules that notify them ${joinAsProse(
|
|
458
|
+
channelLabels.map((label: string): string => {
|
|
459
|
+
return `by ${label}`;
|
|
460
|
+
}),
|
|
461
|
+
)} for ${scope}.`;
|
|
462
|
+
}
|
|
421
463
|
|
|
422
|
-
if (
|
|
423
|
-
return `Every member has ${ComplianceRule.withArticle(definition.subject || "")} on-call rule that notifies them by ${
|
|
464
|
+
if (channelLabels.length === 1) {
|
|
465
|
+
return `Every member has ${ComplianceRule.withArticle(definition.subject || "")} on-call rule that notifies them by ${channelLabels[0]} for ${scope}.`;
|
|
424
466
|
}
|
|
425
467
|
|
|
426
468
|
return `Every member has ${ComplianceRule.withArticle(definition.subject || "")} on-call rule for ${scope}.`;
|
|
427
469
|
}
|
|
428
470
|
|
|
471
|
+
// The labels of the known channels in `channels`, in catalog order.
|
|
472
|
+
private static getChannelLabels(
|
|
473
|
+
channels: Array<string> | undefined | null,
|
|
474
|
+
): Array<string> {
|
|
475
|
+
return ComplianceRule.normaliseChannels(channels).map(
|
|
476
|
+
(channel: ComplianceNotificationChannel): string => {
|
|
477
|
+
return ComplianceRule.getChannelDefinition(channel)?.label || channel;
|
|
478
|
+
},
|
|
479
|
+
);
|
|
480
|
+
}
|
|
481
|
+
|
|
429
482
|
private static withArticle(noun: string): string {
|
|
430
483
|
return "aeiou".includes(noun.charAt(0).toLowerCase())
|
|
431
484
|
? `an ${noun}`
|
|
@@ -9,8 +9,8 @@
|
|
|
9
9
|
* method on that channel.
|
|
10
10
|
* - Has<Incident|Alert>[Episode]OnCallRules: the member has an on-call
|
|
11
11
|
* notification rule for the chosen severities (all of them when none are
|
|
12
|
-
* chosen), optionally on one
|
|
13
|
-
* incidents" is HasIncidentOnCallRules + Call + [Critical].
|
|
12
|
+
* chosen), optionally on specific channels - one on each - "call me for
|
|
13
|
+
* Critical incidents" is HasIncidentOnCallRules + [Call] + [Critical].
|
|
14
14
|
*/
|
|
15
15
|
enum ComplianceRuleType {
|
|
16
16
|
HasNotificationEmailMethod = "HasNotificationEmailMethod",
|
|
@@ -23,8 +23,12 @@ export interface TeamComplianceRuleJSON {
|
|
|
23
23
|
settingId: string;
|
|
24
24
|
ruleType: ComplianceRuleType;
|
|
25
25
|
enabled: boolean;
|
|
26
|
-
|
|
27
|
-
|
|
26
|
+
/*
|
|
27
|
+
* The channels an on-call rule insists on - a member needs a rule on each
|
|
28
|
+
* - in catalog order. Empty means "any channel", and is always empty for
|
|
29
|
+
* method rules.
|
|
30
|
+
*/
|
|
31
|
+
notificationChannels: Array<ComplianceNotificationChannel>;
|
|
28
32
|
// Which severity list scopes the rule; null for method rules.
|
|
29
33
|
severityKind: ComplianceSeverityKind | null;
|
|
30
34
|
/*
|
|
@@ -109,6 +109,22 @@ enum EntityType {
|
|
|
109
109
|
* dependency cron and keyed by engine + namespace.
|
|
110
110
|
*/
|
|
111
111
|
DatabaseServer = "database.server",
|
|
112
|
+
/*
|
|
113
|
+
* A message QUEUE — a queue, topic, subscription or event hub (a
|
|
114
|
+
* "destination" in OpenTelemetry messaging terms) — the identity the
|
|
115
|
+
* Queues product (the MessageQueue table) scopes telemetry by.
|
|
116
|
+
* OneUptime-defined and MEMBERSHIP-ONLY, like DatabaseServer: ingest
|
|
117
|
+
* appends its key (`EntityKey.keyForMessageQueue`: `messaging.system` +
|
|
118
|
+
* the destination, plus the Azure namespace for Service Bus and Event
|
|
119
|
+
* Hubs) to the `entityKeys` of every messaging span and broker or
|
|
120
|
+
* messaging-client datapoint that resolves to a destination
|
|
121
|
+
* (Types/MessageQueue/MessagingTelemetryResolver). No resolver ever emits
|
|
122
|
+
* it, it is never promoted to an InventoryItem row, and so it has no
|
|
123
|
+
* prune TTL. Distinct from `RemoteService`, the node a messaging span's
|
|
124
|
+
* BROKER becomes on the service map (keyed by `messaging.system` +
|
|
125
|
+
* `server.address`, never by destination).
|
|
126
|
+
*/
|
|
127
|
+
MessageQueue = "message.queue",
|
|
112
128
|
/*
|
|
113
129
|
* Inventory-mirrored types. Unlike everything above, these are never
|
|
114
130
|
* derived from an OTLP resource — the estate they describe is collected
|
|
@@ -13,6 +13,19 @@
|
|
|
13
13
|
* the reason it cannot. Display-only: nothing here changes the query.
|
|
14
14
|
*/
|
|
15
15
|
|
|
16
|
+
/**
|
|
17
|
+
* One kind of thing a scope chip matches — "Endpoints" and every endpoint of
|
|
18
|
+
* a database, say. Telemetry from ANY listed value is in the scope.
|
|
19
|
+
*/
|
|
20
|
+
export interface LockedFilterScopeMatch {
|
|
21
|
+
/** What the values are, as the tooltip's heading: "Endpoints". */
|
|
22
|
+
label: string;
|
|
23
|
+
/** How telemetry reaches the scope through them, in one sentence. */
|
|
24
|
+
description?: string | undefined;
|
|
25
|
+
/** Each value's readable name, e.g. "db.prod.internal:5432". */
|
|
26
|
+
values: Array<string>;
|
|
27
|
+
}
|
|
28
|
+
|
|
16
29
|
export interface LockedFilterDetail {
|
|
17
30
|
/**
|
|
18
31
|
* Search-bar text that reproduces this filter on the explorer for the same
|
|
@@ -22,4 +35,13 @@ export interface LockedFilterDetail {
|
|
|
22
35
|
searchToken?: string | undefined;
|
|
23
36
|
/** Why `searchToken` is absent, when it is — shown in place of the syntax. */
|
|
24
37
|
searchTokenUnavailableReason?: string | undefined;
|
|
38
|
+
/**
|
|
39
|
+
* For ONE chip that stands for several filters at once — a database is its
|
|
40
|
+
* own id, each of its endpoints and each pod it runs as — what it matches,
|
|
41
|
+
* by kind. The tooltip lists them so the reader can see exactly what the
|
|
42
|
+
* page filters on without a chip per filter.
|
|
43
|
+
*/
|
|
44
|
+
scopeMatches?: Array<LockedFilterScopeMatch> | undefined;
|
|
45
|
+
/** The tooltip's opening line above `scopeMatches`. */
|
|
46
|
+
scopeSummary?: string | undefined;
|
|
25
47
|
}
|