@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.
Files changed (142) hide show
  1. package/Models/AnalyticsModels/NetworkFlow.ts +12 -1
  2. package/Models/DatabaseModels/AIInsight.ts +30 -0
  3. package/Models/DatabaseModels/Project.ts +30 -0
  4. package/Models/DatabaseModels/TelemetryException.ts +128 -0
  5. package/Server/API/AIAgentDataAPI.ts +129 -5
  6. package/Server/API/AIInvestigationAPI.ts +87 -0
  7. package/Server/API/StatusPageAPI.ts +14 -1
  8. package/Server/Infrastructure/Postgres/SchemaMigrations/1784640000000-AddExceptionTriageAndPrivacyColumns.ts +56 -0
  9. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +2 -2
  10. package/Server/Services/AIRunService.ts +8 -0
  11. package/Server/Services/IncidentService.ts +62 -67
  12. package/Server/Services/MonitorGroupService.ts +15 -2
  13. package/Server/Services/MonitorService.ts +91 -3
  14. package/Server/Services/MonitorStatusTimelineService.ts +285 -100
  15. package/Server/Services/StatusPageService.ts +59 -34
  16. package/Server/Services/TelemetryExceptionService.ts +320 -24
  17. package/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.ts +15 -4
  18. package/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.ts +15 -4
  19. package/Server/Utils/AI/SRE/Insights/InsightScanner.ts +222 -24
  20. package/Server/Utils/AI/SRE/Insights/InsightTriageRunner.ts +225 -9
  21. package/Server/Utils/AI/SRE/SubjectCodeFixRun.ts +39 -0
  22. package/Server/Utils/AI/SRE/TelemetryImprovementTaskTrigger.ts +114 -0
  23. package/Server/Utils/Monitor/MonitorResource.ts +43 -14
  24. package/Server/Utils/Monitor/MonitorStatusTimeline.ts +32 -7
  25. package/Server/Utils/Monitor/MonitorStatusTimelineReconciler.ts +362 -0
  26. package/Server/Utils/Telemetry/ExceptionSanitizer.ts +222 -0
  27. package/Tests/Server/Services/MonitorStatusTimelineService.test.ts +235 -0
  28. package/Tests/Server/Services/TelemetryExceptionCodeFixRun.test.ts +205 -1
  29. package/Tests/Server/Utils/AI/Insights/InsightScanner.test.ts +150 -141
  30. package/Tests/Server/Utils/AI/Insights/InsightTriageRunner.test.ts +277 -1
  31. package/Tests/Server/Utils/ExceptionSanitizer.test.ts +70 -0
  32. package/Tests/Server/Utils/InsightTriageClassification.test.ts +57 -0
  33. package/Tests/Server/Utils/Monitor/MonitorStatusTimelineReconciler.test.ts +555 -0
  34. package/Tests/Server/Utils/TelemetryImprovementTaskTrigger.test.ts +141 -0
  35. package/Tests/Types/Database/CompareOperatorWireSerialization.test.ts +216 -0
  36. package/Tests/Types/Database/GreaterThan.test.ts +5 -1
  37. package/Tests/Types/Database/GreaterThanOrEqual.test.ts +5 -1
  38. package/Tests/Types/Database/GreaterThanOrNull.test.ts +24 -1
  39. package/Tests/Types/Database/LessThan.test.ts +5 -1
  40. package/Tests/Types/Database/LessThanOrEqual.test.ts +24 -1
  41. package/Tests/Types/Database/LessThanOrNull.test.ts +5 -1
  42. package/Tests/UI/Components/ModelTableSelectFromColumns.test.ts +259 -0
  43. package/Tests/Utils/Uptime/UptimeUtil.test.ts +726 -0
  44. package/Types/AI/CodeFixTaskContext.ts +6 -0
  45. package/Types/AI/CodeFixTaskType.ts +38 -1
  46. package/Types/AI/ExceptionAIClassification.ts +27 -0
  47. package/Types/BaseDatabase/GreaterThan.ts +8 -1
  48. package/Types/BaseDatabase/GreaterThanOrEqual.ts +8 -1
  49. package/Types/BaseDatabase/GreaterThanOrNull.ts +9 -1
  50. package/Types/BaseDatabase/LessThan.ts +8 -1
  51. package/Types/BaseDatabase/LessThanOrEqual.ts +9 -1
  52. package/Types/BaseDatabase/LessThanOrNull.ts +8 -1
  53. package/Types/Log/LogScrubPatternType.ts +7 -0
  54. package/Types/Trace/TraceScrubPatternType.ts +7 -0
  55. package/UI/Components/ModelTable/BaseModelTable.tsx +15 -46
  56. package/UI/Components/ModelTable/SelectFromColumns.ts +129 -0
  57. package/Utils/StatusPage/ResourceUptime.ts +11 -1
  58. package/Utils/Uptime/UptimeUtil.ts +142 -36
  59. package/build/dist/Models/AnalyticsModels/NetworkFlow.js +12 -1
  60. package/build/dist/Models/AnalyticsModels/NetworkFlow.js.map +1 -1
  61. package/build/dist/Models/DatabaseModels/AIInsight.js +31 -0
  62. package/build/dist/Models/DatabaseModels/AIInsight.js.map +1 -1
  63. package/build/dist/Models/DatabaseModels/Project.js +31 -0
  64. package/build/dist/Models/DatabaseModels/Project.js.map +1 -1
  65. package/build/dist/Models/DatabaseModels/TelemetryException.js +134 -0
  66. package/build/dist/Models/DatabaseModels/TelemetryException.js.map +1 -1
  67. package/build/dist/Server/API/AIAgentDataAPI.js +97 -8
  68. package/build/dist/Server/API/AIAgentDataAPI.js.map +1 -1
  69. package/build/dist/Server/API/AIInvestigationAPI.js +55 -0
  70. package/build/dist/Server/API/AIInvestigationAPI.js.map +1 -1
  71. package/build/dist/Server/API/StatusPageAPI.js +12 -2
  72. package/build/dist/Server/API/StatusPageAPI.js.map +1 -1
  73. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784640000000-AddExceptionTriageAndPrivacyColumns.js +33 -0
  74. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784640000000-AddExceptionTriageAndPrivacyColumns.js.map +1 -0
  75. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +2 -2
  76. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  77. package/build/dist/Server/Services/AIRunService.js +9 -2
  78. package/build/dist/Server/Services/AIRunService.js.map +1 -1
  79. package/build/dist/Server/Services/IncidentService.js +47 -56
  80. package/build/dist/Server/Services/IncidentService.js.map +1 -1
  81. package/build/dist/Server/Services/MonitorGroupService.js +15 -2
  82. package/build/dist/Server/Services/MonitorGroupService.js.map +1 -1
  83. package/build/dist/Server/Services/MonitorService.js +66 -3
  84. package/build/dist/Server/Services/MonitorService.js.map +1 -1
  85. package/build/dist/Server/Services/MonitorStatusTimelineService.js +244 -102
  86. package/build/dist/Server/Services/MonitorStatusTimelineService.js.map +1 -1
  87. package/build/dist/Server/Services/StatusPageService.js +57 -33
  88. package/build/dist/Server/Services/StatusPageService.js.map +1 -1
  89. package/build/dist/Server/Services/TelemetryExceptionService.js +263 -22
  90. package/build/dist/Server/Services/TelemetryExceptionService.js.map +1 -1
  91. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.js +12 -4
  92. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.js.map +1 -1
  93. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.js +12 -4
  94. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.js.map +1 -1
  95. package/build/dist/Server/Utils/AI/SRE/Insights/InsightScanner.js +193 -22
  96. package/build/dist/Server/Utils/AI/SRE/Insights/InsightScanner.js.map +1 -1
  97. package/build/dist/Server/Utils/AI/SRE/Insights/InsightTriageRunner.js +178 -9
  98. package/build/dist/Server/Utils/AI/SRE/Insights/InsightTriageRunner.js.map +1 -1
  99. package/build/dist/Server/Utils/AI/SRE/SubjectCodeFixRun.js +37 -0
  100. package/build/dist/Server/Utils/AI/SRE/SubjectCodeFixRun.js.map +1 -1
  101. package/build/dist/Server/Utils/AI/SRE/TelemetryImprovementTaskTrigger.js +98 -0
  102. package/build/dist/Server/Utils/AI/SRE/TelemetryImprovementTaskTrigger.js.map +1 -0
  103. package/build/dist/Server/Utils/Monitor/MonitorResource.js +34 -12
  104. package/build/dist/Server/Utils/Monitor/MonitorResource.js.map +1 -1
  105. package/build/dist/Server/Utils/Monitor/MonitorStatusTimeline.js +25 -8
  106. package/build/dist/Server/Utils/Monitor/MonitorStatusTimeline.js.map +1 -1
  107. package/build/dist/Server/Utils/Monitor/MonitorStatusTimelineReconciler.js +268 -0
  108. package/build/dist/Server/Utils/Monitor/MonitorStatusTimelineReconciler.js.map +1 -0
  109. package/build/dist/Server/Utils/Telemetry/ExceptionSanitizer.js +149 -0
  110. package/build/dist/Server/Utils/Telemetry/ExceptionSanitizer.js.map +1 -0
  111. package/build/dist/Types/AI/CodeFixTaskType.js +38 -1
  112. package/build/dist/Types/AI/CodeFixTaskType.js.map +1 -1
  113. package/build/dist/Types/AI/ExceptionAIClassification.js +28 -0
  114. package/build/dist/Types/AI/ExceptionAIClassification.js.map +1 -0
  115. package/build/dist/Types/BaseDatabase/GreaterThan.js +8 -1
  116. package/build/dist/Types/BaseDatabase/GreaterThan.js.map +1 -1
  117. package/build/dist/Types/BaseDatabase/GreaterThanOrEqual.js +8 -1
  118. package/build/dist/Types/BaseDatabase/GreaterThanOrEqual.js.map +1 -1
  119. package/build/dist/Types/BaseDatabase/GreaterThanOrNull.js +9 -1
  120. package/build/dist/Types/BaseDatabase/GreaterThanOrNull.js.map +1 -1
  121. package/build/dist/Types/BaseDatabase/LessThan.js +8 -1
  122. package/build/dist/Types/BaseDatabase/LessThan.js.map +1 -1
  123. package/build/dist/Types/BaseDatabase/LessThanOrEqual.js +9 -1
  124. package/build/dist/Types/BaseDatabase/LessThanOrEqual.js.map +1 -1
  125. package/build/dist/Types/BaseDatabase/LessThanOrNull.js +8 -1
  126. package/build/dist/Types/BaseDatabase/LessThanOrNull.js.map +1 -1
  127. package/build/dist/Types/Log/LogScrubPatternType.js +7 -0
  128. package/build/dist/Types/Log/LogScrubPatternType.js.map +1 -1
  129. package/build/dist/Types/Trace/TraceScrubPatternType.js +7 -0
  130. package/build/dist/Types/Trace/TraceScrubPatternType.js.map +1 -1
  131. package/build/dist/UI/Components/ModelTable/BaseModelTable.js +12 -37
  132. package/build/dist/UI/Components/ModelTable/BaseModelTable.js.map +1 -1
  133. package/build/dist/UI/Components/ModelTable/SelectFromColumns.js +82 -0
  134. package/build/dist/UI/Components/ModelTable/SelectFromColumns.js.map +1 -0
  135. package/build/dist/Utils/StatusPage/ResourceUptime.js +4 -1
  136. package/build/dist/Utils/StatusPage/ResourceUptime.js.map +1 -1
  137. package/build/dist/Utils/Uptime/UptimeUtil.js +86 -33
  138. package/build/dist/Utils/Uptime/UptimeUtil.js.map +1 -1
  139. package/package.json +1 -1
  140. package/Server/Infrastructure/Postgres/SchemaMigrations/1784401962564-MigrationName.ts +0 -101
  141. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784401962564-MigrationName.js +0 -40
  142. 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
