@oneuptime/common 11.5.4 → 11.5.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (505) hide show
  1. package/Models/DatabaseModels/AIAgentTaskPullRequest.ts +56 -45
  2. package/Models/DatabaseModels/AIInsight.ts +748 -0
  3. package/Models/DatabaseModels/AIRun.ts +262 -0
  4. package/Models/DatabaseModels/CodeRepository.ts +42 -0
  5. package/Models/DatabaseModels/GlobalConfig.ts +105 -0
  6. package/Models/DatabaseModels/Index.ts +4 -8
  7. package/Models/DatabaseModels/InstanceHealthLog.ts +277 -0
  8. package/Models/DatabaseModels/LlmLog.ts +33 -0
  9. package/Models/DatabaseModels/Project.ts +123 -6
  10. package/Models/DatabaseModels/Runbook.ts +1 -1
  11. package/Server/API/AIAgentDataAPI.ts +802 -140
  12. package/Server/API/AIAgentTaskAPI.ts +132 -69
  13. package/Server/API/AIAgentTaskLogAPI.ts +65 -41
  14. package/Server/API/AIAgentTaskPullRequestAPI.ts +41 -0
  15. package/Server/API/AIInsightAPI.ts +220 -0
  16. package/Server/API/AIInvestigationAPI.ts +363 -1
  17. package/Server/API/CodeFixRunAPI.ts +251 -0
  18. package/Server/API/GitHubAPI.ts +246 -3
  19. package/Server/API/TelemetryExceptionAPI.ts +193 -48
  20. package/Server/EnvironmentConfig.ts +1 -1
  21. package/Server/Infrastructure/Postgres/SchemaMigrations/1783943300000-DropServiceCodeRepository.ts +26 -0
  22. package/Server/Infrastructure/Postgres/SchemaMigrations/1783947444597-CodeFixRunsOnAIRun.ts +73 -0
  23. package/Server/Infrastructure/Postgres/SchemaMigrations/1783950962813-AddCodeFixTaskType.ts +29 -0
  24. package/Server/Infrastructure/Postgres/SchemaMigrations/1783954040984-AddInstrumentationFixTasksFlag.ts +31 -0
  25. package/Server/Infrastructure/Postgres/SchemaMigrations/1783957160597-MigrationName.ts +51 -0
  26. package/Server/Infrastructure/Postgres/SchemaMigrations/1783958542237-AddTaskContextToAIRun.ts +25 -0
  27. package/Server/Infrastructure/Postgres/SchemaMigrations/1783965945957-AddInvestigationVerdictAndGrade.ts +47 -0
  28. package/Server/Infrastructure/Postgres/SchemaMigrations/1783970619301-AddFixGuardrailColumns.ts +53 -0
  29. package/Server/Infrastructure/Postgres/SchemaMigrations/1783970619302-DropLegacyAIAgentTaskTables.ts +31 -0
  30. package/Server/Infrastructure/Postgres/SchemaMigrations/1783977781677-AddCiStatusToFixPullRequests.ts +37 -0
  31. package/Server/Infrastructure/Postgres/SchemaMigrations/1783990000000-AddCompletionTokensToLlmLog.ts +25 -0
  32. package/Server/Infrastructure/Postgres/SchemaMigrations/1784010274993-AddSentinelInsight.ts +75 -0
  33. package/Server/Infrastructure/Postgres/SchemaMigrations/1784010274994-AddSentinelInsightFlags.ts +37 -0
  34. package/Server/Infrastructure/Postgres/SchemaMigrations/1784030612266-RenameSentinelToAI.ts +203 -0
  35. package/Server/Infrastructure/Postgres/SchemaMigrations/1784033837629-MigrationName.ts +163 -0
  36. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +30 -0
  37. package/Server/Infrastructure/Queue.ts +82 -4
  38. package/Server/Infrastructure/Semaphore.ts +62 -1
  39. package/Server/Services/AIAgentService.ts +32 -0
  40. package/Server/Services/AIAgentTaskPullRequestService.ts +117 -0
  41. package/Server/Services/AIInsightService.ts +174 -0
  42. package/Server/Services/AIRunEventService.ts +63 -0
  43. package/Server/Services/AIRunService.ts +259 -1
  44. package/Server/Services/AIService.ts +249 -7
  45. package/Server/Services/AlertService.ts +4 -4
  46. package/Server/Services/CodeRepositoryService.ts +209 -0
  47. package/Server/Services/GlobalConfigService.ts +148 -0
  48. package/Server/Services/IncidentService.ts +183 -38
  49. package/Server/Services/IncidentStateTimelineService.ts +24 -4
  50. package/Server/Services/Index.ts +4 -4
  51. package/Server/Services/{AIAgentTaskLogService.ts → InstanceHealthLogService.ts} +1 -1
  52. package/Server/Services/LlmLogService.ts +27 -0
  53. package/Server/Services/LlmProviderService.ts +108 -0
  54. package/Server/Services/MetricBaselineService.ts +123 -0
  55. package/Server/Services/MonitorService.ts +15 -0
  56. package/Server/Services/TelemetryExceptionService.ts +323 -116
  57. package/Server/Services/TraceAggregationService.ts +176 -0
  58. package/Server/Types/Workflow/ComponentCode.ts +6 -0
  59. package/Server/Types/Workflow/Components/AI/GenerateText.ts +326 -0
  60. package/Server/Types/Workflow/Components/Index.ts +2 -0
  61. package/Server/Utils/AI/Chat/ObservabilityAssistant.ts +1 -1
  62. package/Server/Utils/AI/CodeFix/CodeAgentWorkspaceGuard.ts +71 -0
  63. package/Server/Utils/AI/CodeFix/CodeFixAgentCompletion.ts +243 -0
  64. package/Server/Utils/AI/CodeFix/CodeFixRunQueue.ts +131 -0
  65. package/Server/Utils/AI/CodeFix/FixRunBudget.ts +148 -0
  66. package/Server/Utils/AI/CodeFix/OpenPullRequestCap.ts +117 -0
  67. package/Server/Utils/AI/Eval/EvalCorpus.ts +369 -0
  68. package/Server/Utils/AI/Eval/EvalScores.ts +172 -0
  69. package/Server/Utils/AI/Eval/ReplayInvestigation.ts +87 -0
  70. package/Server/Utils/AI/PerfEvidence/SpanTreeAnalyzer.ts +676 -0
  71. package/Server/Utils/AI/{Sentinel/SentinelInvestigationEngine.ts → SRE/AIInvestigationEngine.ts} +58 -37
  72. package/Server/Utils/AI/{Sentinel/SentinelMemory.ts → SRE/AIMemory.ts} +3 -3
  73. package/Server/Utils/AI/{Sentinel → SRE}/AlertInvestigationRunner.ts +50 -20
  74. package/Server/Utils/AI/SRE/ConfidenceSignal.ts +293 -0
  75. package/Server/Utils/AI/SRE/FixFromIncidentTaskTrigger.ts +115 -0
  76. package/Server/Utils/AI/SRE/FixPerformanceTaskTrigger.ts +223 -0
  77. package/Server/Utils/AI/{Sentinel → SRE}/IncidentInvestigationRunner.ts +71 -21
  78. package/Server/Utils/AI/{Sentinel → SRE}/IncidentPostmortemRunner.ts +8 -8
  79. package/Server/Utils/AI/SRE/Insights/Detectors/ErrorLogSpikeDetector.ts +364 -0
  80. package/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.ts +317 -0
  81. package/Server/Utils/AI/SRE/Insights/Detectors/Index.ts +27 -0
  82. package/Server/Utils/AI/SRE/Insights/Detectors/MetricDriftDetector.ts +221 -0
  83. package/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.ts +238 -0
  84. package/Server/Utils/AI/SRE/Insights/Detectors/TraceLatencyRegressionDetector.ts +521 -0
  85. package/Server/Utils/AI/SRE/Insights/FixRouting.ts +242 -0
  86. package/Server/Utils/AI/SRE/Insights/InsightScanner.ts +290 -0
  87. package/Server/Utils/AI/SRE/Insights/InsightStore.ts +283 -0
  88. package/Server/Utils/AI/SRE/Insights/InsightTriageRunner.ts +242 -0
  89. package/Server/Utils/AI/SRE/Insights/Triage.ts +162 -0
  90. package/Server/Utils/AI/SRE/Insights/Types.ts +49 -0
  91. package/Server/Utils/AI/SRE/InstrumentationTaskTrigger.ts +212 -0
  92. package/Server/Utils/AI/SRE/InvestigationGrader.ts +282 -0
  93. package/Server/Utils/AI/{Sentinel → SRE}/InvestigationQueue.ts +114 -19
  94. package/Server/Utils/AI/{Sentinel → SRE}/README.md +4 -4
  95. package/Server/Utils/AI/SRE/SubjectCodeFixRun.ts +172 -0
  96. package/Server/Utils/AI/Toolbox/{SentinelActionTools.ts → AIActionTools.ts} +22 -1
  97. package/Server/Utils/AI/Toolbox/Index.ts +2 -2
  98. package/Server/Utils/AnalyticsDatabase/ClickhouseCapacity.ts +526 -0
  99. package/Server/Utils/CodeRepository/GitHub/GitHub.ts +319 -1
  100. package/Server/Utils/CodeRepository/ServiceRepoLinkSuggester.ts +221 -0
  101. package/Server/Utils/CodeRepository/StackTraceRepoResolver.ts +571 -0
  102. package/Server/Utils/Execute.ts +2 -1
  103. package/Server/Utils/LLM/LLMService.ts +160 -30
  104. package/Server/Utils/Monitor/Criteria/SqlMonitorCriteria.ts +152 -0
  105. package/Server/Utils/Monitor/MonitorCriteriaEvaluator.ts +29 -0
  106. package/Tests/Server/Infrastructure/Queue.test.ts +227 -0
  107. package/Tests/Server/Infrastructure/SemaphorePermit.test.ts +159 -0
  108. package/Tests/Server/Services/AIAgentTaskPullRequestOutcomeStats.test.ts +154 -0
  109. package/Tests/Server/Services/AIInsightService.test.ts +324 -0
  110. package/Tests/Server/Services/AIRunCodeFixClaim.test.ts +401 -0
  111. package/Tests/Server/Services/AIRunHumanVerdict.test.ts +161 -0
  112. package/Tests/Server/Services/AIServiceDailyBudget.test.ts +95 -5
  113. package/Tests/Server/Services/AIServiceProjectAccess.test.ts +259 -0
  114. package/Tests/Server/Services/FixFromIncidentTaskTrigger.test.ts +249 -0
  115. package/Tests/Server/Services/FixPerformanceTaskTrigger.test.ts +274 -0
  116. package/Tests/Server/Services/GlobalConfigService.test.ts +80 -0
  117. package/Tests/Server/Services/IncidentInternalNoteAnnouncement.test.ts +1 -1
  118. package/Tests/Server/Services/InstrumentationTaskTrigger.test.ts +313 -0
  119. package/Tests/Server/Services/LlmProviderProjectOwned.test.ts +132 -0
  120. package/Tests/Server/Services/TelemetryExceptionAIFixReadiness.test.ts +405 -0
  121. package/Tests/Server/Services/TelemetryExceptionCodeFixRun.test.ts +322 -0
  122. package/Tests/Server/Services/TraceServiceLatencyProfile.test.ts +278 -0
  123. package/Tests/Server/Types/Workflow/Components/AIGenerateText.test.ts +722 -0
  124. package/Tests/Server/Utils/AI/{SentinelAlertGating.test.ts → AIAlertGating.test.ts} +19 -19
  125. package/Tests/Server/Utils/AI/AIConfidenceSignal.test.ts +362 -0
  126. package/Tests/Server/Utils/AI/{SentinelInvestigationQueue.test.ts → AIInvestigationQueue.test.ts} +19 -19
  127. package/Tests/Server/Utils/AI/CodeAgentWorkspaceGuard.test.ts +138 -0
  128. package/Tests/Server/Utils/AI/CodeFixAgentCompletion.test.ts +335 -0
  129. package/Tests/Server/Utils/AI/CodeFixRunQueue.test.ts +134 -0
  130. package/Tests/Server/Utils/AI/EvalCorpus.test.ts +209 -0
  131. package/Tests/Server/Utils/AI/EvalScores.test.ts +343 -0
  132. package/Tests/Server/Utils/AI/FixRunBudget.test.ts +218 -0
  133. package/Tests/Server/Utils/AI/Insights/ErrorLogSpikeDetector.test.ts +437 -0
  134. package/Tests/Server/Utils/AI/Insights/ExceptionSpikeDetector.test.ts +287 -0
  135. package/Tests/Server/Utils/AI/Insights/InsightDetectorsIndex.test.ts +34 -0
  136. package/Tests/Server/Utils/AI/Insights/InsightFixRouting.test.ts +572 -0
  137. package/Tests/Server/Utils/AI/Insights/InsightNeverThrowsHardening.test.ts +344 -0
  138. package/Tests/Server/Utils/AI/Insights/InsightScanner.test.ts +720 -0
  139. package/Tests/Server/Utils/AI/Insights/InsightStore.test.ts +467 -0
  140. package/Tests/Server/Utils/AI/Insights/InsightStoreHardening.test.ts +370 -0
  141. package/Tests/Server/Utils/AI/Insights/InsightTriage.test.ts +210 -0
  142. package/Tests/Server/Utils/AI/Insights/InsightTriageRunner.test.ts +221 -0
  143. package/Tests/Server/Utils/AI/Insights/InvestigationQueueInsightSubject.test.ts +328 -0
  144. package/Tests/Server/Utils/AI/Insights/MetricBaselineDrift.test.ts +182 -0
  145. package/Tests/Server/Utils/AI/Insights/MetricDriftDetector.test.ts +280 -0
  146. package/Tests/Server/Utils/AI/Insights/NewExceptionDetector.test.ts +259 -0
  147. package/Tests/Server/Utils/AI/Insights/TraceLatencyRegressionDetector.test.ts +770 -0
  148. package/Tests/Server/Utils/AI/InvestigationGrader.test.ts +343 -0
  149. package/Tests/Server/Utils/AI/LLMServiceRequestPolicy.test.ts +307 -0
  150. package/Tests/Server/Utils/AI/OpenPullRequestCap.test.ts +170 -0
  151. package/Tests/Server/Utils/AI/SpanTreeAnalyzer.test.ts +559 -0
  152. package/Tests/Server/Utils/AnalyticsDatabase/ClickhouseCapacity.test.ts +158 -0
  153. package/Tests/Server/Utils/GitHubCheckRunsConclusion.test.ts +100 -0
  154. package/Tests/Server/Utils/GitHubPullRequestStateMapping.test.ts +50 -0
  155. package/Tests/Server/Utils/Monitor/Criteria/SqlMonitorCriteria.test.ts +266 -0
  156. package/Tests/Server/Utils/ServiceRepoLinkSuggester.test.ts +167 -0
  157. package/Tests/Server/Utils/StackTraceRepoResolver.test.ts +527 -0
  158. package/Tests/Types/AI/AIChatPermissionMode.test.ts +112 -0
  159. package/Tests/Types/AI/CodeFixTaskType.test.ts +152 -0
  160. package/Tests/Types/AI/FixPullRequestCiStatus.test.ts +181 -0
  161. package/Tests/Types/Monitor/MonitorStepSqlMonitor.test.ts +110 -0
  162. package/Tests/Types/Monitor/SqlDatabaseType.test.ts +55 -0
  163. package/Tests/Types/Workflow/AIGenerateTextMetadata.test.ts +180 -0
  164. package/Tests/UI/Components/TableBulkCsvExport.test.tsx +168 -0
  165. package/Tests/UI/Utils/TableColumnsToCsv.test.ts +523 -0
  166. package/Types/AI/AIChatTypes.ts +8 -0
  167. package/Types/AI/AIInsightEvidence.ts +77 -0
  168. package/Types/AI/AIInsightHumanVerdict.ts +15 -0
  169. package/Types/AI/AIInsightSeverity.ts +13 -0
  170. package/Types/AI/AIInsightStatus.ts +38 -0
  171. package/Types/AI/AIInsightType.ts +41 -0
  172. package/Types/AI/AIRunAutoGrade.ts +18 -0
  173. package/Types/AI/AIRunEventType.ts +5 -0
  174. package/Types/AI/AIRunHumanVerdict.ts +17 -0
  175. package/Types/AI/AIRunType.ts +6 -0
  176. package/Types/AI/CodeFixTaskContext.ts +88 -0
  177. package/Types/AI/CodeFixTaskType.ts +132 -0
  178. package/Types/AI/FixPullRequestCiStatus.ts +132 -0
  179. package/Types/BaseDatabase/AggregationIntervalUtil.ts +67 -0
  180. package/Types/Incident/IncidentMetricType.ts +7 -0
  181. package/Types/Monitor/CriteriaFilter.ts +8 -0
  182. package/Types/Monitor/MonitorCriteriaInstance.ts +67 -0
  183. package/Types/Monitor/MonitorStep.ts +38 -0
  184. package/Types/Monitor/MonitorStepSqlMonitor.ts +141 -0
  185. package/Types/Monitor/MonitorType.ts +17 -0
  186. package/Types/Monitor/SqlDatabaseType.ts +49 -0
  187. package/Types/Monitor/SqlMonitor/SqlMonitorResponse.ts +28 -0
  188. package/Types/Permission.ts +11 -95
  189. package/Types/Probe/ProbeMonitorResponse.ts +2 -0
  190. package/Types/Runbook/RunbookStep.ts +26 -2
  191. package/Types/Runbook/RunbookStepType.ts +1 -0
  192. package/Types/Workflow/Component.ts +13 -0
  193. package/Types/Workflow/ComponentID.ts +1 -0
  194. package/Types/Workflow/Components/AI.ts +148 -0
  195. package/Types/Workflow/Components.ts +8 -0
  196. package/UI/Components/AI/GenerateFromAIModal.tsx +1 -1
  197. package/UI/Components/Markdown.tsx/MarkdownViewer.tsx +11 -0
  198. package/UI/Components/MoreMenu/MoreMenu.tsx +1 -1
  199. package/UI/Components/Table/Table.tsx +38 -2
  200. package/UI/Utils/TableColumnsToCsv.ts +385 -0
  201. package/Utils/Monitor/MonitorMetricType.ts +1 -0
  202. package/build/dist/Models/DatabaseModels/AIAgentTaskPullRequest.js +59 -45
  203. package/build/dist/Models/DatabaseModels/AIAgentTaskPullRequest.js.map +1 -1
  204. package/build/dist/Models/DatabaseModels/AIInsight.js +795 -0
  205. package/build/dist/Models/DatabaseModels/AIInsight.js.map +1 -0
  206. package/build/dist/Models/DatabaseModels/AIRun.js +274 -0
  207. package/build/dist/Models/DatabaseModels/AIRun.js.map +1 -1
  208. package/build/dist/Models/DatabaseModels/CodeRepository.js +43 -0
  209. package/build/dist/Models/DatabaseModels/CodeRepository.js.map +1 -1
  210. package/build/dist/Models/DatabaseModels/GlobalConfig.js +110 -0
  211. package/build/dist/Models/DatabaseModels/GlobalConfig.js.map +1 -1
  212. package/build/dist/Models/DatabaseModels/Index.js +4 -8
  213. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  214. package/build/dist/Models/DatabaseModels/InstanceHealthLog.js +304 -0
  215. package/build/dist/Models/DatabaseModels/InstanceHealthLog.js.map +1 -0
  216. package/build/dist/Models/DatabaseModels/LlmLog.js +35 -0
  217. package/build/dist/Models/DatabaseModels/LlmLog.js.map +1 -1
  218. package/build/dist/Models/DatabaseModels/Project.js +127 -6
  219. package/build/dist/Models/DatabaseModels/Project.js.map +1 -1
  220. package/build/dist/Models/DatabaseModels/Runbook.js +1 -1
  221. package/build/dist/Models/DatabaseModels/Runbook.js.map +1 -1
  222. package/build/dist/Server/API/AIAgentDataAPI.js +568 -85
  223. package/build/dist/Server/API/AIAgentDataAPI.js.map +1 -1
  224. package/build/dist/Server/API/AIAgentTaskAPI.js +100 -44
  225. package/build/dist/Server/API/AIAgentTaskAPI.js.map +1 -1
  226. package/build/dist/Server/API/AIAgentTaskLogAPI.js +49 -25
  227. package/build/dist/Server/API/AIAgentTaskLogAPI.js.map +1 -1
  228. package/build/dist/Server/API/AIAgentTaskPullRequestAPI.js +27 -0
  229. package/build/dist/Server/API/AIAgentTaskPullRequestAPI.js.map +1 -1
  230. package/build/dist/Server/API/AIInsightAPI.js +140 -0
  231. package/build/dist/Server/API/AIInsightAPI.js.map +1 -0
  232. package/build/dist/Server/API/AIInvestigationAPI.js +257 -1
  233. package/build/dist/Server/API/AIInvestigationAPI.js.map +1 -1
  234. package/build/dist/Server/API/CodeFixRunAPI.js +181 -0
  235. package/build/dist/Server/API/CodeFixRunAPI.js.map +1 -0
  236. package/build/dist/Server/API/GitHubAPI.js +164 -2
  237. package/build/dist/Server/API/GitHubAPI.js.map +1 -1
  238. package/build/dist/Server/API/TelemetryExceptionAPI.js +148 -43
  239. package/build/dist/Server/API/TelemetryExceptionAPI.js.map +1 -1
  240. package/build/dist/Server/EnvironmentConfig.js +1 -1
  241. package/build/dist/Server/EnvironmentConfig.js.map +1 -1
  242. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783943300000-DropServiceCodeRepository.js +23 -0
  243. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783943300000-DropServiceCodeRepository.js.map +1 -0
  244. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783947444597-CodeFixRunsOnAIRun.js +32 -0
  245. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783947444597-CodeFixRunsOnAIRun.js.map +1 -0
  246. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783950962813-AddCodeFixTaskType.js +16 -0
  247. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783950962813-AddCodeFixTaskType.js.map +1 -0
  248. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783954040984-AddInstrumentationFixTasksFlag.js +16 -0
  249. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783954040984-AddInstrumentationFixTasksFlag.js.map +1 -0
  250. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783957160597-MigrationName.js +24 -0
  251. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783957160597-MigrationName.js.map +1 -0
  252. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783958542237-AddTaskContextToAIRun.js +16 -0
  253. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783958542237-AddTaskContextToAIRun.js.map +1 -0
  254. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783965945957-AddInvestigationVerdictAndGrade.js +24 -0
  255. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783965945957-AddInvestigationVerdictAndGrade.js.map +1 -0
  256. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783970619301-AddFixGuardrailColumns.js +24 -0
  257. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783970619301-AddFixGuardrailColumns.js.map +1 -0
  258. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783970619302-DropLegacyAIAgentTaskTables.js +24 -0
  259. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783970619302-DropLegacyAIAgentTaskTables.js.map +1 -0
  260. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783977781677-AddCiStatusToFixPullRequests.js +18 -0
  261. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783977781677-AddCiStatusToFixPullRequests.js.map +1 -0
  262. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783990000000-AddCompletionTokensToLlmLog.js +18 -0
  263. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783990000000-AddCompletionTokensToLlmLog.js.map +1 -0
  264. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784010274993-AddSentinelInsight.js +32 -0
  265. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784010274993-AddSentinelInsight.js.map +1 -0
  266. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784010274994-AddSentinelInsightFlags.js +18 -0
  267. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784010274994-AddSentinelInsightFlags.js.map +1 -0
  268. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784030612266-RenameSentinelToAI.js +125 -0
  269. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784030612266-RenameSentinelToAI.js.map +1 -0
  270. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784033837629-MigrationName.js +62 -0
  271. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784033837629-MigrationName.js.map +1 -0
  272. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +30 -0
  273. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  274. package/build/dist/Server/Infrastructure/Queue.js +73 -3
  275. package/build/dist/Server/Infrastructure/Queue.js.map +1 -1
  276. package/build/dist/Server/Infrastructure/Semaphore.js +44 -1
  277. package/build/dist/Server/Infrastructure/Semaphore.js.map +1 -1
  278. package/build/dist/Server/Services/AIAgentService.js +29 -0
  279. package/build/dist/Server/Services/AIAgentService.js.map +1 -1
  280. package/build/dist/Server/Services/AIAgentTaskPullRequestService.js +78 -0
  281. package/build/dist/Server/Services/AIAgentTaskPullRequestService.js.map +1 -1
  282. package/build/dist/Server/Services/AIInsightService.js +164 -0
  283. package/build/dist/Server/Services/AIInsightService.js.map +1 -0
  284. package/build/dist/Server/Services/AIRunEventService.js +49 -0
  285. package/build/dist/Server/Services/AIRunEventService.js.map +1 -1
  286. package/build/dist/Server/Services/AIRunService.js +221 -0
  287. package/build/dist/Server/Services/AIRunService.js.map +1 -1
  288. package/build/dist/Server/Services/AIService.js +198 -11
  289. package/build/dist/Server/Services/AIService.js.map +1 -1
  290. package/build/dist/Server/Services/AlertService.js +4 -4
  291. package/build/dist/Server/Services/AlertService.js.map +1 -1
  292. package/build/dist/Server/Services/CodeRepositoryService.js +180 -0
  293. package/build/dist/Server/Services/CodeRepositoryService.js.map +1 -1
  294. package/build/dist/Server/Services/GlobalConfigService.js +84 -0
  295. package/build/dist/Server/Services/GlobalConfigService.js.map +1 -1
  296. package/build/dist/Server/Services/IncidentService.js +149 -37
  297. package/build/dist/Server/Services/IncidentService.js.map +1 -1
  298. package/build/dist/Server/Services/IncidentStateTimelineService.js +24 -4
  299. package/build/dist/Server/Services/IncidentStateTimelineService.js.map +1 -1
  300. package/build/dist/Server/Services/Index.js +4 -4
  301. package/build/dist/Server/Services/Index.js.map +1 -1
  302. package/build/dist/Server/Services/{AIAgentTaskLogService.js → InstanceHealthLogService.js} +2 -2
  303. package/build/dist/Server/Services/InstanceHealthLogService.js.map +1 -0
  304. package/build/dist/Server/Services/LlmLogService.js +23 -0
  305. package/build/dist/Server/Services/LlmLogService.js.map +1 -1
  306. package/build/dist/Server/Services/LlmProviderService.js +96 -0
  307. package/build/dist/Server/Services/LlmProviderService.js.map +1 -1
  308. package/build/dist/Server/Services/MetricBaselineService.js +65 -0
  309. package/build/dist/Server/Services/MetricBaselineService.js.map +1 -1
  310. package/build/dist/Server/Services/MonitorService.js +9 -1
  311. package/build/dist/Server/Services/MonitorService.js.map +1 -1
  312. package/build/dist/Server/Services/TelemetryExceptionService.js +243 -82
  313. package/build/dist/Server/Services/TelemetryExceptionService.js.map +1 -1
  314. package/build/dist/Server/Services/TraceAggregationService.js +124 -0
  315. package/build/dist/Server/Services/TraceAggregationService.js.map +1 -1
  316. package/build/dist/Server/Types/Workflow/ComponentCode.js.map +1 -1
  317. package/build/dist/Server/Types/Workflow/Components/AI/GenerateText.js +240 -0
  318. package/build/dist/Server/Types/Workflow/Components/AI/GenerateText.js.map +1 -0
  319. package/build/dist/Server/Types/Workflow/Components/Index.js +2 -0
  320. package/build/dist/Server/Types/Workflow/Components/Index.js.map +1 -1
  321. package/build/dist/Server/Utils/AI/CodeFix/CodeAgentWorkspaceGuard.js +48 -0
  322. package/build/dist/Server/Utils/AI/CodeFix/CodeAgentWorkspaceGuard.js.map +1 -0
  323. package/build/dist/Server/Utils/AI/CodeFix/CodeFixAgentCompletion.js +174 -0
  324. package/build/dist/Server/Utils/AI/CodeFix/CodeFixAgentCompletion.js.map +1 -0
  325. package/build/dist/Server/Utils/AI/CodeFix/CodeFixRunQueue.js +126 -0
  326. package/build/dist/Server/Utils/AI/CodeFix/CodeFixRunQueue.js.map +1 -0
  327. package/build/dist/Server/Utils/AI/CodeFix/FixRunBudget.js +131 -0
  328. package/build/dist/Server/Utils/AI/CodeFix/FixRunBudget.js.map +1 -0
  329. package/build/dist/Server/Utils/AI/CodeFix/OpenPullRequestCap.js +99 -0
  330. package/build/dist/Server/Utils/AI/CodeFix/OpenPullRequestCap.js.map +1 -0
  331. package/build/dist/Server/Utils/AI/Eval/EvalCorpus.js +245 -0
  332. package/build/dist/Server/Utils/AI/Eval/EvalCorpus.js.map +1 -0
  333. package/build/dist/Server/Utils/AI/Eval/EvalScores.js +83 -0
  334. package/build/dist/Server/Utils/AI/Eval/EvalScores.js.map +1 -0
  335. package/build/dist/Server/Utils/AI/Eval/ReplayInvestigation.js +12 -0
  336. package/build/dist/Server/Utils/AI/Eval/ReplayInvestigation.js.map +1 -0
  337. package/build/dist/Server/Utils/AI/PerfEvidence/SpanTreeAnalyzer.js +439 -0
  338. package/build/dist/Server/Utils/AI/PerfEvidence/SpanTreeAnalyzer.js.map +1 -0
  339. package/build/dist/Server/Utils/AI/{Sentinel/SentinelInvestigationEngine.js → SRE/AIInvestigationEngine.js} +47 -31
  340. package/build/dist/Server/Utils/AI/SRE/AIInvestigationEngine.js.map +1 -0
  341. package/build/dist/Server/Utils/AI/{Sentinel/SentinelMemory.js → SRE/AIMemory.js} +5 -5
  342. package/build/dist/Server/Utils/AI/SRE/AIMemory.js.map +1 -0
  343. package/build/dist/Server/Utils/AI/{Sentinel → SRE}/AlertInvestigationRunner.js +42 -19
  344. package/build/dist/Server/Utils/AI/SRE/AlertInvestigationRunner.js.map +1 -0
  345. package/build/dist/Server/Utils/AI/SRE/ConfidenceSignal.js +226 -0
  346. package/build/dist/Server/Utils/AI/SRE/ConfidenceSignal.js.map +1 -0
  347. package/build/dist/Server/Utils/AI/SRE/FixFromIncidentTaskTrigger.js +100 -0
  348. package/build/dist/Server/Utils/AI/SRE/FixFromIncidentTaskTrigger.js.map +1 -0
  349. package/build/dist/Server/Utils/AI/SRE/FixPerformanceTaskTrigger.js +174 -0
  350. package/build/dist/Server/Utils/AI/SRE/FixPerformanceTaskTrigger.js.map +1 -0
  351. package/build/dist/Server/Utils/AI/{Sentinel → SRE}/IncidentInvestigationRunner.js +60 -22
  352. package/build/dist/Server/Utils/AI/SRE/IncidentInvestigationRunner.js.map +1 -0
  353. package/build/dist/Server/Utils/AI/{Sentinel → SRE}/IncidentPostmortemRunner.js +9 -9
  354. package/build/dist/Server/Utils/AI/SRE/IncidentPostmortemRunner.js.map +1 -0
  355. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/ErrorLogSpikeDetector.js +268 -0
  356. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/ErrorLogSpikeDetector.js.map +1 -0
  357. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.js +226 -0
  358. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.js.map +1 -0
  359. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/Index.js +26 -0
  360. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/Index.js.map +1 -0
  361. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/MetricDriftDetector.js +159 -0
  362. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/MetricDriftDetector.js.map +1 -0
  363. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.js +177 -0
  364. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.js.map +1 -0
  365. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/TraceLatencyRegressionDetector.js +384 -0
  366. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/TraceLatencyRegressionDetector.js.map +1 -0
  367. package/build/dist/Server/Utils/AI/SRE/Insights/FixRouting.js +180 -0
  368. package/build/dist/Server/Utils/AI/SRE/Insights/FixRouting.js.map +1 -0
  369. package/build/dist/Server/Utils/AI/SRE/Insights/InsightScanner.js +269 -0
  370. package/build/dist/Server/Utils/AI/SRE/Insights/InsightScanner.js.map +1 -0
  371. package/build/dist/Server/Utils/AI/SRE/Insights/InsightStore.js +231 -0
  372. package/build/dist/Server/Utils/AI/SRE/Insights/InsightStore.js.map +1 -0
  373. package/build/dist/Server/Utils/AI/SRE/Insights/InsightTriageRunner.js +206 -0
  374. package/build/dist/Server/Utils/AI/SRE/Insights/InsightTriageRunner.js.map +1 -0
  375. package/build/dist/Server/Utils/AI/SRE/Insights/Triage.js +121 -0
  376. package/build/dist/Server/Utils/AI/SRE/Insights/Triage.js.map +1 -0
  377. package/build/dist/Server/Utils/AI/SRE/Insights/Types.js +2 -0
  378. package/build/dist/Server/Utils/AI/SRE/Insights/Types.js.map +1 -0
  379. package/build/dist/Server/Utils/AI/SRE/InstrumentationTaskTrigger.js +148 -0
  380. package/build/dist/Server/Utils/AI/SRE/InstrumentationTaskTrigger.js.map +1 -0
  381. package/build/dist/Server/Utils/AI/SRE/InvestigationGrader.js +231 -0
  382. package/build/dist/Server/Utils/AI/SRE/InvestigationGrader.js.map +1 -0
  383. package/build/dist/Server/Utils/AI/{Sentinel → SRE}/InvestigationQueue.js +102 -23
  384. package/build/dist/Server/Utils/AI/SRE/InvestigationQueue.js.map +1 -0
  385. package/build/dist/Server/Utils/AI/SRE/SubjectCodeFixRun.js +167 -0
  386. package/build/dist/Server/Utils/AI/SRE/SubjectCodeFixRun.js.map +1 -0
  387. package/build/dist/Server/Utils/AI/Toolbox/{SentinelActionTools.js → AIActionTools.js} +18 -2
  388. package/build/dist/Server/Utils/AI/Toolbox/AIActionTools.js.map +1 -0
  389. package/build/dist/Server/Utils/AI/Toolbox/Index.js +2 -2
  390. package/build/dist/Server/Utils/AI/Toolbox/Index.js.map +1 -1
  391. package/build/dist/Server/Utils/AnalyticsDatabase/ClickhouseCapacity.js +301 -0
  392. package/build/dist/Server/Utils/AnalyticsDatabase/ClickhouseCapacity.js.map +1 -0
  393. package/build/dist/Server/Utils/CodeRepository/GitHub/GitHub.js +240 -2
  394. package/build/dist/Server/Utils/CodeRepository/GitHub/GitHub.js.map +1 -1
  395. package/build/dist/Server/Utils/CodeRepository/ServiceRepoLinkSuggester.js +127 -0
  396. package/build/dist/Server/Utils/CodeRepository/ServiceRepoLinkSuggester.js.map +1 -0
  397. package/build/dist/Server/Utils/CodeRepository/StackTraceRepoResolver.js +336 -0
  398. package/build/dist/Server/Utils/CodeRepository/StackTraceRepoResolver.js.map +1 -0
  399. package/build/dist/Server/Utils/Execute.js.map +1 -1
  400. package/build/dist/Server/Utils/LLM/LLMService.js +125 -25
  401. package/build/dist/Server/Utils/LLM/LLMService.js.map +1 -1
  402. package/build/dist/Server/Utils/Monitor/Criteria/SqlMonitorCriteria.js +120 -0
  403. package/build/dist/Server/Utils/Monitor/Criteria/SqlMonitorCriteria.js.map +1 -0
  404. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js +21 -0
  405. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js.map +1 -1
  406. package/build/dist/Types/AI/AIInsightEvidence.js +2 -0
  407. package/build/dist/Types/AI/AIInsightEvidence.js.map +1 -0
  408. package/build/dist/Types/AI/AIInsightHumanVerdict.js +16 -0
  409. package/build/dist/Types/AI/AIInsightHumanVerdict.js.map +1 -0
  410. package/build/dist/Types/AI/AIInsightSeverity.js +14 -0
  411. package/build/dist/Types/AI/AIInsightSeverity.js.map +1 -0
  412. package/build/dist/Types/AI/AIInsightStatus.js +36 -0
  413. package/build/dist/Types/AI/AIInsightStatus.js.map +1 -0
  414. package/build/dist/Types/AI/AIInsightType.js +42 -0
  415. package/build/dist/Types/AI/AIInsightType.js.map +1 -0
  416. package/build/dist/Types/AI/AIRunAutoGrade.js +19 -0
  417. package/build/dist/Types/AI/AIRunAutoGrade.js.map +1 -0
  418. package/build/dist/Types/AI/AIRunEventType.js +5 -0
  419. package/build/dist/Types/AI/AIRunEventType.js.map +1 -1
  420. package/build/dist/Types/AI/AIRunHumanVerdict.js +18 -0
  421. package/build/dist/Types/AI/AIRunHumanVerdict.js.map +1 -0
  422. package/build/dist/Types/AI/AIRunType.js +6 -0
  423. package/build/dist/Types/AI/AIRunType.js.map +1 -1
  424. package/build/dist/Types/AI/CodeFixTaskContext.js +29 -0
  425. package/build/dist/Types/AI/CodeFixTaskContext.js.map +1 -0
  426. package/build/dist/Types/AI/CodeFixTaskType.js +122 -0
  427. package/build/dist/Types/AI/CodeFixTaskType.js.map +1 -0
  428. package/build/dist/Types/AI/FixPullRequestCiStatus.js +102 -0
  429. package/build/dist/Types/AI/FixPullRequestCiStatus.js.map +1 -0
  430. package/build/dist/Types/BaseDatabase/AggregationIntervalUtil.js +55 -0
  431. package/build/dist/Types/BaseDatabase/AggregationIntervalUtil.js.map +1 -1
  432. package/build/dist/Types/Incident/IncidentMetricType.js +7 -0
  433. package/build/dist/Types/Incident/IncidentMetricType.js.map +1 -1
  434. package/build/dist/Types/Monitor/CriteriaFilter.js +7 -0
  435. package/build/dist/Types/Monitor/CriteriaFilter.js.map +1 -1
  436. package/build/dist/Types/Monitor/MonitorCriteriaInstance.js +62 -0
  437. package/build/dist/Types/Monitor/MonitorCriteriaInstance.js.map +1 -1
  438. package/build/dist/Types/Monitor/MonitorStep.js +28 -0
  439. package/build/dist/Types/Monitor/MonitorStep.js.map +1 -1
  440. package/build/dist/Types/Monitor/MonitorStepSqlMonitor.js +93 -0
  441. package/build/dist/Types/Monitor/MonitorStepSqlMonitor.js.map +1 -0
  442. package/build/dist/Types/Monitor/MonitorType.js +15 -0
  443. package/build/dist/Types/Monitor/MonitorType.js.map +1 -1
  444. package/build/dist/Types/Monitor/SqlDatabaseType.js +47 -0
  445. package/build/dist/Types/Monitor/SqlDatabaseType.js.map +1 -0
  446. package/build/dist/Types/Monitor/SqlMonitor/SqlMonitorResponse.js +2 -0
  447. package/build/dist/Types/Monitor/SqlMonitor/SqlMonitorResponse.js.map +1 -0
  448. package/build/dist/Types/Permission.js +10 -84
  449. package/build/dist/Types/Permission.js.map +1 -1
  450. package/build/dist/Types/Runbook/RunbookStepType.js +1 -0
  451. package/build/dist/Types/Runbook/RunbookStepType.js.map +1 -1
  452. package/build/dist/Types/Workflow/ComponentID.js +1 -0
  453. package/build/dist/Types/Workflow/ComponentID.js.map +1 -1
  454. package/build/dist/Types/Workflow/Components/AI.js +135 -0
  455. package/build/dist/Types/Workflow/Components/AI.js.map +1 -0
  456. package/build/dist/Types/Workflow/Components.js +7 -0
  457. package/build/dist/Types/Workflow/Components.js.map +1 -1
  458. package/build/dist/UI/Components/AI/GenerateFromAIModal.js +1 -1
  459. package/build/dist/UI/Components/AI/GenerateFromAIModal.js.map +1 -1
  460. package/build/dist/UI/Components/Markdown.tsx/MarkdownViewer.js +9 -0
  461. package/build/dist/UI/Components/Markdown.tsx/MarkdownViewer.js.map +1 -1
  462. package/build/dist/UI/Components/MoreMenu/MoreMenu.js +1 -1
  463. package/build/dist/UI/Components/Table/Table.js +28 -2
  464. package/build/dist/UI/Components/Table/Table.js.map +1 -1
  465. package/build/dist/UI/Utils/TableColumnsToCsv.js +291 -0
  466. package/build/dist/UI/Utils/TableColumnsToCsv.js.map +1 -0
  467. package/build/dist/Utils/Monitor/MonitorMetricType.js +1 -0
  468. package/build/dist/Utils/Monitor/MonitorMetricType.js.map +1 -1
  469. package/package.json +1 -1
  470. package/Models/DatabaseModels/AIAgentTask.ts +0 -660
  471. package/Models/DatabaseModels/AIAgentTaskLog.ts +0 -426
  472. package/Models/DatabaseModels/AIAgentTaskTelemetryException.ts +0 -399
  473. package/Models/DatabaseModels/ServiceCodeRepository.ts +0 -647
  474. package/Server/Services/AIAgentTaskService.ts +0 -240
  475. package/Server/Services/AIAgentTaskTelemetryExceptionService.ts +0 -39
  476. package/Server/Services/ServiceCodeRepositoryService.ts +0 -55
  477. package/Tests/Server/Services/AIAgentTaskServiceClaim.test.ts +0 -146
  478. package/Types/AI/AIAgentTaskMetadata.ts +0 -25
  479. package/Types/AI/AIAgentTaskType.ts +0 -40
  480. package/build/dist/Models/DatabaseModels/AIAgentTask.js +0 -691
  481. package/build/dist/Models/DatabaseModels/AIAgentTask.js.map +0 -1
  482. package/build/dist/Models/DatabaseModels/AIAgentTaskLog.js +0 -447
  483. package/build/dist/Models/DatabaseModels/AIAgentTaskLog.js.map +0 -1
  484. package/build/dist/Models/DatabaseModels/AIAgentTaskTelemetryException.js +0 -415
  485. package/build/dist/Models/DatabaseModels/AIAgentTaskTelemetryException.js.map +0 -1
  486. package/build/dist/Models/DatabaseModels/ServiceCodeRepository.js +0 -665
  487. package/build/dist/Models/DatabaseModels/ServiceCodeRepository.js.map +0 -1
  488. package/build/dist/Server/Services/AIAgentTaskLogService.js.map +0 -1
  489. package/build/dist/Server/Services/AIAgentTaskService.js +0 -217
  490. package/build/dist/Server/Services/AIAgentTaskService.js.map +0 -1
  491. package/build/dist/Server/Services/AIAgentTaskTelemetryExceptionService.js +0 -36
  492. package/build/dist/Server/Services/AIAgentTaskTelemetryExceptionService.js.map +0 -1
  493. package/build/dist/Server/Services/ServiceCodeRepositoryService.js +0 -54
  494. package/build/dist/Server/Services/ServiceCodeRepositoryService.js.map +0 -1
  495. package/build/dist/Server/Utils/AI/Sentinel/AlertInvestigationRunner.js.map +0 -1
  496. package/build/dist/Server/Utils/AI/Sentinel/IncidentInvestigationRunner.js.map +0 -1
  497. package/build/dist/Server/Utils/AI/Sentinel/IncidentPostmortemRunner.js.map +0 -1
  498. package/build/dist/Server/Utils/AI/Sentinel/InvestigationQueue.js.map +0 -1
  499. package/build/dist/Server/Utils/AI/Sentinel/SentinelInvestigationEngine.js.map +0 -1
  500. package/build/dist/Server/Utils/AI/Sentinel/SentinelMemory.js.map +0 -1
  501. package/build/dist/Server/Utils/AI/Toolbox/SentinelActionTools.js.map +0 -1
  502. package/build/dist/Types/AI/AIAgentTaskMetadata.js +0 -6
  503. package/build/dist/Types/AI/AIAgentTaskMetadata.js.map +0 -1
  504. package/build/dist/Types/AI/AIAgentTaskType.js +0 -29
  505. package/build/dist/Types/AI/AIAgentTaskType.js.map +0 -1
