@oneuptime/common 11.5.12 → 11.6.0

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 (193) hide show
  1. package/Models/DatabaseModels/AIInsight.ts +30 -0
  2. package/Models/DatabaseModels/EnterpriseLicense.ts +21 -0
  3. package/Models/DatabaseModels/EnterpriseLicenseInstance.ts +25 -0
  4. package/Models/DatabaseModels/GlobalConfig.ts +76 -0
  5. package/Models/DatabaseModels/Project.ts +30 -0
  6. package/Models/DatabaseModels/TelemetryException.ts +128 -0
  7. package/Server/API/AIAgentDataAPI.ts +129 -5
  8. package/Server/API/AIInvestigationAPI.ts +87 -0
  9. package/Server/API/EnterpriseLicenseAPI.ts +57 -0
  10. package/Server/API/GlobalConfigAPI.ts +62 -1
  11. package/Server/EnvironmentConfig.ts +22 -0
  12. package/Server/Infrastructure/Postgres/SchemaMigrations/1784640000000-AddExceptionTriageAndPrivacyColumns.ts +56 -0
  13. package/Server/Infrastructure/Postgres/SchemaMigrations/1784659816363-AddInstanceVersionAndLatestReleaseColumns.ts +38 -0
  14. package/Server/Infrastructure/Postgres/SchemaMigrations/1784705487674-AddEnterpriseLicenseEvaluationColumns.ts +25 -0
  15. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +6 -0
  16. package/Server/Services/AIRunService.ts +8 -0
  17. package/Server/Services/AnalyticsDatabaseService.ts +48 -45
  18. package/Server/Services/DatabaseService.ts +66 -1
  19. package/Server/Services/TelemetryExceptionService.ts +320 -24
  20. package/Server/Services/WorkflowService.ts +100 -39
  21. package/Server/Types/Workflow/Components/Schedule.ts +57 -32
  22. package/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.ts +15 -4
  23. package/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.ts +15 -4
  24. package/Server/Utils/AI/SRE/Insights/InsightScanner.ts +222 -24
  25. package/Server/Utils/AI/SRE/Insights/InsightTriageRunner.ts +225 -9
  26. package/Server/Utils/AI/SRE/SubjectCodeFixRun.ts +39 -0
  27. package/Server/Utils/AI/SRE/TelemetryImprovementTaskTrigger.ts +114 -0
  28. package/Server/Utils/AnalyticsDatabase/InsertDedupContext.ts +59 -0
  29. package/Server/Utils/Express.ts +13 -0
  30. package/Server/Utils/Telemetry/ExceptionSanitizer.ts +222 -0
  31. package/Server/Utils/Telemetry/TelemetryFanInWriter.ts +799 -0
  32. package/Server/Utils/Telemetry/TelemetryWriterClient.ts +263 -0
  33. package/Server/Utils/Telemetry/TelemetryWriterServer.ts +240 -0
  34. package/Server/Utils/Telemetry/TelemetryWriterShedMetrics.ts +93 -0
  35. package/Tests/Server/Services/DatabaseServiceSanitizeUpdateData.test.ts +232 -0
  36. package/Tests/Server/Services/TelemetryExceptionCodeFixRun.test.ts +205 -1
  37. package/Tests/Server/Services/UpdateOneByIdKeepsRowId.test.ts +107 -0
  38. package/Tests/Server/Services/WorkflowService.test.ts +308 -0
  39. package/Tests/Server/Utils/AI/Insights/InsightScanner.test.ts +150 -141
  40. package/Tests/Server/Utils/AI/Insights/InsightTriageRunner.test.ts +277 -1
  41. package/Tests/Server/Utils/Attribution.test.ts +203 -0
  42. package/Tests/Server/Utils/ExceptionSanitizer.test.ts +70 -0
  43. package/Tests/Server/Utils/InsightTriageClassification.test.ts +57 -0
  44. package/Tests/Server/Utils/Marketing/ConversionUploadProvider.test.ts +183 -0
  45. package/Tests/Server/Utils/Marketing/GoogleAds.test.ts +340 -0
  46. package/Tests/Server/Utils/Monitor/Criteria/ExceptionMonitorCriteria.test.ts +87 -0
  47. package/Tests/Server/Utils/Monitor/Criteria/LogMonitorCriteria.test.ts +165 -0
  48. package/Tests/Server/Utils/Monitor/Criteria/TraceMonitorCriteria.test.ts +86 -0
  49. package/Tests/Server/Utils/Telemetry/TelemetryFanInWriter.test.ts +1565 -0
  50. package/Tests/Server/Utils/Telemetry/TelemetryWriterClient.test.ts +313 -0
  51. package/Tests/Server/Utils/Telemetry/TelemetryWriterServer.test.ts +270 -0
  52. package/Tests/Server/Utils/Telemetry/TelemetryWriterShedMetrics.test.ts +127 -0
  53. package/Tests/Server/Utils/TelemetryImprovementTaskTrigger.test.ts +141 -0
  54. package/Tests/Types/AI/CodeFixTaskType.test.ts +3 -0
  55. package/Tests/Types/Monitor/MonitorCriteriaMetricVariables.test.ts +228 -0
  56. package/Tests/Types/Monitor/MonitorStepDefaultTelemetryConfig.test.ts +169 -0
  57. package/Tests/Types/Monitor/MonitorStepExceptionMonitor.test.ts +289 -0
  58. package/Tests/Types/Monitor/MonitorStepLogMonitor.test.ts +231 -0
  59. package/Tests/Types/Monitor/MonitorStepMetricViewConfigUtil.test.ts +245 -0
  60. package/Tests/Types/Monitor/MonitorStepNetworkDeviceMonitor.test.ts +155 -0
  61. package/Tests/Types/Monitor/MonitorStepTelemetrySerialization.test.ts +141 -0
  62. package/Tests/Types/Monitor/MonitorStepTraceMonitor.test.ts +137 -0
  63. package/Tests/Types/Workspace/NotificationRules/NotificationRuleCondition.test.ts +311 -0
  64. package/Tests/UI/Components/ModelTableSelectFromColumns.test.ts +259 -0
  65. package/Tests/UI/Utils/Breadcrumb/BreadcrumbTrailResolver.test.ts +461 -0
  66. package/Tests/UI/Utils/Breadcrumb/fixtures/RealBreadcrumbTrails.ts +2852 -0
  67. package/Tests/UI/Utils/Breadcrumb/fixtures/RealRoutePatterns.ts +758 -0
  68. package/Tests/UI/Utils/NotificationMethodUtil.test.ts +564 -0
  69. package/Tests/Utils/Array.test.ts +156 -0
  70. package/Tests/Utils/CronTab.test.ts +199 -0
  71. package/Tests/Utils/ModelImportExport.test.ts +101 -0
  72. package/Tests/Utils/Number.test.ts +179 -0
  73. package/Tests/Utils/VersionUtil.test.ts +348 -0
  74. package/Tests/jest.setup.ts +1 -0
  75. package/Types/AI/CodeFixTaskContext.ts +6 -0
  76. package/Types/AI/CodeFixTaskType.ts +38 -1
  77. package/Types/AI/ExceptionAIClassification.ts +27 -0
  78. package/Types/EnterpriseLicense/EnterpriseLicenseInstanceSummary.ts +6 -0
  79. package/Types/Log/LogScrubPatternType.ts +7 -0
  80. package/Types/Monitor/MonitorStep.ts +24 -4
  81. package/Types/Monitor/MonitorStepMetricViewConfigUtil.ts +105 -0
  82. package/Types/Trace/TraceScrubPatternType.ts +7 -0
  83. package/UI/Components/EditionLabel/EditionLabel.tsx +445 -12
  84. package/UI/Components/ModelTable/BaseModelTable.tsx +15 -46
  85. package/UI/Components/ModelTable/SelectFromColumns.ts +129 -0
  86. package/UI/Components/Workflow/ArgumentsForm.tsx +68 -30
  87. package/UI/Components/Workflow/CronScheduleField.tsx +411 -0
  88. package/UI/Utils/Breadcrumb/BreadcrumbTrailResolver.ts +176 -0
  89. package/UI/Utils/NotificationMethodUtil.ts +310 -0
  90. package/Utils/CronTab.ts +823 -0
  91. package/Utils/ModelImportExport.ts +21 -6
  92. package/Utils/VersionUtil.ts +260 -0
  93. package/build/dist/Models/DatabaseModels/AIInsight.js +31 -0
  94. package/build/dist/Models/DatabaseModels/AIInsight.js.map +1 -1
  95. package/build/dist/Models/DatabaseModels/EnterpriseLicense.js +22 -0
  96. package/build/dist/Models/DatabaseModels/EnterpriseLicense.js.map +1 -1
  97. package/build/dist/Models/DatabaseModels/EnterpriseLicenseInstance.js +26 -0
  98. package/build/dist/Models/DatabaseModels/EnterpriseLicenseInstance.js.map +1 -1
  99. package/build/dist/Models/DatabaseModels/GlobalConfig.js +81 -0
  100. package/build/dist/Models/DatabaseModels/GlobalConfig.js.map +1 -1
  101. package/build/dist/Models/DatabaseModels/Project.js +31 -0
  102. package/build/dist/Models/DatabaseModels/Project.js.map +1 -1
  103. package/build/dist/Models/DatabaseModels/TelemetryException.js +134 -0
  104. package/build/dist/Models/DatabaseModels/TelemetryException.js.map +1 -1
  105. package/build/dist/Server/API/AIAgentDataAPI.js +97 -8
  106. package/build/dist/Server/API/AIAgentDataAPI.js.map +1 -1
  107. package/build/dist/Server/API/AIInvestigationAPI.js +55 -0
  108. package/build/dist/Server/API/AIInvestigationAPI.js.map +1 -1
  109. package/build/dist/Server/API/EnterpriseLicenseAPI.js +47 -0
  110. package/build/dist/Server/API/EnterpriseLicenseAPI.js.map +1 -1
  111. package/build/dist/Server/API/GlobalConfigAPI.js +52 -1
  112. package/build/dist/Server/API/GlobalConfigAPI.js.map +1 -1
  113. package/build/dist/Server/EnvironmentConfig.js +17 -0
  114. package/build/dist/Server/EnvironmentConfig.js.map +1 -1
  115. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784640000000-AddExceptionTriageAndPrivacyColumns.js +33 -0
  116. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784640000000-AddExceptionTriageAndPrivacyColumns.js.map +1 -0
  117. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784659816363-AddInstanceVersionAndLatestReleaseColumns.js +18 -0
  118. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784659816363-AddInstanceVersionAndLatestReleaseColumns.js.map +1 -0
  119. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784705487674-AddEnterpriseLicenseEvaluationColumns.js +14 -0
  120. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1784705487674-AddEnterpriseLicenseEvaluationColumns.js.map +1 -0
  121. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +6 -0
  122. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  123. package/build/dist/Server/Services/AIRunService.js +9 -2
  124. package/build/dist/Server/Services/AIRunService.js.map +1 -1
  125. package/build/dist/Server/Services/AnalyticsDatabaseService.js +44 -16
  126. package/build/dist/Server/Services/AnalyticsDatabaseService.js.map +1 -1
  127. package/build/dist/Server/Services/DatabaseService.js +53 -1
  128. package/build/dist/Server/Services/DatabaseService.js.map +1 -1
  129. package/build/dist/Server/Services/TelemetryExceptionService.js +263 -22
  130. package/build/dist/Server/Services/TelemetryExceptionService.js.map +1 -1
  131. package/build/dist/Server/Services/WorkflowService.js +80 -30
  132. package/build/dist/Server/Services/WorkflowService.js.map +1 -1
  133. package/build/dist/Server/Types/Workflow/Components/Schedule.js +44 -19
  134. package/build/dist/Server/Types/Workflow/Components/Schedule.js.map +1 -1
  135. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.js +12 -4
  136. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.js.map +1 -1
  137. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.js +12 -4
  138. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.js.map +1 -1
  139. package/build/dist/Server/Utils/AI/SRE/Insights/InsightScanner.js +193 -22
  140. package/build/dist/Server/Utils/AI/SRE/Insights/InsightScanner.js.map +1 -1
  141. package/build/dist/Server/Utils/AI/SRE/Insights/InsightTriageRunner.js +178 -9
  142. package/build/dist/Server/Utils/AI/SRE/Insights/InsightTriageRunner.js.map +1 -1
  143. package/build/dist/Server/Utils/AI/SRE/SubjectCodeFixRun.js +37 -0
  144. package/build/dist/Server/Utils/AI/SRE/SubjectCodeFixRun.js.map +1 -1
  145. package/build/dist/Server/Utils/AI/SRE/TelemetryImprovementTaskTrigger.js +98 -0
  146. package/build/dist/Server/Utils/AI/SRE/TelemetryImprovementTaskTrigger.js.map +1 -0
  147. package/build/dist/Server/Utils/AnalyticsDatabase/InsertDedupContext.js +24 -0
  148. package/build/dist/Server/Utils/AnalyticsDatabase/InsertDedupContext.js.map +1 -0
  149. package/build/dist/Server/Utils/Express.js +12 -0
  150. package/build/dist/Server/Utils/Express.js.map +1 -1
  151. package/build/dist/Server/Utils/Telemetry/ExceptionSanitizer.js +149 -0
  152. package/build/dist/Server/Utils/Telemetry/ExceptionSanitizer.js.map +1 -0
  153. package/build/dist/Server/Utils/Telemetry/TelemetryFanInWriter.js +496 -0
  154. package/build/dist/Server/Utils/Telemetry/TelemetryFanInWriter.js.map +1 -0
  155. package/build/dist/Server/Utils/Telemetry/TelemetryWriterClient.js +165 -0
  156. package/build/dist/Server/Utils/Telemetry/TelemetryWriterClient.js.map +1 -0
  157. package/build/dist/Server/Utils/Telemetry/TelemetryWriterServer.js +136 -0
  158. package/build/dist/Server/Utils/Telemetry/TelemetryWriterServer.js.map +1 -0
  159. package/build/dist/Server/Utils/Telemetry/TelemetryWriterShedMetrics.js +76 -0
  160. package/build/dist/Server/Utils/Telemetry/TelemetryWriterShedMetrics.js.map +1 -0
  161. package/build/dist/Types/AI/CodeFixTaskType.js +38 -1
  162. package/build/dist/Types/AI/CodeFixTaskType.js.map +1 -1
  163. package/build/dist/Types/AI/ExceptionAIClassification.js +28 -0
  164. package/build/dist/Types/AI/ExceptionAIClassification.js.map +1 -0
  165. package/build/dist/Types/Log/LogScrubPatternType.js +7 -0
  166. package/build/dist/Types/Log/LogScrubPatternType.js.map +1 -1
  167. package/build/dist/Types/Monitor/MonitorStep.js +20 -4
  168. package/build/dist/Types/Monitor/MonitorStep.js.map +1 -1
  169. package/build/dist/Types/Monitor/MonitorStepMetricViewConfigUtil.js +73 -0
  170. package/build/dist/Types/Monitor/MonitorStepMetricViewConfigUtil.js.map +1 -0
  171. package/build/dist/Types/Trace/TraceScrubPatternType.js +7 -0
  172. package/build/dist/Types/Trace/TraceScrubPatternType.js.map +1 -1
  173. package/build/dist/UI/Components/EditionLabel/EditionLabel.js +261 -13
  174. package/build/dist/UI/Components/EditionLabel/EditionLabel.js.map +1 -1
  175. package/build/dist/UI/Components/ModelTable/BaseModelTable.js +12 -37
  176. package/build/dist/UI/Components/ModelTable/BaseModelTable.js.map +1 -1
  177. package/build/dist/UI/Components/ModelTable/SelectFromColumns.js +82 -0
  178. package/build/dist/UI/Components/ModelTable/SelectFromColumns.js.map +1 -0
  179. package/build/dist/UI/Components/Workflow/ArgumentsForm.js +30 -6
  180. package/build/dist/UI/Components/Workflow/ArgumentsForm.js.map +1 -1
  181. package/build/dist/UI/Components/Workflow/CronScheduleField.js +209 -0
  182. package/build/dist/UI/Components/Workflow/CronScheduleField.js.map +1 -0
  183. package/build/dist/UI/Utils/Breadcrumb/BreadcrumbTrailResolver.js +129 -0
  184. package/build/dist/UI/Utils/Breadcrumb/BreadcrumbTrailResolver.js.map +1 -0
  185. package/build/dist/UI/Utils/NotificationMethodUtil.js +189 -0
  186. package/build/dist/UI/Utils/NotificationMethodUtil.js.map +1 -0
  187. package/build/dist/Utils/CronTab.js +609 -0
  188. package/build/dist/Utils/CronTab.js.map +1 -0
  189. package/build/dist/Utils/ModelImportExport.js +20 -6
  190. package/build/dist/Utils/ModelImportExport.js.map +1 -1
  191. package/build/dist/Utils/VersionUtil.js +193 -0
  192. package/build/dist/Utils/VersionUtil.js.map +1 -0
  193. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TelemetryWriterClient.js","sourceRoot":"","sources":["../../../../../Server/Utils/Telemetry/TelemetryWriterClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,136 @@
