@oneuptime/common 11.5.11 → 11.5.13
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/AnalyticsModels/NetworkFlow.ts +12 -1
- package/Models/DatabaseModels/AIInsight.ts +30 -0
- package/Models/DatabaseModels/Project.ts +30 -0
- package/Models/DatabaseModels/TelemetryException.ts +128 -0
- package/Server/API/AIAgentDataAPI.ts +129 -5
- package/Server/API/AIInvestigationAPI.ts +87 -0
- package/Server/API/StatusPageAPI.ts +14 -1
- package/Server/Infrastructure/Postgres/SchemaMigrations/1784640000000-AddExceptionTriageAndPrivacyColumns.ts +56 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +2 -2
- package/Server/Services/AIRunService.ts +8 -0
- package/Server/Services/IncidentService.ts +62 -67
- package/Server/Services/MonitorGroupService.ts +15 -2
- package/Server/Services/MonitorService.ts +91 -3
- package/Server/Services/MonitorStatusTimelineService.ts +285 -100
- package/Server/Services/StatusPageService.ts +59 -34
- package/Server/Services/TelemetryExceptionService.ts +320 -24
- package/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.ts +15 -4
- package/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.ts +15 -4
- package/Server/Utils/AI/SRE/Insights/InsightScanner.ts +222 -24
- package/Server/Utils/AI/SRE/Insights/InsightTriageRunner.ts +225 -9
- package/Server/Utils/AI/SRE/SubjectCodeFixRun.ts +39 -0
- package/Server/Utils/AI/SRE/TelemetryImprovementTaskTrigger.ts +114 -0
- package/Server/Utils/Monitor/MonitorResource.ts +43 -14
- package/Server/Utils/Monitor/MonitorStatusTimeline.ts +32 -7
- package/Server/Utils/Monitor/MonitorStatusTimelineReconciler.ts +362 -0
- package/Server/Utils/Telemetry/ExceptionSanitizer.ts +222 -0
- package/Tests/Server/Services/MonitorStatusTimelineService.test.ts +235 -0
- package/Tests/Server/Services/TelemetryExceptionCodeFixRun.test.ts +205 -1
- package/Tests/Server/Utils/AI/Insights/InsightScanner.test.ts +150 -141
- package/Tests/Server/Utils/AI/Insights/InsightTriageRunner.test.ts +277 -1
- package/Tests/Server/Utils/ExceptionSanitizer.test.ts +70 -0
- package/Tests/Server/Utils/InsightTriageClassification.test.ts +57 -0
- package/Tests/Server/Utils/Monitor/MonitorStatusTimelineReconciler.test.ts +555 -0
- package/Tests/Server/Utils/TelemetryImprovementTaskTrigger.test.ts +141 -0
- package/Tests/Types/Database/CompareOperatorWireSerialization.test.ts +216 -0
- package/Tests/Types/Database/GreaterThan.test.ts +5 -1
- package/Tests/Types/Database/GreaterThanOrEqual.test.ts +5 -1
- package/Tests/Types/Database/GreaterThanOrNull.test.ts +24 -1
- package/Tests/Types/Database/LessThan.test.ts +5 -1
- package/Tests/Types/Database/LessThanOrEqual.test.ts +24 -1
- package/Tests/Types/Database/LessThanOrNull.test.ts +5 -1
- package/Tests/UI/Components/ModelTableSelectFromColumns.test.ts +259 -0
- package/Tests/Utils/Uptime/UptimeUtil.test.ts +726 -0
- package/Types/AI/CodeFixTaskContext.ts +6 -0
- package/Types/AI/CodeFixTaskType.ts +38 -1
- package/Types/AI/ExceptionAIClassification.ts +27 -0
- package/Types/BaseDatabase/GreaterThan.ts +8 -1
- package/Types/BaseDatabase/GreaterThanOrEqual.ts +8 -1
- package/Types/BaseDatabase/GreaterThanOrNull.ts +9 -1
- package/Types/BaseDatabase/LessThan.ts +8 -1
- package/Types/BaseDatabase/LessThanOrEqual.ts +9 -1
- package/Types/BaseDatabase/LessThanOrNull.ts +8 -1
- package/Types/Log/LogScrubPatternType.ts +7 -0
- package/Types/Trace/TraceScrubPatternType.ts +7 -0
- package/UI/Components/ModelTable/BaseModelTable.tsx +15 -46
- package/UI/Components/ModelTable/SelectFromColumns.ts +129 -0
- package/Utils/StatusPage/ResourceUptime.ts +11 -1
- package/Utils/Uptime/UptimeUtil.ts +142 -36
- package/build/dist/Models/AnalyticsModels/NetworkFlow.js +12 -1
- package/build/dist/Models/AnalyticsModels/NetworkFlow.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AIInsight.js +31 -0
- package/build/dist/Models/DatabaseModels/AIInsight.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Project.js +31 -0
- package/build/dist/Models/DatabaseModels/Project.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TelemetryException.js +134 -0
- package/build/dist/Models/DatabaseModels/TelemetryException.js.map +1 -1
- package/build/dist/Server/API/AIAgentDataAPI.js +97 -8
- package/build/dist/Server/API/AIAgentDataAPI.js.map +1 -1
- package/build/dist/Server/API/AIInvestigationAPI.js +55 -0
- package/build/dist/Server/API/AIInvestigationAPI.js.map +1 -1
- package/build/dist/Server/API/StatusPageAPI.js +12 -2
- package/build/dist/Server/API/StatusPageAPI.js.map +1 -1
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784640000000-AddExceptionTriageAndPrivacyColumns.js +33 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784640000000-AddExceptionTriageAndPrivacyColumns.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +2 -2
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
- package/build/dist/Server/Services/AIRunService.js +9 -2
- package/build/dist/Server/Services/AIRunService.js.map +1 -1
- package/build/dist/Server/Services/IncidentService.js +47 -56
- package/build/dist/Server/Services/IncidentService.js.map +1 -1
- package/build/dist/Server/Services/MonitorGroupService.js +15 -2
- package/build/dist/Server/Services/MonitorGroupService.js.map +1 -1
- package/build/dist/Server/Services/MonitorService.js +66 -3
- package/build/dist/Server/Services/MonitorService.js.map +1 -1
- package/build/dist/Server/Services/MonitorStatusTimelineService.js +244 -102
- package/build/dist/Server/Services/MonitorStatusTimelineService.js.map +1 -1
- package/build/dist/Server/Services/StatusPageService.js +57 -33
- package/build/dist/Server/Services/StatusPageService.js.map +1 -1
- package/build/dist/Server/Services/TelemetryExceptionService.js +263 -22
- package/build/dist/Server/Services/TelemetryExceptionService.js.map +1 -1
- package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.js +12 -4
- package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.js.map +1 -1
- package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.js +12 -4
- package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.js.map +1 -1
- package/build/dist/Server/Utils/AI/SRE/Insights/InsightScanner.js +193 -22
- package/build/dist/Server/Utils/AI/SRE/Insights/InsightScanner.js.map +1 -1
- package/build/dist/Server/Utils/AI/SRE/Insights/InsightTriageRunner.js +178 -9
- package/build/dist/Server/Utils/AI/SRE/Insights/InsightTriageRunner.js.map +1 -1
- package/build/dist/Server/Utils/AI/SRE/SubjectCodeFixRun.js +37 -0
- package/build/dist/Server/Utils/AI/SRE/SubjectCodeFixRun.js.map +1 -1
- package/build/dist/Server/Utils/AI/SRE/TelemetryImprovementTaskTrigger.js +98 -0
- package/build/dist/Server/Utils/AI/SRE/TelemetryImprovementTaskTrigger.js.map +1 -0
- package/build/dist/Server/Utils/Monitor/MonitorResource.js +34 -12
- package/build/dist/Server/Utils/Monitor/MonitorResource.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorStatusTimeline.js +25 -8
- package/build/dist/Server/Utils/Monitor/MonitorStatusTimeline.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorStatusTimelineReconciler.js +268 -0
- package/build/dist/Server/Utils/Monitor/MonitorStatusTimelineReconciler.js.map +1 -0
- package/build/dist/Server/Utils/Telemetry/ExceptionSanitizer.js +149 -0
- package/build/dist/Server/Utils/Telemetry/ExceptionSanitizer.js.map +1 -0
- package/build/dist/Types/AI/CodeFixTaskType.js +38 -1
- package/build/dist/Types/AI/CodeFixTaskType.js.map +1 -1
- package/build/dist/Types/AI/ExceptionAIClassification.js +28 -0
- package/build/dist/Types/AI/ExceptionAIClassification.js.map +1 -0
- package/build/dist/Types/BaseDatabase/GreaterThan.js +8 -1
- package/build/dist/Types/BaseDatabase/GreaterThan.js.map +1 -1
- package/build/dist/Types/BaseDatabase/GreaterThanOrEqual.js +8 -1
- package/build/dist/Types/BaseDatabase/GreaterThanOrEqual.js.map +1 -1
- package/build/dist/Types/BaseDatabase/GreaterThanOrNull.js +9 -1
- package/build/dist/Types/BaseDatabase/GreaterThanOrNull.js.map +1 -1
- package/build/dist/Types/BaseDatabase/LessThan.js +8 -1
- package/build/dist/Types/BaseDatabase/LessThan.js.map +1 -1
- package/build/dist/Types/BaseDatabase/LessThanOrEqual.js +9 -1
- package/build/dist/Types/BaseDatabase/LessThanOrEqual.js.map +1 -1
- package/build/dist/Types/BaseDatabase/LessThanOrNull.js +8 -1
- package/build/dist/Types/BaseDatabase/LessThanOrNull.js.map +1 -1
- package/build/dist/Types/Log/LogScrubPatternType.js +7 -0
- package/build/dist/Types/Log/LogScrubPatternType.js.map +1 -1
- package/build/dist/Types/Trace/TraceScrubPatternType.js +7 -0
- package/build/dist/Types/Trace/TraceScrubPatternType.js.map +1 -1
- package/build/dist/UI/Components/ModelTable/BaseModelTable.js +12 -37
- package/build/dist/UI/Components/ModelTable/BaseModelTable.js.map +1 -1
- package/build/dist/UI/Components/ModelTable/SelectFromColumns.js +82 -0
- package/build/dist/UI/Components/ModelTable/SelectFromColumns.js.map +1 -0
- package/build/dist/Utils/StatusPage/ResourceUptime.js +4 -1
- package/build/dist/Utils/StatusPage/ResourceUptime.js.map +1 -1
- package/build/dist/Utils/Uptime/UptimeUtil.js +86 -33
- package/build/dist/Utils/Uptime/UptimeUtil.js.map +1 -1
- package/package.json +1 -1
- package/Server/Infrastructure/Postgres/SchemaMigrations/1784401962564-MigrationName.ts +0 -101
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784401962564-MigrationName.js +0 -40
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784401962564-MigrationName.js.map +0 -1
|
@@ -497,24 +497,51 @@ export class Service extends DatabaseService {
|
|
|
497
497
|
const endDate = data.endDate;
|
|
498
498
|
let monitorStatusTimelines = [];
|
|
499
499
|
if (data.monitorIds.length > 0) {
|
|
500
|
+
/*
|
|
501
|
+
* Select every row that actually OVERLAPS [startDate, endDate]:
|
|
502
|
+
* it started on or before the window ends, and it either ended on or after the window
|
|
503
|
+
* started or is still open (endsAt IS NULL).
|
|
504
|
+
*
|
|
505
|
+
* This used to be two queries that were concatenated - one keyed on
|
|
506
|
+
* `endsAt BETWEEN startDate AND endDate`, and one on `endsAt IS NULL` with NO date bound
|
|
507
|
+
* at all. That had two bugs. The unbounded open-row query pulled orphaned rows from
|
|
508
|
+
* months (or years) before the window into the report, and the endsAt-only window
|
|
509
|
+
* excluded any event that spanned the ENTIRE window but closed after it, so a total
|
|
510
|
+
* outage could render as a silent 100% uptime.
|
|
511
|
+
*
|
|
512
|
+
* `greaterThanEqualToOrNull` emits `(endsAt >= :date or endsAt IS NULL)`. Note that
|
|
513
|
+
* `greaterThanOrNull` emits exactly the same `>=` SQL despite its name, so the explicit
|
|
514
|
+
* name is used here to keep the intent readable.
|
|
515
|
+
*
|
|
516
|
+
* Supported by the (monitorId, startsAt) and (endsAt) indexes.
|
|
517
|
+
*/
|
|
500
518
|
monitorStatusTimelines = await MonitorStatusTimelineService.findBy({
|
|
501
519
|
query: {
|
|
502
520
|
monitorId: QueryHelper.any(data.monitorIds),
|
|
503
|
-
|
|
521
|
+
startsAt: QueryHelper.lessThanEqualTo(endDate),
|
|
522
|
+
endsAt: QueryHelper.greaterThanEqualToOrNull(startDate),
|
|
504
523
|
},
|
|
505
524
|
select: {
|
|
506
525
|
monitorId: true,
|
|
507
526
|
createdAt: true,
|
|
508
527
|
endsAt: true,
|
|
509
528
|
startsAt: true,
|
|
529
|
+
/*
|
|
530
|
+
* `_id` is selected explicitly because UptimeUtil reads `monitorStatus.id` (a getter
|
|
531
|
+
* over `_id`) to match events against the downtime statuses. It works today only
|
|
532
|
+
* because SelectUtil.sanitizeSelect force injects `_id: true` into every relation
|
|
533
|
+
* select - state that dependency here rather than rely on it implicitly. Note `_id`
|
|
534
|
+
* is the decorated primary column; `id` itself has no TableColumnMetadata.
|
|
535
|
+
*/
|
|
510
536
|
monitorStatus: {
|
|
537
|
+
_id: true,
|
|
511
538
|
name: true,
|
|
512
539
|
color: true,
|
|
513
540
|
priority: true,
|
|
514
541
|
},
|
|
515
542
|
},
|
|
516
543
|
sort: {
|
|
517
|
-
|
|
544
|
+
startsAt: SortOrder.Descending,
|
|
518
545
|
},
|
|
519
546
|
skip: 0,
|
|
520
547
|
limit: LIMIT_MAX, // This can be optimized.
|
|
@@ -522,37 +549,17 @@ export class Service extends DatabaseService {
|
|
|
522
549
|
isRoot: true,
|
|
523
550
|
},
|
|
524
551
|
});
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
monitorId: true,
|
|
532
|
-
createdAt: true,
|
|
533
|
-
endsAt: true,
|
|
534
|
-
startsAt: true,
|
|
535
|
-
monitorStatus: {
|
|
536
|
-
name: true,
|
|
537
|
-
color: true,
|
|
538
|
-
priority: true,
|
|
539
|
-
},
|
|
540
|
-
},
|
|
541
|
-
sort: {
|
|
542
|
-
createdAt: SortOrder.Descending,
|
|
543
|
-
},
|
|
544
|
-
skip: 0,
|
|
545
|
-
limit: LIMIT_MAX, // This can be optimized.
|
|
546
|
-
props: {
|
|
547
|
-
isRoot: true,
|
|
548
|
-
},
|
|
549
|
-
}));
|
|
550
|
-
// sort monitorStatusTimelines by createdAt.
|
|
552
|
+
/*
|
|
553
|
+
* Sort by startsAt and NOT by createdAt. createdAt is generated DB side with now(),
|
|
554
|
+
* while startsAt is generated on the worker pod with moment(). Those are different
|
|
555
|
+
* clocks with measured skew, so ordering by createdAt does not reliably reproduce the
|
|
556
|
+
* real chronological order of the timeline.
|
|
557
|
+
*/
|
|
551
558
|
monitorStatusTimelines = monitorStatusTimelines.sort((a, b) => {
|
|
552
|
-
if (!a.
|
|
559
|
+
if (!a.startsAt || !b.startsAt) {
|
|
553
560
|
return 0;
|
|
554
561
|
}
|
|
555
|
-
return b.
|
|
562
|
+
return b.startsAt.getTime() - a.startsAt.getTime();
|
|
556
563
|
});
|
|
557
564
|
}
|
|
558
565
|
return monitorStatusTimelines;
|
|
@@ -858,6 +865,17 @@ export class Service extends DatabaseService {
|
|
|
858
865
|
const endDate = OneUptimeDate.getCurrentDate();
|
|
859
866
|
const startDate = OneUptimeDate.getSomeDaysAgo(numberOfDays);
|
|
860
867
|
const startAndEndDate = `${numberOfDays} days (${OneUptimeDate.getDateAsUserFriendlyLocalFormattedString(startDate, true)} - ${OneUptimeDate.getDateAsUserFriendlyLocalFormattedString(endDate, true)})`;
|
|
868
|
+
/*
|
|
869
|
+
* The report is explicitly "the last N days", so this window is what every uptime number
|
|
870
|
+
* below has to be measured against. It used to be computed only to fetch the timeline and
|
|
871
|
+
* was then discarded, which let an event that started before the window contribute its
|
|
872
|
+
* whole duration to the downtime total, and made the denominator "first event -> now"
|
|
873
|
+
* instead of the window - so the reported percentage drifted upwards every day.
|
|
874
|
+
*/
|
|
875
|
+
const reportWindow = {
|
|
876
|
+
startDate: startDate,
|
|
877
|
+
endDate: endDate,
|
|
878
|
+
};
|
|
861
879
|
if (statusPageResources.length === 0) {
|
|
862
880
|
return {
|
|
863
881
|
reportDates: startAndEndDate,
|
|
@@ -897,8 +915,8 @@ export class Service extends DatabaseService {
|
|
|
897
915
|
return id.toString() === ((_a = item.monitorId) === null || _a === void 0 ? void 0 : _a.toString());
|
|
898
916
|
});
|
|
899
917
|
});
|
|
900
|
-
const uptimePercent = UptimeUtil.calculateUptimePercentage(timelineForThisResource, resource.uptimePercentPrecision || UptimePrecision.TWO_DECIMAL, statusPage.downtimeMonitorStatuses);
|
|
901
|
-
const downtime = UptimeUtil.getTotalDowntimeInSeconds(timelineForThisResource, statusPage.downtimeMonitorStatuses);
|
|
918
|
+
const uptimePercent = UptimeUtil.calculateUptimePercentage(timelineForThisResource, resource.uptimePercentPrecision || UptimePrecision.TWO_DECIMAL, statusPage.downtimeMonitorStatuses, reportWindow);
|
|
919
|
+
const downtime = UptimeUtil.getTotalDowntimeInSeconds(timelineForThisResource, statusPage.downtimeMonitorStatuses, reportWindow);
|
|
902
920
|
const reportItem = {
|
|
903
921
|
resourceName: resource.displayName || "",
|
|
904
922
|
totalIncidentCount: await this.getIncidentCountByMonitorIds({
|
|
@@ -915,7 +933,7 @@ export class Service extends DatabaseService {
|
|
|
915
933
|
return acc + item.uptimePercent;
|
|
916
934
|
}, 0) / reportItems.length;
|
|
917
935
|
const avgUptimePercentString = avgUptimePercent.toFixed(2) + "%";
|
|
918
|
-
const totalDowntimeInSeconds = UptimeUtil.getTotalDowntimeInSeconds(timeline, statusPage.downtimeMonitorStatuses);
|
|
936
|
+
const totalDowntimeInSeconds = UptimeUtil.getTotalDowntimeInSeconds(timeline, statusPage.downtimeMonitorStatuses, reportWindow);
|
|
919
937
|
return {
|
|
920
938
|
reportDates: startAndEndDate,
|
|
921
939
|
totalResources: statusPageResources.length,
|
|
@@ -1029,6 +1047,12 @@ export class Service extends DatabaseService {
|
|
|
1029
1047
|
},
|
|
1030
1048
|
monitorGroupId: true,
|
|
1031
1049
|
order: true,
|
|
1050
|
+
/*
|
|
1051
|
+
* needed so the emailed report rounds to the same precision the status page renders
|
|
1052
|
+
* with. Without it `resource.uptimePercentPrecision` is always undefined and the
|
|
1053
|
+
* report silently falls back to two decimals.
|
|
1054
|
+
*/
|
|
1055
|
+
uptimePercentPrecision: true,
|
|
1032
1056
|
},
|
|
1033
1057
|
skip: 0,
|
|
1034
1058
|
limit: LIMIT_PER_PROJECT,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatusPageService.js","sourceRoot":"","sources":["../../../../Server/Services/StatusPageService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"StatusPageService.js","sourceRoot":"","sources":["../../../../Server/Services/StatusPageService.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,6 +26,11 @@ import ModelPermission from "../Types/Database/Permissions/Index";
|
|
|
26
26
|
import CaptureSpan from "../Utils/Telemetry/CaptureSpan";
|
|
27
27
|
import Includes from "../../Types/BaseDatabase/Includes";
|
|
28
28
|
import logger from "../Utils/Logger";
|
|
29
|
+
import AIAgentTaskPullRequestService from "./AIAgentTaskPullRequestService";
|
|
30
|
+
import PullRequestState from "../../Types/CodeRepository/PullRequestState";
|
|
31
|
+
import { normalizeExceptionText } from "../Utils/Telemetry/ExceptionSanitizer";
|
|
32
|
+
import Semaphore from "../Infrastructure/Semaphore";
|
|
33
|
+
import LIMIT_MAX from "../../Types/Database/LimitMax";
|
|
29
34
|
/*
|
|
30
35
|
* Hard cap on the fingerprint NOT IN list handed to the ClickHouse count
|
|
31
36
|
* query. ClickHouse receives query params via the request URI (default
|
|
@@ -153,12 +158,44 @@ export class Service extends DatabaseService {
|
|
|
153
158
|
select: {
|
|
154
159
|
_id: true,
|
|
155
160
|
projectId: true,
|
|
161
|
+
message: true,
|
|
162
|
+
exceptionType: true,
|
|
163
|
+
isResolved: true,
|
|
164
|
+
isArchived: true,
|
|
165
|
+
aiFixDeclinedAt: true,
|
|
156
166
|
},
|
|
157
167
|
props,
|
|
158
168
|
});
|
|
159
169
|
if (!telemetryException || !telemetryException.projectId) {
|
|
160
170
|
throw new BadDataException("Telemetry Exception not found");
|
|
161
171
|
}
|
|
172
|
+
/*
|
|
173
|
+
* Server-side lifecycle gate (the dashboard hides the button for
|
|
174
|
+
* resolved exceptions, but the API must enforce it — the automatic
|
|
175
|
+
* insight lane and any direct API caller land here too).
|
|
176
|
+
*/
|
|
177
|
+
if (telemetryException.isResolved) {
|
|
178
|
+
throw new BadDataException("This exception is marked as resolved. Unresolve it before starting an AI agent task for it.");
|
|
179
|
+
}
|
|
180
|
+
if (telemetryException.isArchived) {
|
|
181
|
+
throw new BadDataException("This exception is archived. Unarchive it before starting an AI agent task for it.");
|
|
182
|
+
}
|
|
183
|
+
/*
|
|
184
|
+
* Human "closed without merging" feedback: when an AI FIX PR for this
|
|
185
|
+
* exception was declined, the automatic lane must not keep re-opening
|
|
186
|
+
* fix PRs for it. Scoped to the FixException recipe — the stamp is only
|
|
187
|
+
* ever SET for closed fix PRs (SyncPullRequestStates), so a regression
|
|
188
|
+
* test or error-handling task is neither blocked by it nor allowed to
|
|
189
|
+
* clear it. A HUMAN clicking "Fix with AI" is the explicit override;
|
|
190
|
+
* the stamp is cleared only AFTER the retry run is actually created
|
|
191
|
+
* (see below), so a retry that fails a later gate leaves the human's
|
|
192
|
+
* decline in force.
|
|
193
|
+
*/
|
|
194
|
+
const isDeclinedFixOverride = Boolean(telemetryException.aiFixDeclinedAt &&
|
|
195
|
+
taskType === CodeFixTaskType.FixException);
|
|
196
|
+
if (isDeclinedFixOverride && !props.userId) {
|
|
197
|
+
throw new BadDataException("A previous AI fix pull request for this exception was closed without merging, so automatic fix attempts are paused for it. A user can retry from the exception page.");
|
|
198
|
+
}
|
|
162
199
|
/*
|
|
163
200
|
* G11 guardrail: the per-project daily fix-run budget. Checked before
|
|
164
201
|
* the (more expensive) readiness probes — an over-budget project gets
|
|
@@ -185,33 +222,95 @@ export class Service extends DatabaseService {
|
|
|
185
222
|
throw new BadDataException(`Cannot start the AI fix — missing prerequisites: ${missing}.`);
|
|
186
223
|
}
|
|
187
224
|
/*
|
|
188
|
-
*
|
|
189
|
-
*
|
|
225
|
+
* The duplicate guards below are check-then-create: without
|
|
226
|
+
* serialization, two triage completions for splintered variants of the
|
|
227
|
+
* same root cause can both pass the guards and both create runs. A
|
|
228
|
+
* per-project Redis mutex closes the window; acquisition failure
|
|
229
|
+
* (Redis down) degrades to the unserialized behavior rather than
|
|
230
|
+
* blocking fix creation — the guards still run, they just race.
|
|
190
231
|
*/
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
232
|
+
let mutex = null;
|
|
233
|
+
try {
|
|
234
|
+
mutex = await Semaphore.lock({
|
|
235
|
+
key: telemetryException.projectId.toString(),
|
|
236
|
+
namespace: "TelemetryExceptionService.createCodeFixRunForException",
|
|
237
|
+
lockTimeout: 15000,
|
|
238
|
+
});
|
|
239
|
+
}
|
|
240
|
+
catch (err) {
|
|
241
|
+
logger.debug(`Could not acquire the code-fix creation mutex for project ${telemetryException.projectId.toString()} — proceeding without serialization: ${err}`);
|
|
242
|
+
}
|
|
243
|
+
let createdRun;
|
|
244
|
+
try {
|
|
245
|
+
/*
|
|
246
|
+
* Duplicate guard is per (exception, taskType): an active
|
|
247
|
+
* FixException run must not block queuing a WriteRegressionTest run
|
|
248
|
+
* and vice versa.
|
|
249
|
+
*/
|
|
250
|
+
await this.validateNoActiveCodeFixRunExists(telemetryExceptionId, taskType);
|
|
251
|
+
/*
|
|
252
|
+
* Cross-group duplicate guard: interpolated dynamic values (garbage
|
|
253
|
+
* UUIDs, file paths, request payloads) splinter one root cause into
|
|
254
|
+
* many fingerprints, and the per-exception guard above cannot see
|
|
255
|
+
* that. Compare NORMALIZED messages against exceptions that already
|
|
256
|
+
* have an active run or an open AI pull request, so one root cause
|
|
257
|
+
* yields one PR — not one per interpolated variant.
|
|
258
|
+
*/
|
|
259
|
+
await this.validateNoOpenFixForSimilarException({
|
|
260
|
+
projectId: telemetryException.projectId,
|
|
261
|
+
telemetryExceptionId: telemetryExceptionId,
|
|
262
|
+
taskType: taskType,
|
|
263
|
+
message: telemetryException.message || "",
|
|
264
|
+
exceptionType: telemetryException.exceptionType || "",
|
|
265
|
+
});
|
|
266
|
+
const run = new AIRun();
|
|
267
|
+
run.projectId = telemetryException.projectId;
|
|
268
|
+
run.runType = AIRunType.CodeFix;
|
|
269
|
+
run.codeFixTaskType = taskType;
|
|
270
|
+
run.status = AIRunStatus.Queued;
|
|
271
|
+
run.triggeredByTelemetryExceptionId = telemetryExceptionId;
|
|
272
|
+
// Attribution: the user who clicked "Fix with AI Agent".
|
|
273
|
+
if (props.userId) {
|
|
274
|
+
run.userId = props.userId;
|
|
275
|
+
}
|
|
276
|
+
/*
|
|
277
|
+
* Created as root: AIRun rows are server-written only (empty create
|
|
278
|
+
* ACL); the user's access was already checked by the exception read.
|
|
279
|
+
*/
|
|
280
|
+
createdRun = await AIRunService.create({
|
|
281
|
+
data: run,
|
|
282
|
+
props: {
|
|
283
|
+
isRoot: true,
|
|
284
|
+
},
|
|
285
|
+
});
|
|
286
|
+
}
|
|
287
|
+
finally {
|
|
288
|
+
if (mutex) {
|
|
289
|
+
try {
|
|
290
|
+
await Semaphore.release(mutex);
|
|
291
|
+
}
|
|
292
|
+
catch (err) {
|
|
293
|
+
logger.debug(`Failed to release the code-fix creation mutex: ${err}`);
|
|
294
|
+
}
|
|
295
|
+
}
|
|
201
296
|
}
|
|
202
|
-
/*
|
|
203
|
-
* Created as root: AIRun rows are server-written only (empty create
|
|
204
|
-
* ACL); the user's access was already checked by the exception read.
|
|
205
|
-
*/
|
|
206
|
-
const createdRun = await AIRunService.create({
|
|
207
|
-
data: run,
|
|
208
|
-
props: {
|
|
209
|
-
isRoot: true,
|
|
210
|
-
},
|
|
211
|
-
});
|
|
212
297
|
if (!createdRun.id) {
|
|
213
298
|
throw new BadDataException("Failed to create the AI fix run");
|
|
214
299
|
}
|
|
300
|
+
/*
|
|
301
|
+
* The human's retry actually went through — only now consume the
|
|
302
|
+
* decline override. A retry that failed any gate above leaves the
|
|
303
|
+
* suppression in force.
|
|
304
|
+
*/
|
|
305
|
+
if (isDeclinedFixOverride) {
|
|
306
|
+
await this.updateOneById({
|
|
307
|
+
id: telemetryExceptionId,
|
|
308
|
+
data: {
|
|
309
|
+
aiFixDeclinedAt: null,
|
|
310
|
+
},
|
|
311
|
+
props: { isRoot: true },
|
|
312
|
+
});
|
|
313
|
+
}
|
|
215
314
|
return createdRun;
|
|
216
315
|
}
|
|
217
316
|
async validateNoActiveCodeFixRunExists(telemetryExceptionId, taskType) {
|
|
@@ -247,6 +346,142 @@ export class Service extends DatabaseService {
|
|
|
247
346
|
throw new BadDataException(`An AI agent task (${taskType}) is already in progress for this exception. Please wait for it to complete before creating a new one.`);
|
|
248
347
|
}
|
|
249
348
|
}
|
|
349
|
+
/*
|
|
350
|
+
* Cross-group duplicate guard. Two exception groups are "the same work"
|
|
351
|
+
* for the fix lane when their exceptionType and NORMALIZED message match
|
|
352
|
+
* (normalizeExceptionText replaces UUIDs, IDs, emails, paths' dynamic
|
|
353
|
+
* segments, timestamps...). Candidates are the exceptions behind
|
|
354
|
+
* (a) non-terminal CodeFix runs of the same recipe, and (b) OPEN
|
|
355
|
+
* AI-authored pull requests — a completed run whose PR is still open
|
|
356
|
+
* must keep blocking, or every interpolated variant re-fixes the same
|
|
357
|
+
* root cause (observed: 15 near-identical PRs for one invalid-uuid
|
|
358
|
+
* throw site).
|
|
359
|
+
*/
|
|
360
|
+
async validateNoOpenFixForSimilarException(data) {
|
|
361
|
+
var _a, _b;
|
|
362
|
+
// (a) Exceptions with a non-terminal run of the same recipe.
|
|
363
|
+
const activeRuns = await AIRunService.findBy({
|
|
364
|
+
query: {
|
|
365
|
+
projectId: data.projectId,
|
|
366
|
+
runType: AIRunType.CodeFix,
|
|
367
|
+
/*
|
|
368
|
+
* A null codeFixTaskType means FixException (rows created before
|
|
369
|
+
* task recipes existed) — same legacy-null matching as
|
|
370
|
+
* validateNoActiveCodeFixRunExists.
|
|
371
|
+
*/
|
|
372
|
+
codeFixTaskType: data.taskType === CodeFixTaskType.FixException
|
|
373
|
+
? QueryHelper.equalToOrNull(CodeFixTaskType.FixException)
|
|
374
|
+
: data.taskType,
|
|
375
|
+
status: QueryHelper.notIn([
|
|
376
|
+
AIRunStatus.Completed,
|
|
377
|
+
AIRunStatus.NoFixFound,
|
|
378
|
+
AIRunStatus.Error,
|
|
379
|
+
AIRunStatus.Cancelled,
|
|
380
|
+
AIRunStatus.Stale,
|
|
381
|
+
]),
|
|
382
|
+
},
|
|
383
|
+
select: {
|
|
384
|
+
triggeredByTelemetryExceptionId: true,
|
|
385
|
+
},
|
|
386
|
+
limit: LIMIT_MAX,
|
|
387
|
+
skip: 0,
|
|
388
|
+
props: { isRoot: true },
|
|
389
|
+
});
|
|
390
|
+
// (b) Exceptions behind still-open AI pull requests.
|
|
391
|
+
const openPullRequests = await AIAgentTaskPullRequestService.findBy({
|
|
392
|
+
query: {
|
|
393
|
+
projectId: data.projectId,
|
|
394
|
+
pullRequestState: PullRequestState.Open,
|
|
395
|
+
},
|
|
396
|
+
select: {
|
|
397
|
+
aiRunId: true,
|
|
398
|
+
},
|
|
399
|
+
limit: LIMIT_MAX,
|
|
400
|
+
skip: 0,
|
|
401
|
+
props: { isRoot: true },
|
|
402
|
+
});
|
|
403
|
+
/*
|
|
404
|
+
* A guard that silently stops guarding is worse than none — surface
|
|
405
|
+
* candidate-scan truncation instead of quietly missing duplicates.
|
|
406
|
+
*/
|
|
407
|
+
if (activeRuns.length >= LIMIT_MAX ||
|
|
408
|
+
openPullRequests.length >= LIMIT_MAX) {
|
|
409
|
+
logger.warn(`Cross-group AI fix dedupe guard: candidate scan truncated at ${LIMIT_MAX} rows for project ${data.projectId.toString()} — the duplicate-PR guard may miss matches.`);
|
|
410
|
+
}
|
|
411
|
+
const openPrRunIds = openPullRequests
|
|
412
|
+
.map((pullRequest) => {
|
|
413
|
+
return pullRequest.aiRunId;
|
|
414
|
+
})
|
|
415
|
+
.filter((runId) => {
|
|
416
|
+
return Boolean(runId);
|
|
417
|
+
});
|
|
418
|
+
const openPrRuns = openPrRunIds.length > 0
|
|
419
|
+
? await AIRunService.findBy({
|
|
420
|
+
query: {
|
|
421
|
+
_id: new Includes(openPrRunIds),
|
|
422
|
+
projectId: data.projectId,
|
|
423
|
+
runType: AIRunType.CodeFix,
|
|
424
|
+
codeFixTaskType: data.taskType === CodeFixTaskType.FixException
|
|
425
|
+
? QueryHelper.equalToOrNull(CodeFixTaskType.FixException)
|
|
426
|
+
: data.taskType,
|
|
427
|
+
},
|
|
428
|
+
select: {
|
|
429
|
+
triggeredByTelemetryExceptionId: true,
|
|
430
|
+
},
|
|
431
|
+
limit: LIMIT_MAX,
|
|
432
|
+
skip: 0,
|
|
433
|
+
props: { isRoot: true },
|
|
434
|
+
})
|
|
435
|
+
: [];
|
|
436
|
+
/*
|
|
437
|
+
* The target exception is deliberately NOT excluded: its own COMPLETED
|
|
438
|
+
* run with a still-open PR must keep blocking a re-fix (the
|
|
439
|
+
* non-terminal guard above cannot see completed runs). Its own ACTIVE
|
|
440
|
+
* runs were already rejected by validateNoActiveCodeFixRunExists.
|
|
441
|
+
*/
|
|
442
|
+
const candidateExceptionIds = [];
|
|
443
|
+
const seenIds = new Set();
|
|
444
|
+
for (const run of [...activeRuns, ...openPrRuns]) {
|
|
445
|
+
const exceptionId = run.triggeredByTelemetryExceptionId;
|
|
446
|
+
if (!exceptionId) {
|
|
447
|
+
continue;
|
|
448
|
+
}
|
|
449
|
+
const idString = exceptionId.toString();
|
|
450
|
+
if (seenIds.has(idString)) {
|
|
451
|
+
continue;
|
|
452
|
+
}
|
|
453
|
+
seenIds.add(idString);
|
|
454
|
+
candidateExceptionIds.push(exceptionId);
|
|
455
|
+
}
|
|
456
|
+
if (candidateExceptionIds.length === 0) {
|
|
457
|
+
return;
|
|
458
|
+
}
|
|
459
|
+
const targetSignature = `${data.exceptionType}|${normalizeExceptionText(data.message)}`;
|
|
460
|
+
const candidates = await this.findBy({
|
|
461
|
+
query: {
|
|
462
|
+
projectId: data.projectId,
|
|
463
|
+
_id: new Includes(candidateExceptionIds),
|
|
464
|
+
},
|
|
465
|
+
select: {
|
|
466
|
+
_id: true,
|
|
467
|
+
message: true,
|
|
468
|
+
exceptionType: true,
|
|
469
|
+
},
|
|
470
|
+
limit: candidateExceptionIds.length,
|
|
471
|
+
skip: 0,
|
|
472
|
+
props: { isRoot: true },
|
|
473
|
+
});
|
|
474
|
+
for (const candidate of candidates) {
|
|
475
|
+
const candidateSignature = `${candidate.exceptionType || ""}|${normalizeExceptionText(candidate.message || "")}`;
|
|
476
|
+
if (candidateSignature !== targetSignature) {
|
|
477
|
+
continue;
|
|
478
|
+
}
|
|
479
|
+
if (((_a = candidate._id) === null || _a === void 0 ? void 0 : _a.toString()) === data.telemetryExceptionId.toString()) {
|
|
480
|
+
throw new BadDataException("This exception already has an open AI pull request for this task type. Review that pull request instead of opening another one.");
|
|
481
|
+
}
|
|
482
|
+
throw new BadDataException(`A similar exception (same type and normalized message, exception ${(_b = candidate._id) === null || _b === void 0 ? void 0 : _b.toString()}) already has an AI agent task in progress or an open AI pull request. Review that pull request instead of opening another one for the same root cause.`);
|
|
483
|
+
}
|
|
484
|
+
}
|
|
250
485
|
async getDashboardSummary(props) {
|
|
251
486
|
if (!props.tenantId) {
|
|
252
487
|
throw new BadDataException("Project ID is required");
|
|
@@ -488,6 +723,12 @@ __decorate([
|
|
|
488
723
|
__metadata("design:paramtypes", [ObjectID, String]),
|
|
489
724
|
__metadata("design:returntype", Promise)
|
|
490
725
|
], Service.prototype, "validateNoActiveCodeFixRunExists", null);
|
|
726
|
+
__decorate([
|
|
727
|
+
CaptureSpan(),
|
|
728
|
+
__metadata("design:type", Function),
|
|
729
|
+
__metadata("design:paramtypes", [Object]),
|
|
730
|
+
__metadata("design:returntype", Promise)
|
|
731
|
+
], Service.prototype, "validateNoOpenFixForSimilarException", null);
|
|
491
732
|
__decorate([
|
|
492
733
|
CaptureSpan(),
|
|
493
734
|
__metadata("design:type", Function),
|