@oneuptime/common 11.5.4 → 11.5.6
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/AIAgentTaskPullRequest.ts +56 -45
- package/Models/DatabaseModels/AIInsight.ts +748 -0
- package/Models/DatabaseModels/AIRun.ts +262 -0
- package/Models/DatabaseModels/CodeRepository.ts +42 -0
- package/Models/DatabaseModels/GlobalConfig.ts +105 -0
- package/Models/DatabaseModels/Index.ts +4 -8
- package/Models/DatabaseModels/InstanceHealthLog.ts +277 -0
- package/Models/DatabaseModels/LlmLog.ts +33 -0
- package/Models/DatabaseModels/Project.ts +123 -6
- package/Models/DatabaseModels/Runbook.ts +1 -1
- package/Models/DatabaseModels/User.ts +47 -0
- package/Server/API/AIAgentDataAPI.ts +802 -140
- package/Server/API/AIAgentTaskAPI.ts +132 -69
- package/Server/API/AIAgentTaskLogAPI.ts +65 -41
- package/Server/API/AIAgentTaskPullRequestAPI.ts +41 -0
- package/Server/API/AIInsightAPI.ts +220 -0
- package/Server/API/AIInvestigationAPI.ts +363 -1
- package/Server/API/CodeFixRunAPI.ts +251 -0
- package/Server/API/GitHubAPI.ts +246 -3
- package/Server/API/TelemetryExceptionAPI.ts +193 -48
- package/Server/EnvironmentConfig.ts +1 -1
- package/Server/Infrastructure/Postgres/SchemaMigrations/1783943300000-DropServiceCodeRepository.ts +26 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1783947444597-CodeFixRunsOnAIRun.ts +73 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1783950962813-AddCodeFixTaskType.ts +29 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1783954040984-AddInstrumentationFixTasksFlag.ts +31 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1783957160597-MigrationName.ts +51 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1783958542237-AddTaskContextToAIRun.ts +25 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1783965945957-AddInvestigationVerdictAndGrade.ts +47 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1783970619301-AddFixGuardrailColumns.ts +53 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1783970619302-DropLegacyAIAgentTaskTables.ts +31 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1783977781677-AddCiStatusToFixPullRequests.ts +37 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1783990000000-AddCompletionTokensToLlmLog.ts +25 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1784010274993-AddSentinelInsight.ts +75 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1784010274994-AddSentinelInsightFlags.ts +37 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1784030612266-RenameSentinelToAI.ts +203 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1784033837629-MigrationName.ts +163 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1784048917994-AddCreatedByUserToUser.ts +23 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +32 -0
- package/Server/Infrastructure/Queue.ts +82 -4
- package/Server/Infrastructure/Semaphore.ts +62 -1
- package/Server/Middleware/MasterAdminAuthorization.ts +37 -0
- package/Server/Middleware/ProjectAuthorization.ts +40 -15
- package/Server/Services/AIAgentService.ts +32 -0
- package/Server/Services/AIAgentTaskPullRequestService.ts +117 -0
- package/Server/Services/AIInsightService.ts +174 -0
- package/Server/Services/AIRunEventService.ts +63 -0
- package/Server/Services/AIRunService.ts +259 -1
- package/Server/Services/AIService.ts +249 -7
- package/Server/Services/AlertService.ts +4 -4
- package/Server/Services/CodeRepositoryService.ts +209 -0
- package/Server/Services/GlobalConfigService.ts +148 -0
- package/Server/Services/IncidentService.ts +183 -38
- package/Server/Services/IncidentStateTimelineService.ts +24 -4
- package/Server/Services/Index.ts +4 -4
- package/Server/Services/{AIAgentTaskLogService.ts → InstanceHealthLogService.ts} +1 -1
- package/Server/Services/LlmLogService.ts +27 -0
- package/Server/Services/LlmProviderService.ts +108 -0
- package/Server/Services/MetricBaselineService.ts +123 -0
- package/Server/Services/MonitorService.ts +15 -0
- package/Server/Services/TeamMemberService.ts +2 -0
- package/Server/Services/TelemetryExceptionService.ts +323 -116
- package/Server/Services/TraceAggregationService.ts +176 -0
- package/Server/Services/UserService.ts +10 -0
- package/Server/Types/Workflow/ComponentCode.ts +6 -0
- package/Server/Types/Workflow/Components/AI/GenerateText.ts +326 -0
- package/Server/Types/Workflow/Components/Index.ts +2 -0
- package/Server/Utils/AI/Chat/ObservabilityAssistant.ts +1 -1
- package/Server/Utils/AI/CodeFix/CodeAgentWorkspaceGuard.ts +71 -0
- package/Server/Utils/AI/CodeFix/CodeFixAgentCompletion.ts +243 -0
- package/Server/Utils/AI/CodeFix/CodeFixRunQueue.ts +131 -0
- package/Server/Utils/AI/CodeFix/FixRunBudget.ts +148 -0
- package/Server/Utils/AI/CodeFix/OpenPullRequestCap.ts +117 -0
- package/Server/Utils/AI/Eval/EvalCorpus.ts +369 -0
- package/Server/Utils/AI/Eval/EvalScores.ts +172 -0
- package/Server/Utils/AI/Eval/ReplayInvestigation.ts +87 -0
- package/Server/Utils/AI/PerfEvidence/SpanTreeAnalyzer.ts +676 -0
- package/Server/Utils/AI/{Sentinel/SentinelInvestigationEngine.ts → SRE/AIInvestigationEngine.ts} +58 -37
- package/Server/Utils/AI/{Sentinel/SentinelMemory.ts → SRE/AIMemory.ts} +3 -3
- package/Server/Utils/AI/{Sentinel → SRE}/AlertInvestigationRunner.ts +50 -20
- package/Server/Utils/AI/SRE/ConfidenceSignal.ts +293 -0
- package/Server/Utils/AI/SRE/FixFromIncidentTaskTrigger.ts +115 -0
- package/Server/Utils/AI/SRE/FixPerformanceTaskTrigger.ts +223 -0
- package/Server/Utils/AI/{Sentinel → SRE}/IncidentInvestigationRunner.ts +71 -21
- package/Server/Utils/AI/{Sentinel → SRE}/IncidentPostmortemRunner.ts +8 -8
- package/Server/Utils/AI/SRE/Insights/Detectors/ErrorLogSpikeDetector.ts +364 -0
- package/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.ts +317 -0
- package/Server/Utils/AI/SRE/Insights/Detectors/Index.ts +27 -0
- package/Server/Utils/AI/SRE/Insights/Detectors/MetricDriftDetector.ts +221 -0
- package/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.ts +238 -0
- package/Server/Utils/AI/SRE/Insights/Detectors/TraceLatencyRegressionDetector.ts +521 -0
- package/Server/Utils/AI/SRE/Insights/FixRouting.ts +242 -0
- package/Server/Utils/AI/SRE/Insights/InsightScanner.ts +290 -0
- package/Server/Utils/AI/SRE/Insights/InsightStore.ts +283 -0
- package/Server/Utils/AI/SRE/Insights/InsightTriageRunner.ts +242 -0
- package/Server/Utils/AI/SRE/Insights/Triage.ts +162 -0
- package/Server/Utils/AI/SRE/Insights/Types.ts +49 -0
- package/Server/Utils/AI/SRE/InstrumentationTaskTrigger.ts +212 -0
- package/Server/Utils/AI/SRE/InvestigationGrader.ts +282 -0
- package/Server/Utils/AI/{Sentinel → SRE}/InvestigationQueue.ts +114 -19
- package/Server/Utils/AI/{Sentinel → SRE}/README.md +4 -4
- package/Server/Utils/AI/SRE/SubjectCodeFixRun.ts +172 -0
- package/Server/Utils/AI/Toolbox/{SentinelActionTools.ts → AIActionTools.ts} +22 -1
- package/Server/Utils/AI/Toolbox/Index.ts +2 -2
- package/Server/Utils/AnalyticsDatabase/ClickhouseCapacity.ts +526 -0
- package/Server/Utils/CodeRepository/GitHub/GitHub.ts +319 -1
- package/Server/Utils/CodeRepository/ServiceRepoLinkSuggester.ts +221 -0
- package/Server/Utils/CodeRepository/StackTraceRepoResolver.ts +571 -0
- package/Server/Utils/Execute.ts +2 -1
- package/Server/Utils/LLM/LLMService.ts +160 -30
- package/Server/Utils/Monitor/Criteria/SqlMonitorCriteria.ts +152 -0
- package/Server/Utils/Monitor/MonitorCriteriaEvaluator.ts +29 -0
- package/Server/Utils/Monitor/MonitorCriteriaExpectationBuilder.ts +16 -6
- package/Server/Utils/Monitor/MonitorCriteriaMessageBuilder.ts +14 -0
- package/Server/Utils/Monitor/MonitorCriteriaMessageFormatter.ts +14 -3
- package/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.ts +130 -12
- package/Tests/Server/Infrastructure/Queue.test.ts +227 -0
- package/Tests/Server/Infrastructure/SemaphorePermit.test.ts +159 -0
- package/Tests/Server/Services/AIAgentTaskPullRequestOutcomeStats.test.ts +154 -0
- package/Tests/Server/Services/AIInsightService.test.ts +324 -0
- package/Tests/Server/Services/AIRunCodeFixClaim.test.ts +401 -0
- package/Tests/Server/Services/AIRunHumanVerdict.test.ts +161 -0
- package/Tests/Server/Services/AIServiceDailyBudget.test.ts +95 -5
- package/Tests/Server/Services/AIServiceProjectAccess.test.ts +259 -0
- package/Tests/Server/Services/FixFromIncidentTaskTrigger.test.ts +249 -0
- package/Tests/Server/Services/FixPerformanceTaskTrigger.test.ts +274 -0
- package/Tests/Server/Services/GlobalConfigService.test.ts +80 -0
- package/Tests/Server/Services/IncidentInternalNoteAnnouncement.test.ts +1 -1
- package/Tests/Server/Services/InstrumentationTaskTrigger.test.ts +313 -0
- package/Tests/Server/Services/LlmProviderProjectOwned.test.ts +132 -0
- package/Tests/Server/Services/TelemetryExceptionAIFixReadiness.test.ts +405 -0
- package/Tests/Server/Services/TelemetryExceptionCodeFixRun.test.ts +322 -0
- package/Tests/Server/Services/TraceServiceLatencyProfile.test.ts +278 -0
- package/Tests/Server/Types/Workflow/Components/AIGenerateText.test.ts +722 -0
- package/Tests/Server/Utils/AI/{SentinelAlertGating.test.ts → AIAlertGating.test.ts} +19 -19
- package/Tests/Server/Utils/AI/AIConfidenceSignal.test.ts +362 -0
- package/Tests/Server/Utils/AI/{SentinelInvestigationQueue.test.ts → AIInvestigationQueue.test.ts} +19 -19
- package/Tests/Server/Utils/AI/CodeAgentWorkspaceGuard.test.ts +138 -0
- package/Tests/Server/Utils/AI/CodeFixAgentCompletion.test.ts +335 -0
- package/Tests/Server/Utils/AI/CodeFixRunQueue.test.ts +134 -0
- package/Tests/Server/Utils/AI/EvalCorpus.test.ts +209 -0
- package/Tests/Server/Utils/AI/EvalScores.test.ts +343 -0
- package/Tests/Server/Utils/AI/FixRunBudget.test.ts +218 -0
- package/Tests/Server/Utils/AI/Insights/ErrorLogSpikeDetector.test.ts +437 -0
- package/Tests/Server/Utils/AI/Insights/ExceptionSpikeDetector.test.ts +287 -0
- package/Tests/Server/Utils/AI/Insights/InsightDetectorsIndex.test.ts +34 -0
- package/Tests/Server/Utils/AI/Insights/InsightFixRouting.test.ts +572 -0
- package/Tests/Server/Utils/AI/Insights/InsightNeverThrowsHardening.test.ts +344 -0
- package/Tests/Server/Utils/AI/Insights/InsightScanner.test.ts +720 -0
- package/Tests/Server/Utils/AI/Insights/InsightStore.test.ts +467 -0
- package/Tests/Server/Utils/AI/Insights/InsightStoreHardening.test.ts +370 -0
- package/Tests/Server/Utils/AI/Insights/InsightTriage.test.ts +210 -0
- package/Tests/Server/Utils/AI/Insights/InsightTriageRunner.test.ts +221 -0
- package/Tests/Server/Utils/AI/Insights/InvestigationQueueInsightSubject.test.ts +328 -0
- package/Tests/Server/Utils/AI/Insights/MetricBaselineDrift.test.ts +182 -0
- package/Tests/Server/Utils/AI/Insights/MetricDriftDetector.test.ts +280 -0
- package/Tests/Server/Utils/AI/Insights/NewExceptionDetector.test.ts +259 -0
- package/Tests/Server/Utils/AI/Insights/TraceLatencyRegressionDetector.test.ts +770 -0
- package/Tests/Server/Utils/AI/InvestigationGrader.test.ts +343 -0
- package/Tests/Server/Utils/AI/LLMServiceRequestPolicy.test.ts +307 -0
- package/Tests/Server/Utils/AI/OpenPullRequestCap.test.ts +170 -0
- package/Tests/Server/Utils/AI/SpanTreeAnalyzer.test.ts +559 -0
- package/Tests/Server/Utils/AnalyticsDatabase/ClickhouseCapacity.test.ts +158 -0
- package/Tests/Server/Utils/GitHubCheckRunsConclusion.test.ts +100 -0
- package/Tests/Server/Utils/GitHubPullRequestStateMapping.test.ts +50 -0
- package/Tests/Server/Utils/Monitor/Criteria/SqlMonitorCriteria.test.ts +266 -0
- package/Tests/Server/Utils/Monitor/MonitorCriteriaExpectationBuilderUnits.test.ts +553 -0
- package/Tests/Server/Utils/Monitor/MonitorCriteriaMessageBuilderUnits.test.ts +590 -0
- package/Tests/Server/Utils/Monitor/MonitorCriteriaMessageFormatterUnits.test.ts +254 -0
- package/Tests/Server/Utils/Monitor/MonitorCriteriaObservationBuilderUnits.test.ts +821 -0
- package/Tests/Server/Utils/ServiceRepoLinkSuggester.test.ts +167 -0
- package/Tests/Server/Utils/StackTraceRepoResolver.test.ts +527 -0
- package/Tests/Types/AI/AIChatPermissionMode.test.ts +112 -0
- package/Tests/Types/AI/CodeFixTaskType.test.ts +152 -0
- package/Tests/Types/AI/FixPullRequestCiStatus.test.ts +181 -0
- package/Tests/Types/Monitor/MonitorStepSqlMonitor.test.ts +110 -0
- package/Tests/Types/Monitor/SqlDatabaseType.test.ts +55 -0
- package/Tests/Types/Workflow/AIGenerateTextMetadata.test.ts +180 -0
- package/Tests/UI/Components/TableBulkCsvExport.test.tsx +168 -0
- package/Tests/UI/Utils/TableColumnsToCsv.test.ts +523 -0
- package/Types/AI/AIChatTypes.ts +8 -0
- package/Types/AI/AIInsightEvidence.ts +77 -0
- package/Types/AI/AIInsightHumanVerdict.ts +15 -0
- package/Types/AI/AIInsightSeverity.ts +13 -0
- package/Types/AI/AIInsightStatus.ts +38 -0
- package/Types/AI/AIInsightType.ts +41 -0
- package/Types/AI/AIRunAutoGrade.ts +18 -0
- package/Types/AI/AIRunEventType.ts +5 -0
- package/Types/AI/AIRunHumanVerdict.ts +17 -0
- package/Types/AI/AIRunType.ts +6 -0
- package/Types/AI/CodeFixTaskContext.ts +88 -0
- package/Types/AI/CodeFixTaskType.ts +132 -0
- package/Types/AI/FixPullRequestCiStatus.ts +132 -0
- package/Types/BaseDatabase/AggregationIntervalUtil.ts +67 -0
- package/Types/Incident/IncidentMetricType.ts +7 -0
- package/Types/Monitor/CriteriaFilter.ts +8 -0
- package/Types/Monitor/MonitorCriteriaInstance.ts +67 -0
- package/Types/Monitor/MonitorStep.ts +38 -0
- package/Types/Monitor/MonitorStepSqlMonitor.ts +141 -0
- package/Types/Monitor/MonitorType.ts +17 -0
- package/Types/Monitor/SqlDatabaseType.ts +49 -0
- package/Types/Monitor/SqlMonitor/SqlMonitorResponse.ts +28 -0
- package/Types/Permission.ts +11 -95
- package/Types/Probe/ProbeMonitorResponse.ts +2 -0
- package/Types/Runbook/RunbookStep.ts +26 -2
- package/Types/Runbook/RunbookStepType.ts +1 -0
- package/Types/Workflow/Component.ts +13 -0
- package/Types/Workflow/ComponentID.ts +1 -0
- package/Types/Workflow/Components/AI.ts +148 -0
- package/Types/Workflow/Components.ts +8 -0
- package/UI/Components/AI/GenerateFromAIModal.tsx +1 -1
- package/UI/Components/Markdown.tsx/MarkdownViewer.tsx +11 -0
- package/UI/Components/MoreMenu/MoreMenu.tsx +1 -1
- package/UI/Components/Table/Table.tsx +38 -2
- package/UI/Utils/TableColumnsToCsv.ts +385 -0
- package/Utils/Monitor/MonitorMetricType.ts +1 -0
- package/build/dist/Models/DatabaseModels/AIAgentTaskPullRequest.js +59 -45
- package/build/dist/Models/DatabaseModels/AIAgentTaskPullRequest.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AIInsight.js +795 -0
- package/build/dist/Models/DatabaseModels/AIInsight.js.map +1 -0
- package/build/dist/Models/DatabaseModels/AIRun.js +274 -0
- package/build/dist/Models/DatabaseModels/AIRun.js.map +1 -1
- package/build/dist/Models/DatabaseModels/CodeRepository.js +43 -0
- package/build/dist/Models/DatabaseModels/CodeRepository.js.map +1 -1
- package/build/dist/Models/DatabaseModels/GlobalConfig.js +110 -0
- package/build/dist/Models/DatabaseModels/GlobalConfig.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Index.js +4 -8
- package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
- package/build/dist/Models/DatabaseModels/InstanceHealthLog.js +304 -0
- package/build/dist/Models/DatabaseModels/InstanceHealthLog.js.map +1 -0
- package/build/dist/Models/DatabaseModels/LlmLog.js +35 -0
- package/build/dist/Models/DatabaseModels/LlmLog.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Project.js +127 -6
- package/build/dist/Models/DatabaseModels/Project.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Runbook.js +1 -1
- package/build/dist/Models/DatabaseModels/Runbook.js.map +1 -1
- package/build/dist/Models/DatabaseModels/User.js +46 -0
- package/build/dist/Models/DatabaseModels/User.js.map +1 -1
- package/build/dist/Server/API/AIAgentDataAPI.js +568 -85
- package/build/dist/Server/API/AIAgentDataAPI.js.map +1 -1
- package/build/dist/Server/API/AIAgentTaskAPI.js +100 -44
- package/build/dist/Server/API/AIAgentTaskAPI.js.map +1 -1
- package/build/dist/Server/API/AIAgentTaskLogAPI.js +49 -25
- package/build/dist/Server/API/AIAgentTaskLogAPI.js.map +1 -1
- package/build/dist/Server/API/AIAgentTaskPullRequestAPI.js +27 -0
- package/build/dist/Server/API/AIAgentTaskPullRequestAPI.js.map +1 -1
- package/build/dist/Server/API/AIInsightAPI.js +140 -0
- package/build/dist/Server/API/AIInsightAPI.js.map +1 -0
- package/build/dist/Server/API/AIInvestigationAPI.js +257 -1
- package/build/dist/Server/API/AIInvestigationAPI.js.map +1 -1
- package/build/dist/Server/API/CodeFixRunAPI.js +181 -0
- package/build/dist/Server/API/CodeFixRunAPI.js.map +1 -0
- package/build/dist/Server/API/GitHubAPI.js +164 -2
- package/build/dist/Server/API/GitHubAPI.js.map +1 -1
- package/build/dist/Server/API/TelemetryExceptionAPI.js +148 -43
- package/build/dist/Server/API/TelemetryExceptionAPI.js.map +1 -1
- package/build/dist/Server/EnvironmentConfig.js +1 -1
- package/build/dist/Server/EnvironmentConfig.js.map +1 -1
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783943300000-DropServiceCodeRepository.js +23 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783943300000-DropServiceCodeRepository.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783947444597-CodeFixRunsOnAIRun.js +32 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783947444597-CodeFixRunsOnAIRun.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783950962813-AddCodeFixTaskType.js +16 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783950962813-AddCodeFixTaskType.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783954040984-AddInstrumentationFixTasksFlag.js +16 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783954040984-AddInstrumentationFixTasksFlag.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783957160597-MigrationName.js +24 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783957160597-MigrationName.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783958542237-AddTaskContextToAIRun.js +16 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783958542237-AddTaskContextToAIRun.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783965945957-AddInvestigationVerdictAndGrade.js +24 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783965945957-AddInvestigationVerdictAndGrade.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783970619301-AddFixGuardrailColumns.js +24 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783970619301-AddFixGuardrailColumns.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783970619302-DropLegacyAIAgentTaskTables.js +24 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783970619302-DropLegacyAIAgentTaskTables.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783977781677-AddCiStatusToFixPullRequests.js +18 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783977781677-AddCiStatusToFixPullRequests.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783990000000-AddCompletionTokensToLlmLog.js +18 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783990000000-AddCompletionTokensToLlmLog.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784010274993-AddSentinelInsight.js +32 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784010274993-AddSentinelInsight.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784010274994-AddSentinelInsightFlags.js +18 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784010274994-AddSentinelInsightFlags.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784030612266-RenameSentinelToAI.js +125 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784030612266-RenameSentinelToAI.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784033837629-MigrationName.js +62 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784033837629-MigrationName.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784048917994-AddCreatedByUserToUser.js +18 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784048917994-AddCreatedByUserToUser.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +32 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
- package/build/dist/Server/Infrastructure/Queue.js +73 -3
- package/build/dist/Server/Infrastructure/Queue.js.map +1 -1
- package/build/dist/Server/Infrastructure/Semaphore.js +44 -1
- package/build/dist/Server/Infrastructure/Semaphore.js.map +1 -1
- package/build/dist/Server/Middleware/MasterAdminAuthorization.js +26 -0
- package/build/dist/Server/Middleware/MasterAdminAuthorization.js.map +1 -1
- package/build/dist/Server/Middleware/ProjectAuthorization.js +40 -14
- package/build/dist/Server/Middleware/ProjectAuthorization.js.map +1 -1
- package/build/dist/Server/Services/AIAgentService.js +29 -0
- package/build/dist/Server/Services/AIAgentService.js.map +1 -1
- package/build/dist/Server/Services/AIAgentTaskPullRequestService.js +78 -0
- package/build/dist/Server/Services/AIAgentTaskPullRequestService.js.map +1 -1
- package/build/dist/Server/Services/AIInsightService.js +164 -0
- package/build/dist/Server/Services/AIInsightService.js.map +1 -0
- package/build/dist/Server/Services/AIRunEventService.js +49 -0
- package/build/dist/Server/Services/AIRunEventService.js.map +1 -1
- package/build/dist/Server/Services/AIRunService.js +221 -0
- package/build/dist/Server/Services/AIRunService.js.map +1 -1
- package/build/dist/Server/Services/AIService.js +198 -11
- package/build/dist/Server/Services/AIService.js.map +1 -1
- package/build/dist/Server/Services/AlertService.js +4 -4
- package/build/dist/Server/Services/AlertService.js.map +1 -1
- package/build/dist/Server/Services/CodeRepositoryService.js +180 -0
- package/build/dist/Server/Services/CodeRepositoryService.js.map +1 -1
- package/build/dist/Server/Services/GlobalConfigService.js +84 -0
- package/build/dist/Server/Services/GlobalConfigService.js.map +1 -1
- package/build/dist/Server/Services/IncidentService.js +149 -37
- package/build/dist/Server/Services/IncidentService.js.map +1 -1
- package/build/dist/Server/Services/IncidentStateTimelineService.js +24 -4
- package/build/dist/Server/Services/IncidentStateTimelineService.js.map +1 -1
- package/build/dist/Server/Services/Index.js +4 -4
- package/build/dist/Server/Services/Index.js.map +1 -1
- package/build/dist/Server/Services/{AIAgentTaskLogService.js → InstanceHealthLogService.js} +2 -2
- package/build/dist/Server/Services/InstanceHealthLogService.js.map +1 -0
- package/build/dist/Server/Services/LlmLogService.js +23 -0
- package/build/dist/Server/Services/LlmLogService.js.map +1 -1
- package/build/dist/Server/Services/LlmProviderService.js +96 -0
- package/build/dist/Server/Services/LlmProviderService.js.map +1 -1
- package/build/dist/Server/Services/MetricBaselineService.js +65 -0
- package/build/dist/Server/Services/MetricBaselineService.js.map +1 -1
- package/build/dist/Server/Services/MonitorService.js +9 -1
- package/build/dist/Server/Services/MonitorService.js.map +1 -1
- package/build/dist/Server/Services/TeamMemberService.js +2 -0
- package/build/dist/Server/Services/TeamMemberService.js.map +1 -1
- package/build/dist/Server/Services/TelemetryExceptionService.js +243 -82
- package/build/dist/Server/Services/TelemetryExceptionService.js.map +1 -1
- package/build/dist/Server/Services/TraceAggregationService.js +124 -0
- package/build/dist/Server/Services/TraceAggregationService.js.map +1 -1
- package/build/dist/Server/Services/UserService.js +8 -0
- package/build/dist/Server/Services/UserService.js.map +1 -1
- package/build/dist/Server/Types/Workflow/ComponentCode.js.map +1 -1
- package/build/dist/Server/Types/Workflow/Components/AI/GenerateText.js +240 -0
- package/build/dist/Server/Types/Workflow/Components/AI/GenerateText.js.map +1 -0
- package/build/dist/Server/Types/Workflow/Components/Index.js +2 -0
- package/build/dist/Server/Types/Workflow/Components/Index.js.map +1 -1
- package/build/dist/Server/Utils/AI/CodeFix/CodeAgentWorkspaceGuard.js +48 -0
- package/build/dist/Server/Utils/AI/CodeFix/CodeAgentWorkspaceGuard.js.map +1 -0
- package/build/dist/Server/Utils/AI/CodeFix/CodeFixAgentCompletion.js +174 -0
- package/build/dist/Server/Utils/AI/CodeFix/CodeFixAgentCompletion.js.map +1 -0
- package/build/dist/Server/Utils/AI/CodeFix/CodeFixRunQueue.js +126 -0
- package/build/dist/Server/Utils/AI/CodeFix/CodeFixRunQueue.js.map +1 -0
- package/build/dist/Server/Utils/AI/CodeFix/FixRunBudget.js +131 -0
- package/build/dist/Server/Utils/AI/CodeFix/FixRunBudget.js.map +1 -0
- package/build/dist/Server/Utils/AI/CodeFix/OpenPullRequestCap.js +99 -0
- package/build/dist/Server/Utils/AI/CodeFix/OpenPullRequestCap.js.map +1 -0
- package/build/dist/Server/Utils/AI/Eval/EvalCorpus.js +245 -0
- package/build/dist/Server/Utils/AI/Eval/EvalCorpus.js.map +1 -0
- package/build/dist/Server/Utils/AI/Eval/EvalScores.js +83 -0
- package/build/dist/Server/Utils/AI/Eval/EvalScores.js.map +1 -0
- package/build/dist/Server/Utils/AI/Eval/ReplayInvestigation.js +12 -0
- package/build/dist/Server/Utils/AI/Eval/ReplayInvestigation.js.map +1 -0
- package/build/dist/Server/Utils/AI/PerfEvidence/SpanTreeAnalyzer.js +439 -0
- package/build/dist/Server/Utils/AI/PerfEvidence/SpanTreeAnalyzer.js.map +1 -0
- package/build/dist/Server/Utils/AI/{Sentinel/SentinelInvestigationEngine.js → SRE/AIInvestigationEngine.js} +47 -31
- package/build/dist/Server/Utils/AI/SRE/AIInvestigationEngine.js.map +1 -0
- package/build/dist/Server/Utils/AI/{Sentinel/SentinelMemory.js → SRE/AIMemory.js} +5 -5
- package/build/dist/Server/Utils/AI/SRE/AIMemory.js.map +1 -0
- package/build/dist/Server/Utils/AI/{Sentinel → SRE}/AlertInvestigationRunner.js +42 -19
- package/build/dist/Server/Utils/AI/SRE/AlertInvestigationRunner.js.map +1 -0
- package/build/dist/Server/Utils/AI/SRE/ConfidenceSignal.js +226 -0
- package/build/dist/Server/Utils/AI/SRE/ConfidenceSignal.js.map +1 -0
- package/build/dist/Server/Utils/AI/SRE/FixFromIncidentTaskTrigger.js +100 -0
- package/build/dist/Server/Utils/AI/SRE/FixFromIncidentTaskTrigger.js.map +1 -0
- package/build/dist/Server/Utils/AI/SRE/FixPerformanceTaskTrigger.js +174 -0
- package/build/dist/Server/Utils/AI/SRE/FixPerformanceTaskTrigger.js.map +1 -0
- package/build/dist/Server/Utils/AI/{Sentinel → SRE}/IncidentInvestigationRunner.js +60 -22
- package/build/dist/Server/Utils/AI/SRE/IncidentInvestigationRunner.js.map +1 -0
- package/build/dist/Server/Utils/AI/{Sentinel → SRE}/IncidentPostmortemRunner.js +9 -9
- package/build/dist/Server/Utils/AI/SRE/IncidentPostmortemRunner.js.map +1 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/ErrorLogSpikeDetector.js +268 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/ErrorLogSpikeDetector.js.map +1 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.js +226 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.js.map +1 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/Index.js +26 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/Index.js.map +1 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/MetricDriftDetector.js +159 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/MetricDriftDetector.js.map +1 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.js +177 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.js.map +1 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/TraceLatencyRegressionDetector.js +384 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/TraceLatencyRegressionDetector.js.map +1 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/FixRouting.js +180 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/FixRouting.js.map +1 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/InsightScanner.js +269 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/InsightScanner.js.map +1 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/InsightStore.js +231 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/InsightStore.js.map +1 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/InsightTriageRunner.js +206 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/InsightTriageRunner.js.map +1 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/Triage.js +121 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/Triage.js.map +1 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/Types.js +2 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/Types.js.map +1 -0
- package/build/dist/Server/Utils/AI/SRE/InstrumentationTaskTrigger.js +148 -0
- package/build/dist/Server/Utils/AI/SRE/InstrumentationTaskTrigger.js.map +1 -0
- package/build/dist/Server/Utils/AI/SRE/InvestigationGrader.js +231 -0
- package/build/dist/Server/Utils/AI/SRE/InvestigationGrader.js.map +1 -0
- package/build/dist/Server/Utils/AI/{Sentinel → SRE}/InvestigationQueue.js +102 -23
- package/build/dist/Server/Utils/AI/SRE/InvestigationQueue.js.map +1 -0
- package/build/dist/Server/Utils/AI/SRE/SubjectCodeFixRun.js +167 -0
- package/build/dist/Server/Utils/AI/SRE/SubjectCodeFixRun.js.map +1 -0
- package/build/dist/Server/Utils/AI/Toolbox/{SentinelActionTools.js → AIActionTools.js} +18 -2
- package/build/dist/Server/Utils/AI/Toolbox/AIActionTools.js.map +1 -0
- package/build/dist/Server/Utils/AI/Toolbox/Index.js +2 -2
- package/build/dist/Server/Utils/AI/Toolbox/Index.js.map +1 -1
- package/build/dist/Server/Utils/AnalyticsDatabase/ClickhouseCapacity.js +301 -0
- package/build/dist/Server/Utils/AnalyticsDatabase/ClickhouseCapacity.js.map +1 -0
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHub.js +240 -2
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHub.js.map +1 -1
- package/build/dist/Server/Utils/CodeRepository/ServiceRepoLinkSuggester.js +127 -0
- package/build/dist/Server/Utils/CodeRepository/ServiceRepoLinkSuggester.js.map +1 -0
- package/build/dist/Server/Utils/CodeRepository/StackTraceRepoResolver.js +336 -0
- package/build/dist/Server/Utils/CodeRepository/StackTraceRepoResolver.js.map +1 -0
- package/build/dist/Server/Utils/Execute.js.map +1 -1
- package/build/dist/Server/Utils/LLM/LLMService.js +125 -25
- package/build/dist/Server/Utils/LLM/LLMService.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/Criteria/SqlMonitorCriteria.js +120 -0
- package/build/dist/Server/Utils/Monitor/Criteria/SqlMonitorCriteria.js.map +1 -0
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js +21 -0
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaExpectationBuilder.js +15 -7
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaExpectationBuilder.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaMessageBuilder.js +12 -1
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaMessageBuilder.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaMessageFormatter.js +8 -3
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaMessageFormatter.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.js +96 -12
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.js.map +1 -1
- package/build/dist/Types/AI/AIInsightEvidence.js +2 -0
- package/build/dist/Types/AI/AIInsightEvidence.js.map +1 -0
- package/build/dist/Types/AI/AIInsightHumanVerdict.js +16 -0
- package/build/dist/Types/AI/AIInsightHumanVerdict.js.map +1 -0
- package/build/dist/Types/AI/AIInsightSeverity.js +14 -0
- package/build/dist/Types/AI/AIInsightSeverity.js.map +1 -0
- package/build/dist/Types/AI/AIInsightStatus.js +36 -0
- package/build/dist/Types/AI/AIInsightStatus.js.map +1 -0
- package/build/dist/Types/AI/AIInsightType.js +42 -0
- package/build/dist/Types/AI/AIInsightType.js.map +1 -0
- package/build/dist/Types/AI/AIRunAutoGrade.js +19 -0
- package/build/dist/Types/AI/AIRunAutoGrade.js.map +1 -0
- package/build/dist/Types/AI/AIRunEventType.js +5 -0
- package/build/dist/Types/AI/AIRunEventType.js.map +1 -1
- package/build/dist/Types/AI/AIRunHumanVerdict.js +18 -0
- package/build/dist/Types/AI/AIRunHumanVerdict.js.map +1 -0
- package/build/dist/Types/AI/AIRunType.js +6 -0
- package/build/dist/Types/AI/AIRunType.js.map +1 -1
- package/build/dist/Types/AI/CodeFixTaskContext.js +29 -0
- package/build/dist/Types/AI/CodeFixTaskContext.js.map +1 -0
- package/build/dist/Types/AI/CodeFixTaskType.js +122 -0
- package/build/dist/Types/AI/CodeFixTaskType.js.map +1 -0
- package/build/dist/Types/AI/FixPullRequestCiStatus.js +102 -0
- package/build/dist/Types/AI/FixPullRequestCiStatus.js.map +1 -0
- package/build/dist/Types/BaseDatabase/AggregationIntervalUtil.js +55 -0
- package/build/dist/Types/BaseDatabase/AggregationIntervalUtil.js.map +1 -1
- package/build/dist/Types/Incident/IncidentMetricType.js +7 -0
- package/build/dist/Types/Incident/IncidentMetricType.js.map +1 -1
- package/build/dist/Types/Monitor/CriteriaFilter.js +7 -0
- package/build/dist/Types/Monitor/CriteriaFilter.js.map +1 -1
- package/build/dist/Types/Monitor/MonitorCriteriaInstance.js +62 -0
- package/build/dist/Types/Monitor/MonitorCriteriaInstance.js.map +1 -1
- package/build/dist/Types/Monitor/MonitorStep.js +28 -0
- package/build/dist/Types/Monitor/MonitorStep.js.map +1 -1
- package/build/dist/Types/Monitor/MonitorStepSqlMonitor.js +93 -0
- package/build/dist/Types/Monitor/MonitorStepSqlMonitor.js.map +1 -0
- package/build/dist/Types/Monitor/MonitorType.js +15 -0
- package/build/dist/Types/Monitor/MonitorType.js.map +1 -1
- package/build/dist/Types/Monitor/SqlDatabaseType.js +47 -0
- package/build/dist/Types/Monitor/SqlDatabaseType.js.map +1 -0
- package/build/dist/Types/Monitor/SqlMonitor/SqlMonitorResponse.js +2 -0
- package/build/dist/Types/Monitor/SqlMonitor/SqlMonitorResponse.js.map +1 -0
- package/build/dist/Types/Permission.js +10 -84
- package/build/dist/Types/Permission.js.map +1 -1
- package/build/dist/Types/Runbook/RunbookStepType.js +1 -0
- package/build/dist/Types/Runbook/RunbookStepType.js.map +1 -1
- package/build/dist/Types/Workflow/ComponentID.js +1 -0
- package/build/dist/Types/Workflow/ComponentID.js.map +1 -1
- package/build/dist/Types/Workflow/Components/AI.js +135 -0
- package/build/dist/Types/Workflow/Components/AI.js.map +1 -0
- package/build/dist/Types/Workflow/Components.js +7 -0
- package/build/dist/Types/Workflow/Components.js.map +1 -1
- package/build/dist/UI/Components/AI/GenerateFromAIModal.js +1 -1
- package/build/dist/UI/Components/AI/GenerateFromAIModal.js.map +1 -1
- package/build/dist/UI/Components/Markdown.tsx/MarkdownViewer.js +9 -0
- package/build/dist/UI/Components/Markdown.tsx/MarkdownViewer.js.map +1 -1
- package/build/dist/UI/Components/MoreMenu/MoreMenu.js +1 -1
- package/build/dist/UI/Components/Table/Table.js +28 -2
- package/build/dist/UI/Components/Table/Table.js.map +1 -1
- package/build/dist/UI/Utils/TableColumnsToCsv.js +291 -0
- package/build/dist/UI/Utils/TableColumnsToCsv.js.map +1 -0
- package/build/dist/Utils/Monitor/MonitorMetricType.js +1 -0
- package/build/dist/Utils/Monitor/MonitorMetricType.js.map +1 -1
- package/package.json +1 -1
- package/Models/DatabaseModels/AIAgentTask.ts +0 -660
- package/Models/DatabaseModels/AIAgentTaskLog.ts +0 -426
- package/Models/DatabaseModels/AIAgentTaskTelemetryException.ts +0 -399
- package/Models/DatabaseModels/ServiceCodeRepository.ts +0 -647
- package/Server/Services/AIAgentTaskService.ts +0 -240
- package/Server/Services/AIAgentTaskTelemetryExceptionService.ts +0 -39
- package/Server/Services/ServiceCodeRepositoryService.ts +0 -55
- package/Tests/Server/Services/AIAgentTaskServiceClaim.test.ts +0 -146
- package/Types/AI/AIAgentTaskMetadata.ts +0 -25
- package/Types/AI/AIAgentTaskType.ts +0 -40
- package/build/dist/Models/DatabaseModels/AIAgentTask.js +0 -691
- package/build/dist/Models/DatabaseModels/AIAgentTask.js.map +0 -1
- package/build/dist/Models/DatabaseModels/AIAgentTaskLog.js +0 -447
- package/build/dist/Models/DatabaseModels/AIAgentTaskLog.js.map +0 -1
- package/build/dist/Models/DatabaseModels/AIAgentTaskTelemetryException.js +0 -415
- package/build/dist/Models/DatabaseModels/AIAgentTaskTelemetryException.js.map +0 -1
- package/build/dist/Models/DatabaseModels/ServiceCodeRepository.js +0 -665
- package/build/dist/Models/DatabaseModels/ServiceCodeRepository.js.map +0 -1
- package/build/dist/Server/Services/AIAgentTaskLogService.js.map +0 -1
- package/build/dist/Server/Services/AIAgentTaskService.js +0 -217
- package/build/dist/Server/Services/AIAgentTaskService.js.map +0 -1
- package/build/dist/Server/Services/AIAgentTaskTelemetryExceptionService.js +0 -36
- package/build/dist/Server/Services/AIAgentTaskTelemetryExceptionService.js.map +0 -1
- package/build/dist/Server/Services/ServiceCodeRepositoryService.js +0 -54
- package/build/dist/Server/Services/ServiceCodeRepositoryService.js.map +0 -1
- package/build/dist/Server/Utils/AI/Sentinel/AlertInvestigationRunner.js.map +0 -1
- package/build/dist/Server/Utils/AI/Sentinel/IncidentInvestigationRunner.js.map +0 -1
- package/build/dist/Server/Utils/AI/Sentinel/IncidentPostmortemRunner.js.map +0 -1
- package/build/dist/Server/Utils/AI/Sentinel/InvestigationQueue.js.map +0 -1
- package/build/dist/Server/Utils/AI/Sentinel/SentinelInvestigationEngine.js.map +0 -1
- package/build/dist/Server/Utils/AI/Sentinel/SentinelMemory.js.map +0 -1
- package/build/dist/Server/Utils/AI/Toolbox/SentinelActionTools.js.map +0 -1
- package/build/dist/Types/AI/AIAgentTaskMetadata.js +0 -6
- package/build/dist/Types/AI/AIAgentTaskMetadata.js.map +0 -1
- package/build/dist/Types/AI/AIAgentTaskType.js +0 -29
- package/build/dist/Types/AI/AIAgentTaskType.js.map +0 -1
|
@@ -16,19 +16,22 @@ import AIRunService from "../../../Services/AIRunService";
|
|
|
16
16
|
import AIRunEventService from "../../../Services/AIRunEventService";
|
|
17
17
|
import ProjectService from "../../../Services/ProjectService";
|
|
18
18
|
import LlmProviderService from "../../../Services/LlmProviderService";
|
|
19
|
-
import
|
|
19
|
+
import AIInvestigationQueue from "./InvestigationQueue";
|
|
20
|
+
import AIConfidenceSignal from "./ConfidenceSignal";
|
|
20
21
|
import ObservabilityAssistant from "../Chat/ObservabilityAssistant";
|
|
21
22
|
import logger from "../../Logger";
|
|
22
23
|
import CaptureSpan from "../../Telemetry/CaptureSpan";
|
|
23
24
|
/*
|
|
24
|
-
*
|
|
25
|
+
* AI SRE — the shared autonomous-investigation engine.
|
|
25
26
|
*
|
|
26
27
|
* A single subject-agnostic core that powers "wake on signal" investigations
|
|
27
28
|
* for both incidents and alerts (and, later, anomalies). It:
|
|
28
29
|
* 1. records the run as an AIRun(Investigation) + AIRunEvents (audit trail),
|
|
29
30
|
* 2. runs the existing read-only, tool-grounded, citation-minting agent loop
|
|
30
|
-
* (ObservabilityAssistant) with the
|
|
31
|
-
* 3. brands the cited analysis, judges confidence
|
|
31
|
+
* (ObservabilityAssistant) with the AI persona and a larger budget,
|
|
32
|
+
* 3. brands the cited analysis, judges confidence via the structured
|
|
33
|
+
* ConfidenceSignal (deterministic evidence floor + one constrained
|
|
34
|
+
* classification call — G6: no control flow from free-form prose), and
|
|
32
35
|
* 4. hands the finished analysis back to the caller to post to the subject's
|
|
33
36
|
* timeline.
|
|
34
37
|
*
|
|
@@ -40,12 +43,6 @@ const MAX_LLM_CALLS = 8;
|
|
|
40
43
|
const MAX_TOOL_CALLS = 12;
|
|
41
44
|
const MAX_WALL_CLOCK_MS = 150 * 1000;
|
|
42
45
|
const MAX_OUTPUT_TOKENS = 2000;
|
|
43
|
-
/*
|
|
44
|
-
* Sentinel's own contract: it writes exactly this phrase when it cannot
|
|
45
|
-
* determine a cause. We match it deterministically to drive "quiet mode" —
|
|
46
|
-
* a non-answer should never loudly page the on-call.
|
|
47
|
-
*/
|
|
48
|
-
const INCONCLUSIVE_RE = /inconclusive[^.\n]*insufficient signal/i;
|
|
49
46
|
/*
|
|
50
47
|
* Failures a retry cannot fix within the run's usefulness window: missing/
|
|
51
48
|
* broken provider configuration and budget exhaustion (both messages minted
|
|
@@ -60,7 +57,7 @@ const STEP_EVENT_TYPE = {
|
|
|
60
57
|
tool_completed: AIRunEventType.ToolCallCompleted,
|
|
61
58
|
tool_failed: AIRunEventType.ToolCallFailed,
|
|
62
59
|
};
|
|
63
|
-
const INVESTIGATION_PERSONA = `You are
|
|
60
|
+
const INVESTIGATION_PERSONA = `You are OneUptime AI, OneUptime's autonomous AI Site Reliability Engineer. You have been woken automatically because a NEW signal (an incident or alert) was just declared in this project — no human has asked you a question yet. Investigate it proactively and produce a first-pass root cause analysis that the on-call engineer will read the moment they are paged.
|
|
64
61
|
|
|
65
62
|
Investigate like a senior on-call engineer:
|
|
66
63
|
- Start from the affected monitors/services named in the signal.
|
|
@@ -70,12 +67,12 @@ Investigate like a senior on-call engineer:
|
|
|
70
67
|
|
|
71
68
|
Write your final answer as a concise incident-response note with exactly these sections (use these markdown headings):
|
|
72
69
|
**Summary** — one or two sentences a paged engineer can read in five seconds.
|
|
73
|
-
**Most likely root cause** — your hypothesis, with only the confidence the evidence actually supports, each factual claim carrying its [C#] citation. If you could not determine it,
|
|
70
|
+
**Most likely root cause** — your hypothesis, with only the confidence the evidence actually supports, each factual claim carrying its [C#] citation. If you could not determine it, say so plainly and explain what is missing.
|
|
74
71
|
**Evidence** — the key findings that support or rule out the hypothesis, each cited.
|
|
75
72
|
**Suggested next steps** — concrete actions for the on-call engineer.
|
|
76
73
|
|
|
77
74
|
Keep it tight and skimmable. You are read-only: never claim to have changed anything.`;
|
|
78
|
-
export default class
|
|
75
|
+
export default class AIInvestigationEngine {
|
|
79
76
|
/*
|
|
80
77
|
* Shared gate: AI enabled, the subject's auto-investigation opt-in on, and an
|
|
81
78
|
* LLM provider configured. Incidents and alerts each have their own opt-in so
|
|
@@ -106,14 +103,14 @@ export default class SentinelInvestigationEngine {
|
|
|
106
103
|
}
|
|
107
104
|
const llmProvider = await LlmProviderService.getLLMProviderForProject(projectId);
|
|
108
105
|
if (!llmProvider) {
|
|
109
|
-
logger.debug(`
|
|
106
|
+
logger.debug(`AI: skipping investigation for project ${projectId.toString()} — no LLM provider configured.`);
|
|
110
107
|
return false;
|
|
111
108
|
}
|
|
112
109
|
return true;
|
|
113
110
|
}
|
|
114
111
|
/*
|
|
115
112
|
* Execute an already-CLAIMED (Running) investigation run end-to-end.
|
|
116
|
-
* Called by
|
|
113
|
+
* Called by AIInvestigationQueue after a successful CAS claim —
|
|
117
114
|
* cap/budget gating and run creation live in the queue now. Never throws;
|
|
118
115
|
* failures are handed to the queue's retry policy (failOrRequeue).
|
|
119
116
|
*/
|
|
@@ -131,7 +128,7 @@ export default class SentinelInvestigationEngine {
|
|
|
131
128
|
})).toNumber();
|
|
132
129
|
}
|
|
133
130
|
catch (error) {
|
|
134
|
-
logger.error(`
|
|
131
|
+
logger.error(`AI: failed to read event count for run ${aiRunId.toString()}; starting sequence at 0: ${error}`);
|
|
135
132
|
}
|
|
136
133
|
await this.emitEvent({
|
|
137
134
|
projectId,
|
|
@@ -205,7 +202,7 @@ export default class SentinelInvestigationEngine {
|
|
|
205
202
|
},
|
|
206
203
|
});
|
|
207
204
|
if (completedCount === 0) {
|
|
208
|
-
logger.warn(`
|
|
205
|
+
logger.warn(`AI: run ${aiRunId.toString()} finished but was no longer Running (likely requeued as stale mid-flight); skipping postAnalysis to avoid a duplicate RCA.`);
|
|
209
206
|
return;
|
|
210
207
|
}
|
|
211
208
|
await this.emitEvent({
|
|
@@ -216,16 +213,35 @@ export default class SentinelInvestigationEngine {
|
|
|
216
213
|
});
|
|
217
214
|
const analysis = (result.contentInMarkdown || "").trim();
|
|
218
215
|
if (!analysis) {
|
|
219
|
-
logger.debug(`
|
|
216
|
+
logger.debug(`AI: investigation (run ${aiRunId.toString()}) produced no analysis; nothing posted.`);
|
|
220
217
|
return;
|
|
221
218
|
}
|
|
222
|
-
|
|
219
|
+
/*
|
|
220
|
+
* G6: judge confidence via the structured signal — the deterministic
|
|
221
|
+
* evidence floor over this run's own server-minted citations, then
|
|
222
|
+
* (only when the floor passes) one constrained classification call.
|
|
223
|
+
* Budget accounting: that call fires AFTER the agent loop finished, so
|
|
224
|
+
* it is deliberately OUTSIDE the per-run caps above (MAX_LLM_CALLS /
|
|
225
|
+
* MAX_OUTPUT_TOKENS govern the loop, whose counts were already
|
|
226
|
+
* persisted at the Completed transition). It is still metered in
|
|
227
|
+
* LlmLog under an AUTONOMOUS_AI_FEATURES feature, so the G4 daily
|
|
228
|
+
* autonomous budget covers it; a budget rejection degrades the signal
|
|
229
|
+
* to "classification-failed" — never a run failure. Running it after
|
|
230
|
+
* the WON Completed transition also means a falsely-requeued duplicate
|
|
231
|
+
* attempt can never double-spend it.
|
|
232
|
+
*/
|
|
233
|
+
const confidence = await AIConfidenceSignal.computeConfidenceSignal({
|
|
234
|
+
projectId,
|
|
235
|
+
aiRunId,
|
|
236
|
+
analysisMarkdown: analysis,
|
|
237
|
+
evidence: AIConfidenceSignal.evidenceFromCitations(result.citations || []),
|
|
238
|
+
});
|
|
223
239
|
await request.postAnalysis({
|
|
224
240
|
analysisMarkdown: this.buildBrandedMarkdown(result, analysis),
|
|
225
|
-
|
|
241
|
+
confidence,
|
|
226
242
|
result,
|
|
227
243
|
});
|
|
228
|
-
logger.debug(`
|
|
244
|
+
logger.debug(`AI: investigation complete (run ${aiRunId.toString()}, confident=${confidence.confident} via ${confidence.source}, ${result.llmCallCount} LLM calls, ${result.toolCallCount} tools, ${result.totalTokens} tokens).`);
|
|
229
245
|
}
|
|
230
246
|
catch (error) {
|
|
231
247
|
const message = error instanceof Error ? error.message : String(error);
|
|
@@ -245,18 +261,18 @@ export default class SentinelInvestigationEngine {
|
|
|
245
261
|
* Only configuration/budget gating — which a retry cannot change
|
|
246
262
|
* within the run's usefulness window — counts as permanent.
|
|
247
263
|
*/
|
|
248
|
-
await
|
|
264
|
+
await AIInvestigationQueue.failOrRequeue({
|
|
249
265
|
aiRunId,
|
|
250
266
|
attemptCount: data.attemptCount,
|
|
251
267
|
errorMessage: message,
|
|
252
268
|
isPermanent: PERMANENT_FAILURE_RE.test(message),
|
|
253
269
|
});
|
|
254
|
-
logger.error(`
|
|
270
|
+
logger.error(`AI: investigation attempt ${data.attemptCount} failed (run ${aiRunId.toString()}): ${message}`);
|
|
255
271
|
}
|
|
256
272
|
}
|
|
257
|
-
// Wrap the agent's analysis with
|
|
273
|
+
// Wrap the agent's analysis with AI branding + an evidence list.
|
|
258
274
|
static buildBrandedMarkdown(result, analysisMarkdown) {
|
|
259
|
-
let markdown = `## 🧠
|
|
275
|
+
let markdown = `## 🧠 AI — Automated Root Cause Analysis\n\n${analysisMarkdown}`;
|
|
260
276
|
const citations = result.citations || [];
|
|
261
277
|
if (citations.length > 0) {
|
|
262
278
|
markdown += `\n\n**Evidence checked**`;
|
|
@@ -264,7 +280,7 @@ export default class SentinelInvestigationEngine {
|
|
|
264
280
|
markdown += `\n- **[${citation.id}]** ${citation.label} — ${citation.rowCount} row(s)`;
|
|
265
281
|
}
|
|
266
282
|
}
|
|
267
|
-
markdown += `\n\n---\n*Investigated automatically by OneUptime
|
|
283
|
+
markdown += `\n\n---\n*Investigated automatically by OneUptime AI — read-only, ${result.toolCallCount} quer${result.toolCallCount === 1 ? "y" : "ies"} run across your own telemetry${result.modelName ? ` using ${result.modelName}` : ""}. This is an AI-generated first pass; verify before acting.*`;
|
|
268
284
|
return markdown;
|
|
269
285
|
}
|
|
270
286
|
// Refresh lastHeartbeatAt so a long-running investigation isn't swept as stale.
|
|
@@ -279,7 +295,7 @@ export default class SentinelInvestigationEngine {
|
|
|
279
295
|
});
|
|
280
296
|
}
|
|
281
297
|
catch (error) {
|
|
282
|
-
logger.error(`
|
|
298
|
+
logger.error(`AI: heartbeat update failed: ${error}`);
|
|
283
299
|
}
|
|
284
300
|
}
|
|
285
301
|
static async emitEvent(data) {
|
|
@@ -308,7 +324,7 @@ export default class SentinelInvestigationEngine {
|
|
|
308
324
|
}
|
|
309
325
|
catch (error) {
|
|
310
326
|
// Events are best-effort telemetry — never fail the run because of them.
|
|
311
|
-
logger.error(`
|
|
327
|
+
logger.error(`AI: failed to emit AIRunEvent: ${error}`);
|
|
312
328
|
}
|
|
313
329
|
}
|
|
314
330
|
}
|
|
@@ -317,11 +333,11 @@ __decorate([
|
|
|
317
333
|
__metadata("design:type", Function),
|
|
318
334
|
__metadata("design:paramtypes", [ObjectID, String]),
|
|
319
335
|
__metadata("design:returntype", Promise)
|
|
320
|
-
],
|
|
336
|
+
], AIInvestigationEngine, "isEnabledForProject", null);
|
|
321
337
|
__decorate([
|
|
322
338
|
CaptureSpan(),
|
|
323
339
|
__metadata("design:type", Function),
|
|
324
340
|
__metadata("design:paramtypes", [Object]),
|
|
325
341
|
__metadata("design:returntype", Promise)
|
|
326
|
-
],
|
|
327
|
-
//# sourceMappingURL=
|
|
342
|
+
], AIInvestigationEngine, "executeRun", null);
|
|
343
|
+
//# sourceMappingURL=AIInvestigationEngine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AIInvestigationEngine.js","sourceRoot":"","sources":["../../../../../../Server/Utils/AI/SRE/AIInvestigationEngine.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,7 +12,7 @@ import IncidentService from "../../../Services/IncidentService";
|
|
|
12
12
|
import CaptureSpan from "../../Telemetry/CaptureSpan";
|
|
13
13
|
import logger from "../../Logger";
|
|
14
14
|
/*
|
|
15
|
-
*
|
|
15
|
+
* AI SRE — episodic memory (Phase 4, "I've seen this before").
|
|
16
16
|
*
|
|
17
17
|
* The first, no-new-storage cut of the recurrence short-circuit: instead of a
|
|
18
18
|
* vector store, retrieve past RESOLVED incidents in the same project that share
|
|
@@ -30,7 +30,7 @@ const MAX_CASES = 4;
|
|
|
30
30
|
const MAX_ROOT_CAUSE_CHARS = 300;
|
|
31
31
|
const SHARED_MONITOR_SCORE = 2;
|
|
32
32
|
const SHARED_LABEL_SCORE = 1;
|
|
33
|
-
export default class
|
|
33
|
+
export default class AIMemory {
|
|
34
34
|
/*
|
|
35
35
|
* Returns a markdown "past resolved incidents" section to append to the
|
|
36
36
|
* investigation context, or an empty string when there is nothing useful.
|
|
@@ -129,7 +129,7 @@ export default class SentinelMemory {
|
|
|
129
129
|
return markdown;
|
|
130
130
|
}
|
|
131
131
|
catch (error) {
|
|
132
|
-
logger.error(`
|
|
132
|
+
logger.error(`AI: failed to load recurrence context: ${error}`);
|
|
133
133
|
return "";
|
|
134
134
|
}
|
|
135
135
|
}
|
|
@@ -139,5 +139,5 @@ __decorate([
|
|
|
139
139
|
__metadata("design:type", Function),
|
|
140
140
|
__metadata("design:paramtypes", [Object]),
|
|
141
141
|
__metadata("design:returntype", Promise)
|
|
142
|
-
],
|
|
143
|
-
//# sourceMappingURL=
|
|
142
|
+
], AIMemory, "getPriorSimilarIncidentsContext", null);
|
|
143
|
+
//# sourceMappingURL=AIMemory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AIMemory.js","sourceRoot":"","sources":["../../../../../../Server/Utils/AI/SRE/AIMemory.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,17 +19,20 @@ import AIRunService from "../../../Services/AIRunService";
|
|
|
19
19
|
import AlertFeedService from "../../../Services/AlertFeedService";
|
|
20
20
|
import QueryHelper from "../../../Types/Database/QueryHelper";
|
|
21
21
|
import AlertAIContextBuilder from "../AlertAIContextBuilder";
|
|
22
|
-
import
|
|
23
|
-
import
|
|
22
|
+
import { AI_ALERT_INVESTIGATION_FEATURE } from "../../../Services/AIService";
|
|
23
|
+
import AIInvestigationEngine from "./AIInvestigationEngine";
|
|
24
|
+
import AIInvestigationQueue from "./InvestigationQueue";
|
|
25
|
+
import AIConfidenceSignal from "./ConfidenceSignal";
|
|
26
|
+
import InstrumentationTaskTrigger from "./InstrumentationTaskTrigger";
|
|
24
27
|
import logger from "../../Logger";
|
|
25
28
|
import CaptureSpan from "../../Telemetry/CaptureSpan";
|
|
26
29
|
/*
|
|
27
|
-
*
|
|
30
|
+
* AI SRE — alert investigation.
|
|
28
31
|
*
|
|
29
32
|
* Alerts are the earlier, "left of boom" signal. When a new alert is declared,
|
|
30
|
-
*
|
|
33
|
+
* AI investigates it (read-only) and posts a cited root-cause analysis to
|
|
31
34
|
* the alert timeline + Slack/Teams. Symmetric to incident investigation and
|
|
32
|
-
* built on the same shared
|
|
35
|
+
* built on the same shared AIInvestigationEngine.
|
|
33
36
|
*
|
|
34
37
|
* Gated by the same per-project opt-in as incidents, PLUS alert-specific cost
|
|
35
38
|
* gates (alert volume can be far higher than incidents):
|
|
@@ -43,7 +46,7 @@ import CaptureSpan from "../../Telemetry/CaptureSpan";
|
|
|
43
46
|
export const DEFAULT_DEDUPE_WINDOW_MINUTES = 30;
|
|
44
47
|
// Clamp: an RCA older than a day is a new episode by any reading.
|
|
45
48
|
const MAX_DEDUPE_WINDOW_MINUTES = 24 * 60;
|
|
46
|
-
export default class
|
|
49
|
+
export default class AIAlertInvestigationRunner {
|
|
47
50
|
/*
|
|
48
51
|
* Entry point called (fire-and-forget) from AlertService.onCreateSuccess.
|
|
49
52
|
* Cheap: gates + a Queued AIRun row; execution happens via the queue.
|
|
@@ -52,7 +55,7 @@ export default class SentinelAlertInvestigationRunner {
|
|
|
52
55
|
static async investigateNewAlert(data) {
|
|
53
56
|
const { alertId, projectId } = data;
|
|
54
57
|
try {
|
|
55
|
-
if (!(await
|
|
58
|
+
if (!(await AIInvestigationEngine.isEnabledForProject(projectId, "Alert"))) {
|
|
56
59
|
return;
|
|
57
60
|
}
|
|
58
61
|
const gate = await this.shouldInvestigateAlert({
|
|
@@ -60,22 +63,22 @@ export default class SentinelAlertInvestigationRunner {
|
|
|
60
63
|
projectId,
|
|
61
64
|
});
|
|
62
65
|
if (!gate.investigate) {
|
|
63
|
-
logger.debug(`
|
|
66
|
+
logger.debug(`AI: skipping investigation for alert ${alertId.toString()} — ${gate.reason}.`);
|
|
64
67
|
return;
|
|
65
68
|
}
|
|
66
|
-
await
|
|
69
|
+
await AIInvestigationQueue.enqueue({
|
|
67
70
|
projectId,
|
|
68
71
|
subjectAlertId: alertId,
|
|
69
72
|
subjectMonitorId: gate.monitorId,
|
|
70
73
|
});
|
|
71
74
|
}
|
|
72
75
|
catch (error) {
|
|
73
|
-
logger.error(`
|
|
76
|
+
logger.error(`AI: unexpected error enqueueing investigation for alert ${alertId.toString()}: ${error}`);
|
|
74
77
|
}
|
|
75
78
|
}
|
|
76
79
|
/*
|
|
77
80
|
* Execute a claimed run: assemble alert context and hand it to the engine.
|
|
78
|
-
* Called by
|
|
81
|
+
* Called by AIInvestigationQueue after a successful claim. Never
|
|
79
82
|
* throws — failures are handed to the queue's retry policy so a claimed
|
|
80
83
|
* run is always finalized or requeued.
|
|
81
84
|
*/
|
|
@@ -93,7 +96,7 @@ export default class SentinelAlertInvestigationRunner {
|
|
|
93
96
|
* Context assembly failed — the run is claimed, so hand it to the
|
|
94
97
|
* retry policy rather than leaving it Running until the sweeper.
|
|
95
98
|
*/
|
|
96
|
-
await
|
|
99
|
+
await AIInvestigationQueue.failOrRequeue({
|
|
97
100
|
aiRunId,
|
|
98
101
|
attemptCount,
|
|
99
102
|
errorMessage: `Failed to build alert context: ${error instanceof Error ? error.message : String(error)}`,
|
|
@@ -101,12 +104,13 @@ export default class SentinelAlertInvestigationRunner {
|
|
|
101
104
|
});
|
|
102
105
|
return;
|
|
103
106
|
}
|
|
104
|
-
await
|
|
107
|
+
await AIInvestigationEngine.executeRun({
|
|
105
108
|
aiRunId,
|
|
106
109
|
projectId,
|
|
107
110
|
attemptCount,
|
|
108
111
|
request: {
|
|
109
|
-
|
|
112
|
+
// Persisted LlmLog label — owned by AIService (G4 budget list).
|
|
113
|
+
feature: AI_ALERT_INVESTIGATION_FEATURE,
|
|
110
114
|
contextSummary,
|
|
111
115
|
postAnalysis: async (postData) => {
|
|
112
116
|
await AlertFeedService.createAlertFeedItem({
|
|
@@ -117,12 +121,31 @@ export default class SentinelAlertInvestigationRunner {
|
|
|
117
121
|
feedInfoInMarkdown: postData.analysisMarkdown,
|
|
118
122
|
/*
|
|
119
123
|
* Quiet mode: an inconclusive investigation posts to the timeline
|
|
120
|
-
* but does NOT loudly ping the workspace / on-call.
|
|
124
|
+
* but does NOT loudly ping the workspace / on-call. Fail
|
|
125
|
+
* direction (G6): when the confidence classification itself
|
|
126
|
+
* failed, the ping SENDS — quiet mode fails louder, not silent.
|
|
121
127
|
*/
|
|
122
128
|
workspaceNotification: {
|
|
123
|
-
sendWorkspaceNotification: postData.
|
|
129
|
+
sendWorkspaceNotification: AIConfidenceSignal.shouldSendWorkspaceNotification(postData.confidence),
|
|
124
130
|
},
|
|
125
131
|
});
|
|
132
|
+
/*
|
|
133
|
+
* Inconclusive means the telemetry was insufficient — for
|
|
134
|
+
* opted-in projects (Project.enableInstrumentationFixTasks,
|
|
135
|
+
* default false), queue an ImproveInstrumentation fix task that
|
|
136
|
+
* opens a PR adding the missing observability. Runs strictly
|
|
137
|
+
* AFTER the analysis is posted, and the trigger never throws, so
|
|
138
|
+
* the investigation can neither be blocked nor failed by it.
|
|
139
|
+
* Fail direction (G6): only a POSITIVE inconclusive verdict
|
|
140
|
+
* (deterministic floor or classification) enqueues — a failed
|
|
141
|
+
* classification does NOT create a PR.
|
|
142
|
+
*/
|
|
143
|
+
if (AIConfidenceSignal.shouldEnqueueInstrumentationTask(postData.confidence)) {
|
|
144
|
+
await InstrumentationTaskTrigger.enqueueForInconclusiveInvestigation({
|
|
145
|
+
projectId,
|
|
146
|
+
alertId,
|
|
147
|
+
});
|
|
148
|
+
}
|
|
126
149
|
},
|
|
127
150
|
},
|
|
128
151
|
});
|
|
@@ -283,17 +306,17 @@ __decorate([
|
|
|
283
306
|
__metadata("design:type", Function),
|
|
284
307
|
__metadata("design:paramtypes", [Object]),
|
|
285
308
|
__metadata("design:returntype", Promise)
|
|
286
|
-
],
|
|
309
|
+
], AIAlertInvestigationRunner, "investigateNewAlert", null);
|
|
287
310
|
__decorate([
|
|
288
311
|
CaptureSpan(),
|
|
289
312
|
__metadata("design:type", Function),
|
|
290
313
|
__metadata("design:paramtypes", [Object]),
|
|
291
314
|
__metadata("design:returntype", Promise)
|
|
292
|
-
],
|
|
315
|
+
], AIAlertInvestigationRunner, "executeInvestigation", null);
|
|
293
316
|
__decorate([
|
|
294
317
|
CaptureSpan(),
|
|
295
318
|
__metadata("design:type", Function),
|
|
296
319
|
__metadata("design:paramtypes", [Object]),
|
|
297
320
|
__metadata("design:returntype", Promise)
|
|
298
|
-
],
|
|
321
|
+
], AIAlertInvestigationRunner, "shouldInvestigateAlert", null);
|
|
299
322
|
//# sourceMappingURL=AlertInvestigationRunner.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AlertInvestigationRunner.js","sourceRoot":"","sources":["../../../../../../Server/Utils/AI/SRE/AlertInvestigationRunner.ts"],"names":[],"mappings":"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"}
|