1
+ import { FanInInsertError, isRetryableInsertError, } from "./TelemetryFanInWriter";
2
+ /*
3
+ * Counting gate for concurrently-served insert requests. Rows a parked
4
+ * request holds are invisible to the fan-in writer's maxPendingRows until
5
+ * buffered, so this cap — not maxPendingRows — is what bounds writer-pod
6
+ * memory when the worker fleet dwarfs the writer tier.
7
+ */
8
+ export class InflightGate {
9
+ constructor(max) {
10
+ this.current = 0;
11
+ this.max = max;
12
+ }
13
+ tryAcquire() {
14
+ if (this.current >= this.max) {
15
+ return false;
16
+ }
17
+ this.current++;
18
+ return true;
19
+ }
20
+ release() {
21
+ this.current--;
22
+ }
23
+ get inflight() {
24
+ return this.current;
25
+ }
26
+ }
27
+ export function readWriterMaxInflightRequestsFromEnv() {
28
+ const raw = process.env["TELEMETRY_WRITER_MAX_INFLIGHT_REQUESTS"];
29
+ const parsed = parseInt(raw || "", 10);
30
+ return !isNaN(parsed) && parsed > 0 ? parsed : 100;
31
+ }
32
+ /*
33
+ * Build a tableName → insert-target resolver from the analytics-service
34
+ * singletons (Common/Server/Services/Index.ts exports AnalyticsServices).
35
+ * The map is built lazily on first call so import order at boot does not
36
+ * matter.
37
+ */
38
+ export function createTableTargetResolver(targets) {
39
+ let byTable = null;
40
+ return (tableName) => {
41
+ if (!byTable) {
42
+ byTable = new Map();
43
+ for (const target of targets) {
44
+ byTable.set(target.model.tableName, target);
45
+ }
46
+ }
47
+ return byTable.get(tableName);
48
+ };
49
+ }
50
+ export function parseWriterInsertRequest(body) {
51
+ if (!body || typeof body !== "object" || Array.isArray(body)) {
52
+ return { error: "Request body must be a JSON object." };
53
+ }
54
+ const json = body;
55
+ const tableName = json["tableName"];
56
+ if (typeof tableName !== "string" || tableName.trim() === "") {
57
+ return { error: "tableName must be a non-empty string." };
58
+ }
59
+ const rows = json["rows"];
60
+ if (!Array.isArray(rows)) {
61
+ return { error: "rows must be an array." };
62
+ }
63
+ for (const row of rows) {
64
+ if (!row || typeof row !== "object" || Array.isArray(row)) {
65
+ return { error: "rows must contain only JSON objects." };
66
+ }
67
+ }
68
+ /*
69
+ * The worker-side writer sends a token on EVERY payload (per-job captured
70
+ * or per-batch minted). Requiring it here keeps writer-side retries and
71
+ * ambiguous-network-failure retries duplicate-free by construction.
72
+ */
73
+ const dedupToken = json["dedupToken"];
74
+ if (typeof dedupToken !== "string" || dedupToken.trim() === "") {
75
+ return { error: "dedupToken must be a non-empty string." };
76
+ }
77
+ const clickhouseSettings = json["clickhouseSettings"];
78
+ if (clickhouseSettings !== undefined &&
79
+ (typeof clickhouseSettings !== "object" ||
80
+ clickhouseSettings === null ||
81
+ Array.isArray(clickhouseSettings))) {
82
+ return { error: "clickhouseSettings must be an object when present." };
83
+ }
84
+ return {
85
+ tableName: tableName,
86
+ rows: rows,
87
+ dedupToken: dedupToken,
88
+ clickhouseSettings: clickhouseSettings,
89
+ };
90
+ }
91
+ export async function handleWriterInsert(body, deps) {
92
+ if (deps.forwardingEnabled) {
93
+ return {
94
+ statusCode: 503,
95
+ body: {
96
+ message: "This pod forwards telemetry inserts to a remote writer (TELEMETRY_WRITER_URL is set); it cannot serve writer inserts. Point workers at the telemetry-writer deployment instead.",
97
+ },
98
+ };
99
+ }
100
+ const parsed = parseWriterInsertRequest(body);
101
+ if ("error" in parsed) {
102
+ return { statusCode: 400, body: { message: parsed.error } };
103
+ }
104
+ if (parsed.rows.length === 0) {
105
+ return { statusCode: 200, body: { rowsAccepted: 0 } };
106
+ }
107
+ const target = deps.resolveTarget(parsed.tableName);
108
+ if (!target) {
109
+ // 503, not 400: see the status contract — version-skew self-healing.
110
+ return {
111
+ statusCode: 503,
112
+ body: {
113
+ message: `Unknown analytics table: ${parsed.tableName}. If this writer pod is mid-rolling-upgrade, retries will succeed once it runs the newer image.`,
114
+ },
115
+ };
116
+ }
117
+ try {
118
+ const submission = await deps.submit(target, parsed.rows, {
119
+ dedupToken: parsed.dedupToken,
120
+ clickhouseSettings: parsed.clickhouseSettings,
121
+ });
122
+ await submission.flushed;
123
+ }
124
+ catch (err) {
125
+ const message = err instanceof Error ? err.message : String(err);
126
+ const stillTransient = err instanceof FanInInsertError
127
+ ? isRetryableInsertError(err.causeError)
128
+ : isRetryableInsertError(err);
129
+ return {
130
+ statusCode: stillTransient ? 503 : 500,
131
+ body: { message: message },
132
+ };
133
+ }
134
+ return { statusCode: 200, body: { rowsAccepted: parsed.rows.length } };
135
+ }
136
+ //# sourceMappingURL=TelemetryWriterServer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TelemetryWriterServer.js","sourceRoot":"","sources":["../../../../../Server/Utils/Telemetry/TelemetryWriterServer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,76 @@
1
+ import Redis from "../../Infrastructure/Redis";
2
+ import logger from "../Logger";
3
+ /*
4
+ * Fleet-wide load-shed counter for the telemetry-writer tier, used as the
5
+ * KEDA autoscaling signal: sustained 429 shedding while ClickHouse is
6
+ * healthy is the one honest "the writer tier is too small" indicator
7
+ * (queue depth is the WORKER fleet's signal and must never scale this
8
+ * tier).
9
+ *
10
+ * Every shed increments a per-minute Redis bucket shared by all writer
11
+ * pods; the metric endpoint sums the current and previous buckets, so any
12
+ * single pod KEDA happens to poll reports the whole tier's shed count for
13
+ * roughly the last one-to-two minutes. Buckets expire after five minutes.
14
+ *
15
+ * Metrics must never break serving: both functions swallow Redis errors
16
+ * (recordShed silently, the reader by returning 0 — which biases KEDA
17
+ * toward NOT scaling on missing data, the safe direction for a tier whose
18
+ * ceiling is a ClickHouse capacity budget).
19
+ */
20
+ const KEY_PREFIX = "telemetry-writer-shed-count";
21
+ const BUCKET_TTL_SECONDS = 300;
22
+ function getDefaultClient() {
23
+ return Redis.getClient();
24
+ }
25
+ export function shedBucketKey(epochMinute) {
26
+ return `${KEY_PREFIX}:${epochMinute}`;
27
+ }
28
+ function epochMinute(now) {
29
+ return Math.floor(now.getTime() / 60000);
30
+ }
31
+ export async function recordShed(data) {
32
+ var _a;
33
+ try {
34
+ const client = (data === null || data === void 0 ? void 0 : data.client) !== undefined ? data.client : getDefaultClient();
35
+ if (!client) {
36
+ return;
37
+ }
38
+ const key = shedBucketKey(epochMinute((_a = data === null || data === void 0 ? void 0 : data.now) !== null && _a !== void 0 ? _a : new Date()));
39
+ await client.incr(key);
40
+ await client.expire(key, BUCKET_TTL_SECONDS);
41
+ }
42
+ catch (err) {
43
+ logger.debug("TelemetryWriterShedMetrics: failed to record shed:");
44
+ logger.debug(err);
45
+ }
46
+ }
47
+ /*
48
+ * Sheds across the whole writer tier in the current + previous minute
49
+ * buckets (~ the last one-to-two minutes). Returns 0 when Redis is
50
+ * unavailable or the buckets are empty/garbled.
51
+ */
52
+ export async function getRecentShedCount(data) {
53
+ var _a;
54
+ try {
55
+ const client = (data === null || data === void 0 ? void 0 : data.client) !== undefined ? data.client : getDefaultClient();
56
+ if (!client) {
57
+ return 0;
58
+ }
59
+ const currentMinute = epochMinute((_a = data === null || data === void 0 ? void 0 : data.now) !== null && _a !== void 0 ? _a : new Date());
60
+ let total = 0;
61
+ for (const minute of [currentMinute, currentMinute - 1]) {
62
+ const raw = await client.get(shedBucketKey(minute));
63
+ const parsed = parseInt(raw !== null && raw !== void 0 ? raw : "", 10);
64
+ if (!isNaN(parsed) && parsed > 0) {
65
+ total += parsed;
66
+ }
67
+ }
68
+ return total;
69
+ }
70
+ catch (err) {
71
+ logger.debug("TelemetryWriterShedMetrics: failed to read shed count:");
72
+ logger.debug(err);
73
+ return 0;
74
+ }
75
+ }
76
+ //# sourceMappingURL=TelemetryWriterShedMetrics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TelemetryWriterShedMetrics.js","sourceRoot":"","sources":["../../../../../Server/Utils/Telemetry/TelemetryWriterShedMetrics.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,4BAA4B,CAAC;AAC/C,OAAO,MAAM,MAAM,WAAW,CAAC;AAE/B;;;;;;;;;;;;;;;;GAgBG;AAEH,MAAM,UAAU,GAAW,6BAA6B,CAAC;AACzD,MAAM,kBAAkB,GAAW,GAAG,CAAC;AASvC,SAAS,gBAAgB;IACvB,OAAO,KAAK,CAAC,SAAS,EAAE,CAAC;AAC3B,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,WAAmB;IAC/C,OAAO,GAAG,UAAU,IAAI,WAAW,EAAE,CAAC;AACxC,CAAC;AAED,SAAS,WAAW,CAAC,GAAS;IAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,KAAM,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAGhC;;IACC,IAAI,CAAC;QACH,MAAM,MAAM,GACV,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,MAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;QAChE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;QACT,CAAC;QACD,MAAM,GAAG,GAAW,aAAa,CAAC,WAAW,CAAC,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,GAAG,mCAAI,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC;QACxE,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACvB,MAAM,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;QACnE,MAAM,CAAC,KAAK,CAAC,GAAY,CAAC,CAAC;IAC7B,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAGxC;;IACC,IAAI,CAAC;QACH,MAAM,MAAM,GACV,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,MAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;QAChE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,CAAC,CAAC;QACX,CAAC;QACD,MAAM,aAAa,GAAW,WAAW,CAAC,MAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,GAAG,mCAAI,IAAI,IAAI,EAAE,CAAC,CAAC;QACnE,IAAI,KAAK,GAAW,CAAC,CAAC;QACtB,KAAK,MAAM,MAAM,IAAI,CAAC,aAAa,EAAE,aAAa,GAAG,CAAC,CAAC,EAAE,CAAC;YACxD,MAAM,GAAG,GAAkB,MAAM,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC;YACnE,MAAM,MAAM,GAAW,QAAQ,CAAC,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YAC/C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;gBACjC,KAAK,IAAI,MAAM,CAAC;YAClB,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;QACvE,MAAM,CAAC,KAAK,CAAC,GAAY,CAAC,CAAC;QAC3B,OAAO,CAAC,CAAC;IACX,CAAC;AACH,CAAC"}
@@ -13,6 +13,16 @@ var CodeFixTaskType;
13
13
  CodeFixTaskType["FixException"] = "FixException";
