@oneuptime/common 11.5.7 → 11.5.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Models/DatabaseModels/AIAgentTaskPullRequest.ts +15 -6
- package/Models/DatabaseModels/AIRun.ts +68 -0
- package/Models/DatabaseModels/AIRunEvent.ts +34 -1
- package/Models/DatabaseModels/NetworkDeviceDiscoveryScan.ts +215 -0
- package/Models/DatabaseModels/Project.ts +25 -0
- package/Models/DatabaseModels/StatusPage.ts +42 -0
- package/Server/API/AIAgentTaskAPI.ts +38 -12
- package/Server/API/AIAgentTaskLogAPI.ts +49 -0
- package/Server/API/AIChatAPI.ts +16 -0
- package/Server/API/AIReadinessAPI.ts +84 -0
- package/Server/API/CodeFixRunAPI.ts +190 -57
- package/Server/API/TelemetryExceptionAPI.ts +6 -1
- package/Server/Infrastructure/Postgres/SchemaMigrations/1784105912819-BackfillCodeFixTaskType.ts +41 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1784124919694-AddAITaskNumberAndRunTranscript.ts +95 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1784135099754-AllowNullAiAgentOnPullRequest.ts +52 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1784137457184-AddEnableMcpServerToStatusPage.ts +30 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1784200000000-AddSnmpV3ColumnsToNetworkDeviceDiscoveryScan.ts +49 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +10 -0
- package/Server/Middleware/MasterAdminAuthorization.ts +1 -1
- package/Server/Middleware/ProjectAuthorization.ts +1 -1
- package/Server/Services/AIRunEventService.ts +15 -1
- package/Server/Services/AIRunService.ts +48 -12
- package/Server/Services/LlmProviderService.ts +2 -0
- package/Server/Services/ProjectService.ts +42 -0
- package/Server/Services/StatusPageService.ts +87 -0
- package/Server/Services/TelemetryExceptionService.ts +19 -90
- package/Server/Types/Markdown.ts +9 -9
- package/Server/Types/MarkdownSlugify.ts +47 -0
- package/Server/Utils/AI/AIRunPrivacyFilter.ts +106 -0
- package/Server/Utils/AI/AIRunTranscript.ts +240 -0
- package/Server/Utils/AI/Chat/ChatAgentRunner.ts +9 -0
- package/Server/Utils/AI/Chat/ObservabilityChatPrompt.ts +119 -5
- package/Server/Utils/AI/CodeFix/CodeFixAgentCompletion.ts +75 -0
- package/Server/Utils/AI/CodeFix/CodeFixReadiness.ts +235 -0
- package/Server/Utils/AI/SRE/Insights/FixRouting.ts +2 -3
- package/Server/Utils/AI/Toolbox/CodeTools.ts +883 -0
- package/Server/Utils/AI/Toolbox/CodeWriteTools.ts +519 -0
- package/Server/Utils/AI/Toolbox/Index.ts +27 -0
- package/Server/Utils/AI/Toolbox/ScheduledMaintenanceTools.ts +279 -0
- package/Server/Utils/AnalyticsDatabase/ClickhouseCapacity.ts +19 -1
- package/Server/Utils/CodeRepository/GitHub/GitHub.ts +600 -0
- package/Server/Utils/CodeRepository/StackTraceRepoResolver.ts +7 -2
- package/Server/Utils/LLM/LLMService.ts +397 -18
- package/Server/Utils/Monitor/NetworkDeviceHydrationUtil.ts +4 -11
- package/Tests/Models/StatusPageEnableMcpServer.test.ts +125 -0
- package/Tests/Server/Services/StatusPageServiceMcp.test.ts +223 -0
- package/Tests/Server/Services/TelemetryExceptionAIFixReadiness.test.ts +26 -3
- package/Tests/Server/Services/TelemetryExceptionCodeFixRun.test.ts +12 -0
- package/Tests/Server/Types/Markdown.test.ts +106 -0
- package/Tests/Server/Utils/AI/AIRunPrivacyFilter.test.ts +295 -0
- package/Tests/Server/Utils/AI/AIRunTranscript.test.ts +182 -0
- package/Tests/Server/Utils/AI/CodeFixReadiness.test.ts +411 -0
- package/Tests/Server/Utils/AI/CodeTools.test.ts +596 -0
- package/Tests/Server/Utils/AI/CodeWriteTools.test.ts +475 -0
- package/Tests/Server/Utils/AI/LLMServiceModelCompatibility.test.ts +548 -0
- package/Tests/Server/Utils/AI/ObservabilityChatPrompt.test.ts +142 -0
- package/Tests/Server/Utils/AI/ScheduledMaintenanceTools.test.ts +176 -0
- package/Tests/Server/Utils/AnalyticsDatabase/ClickhouseCapacity.test.ts +63 -0
- package/Tests/Server/Utils/GitHubGetFileContent.test.ts +197 -0
- package/Tests/Server/Utils/Monitor/NetworkDeviceHydrationUtil.test.ts +502 -0
- package/Tests/Types/AI/AIAgentTaskStatus.test.ts +7 -6
- package/Tests/Types/AI/AIChatPageContext.test.ts +0 -0
- package/Tests/Types/AI/AIRunStatus.test.ts +42 -0
- package/Tests/Types/Log/LogSeverity.test.ts +78 -0
- package/Tests/UI/Components/BasicFormDropdownNormalization.test.tsx +167 -0
- package/Tests/UI/Components/Charts/AxisTickColor.test.tsx +66 -0
- package/Tests/UI/Utils/AIChatExport/ChatWidgetData.test.ts +319 -0
- package/Tests/UI/Utils/AIChatExport/ChatWidgetMarkdown.test.ts +188 -0
- package/Types/AI/AIAgentTaskStatus.ts +13 -0
- package/Types/AI/AIChatPageContext.ts +137 -0
- package/Types/AI/AIChatTypes.ts +44 -0
- package/Types/AI/AIFixReadiness.ts +46 -0
- package/Types/AI/AIRunStatus.ts +11 -0
- package/Types/Email/EmailTemplateType.ts +2 -0
- package/Types/Log/LogSeverity.ts +61 -0
- package/Types/Monitor/SnmpMonitor/SnmpVersion.ts +40 -0
- package/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.tsx +8 -2
- package/UI/Components/Charts/ChartLibrary/BarChart/BarChart.tsx +3 -1
- package/UI/Components/Charts/ChartLibrary/LineChart/LineChart.tsx +8 -2
- package/UI/Components/EditionLabel/EditionLabel.tsx +821 -331
- package/UI/Components/Forms/BasicForm.tsx +26 -8
- package/UI/Styles/Theme.css +1314 -0
- package/UI/Utils/AIChatExport/ChatWidgetData.ts +316 -0
- package/UI/Utils/AIChatExport/ChatWidgetMarkdown.ts +349 -0
- package/UI/Utils/AIChatExport/ConversationMarkdown.ts +177 -0
- package/UI/Utils/AIChatExport/MarkdownBlocks.ts +327 -0
- package/UI/Utils/AIChatExport/MarkdownSafety.ts +215 -0
- package/UI/Utils/DownloadFile.ts +54 -0
- package/build/dist/Models/DatabaseModels/AIAgentTaskPullRequest.js +15 -7
- package/build/dist/Models/DatabaseModels/AIAgentTaskPullRequest.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AIRun.js +69 -0
- package/build/dist/Models/DatabaseModels/AIRun.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AIRunEvent.js +31 -0
- package/build/dist/Models/DatabaseModels/AIRunEvent.js.map +1 -1
- package/build/dist/Models/DatabaseModels/NetworkDeviceDiscoveryScan.js +225 -0
- package/build/dist/Models/DatabaseModels/NetworkDeviceDiscoveryScan.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Project.js +27 -0
- package/build/dist/Models/DatabaseModels/Project.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPage.js +43 -0
- package/build/dist/Models/DatabaseModels/StatusPage.js.map +1 -1
- package/build/dist/Server/API/AIAgentTaskAPI.js +37 -11
- package/build/dist/Server/API/AIAgentTaskAPI.js.map +1 -1
- package/build/dist/Server/API/AIAgentTaskLogAPI.js +32 -7
- package/build/dist/Server/API/AIAgentTaskLogAPI.js.map +1 -1
- package/build/dist/Server/API/AIChatAPI.js +9 -0
- package/build/dist/Server/API/AIChatAPI.js.map +1 -1
- package/build/dist/Server/API/AIReadinessAPI.js +57 -0
- package/build/dist/Server/API/AIReadinessAPI.js.map +1 -0
- package/build/dist/Server/API/CodeFixRunAPI.js +165 -51
- package/build/dist/Server/API/CodeFixRunAPI.js.map +1 -1
- package/build/dist/Server/API/TelemetryExceptionAPI.js +4 -0
- package/build/dist/Server/API/TelemetryExceptionAPI.js.map +1 -1
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784105912819-BackfillCodeFixTaskType.js +36 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784105912819-BackfillCodeFixTaskType.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784124919694-AddAITaskNumberAndRunTranscript.js +80 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784124919694-AddAITaskNumberAndRunTranscript.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784135099754-AllowNullAiAgentOnPullRequest.js +37 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784135099754-AllowNullAiAgentOnPullRequest.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784137457184-AddEnableMcpServerToStatusPage.js +23 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784137457184-AddEnableMcpServerToStatusPage.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784200000000-AddSnmpV3ColumnsToNetworkDeviceDiscoveryScan.js +22 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784200000000-AddSnmpV3ColumnsToNetworkDeviceDiscoveryScan.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +10 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
- package/build/dist/Server/Middleware/MasterAdminAuthorization.js +1 -1
- package/build/dist/Server/Middleware/ProjectAuthorization.js +1 -1
- package/build/dist/Server/Services/AIRunEventService.js +8 -0
- package/build/dist/Server/Services/AIRunEventService.js.map +1 -1
- package/build/dist/Server/Services/AIRunService.js +39 -3
- package/build/dist/Server/Services/AIRunService.js.map +1 -1
- package/build/dist/Server/Services/LlmProviderService.js +2 -0
- package/build/dist/Server/Services/LlmProviderService.js.map +1 -1
- package/build/dist/Server/Services/ProjectService.js +39 -0
- package/build/dist/Server/Services/ProjectService.js.map +1 -1
- package/build/dist/Server/Services/StatusPageService.js +81 -0
- package/build/dist/Server/Services/StatusPageService.js.map +1 -1
- package/build/dist/Server/Services/TelemetryExceptionService.js +14 -61
- package/build/dist/Server/Services/TelemetryExceptionService.js.map +1 -1
- package/build/dist/Server/Types/Markdown.js +8 -8
- package/build/dist/Server/Types/Markdown.js.map +1 -1
- package/build/dist/Server/Types/MarkdownSlugify.js +47 -0
- package/build/dist/Server/Types/MarkdownSlugify.js.map +1 -0
- package/build/dist/Server/Utils/AI/AIRunPrivacyFilter.js +82 -0
- package/build/dist/Server/Utils/AI/AIRunPrivacyFilter.js.map +1 -0
- package/build/dist/Server/Utils/AI/AIRunTranscript.js +180 -0
- package/build/dist/Server/Utils/AI/AIRunTranscript.js.map +1 -0
- package/build/dist/Server/Utils/AI/Chat/ChatAgentRunner.js +1 -0
- package/build/dist/Server/Utils/AI/Chat/ChatAgentRunner.js.map +1 -1
- package/build/dist/Server/Utils/AI/Chat/ObservabilityChatPrompt.js +103 -5
- package/build/dist/Server/Utils/AI/Chat/ObservabilityChatPrompt.js.map +1 -1
- package/build/dist/Server/Utils/AI/CodeFix/CodeFixAgentCompletion.js +55 -0
- package/build/dist/Server/Utils/AI/CodeFix/CodeFixAgentCompletion.js.map +1 -1
- package/build/dist/Server/Utils/AI/CodeFix/CodeFixReadiness.js +211 -0
- package/build/dist/Server/Utils/AI/CodeFix/CodeFixReadiness.js.map +1 -0
- package/build/dist/Server/Utils/AI/SRE/Insights/FixRouting.js.map +1 -1
- package/build/dist/Server/Utils/AI/Toolbox/CodeTools.js +654 -0
- package/build/dist/Server/Utils/AI/Toolbox/CodeTools.js.map +1 -0
- package/build/dist/Server/Utils/AI/Toolbox/CodeWriteTools.js +389 -0
- package/build/dist/Server/Utils/AI/Toolbox/CodeWriteTools.js.map +1 -0
- package/build/dist/Server/Utils/AI/Toolbox/Index.js +19 -0
- package/build/dist/Server/Utils/AI/Toolbox/Index.js.map +1 -1
- package/build/dist/Server/Utils/AI/Toolbox/ScheduledMaintenanceTools.js +239 -0
- package/build/dist/Server/Utils/AI/Toolbox/ScheduledMaintenanceTools.js.map +1 -0
- package/build/dist/Server/Utils/AnalyticsDatabase/ClickhouseCapacity.js +19 -1
- package/build/dist/Server/Utils/AnalyticsDatabase/ClickhouseCapacity.js.map +1 -1
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHub.js +439 -0
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHub.js.map +1 -1
- package/build/dist/Server/Utils/CodeRepository/StackTraceRepoResolver.js +1 -1
- package/build/dist/Server/Utils/CodeRepository/StackTraceRepoResolver.js.map +1 -1
- package/build/dist/Server/Utils/LLM/LLMService.js +275 -19
- package/build/dist/Server/Utils/LLM/LLMService.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/NetworkDeviceHydrationUtil.js +2 -11
- package/build/dist/Server/Utils/Monitor/NetworkDeviceHydrationUtil.js.map +1 -1
- package/build/dist/Types/AI/AIAgentTaskStatus.js +12 -0
- package/build/dist/Types/AI/AIAgentTaskStatus.js.map +1 -1
- package/build/dist/Types/AI/AIChatPageContext.js +101 -0
- package/build/dist/Types/AI/AIChatPageContext.js.map +1 -0
- package/build/dist/Types/AI/AIChatTypes.js +2 -0
- package/build/dist/Types/AI/AIChatTypes.js.map +1 -1
- package/build/dist/Types/AI/AIFixReadiness.js +9 -0
- package/build/dist/Types/AI/AIFixReadiness.js.map +1 -0
- package/build/dist/Types/AI/AIRunStatus.js +11 -0
- package/build/dist/Types/AI/AIRunStatus.js.map +1 -1
- package/build/dist/Types/Email/EmailTemplateType.js +1 -0
- package/build/dist/Types/Email/EmailTemplateType.js.map +1 -1
- package/build/dist/Types/Log/LogSeverity.js +56 -0
- package/build/dist/Types/Log/LogSeverity.js.map +1 -1
- package/build/dist/Types/Monitor/SnmpMonitor/SnmpVersion.js +38 -0
- package/build/dist/Types/Monitor/SnmpMonitor/SnmpVersion.js.map +1 -1
- package/build/dist/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.js +9 -2
- package/build/dist/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.js.map +1 -1
- package/build/dist/UI/Components/Charts/ChartLibrary/BarChart/BarChart.js +3 -1
- package/build/dist/UI/Components/Charts/ChartLibrary/BarChart/BarChart.js.map +1 -1
- package/build/dist/UI/Components/Charts/ChartLibrary/LineChart/LineChart.js +9 -2
- package/build/dist/UI/Components/Charts/ChartLibrary/LineChart/LineChart.js.map +1 -1
- package/build/dist/UI/Components/EditionLabel/EditionLabel.js +424 -139
- package/build/dist/UI/Components/EditionLabel/EditionLabel.js.map +1 -1
- package/build/dist/UI/Components/Forms/BasicForm.js +24 -6
- package/build/dist/UI/Components/Forms/BasicForm.js.map +1 -1
- package/build/dist/UI/Utils/AIChatExport/ChatWidgetData.js +217 -0
- package/build/dist/UI/Utils/AIChatExport/ChatWidgetData.js.map +1 -0
- package/build/dist/UI/Utils/AIChatExport/ChatWidgetMarkdown.js +234 -0
- package/build/dist/UI/Utils/AIChatExport/ChatWidgetMarkdown.js.map +1 -0
- package/build/dist/UI/Utils/AIChatExport/ConversationMarkdown.js +111 -0
- package/build/dist/UI/Utils/AIChatExport/ConversationMarkdown.js.map +1 -0
- package/build/dist/UI/Utils/AIChatExport/MarkdownBlocks.js +233 -0
- package/build/dist/UI/Utils/AIChatExport/MarkdownBlocks.js.map +1 -0
- package/build/dist/UI/Utils/AIChatExport/MarkdownSafety.js +134 -0
- package/build/dist/UI/Utils/AIChatExport/MarkdownSafety.js.map +1 -0
- package/build/dist/UI/Utils/DownloadFile.js +41 -0
- package/build/dist/UI/Utils/DownloadFile.js.map +1 -0
- package/package.json +5 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AIChatAPI.js","sourceRoot":"","sources":["../../../../Server/API/AIChatAPI.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AIChatAPI.js","sourceRoot":"","sources":["../../../../Server/API/AIChatAPI.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import Express from "../Utils/Express";
|
|
2
|
+
import Response from "../Utils/Response";
|
|
3
|
+
import UserMiddleware from "../Middleware/UserAuthorization";
|
|
4
|
+
import CommonAPI from "./CommonAPI";
|
|
5
|
+
import NotAuthorizedException from "../../Types/Exception/NotAuthorizedException";
|
|
6
|
+
import BadDataException from "../../Types/Exception/BadDataException";
|
|
7
|
+
import CodeFixReadiness from "../Utils/AI/CodeFix/CodeFixReadiness";
|
|
8
|
+
/*
|
|
9
|
+
* Project-wide "can AI actually do anything here?" — the gates a CodeFix run
|
|
10
|
+
* passes through, answered for the whole project rather than one exception.
|
|
11
|
+
* The AI Tasks page renders this instead of a static prerequisites banner, so
|
|
12
|
+
* what the user reads reflects what the server would actually decide.
|
|
13
|
+
*
|
|
14
|
+
* The per-exception equivalent lives at
|
|
15
|
+
* GET /telemetry-exception/ai-fix-readiness/:id; both share the checks in
|
|
16
|
+
* CodeFixReadiness, so they cannot drift apart.
|
|
17
|
+
*/
|
|
18
|
+
const router = Express.getRouter();
|
|
19
|
+
router.post("/ai-readiness/code-fix", UserMiddleware.getUserMiddleware, async (req, res, next) => {
|
|
20
|
+
var _a;
|
|
21
|
+
try {
|
|
22
|
+
const props = await CommonAPI.getDatabaseCommonInteractionProps(req);
|
|
23
|
+
/*
|
|
24
|
+
* Authorize explicitly. getUserMiddleware admits anonymous callers
|
|
25
|
+
* (it sets userType = Public and calls next()), and tenantId is read
|
|
26
|
+
* straight off the caller-supplied `tenantid` header before any auth
|
|
27
|
+
* runs — so neither is evidence of anything on its own. The readiness
|
|
28
|
+
* checks below all query with `isRoot: true`, which means there is no
|
|
29
|
+
* RBAC layer underneath to catch an unauthorized caller: this handler
|
|
30
|
+
* is the only gate. The per-exception sibling gets away without this
|
|
31
|
+
* because it loads the exception with the caller's props first, and
|
|
32
|
+
* derives the project from that authorized row.
|
|
33
|
+
*/
|
|
34
|
+
if (!props.userId) {
|
|
35
|
+
throw new NotAuthorizedException("AI readiness requires a logged-in user session.");
|
|
36
|
+
}
|
|
37
|
+
if (!props.tenantId) {
|
|
38
|
+
throw new BadDataException("Project ID is required (tenantid header).");
|
|
39
|
+
}
|
|
40
|
+
// Being logged in somewhere is not access to THIS project.
|
|
41
|
+
if (!((_a = props.userTenantAccessPermission) === null || _a === void 0 ? void 0 : _a[props.tenantId.toString()])) {
|
|
42
|
+
throw new NotAuthorizedException("You do not have access to this project.");
|
|
43
|
+
}
|
|
44
|
+
const readiness = await CodeFixReadiness.getProjectReadiness({
|
|
45
|
+
projectId: props.tenantId,
|
|
46
|
+
});
|
|
47
|
+
return Response.sendJsonObjectResponse(req, res, {
|
|
48
|
+
ready: readiness.ready,
|
|
49
|
+
checks: readiness.checks,
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
catch (err) {
|
|
53
|
+
next(err);
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
export default router;
|
|
57
|
+
//# sourceMappingURL=AIReadinessAPI.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AIReadinessAPI.js","sourceRoot":"","sources":["../../../../Server/API/AIReadinessAPI.ts"],"names":[],"mappings":"AAAA,OAAO,OAKN,MAAM,kBAAkB,CAAC;AAC1B,OAAO,QAAQ,MAAM,mBAAmB,CAAC;AACzC,OAAO,cAAc,MAAM,iCAAiC,CAAC;AAC7D,OAAO,SAAS,MAAM,aAAa,CAAC;AAEpC,OAAO,sBAAsB,MAAM,8CAA8C,CAAC;AAClF,OAAO,gBAAgB,MAAM,wCAAwC,CAAC;AAGtE,OAAO,gBAAgB,MAAM,sCAAsC,CAAC;AAEpE;;;;;;;;;GASG;AACH,MAAM,MAAM,GAAkB,OAAO,CAAC,SAAS,EAAE,CAAC;AAElD,MAAM,CAAC,IAAI,CACT,wBAAwB,EACxB,cAAc,CAAC,iBAAiB,EAChC,KAAK,EACH,GAAmB,EACnB,GAAoB,EACpB,IAAkB,EACH,EAAE;;IACjB,IAAI,CAAC;QACH,MAAM,KAAK,GACT,MAAM,SAAS,CAAC,iCAAiC,CAAC,GAAG,CAAC,CAAC;QAEzD;;;;;;;;;;WAUG;QACH,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAClB,MAAM,IAAI,sBAAsB,CAC9B,iDAAiD,CAClD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YACpB,MAAM,IAAI,gBAAgB,CAAC,2CAA2C,CAAC,CAAC;QAC1E,CAAC;QAED,2DAA2D;QAC3D,IAAI,CAAC,CAAA,MAAA,KAAK,CAAC,0BAA0B,0CAAG,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAA,EAAE,CAAC;YACnE,MAAM,IAAI,sBAAsB,CAC9B,yCAAyC,CAC1C,CAAC;QACJ,CAAC;QAED,MAAM,SAAS,GACb,MAAM,gBAAgB,CAAC,mBAAmB,CAAC;YACzC,SAAS,EAAE,KAAK,CAAC,QAAQ;SAC1B,CAAC,CAAC;QAEL,OAAO,QAAQ,CAAC,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE;YAC/C,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,MAAM,EAAE,SAAS,CAAC,MAA8B;SACjD,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,GAAG,CAAC,CAAC;IACZ,CAAC;AACH,CAAC,CACF,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
|
@@ -2,30 +2,41 @@ import UserMiddleware from "../Middleware/UserAuthorization";
|
|
|
2
2
|
import CommonAPI from "./CommonAPI";
|
|
3
3
|
import Express from "../Utils/Express";
|
|
4
4
|
import Response from "../Utils/Response";
|
|
5
|
+
import DatabaseCommonInteractionPropsUtil, { PermissionType, } from "../../Types/BaseDatabase/DatabaseCommonInteractionPropsUtil";
|
|
5
6
|
import ObjectID from "../../Types/ObjectID";
|
|
6
7
|
import BadDataException from "../../Types/Exception/BadDataException";
|
|
7
8
|
import NotAuthorizedException from "../../Types/Exception/NotAuthorizedException";
|
|
8
9
|
import SortOrder from "../../Types/BaseDatabase/SortOrder";
|
|
10
|
+
import Permission from "../../Types/Permission";
|
|
9
11
|
import AIRunType from "../../Types/AI/AIRunType";
|
|
10
12
|
import { CodeFixTaskTypeHelper } from "../../Types/AI/CodeFixTaskType";
|
|
11
13
|
import AIRun from "../../Models/DatabaseModels/AIRun";
|
|
12
14
|
import AIRunEvent from "../../Models/DatabaseModels/AIRunEvent";
|
|
15
|
+
import LlmLog from "../../Models/DatabaseModels/LlmLog";
|
|
13
16
|
import BaseModel from "../../Models/DatabaseModels/DatabaseBaseModel/DatabaseBaseModel";
|
|
14
17
|
import ProjectService from "../Services/ProjectService";
|
|
15
18
|
import AIRunService from "../Services/AIRunService";
|
|
16
19
|
import AIRunEventService from "../Services/AIRunEventService";
|
|
17
|
-
|
|
18
|
-
const MAX_LIMIT = 100;
|
|
20
|
+
import LlmLogService from "../Services/LlmLogService";
|
|
19
21
|
const MAX_EVENTS = 500;
|
|
20
22
|
/*
|
|
21
|
-
*
|
|
23
|
+
* The AI fix task detail page's event trail.
|
|
22
24
|
*
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
*
|
|
28
|
-
*
|
|
25
|
+
* The LIST page does NOT come through here — it reads AIRuns through the
|
|
26
|
+
* standard /ai-run CRUD, which AIRunService opens up for code-fix runs via a
|
|
27
|
+
* forced `runType = CodeFix OR userId = <caller>` clause (see
|
|
28
|
+
* Utils/AI/AIRunPrivacyFilter).
|
|
29
|
+
*
|
|
30
|
+
* The events cannot follow. AIRunEvent has NO runType column to key that
|
|
31
|
+
* clause off, and "userId is null" does not mean "system-authored" — the
|
|
32
|
+
* investigation engine writes null-userId events too — so project-scoping
|
|
33
|
+
* AIRunEvent wholesale would expose other members' CHAT toolArguments, which
|
|
34
|
+
* carry user-typed prompt content. Events are therefore still reached only
|
|
35
|
+
* through a run this endpoint has already authorized as runType = CodeFix.
|
|
36
|
+
*
|
|
37
|
+
* Access is gated explicitly, the same pattern as AIInvestigationAPI: confirm
|
|
38
|
+
* the caller can read the parent object (the project) under THEIR permissions,
|
|
39
|
+
* then read the run and its events as root.
|
|
29
40
|
*/
|
|
30
41
|
const RUN_SELECT = {
|
|
31
42
|
_id: true,
|
|
@@ -37,7 +48,58 @@ const RUN_SELECT = {
|
|
|
37
48
|
triggeredByTelemetryExceptionId: true,
|
|
38
49
|
totalTokens: true,
|
|
39
50
|
codeFixTaskType: true,
|
|
51
|
+
taskNumber: true,
|
|
52
|
+
attemptCount: true,
|
|
53
|
+
llmCallCount: true,
|
|
54
|
+
toolCallCount: true,
|
|
55
|
+
/*
|
|
56
|
+
* Deliberately NOT selected: totalCostInUSDCents. This endpoint's gate is
|
|
57
|
+
* Project read, which admits roles beyond AIRun's own table ACL, so it must
|
|
58
|
+
* not return more than the detail page renders — and nothing there renders
|
|
59
|
+
* per-run spend.
|
|
60
|
+
*/
|
|
61
|
+
};
|
|
62
|
+
/*
|
|
63
|
+
* The Logs page's event trail.
|
|
64
|
+
*
|
|
65
|
+
* toolArguments is deliberately NOT selected, even though this endpoint reads
|
|
66
|
+
* as root and could. A code-fix write_file call carries the file's full new
|
|
67
|
+
* content in its arguments, and that column's own read ACL stops at
|
|
68
|
+
* ProjectMember — narrower than this endpoint's Project-read gate, which also
|
|
69
|
+
* admits Viewers. Returning it would leak the same customer source code that
|
|
70
|
+
* contentPayload is stripped below to protect, to an even wider audience. The
|
|
71
|
+
* page never needed it: Logs.tsx renders tool arguments from
|
|
72
|
+
* contentPayload.responseToolCalls, the owner/admin-gated copy.
|
|
73
|
+
*/
|
|
74
|
+
const LOG_EVENT_SELECT = {
|
|
75
|
+
_id: true,
|
|
76
|
+
sequence: true,
|
|
77
|
+
eventType: true,
|
|
78
|
+
toolName: true,
|
|
79
|
+
resultSummary: true,
|
|
80
|
+
citationId: true,
|
|
81
|
+
createdAt: true,
|
|
82
|
+
contentPayload: true,
|
|
40
83
|
};
|
|
84
|
+
/*
|
|
85
|
+
* The per-LLM-call metering shown beside the transcript. Read under the
|
|
86
|
+
* CALLER's permissions (not root), so LlmLog's own table ACL decides who sees
|
|
87
|
+
* it rather than this endpoint's broader Project-read gate.
|
|
88
|
+
*/
|
|
89
|
+
const LLM_LOG_SELECT = {
|
|
90
|
+
_id: true,
|
|
91
|
+
modelName: true,
|
|
92
|
+
llmProviderName: true,
|
|
93
|
+
status: true,
|
|
94
|
+
statusMessage: true,
|
|
95
|
+
totalTokens: true,
|
|
96
|
+
completionTokens: true,
|
|
97
|
+
durationMs: true,
|
|
98
|
+
requestStartedAt: true,
|
|
99
|
+
requestCompletedAt: true,
|
|
100
|
+
createdAt: true,
|
|
101
|
+
};
|
|
102
|
+
const MAX_LLM_LOGS = 500;
|
|
41
103
|
/*
|
|
42
104
|
* Serialize a run with codeFixTaskType normalized: a null column means
|
|
43
105
|
* FixException (rows created before task recipes existed), and clients
|
|
@@ -57,42 +119,49 @@ export default class CodeFixRunAPI {
|
|
|
57
119
|
return this.router;
|
|
58
120
|
}
|
|
59
121
|
initRoutes() {
|
|
60
|
-
//
|
|
61
|
-
this.router.post("/code-fix-run/
|
|
122
|
+
// One run + its ordered glass-box event trail.
|
|
123
|
+
this.router.post("/code-fix-run/get/:runId", UserMiddleware.getUserMiddleware, async (req, res, next) => {
|
|
62
124
|
try {
|
|
63
125
|
const props = await this.getAccessCheckedProps(req);
|
|
64
|
-
const
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
limit = body["limit"];
|
|
68
|
-
}
|
|
69
|
-
limit = Math.min(Math.max(Math.floor(limit), 1), MAX_LIMIT);
|
|
70
|
-
let skip = 0;
|
|
71
|
-
if (typeof body["skip"] === "number") {
|
|
72
|
-
skip = Math.max(Math.floor(body["skip"]), 0);
|
|
126
|
+
const runIdString = req.params["runId"];
|
|
127
|
+
if (!runIdString) {
|
|
128
|
+
throw new BadDataException("runId is required.");
|
|
73
129
|
}
|
|
74
|
-
const
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
const
|
|
80
|
-
query:
|
|
130
|
+
const runId = new ObjectID(runIdString);
|
|
131
|
+
/*
|
|
132
|
+
* Root read, but pinned to the caller's (access-checked) project —
|
|
133
|
+
* a run id from another project resolves to "not found".
|
|
134
|
+
*/
|
|
135
|
+
const run = await AIRunService.findOneBy({
|
|
136
|
+
query: {
|
|
137
|
+
_id: runId.toString(),
|
|
138
|
+
projectId: props.tenantId,
|
|
139
|
+
runType: AIRunType.CodeFix,
|
|
140
|
+
},
|
|
81
141
|
select: RUN_SELECT,
|
|
82
|
-
sort: { createdAt: SortOrder.Descending },
|
|
83
|
-
limit: limit,
|
|
84
|
-
skip: skip,
|
|
85
142
|
props: { isRoot: true },
|
|
86
143
|
});
|
|
87
|
-
|
|
88
|
-
|
|
144
|
+
if (!run) {
|
|
145
|
+
throw new BadDataException("Code fix run not found (or it does not belong to this project).");
|
|
146
|
+
}
|
|
147
|
+
const events = await AIRunEventService.findBy({
|
|
148
|
+
query: { aiRunId: run.id },
|
|
149
|
+
select: {
|
|
150
|
+
_id: true,
|
|
151
|
+
sequence: true,
|
|
152
|
+
eventType: true,
|
|
153
|
+
toolName: true,
|
|
154
|
+
resultSummary: true,
|
|
155
|
+
createdAt: true,
|
|
156
|
+
},
|
|
157
|
+
sort: { sequence: SortOrder.Ascending },
|
|
158
|
+
limit: MAX_EVENTS,
|
|
159
|
+
skip: 0,
|
|
89
160
|
props: { isRoot: true },
|
|
90
161
|
});
|
|
91
162
|
Response.sendJsonObjectResponse(req, res, {
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
}),
|
|
95
|
-
count: count.toNumber(),
|
|
163
|
+
run: runToJson(run),
|
|
164
|
+
events: BaseModel.toJSONArray(events, AIRunEvent),
|
|
96
165
|
});
|
|
97
166
|
return;
|
|
98
167
|
}
|
|
@@ -101,8 +170,24 @@ export default class CodeFixRunAPI {
|
|
|
101
170
|
return;
|
|
102
171
|
}
|
|
103
172
|
});
|
|
104
|
-
|
|
105
|
-
|
|
173
|
+
/*
|
|
174
|
+
* The Logs page: the same run, its FULL event trail, and the per-call LLM
|
|
175
|
+
* metering — everything recorded about a run, for debugging one that went
|
|
176
|
+
* wrong.
|
|
177
|
+
*
|
|
178
|
+
* Two things are gated more tightly than the trail itself:
|
|
179
|
+
*
|
|
180
|
+
* - contentPayload (the verbatim prompts, model replies and tool output)
|
|
181
|
+
* is returned only to ProjectOwner/ProjectAdmin. It embeds customer
|
|
182
|
+
* source code, which is why the column's own read ACL is empty and why
|
|
183
|
+
* LlmLog redacts the same content — this endpoint is the single
|
|
184
|
+
* deliberate door to it, and it is not open to every project member.
|
|
185
|
+
*
|
|
186
|
+
* - LlmLog rows are read under the CALLER's permissions rather than as
|
|
187
|
+
* root, so LlmLog's table ACL — not this endpoint's broader Project-read
|
|
188
|
+
* gate — decides who sees the metering.
|
|
189
|
+
*/
|
|
190
|
+
this.router.post("/code-fix-run/logs/:runId", UserMiddleware.getUserMiddleware, async (req, res, next) => {
|
|
106
191
|
try {
|
|
107
192
|
const props = await this.getAccessCheckedProps(req);
|
|
108
193
|
const runIdString = req.params["runId"];
|
|
@@ -110,10 +195,6 @@ export default class CodeFixRunAPI {
|
|
|
110
195
|
throw new BadDataException("runId is required.");
|
|
111
196
|
}
|
|
112
197
|
const runId = new ObjectID(runIdString);
|
|
113
|
-
/*
|
|
114
|
-
* Root read, but pinned to the caller's (access-checked) project —
|
|
115
|
-
* a run id from another project resolves to "not found".
|
|
116
|
-
*/
|
|
117
198
|
const run = await AIRunService.findOneBy({
|
|
118
199
|
query: {
|
|
119
200
|
_id: runId.toString(),
|
|
@@ -126,24 +207,38 @@ export default class CodeFixRunAPI {
|
|
|
126
207
|
if (!run) {
|
|
127
208
|
throw new BadDataException("Code fix run not found (or it does not belong to this project).");
|
|
128
209
|
}
|
|
210
|
+
const canReadContent = this.callerCanReadRunContent(props);
|
|
129
211
|
const events = await AIRunEventService.findBy({
|
|
130
212
|
query: { aiRunId: run.id },
|
|
131
|
-
select:
|
|
132
|
-
_id: true,
|
|
133
|
-
sequence: true,
|
|
134
|
-
eventType: true,
|
|
135
|
-
toolName: true,
|
|
136
|
-
resultSummary: true,
|
|
137
|
-
createdAt: true,
|
|
138
|
-
},
|
|
213
|
+
select: LOG_EVENT_SELECT,
|
|
139
214
|
sort: { sequence: SortOrder.Ascending },
|
|
140
215
|
limit: MAX_EVENTS,
|
|
141
216
|
skip: 0,
|
|
142
217
|
props: { isRoot: true },
|
|
143
218
|
});
|
|
219
|
+
const eventsJson = BaseModel.toJSONArray(events, AIRunEvent);
|
|
220
|
+
if (!canReadContent) {
|
|
221
|
+
for (const eventJson of eventsJson) {
|
|
222
|
+
delete eventJson["contentPayload"];
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
/*
|
|
226
|
+
* Under the caller's own permissions on purpose — see the note
|
|
227
|
+
* above. A caller without LlmLog read simply gets no metering rows.
|
|
228
|
+
*/
|
|
229
|
+
const llmLogs = await LlmLogService.findBy({
|
|
230
|
+
query: { aiRunId: runId, projectId: props.tenantId },
|
|
231
|
+
select: LLM_LOG_SELECT,
|
|
232
|
+
sort: { createdAt: SortOrder.Ascending },
|
|
233
|
+
limit: MAX_LLM_LOGS,
|
|
234
|
+
skip: 0,
|
|
235
|
+
props: props,
|
|
236
|
+
});
|
|
144
237
|
Response.sendJsonObjectResponse(req, res, {
|
|
145
238
|
run: runToJson(run),
|
|
146
|
-
events:
|
|
239
|
+
events: eventsJson,
|
|
240
|
+
llmLogs: BaseModel.toJSONArray(llmLogs, LlmLog),
|
|
241
|
+
canReadContent: canReadContent,
|
|
147
242
|
});
|
|
148
243
|
return;
|
|
149
244
|
}
|
|
@@ -153,6 +248,25 @@ export default class CodeFixRunAPI {
|
|
|
153
248
|
}
|
|
154
249
|
});
|
|
155
250
|
}
|
|
251
|
+
/*
|
|
252
|
+
* Whether the caller may see a run's verbatim LLM/tool content. Project
|
|
253
|
+
* owners and admins only: the content embeds customer source code, so the
|
|
254
|
+
* bar is higher than the Project-read gate that admits them to the page.
|
|
255
|
+
*
|
|
256
|
+
* Read through getUserPermissions(Allow) rather than off
|
|
257
|
+
* userTenantAccessPermission directly, because that array holds GRANTS AND
|
|
258
|
+
* DENIALS together, discriminated only by isBlockPermission. Mapping it raw
|
|
259
|
+
* counts a team's explicit "block ProjectAdmin" entry as a grant of
|
|
260
|
+
* ProjectAdmin — inverting the control, so the admin action that restricts a
|
|
261
|
+
* team would be what hands it the source code.
|
|
262
|
+
*/
|
|
263
|
+
callerCanReadRunContent(props) {
|
|
264
|
+
const permissions = DatabaseCommonInteractionPropsUtil.getUserPermissions(props, PermissionType.Allow).map((userPermission) => {
|
|
265
|
+
return userPermission.permission;
|
|
266
|
+
});
|
|
267
|
+
return (permissions.includes(Permission.ProjectOwner) ||
|
|
268
|
+
permissions.includes(Permission.ProjectAdmin));
|
|
269
|
+
}
|
|
156
270
|
/*
|
|
157
271
|
* Requires a logged-in session and a tenant, then verifies project access
|
|
158
272
|
* by reading the project under the USER's permissions (null when the user
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CodeFixRunAPI.js","sourceRoot":"","sources":["../../../../Server/API/CodeFixRunAPI.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,iCAAiC,CAAC;AAC7D,OAAO,SAAS,MAAM,aAAa,CAAC;AACpC,OAAO,OAKN,MAAM,kBAAkB,CAAC;AAC1B,OAAO,QAAQ,MAAM,mBAAmB,CAAC;AAEzC,OAAO,QAAQ,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"CodeFixRunAPI.js","sourceRoot":"","sources":["../../../../Server/API/CodeFixRunAPI.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,6 +31,10 @@ const CODE_FIX_STATUS_TEXT = {
|
|
|
31
31
|
title: "Completed",
|
|
32
32
|
description: "The AI agent finished. Review the pull request it opened for the proposed fix.",
|
|
33
33
|
},
|
|
34
|
+
[AIRunStatus.NoFixFound]: {
|
|
35
|
+
title: "No Fix Found",
|
|
36
|
+
description: "The AI agent reviewed the code and did not find a fix to propose, so it opened no pull request.",
|
|
37
|
+
},
|
|
34
38
|
[AIRunStatus.Error]: {
|
|
35
39
|
title: "Error",
|
|
36
40
|
description: "The AI agent could not complete the fix.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TelemetryExceptionAPI.js","sourceRoot":"","sources":["../../../../Server/API/TelemetryExceptionAPI.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,MAAM,gDAAgD,CAAC;AAEhF,OAAO,gBAAgB,MAAM,wCAAwC,CAAC;AACtE,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,SAAS,MAAM,iEAAiE,CAAC;AACxF,OAAO,
|
|
1
|
+
{"version":3,"file":"TelemetryExceptionAPI.js","sourceRoot":"","sources":["../../../../Server/API/TelemetryExceptionAPI.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export class BackfillCodeFixTaskType1784105912819 {
|
|
2
|
+
constructor() {
|
|
3
|
+
this.name = "BackfillCodeFixTaskType1784105912819";
|
|
4
|
+
}
|
|
5
|
+
/*
|
|
6
|
+
* A null AIRun.codeFixTaskType on a CodeFix run has always MEANT
|
|
7
|
+
* FixException: every code-fix run created before task recipes existed was
|
|
8
|
+
* an exception fix, and both the server's read path
|
|
9
|
+
* (CodeFixTaskTypeHelper.fromDatabaseValue) and the dashboard normalize the
|
|
10
|
+
* null to FixException so nobody ever sees it.
|
|
11
|
+
*
|
|
12
|
+
* That normalization only covers reads. Now that the AI Tasks list filters
|
|
13
|
+
* through the standard CRUD, a "Fix Exception" filter compiles to
|
|
14
|
+
* `codeFixTaskType IN ('FixException')`, which NULL never matches — the
|
|
15
|
+
* oldest runs would silently vanish from the filtered list. The bespoke
|
|
16
|
+
* endpoint papered over this with an equalToOrNull query it built itself;
|
|
17
|
+
* that endpoint is gone, so the meaning gets written into the data instead.
|
|
18
|
+
*
|
|
19
|
+
* Scoped to runType = 'CodeFix': codeFixTaskType is meaningless on chat and
|
|
20
|
+
* investigation runs and must stay null there.
|
|
21
|
+
*/
|
|
22
|
+
async up(queryRunner) {
|
|
23
|
+
await queryRunner.query(`UPDATE "AIRun" SET "codeFixTaskType" = 'FixException' WHERE "runType" = 'CodeFix' AND "codeFixTaskType" IS NULL`);
|
|
24
|
+
}
|
|
25
|
+
/*
|
|
26
|
+
* Deliberately a no-op. The rows this set are indistinguishable from rows
|
|
27
|
+
* that already said FixException, so nulling them back would corrupt data
|
|
28
|
+
* this migration never touched. Reverting is also unnecessary: the read path
|
|
29
|
+
* still normalizes null to FixException, so an older build reads these rows
|
|
30
|
+
* exactly as it did before.
|
|
31
|
+
*/
|
|
32
|
+
async down(_queryRunner) {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=1784105912819-BackfillCodeFixTaskType.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"1784105912819-BackfillCodeFixTaskType.js","sourceRoot":"","sources":["../../../../../../Server/Infrastructure/Postgres/SchemaMigrations/1784105912819-BackfillCodeFixTaskType.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,oCAAoC;IAAjD;QAGS,SAAI,GAAG,sCAAsC,CAAC;IAmCvD,CAAC;IAjCC;;;;;;;;;;;;;;;;OAgBG;IACI,KAAK,CAAC,EAAE,CAAC,WAAwB;QACtC,MAAM,WAAW,CAAC,KAAK,CACrB,iHAAiH,CAClH,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,IAAI,CAAC,YAAyB;QACzC,OAAO;IACT,CAAC;CACF"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Two additions, both in service of debugging a code-fix run that went wrong.
|
|
3
|
+
*
|
|
4
|
+
* 1. AIRun.taskNumber + Project.aiRunCounter — the per-project "#42" handle,
|
|
5
|
+
* allocated exactly like Incident.incidentNumber (ProjectService holds the
|
|
6
|
+
* counter behind a Redis semaphore; see incrementAndGetAIRunCounter).
|
|
7
|
+
* 2. AIRunEvent.contentPayload — the verbatim prompt/response/tool transcript.
|
|
8
|
+
*
|
|
9
|
+
* The DDL here was produced by `npm run generate-postgres-migration`. Two
|
|
10
|
+
* unrelated OnCallDutyPolicyScheduleLayer default changes the generator also
|
|
11
|
+
* emitted (pre-existing whitespace drift between the entity defaults and the
|
|
12
|
+
* local schema) were dropped: they are not part of this change.
|
|
13
|
+
*
|
|
14
|
+
* The backfill rides along in the same migration rather than a follow-up so
|
|
15
|
+
* there is no window in which existing tasks are on-screen with a blank
|
|
16
|
+
* number.
|
|
17
|
+
*/
|
|
18
|
+
export class AddAITaskNumberAndRunTranscript1784124919694 {
|
|
19
|
+
constructor() {
|
|
20
|
+
this.name = "AddAITaskNumberAndRunTranscript1784124919694";
|
|
21
|
+
}
|
|
22
|
+
async up(queryRunner) {
|
|
23
|
+
await queryRunner.query(`ALTER TABLE "Project" ADD "aiRunCounter" integer NOT NULL DEFAULT '0'`);
|
|
24
|
+
await queryRunner.query(`ALTER TABLE "AIRun" ADD "taskNumber" integer`);
|
|
25
|
+
await queryRunner.query(`ALTER TABLE "AIRunEvent" ADD "contentPayload" jsonb`);
|
|
26
|
+
await queryRunner.query(`CREATE INDEX "IDX_ede30aa8b14a167586bd555fa9" ON "AIRun" ("taskNumber") `);
|
|
27
|
+
/*
|
|
28
|
+
* Number the tasks that already exist, oldest first, per project — so the
|
|
29
|
+
* list does not read "#1, -, -, #2" the day this ships. Scoped to
|
|
30
|
+
* runType = 'CodeFix' because only code-fix runs are tasks; chat and
|
|
31
|
+
* investigation runs share this table and must stay null.
|
|
32
|
+
*
|
|
33
|
+
* Soft-deleted rows are numbered too. Not to prevent reuse (a skipped row
|
|
34
|
+
* would hold no number to reuse) but to keep the sequence a stable
|
|
35
|
+
* function of creation order: a run that is soft-deleted later must not
|
|
36
|
+
* renumber the runs after it, and an undeleted row must not collide with
|
|
37
|
+
* a number already handed out. The cost is gaps in what the list shows,
|
|
38
|
+
* which is the same thing incidents do.
|
|
39
|
+
*/
|
|
40
|
+
await queryRunner.query(`
|
|
41
|
+
WITH numbered AS (
|
|
42
|
+
SELECT
|
|
43
|
+
"_id",
|
|
44
|
+
ROW_NUMBER() OVER (
|
|
45
|
+
PARTITION BY "projectId"
|
|
46
|
+
ORDER BY "createdAt" ASC, "_id" ASC
|
|
47
|
+
) AS "rowNumber"
|
|
48
|
+
FROM "AIRun"
|
|
49
|
+
WHERE "runType" = 'CodeFix'
|
|
50
|
+
)
|
|
51
|
+
UPDATE "AIRun"
|
|
52
|
+
SET "taskNumber" = numbered."rowNumber"
|
|
53
|
+
FROM numbered
|
|
54
|
+
WHERE "AIRun"."_id" = numbered."_id"
|
|
55
|
+
`);
|
|
56
|
+
/*
|
|
57
|
+
* Advance each project's counter past what the backfill just handed out,
|
|
58
|
+
* so the next allocation continues the sequence instead of restarting at
|
|
59
|
+
* #1 and colliding. Projects with no code-fix runs keep the 0 default.
|
|
60
|
+
*/
|
|
61
|
+
await queryRunner.query(`
|
|
62
|
+
UPDATE "Project"
|
|
63
|
+
SET "aiRunCounter" = "maxPerProject"."maxTaskNumber"
|
|
64
|
+
FROM (
|
|
65
|
+
SELECT "projectId", MAX("taskNumber") AS "maxTaskNumber"
|
|
66
|
+
FROM "AIRun"
|
|
67
|
+
WHERE "runType" = 'CodeFix' AND "taskNumber" IS NOT NULL
|
|
68
|
+
GROUP BY "projectId"
|
|
69
|
+
) AS "maxPerProject"
|
|
70
|
+
WHERE "Project"."_id" = "maxPerProject"."projectId"
|
|
71
|
+
`);
|
|
72
|
+
}
|
|
73
|
+
async down(queryRunner) {
|
|
74
|
+
await queryRunner.query(`DROP INDEX "public"."IDX_ede30aa8b14a167586bd555fa9"`);
|
|
75
|
+
await queryRunner.query(`ALTER TABLE "AIRunEvent" DROP COLUMN "contentPayload"`);
|
|
76
|
+
await queryRunner.query(`ALTER TABLE "AIRun" DROP COLUMN "taskNumber"`);
|
|
77
|
+
await queryRunner.query(`ALTER TABLE "Project" DROP COLUMN "aiRunCounter"`);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=1784124919694-AddAITaskNumberAndRunTranscript.js.map
|