- endsAt: QueryHelper.inBetween(startDate, endDate),
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
- createdAt: SortOrder.Descending,
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
- monitorStatusTimelines = monitorStatusTimelines.concat(await MonitorStatusTimelineService.findBy({
526
- query: {
527
- monitorId: QueryHelper.any(data.monitorIds),
528
- endsAt: QueryHelper.isNull(),
529
- },
530
- select: {
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.createdAt || !b.createdAt) {
559
+ if (!a.startsAt || !b.startsAt) {
553
560
  return 0;
554
561
  }
555
- return b.createdAt.getTime() - a.createdAt.getTime();
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":";;;;;;;;;AAAA,OAAO,cAAc,MAAM,mBAAmB,CAAC;AAC/C,OAAO,gBAAgB,MAAM,oCAAoC,CAAC;AAIlE,OAAO,UAAU,MAAM,iBAAiB,CAAC;AAEzC,OAAO,YAAY,MAAM,uBAAuB,CAAC;AACjD,OAAO,MAAyB,MAAM,iBAAiB,CAAC;AACxD,OAAO,gBAAgB,MAAM,2BAA2B,CAAC;AACzD,OAAO,WAAW,MAAM,gCAAgC,CAAC;AACzD,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,oBAAoB,MAAM,wBAAwB,CAAC;AAC1D,OAAO,cAA+B,MAAM,kBAAkB,CAAC;AAC/D,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAChE,OAAO,gCAAgC,MAAM,oCAAoC,CAAC;AAClF,OAAO,gCAAgC,MAAM,oCAAoC,CAAC;AAClF,OAAO,0BAA0B,MAAM,8BAA8B,CAAC;AACtE,OAAO,0BAA0B,MAAM,8BAA8B,CAAC;AACtE,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AAEpD,OAAO,QAAQ,MAAM,0BAA0B,CAAC;AAChD,OAAO,GAAG,MAAM,qBAAqB,CAAC;AAEtC,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAChD,OAAO,SAAS,EAAE,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,gBAAgB,MAAM,wCAAwC,CAAC;AAEtE,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAE5C,OAAO,MAAM,MAAM,oBAAoB,CAAC;AAExC,OAAO,UAAU,MAAM,wCAAwC,CAAC;AAEhE,OAAO,mBAAmB,MAAM,iDAAiD,CAAC;AAClF,OAAO,mBAAmB,MAAM,iDAAiD,CAAC;AAElF,OAAO,EACL,gCAAgC,EAChC,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AAChE,OAAO,SAAS,MAAM,8BAA8B,CAAC;AAErD,OAAO,2BAA2B,MAAM,+BAA+B,CAAC;AAExE,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,iBAAiB,MAAM,qCAAqC,CAAC;AACpE,OAAO,+CAA+C,MAAM,mDAAmD,CAAC;AAEhH,OAAO,yCAAyC,MAAM,kEAAkE,CAAC;AACzH,OAAO,sCAAsC,MAAM,+DAA+D,CAAC;AACnH,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAElE,OAAO,yBAAyB,MAAM,6BAA6B,CAAC;AAIpE,OAAO,2BAA2B,MAAM,+BAA+B,CAAC;AACxE,OAAO,WAAW,MAAM,+BAA+B,CAAC;AACxD,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAC7C,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAEhD,OAAO,4BAA4B,MAAM,gCAAgC,CAAC;AAC1E,OAAO,SAAS,MAAM,oCAAoC,CAAC;AAC3D,OAAO,UAAU,MAAM,+BAA+B,CAAC;AACvD,OAAO,eAAe,MAAM,wCAAwC,CAAC;AACrE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACnC,OAAO,yBAAyB,MAAM,iDAAiD,CAAC;AACxF,OAAO,kBAAkB,MAAM,0CAA0C,CAAC;AAC1E,OAAO,+BAA+B,MAAM,uDAAuD,CAAC;AACpG,OAAO,EACL,iCAAiC,EACjC,gCAAgC,GACjC,MAAM,uCAAuC,CAAC;AAmB/C,MAAM,OAAO,OAAQ,SAAQ,eAA2B;IActD;QACE,KAAK,CAAC,UAAU,CAAC,CAAC;QAdpB;;;;;;;;WAQG;QACK,uBAAkB,GAA6B,IAAI,gBAAgB,CACzE,KAAM,CACP,CAAC;IAIF,CAAC;IAEM,uBAAuB,CAAC,YAAuB;QACpD,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;YACxD,OAAO;QACT,CAAC;QACD,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;IAClC,CAAC;IAED;;;;;;OAMG;IAEU,AAAN,KAAK,CAAC,yBAAyB,CACpC,oBAA4B;QAE5B,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,oBAAoB,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACvC,MAAM,gBAAgB,GACpB,MAAM,uBAAuB,CAAC,SAAS,CAAC;gBACtC,KAAK,EAAE;oBACL,UAAU,EAAE,oBAAoB;oBAChC,MAAM,EAAE;wBACN,UAAU,EAAE,IAAI;qBACV;iBACT;gBACD,MAAM,EAAE;oBACN,YAAY,EAAE,IAAI;iBACnB;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;YAEL,IAAI,CAAC,gBAAgB,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;gBACxD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,OAAO,gBAAgB,CAAC,YAAY,CAAC;QACvC,CAAC;QAED,IAAI,CAAC;YACH,QAAQ,CAAC,YAAY,CAAC,oBAAoB,CAAC,CAAC;YAC5C,OAAO,IAAI,QAAQ,CAAC,oBAAoB,CAAC,CAAC;QAC5C,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CACV,sDAAsD,oBAAoB,EAAE,CAC7E,CAAC;YACF,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAClB,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IAEU,AAAN,KAAK,CAAC,kBAAkB,CAC7B,oBAA4B;QAE5B,MAAM,YAAY,GAChB,MAAM,IAAI,CAAC,yBAAyB,CAAC,oBAAoB,CAAC,CAAC;QAE7D,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,UAAU,GAAsB,MAAM,IAAI,CAAC,SAAS,CAAC;YACzD,KAAK,EAAE;gBACL,GAAG,EAAE,YAAY;gBACjB,eAAe,EAAE,IAAI;aACtB;YACD,MAAM,EAAE;gBACN,GAAG,EAAE,IAAI;aACV;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC,UAAU,CAAC,CAAC;IAC7B,CAAC;IAEM,MAAM,CAAC,yBAAyB;QACrC,OAAO,wFAAwF,CAAC;IAClG,CAAC;IAEM,MAAM,CAAC,4BAA4B,CAAC,UAAsB;QAC/D,IACE,UAAU,CAAC,iDAAiD;YAC5D,UAAU,CAAC,qCAAqC,EAChD,CAAC;YACD,OAAO,UAAU,CAAC,qCAAqC,CAAC;QAC1D,CAAC;QACD,OAAO,IAAI,CAAC,yBAAyB,EAAE,CAAC;IAC1C,CAAC;IAGwB,AAAN,KAAK,CAAC,cAAc,CACrC,QAA8B;;QAE9B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAC7B,MAAM,IAAI,gBAAgB,CAAC,uBAAuB,CAAC,CAAC;QACtD,CAAC;QAED,qEAAqE;QACrE,IAAI,gBAAgB,EAAE,CAAC;YACrB,MAAM,WAAW,GAAgB,MAAM,cAAc,CAAC,cAAc,CAClE,QAAQ,CAAC,IAAI,CAAC,SAAS,CACxB,CAAC;YAEF,IAAI,WAAW,CAAC,oBAAoB,EAAE,CAAC;gBACrC,MAAM,IAAI,gBAAgB,CACxB,+HAA+H,CAChI,CAAC;YACJ,CAAC;YAED,IAAI,WAAW,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACvC,MAAM,eAAe,GAAmB,MAAM,IAAI,CAAC,OAAO,CAAC;oBACzD,KAAK,EAAE;wBACL,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS;qBACnC;oBACD,KAAK,EAAE;wBACL,MAAM,EAAE,IAAI;qBACb;iBACF,CAAC,CAAC;gBAEH,IAAI,eAAe,CAAC,QAAQ,EAAE,IAAI,gCAAgC,EAAE,CAAC;oBACnE,MAAM,IAAI,gBAAgB,CACxB,8HAA8H,CAC/H,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAC3C,MAAM,eAAe,GACnB,MAAM,oBAAoB,CAAC,MAAM,CAAC;gBAChC,KAAK,EAAE;oBACL,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS;iBACnC;gBACD,MAAM,EAAE;oBACN,GAAG,EAAE,IAAI;oBACT,kBAAkB,EAAE,IAAI;iBACzB;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;gBACD,IAAI,EAAE,CAAC;gBACP,KAAK,EAAE,iBAAiB;aACzB,CAAC,CAAC;YAEL,MAAM,uBAAuB,GAC3B,eAAe,CAAC,MAAM,CAAC,CAAC,aAA4B,EAAE,EAAE;gBACtD,OAAO,CAAC,aAAa,CAAC,kBAAkB,CAAC;YAC3C,CAAC,CAAC,CAAC;YAEL,QAAQ,CAAC,IAAI,CAAC,uBAAuB,GAAG,uBAAuB,CAAC;QAClE,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YACnC,QAAQ,CAAC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QACxC,CAAC;QAED;;;WAGG;QACH,IACE,QAAQ,CAAC,IAAI,CAAC,iDAAiD;YAC/D,SAAS,EACT,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,iDAAiD,GAAG,KAAK,CAAC;QAC1E,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,qCAAqC,EAAE,CAAC;YACzD,QAAQ,CAAC,IAAI,CAAC,qCAAqC;gBACjD,uEAAuE;oBACvE,CAAC,CAAA,MAAA,QAAQ,CAAC,IAAI,0CAAE,SAAS,MAAI,MAAA,QAAQ,CAAC,IAAI,0CAAE,IAAI,CAAA,IAAI,aAAa,CAAC,CAAC;QACvE,CAAC;QAED,OAAO;YACL,QAAQ;YACR,YAAY,EAAE,IAAI;SACnB,CAAC;IACJ,CAAC;IAGwB,AAAN,KAAK,CAAC,eAAe,CACtC,QAA8B,EAC9B,WAAuB;;QAEvB,0CAA0C;QAC1C,gBAAgB,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,IAAI,WAAW,CAAC,eAAe;YACrE,KAAK,EAAE,4BAA4B;YACnC,UAAU,EAAE;gBACV,UAAU,EAAE,CAAA,MAAA,WAAW,CAAC,SAAS,0CAAE,QAAQ,EAAE,KAAI,EAAE;aACpD;SACF,CAAC,CAAC;QAEH,0CAA0C;QAC1C,IACE,WAAW,CAAC,SAAS;YACrB,WAAW,CAAC,EAAE;YACd,QAAQ,CAAC,QAAQ,CAAC,aAAa;YAC/B,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,YAAY,CAAC;gBAC5C,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,EAChD,CAAC;YACD,sDAAsD;YACtD,IAAI,CAAC,SAAS,CACZ,WAAW,CAAC,SAAU,EACtB,WAAW,CAAC,EAAG,EACd,QAAQ,CAAC,QAAQ,CAAC,aAAc,CAAC,YAAY,CAAqB;gBACjE,EAAE,EACH,QAAQ,CAAC,QAAQ,CAAC,aAAc,CAAC,YAAY,CAAqB;gBACjE,EAAE,EACJ,KAAK,EACL,QAAQ,CAAC,QAAQ,CAAC,KAAK,CACxB,CAAC,KAAK,CAAC,CAAC,KAAY,EAAE,EAAE;;gBACvB,MAAM,CAAC,KAAK,CAAC,gDAAgD,KAAK,EAAE,EAAE;oBACpE,SAAS,EAAE,MAAA,WAAW,CAAC,SAAS,0CAAE,QAAQ,EAAE;oBAC5C,YAAY,EAAE,MAAA,WAAW,CAAC,EAAE,0CAAE,QAAQ,EAAE;iBACxB,CAAC,CAAC;YACtB,CAAC,CAAC,CAAC;QACL,CAAC;QAED;;;;WAIG;QACH,IAAI,WAAW,CAAC,SAAS,IAAI,WAAW,CAAC,EAAE,EAAE,CAAC;YAC5C,OAAO,CAAC,OAAO,EAAE;iBACd,IAAI,CAAC,KAAK,IAAI,EAAE;gBACf,MAAM,gCAAgC,CAAC,sBAAsB,CAC3D,WAAW,CACZ,CAAC;YACJ,CAAC,CAAC;iBACD,IAAI,CAAC,KAAK,IAAI,EAAE;gBACf,MAAM,gCAAgC,CAAC,sBAAsB,CAC3D,WAAW,CACZ,CAAC;YACJ,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,KAAY,EAAE,EAAE;;gBACtB,MAAM,CAAC,KAAK,CACV,0EAA0E,KAAK,EAAE,EACjF;oBACE,SAAS,EAAE,MAAA,WAAW,CAAC,SAAS,0CAAE,QAAQ,EAAE;oBAC5C,YAAY,EAAE,MAAA,WAAW,CAAC,EAAE,0CAAE,QAAQ,EAAE;iBACxB,CACnB,CAAC;YACJ,CAAC,CAAC,CAAC;QACP,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAGY,AAAN,KAAK,CAAC,UAAU,CAAC,YAAsB;QAC5C,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,gBAAgB,CAAC,0BAA0B,CAAC,CAAC;QACzD,CAAC;QAED,MAAM,UAAU,GACd,MAAM,0BAA0B,CAAC,MAAM,CAAC;YACtC,KAAK,EAAE;gBACL,YAAY,EAAE,YAAY;aAC3B;YACD,MAAM,EAAE;gBACN,GAAG,EAAE,IAAI;gBACT,IAAI,EAAE;oBACJ,GAAG,EAAE,IAAI;oBACT,KAAK,EAAE,IAAI;oBACX,IAAI,EAAE,IAAI;iBACX;aACF;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;YACD,KAAK,EAAE,iBAAiB;YACxB,IAAI,EAAE,CAAC;SACR,CAAC,CAAC;QAEL,MAAM,UAAU,GACd,MAAM,0BAA0B,CAAC,MAAM,CAAC;YACtC,KAAK,EAAE;gBACL,YAAY,EAAE,YAAY;aAC3B;YACD,MAAM,EAAE;gBACN,GAAG,EAAE,IAAI;gBACT,MAAM,EAAE,IAAI;aACb;YACD,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,iBAAiB;YACxB,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEL,MAAM,KAAK,GACT,UAAU,CAAC,GAAG,CAAC,CAAC,SAA8B,EAAE,EAAE;YAChD,OAAO,SAAS,CAAC,IAAK,CAAC;QACzB,CAAC,CAAC,IAAI,EAAE,CAAC;QAEX,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,MAAM,OAAO,GACX,UAAU,CAAC,GAAG,CAAC,CAAC,SAA8B,EAAE,EAAE;gBAChD,OAAO,SAAS,CAAC,MAAO,CAAC;YAC3B,CAAC,CAAC,IAAI,EAAE,CAAC;YAEX,MAAM,SAAS,GACb,MAAM,iBAAiB,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;YAEnD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACjC,qCAAqC;gBACrC,MAAM,kBAAkB,GAAqB,KAAK,CAAC,IAAI,CACrD,CAAC,IAAU,EAAE,EAAE;oBACb,OAAO,IAAI,CAAC,EAAG,CAAC,QAAQ,EAAE,KAAK,QAAQ,CAAC,EAAG,CAAC,QAAQ,EAAE,CAAC;gBACzD,CAAC,CACF,CAAC;gBAEF,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACxB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACvB,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAGY,AAAN,KAAK,CAAC,SAAS,CACpB,SAAmB,EACnB,YAAsB,EACtB,OAAwB,EACxB,OAAwB,EACxB,YAAqB,EACrB,KAAqC;QAErC,KAAK,IAAI,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,IAAI,OAAO,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;gBACpC,MAAM,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC3C,CAAC;YAED,MAAM,SAAS,GAAwB,IAAI,mBAAmB,EAAE,CAAC;YACjE,SAAS,CAAC,YAAY,GAAG,YAAY,CAAC;YACtC,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC;YAChC,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC;YAC1B,SAAS,CAAC,eAAe,GAAG,CAAC,YAAY,CAAC;YAE1C,MAAM,0BAA0B,CAAC,MAAM,CAAC;gBACtC,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,KAAK;aACb,CAAC,CAAC;QACL,CAAC;QAED,KAAK,IAAI,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,IAAI,OAAO,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;gBACpC,MAAM,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC3C,CAAC;YACD,MAAM,SAAS,GAAwB,IAAI,mBAAmB,EAAE,CAAC;YACjE,SAAS,CAAC,YAAY,GAAG,YAAY,CAAC;YACtC,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC;YAChC,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC;YAC1B,SAAS,CAAC,eAAe,GAAG,CAAC,YAAY,CAAC;YAC1C,MAAM,0BAA0B,CAAC,MAAM,CAAC;gBACtC,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,KAAK;aACb,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAGY,AAAN,KAAK,CAAC,4BAA4B,CACvC,SAAmB,EACnB,YAAsB;QAEtB,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,gBAAgB,CACxB,2DAA2D,CAC5D,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,gBAAgB,CACxB,8DAA8D,CAC/D,CAAC;QACJ,CAAC;QAED,MAAM,YAAY,GAAQ,MAAM,cAAc,CAAC,eAAe,EAAE,CAAC;QAEjE,0CAA0C;QAC1C,MAAM,YAAY,GAAW,SAAS,CAAC,QAAQ,EAAE,CAAC;QAClD,MAAM,eAAe,GAAW,YAAY,CAAC,QAAQ,EAAE,CAAC;QAExD,OAAO,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CACrD,IAAI,YAAY,iBAAiB,eAAe,EAAE,CACnD,CAAC;IACJ,CAAC;IAGY,AAAN,KAAK,CAAC,aAAa,CAAC,IAG1B;;QAIC,MAAM,YAAY,GAAa,IAAI,CAAC,YAAY,CAAC;QACjD,MAAM,GAAG,GAAmB,IAAI,CAAC,GAAG,CAAC;QAErC,IAAI,CAAC;YACH,yBAAyB;YACzB,MAAM,UAAU,GAAsB,MAAM,IAAI,CAAC,WAAW,CAAC;gBAC3D,EAAE,EAAE,YAAY;gBAChB,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;gBACD,MAAM,EAAE;oBACN,GAAG,EAAE,IAAI;oBACT,kBAAkB,EAAE,IAAI;oBACxB,WAAW,EAAE,IAAI;oBACjB,oBAAoB,EAAE,IAAI;oBAC1B,cAAc,EAAE,IAAI;iBACrB;aACF,CAAC,CAAC;YAEH,IAAI,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,WAAW,KAAI,UAAU,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACjE,MAAM,WAAW,GAAkB,MAAA,UAAU,CAAC,WAAW,0CAAE,KAAK,CAAC,IAAI,CAAC,CAAC;gBAEvE,MAAM,cAAc,GAClB,CAAA,MAAA,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,0CAAE,QAAQ,EAAE;qBAC1C,MAAA,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,0CAAE,QAAQ,EAAE,CAAA;oBACpC,GAAG,CAAC,MAAM,CAAC,aAAa;oBACxB,GAAG,CAAC,EAAE;oBACN,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAEb,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,MAAM,CAAC,KAAK,CAAC,kCAAkC,EAAE;wBAC/C,YAAY,EAAE,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,QAAQ,EAAE;qBACtB,CAAC,CAAC;oBACpB,OAAO;wBACL,aAAa,EAAE,KAAK;wBACpB,KAAK,EAAE,IAAI,kBAAkB,CAC3B,qDAAqD,CACtD;qBACF,CAAC;gBACJ,CAAC;gBAED,MAAM,eAAe,GAAY,EAAE,CAAC,aAAa,CAAC;oBAChD,GAAG,EACD,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE;wBAC3C,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;oBAClB,CAAC,CAAC,KAAI,EAAE;oBACV,SAAS,EAAE,WAAW;iBACvB,CAAC,CAAC;gBAEH,IAAI,CAAC,eAAe,EAAE,CAAC;oBACrB,MAAM,CAAC,KAAK,CACV,cAAc,cAAc,uCAAuC,YAAY,CAAC,QAAQ,EAAE,GAAG,EAC7F,EAAE,YAAY,EAAE,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,QAAQ,EAAE,EAAmB,CAC5D,CAAC;oBAEF,OAAO;wBACL,aAAa,EAAE,KAAK;wBACpB,KAAK,EAAE,IAAI,kBAAkB,CAC3B,mBAAmB,cAAc,8CAA8C,CAChF;qBACF,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,IAAI,UAAU,IAAI,UAAU,CAAC,kBAAkB,EAAE,CAAC;gBAChD,OAAO;oBACL,aAAa,EAAE,IAAI;iBACpB,CAAC;YACJ,CAAC;YAED,gBAAgB;YAChB,MAAM,KAAK,GAAuB,UAAU,CAAC,2BAA2B,CACtE,GAAG,EACH,UAAU,CAAC,eAAe,CAAC,YAAY,CAAC,CACzC,CAAC;YAEF,IAAI,KAAK,EAAE,CAAC;gBACV,IAAI,CAAC;oBACH,MAAM,OAAO,GAAqB,YAAY,CAAC,MAAM,CACnD,KAAe,CAChB,CAAC;oBAEF,IAAI,CAAA,MAAA,OAAO,CAAC,YAAY,0CAAE,QAAQ,EAAE,MAAK,YAAY,CAAC,QAAQ,EAAE,EAAE,CAAC;wBACjE,OAAO;4BACL,aAAa,EAAE,IAAI;yBACpB,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE;wBAChB,YAAY,EAAE,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,QAAQ,EAAE;qBACtB,CAAC,CAAC;gBACtB,CAAC;YACH,CAAC;YAED,MAAM,2BAA2B,GAAY,OAAO,CAClD,UAAU;gBACR,UAAU,CAAC,oBAAoB;gBAC/B,UAAU,CAAC,cAAc;gBACzB,CAAC,UAAU,CAAC,kBAAkB,CACjC,CAAC;YAEF,IAAI,2BAA2B,EAAE,CAAC;gBAChC,MAAM,sBAAsB,GAC1B,IAAI,CAAC,4BAA4B,CAAC;oBAChC,GAAG;oBACH,YAAY;iBACb,CAAC,CAAC;gBAEL,IAAI,sBAAsB,EAAE,CAAC;oBAC3B,OAAO;wBACL,aAAa,EAAE,IAAI;qBACpB,CAAC;gBACJ,CAAC;gBAED,OAAO;oBACL,aAAa,EAAE,KAAK;oBACpB,KAAK,EAAE,IAAI,+BAA+B,CACxC,gCAAgC,CACjC;iBACF,CAAC;YACJ,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE;gBAChB,YAAY,EAAE,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,QAAQ,EAAE;aACtB,CAAC,CAAC;QACtB,CAAC;QAED,OAAO;YACL,aAAa,EAAE,KAAK;YACpB,KAAK,EAAE,IAAI,yBAAyB,CAClC,mFAAmF,CACpF;SACF,CAAC;IACJ,CAAC;IAEO,4BAA4B,CAAC,IAGpC;;QACC,MAAM,KAAK,GAAuB,UAAU,CAAC,2BAA2B,CACtE,IAAI,CAAC,GAAG,EACR,UAAU,CAAC,8BAA8B,CAAC,IAAI,CAAC,YAAY,CAAC,CAC7D,CAAC;QAEF,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAe,YAAY,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAElE,OAAO,CACL,OAAO,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE;gBACxD,OAAO,CAAC,MAAM,CAAC,KAAK,iCAAiC,CACtD,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE;gBAChB,YAAY,EAAE,MAAA,IAAI,CAAC,YAAY,0CAAE,QAAQ,EAAE;aAC3B,CAAC,CAAC;QACtB,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAGY,AAAN,KAAK,CAAC,qCAAqC,CAAC,IAIlD;QACC,MAAM,SAAS,GAAS,IAAI,CAAC,SAAS,CAAC;QACvC,MAAM,OAAO,GAAS,IAAI,CAAC,OAAO,CAAC;QAEnC,IAAI,sBAAsB,GAAiC,EAAE,CAAC;QAE9D,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,sBAAsB,GAAG,MAAM,4BAA4B,CAAC,MAAM,CAAC;gBACjE,KAAK,EAAE;oBACL,SAAS,EAAE,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC;oBAC3C,MAAM,EAAE,WAAW,CAAC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAC;iBAClD;gBACD,MAAM,EAAE;oBACN,SAAS,EAAE,IAAI;oBACf,SAAS,EAAE,IAAI;oBACf,MAAM,EAAE,IAAI;oBACZ,QAAQ,EAAE,IAAI;oBACd,aAAa,EAAE;wBACb,IAAI,EAAE,IAAI;wBACV,KAAK,EAAE,IAAI;wBACX,QAAQ,EAAE,IAAI;qBACR;iBACT;gBACD,IAAI,EAAE;oBACJ,SAAS,EAAE,SAAS,CAAC,UAAU;iBAChC;gBACD,IAAI,EAAE,CAAC;gBACP,KAAK,EAAE,SAAS,EAAE,yBAAyB;gBAC3C,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;YAEH,sBAAsB,GAAG,sBAAsB,CAAC,MAAM,CACpD,MAAM,4BAA4B,CAAC,MAAM,CAAC;gBACxC,KAAK,EAAE;oBACL,SAAS,EAAE,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC;oBAC3C,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE;iBAC7B;gBACD,MAAM,EAAE;oBACN,SAAS,EAAE,IAAI;oBACf,SAAS,EAAE,IAAI;oBACf,MAAM,EAAE,IAAI;oBACZ,QAAQ,EAAE,IAAI;oBACd,aAAa,EAAE;wBACb,IAAI,EAAE,IAAI;wBACV,KAAK,EAAE,IAAI;wBACX,QAAQ,EAAE,IAAI;qBACR;iBACT;gBACD,IAAI,EAAE;oBACJ,SAAS,EAAE,SAAS,CAAC,UAAU;iBAChC;gBACD,IAAI,EAAE,CAAC;gBACP,KAAK,EAAE,SAAS,EAAE,yBAAyB;gBAC3C,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CACH,CAAC;YAEF,4CAA4C;YAC5C,sBAAsB,GAAG,sBAAsB,CAAC,IAAI,CAClD,CAAC,CAAwB,EAAE,CAAwB,EAAE,EAAE;gBACrD,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;oBACjC,OAAO,CAAC,CAAC;gBACX,CAAC;gBAED,OAAO,CAAC,CAAC,SAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,SAAU,CAAC,OAAO,EAAE,CAAC;YACzD,CAAC,CACF,CAAC;QACJ,CAAC;QAED,OAAO,sBAAsB,CAAC;IAChC,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;OAqBG;IAEU,AAAN,KAAK,CAAC,qBAAqB,CAChC,YAAsB;QAEtB,MAAM,OAAO,GACX,MAAM,uBAAuB,CAAC,MAAM,CAAC;YACnC,KAAK,EAAE;gBACL,YAAY,EAAE,YAAY;aAC3B;YACD,MAAM,EAAE;gBACN,UAAU,EAAE,IAAI;gBAChB,gBAAgB,EAAE,IAAI;gBACtB,mBAAmB,EAAE,IAAI;gBACzB,eAAe,EAAE,IAAI;aACtB;YACD,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,iBAAiB;YACxB,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;gBACZ,WAAW,EAAE,IAAI;aAClB;SACF,CAAC,CAAC;QAEL,MAAM,qBAAqB,GAA4B,OAAO,CAAC,MAAM,CACnE,CAAC,MAAwB,EAAE,EAAE;YAC3B,OAAO,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACpC,CAAC,CACF,CAAC;QAEF,OAAO,CACL,qBAAqB,CAAC,IAAI,CAAC,CAAC,MAAwB,EAAE,EAAE;YACtD,OAAO,MAAM,CAAC,gBAAgB,CAAC;QACjC,CAAC,CAAC;YACF,qBAAqB,CAAC,IAAI,CAAC,CAAC,MAAwB,EAAE,EAAE;gBACtD,OAAO,MAAM,CAAC,mBAAmB,IAAI,MAAM,CAAC,eAAe,CAAC;YAC9D,CAAC,CAAC;YACF,CAAC,CAAC,qBAAqB;gBACrB,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,MAAwB,EAAE,EAAE;oBACtD,OAAO,MAAM,CAAC,eAAe,CAAC;gBAChC,CAAC,CAAC;gBACJ,CAAC,CAAC,SAAS,CAAC;YACd,IAAI,CACL,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,0BAA0B,CACtC,MAAwB;QAExB,IAAI,MAAM,CAAC,gBAAgB,IAAI,MAAM,CAAC,mBAAmB,EAAE,CAAC;YAC1D,OAAO,QAAQ,CAAC,KAAK,CAAC;QACxB,CAAC;QAED,OAAO,cAAc,CAAC,eAAe,EAAE,CAAC;IAC1C,CAAC;IAGY,AAAN,KAAK,CAAC,gBAAgB,CAAC,YAAsB;QAClD,MAAM,QAAQ,GAAW,YAAY,CAAC,QAAQ,EAAE,CAAC;QACjD,MAAM,MAAM,GAAuB,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACzE,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,MAAM,GACV,MAAM,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;QAEjD,IAAI,aAAa,GAAW,EAAE,CAAC;QAE/B,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,UAAU,EAAE,CAAC;YACvB,MAAM,QAAQ,GAAa,MAAM,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;YACzE,aAAa,GAAG,GAAG,QAAQ,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;QACpD,CAAC;QAED,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,IAAI,GAAa,MAAM,cAAc,CAAC,OAAO,EAAE,CAAC;YAEtD,MAAM,YAAY,GAAa,MAAM,cAAc,CAAC,eAAe,EAAE,CAAC;YAEtE,iFAAiF;YACjF,aAAa,GAAG,IAAI,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC;iBACxC,QAAQ,CAAC,eAAe,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAC;iBACnD,QAAQ,EAAE,CAAC;QAChB,CAAC;QAED,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,QAAQ,EAAE,aAAa,EAAE,KAAM,CAAC,CAAC;QAE7D,OAAO,aAAa,CAAC;IACvB,CAAC;IAGY,AAAN,KAAK,CAAC,qBAAqB,CAAC,YAAsB;QACvD,MAAM,MAAM,GACV,MAAM,IAAI,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;QAEjD,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,UAAU,EAAE,CAAC;YACvB,MAAM,QAAQ,GAAa,MAAM,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;YACzE,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;QAC3C,CAAC;QAED,MAAM,IAAI,GAAa,MAAM,cAAc,CAAC,OAAO,EAAE,CAAC;QAEtD,MAAM,YAAY,GAAa,MAAM,cAAc,CAAC,eAAe,EAAE,CAAC;QAEtE,iFAAiF;QACjF,OAAO,IAAI,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC;aAC/B,QAAQ,CAAC,eAAe,GAAG,YAAY,CAAC,QAAQ,EAAE,CAAC;aACnD,QAAQ,EAAE,CAAC;IAChB,CAAC;IAGwB,AAAN,KAAK,CAAC,cAAc,CACrC,QAA8B;QAE9B,+BAA+B;QAE/B,IAAI,QAAQ,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YACvC,MAAM,sBAAsB,GAAsB,MAAM,IAAI,CAAC,MAAM,CAAC;gBAClE,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,MAAM,EAAE;oBACN,GAAG,EAAE,IAAI;oBACT,SAAS,EAAE,IAAI;iBAChB;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;gBACD,IAAI,EAAE,CAAC;gBACP,KAAK,EAAE,iBAAiB;aACzB,CAAC,CAAC;YAEH,KAAK,MAAM,UAAU,IAAI,sBAAsB,EAAE,CAAC;gBAChD,MAAM,YAAY,GAChB,MAAM,cAAc,CAAC,yBAAyB,CAAC,UAAU,CAAC,SAAU,CAAC,CAAC;gBAExE,IAAI,CAAC,YAAY,EAAE,CAAC;oBAClB,MAAM,IAAI,gBAAgB,CACxB,uIAAuI,CACxI,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,IACE,QAAQ,CAAC,IAAI,CAAC,mBAAmB;YACjC,QAAQ,CAAC,IAAI,CAAC,uBAAuB;YACrC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,EAC9B,CAAC;YACD,MAAM,WAAW,GAAsB,MAAM,IAAI,CAAC,MAAM,CAAC;gBACvD,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,MAAM,EAAE;oBACN,GAAG,EAAE,IAAI;oBACT,mBAAmB,EAAE,IAAI;oBACzB,uBAAuB,EAAE,IAAI;iBAC9B;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;gBACD,IAAI,EAAE,CAAC;gBACP,KAAK,EAAE,iBAAiB;aACzB,CAAC,CAAC;YAEH,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;gBACrC,MAAM,gBAAgB,GACnB,QAAQ,CAAC,IAAI,CAAC,mBAA4B;oBAC3C,UAAU,CAAC,mBAAmB,CAAC;gBACjC,MAAM,uBAAuB,GAC3B,SAAS,CAAC,QAAQ,CACf,QAAQ,CAAC,IAAI,CAAC,uBAAqC;oBAClD,UAAU,CAAC,uBAAuB,CACrC,CAAC;gBAEJ,IAAI,gBAAgB,IAAI,uBAAuB,EAAE,CAAC;oBAChD,MAAM,cAAc,GAAS,SAAS,CAAC,WAAW,CAChD,gBAAgB,EAChB,uBAAuB,CACxB,CAAC;oBACF,QAAQ,CAAC,IAAI,CAAC,gBAAgB,GAAG,cAAc,CAAC;gBAClD,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO;YACL,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE,QAAQ;SACnB,CAAC;IACJ,CAAC;IAGY,AAAN,KAAK,CAAC,eAAe,CAAC,IAG5B;;QACC,MAAM,IAAI,GAAa,MAAM,cAAc,CAAC,OAAO,EAAE,CAAC;QACtD,MAAM,YAAY,GAAa,MAAM,cAAc,CAAC,eAAe,EAAE,CAAC;QAEtE,MAAM,WAAW,GACf,MAAM,2BAA2B,CAAC,gCAAgC,CAAC;YACjE,IAAI,CAAC,YAAY;SAClB,CAAC,CAAC;QAEL,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,gBAAgB,CAAC,uBAAuB,CAAC,CAAC;QACtD,CAAC;QAED,MAAM,UAAU,GAAe,WAAW,CAAC,CAAC,CAAE,CAAC;QAE/C,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;YACnB,MAAM,IAAI,gBAAgB,CAAC,uBAAuB,CAAC,CAAC;QACtD,CAAC;QAED,MAAM,aAAa,GAAW,MAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACzE,MAAM,cAAc,GAClB,UAAU,CAAC,SAAS,IAAI,UAAU,CAAC,IAAI,IAAI,aAAa,CAAC;QAE3D,MAAM,kBAAkB,GACtB,CAAA,MAAA,UAAU,CAAC,EAAE,0CAAE,QAAQ,EAAE,MAAI,MAAA,UAAU,CAAC,GAAG,0CAAE,QAAQ,EAAE,CAAA,IAAI,IAAI,CAAC;QAElE,MAAM,MAAM,GAAqB,MAAM,IAAI,CAAC,qBAAqB,CAAC;YAChE,YAAY,EAAE,UAAU,CAAC,EAAG;YAC5B,WAAW,EAAE,UAAU,CAAC,gBAAgB,IAAI,EAAE;SAC/C,CAAC,CAAC;QAEH;;;;;;;;;WASG;QACH,MAAM,yBAAyB,GAC7B,MAAM,+CAA+C,CAAC,wBAAwB,CAC5E;YACE,YAAY,EAAE,UAAU,CAAC,EAAG;YAC5B,SAAS,EAAE,yCAAyC,CAAC,gBAAgB;YACrE,kBAAkB,EAAE,sCAAsC,CAAC,KAAK;SACjE,CACF,CAAC;QAOJ,MAAM,SAAS,GAAsB,KAAK,EACxC,KAAY,EACZ,cAA0B,EACX,EAAE;YACjB,mBAAmB;YAEnB,MAAM,IAAI,GAAoC;gBAC5C,cAAc,EAAE,cAAc;gBAC9B,qCAAqC,EACnC,OAAO,CAAC,4BAA4B,CAAC,UAAU,CAAC;gBAClD,aAAa,EAAE,aAAa;gBAC5B,UAAU,EAAE,aAAa;gBACzB,YAAY,EAAE,MAAM,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;gBAC1D,MAAM,EAAE,MAAa;gBACrB,OAAO,EACL,UAAU,CAAC,UAAU,IAAI,kBAAkB;oBACzC,CAAC,CAAC,IAAI,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC;yBACxB,QAAQ,CAAC,kBAAkB,CAAC;yBAC5B,QAAQ,CAAC,SAAS,kBAAkB,EAAE,CAAC;yBACvC,QAAQ,EAAE;oBACf,CAAC,CAAC,EAAE;gBACR,kBAAkB,EAAE,UAAU,CAAC,kBAAkB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;gBAEpE,cAAc,EAAE,CAAA,cAAc,aAAd,cAAc,uBAAd,cAAc,CAAE,QAAQ,EAAE,KAAI,EAAE;aACjD,CAAC;YAEF;;;;;eAKG;YACH,MAAM,iBAAiB,GAAY,OAAO,CACxC,CAAA,yBAAyB,aAAzB,yBAAyB,uBAAzB,yBAAyB,CAAE,YAAY,KAAI,UAAU,CAAC,UAAU,CACjE,CAAC;YAEF,WAAW,CAAC,QAAQ,CAClB,iBAAiB;gBACf,CAAC,CAAC;oBACE,OAAO,EAAE,KAAK;oBACd,mEAAmE;oBACnE,IAAI,EAAE,yBAA0B,CAAC,YAAa;oBAC9C,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,yBAA0B,CAAC,YAAY;wBAC9C,CAAC,CAAC,yBAA0B,CAAC,YAAY;wBACzC,CAAC,CAAC,WAAW,GAAG,cAAc;iBACjC;gBACH,CAAC,CAAC;oBACE,OAAO,EAAE,KAAK;oBACd,YAAY,EAAE,iBAAiB,CAAC,0BAA0B;oBAC1D,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,WAAW,GAAG,cAAc;iBACtC,EACL;gBACE,UAAU,EAAE,wBAAwB,CAAC,aAAa,CAChD,UAAU,CAAC,UAAU,CACtB;gBACD,SAAS,EAAE,UAAU,CAAC,SAAS;gBAC/B,YAAY,EAAE,UAAU,CAAC,EAAG;aAC7B,CACF,CAAC,KAAK,CAAC,CAAC,GAAU,EAAE,EAAE;;gBACrB,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE;oBAChB,SAAS,EAAE,MAAA,UAAU,CAAC,SAAS,0CAAE,QAAQ,EAAE;oBAC3C,YAAY,EAAE,MAAA,UAAU,CAAC,EAAE,0CAAE,QAAQ,EAAE;iBACvB,CAAC,CAAC;YACtB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,kEAAkE;YAClE,MAAM,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAClC,OAAO,CAAC,iEAAiE;QAC3E,CAAC;QAED,MAAM,WAAW,GACf,MAAM,2BAA2B,CAAC,0BAA0B,CAC1D,UAAU,CAAC,EAAG,EACd;YACE,MAAM,EAAE,IAAI;YACZ,WAAW,EAAE,IAAI;SAClB,CACF,CAAC;QAEJ,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,IAAI,CAAC;gBACH,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;oBACpB,SAAS;gBACX,CAAC;gBAED,MAAM,sBAAsB,GAAY,CAAC,UAAU,CAAC,cAAc,CAAC;gBAEnE,IAAI,CAAC,sBAAsB,EAAE,CAAC;oBAC5B,SAAS;gBACX,CAAC;gBAED,MAAM,cAAc,GAClB,2BAA2B,CAAC,kBAAkB,CAC5C,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,EAC7B,UAAU,CAAC,EAAG,CACf,CAAC,QAAQ,EAAE,CAAC;gBAEf,IAAI,UAAU,CAAC,eAAe,EAAE,CAAC;oBAC/B,MAAM,SAAS,CACb,UAAU,CAAC,eAAe,EAC1B,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC,CAC/B,CAAC;gBACJ,CAAC;gBAED,IAAI,UAAU,CAAC,eAAe,EAAE,CAAC;oBAC/B,SAAS,CAAC,oDAAoD;gBAChE,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE;oBAChB,SAAS,EAAE,MAAA,UAAU,CAAC,SAAS,0CAAE,QAAQ,EAAE;oBAC3C,YAAY,EAAE,MAAA,UAAU,CAAC,EAAE,0CAAE,QAAQ,EAAE;iBACvB,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;IACH,CAAC;IAGY,AAAN,KAAK,CAAC,qBAAqB,CAAC,IAGlC;QACC,MAAM,UAAU,GAAsB,MAAM,IAAI,CAAC,WAAW,CAAC;YAC3D,EAAE,EAAE,IAAI,CAAC,YAAY;YACrB,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;YACD,MAAM,EAAE;gBACN,uBAAuB,EAAE,IAAI;aAC9B;SACF,CAAC,CAAC;QAEH,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,gBAAgB,CAAC,uBAAuB,CAAC,CAAC;QACtD,CAAC;QAED,MAAM,mBAAmB,GACvB,MAAM,IAAI,CAAC,sBAAsB,CAAC;YAChC,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC,CAAC;QAEL,MAAM,YAAY,GAAW,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC;QAEpD,MAAM,OAAO,GAAS,aAAa,CAAC,cAAc,EAAE,CAAC;QACrD,MAAM,SAAS,GAAS,aAAa,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;QACnE,MAAM,eAAe,GAAW,GAAG,YAAY,UAAU,aAAa,CAAC,yCAAyC,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,aAAa,CAAC,yCAAyC,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC;QAEjN,IAAI,mBAAmB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrC,OAAO;gBACL,WAAW,EAAE,eAAe;gBAC5B,cAAc,EAAE,CAAC;gBACjB,cAAc,EAAE,CAAC;gBACjB,oBAAoB,EAAE,IAAI;gBAC1B,8BAA8B,EAAE,GAAG;gBACnC,SAAS,EAAE,EAAE;aACd,CAAC;QACJ,CAAC;QAED,MAAM,aAAa,GAAW,MAAM,IAAI,CAAC,4BAA4B,CAAC;YACpE,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,CAAC,CAAC;QAEH,MAAM,QAAQ,GAGV,MAAM,IAAI,CAAC,yBAAyB,CAAC;YACvC,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC,CAAC;QAEH,MAAM,QAAQ,GACZ,MAAM,IAAI,CAAC,qCAAqC,CAAC;YAC/C,UAAU,EAAE,QAAQ,CAAC,oBAAoB;YACzC,SAAS,EAAE,SAAS;YACpB,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;QAEL,MAAM,WAAW,GAAgC,EAAE,CAAC;QAEpD,KAAK,MAAM,QAAQ,IAAI,mBAAmB,EAAE,CAAC;YAC3C,wDAAwD;YAExD,IAAI,yBAAyB,GAAoB,EAAE,CAAC;YAEpD,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;gBACvB,yBAAyB,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YACrD,CAAC;YAED,IAAI,QAAQ,CAAC,cAAc,EAAE,CAAC;gBAC5B,MAAM,OAAO,GAAW,QAAQ,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;gBAC3D,yBAAyB,GAAG,yBAAyB,CAAC,MAAM,CAC1D,QAAQ,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE,CACxC,CAAC;YACJ,CAAC;YAED,MAAM,uBAAuB,GAC3B,QAAQ,CAAC,MAAM,CAAC,CAAC,IAA2B,EAAE,EAAE;gBAC9C,OAAO,yBAAyB,CAAC,IAAI,CAAC,CAAC,EAAY,EAAE,EAAE;;oBACrD,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAK,MAAA,IAAI,CAAC,SAAS,0CAAE,QAAQ,EAAE,CAAA,CAAC;gBACtD,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEL,MAAM,aAAa,GAAW,UAAU,CAAC,yBAAyB,CAChE,uBAAuB,EACvB,QAAQ,CAAC,sBAAsB,IAAI,eAAe,CAAC,WAAW,EAC9D,UAAU,CAAC,uBAAwB,CACpC,CAAC;YACF,MAAM,QAAQ,GAGV,UAAU,CAAC,yBAAyB,CACtC,uBAAuB,EACvB,UAAU,CAAC,uBAAwB,CACpC,CAAC;YAEF,MAAM,UAAU,GAAyB;gBACvC,YAAY,EAAE,QAAQ,CAAC,WAAW,IAAI,EAAE;gBACxC,kBAAkB,EAAE,MAAM,IAAI,CAAC,4BAA4B,CAAC;oBAC1D,UAAU,EAAE,yBAAyB;oBACrC,WAAW,EAAE,IAAI,CAAC,WAAW;iBAC9B,CAAC;gBACF,aAAa,EAAE,aAAa;gBAC5B,qBAAqB,EAAE,GAAG,aAAa,GAAG;gBAC1C,yBAAyB,EACvB,aAAa,CAAC,mCAAmC,CAC/C,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,sBAAsB,GAAG,EAAE,CAAC,CAChD;aACJ,CAAC;YAEF,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC/B,CAAC;QAED,MAAM,gBAAgB,GACpB,WAAW,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,IAA0B,EAAE,EAAE;YAC7D,OAAO,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC;QAClC,CAAC,EAAE,CAAC,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC;QAE7B,MAAM,sBAAsB,GAAW,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;QAEzE,MAAM,sBAAsB,GAGxB,UAAU,CAAC,yBAAyB,CACtC,QAAQ,EACR,UAAU,CAAC,uBAAwB,CACpC,CAAC;QAEF,OAAO;YACL,WAAW,EAAE,eAAe;YAC5B,cAAc,EAAE,mBAAmB,CAAC,MAAM;YAC1C,cAAc,EAAE,aAAa;YAC7B,oBAAoB,EAAE,sBAAsB;YAC5C,SAAS,EAAE,WAAW;YACtB,8BAA8B,EAC5B,aAAa,CAAC,mCAAmC,CAC/C,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,sBAAsB,GAAG,EAAE,CAAC,CAC9D;SACJ,CAAC;IACJ,CAAC;IAGY,AAAN,KAAK,CAAC,4BAA4B,CAAC,IAGzC;QACC,MAAM,KAAK,GAAS,aAAa,CAAC,cAAc,EAAE,CAAC;QAEnD,MAAM,WAAW,GAAS,aAAa,CAAC,cAAc,CACpD,IAAI,CAAC,WAAW,IAAI,EAAE,CACvB,CAAC;QAEF,MAAM,aAAa,GAAmB,MAAM,eAAe,CAAC,OAAO,CAAC;YAClE,KAAK,EAAE;gBACL,QAAQ,EAAE,IAAI,CAAC,UAAiB;gBAChC,SAAS,EAAE,WAAW,CAAC,SAAS,CAAC,WAAW,EAAE,KAAK,CAAC;aACrD;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,OAAO,aAAa,CAAC,QAAQ,EAAE,CAAC;IAClC,CAAC;IAGY,AAAN,KAAK,CAAC,4BAA4B,CAAC,IAGzC;QACC,MAAM,oBAAoB,GAGtB,MAAM,IAAI,CAAC,yBAAyB,CAAC;YACvC,YAAY,EAAE,IAAI,CAAC,YAAY;SAChC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,4BAA4B,CAAC;YACvC,UAAU,EAAE,oBAAoB,CAAC,oBAAoB;YACrD,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,CAAC,CAAC;IACL,CAAC;IAGY,AAAN,KAAK,CAAC,yBAAyB,CAAC,IAEtC;QAIC,MAAM,mBAAmB,GACvB,MAAM,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAE1C,MAAM,eAAe,GAAoB,mBAAmB;aACzD,GAAG,CAAC,CAAC,QAA4B,EAAE,EAAE;YACpC,OAAO,QAAQ,CAAC,cAAe,CAAC;QAClC,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,EAAY,EAAE,EAAE;YACvB,OAAO,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe;QACrC,CAAC,CAAC,CAAC;QAEL,MAAM,eAAe,GAAgC,EAAE,CAAC;QAExD,6BAA6B;QAC7B,MAAM,oBAAoB,GAAoB,mBAAmB;aAC9D,GAAG,CAAC,CAAC,OAA2B,EAAE,EAAE;YACnC,OAAO,OAAO,CAAC,SAAU,CAAC;QAC5B,CAAC,CAAC;aACD,MAAM,CAAC,CAAC,EAAY,EAAE,EAAE;YACvB,OAAO,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe;QACrC,CAAC,CAAC,CAAC;QAEL,KAAK,MAAM,cAAc,IAAI,eAAe,EAAE,CAAC;YAC7C,+CAA+C;YAE/C,6BAA6B;YAE7B,MAAM,cAAc,GAClB,MAAM,2BAA2B,CAAC,MAAM,CAAC;gBACvC,KAAK,EAAE;oBACL,cAAc,EAAE,cAAc;iBAC/B;gBACD,MAAM,EAAE;oBACN,SAAS,EAAE,IAAI;iBAChB;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;gBACD,KAAK,EAAE,iBAAiB;gBACxB,IAAI,EAAE,CAAC;aACR,CAAC,CAAC;YAEL,MAAM,kBAAkB,GAAoB,cAAc;iBACvD,GAAG,CAAC,CAAC,QAA8B,EAAE,EAAE;gBACtC,OAAO,QAAQ,CAAC,SAAU,CAAC;YAC7B,CAAC,CAAC;iBACD,MAAM,CAAC,CAAC,EAAY,EAAE,EAAE;gBACvB,OAAO,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe;YACrC,CAAC,CAAC,CAAC;YAEL,KAAK,MAAM,SAAS,IAAI,kBAAkB,EAAE,CAAC;gBAC3C,IACE,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,IAAc,EAAE,EAAE;oBAC5C,OAAO,IAAI,CAAC,QAAQ,EAAE,KAAK,SAAS,CAAC,QAAQ,EAAE,CAAC;gBAClD,CAAC,CAAC,EACF,CAAC;oBACD,oBAAoB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACvC,CAAC;YACH,CAAC;YAED,eAAe,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,GAAG,kBAAkB,CAAC;QAClE,CAAC;QAED,OAAO;YACL,oBAAoB,EAAE,oBAAoB;YAC1C,eAAe,EAAE,eAAe;SACjC,CAAC;IACJ,CAAC;IAGY,AAAN,KAAK,CAAC,sBAAsB,CAAC,IAEnC;QACC,+BAA+B;QAC/B,MAAM,mBAAmB,GACvB,MAAM,yBAAyB,CAAC,MAAM,CAAC;YACrC,KAAK,EAAE;gBACL,YAAY,EAAE,IAAI,CAAC,YAAY;aAChC;YACD,MAAM,EAAE;gBACN,iBAAiB,EAAE,IAAI;gBACvB,eAAe,EAAE;oBACf,IAAI,EAAE,IAAI;oBACV,QAAQ,EAAE,IAAI;oBACd,YAAY,EAAE,IAAI;oBAClB,eAAe,EAAE,IAAI;iBACtB;gBACD,SAAS,EAAE,IAAI;gBACf,cAAc,EAAE,IAAI;gBACpB,kBAAkB,EAAE,IAAI;gBACxB,WAAW,EAAE,IAAI;gBACjB,YAAY,EAAE,IAAI;gBAClB,eAAe,EAAE,IAAI;gBACrB,OAAO,EAAE;oBACP,GAAG,EAAE,IAAI;oBACT,sBAAsB,EAAE,IAAI;iBAC7B;gBACD,cAAc,EAAE,IAAI;gBACpB,KAAK,EAAE,IAAI;aACZ;YACD,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,iBAAiB;YACxB,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEL,gCAAgC;QAEhC,OAAO,mBAAmB,CAAC,IAAI,CAC7B,CAAC,CAAqB,EAAE,CAAqB,EAAE,EAAE;YAC/C,OAAO,CAAC,CAAC,KAAM,GAAG,CAAC,CAAC,KAAM,CAAC;QAC7B,CAAC,CACF,CAAC;IACJ,CAAC;IAGY,AAAN,KAAK,CAAC,8BAA8B,CAAC,IAG3C;QACC,MAAM,2BAA2B,GAAyB,EAAE,CAAC;QAE7D,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAChD,IAAI,QAAQ,CAAC,cAAc,EAAE,CAAC;gBAC5B,MAAM,qBAAqB,GACzB,MAAM,2BAA2B,CAAC,MAAM,CAAC;oBACvC,KAAK,EAAE;wBACL,cAAc,EAAE,QAAQ,CAAC,cAAc;qBACxC;oBACD,MAAM,EAAE;wBACN,SAAS,EAAE,IAAI;wBACf,OAAO,EAAE;4BACP,sBAAsB,EAAE,IAAI;yBAC7B;qBACF;oBACD,IAAI,EAAE,CAAC;oBACP,KAAK,EAAE,iBAAiB;oBACxB,KAAK,EAAE;wBACL,MAAM,EAAE,IAAI;qBACb;iBACF,CAAC,CAAC;gBAEL,MAAM,QAAQ,GAAoB,qBAAqB;qBACpD,MAAM,CAAC,CAAC,IAA0B,EAAE,EAAE;oBACrC,OAAO,CACL,IAAI,CAAC,OAAO;wBACZ,IAAI,CAAC,OAAO,CAAC,sBAAsB;wBACnC,IAAI,CAAC,SAAS,CACf,CAAC;gBACJ,CAAC,CAAC;qBACD,GAAG,CAAC,CAAC,IAA0B,EAAE,EAAE;oBAClC,OAAO,IAAI,CAAC,OAAQ,CAAC,sBAAuB,CAAC;gBAC/C,CAAC,CAAC,CAAC;gBAEL,IAAI,WAAW,GAAyB,IAAI,CAAC;gBAE7C,KAAK,MAAM,QAAQ,IAAI,QAAQ,EAAE,CAAC;oBAChC,MAAM,MAAM,GAA8B,IAAI,CAAC,eAAe,CAAC,IAAI,CACjE,CAAC,MAAqB,EAAE,EAAE;;wBACxB,OAAO,CAAA,MAAA,MAAM,CAAC,GAAG,0CAAE,QAAQ,EAAE,MAAK,QAAQ,CAAC,QAAQ,EAAE,CAAC;oBACxD,CAAC,CACF,CAAC;oBAEF,IACE,MAAM;wBACN,CAAC,CAAC,WAAW,IAAI,MAAM,CAAC,QAAS,GAAG,WAAW,CAAC,QAAS,CAAC,EAC1D,CAAC;wBACD,WAAW,GAAG,MAAM,CAAC;oBACvB,CAAC;gBACH,CAAC;gBAED,IAAI,WAAW,IAAI,WAAW,CAAC,GAAG,EAAE,CAAC;oBACnC,2BAA2B,CAAC,QAAQ,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;wBAC7D,IAAI,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;gBAClC,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,2BAA2B,CAAC;IACrC,CAAC;IAGM,uBAAuB,CAAC,IAI9B;;QACC,IAAI,aAAa,GACf,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;YACxD,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;YACzB,CAAC,CAAC,IAAI,CAAC;QAEX,MAAM,IAAI,GAAuB,EAAE,CAAC;QAEpC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAChD,IAAI,MAAA,QAAQ,CAAC,OAAO,0CAAE,sBAAsB,EAAE,CAAC;gBAC7C,IACE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CACzB,CAAA,MAAA,QAAQ,CAAC,OAAO,0CAAE,sBAAsB,CAAC,QAAQ,EAAE,KAAI,EAAE,CAC1D,EACD,CAAC;oBACD,IAAI,CAAC,MAAA,MAAA,QAAQ,CAAC,OAAO,0CAAE,sBAAsB,0CAAE,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;gBACjE,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,QAAQ,CAAC,OAAQ,CAAC,sBAAuB,CAAC,QAAQ,EAAE,CAAE,EAAE,CAAC;gBAChE,CAAC;YACH,CAAC;QACH,CAAC;QAED,kCAAkC;QAElC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,2BAA2B,EAAE,CAAC;YACvD,MAAM,QAAQ,GACZ,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,CAAC;YAE5C,IAAI,QAAQ,EAAE,CAAC;gBACb,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;oBAC3D,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;gBAChC,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAE,EAAE,CAAC;gBAC/B,CAAC;YACH,CAAC;QACH,CAAC;QAED,KAAK,MAAM,aAAa,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACjD,IAAI,aAAa,CAAC,GAAG,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;gBACjD,aAAa,GAAG,aAAa,CAAC;YAChC,CAAC;QACH,CAAC;QAED,OAAO,aAAa,CAAC;IACvB,CAAC;CACF;AA57Cc;IADZ,WAAW,EAAE;;;;wDA0Cb;AAYY;IADZ,WAAW,EAAE;;;;iDAyBb;AAiBwB;IADxB,WAAW,EAAE;;;;6CAwFb;AAGwB;IADxB,WAAW,EAAE;;6CAGC,UAAU;;8CAkExB;AAGY;IADZ,WAAW,EAAE;;qCACwB,QAAQ;;yCAsE7C;AAGY;IADZ,WAAW,EAAE;;qCAED,QAAQ;QACL,QAAQ;QACb,KAAK;QACL,KAAK;;wCAmCf;AAGY;IADZ,WAAW,EAAE;;qCAED,QAAQ;QACL,QAAQ;;2DAuBvB;AAGY;IADZ,WAAW,EAAE;;;;4CA6Ib;AAgCY;IADZ,WAAW,EAAE;;;;oEA+Eb;AAyBY;IADZ,WAAW,EAAE;;qCAEE,QAAQ;;oDAyCvB;AAoBY;IADZ,WAAW,EAAE;;qCAC8B,QAAQ;;+CA+BnD;AAGY;IADZ,WAAW,EAAE;;qCACmC,QAAQ;;oDAiBxD;AAGwB;IADxB,WAAW,EAAE;;;;6CA2Eb;AAGY;IADZ,WAAW,EAAE;;;;8CAiLb;AAGY;IADZ,WAAW,EAAE;;;;oDA6Ib;AAGY;IADZ,WAAW,EAAE;;;;2DAsBb;AAGY;IADZ,WAAW,EAAE;;;;2DAgBb;AAGY;IADZ,WAAW,EAAE;;;;wDA0Eb;AAGY;IADZ,WAAW,EAAE;;;;qDA6Cb;AAGY;IADZ,WAAW,EAAE;;;;6DAgEb;AAGM;IADN,WAAW,EAAE;;;;sDAiDb;AAEH,eAAe,IAAI,OAAO,EAAE,CAAC"}
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
- * Duplicate guard is per (exception, taskType): an active FixException
189
- * run must not block queuing a WriteRegressionTest run and vice versa.
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
- await this.validateNoActiveCodeFixRunExists(telemetryExceptionId, taskType);
192
- const run = new AIRun();
193
- run.projectId = telemetryException.projectId;
194
- run.runType = AIRunType.CodeFix;
195
- run.codeFixTaskType = taskType;
196
- run.status = AIRunStatus.Queued;
197
- run.triggeredByTelemetryExceptionId = telemetryExceptionId;
198
- // Attribution: the user who clicked "Fix with AI Agent".
199
- if (props.userId) {
200
- run.userId = props.userId;
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),