14
14
  // Write a failing-then-passing regression test that reproduces the exception.
15
15
  CodeFixTaskType["WriteRegressionTest"] = "WriteRegressionTest";
16
+ /*
17
+ * Improve how the code HANDLES and REPORTS this exception without
18
+ * changing business behavior: parameterize messages that interpolate
19
+ * user data (PII out of error text, stable fingerprints), validate bad
20
+ * input earlier with an actionable error, and mark expected/operational
21
+ * errors as handled in telemetry. The recipe for exceptions the triage
22
+ * classified as user errors or expected denials — where "fix the bug"
23
+ * is the wrong instruction because there is no bug.
24
+ */
25
+ CodeFixTaskType["ImproveExceptionHandling"] = "ImproveExceptionHandling";
16
26
  /*
17
27
  * Add the observability an INCONCLUSIVE AI investigation was missing
18
28
  * (structured logs, spans, metric counters on the implicated code paths).
@@ -33,6 +43,27 @@ var CodeFixTaskType;
33
43
  * Common/Server/Utils/AI/SRE/FixPerformanceTaskTrigger.ts).
34
44
  */
35
45
  CodeFixTaskType["FixPerformance"] = "FixPerformance";
46
+ /*
47
+ * Improve a SERVICE's logging hygiene: structured/parameterized log
48
+ * messages (no user data interpolated into log text), correct severity
49
+ * levels, trace correlation, proper exception recording instead of raw
50
+ * stack dumps in log bodies, and less noise. Human-triggered from the
51
+ * service's Logs page (POST /ai-investigation/
52
+ * create-telemetry-improvement-task); its context (service id + name) is
53
+ * captured into AIRun.taskContext at trigger time. Instrumentation only —
54
+ * never a behavior change.
55
+ */
56
+ CodeFixTaskType["ImproveLogging"] = "ImproveLogging";
57
+ /*
58
+ * Improve a SERVICE's tracing instrumentation: spans on uninstrumented
59
+ * entry points and significant operations, low-cardinality span names,
60
+ * exceptions recorded on spans with correct status/escaped semantics,
61
+ * code.* and semantic-convention attributes, context propagation across
62
+ * async boundaries. Human-triggered from the service's Traces page (same
63
+ * endpoint as ImproveLogging); context captured into AIRun.taskContext.
64
+ * Instrumentation only — never a behavior change.
65
+ */
66
+ CodeFixTaskType["ImproveTracing"] = "ImproveTracing";
36
67
  /*
37
68
  * Fix the root cause a completed AI investigation identified. Human-
38
69
  * triggered from the investigation panel (POST /ai-investigation/
@@ -76,7 +107,11 @@ export class CodeFixTaskTypeHelper {
76
107
  * (POST /ai-investigation/create-performance-fix-task).
77
108
  */
78
109
  static getUserTriggerableTaskTypes() {
79
- return [CodeFixTaskType.FixException, CodeFixTaskType.WriteRegressionTest];
110
+ return [
111
+ CodeFixTaskType.FixException,
112
+ CodeFixTaskType.WriteRegressionTest,
113
+ CodeFixTaskType.ImproveExceptionHandling,
114
+ ];
80
115
  }