@@ -6,6 +6,13 @@ enum IncidentMetricType {
6
6
  TimeInState = "oneuptime.incident.time-in-state",
7
7
  SeverityChange = "oneuptime.incident.severity-change",
8
8
  PostmortemCompletionTime = "oneuptime.incident.postmortem-completion-time",
9
+ /*
10
+ * Seconds from incident creation to the moment the AI investigation
11
+ * posted its root-cause analysis. Written once from the investigation
12
+ * runner (not from refreshIncidentMetrics — the refresh replace-list
13
+ * deliberately excludes this name so refreshes never tombstone it).
14
+ */
15
+ TimeToRootCausePosted = "oneuptime.incident.time-to-rca",
9
16
  }
10
17
 
11
18
  export default IncidentMetricType;
@@ -98,6 +98,13 @@ export enum CheckOn {
98
98
  DnssecResolverConsensus = "DNSSEC Resolver Consensus (AD Flag)",
99
99
  DnssecNameserverConsistent = "DNSSEC Nameservers Are Consistent",
100
100
 
101
+ // SQL Query monitors.
102
+ SqlIsOnline = "SQL Is Online",
103
+ SqlQueryRowCount = "SQL Query Row Count",
104
+ SqlQueryScalarValue = "SQL Query Scalar Value",
105
+ SqlQueryExecutionTime = "SQL Query Execution Time (in ms)",
106
+ SqlQueryError = "SQL Query Error",
107
+
101
108
  // External Status Page monitors.
102
109
  ExternalStatusPageIsOnline = "External Status Page Is Online",
103
110
  ExternalStatusPageOverallStatus = "External Status Page Overall Status",
@@ -299,6 +306,7 @@ export class CriteriaFilterUtil {
299
306
  checkOn === CheckOn.DnssecDsExists ||
300
307
  checkOn === CheckOn.DnssecResolverConsensus ||
301
308
  checkOn === CheckOn.DnssecNameserverConsistent ||
309
+ checkOn === CheckOn.SqlIsOnline ||
302
310
  checkOn === CheckOn.ExternalStatusPageIsOnline
303
311
  ) {
304
312
  return false;
@@ -469,6 +469,33 @@ export default class MonitorCriteriaInstance extends DatabaseProperty {
469
469
  return monitorCriteriaInstance;
470
470
  }
471
471
 
472
+ if (arg.monitorType === MonitorType.SQLQuery) {
473
+ const monitorCriteriaInstance: MonitorCriteriaInstance =
474
+ new MonitorCriteriaInstance();
475
+
476
+ monitorCriteriaInstance.data = {
477
+ id: ObjectID.generate().toString(),
478
+ monitorStatusId: arg.monitorStatusId,
479
+ filterCondition: FilterCondition.All,
480
+ filters: [
481
+ {
482
+ checkOn: CheckOn.SqlIsOnline,
483
+ filterType: FilterType.True,
484
+ value: undefined,
485
+ },
486
+ ],
487
+ incidents: [],
488
+ alerts: [],
489
+ createAlerts: false,
490
+ changeMonitorStatus: true,
491
+ createIncidents: false,
492
+ name: `Check if ${arg.monitorName} is online`,
493
+ description: `This criteria checks if the ${arg.monitorName} database query ran successfully`,
494
+ };
495
+
496
+ return monitorCriteriaInstance;
497
+ }
498
+
472
499
  if (arg.monitorType === MonitorType.Domain) {
473
500
  const monitorCriteriaInstance: MonitorCriteriaInstance =
474
501
  new MonitorCriteriaInstance();
@@ -696,6 +723,46 @@ export default class MonitorCriteriaInstance extends DatabaseProperty {
696
723
  };
697
724
  }
698
725
 
726
+ if (arg.monitorType === MonitorType.SQLQuery) {
727
+ monitorCriteriaInstance.data = {
728
+ id: ObjectID.generate().toString(),
729
+ monitorStatusId: arg.monitorStatusId,
730
+ filterCondition: FilterCondition.Any,
731
+ filters: [
732
+ {
733
+ checkOn: CheckOn.SqlIsOnline,
734
+ filterType: FilterType.False,
735
+ value: undefined,
736
+ },
737
+ ],
738
+ incidents: [
739
+ {
740
+ title: `${arg.monitorName} is offline`,
741
+ description: `${arg.monitorName} database query is currently failing.`,
742
+ incidentSeverityId: arg.incidentSeverityId,
743
+ autoResolveIncident: true,
744
+ id: ObjectID.generate().toString(),
745
+ onCallPolicyIds: [],
746
+ },
747
+ ],
748
+ changeMonitorStatus: true,
749
+ createIncidents: true,
750
+ createAlerts: false,
751
+ alerts: [
752
+ {
753
+ title: `${arg.monitorName} is offline`,
754
+ description: `${arg.monitorName} database query is currently failing.`,
755
+ alertSeverityId: arg.alertSeverityId,
756
+ autoResolveAlert: true,
757
+ id: ObjectID.generate().toString(),
758
+ onCallPolicyIds: [],
759
+ },
760
+ ],
761
+ name: `Check if ${arg.monitorName} is offline`,
762
+ description: `This criteria checks if the ${arg.monitorName} database query is failing`,
763
+ };
764
+ }
765
+
699
766
  if (arg.monitorType === MonitorType.Domain) {
700
767
  monitorCriteriaInstance.data = {
701
768
  id: ObjectID.generate().toString(),
@@ -44,6 +44,9 @@ import MonitorStepDomainMonitor, {
44
44
  import MonitorStepDnssecMonitor, {
45
45
  MonitorStepDnssecMonitorUtil,
46
46
  } from "./MonitorStepDnssecMonitor";
47
+ import MonitorStepSqlMonitor, {
48
+ MonitorStepSqlMonitorUtil,
49
+ } from "./MonitorStepSqlMonitor";
47
50
  import MonitorStepExternalStatusPageMonitor, {
48
51
  MonitorStepExternalStatusPageMonitorUtil,
49
52
  } from "./MonitorStepExternalStatusPageMonitor";
@@ -190,6 +193,9 @@ export interface MonitorStepType {
190
193
  // DNSSEC monitor
191
194
  dnssecMonitor?: MonitorStepDnssecMonitor | undefined;
192
195
 
196
+ // SQL Query monitor
197
+ sqlMonitor?: MonitorStepSqlMonitor | undefined;
198
+
193
199
  // External Status Page monitor
194
200
  externalStatusPageMonitor?: MonitorStepExternalStatusPageMonitor | undefined;
195
201
 
@@ -253,6 +259,7 @@ export default class MonitorStep extends DatabaseProperty {
253
259
  dnsMonitor: undefined,
254
260
  domainMonitor: undefined,
255
261
  dnssecMonitor: undefined,
262
+ sqlMonitor: undefined,
256
263
  externalStatusPageMonitor: undefined,
257
264
  kubernetesMonitor: undefined,
258
265
  dockerMonitor: undefined,
@@ -304,6 +311,7 @@ export default class MonitorStep extends DatabaseProperty {
304
311
  dnsMonitor: undefined,
305
312
  domainMonitor: undefined,
306
313
  dnssecMonitor: undefined,
314
+ sqlMonitor: undefined,
307
315
  externalStatusPageMonitor: undefined,
308
316
  kubernetesMonitor: undefined,
309
317
  dockerMonitor: undefined,
@@ -519,6 +527,11 @@ export default class MonitorStep extends DatabaseProperty {
519
527
  return this;
520
528
  }
521
529
 
530
+ public setSqlMonitor(sqlMonitor: MonitorStepSqlMonitor): MonitorStep {
531
+ this.data!.sqlMonitor = sqlMonitor;
532
+ return this;
533
+ }
534
+
522
535
  public setExternalStatusPageMonitor(
523
536
  externalStatusPageMonitor: MonitorStepExternalStatusPageMonitor,
524
537
  ): MonitorStep {
@@ -751,6 +764,24 @@ export default class MonitorStep extends DatabaseProperty {
751
764
  }
752
765
  }
753
766
 
767
+ if (monitorType === MonitorType.SQLQuery) {
768
+ if (!value.data.sqlMonitor) {
769
+ return "SQL monitor configuration is required";
770
+ }
771
+
772
+ if (!value.data.sqlMonitor.host) {
773
+ return "Database host is required";
774
+ }
775
+
776
+ if (!value.data.sqlMonitor.databaseName) {
777
+ return "Database name is required";
778
+ }
779
+
780
+ if (!value.data.sqlMonitor.query || !value.data.sqlMonitor.query.trim()) {
781
+ return "SQL query is required";
782
+ }
783
+ }
784
+
754
785
  if (monitorType === MonitorType.ExternalStatusPage) {
755
786
  if (!value.data.externalStatusPageMonitor) {
756
787
  return "External status page configuration is required";
@@ -916,6 +947,9 @@ export default class MonitorStep extends DatabaseProperty {
916
947
  dnssecMonitor: this.data.dnssecMonitor
917
948
  ? MonitorStepDnssecMonitorUtil.toJSON(this.data.dnssecMonitor)
918
949
  : undefined,
950
+ sqlMonitor: this.data.sqlMonitor
951
+ ? MonitorStepSqlMonitorUtil.toJSON(this.data.sqlMonitor)
952
+ : undefined,
919
953
  externalStatusPageMonitor: this.data.externalStatusPageMonitor
920
954
  ? MonitorStepExternalStatusPageMonitorUtil.toJSON(
921
955
  this.data.externalStatusPageMonitor,
@@ -1081,6 +1115,9 @@ export default class MonitorStep extends DatabaseProperty {
1081
1115
  dnssecMonitor: json["dnssecMonitor"]
1082
1116
  ? (json["dnssecMonitor"] as JSONObject)
1083
1117
  : undefined,
1118
+ sqlMonitor: json["sqlMonitor"]
1119
+ ? (json["sqlMonitor"] as JSONObject)
1120
+ : undefined,
1084
1121
  externalStatusPageMonitor: json["externalStatusPageMonitor"]
1085
1122
  ? (json["externalStatusPageMonitor"] as JSONObject)
1086
1123
  : undefined,
@@ -1144,6 +1181,7 @@ export default class MonitorStep extends DatabaseProperty {
1144
1181
  dnsMonitor: Zod.any().optional(),
1145
1182
  domainMonitor: Zod.any().optional(),
1146
1183
  dnssecMonitor: Zod.any().optional(),
1184
+ sqlMonitor: Zod.any().optional(),
1147
1185
  externalStatusPageMonitor: Zod.any().optional(),
1148
1186
  kubernetesMonitor: Zod.any().optional(),
1149
1187
  dockerMonitor: Zod.any().optional(),
@@ -0,0 +1,141 @@
1
+ import { JSONObject } from "../JSON";
2
+ import SqlDatabaseType from "./SqlDatabaseType";
3
+
4
+ /*
5
+ * Caps for SQL query execution. These are enforced server/probe-side and are
6
+ * the safety envelope for running a customer-supplied query — a user cannot
7
+ * raise them past these ceilings from the UI.
8
+ */
9
+ export const MAX_SQL_STATEMENT_TIMEOUT_IN_MS: number = 60000; // 60 seconds
10
+ export const DEFAULT_SQL_STATEMENT_TIMEOUT_IN_MS: number = 15000; // 15 seconds
11
+ export const MAX_SQL_CONNECTION_TIMEOUT_IN_MS: number = 30000; // 30 seconds
12
+ export const DEFAULT_SQL_CONNECTION_TIMEOUT_IN_MS: number = 10000; // 10 seconds
13
+ export const MAX_SQL_MAX_ROWS: number = 1000;
14
+ export const DEFAULT_SQL_MAX_ROWS: number = 100;
15
+
16
+ export const clampSqlStatementTimeoutInMs: (value: number) => number = (
17
+ value: number,
18
+ ): number => {
19
+ if (!value || value <= 0 || isNaN(value)) {
20
+ return DEFAULT_SQL_STATEMENT_TIMEOUT_IN_MS;
21
+ }
22
+ if (value > MAX_SQL_STATEMENT_TIMEOUT_IN_MS) {
23
+ return MAX_SQL_STATEMENT_TIMEOUT_IN_MS;
24
+ }
25
+ return value;
26
+ };
27
+
28
+ export const clampSqlConnectionTimeoutInMs: (value: number) => number = (
29
+ value: number,
30
+ ): number => {
31
+ if (!value || value <= 0 || isNaN(value)) {
32
+ return DEFAULT_SQL_CONNECTION_TIMEOUT_IN_MS;
33
+ }
34
+ if (value > MAX_SQL_CONNECTION_TIMEOUT_IN_MS) {
35
+ return MAX_SQL_CONNECTION_TIMEOUT_IN_MS;
36
+ }
37
+ return value;
38
+ };
39
+
40
+ export const clampSqlMaxRows: (value: number) => number = (
41
+ value: number,
42
+ ): number => {
43
+ if (!value || value <= 0 || isNaN(value)) {
44
+ return DEFAULT_SQL_MAX_ROWS;
45
+ }
46
+ if (value > MAX_SQL_MAX_ROWS) {
47
+ return MAX_SQL_MAX_ROWS;
48
+ }
49
+ return Math.floor(value);
50
+ };
51
+
52
+ /*
53
+ * Connection + query configuration for a SQL Query monitor. Sensitive fields
54
+ * (password, and optionally any other field) may contain a monitor-secret
55
+ * reference like {{monitorSecrets.name}} — the server resolves these before
56
+ * the config is handed to a probe. OneUptime never creates these secrets for
57
+ * the user; referencing one is the user's choice.
58
+ */
59
+ export default interface MonitorStepSqlMonitor {
60
+ databaseType: SqlDatabaseType;
61
+ host: string;
62
+ port: number;
63
+ databaseName: string;
64
+ username: string;
65
+ // Raw password OR a {{monitorSecrets.name}} reference resolved server-side.
66
+ password: string;
67
+ useSsl: boolean;
68
+ /*
69
+ * When SSL is on, whether the server certificate chain must validate. Users
70
+ * connecting to a DB with a self-signed cert set this to false.
71
+ */
72
+ rejectUnauthorizedSsl: boolean;
73
+ // The read-only SQL query to run. A single statement is expected.
74
+ query: string;
75
+ connectionTimeoutInMs: number;
76
+ statementTimeoutInMs: number;
77
+ // Upper bound on rows read back from the DB (memory + payload guard).
78
+ maxRows: number;
79
+ }
80
+
81
+ export class MonitorStepSqlMonitorUtil {
82
+ public static getDefault(): MonitorStepSqlMonitor {
83
+ return {
84
+ databaseType: SqlDatabaseType.PostgreSQL,
85
+ host: "",
86
+ port: 5432,
87
+ databaseName: "",
88
+ username: "",
89
+ password: "",
90
+ useSsl: false,
91
+ rejectUnauthorizedSsl: true,
92
+ query: "",
93
+ connectionTimeoutInMs: DEFAULT_SQL_CONNECTION_TIMEOUT_IN_MS,
94
+ statementTimeoutInMs: DEFAULT_SQL_STATEMENT_TIMEOUT_IN_MS,
95
+ maxRows: DEFAULT_SQL_MAX_ROWS,
96
+ };
97
+ }
98
+
99
+ public static fromJSON(json: JSONObject): MonitorStepSqlMonitor {
100
+ return {
101
+ databaseType:
102
+ (json["databaseType"] as SqlDatabaseType) || SqlDatabaseType.PostgreSQL,
103
+ host: (json["host"] as string) || "",
104
+ port: (json["port"] as number) || 5432,
105
+ databaseName: (json["databaseName"] as string) || "",
106
+ username: (json["username"] as string) || "",
107
+ password: (json["password"] as string) || "",
108
+ useSsl: Boolean(json["useSsl"]),
109
+ rejectUnauthorizedSsl:
110
+ json["rejectUnauthorizedSsl"] === undefined ||
111
+ json["rejectUnauthorizedSsl"] === null
112
+ ? true
113
+ : Boolean(json["rejectUnauthorizedSsl"]),
114
+ query: (json["query"] as string) || "",
115
+ connectionTimeoutInMs: clampSqlConnectionTimeoutInMs(
116
+ json["connectionTimeoutInMs"] as number,
117
+ ),
118
+ statementTimeoutInMs: clampSqlStatementTimeoutInMs(
119
+ json["statementTimeoutInMs"] as number,
120
+ ),
121
+ maxRows: clampSqlMaxRows(json["maxRows"] as number),
122
+ };
123
+ }
124
+
125
+ public static toJSON(monitor: MonitorStepSqlMonitor): JSONObject {
126
+ return {
127
+ databaseType: monitor.databaseType,
128
+ host: monitor.host,
129
+ port: monitor.port,
130
+ databaseName: monitor.databaseName,
131
+ username: monitor.username,
132
+ password: monitor.password,
133
+ useSsl: monitor.useSsl,
134
+ rejectUnauthorizedSsl: monitor.rejectUnauthorizedSsl,
135
+ query: monitor.query,
136
+ connectionTimeoutInMs: monitor.connectionTimeoutInMs,
137
+ statementTimeoutInMs: monitor.statementTimeoutInMs,
138
+ maxRows: monitor.maxRows,
139
+ };
140
+ }
141
+ }
@@ -21,6 +21,9 @@ enum MonitorType {
21
21
  Server = "Server",
22
22
  SSLCertificate = "SSL Certificate",
23
23
 
24
+ // Database monitoring — runs a read-only SQL query on a schedule from a probe.
25
+ SQLQuery = "SQL Query",
26
+
24
27
  // These two monitor types are same but we are keeping them separate for now - this is for marketing purposes
25
28
  SyntheticMonitor = "Synthetic Monitor",
26
29
  CustomJavaScriptCode = "Custom JavaScript Code",
@@ -87,6 +90,10 @@ export class MonitorTypeHelper {
87
90
  label: "DNS Monitoring",
88
91
  monitorTypes: [MonitorType.DNS, MonitorType.DNSSEC],
89
92
  },
93
+ {
94
+ label: "Database Monitoring",
95
+ monitorTypes: [MonitorType.SQLQuery],
96
+ },
90
97
  {
91
98
  label: "Synthetic Monitoring",
92
99
  monitorTypes: [
@@ -288,6 +295,13 @@ export class MonitorTypeHelper {
288
295
  "This monitor type lets you monitor SSL certificates of any domain.",
289
296
  icon: IconProp.ShieldCheck,
290
297
  },
298
+ {
299
+ monitorType: MonitorType.SQLQuery,
300
+ title: "SQL Query",
301
+ description:
302
+ "This monitor type runs a read-only SQL query on a schedule against a database (PostgreSQL, MySQL, or Microsoft SQL Server) and alerts on the result — row count, a scalar value, execution time, or query errors. Requires a probe with network access to your database.",
303
+ icon: IconProp.Database,
304
+ },
291
305
  {
292
306
  monitorType: MonitorType.SyntheticMonitor,
293
307
  title: "Synthetic Monitor",
@@ -420,6 +434,7 @@ export class MonitorTypeHelper {
420
434
  monitorType === MonitorType.DNS ||
421
435
  monitorType === MonitorType.DNSSEC ||
422
436
  monitorType === MonitorType.Domain ||
437
+ monitorType === MonitorType.SQLQuery ||
423
438
  monitorType === MonitorType.ExternalStatusPage;
424
439
  return isProbeableMonitor;
425
440
  }
@@ -446,6 +461,7 @@ export class MonitorTypeHelper {
446
461
  MonitorType.DNS,
447
462
  MonitorType.DNSSEC,
448
463
  MonitorType.Domain,
464
+ MonitorType.SQLQuery,
449
465
  MonitorType.ExternalStatusPage,
450
466
  MonitorType.Kubernetes,
451
467
  MonitorType.Docker,
@@ -491,6 +507,7 @@ export class MonitorTypeHelper {
491
507
  monitorType === MonitorType.DNS ||
492
508
  monitorType === MonitorType.DNSSEC ||
493
509
  monitorType === MonitorType.Domain ||
510
+ monitorType === MonitorType.SQLQuery ||
494
511
  monitorType === MonitorType.ExternalStatusPage
495
512
  ) {
496
513
  return true;
@@ -0,0 +1,49 @@
1
+ /*
2
+ * Database engines a SQL Query monitor can target. Only the engines listed
3
+ * in SqlDatabaseTypeUtil.getSupportedDatabaseTypes() are executable today —
4
+ * any engine added to the enum but not returned there is reserved so the type
5
+ * system and stored config are forward compatible when its probe executor
6
+ * ships.
7
+ */
8
+ enum SqlDatabaseType {
9
+ PostgreSQL = "PostgreSQL",
10
+ MySQL = "MySQL",
11
+ MicrosoftSqlServer = "Microsoft SQL Server",
12
+ }
13
+
14
+ export default SqlDatabaseType;
15
+
16
+ export class SqlDatabaseTypeUtil {
17
+ /**
18
+ * Engines the probe can actually connect to and query today. Each has a
19
+ * vetted, pure-JS driver in the probe (`pg`, `mysql2`, `mssql`) and a
20
+ * read-only executor. An engine added to the enum but omitted here is not
21
+ * offered in the dashboard and is rejected by the probe, so we never surface
22
+ * a database type the probe cannot run.
23
+ */
24
+ public static getSupportedDatabaseTypes(): Array<SqlDatabaseType> {
25
+ return [
26
+ SqlDatabaseType.PostgreSQL,
27
+ SqlDatabaseType.MySQL,
28
+ SqlDatabaseType.MicrosoftSqlServer,
29
+ ];
30
+ }
31
+
32
+ public static isSupported(databaseType: SqlDatabaseType): boolean {
33
+ return this.getSupportedDatabaseTypes().includes(databaseType);
34
+ }
35
+
36
+ /** Default port for a database engine, used to seed the config form. */
37
+ public static getDefaultPort(databaseType: SqlDatabaseType): number {
38
+ switch (databaseType) {
39
+ case SqlDatabaseType.PostgreSQL:
40
+ return 5432;
41
+ case SqlDatabaseType.MySQL:
42
+ return 3306;
43
+ case SqlDatabaseType.MicrosoftSqlServer:
44
+ return 1433;
45
+ default:
46
+ return 5432;
47
+ }
48
+ }
49
+ }
@@ -0,0 +1,28 @@
1
+ import { JSONObject } from "../../JSON";
2
+ import ProbeAttempt from "../../Probe/ProbeAttempt";
3
+
4
+ /*
5
+ * The compact projection of a SQL query result that a probe reports back to
6
+ * OneUptime. Full result sets never leave the probe / the customer network:
7
+ * only a row count, the first cell (scalar), and the first row are returned.
8
+ * This bounds payload size and avoids replicating customer data into
9
+ * OneUptime storage.
10
+ */
11
+ export default interface SqlMonitorResponse {
12
+ isOnline: boolean;
13
+ responseTimeInMs: number;
14
+ failureCause: string;
15
+ // Number of rows the query returned (capped at maxRows). Null on error.
16
+ rowCount: number | null;
17
+ // First column of the first row — the natural value for COUNT(*)-style checks.
18
+ scalarValue: string | number | boolean | null;
19
+ // First row as a name→value map (values coerced to primitives). Null on error.
20
+ firstRow: JSONObject | null;
21
+ // True when the result was truncated because it exceeded maxRows.
22
+ isRowsCapped?: boolean | undefined;
23
+ // Sanitized DB/driver error message (never contains credentials/DSN). Null on success.
24
+ queryError: string | null;
25
+ isTimeout?: boolean | undefined;
26
+ probeAttempts?: Array<ProbeAttempt> | undefined;
27
+ totalAttempts?: number | undefined;
28
+ }
@@ -251,16 +251,17 @@ enum Permission {
251
251
  EditProjectAIAgent = "EditProjectAIAgent",
252
252
  ReadProjectAIAgent = "ReadProjectAIAgent",
253
253
 
254
+ /*
255
+ * The AIAgentTask model these were named for is removed (fix runs live
256
+ * on AIRun, which is server-written only); the permissions remain
257
+ * because they govern AIAgentTaskPullRequest — the record of pull
258
+ * requests AI fix runs opened.
259
+ */
254
260
  CreateProjectAIAgentTask = "CreateProjectAIAgentTask",
255
261
  DeleteProjectAIAgentTask = "DeleteProjectAIAgentTask",
256
262
  EditProjectAIAgentTask = "EditProjectAIAgentTask",
257
263
  ReadProjectAIAgentTask = "ReadProjectAIAgentTask",
258
264
 
259
- CreateProjectAIAgentTaskTelemetryException = "CreateProjectAIAgentTaskTelemetryException",
260
- DeleteProjectAIAgentTaskTelemetryException = "DeleteProjectAIAgentTaskTelemetryException",
261
- EditProjectAIAgentTaskTelemetryException = "EditProjectAIAgentTaskTelemetryException",
262
- ReadProjectAIAgentTaskTelemetryException = "ReadProjectAIAgentTaskTelemetryException",
263
-
264
265
  CreateProjectLlm = "CreateProjectLlm",
265
266
  DeleteProjectLlm = "DeleteProjectLlm",
266
267
  EditProjectLlm = "EditProjectLlm",
@@ -1384,11 +1385,6 @@ enum Permission {
1384
1385
  EditServiceTelemetryService = "EditServiceTelemetryService",
1385
1386
  ReadServiceTelemetryService = "ReadServiceTelemetryService",
1386
1387
 
1387
- CreateServiceCodeRepository = "CreateServiceCodeRepository",
1388
- DeleteServiceCodeRepository = "DeleteServiceCodeRepository",
1389
- EditServiceCodeRepository = "EditServiceCodeRepository",
1390
- ReadServiceCodeRepository = "ReadServiceCodeRepository",
1391
-
1392
1388
  // Code Repository
1393
1389
  CreateCodeRepository = "CreateCodeRepository",
1394
1390
  DeleteCodeRepository = "DeleteCodeRepository",
@@ -6046,7 +6042,7 @@ export class PermissionHelper {
6046
6042
  permission: Permission.CreateProjectAIAgentTask,
6047
6043
  title: "Create AI Agent Task",
6048
6044
  description:
6049
- "This permission can create AI agent tasks for this project.",
6045
+ "This permission can create AI agent fix task pull request records for this project.",
6050
6046
  isAssignableToTenant: true,
6051
6047
  isAccessControlPermission: false,
6052
6048
  isRolePermission: false,
@@ -6056,7 +6052,7 @@ export class PermissionHelper {
6056
6052
  permission: Permission.DeleteProjectAIAgentTask,
6057
6053
  title: "Delete AI Agent Task",
6058
6054
  description:
6059
- "This permission can delete AI agent tasks of this project.",
6055
+ "This permission can delete AI agent fix task pull request records of this project.",
6060
6056
  isAssignableToTenant: true,
6061
6057
  isAccessControlPermission: true,
6062
6058
  isRolePermission: false,
@@ -6065,7 +6061,8 @@ export class PermissionHelper {
6065
6061
  {
6066
6062
  permission: Permission.EditProjectAIAgentTask,
6067
6063
  title: "Edit AI Agent Task",
6068
- description: "This permission can edit AI agent tasks of this project.",
6064
+ description:
6065
+ "This permission can edit AI agent fix task pull request records of this project.",
6069
6066
  isAssignableToTenant: true,
6070
6067
  isAccessControlPermission: true,
6071
6068
  isRolePermission: false,
@@ -6074,48 +6071,8 @@ export class PermissionHelper {
6074
6071
  {
6075
6072
  permission: Permission.ReadProjectAIAgentTask,
6076
6073
  title: "Read AI Agent Task",
6077
- description: "This permission can read AI agent tasks of this project.",
6078
- isAssignableToTenant: true,
6079
- isAccessControlPermission: true,
6080
- isRolePermission: false,
6081
- group: PermissionGroup.AIAgent,
6082
- },
6083
-
6084
- {
6085
- permission: Permission.CreateProjectAIAgentTaskTelemetryException,
6086
- title: "Create AI Agent Task Exception Link",
6087
- description:
6088
- "This permission can create links between AI agent tasks and telemetry exceptions.",
6089
- isAssignableToTenant: true,
6090
- isAccessControlPermission: false,
6091
- isRolePermission: false,
6092
- group: PermissionGroup.AIAgent,
6093
- },
6094
- {
6095
- permission: Permission.DeleteProjectAIAgentTaskTelemetryException,
6096
- title: "Delete AI Agent Task Exception Link",
6097
- description:
6098
- "This permission can delete links between AI agent tasks and telemetry exceptions.",
6099
- isAssignableToTenant: true,
6100
- isAccessControlPermission: true,
6101
- isRolePermission: false,
6102
- group: PermissionGroup.AIAgent,
6103
- },
6104
- {
6105
- permission: Permission.EditProjectAIAgentTaskTelemetryException,
6106
- title: "Edit AI Agent Task Exception Link",
6107
- description:
6108
- "This permission can edit links between AI agent tasks and telemetry exceptions.",
6109
- isAssignableToTenant: true,
6110
- isAccessControlPermission: true,
6111
- isRolePermission: false,
6112
- group: PermissionGroup.AIAgent,
6113
- },
6114
- {
6115
- permission: Permission.ReadProjectAIAgentTaskTelemetryException,
6116
- title: "Read AI Agent Task Exception Link",
6117
6074
  description:
6118
- "This permission can read links between AI agent tasks and telemetry exceptions.",
6075
+ "This permission can read AI agent fix tasks and their pull requests of this project.",
6119
6076
  isAssignableToTenant: true,
6120
6077
  isAccessControlPermission: true,
6121
6078
  isRolePermission: false,
@@ -9316,47 +9273,6 @@ export class PermissionHelper {
9316
9273
  group: PermissionGroup.ServiceCatalog,
9317
9274
  },
9318
9275
 
9319
- {
9320
- permission: Permission.CreateServiceCodeRepository,
9321
- title: "Create Service Code Repository",
9322
- description:
9323
- "This permission can create Service Code Repository in this project.",
9324
- isAssignableToTenant: true,
9325
- isAccessControlPermission: false,
9326
- isRolePermission: false,
9327
- group: PermissionGroup.ServiceCatalog,
9328
- },
9329
- {
9330
- permission: Permission.DeleteServiceCodeRepository,
9331
- title: "Delete Service Code Repository",
9332
- description:
9333
- "This permission can delete Service Code Repository of this project.",
9334
- isAssignableToTenant: true,
9335
- isAccessControlPermission: false,
9336
- isRolePermission: false,
9337
- group: PermissionGroup.ServiceCatalog,
9338
- },
9339
- {
9340
- permission: Permission.EditServiceCodeRepository,
9341
- title: "Edit Service Code Repository",
9342
- description:
9343
- "This permission can edit Service Code Repository of this project.",
9344
- isAssignableToTenant: true,
9345
- isAccessControlPermission: false,
9346
- isRolePermission: false,
9347
- group: PermissionGroup.ServiceCatalog,
9348
- },
9349
- {
9350
- permission: Permission.ReadServiceCodeRepository,
9351
- title: "Read Service Code Repository",
9352
- description:
9353
- "This permission can read Service Code Repository of this project.",
9354
- isAssignableToTenant: true,
9355
- isAccessControlPermission: false,
9356
- isRolePermission: false,
9357
- group: PermissionGroup.ServiceCatalog,
9358
- },
9359
-
9360
9276
  // Code Repository Permissions
9361
9277
  {
9362
9278
  permission: Permission.CreateCodeRepository,
@@ -12,6 +12,7 @@ import DnsMonitorResponse from "../Monitor/DnsMonitor/DnsMonitorResponse";
12
12
  import PingMonitorResponse from "../Monitor/PingMonitor/PingMonitorResponse";
13
13
  import DomainMonitorResponse from "../Monitor/DomainMonitor/DomainMonitorResponse";
14
14
  import DnssecMonitorResponse from "../Monitor/DnssecMonitor/DnssecMonitorResponse";
15
+ import SqlMonitorResponse from "../Monitor/SqlMonitor/SqlMonitorResponse";
15
16
  import ExternalStatusPageMonitorResponse from "../Monitor/ExternalStatusPageMonitor/ExternalStatusPageMonitorResponse";
16
17
  import HttpPhaseTimings from "../Monitor/HttpPhaseTimings";
17
18
  import MonitorEvaluationSummary from "../Monitor/MonitorEvaluationSummary";
@@ -60,6 +61,7 @@ export default interface ProbeMonitorResponse {
60
61
  dnsResponse?: DnsMonitorResponse | undefined;
61
62
  domainResponse?: DomainMonitorResponse | undefined;
62
63
  dnssecResponse?: DnssecMonitorResponse | undefined;
64
+ sqlQueryMonitorResponse?: SqlMonitorResponse | undefined;
63
65
  externalStatusPageResponse?: ExternalStatusPageMonitorResponse | undefined;
64
66
  monitoredAt: Date;
65
67
  isTimeout?: boolean | undefined;