@oneuptime/common 11.3.28 → 11.4.1

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 (244) hide show
  1. package/Models/DatabaseModels/AIRun.ts +50 -0
  2. package/Models/DatabaseModels/Project.ts +60 -0
  3. package/Server/API/AIAgentTaskAPI.ts +10 -24
  4. package/Server/API/AIInvestigationAPI.ts +148 -0
  5. package/Server/API/TelemetryAPI.ts +4 -3
  6. package/Server/Infrastructure/Postgres/SchemaMigrations/1783598145111-AddEnableAutomaticIncidentInvestigationToProject.ts +19 -0
  7. package/Server/Infrastructure/Postgres/SchemaMigrations/1783615884106-AddInvestigationSubjectToAIRun.ts +33 -0
  8. package/Server/Infrastructure/Postgres/SchemaMigrations/1783632447975-AddEnableAutomaticAlertInvestigationToProject.ts +19 -0
  9. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +6 -0
  10. package/Server/Services/AIAgentTaskService.ts +62 -0
  11. package/Server/Services/AlertService.ts +25 -0
  12. package/Server/Services/AnalyticsDatabaseService.ts +27 -0
  13. package/Server/Services/IncidentService.ts +25 -0
  14. package/Server/Services/IncidentStateTimelineService.ts +19 -0
  15. package/Server/Services/LogAggregationService.ts +29 -11
  16. package/Server/Services/MetricService.ts +603 -13
  17. package/Server/Utils/AI/Chat/ObservabilityAssistant.ts +119 -11
  18. package/Server/Utils/AI/Sentinel/AlertInvestigationRunner.ts +141 -0
  19. package/Server/Utils/AI/Sentinel/IncidentInvestigationRunner.ts +178 -0
  20. package/Server/Utils/AI/Sentinel/IncidentPostmortemRunner.ts +105 -0
  21. package/Server/Utils/AI/Sentinel/README.md +10 -0
  22. package/Server/Utils/AI/Sentinel/SentinelInvestigationEngine.ts +405 -0
  23. package/Server/Utils/AI/Sentinel/SentinelMemory.ts +167 -0
  24. package/Server/Utils/AI/Toolbox/Index.ts +11 -0
  25. package/Server/Utils/AI/Toolbox/SentinelActionTools.ts +577 -0
  26. package/Server/Utils/Monitor/Criteria/APIRequestCriteria.ts +44 -0
  27. package/Server/Utils/Monitor/MonitorMetricUtil.ts +108 -2
  28. package/Tests/Server/API/BaseAPI.test.ts +1 -0
  29. package/Tests/Server/Services/AIAgentTaskServiceClaim.test.ts +146 -0
  30. package/Tests/Server/Services/LogAggregationService.test.ts +22 -0
  31. package/Tests/Server/Services/MetricServiceAggregate.test.ts +194 -0
  32. package/Tests/Types/AI/AIAgentTaskStatus.test.ts +86 -0
  33. package/Tests/Types/BaseDatabase/AggregationIntervalUtil.test.ts +127 -0
  34. package/Tests/Types/BaseDatabase/DatabaseCommonInteractionPropsUtil.test.ts +152 -0
  35. package/Tests/Types/OnCallDutyPolicy/ScheduleShiftUtil.test.ts +260 -0
  36. package/Tests/Types/Trace/TraceRecordingRuleDefinition.test.ts +308 -0
  37. package/Tests/UI/Components/Dropdown.test.tsx +17 -0
  38. package/Tests/UI/Components/EntityDropdown.test.tsx +130 -0
  39. package/Tests/UI/Components/Modal.test.tsx +144 -2
  40. package/Tests/UI/Components/TelemetrySearchBar.test.tsx +90 -0
  41. package/Tests/UI/Utils/Theme.test.ts +161 -0
  42. package/Types/BaseDatabase/AggregateBy.ts +12 -0
  43. package/Types/Dashboard/DashboardComponentType.ts +1 -0
  44. package/Types/Dashboard/DashboardComponents/ComponentArgument.ts +1 -0
  45. package/Types/Dashboard/DashboardComponents/DashboardLogChartComponent.ts +19 -0
  46. package/Types/Dashboard/DashboardTemplates.ts +9 -1
  47. package/Types/Date.ts +46 -0
  48. package/Types/Monitor/CriteriaFilter.ts +4 -0
  49. package/Types/Monitor/HttpPhaseTimings.ts +16 -0
  50. package/Types/Monitor/MonitorMetricType.ts +17 -0
  51. package/Types/Monitor/PingMonitor/PingMonitorResponse.ts +20 -0
  52. package/Types/OnCallDutyPolicy/ScheduleShiftUtil.ts +257 -0
  53. package/Types/Probe/ProbeMonitorResponse.ts +14 -0
  54. package/UI/Components/Calendar/Calendar.tsx +8 -2
  55. package/UI/Components/Charts/ChartGroup/ChartGroup.tsx +5 -5
  56. package/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.tsx +8 -5
  57. package/UI/Components/Charts/ChartLibrary/BarChart/BarChart.tsx +4 -1
  58. package/UI/Components/Charts/ChartLibrary/LineChart/LineChart.tsx +6 -3
  59. package/UI/Components/CodeBlock/CodeBlock.tsx +2 -1
  60. package/UI/Components/CodeEditor/CodeEditor.tsx +3 -0
  61. package/UI/Components/Divider/Divider.tsx +1 -1
  62. package/UI/Components/Dropdown/Dropdown.tsx +13 -4
  63. package/UI/Components/EntityDropdown/EntityDropdown.tsx +110 -2
  64. package/UI/Components/ErrorBoundary.tsx +2 -1
  65. package/UI/Components/EventItem/EventItem.tsx +2 -2
  66. package/UI/Components/GanttChart/Bar/Index.tsx +1 -1
  67. package/UI/Components/Graphs/UptimeBarTooltip.tsx +30 -23
  68. package/UI/Components/Header/Header.tsx +7 -0
  69. package/UI/Components/Header/HeaderIconDropdownButton.tsx +2 -0
  70. package/UI/Components/Label/Label.tsx +2 -2
  71. package/UI/Components/LogsViewer/components/LogsAnalyticsView.tsx +22 -10
  72. package/UI/Components/LogsViewer/components/LogsHistogram.tsx +9 -3
  73. package/UI/Components/Markdown.tsx/MarkdownEditor.tsx +8 -8
  74. package/UI/Components/Markdown.tsx/MarkdownViewer.tsx +44 -20
  75. package/UI/Components/Modal/ConfirmModal.tsx +1 -1
  76. package/UI/Components/Modal/Modal.tsx +213 -121
  77. package/UI/Components/Modal/ModalFooter.tsx +33 -22
  78. package/UI/Components/ModelTable/TableView.tsx +1 -1
  79. package/UI/Components/MonitorGraphs/UptimeBarDayModal.tsx +20 -12
  80. package/UI/Components/Pill/Pill.tsx +21 -13
  81. package/UI/Components/StatusBubble/StatusBubble.tsx +3 -3
  82. package/UI/Components/TelemetryViewer/TelemetryViewer.tsx +7 -1
  83. package/UI/Components/TelemetryViewer/components/TelemetryHistogram.tsx +9 -3
  84. package/UI/Components/TelemetryViewer/components/TelemetrySearchBar.tsx +62 -4
  85. package/UI/Components/Workflow/Component.tsx +53 -33
  86. package/UI/Components/Workflow/ComponentPortViewer.tsx +6 -6
  87. package/UI/Components/Workflow/ComponentReturnValueViewer.tsx +8 -8
  88. package/UI/Components/Workflow/ComponentsModal.tsx +16 -9
  89. package/UI/Components/Workflow/Workflow.tsx +13 -11
  90. package/UI/Utils/Theme.ts +140 -0
  91. package/Utils/Dashboard/Components/DashboardLogChartComponent.ts +104 -0
  92. package/Utils/Dashboard/Components/Index.ts +7 -0
  93. package/Utils/Monitor/MonitorMetricType.ts +70 -2
  94. package/build/dist/Models/DatabaseModels/AIRun.js +52 -0
  95. package/build/dist/Models/DatabaseModels/AIRun.js.map +1 -1
  96. package/build/dist/Models/DatabaseModels/Project.js +62 -0
  97. package/build/dist/Models/DatabaseModels/Project.js.map +1 -1
  98. package/build/dist/Server/API/AIAgentTaskAPI.js +8 -23
  99. package/build/dist/Server/API/AIAgentTaskAPI.js.map +1 -1
  100. package/build/dist/Server/API/AIInvestigationAPI.js +107 -0
  101. package/build/dist/Server/API/AIInvestigationAPI.js.map +1 -0
  102. package/build/dist/Server/API/TelemetryAPI.js.map +1 -1
  103. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783598145111-AddEnableAutomaticIncidentInvestigationToProject.js +12 -0
  104. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783598145111-AddEnableAutomaticIncidentInvestigationToProject.js.map +1 -0
  105. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783615884106-AddInvestigationSubjectToAIRun.js +18 -0
  106. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783615884106-AddInvestigationSubjectToAIRun.js.map +1 -0
  107. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783632447975-AddEnableAutomaticAlertInvestigationToProject.js +12 -0
  108. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1783632447975-AddEnableAutomaticAlertInvestigationToProject.js.map +1 -0
  109. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +6 -0
  110. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  111. package/build/dist/Server/Services/AIAgentTaskService.js +59 -0
  112. package/build/dist/Server/Services/AIAgentTaskService.js.map +1 -1
  113. package/build/dist/Server/Services/AlertService.js +24 -0
  114. package/build/dist/Server/Services/AlertService.js.map +1 -1
  115. package/build/dist/Server/Services/AnalyticsDatabaseService.js +19 -0
  116. package/build/dist/Server/Services/AnalyticsDatabaseService.js.map +1 -1
  117. package/build/dist/Server/Services/IncidentService.js +24 -0
  118. package/build/dist/Server/Services/IncidentService.js.map +1 -1
  119. package/build/dist/Server/Services/IncidentStateTimelineService.js +19 -0
  120. package/build/dist/Server/Services/IncidentStateTimelineService.js.map +1 -1
  121. package/build/dist/Server/Services/LogAggregationService.js +21 -7
  122. package/build/dist/Server/Services/LogAggregationService.js.map +1 -1
  123. package/build/dist/Server/Services/MetricService.js +449 -7
  124. package/build/dist/Server/Services/MetricService.js.map +1 -1
  125. package/build/dist/Server/Utils/AI/Chat/ObservabilityAssistant.js +59 -11
  126. package/build/dist/Server/Utils/AI/Chat/ObservabilityAssistant.js.map +1 -1
  127. package/build/dist/Server/Utils/AI/Sentinel/AlertInvestigationRunner.js +119 -0
  128. package/build/dist/Server/Utils/AI/Sentinel/AlertInvestigationRunner.js.map +1 -0
  129. package/build/dist/Server/Utils/AI/Sentinel/IncidentInvestigationRunner.js +147 -0
  130. package/build/dist/Server/Utils/AI/Sentinel/IncidentInvestigationRunner.js.map +1 -0
  131. package/build/dist/Server/Utils/AI/Sentinel/IncidentPostmortemRunner.js +93 -0
  132. package/build/dist/Server/Utils/AI/Sentinel/IncidentPostmortemRunner.js.map +1 -0
  133. package/build/dist/Server/Utils/AI/Sentinel/SentinelInvestigationEngine.js +311 -0
  134. package/build/dist/Server/Utils/AI/Sentinel/SentinelInvestigationEngine.js.map +1 -0
  135. package/build/dist/Server/Utils/AI/Sentinel/SentinelMemory.js +143 -0
  136. package/build/dist/Server/Utils/AI/Sentinel/SentinelMemory.js.map +1 -0
  137. package/build/dist/Server/Utils/AI/Toolbox/Index.js +6 -0
  138. package/build/dist/Server/Utils/AI/Toolbox/Index.js.map +1 -1
  139. package/build/dist/Server/Utils/AI/Toolbox/SentinelActionTools.js +451 -0
  140. package/build/dist/Server/Utils/AI/Toolbox/SentinelActionTools.js.map +1 -0
  141. package/build/dist/Server/Utils/Monitor/Criteria/APIRequestCriteria.js +29 -0
  142. package/build/dist/Server/Utils/Monitor/Criteria/APIRequestCriteria.js.map +1 -1
  143. package/build/dist/Server/Utils/Monitor/MonitorMetricUtil.js +86 -2
  144. package/build/dist/Server/Utils/Monitor/MonitorMetricUtil.js.map +1 -1
  145. package/build/dist/Types/Dashboard/DashboardComponentType.js +1 -0
  146. package/build/dist/Types/Dashboard/DashboardComponentType.js.map +1 -1
  147. package/build/dist/Types/Dashboard/DashboardComponents/ComponentArgument.js +1 -0
  148. package/build/dist/Types/Dashboard/DashboardComponents/ComponentArgument.js.map +1 -1
  149. package/build/dist/Types/Dashboard/DashboardComponents/DashboardLogChartComponent.js +2 -0
  150. package/build/dist/Types/Dashboard/DashboardComponents/DashboardLogChartComponent.js.map +1 -0
  151. package/build/dist/Types/Dashboard/DashboardTemplates.js +9 -1
  152. package/build/dist/Types/Dashboard/DashboardTemplates.js.map +1 -1
  153. package/build/dist/Types/Date.js +32 -0
  154. package/build/dist/Types/Date.js.map +1 -1
  155. package/build/dist/Types/Monitor/CriteriaFilter.js +4 -0
  156. package/build/dist/Types/Monitor/CriteriaFilter.js.map +1 -1
  157. package/build/dist/Types/Monitor/HttpPhaseTimings.js +2 -0
  158. package/build/dist/Types/Monitor/HttpPhaseTimings.js.map +1 -0
  159. package/build/dist/Types/Monitor/MonitorMetricType.js +15 -0
  160. package/build/dist/Types/Monitor/MonitorMetricType.js.map +1 -1
  161. package/build/dist/Types/Monitor/PingMonitor/PingMonitorResponse.js +2 -0
  162. package/build/dist/Types/Monitor/PingMonitor/PingMonitorResponse.js.map +1 -0
  163. package/build/dist/Types/OnCallDutyPolicy/ScheduleShiftUtil.js +159 -0
  164. package/build/dist/Types/OnCallDutyPolicy/ScheduleShiftUtil.js.map +1 -0
  165. package/build/dist/UI/Components/Calendar/Calendar.js +2 -2
  166. package/build/dist/UI/Components/Calendar/Calendar.js.map +1 -1
  167. package/build/dist/UI/Components/Charts/ChartGroup/ChartGroup.js +2 -2
  168. package/build/dist/UI/Components/Charts/ChartGroup/ChartGroup.js.map +1 -1
  169. package/build/dist/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.js +7 -4
  170. package/build/dist/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.js.map +1 -1
  171. package/build/dist/UI/Components/Charts/ChartLibrary/BarChart/BarChart.js +4 -1
  172. package/build/dist/UI/Components/Charts/ChartLibrary/BarChart/BarChart.js.map +1 -1
  173. package/build/dist/UI/Components/Charts/ChartLibrary/LineChart/LineChart.js +6 -3
  174. package/build/dist/UI/Components/Charts/ChartLibrary/LineChart/LineChart.js.map +1 -1
  175. package/build/dist/UI/Components/CodeBlock/CodeBlock.js +1 -1
  176. package/build/dist/UI/Components/CodeBlock/CodeBlock.js.map +1 -1
  177. package/build/dist/UI/Components/CodeEditor/CodeEditor.js +3 -1
  178. package/build/dist/UI/Components/CodeEditor/CodeEditor.js.map +1 -1
  179. package/build/dist/UI/Components/Divider/Divider.js +1 -1
  180. package/build/dist/UI/Components/Divider/Divider.js.map +1 -1
  181. package/build/dist/UI/Components/Dropdown/Dropdown.js +10 -4
  182. package/build/dist/UI/Components/Dropdown/Dropdown.js.map +1 -1
  183. package/build/dist/UI/Components/EntityDropdown/EntityDropdown.js +76 -3
  184. package/build/dist/UI/Components/EntityDropdown/EntityDropdown.js.map +1 -1
  185. package/build/dist/UI/Components/ErrorBoundary.js +2 -1
  186. package/build/dist/UI/Components/ErrorBoundary.js.map +1 -1
  187. package/build/dist/UI/Components/EventItem/EventItem.js +2 -2
  188. package/build/dist/UI/Components/EventItem/EventItem.js.map +1 -1
  189. package/build/dist/UI/Components/GanttChart/Bar/Index.js +1 -1
  190. package/build/dist/UI/Components/GanttChart/Bar/Index.js.map +1 -1
  191. package/build/dist/UI/Components/Graphs/UptimeBarTooltip.js +29 -23
  192. package/build/dist/UI/Components/Graphs/UptimeBarTooltip.js.map +1 -1
  193. package/build/dist/UI/Components/Header/Header.js +1 -0
  194. package/build/dist/UI/Components/Header/Header.js.map +1 -1
  195. package/build/dist/UI/Components/Header/HeaderIconDropdownButton.js +1 -1
  196. package/build/dist/UI/Components/Header/HeaderIconDropdownButton.js.map +1 -1
  197. package/build/dist/UI/Components/Label/Label.js +2 -2
  198. package/build/dist/UI/Components/Label/Label.js.map +1 -1
  199. package/build/dist/UI/Components/LogsViewer/components/LogsAnalyticsView.js +20 -8
  200. package/build/dist/UI/Components/LogsViewer/components/LogsAnalyticsView.js.map +1 -1
  201. package/build/dist/UI/Components/LogsViewer/components/LogsHistogram.js +8 -2
  202. package/build/dist/UI/Components/LogsViewer/components/LogsHistogram.js.map +1 -1
  203. package/build/dist/UI/Components/Markdown.tsx/MarkdownEditor.js +8 -8
  204. package/build/dist/UI/Components/Markdown.tsx/MarkdownViewer.js +40 -20
  205. package/build/dist/UI/Components/Markdown.tsx/MarkdownViewer.js.map +1 -1
  206. package/build/dist/UI/Components/Modal/ConfirmModal.js +1 -1
  207. package/build/dist/UI/Components/Modal/ConfirmModal.js.map +1 -1
  208. package/build/dist/UI/Components/Modal/Modal.js +109 -51
  209. package/build/dist/UI/Components/Modal/Modal.js.map +1 -1
  210. package/build/dist/UI/Components/Modal/ModalFooter.js +13 -10
  211. package/build/dist/UI/Components/Modal/ModalFooter.js.map +1 -1
  212. package/build/dist/UI/Components/ModelTable/TableView.js +1 -1
  213. package/build/dist/UI/Components/ModelTable/TableView.js.map +1 -1
  214. package/build/dist/UI/Components/MonitorGraphs/UptimeBarDayModal.js +17 -12
  215. package/build/dist/UI/Components/MonitorGraphs/UptimeBarDayModal.js.map +1 -1
  216. package/build/dist/UI/Components/Pill/Pill.js +12 -13
  217. package/build/dist/UI/Components/Pill/Pill.js.map +1 -1
  218. package/build/dist/UI/Components/StatusBubble/StatusBubble.js +3 -3
  219. package/build/dist/UI/Components/StatusBubble/StatusBubble.js.map +1 -1
  220. package/build/dist/UI/Components/TelemetryViewer/TelemetryViewer.js +1 -1
  221. package/build/dist/UI/Components/TelemetryViewer/TelemetryViewer.js.map +1 -1
  222. package/build/dist/UI/Components/TelemetryViewer/components/TelemetryHistogram.js +8 -2
  223. package/build/dist/UI/Components/TelemetryViewer/components/TelemetryHistogram.js.map +1 -1
  224. package/build/dist/UI/Components/TelemetryViewer/components/TelemetrySearchBar.js +36 -6
  225. package/build/dist/UI/Components/TelemetryViewer/components/TelemetrySearchBar.js.map +1 -1
  226. package/build/dist/UI/Components/Workflow/Component.js +43 -33
  227. package/build/dist/UI/Components/Workflow/Component.js.map +1 -1
  228. package/build/dist/UI/Components/Workflow/ComponentPortViewer.js +6 -6
  229. package/build/dist/UI/Components/Workflow/ComponentPortViewer.js.map +1 -1
  230. package/build/dist/UI/Components/Workflow/ComponentReturnValueViewer.js +8 -8
  231. package/build/dist/UI/Components/Workflow/ComponentReturnValueViewer.js.map +1 -1
  232. package/build/dist/UI/Components/Workflow/ComponentsModal.js +15 -9
  233. package/build/dist/UI/Components/Workflow/ComponentsModal.js.map +1 -1
  234. package/build/dist/UI/Components/Workflow/Workflow.js +13 -11
  235. package/build/dist/UI/Components/Workflow/Workflow.js.map +1 -1
  236. package/build/dist/UI/Utils/Theme.js +106 -0
  237. package/build/dist/UI/Utils/Theme.js.map +1 -0
  238. package/build/dist/Utils/Dashboard/Components/DashboardLogChartComponent.js +92 -0
  239. package/build/dist/Utils/Dashboard/Components/DashboardLogChartComponent.js.map +1 -0
  240. package/build/dist/Utils/Dashboard/Components/Index.js +4 -0
  241. package/build/dist/Utils/Dashboard/Components/Index.js.map +1 -1
  242. package/build/dist/Utils/Monitor/MonitorMetricType.js +70 -3
  243. package/build/dist/Utils/Monitor/MonitorMetricType.js.map +1 -1
  244. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"MetricService.js","sourceRoot":"","sources":["../../../../Server/Services/MetricService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MetricService.js","sourceRoot":"","sources":["../../../../Server/Services/MetricService.ts"],"names":[],"mappings":"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"}