81
116
  static isUserTriggerable(taskType) {
82
117
  return this.getUserTriggerableTaskTypes().includes(taskType);
@@ -94,6 +129,8 @@ export class CodeFixTaskTypeHelper {
94
129
  case CodeFixTaskType.FixFromIncident:
95
130
  return CodeFixContextKind.IncidentOrAlertSubject;
96
131
  case CodeFixTaskType.FixPerformance:
132
+ case CodeFixTaskType.ImproveLogging:
133
+ case CodeFixTaskType.ImproveTracing:
97
134
  return CodeFixContextKind.TaskContext;
98
135
  default:
99
136
  return CodeFixContextKind.TelemetryException;
@@ -1 +1 @@
1
- {"version":3,"file":"CodeFixTaskType.js","sourceRoot":"","sources":["../../../../Types/AI/CodeFixTaskType.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,IAAK,eAiCJ;AAjCD,WAAK,eAAe;IAClB,uEAAuE;IACvE,gDAA6B,CAAA;IAC7B,8EAA8E;IAC9E,8DAA2C,CAAA;IAC3C;;;;;;;;OAQG;IACH,oEAAiD,CAAA;IACjD;;;;;;;;OAQG;IACH,oDAAiC,CAAA;IACjC;;;;;;OAMG;IACH,sDAAmC,CAAA;AACrC,CAAC,EAjCI,eAAe,KAAf,eAAe,QAiCnB;AAED,eAAe,eAAe,CAAC;AAE/B;;;;GAIG;AACH,MAAM,CAAN,IAAY,kBAWX;AAXD,WAAY,kBAAkB;IAC5B,0DAA0D;IAC1D,+DAAyC,CAAA;IACzC,qEAAqE;IACrE,uEAAiD,CAAA;IACjD;;;;OAIG;IACH,iDAA2B,CAAA;AAC7B,CAAC,EAXW,kBAAkB,KAAlB,kBAAkB,QAW7B;AAED,MAAM,OAAO,qBAAqB;IAChC;;;;;;;;;;;;OAYG;IACI,MAAM,CAAC,2BAA2B;QACvC,OAAO,CAAC,eAAe,CAAC,YAAY,EAAE,eAAe,CAAC,mBAAmB,CAAC,CAAC;IAC7E,CAAC;IAEM,MAAM,CAAC,iBAAiB,CAAC,QAAyB;QACvD,OAAO,IAAI,CAAC,2BAA2B,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC/D,CAAC;IAED;;;;;;OAMG;IACI,MAAM,CAAC,cAAc,CAAC,QAAyB;QACpD,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,eAAe,CAAC,sBAAsB,CAAC;YAC5C,KAAK,eAAe,CAAC,eAAe;gBAClC,OAAO,kBAAkB,CAAC,sBAAsB,CAAC;YACnD,KAAK,eAAe,CAAC,cAAc;gBACjC,OAAO,kBAAkB,CAAC,WAAW,CAAC;YACxC;gBACE,OAAO,kBAAkB,CAAC,kBAAkB,CAAC;QACjD,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,0BAA0B,CAAC,QAAyB;QAChE,OAAO,CACL,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,kBAAkB,CAAC,kBAAkB,CACxE,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,eAAe,CAAC,KAAa;QACzC,OAAO,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,KAAwB,CAAC,CAAC;IAC3E,CAAC;IAED,mEAAmE;IAC5D,MAAM,CAAC,iBAAiB,CAC7B,KAAkD;QAElD,IAAI,KAAK,IAAI,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC;YACpD,OAAO,KAAwB,CAAC;QAClC,CAAC;QAED,OAAO,eAAe,CAAC,YAAY,CAAC;IACtC,CAAC;CACF"}
1
+ {"version":3,"file":"CodeFixTaskType.js","sourceRoot":"","sources":["../../../../Types/AI/CodeFixTaskType.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,IAAK,eAgEJ;AAhED,WAAK,eAAe;IAClB,uEAAuE;IACvE,gDAA6B,CAAA;IAC7B,8EAA8E;IAC9E,8DAA2C,CAAA;IAC3C;;;;;;;;OAQG;IACH,wEAAqD,CAAA;IACrD;;;;;;;;OAQG;IACH,oEAAiD,CAAA;IACjD;;;;;;;;OAQG;IACH,oDAAiC,CAAA;IACjC;;;;;;;;;OASG;IACH,oDAAiC,CAAA;IACjC;;;;;;;;OAQG;IACH,oDAAiC,CAAA;IACjC;;;;;;OAMG;IACH,sDAAmC,CAAA;AACrC,CAAC,EAhEI,eAAe,KAAf,eAAe,QAgEnB;AAED,eAAe,eAAe,CAAC;AAE/B;;;;GAIG;AACH,MAAM,CAAN,IAAY,kBAWX;AAXD,WAAY,kBAAkB;IAC5B,0DAA0D;IAC1D,+DAAyC,CAAA;IACzC,qEAAqE;IACrE,uEAAiD,CAAA;IACjD;;;;OAIG;IACH,iDAA2B,CAAA;AAC7B,CAAC,EAXW,kBAAkB,KAAlB,kBAAkB,QAW7B;AAED,MAAM,OAAO,qBAAqB;IAChC;;;;;;;;;;;;OAYG;IACI,MAAM,CAAC,2BAA2B;QACvC,OAAO;YACL,eAAe,CAAC,YAAY;YAC5B,eAAe,CAAC,mBAAmB;YACnC,eAAe,CAAC,wBAAwB;SACzC,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,iBAAiB,CAAC,QAAyB;QACvD,OAAO,IAAI,CAAC,2BAA2B,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC/D,CAAC;IAED;;;;;;OAMG;IACI,MAAM,CAAC,cAAc,CAAC,QAAyB;QACpD,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,eAAe,CAAC,sBAAsB,CAAC;YAC5C,KAAK,eAAe,CAAC,eAAe;gBAClC,OAAO,kBAAkB,CAAC,sBAAsB,CAAC;YACnD,KAAK,eAAe,CAAC,cAAc,CAAC;YACpC,KAAK,eAAe,CAAC,cAAc,CAAC;YACpC,KAAK,eAAe,CAAC,cAAc;gBACjC,OAAO,kBAAkB,CAAC,WAAW,CAAC;YACxC;gBACE,OAAO,kBAAkB,CAAC,kBAAkB,CAAC;QACjD,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,0BAA0B,CAAC,QAAyB;QAChE,OAAO,CACL,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,kBAAkB,CAAC,kBAAkB,CACxE,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,eAAe,CAAC,KAAa;QACzC,OAAO,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,KAAwB,CAAC,CAAC;IAC3E,CAAC;IAED,mEAAmE;IAC5D,MAAM,CAAC,iBAAiB,CAC7B,KAAkD;QAElD,IAAI,KAAK,IAAI,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC;YACpD,OAAO,KAAwB,CAAC;QAClC,CAAC;QAED,OAAO,eAAe,CAAC,YAAY,CAAC;IACtC,CAAC;CACF"}
@@ -0,0 +1,28 @@
1
+ /*
2
+ * AI triage verdict for a telemetry exception group. Decides how the
3
+ * automatic fix lane treats the group:
4
+ *
5
+ * - CodeFault: a defect in the monitored code — the only class the
6
+ * automatic lane opens fix pull requests for.
7
+ * - UserError: expected consequence of invalid end-user input (bad
8
+ * parameters, malformed values). The right change, if any, is earlier
9
+ * validation and clearer error UX — routed to a human, never auto-fixed.
10
+ * - ExpectedDenial: an intentional check doing its job (auth failure,
11
+ * plan/paywall denial, scanner/fuzzer probe tripping validation).
12
+ * Never auto-fixed; optionally auto-archived.
13
+ * - Infrastructure: environmental conditions (timeouts, connection
14
+ * resets, resource exhaustion) where a code "fix" is usually tuning —
15
+ * routed to a human.
16
+ * - Unknown: triage could not decide — treated conservatively (no
17
+ * automatic fix).
18
+ */
19
+ var ExceptionAIClassification;
20
+ (function (ExceptionAIClassification) {
21
+ ExceptionAIClassification["CodeFault"] = "code-fault";
22
+ ExceptionAIClassification["UserError"] = "user-error";
23
+ ExceptionAIClassification["ExpectedDenial"] = "expected-denial";
24
+ ExceptionAIClassification["Infrastructure"] = "infrastructure";
25
+ ExceptionAIClassification["Unknown"] = "unknown";
26
+ })(ExceptionAIClassification || (ExceptionAIClassification = {}));
27
+ export default ExceptionAIClassification;
28
+ //# sourceMappingURL=ExceptionAIClassification.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExceptionAIClassification.js","sourceRoot":"","sources":["../../../../Types/AI/ExceptionAIClassification.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,IAAK,yBAMJ;AAND,WAAK,yBAAyB;IAC5B,qDAAwB,CAAA;IACxB,qDAAwB,CAAA;IACxB,+DAAkC,CAAA;IAClC,8DAAiC,CAAA;IACjC,gDAAmB,CAAA;AACrB,CAAC,EANI,yBAAyB,KAAzB,yBAAyB,QAM7B;AAED,eAAe,yBAAyB,CAAC"}
@@ -5,6 +5,13 @@ var LogScrubPatternType;
5
5
  LogScrubPatternType["SSN"] = "ssn";
6
6
  LogScrubPatternType["PhoneNumber"] = "phoneNumber";
7
7
  LogScrubPatternType["IPAddress"] = "ipAddress";
8
+ /*
9
+ * Key-targeted: scrubs the WHOLE value of any attribute whose KEY looks
10
+ * sensitive (password, token, apiKey, authorization, cookie, ...) —
11
+ * catches secrets whose values match no shape-based pattern. Applies to
12
+ * attributes only; body text has no keys to match.
13
+ */
14
+ LogScrubPatternType["SensitiveKeys"] = "sensitiveKeys";
8
15
  LogScrubPatternType["Custom"] = "custom";
9
16
  })(LogScrubPatternType || (LogScrubPatternType = {}));
10
17
  export default LogScrubPatternType;
@@ -1 +1 @@
1
- {"version":3,"file":"LogScrubPatternType.js","sourceRoot":"","sources":["../../../../Types/Log/LogScrubPatternType.ts"],"names":[],"mappings":"AAAA,IAAK,mBAOJ;AAPD,WAAK,mBAAmB;IACtB,sCAAe,CAAA;IACf,gDAAyB,CAAA;IACzB,kCAAW,CAAA;IACX,kDAA2B,CAAA;IAC3B,8CAAuB,CAAA;IACvB,wCAAiB,CAAA;AACnB,CAAC,EAPI,mBAAmB,KAAnB,mBAAmB,QAOvB;AAED,eAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"LogScrubPatternType.js","sourceRoot":"","sources":["../../../../Types/Log/LogScrubPatternType.ts"],"names":[],"mappings":"AAAA,IAAK,mBAcJ;AAdD,WAAK,mBAAmB;IACtB,sCAAe,CAAA;IACf,gDAAyB,CAAA;IACzB,kCAAW,CAAA;IACX,kDAA2B,CAAA;IAC3B,8CAAuB,CAAA;IACvB;;;;;OAKG;IACH,sDAA+B,CAAA;IAC/B,wCAAiB,CAAA;AACnB,CAAC,EAdI,mBAAmB,KAAnB,mBAAmB,QAcvB;AAED,eAAe,mBAAmB,CAAC"}
@@ -124,10 +124,26 @@ export default class MonitorStep extends DatabaseProperty {
124
124
  retryCountOnError: undefined,
125
125
  requestTimeoutInMs: undefined,
126
126
  retryCount: undefined,
127
- logMonitor: undefined,
128
- traceMonitor: undefined,
129
- metricMonitor: undefined,
130
- exceptionMonitor: undefined,
127
+ /*
128
+ * Seed the telemetry sub-config for the monitor's OWN type so a
129
+ * monitor saved on defaults (without the user touching the telemetry
130
+ * sub-form) still persists a usable query config. Without this the
131
+ * sub-config stayed undefined and the worker threw "<type> query/config
132
+ * is missing" on every evaluation, so the monitor never ran. Only the
133
+ * matching type is seeded; every other type stays undefined.
134
+ */
135
+ logMonitor: arg.monitorType === MonitorType.Logs
136
+ ? MonitorStepLogMonitorUtil.getDefault()
137
+ : undefined,
138
+ traceMonitor: arg.monitorType === MonitorType.Traces
139
+ ? MonitorStepTraceMonitorUtil.getDefault()
140
+ : undefined,
141
+ metricMonitor: arg.monitorType === MonitorType.Metrics
142
+ ? MonitorStepMetricMonitorUtil.getDefault()
143
+ : undefined,
144
+ exceptionMonitor: arg.monitorType === MonitorType.Exceptions
145
+ ? MonitorStepExceptionMonitorUtil.getDefault()
146
+ : undefined,
131
147
  profileMonitor: undefined,
132
148
  snmpMonitor: undefined,
133
149
  networkDeviceMonitor: undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"MonitorStep.js","sourceRoot":"","sources":["../../../../Types/Monitor/MonitorStep.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MonitorStep.js","sourceRoot":"","sources":["../../../../Types/Monitor/MonitorStep.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,mBAAmB,CAAC;AAC3C,OAAO,QAAQ,MAAM,iBAAiB,CAAC;AACvC,OAAO,GAAG,MAAM,YAAY,CAAC;AAC7B,OAAO,gBAAgB,MAAM,8BAA8B,CAAC;AAE5D,OAAO,gBAAgB,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,EAAc,UAAU,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAC7C,OAAO,QAAQ,MAAM,aAAa,CAAC;AACnC,OAAO,IAAI,MAAM,SAAS,CAAC;AAC3B,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAA8B,EAC5B,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,WAAW,MAAM,eAAe,CAAC;AAIxC,OAAgC,EAC9B,2BAA2B,GAC5B,MAAM,2BAA2B,CAAC;AACnC,OAAiC,EAC/B,4BAA4B,GAC7B,MAAM,4BAA4B,CAAC;AACpC,OAAoC,EAClC,+BAA+B,GAChC,MAAM,+BAA+B,CAAC;AACvC,OAAkC,EAChC,6BAA6B,GAC9B,MAAM,6BAA6B,CAAC;AACrC,OAAwC,EACtC,mCAAmC,GACpC,MAAM,mCAAmC,CAAC;AAC3C,OAA+B,EAC7B,0BAA0B,GAC3B,MAAM,0BAA0B,CAAC;AAClC,OAA8B,EAC5B,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AACjC,OAAiC,EAC/B,4BAA4B,GAC7B,MAAM,4BAA4B,CAAC;AACpC,OAAiC,EAC/B,4BAA4B,GAC7B,MAAM,4BAA4B,CAAC;AACpC,OAA8B,EAC5B,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AACjC,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAA6C,EAC3C,wCAAwC,GACzC,MAAM,wCAAwC,CAAC;AAChD,OAAqC,EACnC,gCAAgC,GACjC,MAAM,gCAAgC,CAAC;AACxC,OAAiC,EAC/B,4BAA4B,GAC7B,MAAM,4BAA4B,CAAC;AACpC,OAA+B,EAC7B,0BAA0B,GAC3B,MAAM,0BAA0B,CAAC;AAClC,OAAiC,EAC/B,4BAA4B,GAC7B,MAAM,4BAA4B,CAAC;AACpC,OAAkC,EAChC,6BAA6B,GAC9B,MAAM,6BAA6B,CAAC;AACrC,OAAsC,EACpC,iCAAiC,GAClC,MAAM,iCAAiC,CAAC;AACzC,OAA+B,EAC7B,0BAA0B,GAC3B,MAAM,0BAA0B,CAAC;AAClC,OAA8B,EAC5B,yBAAyB,GAC1B,MAAM,yBAAyB,CAAC;AAEjC,OAAO,GAAkB,MAAM,wBAAwB,CAAC;AAExD;;;GAGG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAW,KAAK,CAAC,CAAC,aAAa;AAC7E,MAAM,CAAC,MAAM,qCAAqC,GAAW,KAAK,CAAC;AACnE,MAAM,CAAC,MAAM,uBAAuB,GAAW,CAAC,CAAC;AACjD,MAAM,CAAC,MAAM,2BAA2B,GAAW,CAAC,CAAC;AAErD,MAAM,CAAC,MAAM,8BAA8B,GAA8B,CACvE,KAAa,EACL,EAAE;IACV,IAAI,CAAC,KAAK,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QACzB,OAAO,qCAAqC,CAAC;IAC/C,CAAC;IACD,IAAI,KAAK,GAAG,iCAAiC,EAAE,CAAC;QAC9C,OAAO,iCAAiC,CAAC;IAC3C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAA8B,CAC/D,KAAa,EACL,EAAE;IACV,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACvE,OAAO,2BAA2B,CAAC;IACrC,CAAC;IACD,IAAI,KAAK,GAAG,uBAAuB,EAAE,CAAC;QACpC,OAAO,uBAAuB,CAAC;IACjC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAoHF,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,gBAAgB;IAGvD;QACE,KAAK,EAAE,CAAC;QAHH,SAAI,GAAgC,SAAS,CAAC;QAKnD,IAAI,CAAC,IAAI,GAAG;YACV,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;YAClC,kBAAkB,EAAE,SAAS;YAC7B,oBAAoB,EAAE,SAAS;YAC/B,2BAA2B,EAAE,SAAS;YACtC,oBAAoB,EAAE,SAAS;YAC/B,YAAY,EAAE,SAAS;YACvB,sBAAsB,EAAE,SAAS;YACjC,sBAAsB,EAAE,SAAS;YACjC,eAAe,EAAE,IAAI,eAAe,EAAE;YACtC,WAAW,EAAE,UAAU,CAAC,GAAG;YAC3B,cAAc,EAAE,SAAS;YACzB,WAAW,EAAE,SAAS;YACtB,UAAU,EAAE,SAAS;YACrB,eAAe,EAAE,SAAS;YAC1B,YAAY,EAAE,SAAS;YACvB,iBAAiB,EAAE,SAAS;YAC5B,kBAAkB,EAAE,SAAS;YAC7B,UAAU,EAAE,SAAS;YACrB,UAAU,EAAE,SAAS;YACrB,YAAY,EAAE,SAAS;YACvB,aAAa,EAAE,SAAS;YACxB,gBAAgB,EAAE,SAAS;YAC3B,cAAc,EAAE,SAAS;YACzB,WAAW,EAAE,SAAS;YACtB,oBAAoB,EAAE,SAAS;YAC/B,UAAU,EAAE,SAAS;YACrB,aAAa,EAAE,SAAS;YACxB,aAAa,EAAE,SAAS;YACxB,UAAU,EAAE,SAAS;YACrB,yBAAyB,EAAE,SAAS;YACpC,iBAAiB,EAAE,SAAS;YAC5B,aAAa,EAAE,SAAS;YACxB,WAAW,EAAE,SAAS;YACtB,aAAa,EAAE,SAAS;YACxB,cAAc,EAAE,SAAS;YACzB,kBAAkB,EAAE,SAAS;YAC7B,WAAW,EAAE,SAAS;YACtB,UAAU,EAAE,SAAS;SACtB,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,qBAAqB,CAAC,GAOnC;QACC,MAAM,WAAW,GAAgB,IAAI,WAAW,EAAE,CAAC;QAEnD,WAAW,CAAC,IAAI,GAAG;YACjB,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;YAClC,kBAAkB,EAAE,SAAS;YAC7B,oBAAoB,EAAE,SAAS;YAC/B,2BAA2B,EAAE,SAAS;YACtC,oBAAoB,EAAE,SAAS;YAC/B,YAAY,EAAE,SAAS;YACvB,sBAAsB,EAAE,SAAS;YACjC,sBAAsB,EAAE,SAAS;YACjC,eAAe,EAAE,eAAe,CAAC,yBAAyB,CAAC,GAAG,CAAC;YAC/D,WAAW,EAAE,UAAU,CAAC,GAAG;YAC3B,cAAc,EAAE,SAAS;YACzB,WAAW,EAAE,SAAS;YACtB,UAAU,EAAE,SAAS;YACrB,eAAe,EAAE,SAAS;YAC1B,YAAY,EAAE,SAAS;YACvB,iBAAiB,EAAE,SAAS;YAC5B,kBAAkB,EAAE,SAAS;YAC7B,UAAU,EAAE,SAAS;YACrB;;;;;;;eAOG;YACH,UAAU,EACR,GAAG,CAAC,WAAW,KAAK,WAAW,CAAC,IAAI;gBAClC,CAAC,CAAC,yBAAyB,CAAC,UAAU,EAAE;gBACxC,CAAC,CAAC,SAAS;YACf,YAAY,EACV,GAAG,CAAC,WAAW,KAAK,WAAW,CAAC,MAAM;gBACpC,CAAC,CAAC,2BAA2B,CAAC,UAAU,EAAE;gBAC1C,CAAC,CAAC,SAAS;YACf,aAAa,EACX,GAAG,CAAC,WAAW,KAAK,WAAW,CAAC,OAAO;gBACrC,CAAC,CAAC,4BAA4B,CAAC,UAAU,EAAE;gBAC3C,CAAC,CAAC,SAAS;YACf,gBAAgB,EACd,GAAG,CAAC,WAAW,KAAK,WAAW,CAAC,UAAU;gBACxC,CAAC,CAAC,+BAA+B,CAAC,UAAU,EAAE;gBAC9C,CAAC,CAAC,SAAS;YACf,cAAc,EAAE,SAAS;YACzB,WAAW,EAAE,SAAS;YACtB,oBAAoB,EAAE,SAAS;YAC/B,UAAU,EAAE,SAAS;YACrB,aAAa,EAAE,SAAS;YACxB,aAAa,EAAE,SAAS;YACxB,UAAU,EAAE,SAAS;YACrB,yBAAyB,EAAE,SAAS;YACpC,iBAAiB,EAAE,SAAS;YAC5B,aAAa,EAAE,SAAS;YACxB,WAAW,EAAE,SAAS;YACtB,aAAa,EAAE,SAAS;YACxB,cAAc,EAAE,SAAS;YACzB,kBAAkB,EAAE,SAAS;YAC7B,WAAW,EAAE,SAAS;YACtB,UAAU,EAAE,SAAS;SACtB,CAAC;QAEF,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;;;;;;OAQG;IACI,MAAM,CAAC,oBAAoB,CAChC,WAAoC;;QAEpC,MAAM,IAAI,GAAgC,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,CAAC;QAE5D,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,CACL,CAAA,MAAA,IAAI,CAAC,aAAa,0CAAE,gBAAgB;aACpC,MAAA,IAAI,CAAC,UAAU,0CAAE,gBAAgB,CAAA;aACjC,MAAA,IAAI,CAAC,iBAAiB,0CAAE,gBAAgB,CAAA;aACxC,MAAA,IAAI,CAAC,aAAa,0CAAE,gBAAgB,CAAA;aACpC,MAAA,IAAI,CAAC,kBAAkB,0CAAE,gBAAgB,CAAA;aACzC,MAAA,IAAI,CAAC,WAAW,0CAAE,gBAAgB,CAAA;aAClC,MAAA,IAAI,CAAC,aAAa,0CAAE,gBAAgB,CAAA;aACpC,MAAA,IAAI,CAAC,cAAc,0CAAE,gBAAgB,CAAA;aACrC,MAAA,IAAI,CAAC,WAAW,0CAAE,gBAAgB,CAAA,CACnC,CAAC;IACJ,CAAC;IAED,IAAW,EAAE;;QACX,OAAO,IAAI,QAAQ,CAAC,MAAA,IAAI,CAAC,IAAI,0CAAE,EAAY,CAAC,CAAC;IAC/C,CAAC;IAED,IAAW,EAAE,CAAC,CAAW;QACvB,IAAI,CAAC,IAAK,CAAC,EAAE,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC/B,CAAC;IAEM,cAAc,CAAC,WAAuB;QAC3C,IAAI,CAAC,IAAK,CAAC,WAAW,GAAG,WAAW,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,iBAAiB,CAAC,cAAkC;QACzD,IAAI,CAAC,IAAK,CAAC,cAAc,GAAG,cAAc,CAAC;QAC3C,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,WAAwB;QAC1C,OAAO,WAAW,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;IACpD,CAAC;IAEM,cAAc,CAAC,WAAmB;QACvC,IAAI,CAAC,IAAK,CAAC,WAAW,GAAG,WAAW,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,qBAAqB,CAC1B,kBAAuC;QAEvC,IAAI,CAAC,IAAK,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QACnD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,uBAAuB,CAAC,oBAA6B;QAC1D,IAAI,CAAC,IAAK,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QACvD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,8BAA8B,CACnC,2BAAoC;QAEpC,IAAI,CAAC,IAAK,CAAC,2BAA2B,GAAG,2BAA2B,CAAC;QACrE,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,uBAAuB,CAC5B,oBAAwC;QAExC,IAAI,CAAC,IAAK,CAAC,oBAAoB,GAAG,oBAAoB,IAAI,SAAS,CAAC;QACpE,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,eAAe,CAAC,YAAgC;QACrD,IAAI,CAAC,IAAK,CAAC,YAAY,GAAG,YAAY,IAAI,SAAS,CAAC;QACpD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,yBAAyB,CAC9B,sBAA0C;QAE1C,IAAI,CAAC,IAAK,CAAC,sBAAsB,GAAG,sBAAsB,IAAI,SAAS,CAAC;QACxE,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,OAAO,CAAC,sBAA4B;QACzC,IAAI,CAAC,IAAK,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;QAC3D,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,kBAAkB,CACvB,eAAsC;QAEtC,IAAI,CAAC,IAAK,CAAC,eAAe,GAAG,eAAe,CAAC;QAC7C,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,eAAe,CAAC,YAAgC;QACrD,IAAI,CAAC,IAAK,CAAC,YAAY,GAAG,YAAY,CAAC;QACvC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,oBAAoB,CAAC,iBAAyB;QACnD,IAAI,CAAC,IAAK,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QACjD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,qBAAqB,CAC1B,kBAAsC;QAEtC,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;YACrC,IAAI,CAAC,IAAK,CAAC,kBAAkB,GAAG,SAAS,CAAC;YAC1C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,IAAK,CAAC,kBAAkB;YAC3B,8BAA8B,CAAC,kBAAkB,CAAC,CAAC;QACrD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,aAAa,CAAC,UAA8B;QACjD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,IAAI,CAAC,IAAK,CAAC,UAAU,GAAG,SAAS,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,IAAK,CAAC,UAAU,GAAG,sBAAsB,CAAC,UAAU,CAAC,CAAC;QAC3D,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,aAAa,CAAC,UAAiC;QACpD,IAAI,CAAC,IAAK,CAAC,UAAU,GAAG,UAAU,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,gBAAgB,CACrB,aAAuC;QAEvC,IAAI,CAAC,IAAK,CAAC,aAAa,GAAG,aAAa,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,eAAe,CAAC,YAAqC;QAC1D,IAAI,CAAC,IAAK,CAAC,YAAY,GAAG,YAAY,CAAC;QACvC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,mBAAmB,CACxB,gBAA6C;QAE7C,IAAI,CAAC,IAAK,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QAC/C,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,iBAAiB,CACtB,cAAyC;QAEzC,IAAI,CAAC,IAAK,CAAC,cAAc,GAAG,cAAc,CAAC;QAC3C,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,uBAAuB,CAC5B,oBAAqD;QAErD,IAAI,CAAC,IAAK,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QACvD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,cAAc,CAAC,WAAmC;QACvD,IAAI,CAAC,IAAK,CAAC,WAAW,GAAG,WAAW,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,aAAa,CAAC,UAAiC;QACpD,IAAI,CAAC,IAAK,CAAC,UAAU,GAAG,UAAU,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,gBAAgB,CACrB,aAAuC;QAEvC,IAAI,CAAC,IAAK,CAAC,aAAa,GAAG,aAAa,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,gBAAgB,CACrB,aAAuC;QAEvC,IAAI,CAAC,IAAK,CAAC,aAAa,GAAG,aAAa,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,aAAa,CAAC,UAAiC;QACpD,IAAI,CAAC,IAAK,CAAC,UAAU,GAAG,UAAU,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,4BAA4B,CACjC,yBAA+D;QAE/D,IAAI,CAAC,IAAK,CAAC,yBAAyB,GAAG,yBAAyB,CAAC;QACjE,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,oBAAoB,CACzB,iBAA+C;QAE/C,IAAI,CAAC,IAAK,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QACjD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,gBAAgB,CACrB,aAAuC;QAEvC,IAAI,CAAC,IAAK,CAAC,aAAa,GAAG,aAAa,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,cAAc,CAAC,WAAmC;QACvD,IAAI,CAAC,IAAK,CAAC,WAAW,GAAG,WAAW,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,gBAAgB,CACrB,aAAuC;QAEvC,IAAI,CAAC,IAAK,CAAC,aAAa,GAAG,aAAa,CAAC;QACzC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,iBAAiB,CACtB,cAAyC;QAEzC,IAAI,CAAC,IAAK,CAAC,cAAc,GAAG,cAAc,CAAC;QAC3C,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,qBAAqB,CAC1B,kBAAiD;QAEjD,IAAI,CAAC,IAAK,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QACnD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,cAAc,CAAC,WAAmC;QACvD,IAAI,CAAC,IAAK,CAAC,WAAW,GAAG,WAAW,CAAC;QACrC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,aAAa,CAAC,UAAiC;QACpD,IAAI,CAAC,IAAK,CAAC,UAAU,GAAG,UAAU,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,aAAa,CAAC,UAAkB;QACrC,IAAI,CAAC,IAAK,CAAC,UAAU,GAAG,UAAU,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,kBAAkB,CAAC,eAAgC;QACxD,IAAI,CAAC,IAAK,CAAC,eAAe,GAAG,eAAe,CAAC;QAC7C,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM,CAAC,uBAAuB;QACnC,OAAO;YACL,KAAK,EAAE,UAAU,CAAC,WAAW;YAC7B,KAAK,EAAE;gBACL,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;gBAClC,kBAAkB,EAAE,SAAS;gBAC7B,oBAAoB,EAAE,SAAS;gBAC/B,2BAA2B,EAAE,SAAS;gBACtC,oBAAoB,EAAE,SAAS;gBAC/B,YAAY,EAAE,SAAS;gBACvB,sBAAsB,EAAE,SAAS;gBACjC,sBAAsB,EAAE,SAAS;gBACjC,eAAe,EAAE,eAAe,CAAC,2BAA2B,EAAE;gBAC9D,WAAW,EAAE,UAAU,CAAC,GAAG;gBAC3B,cAAc,EAAE,SAAS;gBACzB,WAAW,EAAE,SAAS;gBACtB,UAAU,EAAE,SAAS;gBACrB,eAAe,EAAE,SAAS;gBAC1B,YAAY,EAAE,SAAS;gBACvB,iBAAiB,EAAE,SAAS;gBAC5B,kBAAkB,EAAE,SAAS;gBAC7B,UAAU,EAAE,SAAS;gBACrB,UAAU,EAAE,SAAS;gBACrB,gBAAgB,EAAE,SAAS;gBAC3B,iBAAiB,EAAE,SAAS;gBAC5B,aAAa,EAAE,SAAS;gBACxB,WAAW,EAAE,SAAS;gBACtB,aAAa,EAAE,SAAS;gBACxB,cAAc,EAAE,SAAS;gBACzB,kBAAkB,EAAE,SAAS;gBAC7B,WAAW,EAAE,SAAS;gBACtB,UAAU,EAAE,SAAS;aACtB;SACF,CAAC;IACJ,CAAC;IAEM,MAAM,CAAC,kBAAkB,CAC9B,KAAkB,EAClB,WAAwB;;QAExB,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAChB,OAAO,2BAA2B,CAAC;QACrC,CAAC;QAED,wFAAwF;QACxF,IACE,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB;YAC9B,CAAC,WAAW,KAAK,WAAW,CAAC,IAAI;gBAC/B,WAAW,KAAK,WAAW,CAAC,GAAG;gBAC/B,WAAW,KAAK,WAAW,CAAC,IAAI;gBAChC,WAAW,KAAK,WAAW,CAAC,OAAO;gBACnC,WAAW,KAAK,WAAW,CAAC,EAAE;gBAC9B,WAAW,KAAK,WAAW,CAAC,cAAc,CAAC,EAC7C,CAAC;YACD,OAAO,kCAAkC,CAAC;QAC5C,CAAC;QAED,IACE,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU;YACtB,CAAC,WAAW,KAAK,WAAW,CAAC,oBAAoB;gBAC/C,WAAW,KAAK,WAAW,CAAC,gBAAgB,CAAC,EAC/C,CAAC;YACD,IAAI,WAAW,KAAK,WAAW,CAAC,oBAAoB,EAAE,CAAC;gBACrD,OAAO,yBAAyB,CAAC;YACnC,CAAC;YACD,OAAO,8BAA8B,CAAC;QACxC,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAChC,OAAO,8BAA8B,CAAC;QACxC,CAAC;QAED,IACE,eAAe,CAAC,kBAAkB,CAChC,KAAK,CAAC,IAAI,CAAC,eAAe,EAC1B,WAAW,CACZ,EACD,CAAC;YACD,OAAO,eAAe,CAAC,kBAAkB,CACvC,KAAK,CAAC,IAAI,CAAC,eAAe,EAC1B,WAAW,CACZ,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,IAAI,WAAW,KAAK,WAAW,CAAC,GAAG,EAAE,CAAC;YAC/D,OAAO,0BAA0B,CAAC;QACpC,CAAC;QAED,IACE,WAAW,KAAK,WAAW,CAAC,GAAG;YAC/B,WAAW,KAAK,WAAW,CAAC,OAAO,EACnC,CAAC;YACD,MAAM,OAAO,GAAY,OAAO,CAC9B,KAAK,CAAC,IAAI,CAAC,oBAAoB;gBAC7B,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,CACzC,CAAC;YACF,MAAM,MAAM,GAAY,OAAO,CAC7B,KAAK,CAAC,IAAI,CAAC,YAAY,IAAI,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAC1D,CAAC;YACF,IAAI,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;gBACvB,OAAO,sEAAsE,CAAC;YAChF,CAAC;YACD,IAAI,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;gBACvB,OAAO,sEAAsE,CAAC;YAChF,CAAC;QACH,CAAC;QAED,IACE,WAAW,KAAK,WAAW,CAAC,IAAI;YAChC,CAAC,KAAK,CAAC,IAAI,CAAC,sBAAsB,EAClC,CAAC;YACD,OAAO,kBAAkB,CAAC;QAC5B,CAAC;QAED,IAAI,WAAW,KAAK,WAAW,CAAC,aAAa,EAAE,CAAC;YAC9C,IAAI,CAAC,CAAA,MAAA,KAAK,CAAC,IAAI,CAAC,oBAAoB,0CAAE,eAAe,CAAA,EAAE,CAAC;gBACtD,OAAO,4BAA4B,CAAC;YACtC,CAAC;YAED,IACE,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,iBAAiB;gBAClD,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI;oBACpC,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,EACpD,CAAC;gBACD,OAAO,2DAA2D,CAAC;YACrE,CAAC;QACH,CAAC;QAED,IAAI,WAAW,KAAK,WAAW,CAAC,GAAG,EAAE,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC3B,OAAO,+BAA+B,CAAC;YACzC,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;gBACrC,OAAO,qCAAqC,CAAC;YAC/C,CAAC;QACH,CAAC;QAED,IAAI,WAAW,KAAK,WAAW,CAAC,MAAM,EAAE,CAAC;YACvC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC9B,OAAO,kCAAkC,CAAC;YAC5C,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;gBACzC,OAAO,yBAAyB,CAAC;YACnC,CAAC;QACH,CAAC;QAED,IAAI,WAAW,KAAK,WAAW,CAAC,MAAM,EAAE,CAAC;YACvC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC9B,OAAO,kCAAkC,CAAC;YAC5C,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;gBACzC,OAAO,yBAAyB,CAAC;YACnC,CAAC;YAED,IACE,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS;gBACnC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAC/C,CAAC;gBACD,OAAO,mCAAmC,CAAC;YAC7C,CAAC;QACH,CAAC;QAED,IAAI,WAAW,KAAK,WAAW,CAAC,QAAQ,EAAE,CAAC;YACzC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC3B,OAAO,uCAAuC,CAAC;YACjD,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;gBAChC,OAAO,2BAA2B,CAAC;YACrC,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;gBACxC,OAAO,2BAA2B,CAAC;YACrC,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;gBACxE,OAAO,uBAAuB,CAAC;YACjC,CAAC;YAED,IACE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,kCAAkC;gBACxD,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY;oBAChC,eAAe,CAAC,kBAAkB,EACpC,CAAC;gBACD,OAAO,8EAA8E,CAAC;YACxF,CAAC;QACH,CAAC;QAED,IAAI,WAAW,KAAK,WAAW,CAAC,kBAAkB,EAAE,CAAC;YACnD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,yBAAyB,EAAE,CAAC;gBAC1C,OAAO,gDAAgD,CAAC;YAC1D,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,aAAa,EAAE,CAAC;gBACxD,OAAO,6BAA6B,CAAC;YACvC,CAAC;QACH,CAAC;QAED,IAAI,WAAW,KAAK,WAAW,CAAC,UAAU,EAAE,CAAC;YAC3C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAClC,OAAO,8CAA8C,CAAC;YACxD,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,iBAAiB,EAAE,CAAC;gBACpD,OAAO,gCAAgC,CAAC;YAC1C,CAAC;QACH,CAAC;QAED,IAAI,WAAW,KAAK,WAAW,CAAC,MAAM,EAAE,CAAC;YACvC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC9B,OAAO,0CAA0C,CAAC;YACpD,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,cAAc,EAAE,CAAC;gBAC7C,OAAO,yBAAyB,CAAC;YACnC,CAAC;QACH,CAAC;QAED,IAAI,WAAW,KAAK,WAAW,CAAC,IAAI,EAAE,CAAC;YACrC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC5B,OAAO,wCAAwC,CAAC;YAClD,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC;gBAC3C,OAAO,kBAAkB,CAAC;YAC5B,CAAC;QACH,CAAC;QAED,IAAI,WAAW,KAAK,WAAW,CAAC,MAAM,EAAE,CAAC;YACvC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC9B,OAAO,0CAA0C,CAAC;YACpD,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,cAAc,EAAE,CAAC;gBAC7C,OAAO,yBAAyB,CAAC;YACnC,CAAC;QACH,CAAC;QAED,IAAI,WAAW,KAAK,WAAW,CAAC,OAAO,EAAE,CAAC;YACxC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;gBAC/B,OAAO,2CAA2C,CAAC;YACrD,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,CAAC;gBACjD,OAAO,6BAA6B,CAAC;YACvC,CAAC;QACH,CAAC;QAED,IAAI,WAAW,KAAK,WAAW,CAAC,WAAW,EAAE,CAAC;YAC5C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;gBACnC,OAAO,gDAAgD,CAAC;YAC1D,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,EAAE,CAAC;gBACrD,OAAO,kCAAkC,CAAC;YAC5C,CAAC;QACH,CAAC;QAED,IAAI,WAAW,KAAK,WAAW,CAAC,IAAI,EAAE,CAAC;YACrC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC5B,OAAO,wCAAwC,CAAC;YAClD,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE,CAAC;gBAC9C,OAAO,0BAA0B,CAAC;YACpC,CAAC;QACH,CAAC;QAED,IAAI,WAAW,KAAK,WAAW,CAAC,SAAS,EAAE,CAAC;YAC1C,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC3B,OAAO,uCAAuC,CAAC;YACjD,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC;gBAC3C,OAAO,uBAAuB,CAAC;YACjC,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEe,MAAM;;QACpB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,aAAa,CAAC,SAAS,CAAC;gBAC7B,KAAK,EAAE,UAAU,CAAC,WAAW;gBAC7B,KAAK,EAAE;oBACL,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;oBAChB,kBAAkB,EAChB,CAAA,MAAA,MAAA,IAAI,CAAC,IAAI,0CAAE,kBAAkB,0CAAE,MAAM,EAAE,KAAI,SAAS;oBACtD,oBAAoB,EAAE,IAAI,CAAC,IAAI,CAAC,oBAAoB,IAAI,SAAS;oBACjE,2BAA2B,EACzB,IAAI,CAAC,IAAI,CAAC,2BAA2B,IAAI,SAAS;oBACpD,oBAAoB,EAAE,IAAI,CAAC,IAAI,CAAC,oBAAoB,IAAI,SAAS;oBACjE,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,SAAS;oBACjD,sBAAsB,EAAE,IAAI,CAAC,IAAI,CAAC,sBAAsB,IAAI,SAAS;oBACrE,sBAAsB,EACpB,CAAA,MAAA,MAAA,IAAI,CAAC,IAAI,0CAAE,sBAAsB,0CAAE,MAAM,EAAE,KAAI,SAAS;oBAC1D,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE;oBACnD,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;oBAClC,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,SAAS;oBACrD,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,SAAS;oBAC/C,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,SAAS;oBAC7C,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,SAAS;oBACvD,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,SAAS;oBACjD,iBAAiB,EAAE,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,SAAS;oBAC3D,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC,kBAAkB,IAAI,SAAS;oBAC7D,UAAU,EACR,IAAI,CAAC,IAAI,CAAC,UAAU,KAAK,SAAS;wBAChC,CAAC,CAAC,SAAS;wBACX,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU;oBAC1B,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU;wBAC9B,CAAC,CAAC,yBAAyB,CAAC,MAAM,CAC9B,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,yBAAyB,CAAC,UAAU,EAAE,CAC/D;wBACH,CAAC,CAAC,SAAS;oBACb,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa;wBACpC,CAAC,CAAC,4BAA4B,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;wBAC9D,CAAC,CAAC,SAAS;oBACb,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,YAAY;wBAClC,CAAC,CAAC,2BAA2B,CAAC,MAAM,CAChC,IAAI,CAAC,IAAI,CAAC,YAAY;4BACpB,2BAA2B,CAAC,UAAU,EAAE,CAC3C;wBACH,CAAC,CAAC,SAAS;oBACb,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC,gBAAgB;wBAC1C,CAAC,CAAC,+BAA+B,CAAC,MAAM,CACpC,IAAI,CAAC,IAAI,CAAC,gBAAgB;4BACxB,+BAA+B,CAAC,UAAU,EAAE,CAC/C;wBACH,CAAC,CAAC,SAAS;oBACb,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc;wBACtC,CAAC,CAAC,6BAA6B,CAAC,MAAM,CAClC,IAAI,CAAC,IAAI,CAAC,cAAc;4BACtB,6BAA6B,CAAC,UAAU,EAAE,CAC7C;wBACH,CAAC,CAAC,SAAS;oBACb,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;wBAChC,CAAC,CAAC,0BAA0B,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;wBAC1D,CAAC,CAAC,SAAS;oBACb,oBAAoB,EAAE,IAAI,CAAC,IAAI,CAAC,oBAAoB;wBAClD,CAAC,CAAC,mCAAmC,CAAC,MAAM,CACxC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAC/B;wBACH,CAAC,CAAC,SAAS;oBACb,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU;wBAC9B,CAAC,CAAC,yBAAyB,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;wBACxD,CAAC,CAAC,SAAS;oBACb,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa;wBACpC,CAAC,CAAC,4BAA4B,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;wBAC9D,CAAC,CAAC,SAAS;oBACb,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa;wBACpC,CAAC,CAAC,4BAA4B,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;wBAC9D,CAAC,CAAC,SAAS;oBACb,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU;wBAC9B,CAAC,CAAC,yBAAyB,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;wBACxD,CAAC,CAAC,SAAS;oBACb,yBAAyB,EAAE,IAAI,CAAC,IAAI,CAAC,yBAAyB;wBAC5D,CAAC,CAAC,wCAAwC,CAAC,MAAM,CAC7C,IAAI,CAAC,IAAI,CAAC,yBAAyB,CACpC;wBACH,CAAC,CAAC,SAAS;oBACb,iBAAiB,EAAE,IAAI,CAAC,IAAI,CAAC,iBAAiB;wBAC5C,CAAC,CAAC,gCAAgC,CAAC,MAAM,CACrC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAC5B;wBACH,CAAC,CAAC,SAAS;oBACb,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa;wBACpC,CAAC,CAAC,4BAA4B,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;wBAC9D,CAAC,CAAC,SAAS;oBACb,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;wBAChC,CAAC,CAAC,0BAA0B,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;wBAC1D,CAAC,CAAC,SAAS;oBACb,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,aAAa;wBACpC,CAAC,CAAC,4BAA4B,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;wBAC9D,CAAC,CAAC,SAAS;oBACb,cAAc,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc;wBACtC,CAAC,CAAC,6BAA6B,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC;wBAChE,CAAC,CAAC,SAAS;oBACb,kBAAkB,EAAE,IAAI,CAAC,IAAI,CAAC,kBAAkB;wBAC9C,CAAC,CAAC,iCAAiC,CAAC,MAAM,CACtC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAC7B;wBACH,CAAC,CAAC,SAAS;oBACb,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW;wBAChC,CAAC,CAAC,0BAA0B,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;wBAC1D,CAAC,CAAC,SAAS;oBACb,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU;wBAC9B,CAAC,CAAC,yBAAyB,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;wBACxD,CAAC,CAAC,SAAS;iBACd;aACF,CAAC,CAAC;QACL,CAAC;QAED,OAAO,WAAW,CAAC,uBAAuB,EAAE,CAAC;IAC/C,CAAC;IAEM,MAAM,CAAU,QAAQ,CAAC,IAAgB;QAC9C,IAAI,IAAI,YAAY,WAAW,EAAE,CAAC;YAChC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,aAAa,EAAE,CAAC;YAC7C,MAAM,IAAI,gBAAgB,CAAC,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACnB,MAAM,IAAI,gBAAgB,CAAC,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,GAAG,IAAI,CAAC,OAAO,CAAe,CAAC;QAEnC,IAAI,kBAAkB,GAAoC,SAAS,CAAC;QAEpE,IACE,IAAI;YACJ,IAAI,CAAC,oBAAoB,CAAC;YACzB,IAAI,CAAC,oBAAoB,CAAgB,CAAC,OAAO,CAAC,KAAK,UAAU,CAAC,GAAG,EACtE,CAAC;YACD,kBAAkB,GAAG,GAAG,CAAC,QAAQ,CAC/B,IAAI,CAAC,oBAAoB,CAAe,CACzC,CAAC;QACJ,CAAC;QAED,IACE,IAAI;YACJ,IAAI,CAAC,oBAAoB,CAAC;YACzB,IAAI,CAAC,oBAAoB,CAAgB,CAAC,OAAO,CAAC;gBACjD,UAAU,CAAC,QAAQ,EACrB,CAAC;YACD,kBAAkB,GAAG,QAAQ,CAAC,QAAQ,CACpC,IAAI,CAAC,oBAAoB,CAAe,CACzC,CAAC;QACJ,CAAC;QAED,IACE,IAAI;YACJ,IAAI,CAAC,oBAAoB,CAAC;YACzB,IAAI,CAAC,oBAAoB,CAAgB,CAAC,OAAO,CAAC,KAAK,UAAU,CAAC,EAAE,EACrE,CAAC;YACD,kBAAkB,GAAG,EAAE,CAAC,QAAQ,CAC9B,IAAI,CAAC,oBAAoB,CAAe,CACzC,CAAC;QACJ,CAAC;QAED,MAAM,sBAAsB,GAAqB,IAAI,CACnD,wBAAwB,CACzB;YACC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,wBAAwB,CAAe,CAAC;YAC7D,CAAC,CAAC,SAAS,CAAC;QAEd,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,gBAAgB,CAAC,0BAA0B,CAAC,CAAC;QACzD,CAAC;QAED,IACE,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAe,CAAC,KAAK,KAAK,EACxE,CAAC;YACD,MAAM,IAAI,gBAAgB,CAAC,0BAA0B,CAAC,CAAC;QACzD,CAAC;QAED,MAAM,WAAW,GAAgB,IAAI,WAAW,EAAE,CAAC;QAEnD,WAAW,CAAC,IAAI,GAAG,aAAa,CAAC,WAAW,CAAC;YAC3C,EAAE,EAAE,IAAI,CAAC,IAAI,CAAW;YACxB,kBAAkB,EAAE,kBAAkB,IAAI,SAAS;YACnD,oBAAoB,EAAE,IAAI,CAAC,sBAAsB,CAAC,IAAI,SAAS;YAC/D,2BAA2B,EACzB,IAAI,CAAC,6BAA6B,CAAC,IAAI,SAAS;YAClD,oBAAoB,EACjB,IAAI,CAAC,sBAAsB,CAAY,IAAI,SAAS;YACvD,YAAY,EAAG,IAAI,CAAC,cAAc,CAAY,IAAI,SAAS;YAC3D,sBAAsB,EACnB,IAAI,CAAC,wBAAwB,CAAY,IAAI,SAAS;YACzD,sBAAsB,EAAE,sBAAsB,IAAI,SAAS;YAC3D,eAAe,EAAE,eAAe,CAAC,QAAQ,CACvC,IAAI,CAAC,iBAAiB,CAAe,CACtC;YACD,WAAW,EAAG,IAAI,CAAC,aAAa,CAAgB,IAAI,UAAU,CAAC,GAAG;YAClE,cAAc,EACX,IAAI,CAAC,gBAAgB,CAAwB,IAAI,SAAS;YAC7D,WAAW,EAAG,IAAI,CAAC,aAAa,CAAY,IAAI,SAAS;YACzD,UAAU,EAAG,IAAI,CAAC,YAAY,CAAY,IAAI,SAAS;YACvD,eAAe,EACZ,IAAI,CAAC,iBAAiB,CAA2B,IAAI,SAAS;YACjE,YAAY,EAAG,IAAI,CAAC,cAAc,CAAwB,IAAI,SAAS;YACvE,iBAAiB,EAAG,IAAI,CAAC,mBAAmB,CAAY,IAAI,SAAS;YACrE,kBAAkB,EAAG,IAAI,CAAC,oBAAoB,CAAY,IAAI,SAAS;YACvE,UAAU,EACR,IAAI,CAAC,YAAY,CAAC,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,IAAI;gBAC7D,CAAC,CAAC,SAAS;gBACX,CAAC,CAAE,IAAI,CAAC,YAAY,CAAY;YACpC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC;gBAC5B,CAAC,CAAE,IAAI,CAAC,YAAY,CAAgB;gBACpC,CAAC,CAAC,SAAS;YACb,aAAa,EAAE,IAAI,CAAC,eAAe,CAAC;gBAClC,CAAC,CAAE,IAAI,CAAC,eAAe,CAAgB;gBACvC,CAAC,CAAC,SAAS;YACb,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC;gBAChC,CAAC,CAAE,IAAI,CAAC,cAAc,CAAgB;gBACtC,CAAC,CAAC,SAAS;YACb,gBAAgB,EAAE,IAAI,CAAC,kBAAkB,CAAC;gBACxC,CAAC,CAAE,IAAI,CAAC,kBAAkB,CAAgB;gBAC1C,CAAC,CAAC,SAAS;YACb,cAAc,EAAE,IAAI,CAAC,gBAAgB,CAAC;gBACpC,CAAC,CAAE,IAAI,CAAC,gBAAgB,CAAgB;gBACxC,CAAC,CAAC,SAAS;YACb,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC;gBAC9B,CAAC,CAAE,IAAI,CAAC,aAAa,CAAgB;gBACrC,CAAC,CAAC,SAAS;YACb,oBAAoB,EAAE,IAAI,CAAC,sBAAsB,CAAC;gBAChD,CAAC,CAAE,IAAI,CAAC,sBAAsB,CAAgB;gBAC9C,CAAC,CAAC,SAAS;YACb,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC;gBAC5B,CAAC,CAAE,IAAI,CAAC,YAAY,CAAgB;gBACpC,CAAC,CAAC,SAAS;YACb,aAAa,EAAE,IAAI,CAAC,eAAe,CAAC;gBAClC,CAAC,CAAE,IAAI,CAAC,eAAe,CAAgB;gBACvC,CAAC,CAAC,SAAS;YACb,aAAa,EAAE,IAAI,CAAC,eAAe,CAAC;gBAClC,CAAC,CAAE,IAAI,CAAC,eAAe,CAAgB;gBACvC,CAAC,CAAC,SAAS;YACb,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC;gBAC5B,CAAC,CAAE,IAAI,CAAC,YAAY,CAAgB;gBACpC,CAAC,CAAC,SAAS;YACb,yBAAyB,EAAE,IAAI,CAAC,2BAA2B,CAAC;gBAC1D,CAAC,CAAE,IAAI,CAAC,2BAA2B,CAAgB;gBACnD,CAAC,CAAC,SAAS;YACb,iBAAiB,EAAE,IAAI,CAAC,mBAAmB,CAAC;gBAC1C,CAAC,CAAE,IAAI,CAAC,mBAAmB,CAAgB;gBAC3C,CAAC,CAAC,SAAS;YACb,aAAa,EAAE,IAAI,CAAC,eAAe,CAAC;gBAClC,CAAC,CAAE,IAAI,CAAC,eAAe,CAAgB;gBACvC,CAAC,CAAC,SAAS;YACb,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC;gBAC9B,CAAC,CAAE,IAAI,CAAC,aAAa,CAAgB;gBACrC,CAAC,CAAC,SAAS;YACb,aAAa,EAAE,IAAI,CAAC,eAAe,CAAC;gBAClC,CAAC,CAAE,IAAI,CAAC,eAAe,CAAgB;gBACvC,CAAC,CAAC,SAAS;YACb,cAAc,EAAE,IAAI,CAAC,gBAAgB,CAAC;gBACpC,CAAC,CAAE,IAAI,CAAC,gBAAgB,CAAgB;gBACxC,CAAC,CAAC,SAAS;YACb,kBAAkB,EAAE,IAAI,CAAC,oBAAoB,CAAC;gBAC5C,CAAC,CAAE,IAAI,CAAC,oBAAoB,CAAgB;gBAC5C,CAAC,CAAC,SAAS;YACb,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC;gBAC9B,CAAC,CAAE,IAAI,CAAC,aAAa,CAAgB;gBACrC,CAAC,CAAC,SAAS;YACb,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC;gBAC5B,CAAC,CAAE,IAAI,CAAC,YAAY,CAAgB;gBACpC,CAAC,CAAC,SAAS;SACd,CAAQ,CAAC;QAEV,OAAO,WAAW,CAAC;IACrB,CAAC;IAEM,MAAM,CAAU,SAAS;QAC9B,OAAO,GAAG,CAAC,MAAM,CAAC;YAChB,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC;YAC1C,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC;gBAChB,EAAE,EAAE,GAAG,CAAC,MAAM,EAAE;gBAChB,kBAAkB,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBACxC,eAAe,EAAE,GAAG,CAAC,GAAG,EAAE;gBAC1B,WAAW,EAAE,GAAG,CAAC,GAAG,EAAE;gBACtB,cAAc,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBACpC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;gBACpC,oBAAoB,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;gBAC9C,2BAA2B,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;gBACrD,oBAAoB,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;gBAC7C,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;gBACrC,sBAAsB,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;gBAC/C,sBAAsB,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBAC5C,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;gBACnC,eAAe,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBACrC,YAAY,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBAClC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;gBAC1C,kBAAkB,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;gBAC3C,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;gBACnC,UAAU,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBAChC,YAAY,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBAClC,aAAa,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBACnC,cAAc,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBACpC,WAAW,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBACjC,oBAAoB,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBAC1C,UAAU,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBAChC,aAAa,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBACnC,aAAa,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBACnC,UAAU,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBAChC,yBAAyB,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBAC/C,iBAAiB,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBACvC,aAAa,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBACnC,WAAW,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBACjC,aAAa,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBACnC,cAAc,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBACpC,kBAAkB,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBACxC,WAAW,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;gBACjC,UAAU,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;aACjC,CAAC,CAAC,OAAO,CAAC;gBACT,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE;oBACP,EAAE,EAAE,QAAQ;oBACZ,kBAAkB,EAAE,SAAS;oBAC7B,eAAe,EAAE,EAAE;oBACnB,WAAW,EAAE,KAAK;iBACnB;aACF,CAAC;SACH,CAAC,CAAC,OAAO,CAAC;YACT,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,oBAAoB;YACjC,OAAO,EAAE;gBACP,KAAK,EAAE,UAAU,CAAC,WAAW;gBAC7B,KAAK,EAAE;oBACL,EAAE,EAAE,QAAQ;oBACZ,kBAAkB,EAAE,SAAS;oBAC7B,eAAe,EAAE,EAAE;oBACnB,WAAW,EAAE,KAAK;iBACnB;aACF;SACF,CAAC,CAAC;IACL,CAAC;IAEM,OAAO;QACZ,OAAO,IAAI,CAAC;IACd,CAAC;IAES,MAAM,CAAU,UAAU,CAClC,KAA8C;QAE9C,IAAI,KAAK,IAAI,KAAK,YAAY,WAAW,EAAE,CAAC;YAC1C,OAAQ,KAAqB,CAAC,MAAM,EAAE,CAAC;QACzC,CAAC;aAAM,IAAI,KAAK,EAAE,CAAC;YACjB,OAAO,aAAa,CAAC,SAAS,CAAC,KAAY,CAAC,CAAC;QAC/C,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAES,MAAM,CAAU,YAAY,CACpC,KAAiB;QAEjB,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEe,QAAQ;QACtB,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACvC,CAAC;CACF"}
@@ -0,0 +1,73 @@
1
+ /**
2
+ * Every monitor-step data key that carries a `metricViewConfig`. These are the
3
+ * "metric-shaped" monitor types — the ones whose alert criteria evaluate a
4
+ * metric query (CheckOn.MetricValue). The order here is not significant; a
5
+ * given monitor step only ever populates one of these keys.
6
+ *
7
+ * Keeping this list in one place is what prevents the class of bug where a new
8
+ * metric-shaped monitor type (e.g. Host, Podman, DockerSwarm, IoT) is wired
9
+ * into the step form but forgotten in the criteria UI, leaving the "Which
10
+ * metric query should this alert rule check?" dropdown blank ("No options").
11
+ */
12
+ const METRIC_VIEW_CONFIG_KEYS = [
13
+ "metricMonitor",
14
+ "hostMonitor",
15
+ "kubernetesMonitor",
16
+ "dockerMonitor",
17
+ "dockerSwarmMonitor",
18
+ "podmanMonitor",
19
+ "proxmoxMonitor",
20
+ "cephMonitor",
21
+ "iotMonitor",
22
+ ];
23
+ export default class MonitorStepMetricViewConfigUtil {
24
+ /**
25
+ * Resolve the `metricViewConfig` from whichever metric-shaped monitor sub-config
26
+ * is populated on this monitor step. Returns undefined when the step is not
27
+ * metric-shaped (or none of the metric configs is present).
28
+ */
29
+ static getMetricViewConfig(monitorStepData) {
30
+ if (!monitorStepData) {
31
+ return undefined;
32
+ }
33
+ /*
34
+ * Each metric-shaped sub-config is an object with an optional
35
+ * `metricViewConfig`. Index through a record view so the lookup stays
36
+ * data-driven (see METRIC_VIEW_CONFIG_KEYS) without fighting the wide
37
+ * union of MonitorStepType's value types.
38
+ */
39
+ const stepRecord = monitorStepData;
40
+ for (const key of METRIC_VIEW_CONFIG_KEYS) {
41
+ const subConfig = stepRecord[key];
42
+ if (subConfig === null || subConfig === void 0 ? void 0 : subConfig.metricViewConfig) {
43
+ return subConfig.metricViewConfig;
44
+ }
45
+ }
46
+ return undefined;
47
+ }
48
+ /**
49
+ * Collect the distinct, non-empty metric variables (aliases) from the step's
50
+ * query configs and formula configs. These become the options for the
51
+ * criteria "Metric" dropdown. Empty variables are dropped and duplicates are
52
+ * removed while preserving first-seen order.
53
+ */
54
+ static getMetricVariables(monitorStepData) {
55
+ var _a, _b;
56
+ const metricViewConfig = this.getMetricViewConfig(monitorStepData);
57
+ if (!metricViewConfig) {
58
+ return [];
59
+ }
60
+ const variables = [];
61
+ for (const queryConfig of metricViewConfig.queryConfigs || []) {
62
+ variables.push(((_a = queryConfig.metricAliasData) === null || _a === void 0 ? void 0 : _a.metricVariable) || "");
63
+ }
64
+ for (const formulaConfig of metricViewConfig.formulaConfigs || []) {
65
+ variables.push(((_b = formulaConfig.metricAliasData) === null || _b === void 0 ? void 0 : _b.metricVariable) || "");
66
+ }
67
+ // Remove duplicates (first-seen order) and drop empty strings.
68
+ return variables.filter((item, index) => {
69
+ return variables.indexOf(item) === index && item !== "";
70
+ });
71
+ }
72
+ }
73
+ //# sourceMappingURL=MonitorStepMetricViewConfigUtil.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MonitorStepMetricViewConfigUtil.js","sourceRoot":"","sources":["../../../../Types/Monitor/MonitorStepMetricViewConfigUtil.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;GAUG;AACH,MAAM,uBAAuB,GAAiC;IAC5D,eAAe;IACf,aAAa;IACb,mBAAmB;IACnB,eAAe;IACf,oBAAoB;IACpB,eAAe;IACf,gBAAgB;IAChB,aAAa;IACb,YAAY;CACb,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,+BAA+B;IAClD;;;;OAIG;IACI,MAAM,CAAC,mBAAmB,CAC/B,eAA4C;QAE5C,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED;;;;;WAKG;QACH,MAAM,UAAU,GAGZ,eAGH,CAAC;QAEF,KAAK,MAAM,GAAG,IAAI,uBAAuB,EAAE,CAAC;YAC1C,MAAM,SAAS,GACb,UAAU,CAAC,GAAG,CAAC,CAAC;YAElB,IAAI,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,gBAAgB,EAAE,CAAC;gBAChC,OAAO,SAAS,CAAC,gBAAgB,CAAC;YACpC,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,kBAAkB,CAC9B,eAA4C;;QAE5C,MAAM,gBAAgB,GACpB,IAAI,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAC;QAE5C,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,SAAS,GAAkB,EAAE,CAAC;QAEpC,KAAK,MAAM,WAAW,IAAI,gBAAgB,CAAC,YAAY,IAAI,EAAE,EAAE,CAAC;YAC9D,SAAS,CAAC,IAAI,CACZ,CAAA,MAAC,WAAqC,CAAC,eAAe,0CAClD,cAAc,KAAI,EAAE,CACzB,CAAC;QACJ,CAAC;QAED,KAAK,MAAM,aAAa,IAAI,gBAAgB,CAAC,cAAc,IAAI,EAAE,EAAE,CAAC;YAClE,SAAS,CAAC,IAAI,CACZ,CAAA,MAAC,aAAyC,CAAC,eAAe,0CACtD,cAAc,KAAI,EAAE,CACzB,CAAC;QACJ,CAAC;QAED,+DAA+D;QAC/D,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC,IAAY,EAAE,KAAa,EAAW,EAAE;YAC/D,OAAO,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,KAAK,EAAE,CAAC;QAC1D,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -5,6 +5,13 @@ var TraceScrubPatternType;
5
5
  TraceScrubPatternType["SSN"] = "ssn";
6
6
  TraceScrubPatternType["PhoneNumber"] = "phoneNumber";
7
7
  TraceScrubPatternType["IPAddress"] = "ipAddress";
8
+ /*
9
+ * Key-targeted: scrubs the WHOLE value of any attribute whose KEY looks
10
+ * sensitive (password, token, apiKey, authorization, cookie, ...) —
11
+ * catches secrets whose values match no shape-based pattern. Applies to
12
+ * span/event attributes only; span names have no keys to match.
13
+ */
14
+ TraceScrubPatternType["SensitiveKeys"] = "sensitiveKeys";
8
15
  TraceScrubPatternType["Custom"] = "custom";
9
16
  })(TraceScrubPatternType || (TraceScrubPatternType = {}));
10
17
  export default TraceScrubPatternType;
@@ -1 +1 @@
1
- {"version":3,"file":"TraceScrubPatternType.js","sourceRoot":"","sources":["../../../../Types/Trace/TraceScrubPatternType.ts"],"names":[],"mappings":"AAAA,IAAK,qBAOJ;AAPD,WAAK,qBAAqB;IACxB,wCAAe,CAAA;IACf,kDAAyB,CAAA;IACzB,oCAAW,CAAA;IACX,oDAA2B,CAAA;IAC3B,gDAAuB,CAAA;IACvB,0CAAiB,CAAA;AACnB,CAAC,EAPI,qBAAqB,KAArB,qBAAqB,QAOzB;AAED,eAAe,qBAAqB,CAAC"}
1
+ {"version":3,"file":"TraceScrubPatternType.js","sourceRoot":"","sources":["../../../../Types/Trace/TraceScrubPatternType.ts"],"names":[],"mappings":"AAAA,IAAK,qBAcJ;AAdD,WAAK,qBAAqB;IACxB,wCAAe,CAAA;IACf,kDAAyB,CAAA;IACzB,oCAAW,CAAA;IACX,oDAA2B,CAAA;IAC3B,gDAAuB,CAAA;IACvB;;;;;OAKG;IACH,wDAA+B,CAAA;IAC/B,0CAAiB,CAAA;AACnB,CAAC,EAdI,qBAAqB,KAArB,qBAAqB,QAczB;AAED,eAAe,qBAAqB,CAAC"}