@@ -23,19 +23,43 @@ const MAX_OUTPUT_TOKENS = 1500;
23
23
  const TEMPERATURE = 0.2;
24
24
  export default class ObservabilityAssistant {
25
25
  static async answerQuestion(request) {
26
+ var _a, _b, _c, _d;
26
27
  const startedAtMs = Date.now();
28
+ const maxLlmCalls = (_a = request.maxLlmCalls) !== null && _a !== void 0 ? _a : MAX_LLM_CALLS;
29
+ const maxToolCalls = (_b = request.maxToolCalls) !== null && _b !== void 0 ? _b : MAX_TOOL_CALLS;
30
+ const maxWallClockMs = (_c = request.maxWallClockMs) !== null && _c !== void 0 ? _c : MAX_WALL_CLOCK_MS;
31
+ const maxOutputTokens = (_d = request.maxOutputTokens) !== null && _d !== void 0 ? _d : MAX_OUTPUT_TOKENS;
32
+ // Best-effort live-narration emitter — never throws into the loop.
33
+ const emitStep = async (step) => {
34
+ if (!request.onStep) {
35
+ return;
36
+ }
37
+ try {
38
+ await request.onStep(step);
39
+ }
40
+ catch (err) {
41
+ logger.error(`ObservabilityAssistant onStep failed: ${err}`);
42
+ }
43
+ };
27
44
  const toolContext = {
28
45
  projectId: request.projectId,
29
46
  props: request.props,
30
47
  };
48
+ let systemPromptContent = buildObservabilityChatSystemPrompt({
49
+ currentTime: OneUptimeDate.getCurrentDate(),
50
+ /*
51
+ * Slack/Teams and autonomous investigations have no approval UI, so this
52
+ * surface stays strictly read-only.
53
+ */
54
+ permissionMode: AIChatPermissionMode.ReadOnly,
55
+ });
56
+ if (request.systemInstructions) {
57
+ systemPromptContent += `\n\n${request.systemInstructions}`;
58
+ }
31
59
  const messages = [
32
60
  {
33
61
  role: "system",
34
- content: buildObservabilityChatSystemPrompt({
35
- currentTime: OneUptimeDate.getCurrentDate(),
36
- // Slack/Teams have no approval UI, so this surface stays read-only.
37
- permissionMode: AIChatPermissionMode.ReadOnly,
38
- }),
62
+ content: systemPromptContent,
39
63
  },
40
64
  ];
41
65
  for (const turn of (request.history || []).slice(-MAX_HISTORY_TURNS)) {
@@ -52,15 +76,16 @@ export default class ObservabilityAssistant {
52
76
  let modelName = undefined;
53
77
  let finalContent = "";
54
78
  while (true) {
55
- const budgetExhausted = llmCallCount >= MAX_LLM_CALLS - 1 ||
56
- toolCallCount >= MAX_TOOL_CALLS ||
57
- Date.now() - startedAtMs >= MAX_WALL_CLOCK_MS;
79
+ const budgetExhausted = llmCallCount >= maxLlmCalls - 1 ||
80
+ toolCallCount >= maxToolCalls ||
81
+ Date.now() - startedAtMs >= maxWallClockMs;
58
82
  if (budgetExhausted) {
59
83
  messages.push({
60
84
  role: "user",
61
85
  content: "Your query budget for this turn is exhausted. Answer now with the findings so far, clearly stating what you could and could not verify. Do not request more tools.",
62
86
  });
63
87
  }
88
+ await emitStep({ type: "llm_started" });
64
89
  const response = await AIService.executeWithLogging({
65
90
  projectId: request.projectId,
66
91
  userId: request.userId,
@@ -70,13 +95,17 @@ export default class ObservabilityAssistant {
70
95
  tools: budgetExhausted
71
96
  ? undefined
72
97
  : AIToolbox.getLlmToolDefinitions(AIChatPermissionMode.ReadOnly),
73
- maxTokens: MAX_OUTPUT_TOKENS,
98
+ maxTokens: maxOutputTokens,
74
99
  temperature: TEMPERATURE,
75
100
  // Chat-ops content is per-user — do not persist previews to LlmLog.
76
101
  storeContentPreviews: false,
77
102
  });
78
103
  llmCallCount++;
79
104
  totalTokens += response.llmLog.totalTokens || 0;
105
+ await emitStep({
106
+ type: "llm_completed",
107
+ totalTokens: response.llmLog.totalTokens || 0,
108
+ });
80
109
  if (!providerName) {
81
110
  providerName = response.llmLog.llmProviderName;
82
111
  modelName = response.llmLog.modelName;
@@ -90,8 +119,8 @@ export default class ObservabilityAssistant {
90
119
  toolCalls: response.toolCalls,
91
120
  });
92
121
  for (const toolCall of response.toolCalls) {
93
- const overBudget = toolCallCount >= MAX_TOOL_CALLS ||
94
- Date.now() - startedAtMs >= MAX_WALL_CLOCK_MS;
122
+ const overBudget = toolCallCount >= maxToolCalls ||
123
+ Date.now() - startedAtMs >= maxWallClockMs;
95
124
  if (overBudget) {
96
125
  messages.push({
97
126
  role: "tool",
@@ -109,12 +138,24 @@ export default class ObservabilityAssistant {
109
138
  });
110
139
  continue;
111
140
  }
141
+ const toolStartedAtMs = Date.now();
142
+ await emitStep({
143
+ type: "tool_started",
144
+ toolName: toolCall.name,
145
+ toolArguments: toolCall.arguments,
146
+ });
112
147
  const outcome = await AIToolbox.executeTool({
113
148
  name: toolCall.name,
114
149
  args: toolCall.arguments,
115
150
  ctx: toolContext,
116
151
  });
117
152
  if (!outcome.success || !outcome.result) {
153
+ await emitStep({
154
+ type: "tool_failed",
155
+ toolName: toolCall.name,
156
+ durationMs: Date.now() - toolStartedAtMs,
157
+ errorMessage: outcome.errorMessage || outcome.textForLlm,
158
+ });
118
159
  messages.push({
119
160
  role: "tool",
120
161
  toolCallId: toolCall.id,
@@ -131,6 +172,13 @@ export default class ObservabilityAssistant {
131
172
  rowCount: outcome.result.rowCount,
132
173
  target: outcome.result.citationTarget,
133
174
  });
175
+ await emitStep({
176
+ type: "tool_completed",
177
+ toolName: toolCall.name,
178
+ durationMs: Date.now() - toolStartedAtMs,
179
+ rowCount: outcome.result.rowCount,
180
+ citationId: citationId,
181
+ });
134
182
  const escapedText = escapeToolResultContent(outcome.textForLlm);
135
183
  messages.push({
136
184
  role: "tool",
@@ -1 +1 @@
1
- {"version":3,"file":"ObservabilityAssistant.js","sourceRoot":"","sources":["../../../../../../Server/Utils/AI/Chat/ObservabilityAssistant.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ObservabilityAssistant.js","sourceRoot":"","sources":["../../../../../../Server/Utils/AI/Chat/ObservabilityAssistant.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,119 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import OneUptimeDate from "../../../../Types/Date";
11
+ import { Blue500 } from "../../../../Types/BrandColors";
12
+ import { AlertFeedEventType } from "../../../../Models/DatabaseModels/AlertFeed";
13
+ import AlertFeedService from "../../../Services/AlertFeedService";
14
+ import AlertAIContextBuilder from "../AlertAIContextBuilder";
15
+ import SentinelInvestigationEngine from "./SentinelInvestigationEngine";
16
+ import logger from "../../Logger";
17
+ import CaptureSpan from "../../Telemetry/CaptureSpan";
18
+ /*
19
+ * Sentinel — alert investigation.
20
+ *
21
+ * Alerts are the earlier, "left of boom" signal. When a new alert is declared,
22
+ * Sentinel investigates it (read-only) and posts a cited root-cause analysis to
23
+ * the alert timeline + Slack/Teams. Symmetric to incident investigation and
24
+ * built on the same shared SentinelInvestigationEngine.
25
+ *
26
+ * Gated by the same per-project opt-in as incidents. Alert volume can be higher
27
+ * than incidents, so severity / rate gating is a deliberate follow-up.
28
+ */
29
+ export default class SentinelAlertInvestigationRunner {
30
+ /*
31
+ * Entry point called (fire-and-forget) from AlertService.onCreateSuccess.
32
+ * Never throws — all failures are logged and recorded on the AIRun.
33
+ */
34
+ static async investigateNewAlert(data) {
35
+ const { alertId, projectId } = data;
36
+ try {
37
+ if (!(await SentinelInvestigationEngine.isEnabledForProject(projectId, "Alert"))) {
38
+ return;
39
+ }
40
+ const contextData = await AlertAIContextBuilder.buildAlertContext({
41
+ alertId,
42
+ });
43
+ await SentinelInvestigationEngine.investigate({
44
+ projectId,
45
+ feature: "Sentinel Alert Investigation",
46
+ subjectAlertId: alertId,
47
+ contextSummary: this.buildAlertSummary(contextData),
48
+ postAnalysis: async (postData) => {
49
+ await AlertFeedService.createAlertFeedItem({
50
+ alertId,
51
+ projectId,
52
+ alertFeedEventType: AlertFeedEventType.RootCause,
53
+ displayColor: Blue500,
54
+ feedInfoInMarkdown: postData.analysisMarkdown,
55
+ /*
56
+ * Quiet mode: an inconclusive investigation posts to the timeline
57
+ * but does NOT loudly ping the workspace / on-call.
58
+ */
59
+ workspaceNotification: {
60
+ sendWorkspaceNotification: postData.isConfident,
61
+ },
62
+ });
63
+ },
64
+ });
65
+ }
66
+ catch (error) {
67
+ logger.error(`Sentinel: unexpected error investigating alert ${alertId.toString()}: ${error}`);
68
+ }
69
+ }
70
+ // Build a compact alert record to seed the investigation.
71
+ static buildAlertSummary(contextData) {
72
+ var _a, _b, _c;
73
+ const { alert, internalNotes } = contextData;
74
+ const lines = [];
75
+ lines.push("# Alert");
76
+ lines.push(`Title: ${alert.title || "N/A"}`);
77
+ if (alert.description) {
78
+ lines.push(`Description: ${alert.description}`);
79
+ }
80
+ lines.push(`Severity: ${((_a = alert.alertSeverity) === null || _a === void 0 ? void 0 : _a.name) || "N/A"}`);
81
+ lines.push(`Current state: ${((_b = alert.currentAlertState) === null || _b === void 0 ? void 0 : _b.name) || "N/A"}`);
82
+ lines.push(`Declared at: ${alert.createdAt
83
+ ? OneUptimeDate.getDateAsFormattedString(alert.createdAt)
84
+ : "N/A"}`);
85
+ if ((_c = alert.monitor) === null || _c === void 0 ? void 0 : _c.name) {
86
+ lines.push(`Affected monitor: ${alert.monitor.name}`);
87
+ }
88
+ if (alert.labels && alert.labels.length > 0) {
89
+ lines.push(`Labels: ${alert.labels
90
+ .map((l) => {
91
+ return l.name;
92
+ })
93
+ .filter(Boolean)
94
+ .join(", ")}`);
95
+ }
96
+ if (alert.rootCause) {
97
+ lines.push(`Root cause (as recorded so far): ${alert.rootCause}`);
98
+ }
99
+ const recentNotes = (internalNotes || [])
100
+ .slice(-5)
101
+ .map((note) => {
102
+ return note.note ? `- ${note.note}` : "";
103
+ })
104
+ .filter(Boolean);
105
+ if (recentNotes.length > 0) {
106
+ lines.push("");
107
+ lines.push("Recent internal notes:");
108
+ lines.push(...recentNotes);
109
+ }
110
+ return lines.join("\n");
111
+ }
112
+ }
113
+ __decorate([
114
+ CaptureSpan(),
115
+ __metadata("design:type", Function),
116
+ __metadata("design:paramtypes", [Object]),
117
+ __metadata("design:returntype", Promise)
118
+ ], SentinelAlertInvestigationRunner, "investigateNewAlert", null);
119
+ //# sourceMappingURL=AlertInvestigationRunner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AlertInvestigationRunner.js","sourceRoot":"","sources":["../../../../../../Server/Utils/AI/Sentinel/AlertInvestigationRunner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,147 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import OneUptimeDate from "../../../../Types/Date";
11
+ import { Blue500 } from "../../../../Types/BrandColors";
12
+ import { IncidentFeedEventType } from "../../../../Models/DatabaseModels/IncidentFeed";
13
+ import IncidentFeedService from "../../../Services/IncidentFeedService";
14
+ import IncidentAIContextBuilder from "../IncidentAIContextBuilder";
15
+ import SentinelInvestigationEngine from "./SentinelInvestigationEngine";
16
+ import SentinelMemory from "./SentinelMemory";
17
+ import logger from "../../Logger";
18
+ import CaptureSpan from "../../Telemetry/CaptureSpan";
19
+ /*
20
+ * Sentinel — incident investigation.
21
+ *
22
+ * When a new incident is declared, wakes Sentinel to investigate it (read-only)
23
+ * and post a cited root-cause analysis into the incident timeline + Slack/Teams
24
+ * — before the on-call engineer has finished reading the page. The heavy lifting
25
+ * (run lifecycle, the agent loop, confidence gating) lives in the shared
26
+ * SentinelInvestigationEngine; this file only assembles incident context and
27
+ * posts the result to the incident's feed.
28
+ *
29
+ * Built on the fire-and-forget async pattern already used throughout
30
+ * IncidentService.onCreateSuccess. See Internal/Roadmap/AISentinelExecution.md.
31
+ */
32
+ export default class SentinelIncidentInvestigationRunner {
33
+ /*
34
+ * Entry point called (fire-and-forget) from IncidentService.onCreateSuccess.
35
+ * Never throws — all failures are logged and recorded on the AIRun.
36
+ */
37
+ static async investigateNewIncident(data) {
38
+ const { incidentId, projectId } = data;
39
+ try {
40
+ if (!(await SentinelInvestigationEngine.isEnabledForProject(projectId, "Incident"))) {
41
+ return;
42
+ }
43
+ const contextData = await IncidentAIContextBuilder.buildIncidentContext({
44
+ incidentId,
45
+ includeWorkspaceMessages: false,
46
+ });
47
+ /*
48
+ * Recurrence memory: pull in past resolved incidents that share this
49
+ * incident's monitors/labels so Sentinel can recognise "I've seen this
50
+ * before" and reference the prior fix.
51
+ */
52
+ const priorCasesContext = await SentinelMemory.getPriorSimilarIncidentsContext({
53
+ projectId,
54
+ currentIncidentId: incidentId,
55
+ monitorNames: (contextData.incident.monitors || [])
56
+ .map((m) => {
57
+ return m.name || "";
58
+ })
59
+ .filter(Boolean),
60
+ labelNames: (contextData.incident.labels || [])
61
+ .map((l) => {
62
+ return l.name || "";
63
+ })
64
+ .filter(Boolean),
65
+ });
66
+ await SentinelInvestigationEngine.investigate({
67
+ projectId,
68
+ feature: "Sentinel Incident Investigation",
69
+ subjectIncidentId: incidentId,
70
+ contextSummary: this.buildIncidentSummary(contextData) + priorCasesContext,
71
+ postAnalysis: async (postData) => {
72
+ await IncidentFeedService.createIncidentFeedItem({
73
+ incidentId,
74
+ projectId,
75
+ incidentFeedEventType: IncidentFeedEventType.RootCause,
76
+ displayColor: Blue500,
77
+ feedInfoInMarkdown: postData.analysisMarkdown,
78
+ /*
79
+ * Quiet mode: an inconclusive investigation posts to the timeline
80
+ * but does NOT loudly ping the workspace / on-call.
81
+ */
82
+ workspaceNotification: {
83
+ sendWorkspaceNotification: postData.isConfident,
84
+ },
85
+ });
86
+ },
87
+ });
88
+ }
89
+ catch (error) {
90
+ logger.error(`Sentinel: unexpected error investigating incident ${incidentId.toString()}: ${error}`);
91
+ }
92
+ }
93
+ // Build a compact incident record to seed the investigation.
94
+ static buildIncidentSummary(contextData) {
95
+ var _a, _b;
96
+ const { incident, internalNotes } = contextData;
97
+ const lines = [];
98
+ lines.push("# Incident");
99
+ lines.push(`Title: ${incident.title || "N/A"}`);
100
+ if (incident.description) {
101
+ lines.push(`Description: ${incident.description}`);
102
+ }
103
+ lines.push(`Severity: ${((_a = incident.incidentSeverity) === null || _a === void 0 ? void 0 : _a.name) || "N/A"}`);
104
+ lines.push(`Current state: ${((_b = incident.currentIncidentState) === null || _b === void 0 ? void 0 : _b.name) || "N/A"}`);
105
+ lines.push(`Declared at: ${incident.createdAt
106
+ ? OneUptimeDate.getDateAsFormattedString(incident.createdAt)
107
+ : "N/A"}`);
108
+ if (incident.monitors && incident.monitors.length > 0) {
109
+ lines.push(`Affected monitors: ${incident.monitors
110
+ .map((m) => {
111
+ return m.name;
112
+ })
113
+ .filter(Boolean)
114
+ .join(", ")}`);
115
+ }
116
+ if (incident.labels && incident.labels.length > 0) {
117
+ lines.push(`Labels: ${incident.labels
118
+ .map((l) => {
119
+ return l.name;
120
+ })
121
+ .filter(Boolean)
122
+ .join(", ")}`);
123
+ }
124
+ if (incident.rootCause) {
125
+ lines.push(`Root cause (as recorded so far): ${incident.rootCause}`);
126
+ }
127
+ const recentNotes = (internalNotes || [])
128
+ .slice(-5)
129
+ .map((note) => {
130
+ return note.note ? `- ${note.note}` : "";
131
+ })
132
+ .filter(Boolean);
133
+ if (recentNotes.length > 0) {
134
+ lines.push("");
135
+ lines.push("Recent internal notes:");
136
+ lines.push(...recentNotes);
137
+ }
138
+ return lines.join("\n");
139
+ }
140
+ }
141
+ __decorate([
142
+ CaptureSpan(),
143
+ __metadata("design:type", Function),
144
+ __metadata("design:paramtypes", [Object]),
145
+ __metadata("design:returntype", Promise)
146
+ ], SentinelIncidentInvestigationRunner, "investigateNewIncident", null);
147
+ //# sourceMappingURL=IncidentInvestigationRunner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IncidentInvestigationRunner.js","sourceRoot":"","sources":["../../../../../../Server/Utils/AI/Sentinel/IncidentInvestigationRunner.ts"],"names":[],"mappings":"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"}