@oneuptime/common 12.0.2 → 12.0.3

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 (228) hide show
  1. package/Models/DatabaseModels/DatabaseBaseModel/DatabaseBaseModel.ts +14 -0
  2. package/Models/DatabaseModels/Index.ts +2 -0
  3. package/Models/DatabaseModels/LogDropFilter.ts +9 -20
  4. package/Models/DatabaseModels/StatusPageMonitorRule.ts +911 -0
  5. package/Models/DatabaseModels/StatusPageResource.ts +73 -0
  6. package/Models/DatabaseModels/TraceDropFilter.ts +9 -20
  7. package/Server/API/BaseAPI.ts +13 -2
  8. package/Server/API/DashboardAPI.ts +39 -0
  9. package/Server/EnvironmentConfig.ts +31 -1
  10. package/Server/Infrastructure/GlobalCache.ts +115 -0
  11. package/Server/Infrastructure/Postgres/DataSourceOptions.ts +16 -0
  12. package/Server/Infrastructure/Postgres/SchemaMigrations/1786005052769-AddStatusPageMonitorRule.ts +123 -0
  13. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +2 -0
  14. package/Server/Services/AlertStateTimelineService.ts +20 -0
  15. package/Server/Services/CephClusterService.ts +26 -86
  16. package/Server/Services/CloudResourceService.ts +23 -83
  17. package/Server/Services/DatabaseService.ts +111 -0
  18. package/Server/Services/DockerHostService.ts +19 -79
  19. package/Server/Services/DockerSwarmClusterService.ts +27 -88
  20. package/Server/Services/HostService.ts +46 -99
  21. package/Server/Services/IncidentStateTimelineService.ts +20 -0
  22. package/Server/Services/Index.ts +2 -0
  23. package/Server/Services/IoTFleetService.ts +19 -79
  24. package/Server/Services/KubernetesClusterService.ts +17 -78
  25. package/Server/Services/LabelService.ts +57 -10
  26. package/Server/Services/MetricTypeService.ts +84 -0
  27. package/Server/Services/MonitorService.ts +89 -14
  28. package/Server/Services/MonitorStatusTimelineService.ts +29 -0
  29. package/Server/Services/MonitorTemplateService.ts +65 -0
  30. package/Server/Services/PodmanHostService.ts +19 -79
  31. package/Server/Services/ProxmoxClusterService.ts +23 -83
  32. package/Server/Services/RumApplicationService.ts +19 -80
  33. package/Server/Services/ScheduledMaintenanceStateTimelineService.ts +21 -0
  34. package/Server/Services/ServerlessFunctionService.ts +24 -85
  35. package/Server/Services/ServiceService.ts +299 -73
  36. package/Server/Services/StatusPageMonitorRuleEngineService.ts +752 -0
  37. package/Server/Services/StatusPageMonitorRuleService.ts +471 -0
  38. package/Server/Services/TelemetryEntityRelationshipService.ts +1 -0
  39. package/Server/Services/TelemetryEntityService.ts +1 -0
  40. package/Server/Utils/Database/ProjectScopedReferenceValidator.ts +170 -39
  41. package/Server/Utils/Monitor/MonitorResource.ts +63 -36
  42. package/Server/Utils/Monitor/MonitorStatusTimeline.ts +36 -0
  43. package/Server/Utils/Monitor/MonitorStepsProjectValidator.ts +148 -127
  44. package/Server/Utils/Monitor/MonitorStepsReferenceExtractor.ts +434 -0
  45. package/Server/Utils/SingleFlight.ts +83 -0
  46. package/Server/Utils/StatusPage/MonitorRulePatternValidator.ts +46 -0
  47. package/Server/Utils/Telemetry/EntityRegistry.ts +107 -26
  48. package/Server/Utils/Telemetry/ResourceHeartbeat.ts +314 -0
  49. package/Server/Utils/Telemetry/Telemetry.ts +351 -122
  50. package/Tests/App/Dashboard/WidgetCatalog.test.ts +2 -0
  51. package/Tests/Models/DatabaseModels/ColumnTransformerInvariants.test.ts +306 -0
  52. package/Tests/Models/DatabaseModels/NumberColumnDeserialization.test.ts +333 -0
  53. package/Tests/Models/DatabaseModels/StatusPageMonitorRuleModel.test.ts +190 -0
  54. package/Tests/Server/API/DashboardPublicResourceListAPI.test.ts +26 -0
  55. package/Tests/Server/Infrastructure/GlobalCache.test.ts +226 -0
  56. package/Tests/Server/Infrastructure/PostgresLockTimeoutOptions.test.ts +181 -0
  57. package/Tests/Server/Services/DatabaseServiceUpdateColumnsIfUnlocked.test.ts +342 -0
  58. package/Tests/Server/Services/DropFilterSaveValidation.test.ts +245 -0
  59. package/Tests/Server/Services/HostServiceUpdateLastSeen.test.ts +163 -15
  60. package/Tests/Server/Services/MetricTypeAttachServices.test.ts +222 -0
  61. package/Tests/Server/Services/MissingReferenceWriteGuard.test.ts +614 -0
  62. package/Tests/Server/Services/MonitorStatusTimelineFastPath.test.ts +23 -0
  63. package/Tests/Server/Services/ResourceUpdateLastSeenLivenessFallback.test.ts +305 -56
  64. package/Tests/Server/Services/ServiceUpdateLastSeenSplitGates.test.ts +705 -0
  65. package/Tests/Server/Services/StatusPageMonitorRuleEngineService.test.ts +1719 -0
  66. package/Tests/Server/Services/StatusPageMonitorRuleHooks.test.ts +1212 -0
  67. package/Tests/Server/Services/StatusPageMonitorRuleMonitorCreateHook.test.ts +228 -0
  68. package/Tests/Server/Utils/APIKey/AccessPermission.test.ts +267 -0
  69. package/Tests/Server/Utils/Database/ProjectScopedReferenceValidator.test.ts +260 -13
  70. package/Tests/Server/Utils/EntityRegistryRowFence.test.ts +302 -0
  71. package/Tests/Server/Utils/MetricTypeIndexConvergence.test.ts +598 -0
  72. package/Tests/Server/Utils/Monitor/MonitorStatusTimelineUnusableStatus.test.ts +154 -0
  73. package/Tests/Server/Utils/Monitor/MonitorStepsProjectValidator.test.ts +638 -92
  74. package/Tests/Server/Utils/Monitor/MonitorStepsReferenceExtractor.test.ts +724 -0
  75. package/Tests/Server/Utils/SingleFlight.test.ts +221 -0
  76. package/Tests/Types/Dashboard/NetworkDashboardTemplate.test.ts +793 -0
  77. package/Tests/Types/Database/BigIntColumnTransformer.test.ts +147 -0
  78. package/Tests/Types/Database/DatabasePropertyTransformer.test.ts +140 -0
  79. package/Tests/Types/Database/NumericColumnValue.test.ts +127 -0
  80. package/Tests/Types/Decimal.test.ts +37 -0
  81. package/Tests/Types/Monitor/SnmpVersionParsing.test.ts +152 -0
  82. package/Tests/Types/Port.test.ts +38 -0
  83. package/Tests/UI/Components/LogsHistogram.test.tsx +276 -0
  84. package/Tests/UI/Components/UseLiveLogsRefresh.test.tsx +489 -0
  85. package/Tests/UI/Components/UseLogsHistogram.test.tsx +500 -0
  86. package/Tests/Utils/Dashboard/Components/DashboardComponentsUtil.test.ts +120 -0
  87. package/Tests/Utils/Dashboard/DashboardNetworkMapComponent.test.ts +327 -0
  88. package/Types/Dashboard/DashboardComponentType.ts +1 -0
  89. package/Types/Dashboard/DashboardComponents/ComponentArgument.ts +1 -0
  90. package/Types/Dashboard/DashboardComponents/DashboardNetworkMapComponent.ts +40 -0
  91. package/Types/Dashboard/DashboardTemplates.ts +397 -0
  92. package/Types/Database/BigIntColumnTransformer.ts +74 -0
  93. package/Types/Database/DatabaseProperty.ts +26 -0
  94. package/Types/Database/NumericColumnValue.ts +128 -0
  95. package/Types/Decimal.ts +16 -4
  96. package/Types/Permission.ts +48 -0
  97. package/Types/Port.ts +16 -4
  98. package/UI/Components/LogsViewer/useLiveLogsRefresh.ts +86 -0
  99. package/UI/Components/LogsViewer/useLogsHistogram.ts +113 -0
  100. package/Utils/Dashboard/Components/DashboardNetworkMapComponent.ts +136 -0
  101. package/Utils/Dashboard/Components/Index.ts +7 -0
  102. package/build/dist/Models/DatabaseModels/DatabaseBaseModel/DatabaseBaseModel.js +12 -0
  103. package/build/dist/Models/DatabaseModels/DatabaseBaseModel/DatabaseBaseModel.js.map +1 -1
  104. package/build/dist/Models/DatabaseModels/Index.js +2 -0
  105. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  106. package/build/dist/Models/DatabaseModels/LogDropFilter.js +9 -20
  107. package/build/dist/Models/DatabaseModels/LogDropFilter.js.map +1 -1
  108. package/build/dist/Models/DatabaseModels/StatusPageMonitorRule.js +925 -0
  109. package/build/dist/Models/DatabaseModels/StatusPageMonitorRule.js.map +1 -0
  110. package/build/dist/Models/DatabaseModels/StatusPageResource.js +72 -0
  111. package/build/dist/Models/DatabaseModels/StatusPageResource.js.map +1 -1
  112. package/build/dist/Models/DatabaseModels/TraceDropFilter.js +9 -20
  113. package/build/dist/Models/DatabaseModels/TraceDropFilter.js.map +1 -1
  114. package/build/dist/Server/API/BaseAPI.js +11 -1
  115. package/build/dist/Server/API/BaseAPI.js.map +1 -1
  116. package/build/dist/Server/API/DashboardAPI.js +39 -0
  117. package/build/dist/Server/API/DashboardAPI.js.map +1 -1
  118. package/build/dist/Server/EnvironmentConfig.js +27 -1
  119. package/build/dist/Server/EnvironmentConfig.js.map +1 -1
  120. package/build/dist/Server/Infrastructure/GlobalCache.js +91 -0
  121. package/build/dist/Server/Infrastructure/GlobalCache.js.map +1 -1
  122. package/build/dist/Server/Infrastructure/Postgres/DataSourceOptions.js +5 -3
  123. package/build/dist/Server/Infrastructure/Postgres/DataSourceOptions.js.map +1 -1
  124. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786005052769-AddStatusPageMonitorRule.js +48 -0
  125. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786005052769-AddStatusPageMonitorRule.js.map +1 -0
  126. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +2 -0
  127. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  128. package/build/dist/Server/Services/AlertStateTimelineService.js +19 -0
  129. package/build/dist/Server/Services/AlertStateTimelineService.js.map +1 -1
  130. package/build/dist/Server/Services/CephClusterService.js +26 -76
  131. package/build/dist/Server/Services/CephClusterService.js.map +1 -1
  132. package/build/dist/Server/Services/CloudResourceService.js +23 -73
  133. package/build/dist/Server/Services/CloudResourceService.js.map +1 -1
  134. package/build/dist/Server/Services/DatabaseService.js +86 -0
  135. package/build/dist/Server/Services/DatabaseService.js.map +1 -1
  136. package/build/dist/Server/Services/DockerHostService.js +19 -69
  137. package/build/dist/Server/Services/DockerHostService.js.map +1 -1
  138. package/build/dist/Server/Services/DockerSwarmClusterService.js +27 -78
  139. package/build/dist/Server/Services/DockerSwarmClusterService.js.map +1 -1
  140. package/build/dist/Server/Services/HostService.js +58 -102
  141. package/build/dist/Server/Services/HostService.js.map +1 -1
  142. package/build/dist/Server/Services/IncidentStateTimelineService.js +19 -0
  143. package/build/dist/Server/Services/IncidentStateTimelineService.js.map +1 -1
  144. package/build/dist/Server/Services/Index.js +2 -0
  145. package/build/dist/Server/Services/Index.js.map +1 -1
  146. package/build/dist/Server/Services/IoTFleetService.js +19 -69
  147. package/build/dist/Server/Services/IoTFleetService.js.map +1 -1
  148. package/build/dist/Server/Services/KubernetesClusterService.js +17 -68
  149. package/build/dist/Server/Services/KubernetesClusterService.js.map +1 -1
  150. package/build/dist/Server/Services/LabelService.js +42 -7
  151. package/build/dist/Server/Services/LabelService.js.map +1 -1
  152. package/build/dist/Server/Services/MetricTypeService.js +74 -0
  153. package/build/dist/Server/Services/MetricTypeService.js.map +1 -1
  154. package/build/dist/Server/Services/MonitorService.js +81 -9
  155. package/build/dist/Server/Services/MonitorService.js.map +1 -1
  156. package/build/dist/Server/Services/MonitorStatusTimelineService.js +28 -0
  157. package/build/dist/Server/Services/MonitorStatusTimelineService.js.map +1 -1
  158. package/build/dist/Server/Services/MonitorTemplateService.js +60 -0
  159. package/build/dist/Server/Services/MonitorTemplateService.js.map +1 -1
  160. package/build/dist/Server/Services/PodmanHostService.js +19 -69
  161. package/build/dist/Server/Services/PodmanHostService.js.map +1 -1
  162. package/build/dist/Server/Services/ProxmoxClusterService.js +23 -73
  163. package/build/dist/Server/Services/ProxmoxClusterService.js.map +1 -1
  164. package/build/dist/Server/Services/RumApplicationService.js +19 -70
  165. package/build/dist/Server/Services/RumApplicationService.js.map +1 -1
  166. package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js +20 -0
  167. package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js.map +1 -1
  168. package/build/dist/Server/Services/ServerlessFunctionService.js +24 -75
  169. package/build/dist/Server/Services/ServerlessFunctionService.js.map +1 -1
  170. package/build/dist/Server/Services/ServiceService.js +236 -61
  171. package/build/dist/Server/Services/ServiceService.js.map +1 -1
  172. package/build/dist/Server/Services/StatusPageMonitorRuleEngineService.js +603 -0
  173. package/build/dist/Server/Services/StatusPageMonitorRuleEngineService.js.map +1 -0
  174. package/build/dist/Server/Services/StatusPageMonitorRuleService.js +401 -0
  175. package/build/dist/Server/Services/StatusPageMonitorRuleService.js.map +1 -0
  176. package/build/dist/Server/Services/TelemetryEntityRelationshipService.js +1 -0
  177. package/build/dist/Server/Services/TelemetryEntityRelationshipService.js.map +1 -1
  178. package/build/dist/Server/Services/TelemetryEntityService.js +1 -0
  179. package/build/dist/Server/Services/TelemetryEntityService.js.map +1 -1
  180. package/build/dist/Server/Utils/Database/ProjectScopedReferenceValidator.js +105 -29
  181. package/build/dist/Server/Utils/Database/ProjectScopedReferenceValidator.js.map +1 -1
  182. package/build/dist/Server/Utils/Monitor/MonitorResource.js +56 -32
  183. package/build/dist/Server/Utils/Monitor/MonitorResource.js.map +1 -1
  184. package/build/dist/Server/Utils/Monitor/MonitorStatusTimeline.js +30 -3
  185. package/build/dist/Server/Utils/Monitor/MonitorStatusTimeline.js.map +1 -1
  186. package/build/dist/Server/Utils/Monitor/MonitorStepsProjectValidator.js +110 -98
  187. package/build/dist/Server/Utils/Monitor/MonitorStepsProjectValidator.js.map +1 -1
  188. package/build/dist/Server/Utils/Monitor/MonitorStepsReferenceExtractor.js +312 -0
  189. package/build/dist/Server/Utils/Monitor/MonitorStepsReferenceExtractor.js.map +1 -0
  190. package/build/dist/Server/Utils/SingleFlight.js +76 -0
  191. package/build/dist/Server/Utils/SingleFlight.js.map +1 -0
  192. package/build/dist/Server/Utils/StatusPage/MonitorRulePatternValidator.js +29 -0
  193. package/build/dist/Server/Utils/StatusPage/MonitorRulePatternValidator.js.map +1 -0
  194. package/build/dist/Server/Utils/Telemetry/EntityRegistry.js +78 -19
  195. package/build/dist/Server/Utils/Telemetry/EntityRegistry.js.map +1 -1
  196. package/build/dist/Server/Utils/Telemetry/ResourceHeartbeat.js +160 -0
  197. package/build/dist/Server/Utils/Telemetry/ResourceHeartbeat.js.map +1 -0
  198. package/build/dist/Server/Utils/Telemetry/Telemetry.js +279 -104
  199. package/build/dist/Server/Utils/Telemetry/Telemetry.js.map +1 -1
  200. package/build/dist/Types/Dashboard/DashboardComponentType.js +1 -0
  201. package/build/dist/Types/Dashboard/DashboardComponentType.js.map +1 -1
  202. package/build/dist/Types/Dashboard/DashboardComponents/ComponentArgument.js +1 -0
  203. package/build/dist/Types/Dashboard/DashboardComponents/ComponentArgument.js.map +1 -1
  204. package/build/dist/Types/Dashboard/DashboardComponents/DashboardNetworkMapComponent.js +2 -0
  205. package/build/dist/Types/Dashboard/DashboardComponents/DashboardNetworkMapComponent.js.map +1 -0
  206. package/build/dist/Types/Dashboard/DashboardTemplates.js +368 -0
  207. package/build/dist/Types/Dashboard/DashboardTemplates.js.map +1 -1
  208. package/build/dist/Types/Database/BigIntColumnTransformer.js +66 -0
  209. package/build/dist/Types/Database/BigIntColumnTransformer.js.map +1 -0
  210. package/build/dist/Types/Database/DatabaseProperty.js +25 -0
  211. package/build/dist/Types/Database/DatabaseProperty.js.map +1 -1
  212. package/build/dist/Types/Database/NumericColumnValue.js +97 -0
  213. package/build/dist/Types/Database/NumericColumnValue.js.map +1 -0
  214. package/build/dist/Types/Decimal.js +14 -3
  215. package/build/dist/Types/Decimal.js.map +1 -1
  216. package/build/dist/Types/Permission.js +42 -0
  217. package/build/dist/Types/Permission.js.map +1 -1
  218. package/build/dist/Types/Port.js +15 -5
  219. package/build/dist/Types/Port.js.map +1 -1
  220. package/build/dist/UI/Components/LogsViewer/useLiveLogsRefresh.js +44 -0
  221. package/build/dist/UI/Components/LogsViewer/useLiveLogsRefresh.js.map +1 -0
  222. package/build/dist/UI/Components/LogsViewer/useLogsHistogram.js +75 -0
  223. package/build/dist/UI/Components/LogsViewer/useLogsHistogram.js.map +1 -0
  224. package/build/dist/Utils/Dashboard/Components/DashboardNetworkMapComponent.js +114 -0
  225. package/build/dist/Utils/Dashboard/Components/DashboardNetworkMapComponent.js.map +1 -0
  226. package/build/dist/Utils/Dashboard/Components/Index.js +4 -0
  227. package/build/dist/Utils/Dashboard/Components/Index.js.map +1 -1
  228. package/package.json +1 -1
@@ -2,6 +2,19 @@ import QueryHelper from "../../Types/Database/QueryHelper";
2
2
  import { LIMIT_PER_PROJECT } from "../../../Types/Database/LimitMax";
3
3
  import BadDataException from "../../../Types/Exception/BadDataException";
4
4
  import ObjectID from "../../../Types/ObjectID";
5
+ /*
6
+ * Ids are matched case-insensitively.
7
+ *
8
+ * ObjectID keeps whatever case it was handed (its validation regex is
9
+ * case-insensitive) and Postgres compares `uuid` values by parsed value, so a
10
+ * payload carrying an UPPERCASE uuid selects the row fine — but reads the id
11
+ * back lower-cased, because that is how Postgres renders `uuid`. Comparing the
12
+ * two verbatim would find no match and report a record that plainly exists as
13
+ * missing.
14
+ */
15
+ function normalizeId(id) {
16
+ return id.trim().toLowerCase();
17
+ }
5
18
  /*
6
19
  * The same reference reaches a service hook in several shapes: the id column
7
20
  * (`incidentSeverityId`), a relation object (`incidentSeverity: { _id }`), an
@@ -25,7 +38,7 @@ export function resolveReferenceId(value) {
25
38
  }
26
39
  export default class ProjectScopedReferenceValidator {
27
40
  static async validateReferencesBelongToProject(data) {
28
- var _a, _b, _c;
41
+ var _a, _b, _c, _d, _e, _f;
29
42
  if (!data.projectId) {
30
43
  /*
31
44
  * Root/internal writes do not always carry a project. Callers resolve the
@@ -40,60 +53,120 @@ export default class ProjectScopedReferenceValidator {
40
53
  */
41
54
  const idsByService = new Map();
42
55
  for (const reference of data.references) {
43
- const id = ((_a = reference.id) === null || _a === void 0 ? void 0 : _a.toString()) || "";
56
+ const id = ((_a = reference.id) === null || _a === void 0 ? void 0 : _a.toString().trim()) || "";
44
57
  if (!id) {
45
58
  continue;
46
59
  }
47
60
  if (!idsByService.has(reference.service)) {
48
61
  idsByService.set(reference.service, new Map());
49
62
  }
50
- idsByService.get(reference.service).set(id, reference.modelName);
63
+ const requested = idsByService.get(reference.service);
64
+ const key = normalizeId(id);
65
+ const existing = requested.get(key);
66
+ requested.set(key, {
67
+ modelName: reference.modelName,
68
+ id: (existing === null || existing === void 0 ? void 0 : existing.id) || id,
69
+ /*
70
+ * The same id can arrive twice for one service (e.g. two monitor
71
+ * criteria pointing at the same status). If ANY of them requires the
72
+ * record to exist, the strictest wins.
73
+ */
74
+ mustExist: ((_b = existing === null || existing === void 0 ? void 0 : existing.mustExist) !== null && _b !== void 0 ? _b : false) || ((_c = reference.mustExist) !== null && _c !== void 0 ? _c : true),
75
+ });
51
76
  }
52
77
  if (idsByService.size === 0) {
53
78
  return;
54
79
  }
55
80
  const foreignReferences = [];
56
- for (const [service, idToModelName] of idsByService) {
81
+ const missingReferences = [];
82
+ for (const [service, requestedById] of idsByService) {
83
+ /*
84
+ * Read the tenant and name columns off the model rather than assuming
85
+ * `projectId` / `name`. Not every referenced model is project scoped —
86
+ * a monitor criteria can name owner *users*, and User has no tenant
87
+ * column at all. Selecting a column a model does not have throws, and
88
+ * comparing an absent projectId against the write's project would
89
+ * report every such record as belonging to "a different project".
90
+ */
91
+ const referencedModel = service.getModel();
92
+ const tenantColumnName = referencedModel.getTenantColumn();
93
+ const hasNameColumn = referencedModel.hasColumn("name");
94
+ const select = {
95
+ _id: true,
96
+ };
97
+ if (hasNameColumn) {
98
+ select["name"] = true;
99
+ }
100
+ if (tenantColumnName) {
101
+ select[tenantColumnName] = true;
102
+ }
57
103
  const records = await service.findBy({
58
104
  query: {
59
- _id: QueryHelper.any(Array.from(idToModelName.keys())),
60
- },
61
- /*
62
- * `name` and `projectId` are not on DatabaseBaseModel, but every model
63
- * passed here is project scoped and named, so the cast is safe.
64
- */
65
- select: {
66
- _id: true,
67
- name: true,
68
- projectId: true,
105
+ _id: QueryHelper.any(Array.from(requestedById.keys())),
69
106
  },
107
+ select: select,
70
108
  limit: LIMIT_PER_PROJECT,
71
109
  skip: 0,
72
110
  props: {
73
111
  isRoot: true,
74
112
  },
75
113
  });
114
+ const foundIds = new Set();
76
115
  for (const record of records) {
77
- const recordProjectId = record.getValue("projectId") || undefined;
116
+ const id = normalizeId(((_d = record._id) === null || _d === void 0 ? void 0 : _d.toString()) || "");
117
+ foundIds.add(id);
118
+ if (!tenantColumnName) {
119
+ // Global record (e.g. User) — there is no project to compare against.
120
+ continue;
121
+ }
122
+ const recordProjectId = record.getValue(tenantColumnName) || undefined;
78
123
  if ((recordProjectId === null || recordProjectId === void 0 ? void 0 : recordProjectId.toString()) === data.projectId.toString()) {
79
124
  continue;
80
125
  }
81
- const id = ((_b = record._id) === null || _b === void 0 ? void 0 : _b.toString()) || "";
82
126
  foreignReferences.push({
83
- modelName: idToModelName.get(id) || "Record",
84
- name: ((_c = record.getValue("name")) === null || _c === void 0 ? void 0 : _c.toString()) || id,
127
+ modelName: ((_e = requestedById.get(id)) === null || _e === void 0 ? void 0 : _e.modelName) || "Record",
128
+ name: (hasNameColumn && ((_f = record.getValue("name")) === null || _f === void 0 ? void 0 : _f.toString())) ||
129
+ id,
130
+ });
131
+ }
132
+ for (const [id, requested] of requestedById) {
133
+ if (foundIds.has(id) || !requested.mustExist) {
134
+ continue;
135
+ }
136
+ missingReferences.push({
137
+ modelName: requested.modelName,
138
+ // Echo the id as the caller wrote it, not the normalized key.
139
+ id: requested.id,
85
140
  });
86
141
  }
87
142
  }
88
- if (foreignReferences.length === 0) {
143
+ /*
144
+ * Both problems are reported in one go so a caller fixing a payload with
145
+ * several bad ids does not have to discover them one round-trip at a time.
146
+ * The wording of each clause is kept verbatim from when they were separate
147
+ * messages — support runbooks and tests match on it.
148
+ */
149
+ const clauses = [];
150
+ if (foreignReferences.length > 0) {
151
+ const described = foreignReferences
152
+ .map((reference) => {
153
+ return `${reference.modelName} "${reference.name}"`;
154
+ })
155
+ .join(", ");
156
+ clauses.push(`references records that belong to a different project: ${described}. Please pick values from this project and try again.`);
157
+ }
158
+ if (missingReferences.length > 0) {
159
+ const described = missingReferences
160
+ .map((reference) => {
161
+ return `${reference.modelName} "${reference.id}"`;
162
+ })
163
+ .join(", ");
164
+ clauses.push(`references records that do not exist: ${described}. Please pick values that exist in this project and try again.`);
165
+ }
166
+ if (clauses.length === 0) {
89
167
  return;
90
168
  }
91
- const described = foreignReferences
92
- .map((reference) => {
93
- return `${reference.modelName} "${reference.name}"`;
94
- })
95
- .join(", ");
96
- throw new BadDataException(`This ${data.subject || "request"} references records that belong to a different project: ${described}. Please pick values from this project and try again.`);
169
+ throw new BadDataException(`This ${data.subject || "request"} ${clauses.join(" It also ")}`);
97
170
  }
98
171
  /*
99
172
  * "Can this project actually use this record?" — for callers that must not
@@ -103,10 +176,13 @@ export default class ProjectScopedReferenceValidator {
103
176
  * there fails the whole ingest job for that monitor, so those callers ask
104
177
  * this instead and fall back to their project's own default.
105
178
  *
106
- * Note the deliberate difference from validateReferencesBelongToProject: an
107
- * id that matches NO record is unusable here (false), while the write guard
108
- * lets it pass so a record already pointing at something deleted stays
109
- * saveable.
179
+ * Note the deliberate difference from validateReferencesBelongToProject:
180
+ * that one refuses the write and names what is wrong, which is right when
181
+ * someone is typing an id in. This one answers a question and never throws,
182
+ * which is right when a worker is reading an id that was typed in long ago —
183
+ * an id monitorSteps is allowed to keep holding (the write guard exempts what
184
+ * a record already stores, since none of those ids has a foreign key behind
185
+ * it and there is no migration to clean them up).
110
186
  */
111
187
  static async isUsableInProject(data) {
112
188
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectScopedReferenceValidator.js","sourceRoot":"","sources":["../../../../../Server/Utils/Database/ProjectScopedReferenceValidator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProjectScopedReferenceValidator.js","sourceRoot":"","sources":["../../../../../Server/Utils/Database/ProjectScopedReferenceValidator.ts"],"names":[],"mappings":"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"}
@@ -31,11 +31,12 @@ import MonitorStatusTimelineUtil from "./MonitorStatusTimeline";
31
31
  import CaptureSpan from "../Telemetry/CaptureSpan";
32
32
  import ExceptionMessages from "../../../Types/Exception/ExceptionMessages";
33
33
  import MonitorStatusService from "../../Services/MonitorStatusService";
34
+ import ProjectScopedReferenceValidator from "../Database/ProjectScopedReferenceValidator";
34
35
  import { ProbeConnectionStatus } from "../../../Models/DatabaseModels/Probe";
35
36
  import { LIMIT_PER_PROJECT } from "../../../Types/Database/LimitMax";
36
37
  export default class MonitorResourceUtil {
37
38
  static async monitorResource(dataToProcess) {
38
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
39
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
39
40
  let response = {
40
41
  monitorId: dataToProcess.monitorId,
41
42
  criteriaMetId: undefined,
@@ -769,41 +770,64 @@ export default class MonitorResourceUtil {
769
770
  * mask the very lock failure the error log surfaces.
770
771
  */
771
772
  let revertedToDefaultStatus = true;
772
- try {
773
- await MonitorStatusTimelineService.create({
774
- data: monitorStatusTimeline,
775
- props: {
776
- isRoot: true,
777
- },
778
- });
779
- logger.debug(`${dataToProcess.monitorId.toString()} - Monitor status updated to default.`);
773
+ /*
774
+ * The stored default status can be a status that no longer exists, or
775
+ * one from another project: monitorSteps is a JSON blob with no
776
+ * foreign key behind it, and before issue #3039 was fixed the API
777
+ * accepted any uuid for it. Writing it raised the
778
+ * "violates foreign key constraint" error from the probe/telemetry
779
+ * worker and failed the whole ingest run for this monitor, losing the
780
+ * monitor log and payload persisted below. Skip the revert and log,
781
+ * the same way the criteria path in Utils/Monitor/MonitorStatusTimeline
782
+ * does. New writes are rejected up front by
783
+ * MonitorStepsProjectValidator.
784
+ */
785
+ const isDefaultStatusUsable = await ProjectScopedReferenceValidator.isUsableInProject({
786
+ projectId: monitor.projectId,
787
+ id: monitorSteps.data.defaultMonitorStatusId,
788
+ service: MonitorStatusService,
789
+ });
790
+ if (!isDefaultStatusUsable) {
791
+ logger.error(`${dataToProcess.monitorId.toString()} - The default monitor status ${monitorSteps.data.defaultMonitorStatusId.toString()} does not exist in project ${(_t = monitor.projectId) === null || _t === void 0 ? void 0 : _t.toString()}. Skipping revert to default status. Please pick a default monitor status that exists in this project.`);
792
+ revertedToDefaultStatus = false;
780
793
  }
781
- catch (err) {
782
- /*
783
- * Idempotent concurrency race (see MonitorStatusTimeline.ts): a
784
- * concurrent result already moved the monitor to this default status,
785
- * so onBeforeCreate's dedupe check throws this exact BadDataException.
786
- * Treat as a no-op at debug level rather than failing the job. Match the
787
- * exact message so unrelated BadDataExceptions still propagate.
788
- */
789
- if (err instanceof BadDataException &&
790
- err.message === MONITOR_STATUS_SAME_AS_PREVIOUS_ERROR_MESSAGE) {
791
- logger.debug(`${dataToProcess.monitorId.toString()} - Monitor status already at default; skipping duplicate status timeline (concurrent race).`);
794
+ else {
795
+ try {
796
+ await MonitorStatusTimelineService.create({
797
+ data: monitorStatusTimeline,
798
+ props: {
799
+ isRoot: true,
800
+ },
801
+ });
802
+ logger.debug(`${dataToProcess.monitorId.toString()} - Monitor status updated to default.`);
792
803
  }
793
- else if (err instanceof ServerException &&
794
- err.message === MONITOR_STATUS_TIMELINE_LOCK_ERROR_MESSAGE) {
804
+ catch (err) {
795
805
  /*
796
- * The per-monitor timeline mutex could not be acquired (fail-closed
797
- * create, see MonitorStatusTimelineService). Skipping is recoverable:
798
- * the next probe result re-evaluates the same criteria and recreates
799
- * the revert-to-default, while failing here would abort the whole
800
- * ingest run and lose the monitor log for this probe result.
806
+ * Idempotent concurrency race (see MonitorStatusTimeline.ts): a
807
+ * concurrent result already moved the monitor to this default status,
808
+ * so onBeforeCreate's dedupe check throws this exact BadDataException.
809
+ * Treat as a no-op at debug level rather than failing the job. Match the
810
+ * exact message so unrelated BadDataExceptions still propagate.
801
811
  */
802
- logger.error(`${dataToProcess.monitorId.toString()} - Could not acquire the monitor status timeline lock; skipping revert to default status. It will be retried on the next probe result.`);
803
- revertedToDefaultStatus = false;
804
- }
805
- else {
806
- throw err;
812
+ if (err instanceof BadDataException &&
813
+ err.message === MONITOR_STATUS_SAME_AS_PREVIOUS_ERROR_MESSAGE) {
814
+ logger.debug(`${dataToProcess.monitorId.toString()} - Monitor status already at default; skipping duplicate status timeline (concurrent race).`);
815
+ }
816
+ else if (err instanceof ServerException &&
817
+ err.message === MONITOR_STATUS_TIMELINE_LOCK_ERROR_MESSAGE) {
818
+ /*
819
+ * The per-monitor timeline mutex could not be acquired (fail-closed
820
+ * create, see MonitorStatusTimelineService). Skipping is recoverable:
821
+ * the next probe result re-evaluates the same criteria and recreates
822
+ * the revert-to-default, while failing here would abort the whole
823
+ * ingest run and lose the monitor log for this probe result.
824
+ */
825
+ logger.error(`${dataToProcess.monitorId.toString()} - Could not acquire the monitor status timeline lock; skipping revert to default status. It will be retried on the next probe result.`);
826
+ revertedToDefaultStatus = false;
827
+ }
828
+ else {
829
+ throw err;
830
+ }
807
831
  }
808
832
  }
809
833
  if (revertedToDefaultStatus) {
@@ -1 +1 @@
1
- {"version":3,"file":"MonitorResource.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorResource.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MonitorResource.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorResource.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,mBAAmB,MAAM,oCAAoC,CAAC;AACrE,OAAO,cAAc,MAAM,+BAA+B,CAAC;AAC3D,OAAO,4BAA4B,EAAE,EACnC,6CAA6C,EAC7C,0CAA0C,GAC3C,MAAM,6CAA6C,CAAC;AACrD,OAAO,eAAe,MAAM,0CAA0C,CAAC;AACvE,OAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,OAAO,wBAAwB,MAAM,4BAA4B,CAAC;AAClE,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,iBAAiB,MAAM,qBAAqB,CAAC;AAEpD,OAAO,SAAS,MAAM,uCAAuC,CAAC;AAE9D,OAAO,gBAAgB,MAAM,2CAA2C,CAAC;AACzE,OAAO,SAA6B,MAAM,gCAAgC,CAAC;AAM3E,OAAO,WAAW,EAAE,EAClB,iBAAiB,GAClB,MAAM,oCAAoC,CAAC;AAU5C,OAAO,qBAAqB,MAAM,sDAAsD,CAAC;AACzF,OAAO,aAAa,MAAM,qBAAqB,CAAC;AAGhD,OAAO,aAAa,MAAM,wCAAwC,CAAC;AAInE,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,YAAY,MAAM,gBAAgB,CAAC;AAC1C,OAAO,qBAAqB,MAAM,yBAAyB,CAAC;AAE5D,OAAO,+BAA+B,MAAM,mCAAmC,CAAC;AAChF,OAAO,6BAA6B,MAAM,iCAAiC,CAAC;AAC5E,OAAO,yBAAyB,MAAM,yBAAyB,CAAC;AAChE,OAAO,WAAW,MAAM,0BAA0B,CAAC;AACnD,OAAO,iBAAiB,MAAM,4CAA4C,CAAC;AAE3E,OAAO,oBAAoB,MAAM,qCAAqC,CAAC;AACvE,OAAO,+BAA+B,MAAM,6CAA6C,CAAC;AAC1F,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAYrE,MAAM,CAAC,OAAO,OAAO,mBAAmB;IAElB,AAAb,MAAM,CAAC,KAAK,CAAC,eAAe,CACjC,aAA4B;;QAE5B,IAAI,QAAQ,GAA2B;YACrC,SAAS,EAAE,aAAa,CAAC,SAAS;YAClC,aAAa,EAAE,SAAS;YACxB,SAAS,EAAE,IAAI;SAChB,CAAC;QAEF,MAAM,iBAAiB,GAA6B;YAClD,WAAW,EAAE,aAAa,CAAC,cAAc,EAAE;YAC3C,eAAe,EAAE,EAAE;YACnB,MAAM,EAAE,EAAE;SACX,CAAC;QAEF,QAAQ,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC/C,aAAa,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAEpD,MAAM,sBAAsB,GAA8B,EAAE,CAAC;QAE7D,MAAM,oBAAoB,GAEI,KAAK,EACjC,QAAqC,EACb,EAAE;;YAC1B,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,QAAQ,GAAW,QAAQ,CAAC,QAAQ,EAAE,CAAC;YAE7C,IAAI,sBAAsB,CAAC,QAAQ,CAAC,KAAK,SAAS,EAAE,CAAC;gBACnD,OAAO,MAAA,sBAAsB,CAAC,QAAQ,CAAC,mCAAI,IAAI,CAAC;YAClD,CAAC;YAED,MAAM,aAAa,GACjB,MAAM,oBAAoB,CAAC,SAAS,CAAC;gBACnC,KAAK,EAAE;oBACL,GAAG,EAAE,QAAQ;iBACd;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,IAAI;iBACX;gBACD,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC;YAEL,MAAM,UAAU,GAAkB,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,KAAI,IAAI,CAAC;YAC9D,sBAAsB,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC;YAE9C,OAAO,UAAU,CAAC;QACpB,CAAC,CAAC;QAEF,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC1C,MAAM,CAAC,KAAK,CAAC,cAAc,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;QACvD,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAEpC,gBAAgB;QAChB,MAAM,OAAO,GAAmB,MAAM,cAAc,CAAC,WAAW,CAAC;YAC/D,EAAE,EAAE,aAAa,CAAC,SAAS;YAC3B,MAAM,EAAE;gBACN,YAAY,EAAE,IAAI;gBAClB,WAAW,EAAE,IAAI;gBACjB,SAAS,EAAE,IAAI;gBACf,uBAAuB,EAAE,IAAI;gBAC7B,8CAA8C,EAAE,IAAI;gBACpD,yDAAyD,EAAE,IAAI;gBAC/D,sBAAsB,EAAE,IAAI;gBAC5B,GAAG,EAAE,IAAI;gBACT,IAAI,EAAE,IAAI;gBACV,qBAAqB,EAAE,IAAI;aAC5B;YACD,KAAK,EAAE;gBACL,MAAM,EAAE,IAAI;aACb;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAC9B,MAAM,CAAC,KAAK,CAAC,cAAc,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;QAEvD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;YACxE,MAAM,IAAI,gBAAgB,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;QAChE,CAAC;QAED,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YACvB,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,oCAAoC,CAC1E,CAAC;YACF,MAAM,IAAI,gBAAgB,CAAC,mCAAmC,CAAC,CAAC;QAClE,CAAC;QAED,aAAa,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QAE5C,IAAI,OAAO,CAAC,uBAAuB,EAAE,CAAC;YACpC,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,mEAAmE,CACzG,CAAC;YAEF,MAAM,IAAI,gBAAgB,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,OAAO,CAAC,8CAA8C,EAAE,CAAC;YAC3D,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,4IAA4I,CAClL,CAAC;YAEF,MAAM,IAAI,gBAAgB,CACxB,2IAA2I,CAC5I,CAAC;QACJ,CAAC;QAED,IAAI,OAAO,CAAC,yDAAyD,EAAE,CAAC;YACtE,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,sLAAsL,CAC5N,CAAC;YAEF,MAAM,IAAI,gBAAgB,CACxB,qLAAqL,CACtL,CAAC;QACJ,CAAC;QAED;;;;;;;;;;;;;;;;;;;;;;;;;WAyBG;QACH,IAAI,KAAK,GAA0B,IAAI,CAAC;QAExC,IAAI,CAAC;YACH,KAAK,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC;gBAC3B,GAAG,EAAE,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE;gBACvC,SAAS,EAAE,qCAAqC;gBAChD,cAAc,EAAE,IAAI;gBACpB,aAAa,EAAE,GAAG;gBAClB,oBAAoB,EAAE,EAAE;aACzB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,sKAAsK,CAC5M,CAAC;YACF,MAAM,GAAG,CAAC;QACZ,CAAC;QAED,MAAM,YAAY,GAAwB,KAAK,IAAmB,EAAE;YAClE,IAAI,KAAK,EAAE,CAAC;gBACV,IAAI,CAAC;oBACH,MAAM,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBACjC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACpB,CAAC;gBACD,KAAK,GAAG,IAAI,CAAC;YACf,CAAC;QACH,CAAC,CAAC;QAEF,IAAI,CAAC;YACH,IAAI,SAAS,GAAuB,SAAS,CAAC;YAC9C,MAAM,WAAW,GAAuB,OAAO,CAAC,IAAI,IAAI,SAAS,CAAC;YAElE;;;;;;;eAOG;YACH,IAAI,uBAAuB,GAA+B,IAAI,CAAC;YAE/D;;;;;eAKG;YACH,MAAM,eAAe,GAAY,OAAO,CACrC,aAAsC,CAAC,gBAAgB,CACzD,CAAC;YAEF,qCAAqC;YAErC,+FAA+F;YAC/F,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,mBACnC,OAAO,CAAC,WACV,EAAE,CACH,CAAC;YAEF,IACE,OAAO,CAAC,WAAW;gBACnB,iBAAiB,CAAC,iBAAiB,CAAC,OAAO,CAAC,WAAW,CAAC,EACxD,CAAC;gBACD,aAAa,GAAG,aAAqC,CAAC;gBACtD,IAAK,aAAsC,CAAC,OAAO,EAAE,CAAC;oBACpD;;;;;uBAKG;oBACH,uBAAuB,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC;wBACzD,KAAK,EAAE;4BACL,SAAS,EAAE,OAAO,CAAC,EAAG;yBACvB;wBACD,MAAM,EAAE;4BACN,GAAG,EAAE,IAAI;4BACT,OAAO,EAAE,IAAI;4BACb,SAAS,EAAE,IAAI;4BACf,iBAAiB,EAAE,IAAI;4BACvB,KAAK,EAAE;gCACL,IAAI,EAAE,IAAI;gCACV,gBAAgB,EAAE,IAAI;6BACvB;yBACF;wBACD,KAAK,EAAE,iBAAiB;wBACxB,IAAI,EAAE,CAAC;wBACP,KAAK,EAAE;4BACL,MAAM,EAAE,IAAI;yBACb;qBACF,CAAC,CAAC;oBAEH,MAAM,YAAY,GAChB,uBAAuB,CAAC,IAAI,CAAC,CAAC,EAAgB,EAAE,EAAE;;wBAChD,OAAO,CACL,CAAA,MAAA,EAAE,CAAC,OAAO,0CAAE,QAAQ,EAAE;4BACrB,aAAsC,CAAC,OAAQ,CAAC,QAAQ,EAAE,CAC5D,CAAC;oBACJ,CAAC,CAAC,CAAC;oBAEL,IAAI,CAAC,YAAY,EAAE,CAAC;wBAClB,MAAM,IAAI,gBAAgB,CAAC,uCAAuC,CAAC,CAAC;oBACtE,CAAC;oBAED,SAAS,GAAG,CAAA,MAAA,YAAY,CAAC,KAAK,0CAAE,IAAI,KAAI,SAAS,CAAC;oBAElD;;;;;uBAKG;oBAEH,IAAI,CAAC,eAAe,EAAE,CAAC;wBACrB;;;;;;;;;2BASG;wBACH,MAAM,wBAAwB,mCACzB,CAAC,YAAY,CAAC,iBAAiB,IAAI,EAAE,CAAC,KACzC,CACE,aACD,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,kCACtB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,KAC5C,WAAW,EAAE,aAAa,CAAC,cAAc,EAAE,MAE9C,CAAC;wBAEF,MAAM,mBAAmB,CAAC,6BAA6B,CAAC;4BACtD,EAAE,EAAE,YAAY,CAAC,EAAG;4BACpB,IAAI,EAAE;gCACJ,iBAAiB,EAAE,wBAA+B;6BACnD;yBACF,CAAC,CAAC;wBAEH;;;;2BAIG;wBACH,YAAY,CAAC,iBAAiB,GAAG,wBAAwB,CAAC;oBAC5D,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,qBAAqB,GACzB,OAAO,CAAC,WAAW,KAAK,WAAW,CAAC,MAAM;gBACzC,aAAuC,CAAC,iBAAiB;gBACxD,CAAC,CAAE,aAAuC;gBAC1C,CAAC,CAAC,SAAS,CAAC;YAEhB,MAAM,sBAAsB,GAC1B,OAAO,CAAC,WAAW,KAAK,WAAW,CAAC,eAAe;gBAClD,aAAwC,CAAC,yBAAyB;gBACnE,CAAE,aAAwC;qBACvC,qCAAqC;gBACtC,CAAC,CAAE,aAAwC;gBAC3C,CAAC,CAAC,SAAS,CAAC;YAEhB,IAAI,uBAAuB,GAAY,KAAK,CAAC;YAE7C,MAAM,2BAA2B,GAAwB,KAAK,IAAI,EAAE;gBAClE,IAAI,uBAAuB,EAAE,CAAC;oBAC5B,OAAO;gBACT,CAAC;gBAED,IAAI,qBAAqB,EAAE,CAAC;oBAC1B,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,iCAAiC,qBAAqB,CAAC,iBAAiB,EAAE,CAChH,CAAC;oBAEF,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;oBAE5B;;;;;;;uBAOG;oBACH,IAAI,CAAC,qBAAqB,CAAC,0BAA0B,EAAE,CAAC;wBACtD;;;;;;;;;;;;;2BAaG;wBACH,MAAM,cAAc,CAAC,6BAA6B,CAAC;4BACjD,EAAE,EAAE,OAAO,CAAC,EAAG;4BACf,IAAI,EAAE;gCACJ,8BAA8B,EAC5B,qBAAqB,CAAC,iBAAkB;gCAC1C,qBAAqB;6BACtB;yBACF,CAAC,CAAC;wBAEH,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,oCAAoC,CAC1E,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,mEAAmE,CACzG,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAED,IAAI,sBAAsB,EAAE,CAAC;oBAC3B,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,mCAAmC,sBAAsB,CAAC,yBAAyB,EAAE,CAC3H,CAAC;oBAEF;;;;;;;uBAOG;oBACH,MAAM,cAAc,CAAC,6BAA6B,CAAC;wBACjD,EAAE,EAAE,OAAO,CAAC,EAAG;wBACf,IAAI,EAAE;4BACJ,wCAAwC,EACtC,aAAa,CAAC,cAAc,EAAE;4BAChC,sBAAsB,EAAE,IAAI,CAAC,KAAK,CAChC,IAAI,CAAC,SAAS,CAAC,sBAAsB,CAAC,CACb;yBACrB;qBACT,CAAC,CAAC;oBAEH,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,qCAAqC,CAC3E,CAAC;gBACJ,CAAC;gBAED,uBAAuB,GAAG,IAAI,CAAC;YACjC,CAAC,CAAC;YAEF,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,2BAA2B,CACjE,CAAC;YAEF,IAAI,CAAC;gBACH,MAAM,iBAAiB,CAAC,kBAAkB,CAAC;oBACzC,SAAS,EAAE,OAAO,CAAC,EAAG;oBACtB,SAAS,EAAE,OAAO,CAAC,SAAU;oBAC7B,aAAa,EAAE,aAAa;oBAC5B,SAAS,EAAE,SAAS,IAAI,SAAS;oBACjC,WAAW,EAAE,WAAW,IAAI,SAAS;iBACtC,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;gBACvC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACpB,CAAC;YAED,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,0BAA0B,CAChE,CAAC;YAEF;;;;;;;eAOG;YACH,MAAM,YAAY,GAA6B,OAAO,CAAC,YAAY,CAAC;YAEpE,IACE,CAAC,YAAY;gBACb,CAAC,CAAA,MAAA,YAAY,CAAC,IAAI,0CAAE,yBAAyB,CAAA;gBAC7C,CAAA,MAAA,YAAY,CAAC,IAAI,0CAAE,yBAAyB,CAAC,MAAM,MAAK,CAAC,EACzD,CAAC;gBACD,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,yBAAyB,CAC/D,CAAC;gBACF,MAAM,2BAA2B,EAAE,CAAC;gBAEpC,cAAc,CAAC,cAAc,CAAC;oBAC5B,SAAS,EAAE,OAAO,CAAC,EAAG;oBACtB,SAAS,EAAE,OAAO,CAAC,SAAU;oBAC7B,aAAa,EAAE,aAAa;iBAC7B,CAAC,CAAC;gBACH,OAAO,QAAQ,CAAC;YAClB,CAAC;YAED,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,uCAAuC,CAC7E,CAAC;YAEF,MAAM,iBAAiB,GACrB,YAAY,CAAC,IAAI,CAAC,yBAAyB;iBACxC,GAAG,CAAC,CAAC,IAAiB,EAAE,EAAE;;gBACzB,OAAO,MAAA,IAAI,CAAC,IAAI,0CAAE,eAAe,CAAC;YACpC,CAAC,CAAC;iBACD,MAAM,CAAC,CAAC,QAAqC,EAAE,EAAE;gBAChD,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC3B,CAAC,CAAC;iBACD,GAAG,CAAC,CAAC,QAAqC,EAAE,EAAE;;gBAC7C,OAAO,CAAC,GAAG,CAAC,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,4BAA4B,KAAI,EAAE,CAAC,CAAC,CAAC;YACnE,CAAC,CAAC;iBACD,IAAI,EAAE,CAAC;YAEZ,MAAM,kDAAkD,GAEpD,EAAE,CAAC;YAEP,MAAM,mBAAmB,GAAwC,EAAE,CAAC;YAEpE,KAAK,MAAM,gBAAgB,IAAI,iBAAiB,EAAE,CAAC;gBACjD,mBAAmB,CAAC,CAAA,MAAA,gBAAgB,CAAC,IAAI,0CAAE,EAAE,KAAI,EAAE,CAAC,GAAG,gBAAgB,CAAC;gBAExE,IACE,CAAA,MAAA,gBAAgB,CAAC,IAAI,0CAAE,SAAS;oBAChC,CAAA,MAAA,gBAAgB,CAAC,IAAI,0CAAE,SAAS,CAAC,MAAM,IAAG,CAAC,EAC3C,CAAC;oBACD,KAAK,MAAM,gBAAgB,IAAI,gBAAgB,CAAC,IAAK,CAAC,SAAS,EAAE,CAAC;wBAChE,IAAI,gBAAgB,CAAC,mBAAmB,EAAE,CAAC;4BACzC,IACE,CAAC,kDAAkD,CACjD,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CACpC,EACD,CAAC;gCACD,kDAAkD,CAChD,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CACpC,GAAG,EAAE,CAAC;4BACT,CAAC;4BAED,MAAA,kDAAkD,CAChD,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CACpC,0CAAE,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;wBAC/B,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAED,UAAU;YAEV,MAAM,+CAA+C,GAEjD,EAAE,CAAC;YAEP,MAAM,wBAAwB,GAAwC,EAAE,CAAC;YAEzE,KAAK,MAAM,gBAAgB,IAAI,iBAAiB,EAAE,CAAC;gBACjD,wBAAwB,CAAC,CAAA,MAAA,gBAAgB,CAAC,IAAI,0CAAE,EAAE,KAAI,EAAE,CAAC;oBACvD,gBAAgB,CAAC;gBAEnB,IACE,CAAA,MAAA,gBAAgB,CAAC,IAAI,0CAAE,MAAM;oBAC7B,CAAA,MAAA,gBAAgB,CAAC,IAAI,0CAAE,MAAM,CAAC,MAAM,IAAG,CAAC,EACxC,CAAC;oBACD,KAAK,MAAM,aAAa,IAAI,gBAAgB,CAAC,IAAK,CAAC,MAAM,EAAE,CAAC;wBAC1D,IAAI,aAAa,CAAC,gBAAgB,EAAE,CAAC;4BACnC,IACE,CAAC,+CAA+C,CAC9C,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CACpC,EACD,CAAC;gCACD,+CAA+C,CAC7C,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CACpC,GAAG,EAAE,CAAC;4BACT,CAAC;4BAED,MAAA,+CAA+C,CAC7C,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CACpC,0CAAE,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;wBAC5B,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,WAAW,GACf,YAAY,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC;YAEjD,MAAM,CAAC,KAAK,CACV,iBAAiB,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAC9D,CAAC;YAEF,IAAK,aAAsC,CAAC,aAAa,EAAE,CAAC;gBAC1D,YAAY,CAAC,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAC9C,CAAC,WAAwB,EAAE,EAAE;oBAC3B,OAAO,CACL,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE;wBACxB,aAAsC,CAAC,aAAa,CAAC,QAAQ,EAAE,CACjE,CAAC;gBACJ,CAAC,CACF,CAAC;gBACF,MAAM,CAAC,KAAK,CACV,0BAA2B,aAAsC,CAAC,aAAa,EAAE,CAClF,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;gBACrD,MAAM,2BAA2B,EAAE,CAAC;gBAEpC,cAAc,CAAC,cAAc,CAAC;oBAC5B,SAAS,EAAE,OAAO,CAAC,EAAG;oBACtB,SAAS,EAAE,OAAO,CAAC,SAAU;oBAC7B,aAAa,EAAE,aAAa;iBAC7B,CAAC,CAAC;gBACH,OAAO,QAAQ,CAAC;YAClB,CAAC;YAED,+BAA+B;YAC/B,QAAQ,CAAC,qBAAqB,GAAG,WAAW,CAAC,EAAE,CAAC;YAChD,MAAM,CAAC,KAAK,CAAC,6BAA6B,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC;YAE5D,wCAAwC;YACxC,MAAM,oBAAoB,GACxB,YAAY,CAAC,IAAI,CAAC,yBAAyB,CAAC,SAAS,CACnD,CAAC,IAAiB,EAAE,EAAE;gBACpB,OAAO,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC;YAC1D,CAAC,CACF,CAAC;YAEJ,QAAQ,CAAC,iBAAiB;gBACxB,MAAA,YAAY,CAAC,IAAI,CAAC,yBAAyB,CACzC,oBAAoB,GAAG,CAAC,CACzB,0CAAE,EAAE,CAAC;YAER,MAAM,CAAC,KAAK,CAAC,yBAAyB,QAAQ,CAAC,iBAAiB,EAAE,CAAC,CAAC;YAEpE,sCAAsC;YACtC,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,+BAA+B,CACrE,CAAC;YAEF,QAAQ,GAAG,MAAM,wBAAwB,CAAC,kBAAkB,CAAC;gBAC3D,aAAa,EAAE,aAAa;gBAC5B,WAAW,EAAE,WAAW;gBACxB,OAAO,EAAE,OAAO;gBAChB,sBAAsB,EAAE,QAAQ;gBAChC,iBAAiB,EAAE,iBAAiB;aACrC,CAAC,CAAC;YAEH,iDAAiD;YACjD,IACE,OAAO,CAAC,WAAW;gBACnB,iBAAiB,CAAC,iBAAiB,CAAC,OAAO,CAAC,WAAW,CAAC;gBACxD;;;mBAGG;gBACH,CAAC,eAAe,EAChB,CAAC;gBACD,MAAM,oBAAoB,GACxB,MAAM,mBAAmB,CAAC,mBAAmB,CAAC;oBAC5C,OAAO,EAAE,OAAO;oBAChB,WAAW,EAAE,WAAW;oBACxB,oBAAoB,EAAE,QAAQ,CAAC,aAAa,IAAI,IAAI;oBACpD,gBAAgB,EAAE,QAAQ,CAAC,SAAS,IAAI,IAAI;oBAC5C,aAAa,EAAE,uBAAuB,IAAI,SAAS;iBACpD,CAAC,CAAC;gBAEL,kDAAkD;gBAClD,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC;oBAC5B,IAAI,EAAE,iBAAiB;oBACvB,KAAK,EAAE,uBAAuB;oBAC9B,OAAO,EAAE,oBAAoB,CAAC,YAAY;wBACxC,CAAC,CAAC,4BAA4B,oBAAoB,CAAC,cAAc,IAAI,oBAAoB,CAAC,aAAa,kBAAkB,oBAAoB,CAAC,iBAAiB,wBAAwB;wBACvL,CAAC,CAAC,gCAAgC,oBAAoB,CAAC,cAAc,IAAI,oBAAoB,CAAC,aAAa,kBAAkB,oBAAoB,CAAC,iBAAiB,gDAAgD;oBACrN,EAAE,EAAE,aAAa,CAAC,cAAc,EAAE;iBACnC,CAAC,CAAC;gBAEH,IAAI,CAAC,oBAAoB,CAAC,YAAY,EAAE,CAAC;oBACvC,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,+BAA+B,oBAAoB,CAAC,cAAc,IAAI,oBAAoB,CAAC,aAAa,wCAAwC,CACtL,CAAC;oBAEF,mDAAmD;oBACnD,MAAM,YAAY,EAAE,CAAC;oBAErB,MAAM,2BAA2B,EAAE,CAAC;oBAEpC,cAAc,CAAC,cAAc,CAAC;wBAC5B,SAAS,EAAE,OAAO,CAAC,EAAG;wBACtB,SAAS,EAAE,OAAO,CAAC,SAAU;wBAC7B,aAAa,EAAE,aAAa;qBAC7B,CAAC,CAAC;oBAEH,QAAQ,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;oBAC/C,OAAO,QAAQ,CAAC;gBAClB,CAAC;gBAED,iCAAiC;gBACjC,QAAQ,CAAC,aAAa,GAAG,oBAAoB,CAAC,gBAAgB;oBAC5D,CAAC,CAAC,oBAAoB,CAAC,gBAAgB;oBACvC,CAAC,CAAC,SAAS,CAAC;gBACd,QAAQ,CAAC,SAAS,GAAG,oBAAoB,CAAC,eAAe,CAAC;gBAE1D,iDAAiD;gBACjD,IACE,QAAQ,CAAC,SAAS;oBAClB,oBAAoB,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAChD,CAAC;oBACD,QAAQ,CAAC,SAAS,IAAI;2BACL,oBAAoB,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;CAC1E,CAAC;gBACM,CAAC;YACH,CAAC;YAED;;;;;;;eAOG;YACH,IACE,OAAO,CAAC,WAAW,KAAK,WAAW,CAAC,eAAe;gBACnD,iBAAiB,CAAC,IAAI,CAAC,CAAC,gBAAyC,EAAE,EAAE;oBACnE,OAAO,+BAA+B,CAAC,oBAAoB,CACzD,gBAAgB,CACjB,CAAC;gBACJ,CAAC,CAAC,EACF,CAAC;gBACD,MAAM,oBAAoB,GACxB,+BAA+B,CAAC,2BAA2B,CAAC;oBAC1D,aAAa,EAAE,aAAa;oBAC5B,iBAAiB,EAAE,iBAAiB;iBACrC,CAAC,CAAC;gBAEL,IAAI,oBAAoB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACpC,MAAM,eAAe,CAAC,mCAAmC,CAAC;wBACxD,OAAO,EAAE,OAAO;wBAChB,YAAY,EAAE,oBAAoB;wBAClC,SAAS,EAAE,iDAAiD;wBAC5D,aAAa,EAAE,aAAa;wBAC5B,kDAAkD;wBAClD,iBAAiB,EAAE,iBAAiB;qBACrC,CAAC,CAAC;oBAEH,MAAM,YAAY,CAAC,gCAAgC,CAAC;wBAClD,OAAO,EAAE,OAAO;wBAChB,YAAY,EAAE,oBAAoB;wBAClC,SAAS,EAAE,iDAAiD;wBAC5D,aAAa,EAAE,aAAa;wBAC5B,+CAA+C;wBAC/C,iBAAiB,EAAE,iBAAiB;qBACrC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,IAAI,QAAQ,CAAC,aAAa,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;gBACjD,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,oBACnC,QAAQ,CAAC,aACX,EAAE,CACH,CAAC;gBACF,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,kBACnC,QAAQ,CAAC,SACX,EAAE,CACH,CAAC;gBAEF,IAAI,cAAc,GAA+B,SAAS,CAAC;gBAE3D,IAAI,aAAa,IAAK,aAAoC,CAAC,QAAQ,EAAE,CAAC;oBACpE,cAAc,GAAG;wBACf,cAAc,EAAG,aAAoC,CAAC,QAAQ;wBAC9D,aAAa,EAAE,aAAa,CAAC,GAAG;wBAChC,cAAc,EAAE,IAAI;qBACrB,CAAC;oBACF,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,qBAAqB,CAC3D,CAAC;gBACJ,CAAC;gBAED,IACE,aAAa;oBACZ,aAAsC,CAAC,SAAS,EACjD,CAAC;oBACD,cAAc,GAAG;wBACf,cAAc,EAAG,aAAsC,CAAC,SAAS;wBACjE,aAAa,EAAE,aAAa,CAAC,KAAK;wBAClC,cAAc,EAAE,IAAI;qBACrB,CAAC;oBACF,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,sBAAsB,CAC5D,CAAC;gBACJ,CAAC;gBAED,IACE,aAAa;oBACZ,aAAuC,CAAC,gBAAgB;oBACxD,aAAuC,CAAC,eAAe,EACxD,CAAC;oBACD,cAAc,GAAG;wBACf,cAAc,EAAE,IAAI;wBACpB,aAAa,EAAE,aAAa,CAAC,MAAM;wBACnC,cAAc,EAAE;4BACd,eAAe,EACZ,aAAuC,CAAC,eAAe;gCACxD,IAAI;4BACN,YAAY,EAAG,aAAuC;iCACnD,gBAAgB,CAAC,YAAY;4BAChC,cAAc,EAAG,aAAuC;iCACrD,gBAAgB,CAAC,cAAc;yBACnC;qBACF,CAAC;oBACF,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,sBAAsB,CAC5D,CAAC;gBACJ,CAAC;gBAED,IACE,aAAa;oBACZ,aAA0C,CAAC,cAAc,EAC1D,CAAC;oBACD,MAAM,iBAAiB,GACrB,aAAyC,CAAC;oBAC5C,cAAc,GAAG;wBACf,cAAc,EAAE,iBAAiB,CAAC,cAAc;wBAChD,aAAa,EAAE,aAAa,CAAC,SAAS;wBACtC,cAAc,EAAE,IAAI;qBACrB,CAAC;oBAEF,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,2BAA2B,CACjE,CAAC;gBACJ,CAAC;gBAED,MAAM,uBAAuB,GAC3B,mBAAmB,CAAC,QAAQ,CAAC,aAAc,CAAE,CAAC;gBAEhD,MAAM,2BAA2B,GAC/B,MAAM,yBAAyB,CAAC,2BAA2B,CAAC;oBAC1D,OAAO,EAAE,OAAO;oBAChB,SAAS,EAAE,QAAQ,CAAC,SAAS;oBAC7B,aAAa,EAAE,aAAa;oBAC5B,gBAAgB,EAAE,uBAAuB;oBACzC,KAAK,EAAE;wBACL,cAAc,EAAE,cAAc;qBAC/B;iBACF,CAAC,CAAC;gBAEL,IAAI,2BAA2B,EAAE,CAAC;oBAChC,MAAM,iBAAiB,GAAkB,MAAM,oBAAoB,CACjE,CAAA,MAAA,uBAAuB,CAAC,IAAI,0CAAE,eAAe;wBAC3C,2BAA2B,CAAC,eAAe,CAC9C,CAAC;oBAEF,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC;wBAC5B,IAAI,EAAE,wBAAwB;wBAC9B,KAAK,EAAE,wBAAwB;wBAC/B,OAAO,EAAE,iBAAiB;4BACxB,CAAC,CAAC,8BAA8B,iBAAiB,uBAAuB,CAAA,MAAA,uBAAuB,CAAC,IAAI,0CAAE,IAAI,KAAI,kBAAkB,YAAY;4BAC5I,CAAC,CAAC,4CAA4C,CAAA,MAAA,uBAAuB,CAAC,IAAI,0CAAE,IAAI,KAAI,kBAAkB,YAAY;wBACpH,iBAAiB,EAAE,MAAA,uBAAuB,CAAC,IAAI,0CAAE,EAAE;wBACnD,EAAE,EAAE,aAAa,CAAC,cAAc,EAAE;qBACnC,CAAC,CAAC;gBACL,CAAC;gBAED;;;;;;;;mBAQG;gBACH,MAAM,4BAA4B,GAChC,MAAM,6BAA6B,CAAC,+BAA+B,CAAC;oBAClE,SAAS,EAAE,OAAO,CAAC,SAAU;oBAC7B,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;iBAC5C,CAAC,CAAC;gBAEL;;;;;;mBAMG;gBACH,MAAM,cAAc,GAClB,MAAM,qBAAqB,CAAC,OAAO,CAAC;oBAClC,OAAO,EAAE,OAAO;oBAChB,aAAa,EAAE,aAAa;oBAC5B,iBAAiB,EAAE,iBAAiB;oBACpC,SAAS,EAAE,SAAS;iBACrB,CAAC,CAAC;gBAEL,MAAM,eAAe,CAAC,gDAAgD,CAAC;oBACrE,OAAO,EAAE,OAAO;oBAChB,SAAS,EAAE,QAAQ,CAAC,SAAS;oBAC7B,aAAa,EAAE,aAAa;oBAC5B,kDAAkD;oBAClD,gBAAgB,EAAE,uBAAuB;oBACzC,iBAAiB,EAAE,iBAAiB;oBACpC,cAAc,EAAE,cAAc;oBAC9B,KAAK,EAAE;wBACL,cAAc,EAAE,cAAc;qBAC/B;oBACD,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;oBAC3C,4BAA4B;oBAC5B;;;;;;uBAMG;oBACH,8BAA8B,EAC5B,OAAO,CAAC,WAAW,KAAK,WAAW,CAAC,eAAe;iBACtD,CAAC,CAAC;gBAEH,MAAM,YAAY,CAAC,6CAA6C,CAAC;oBAC/D,OAAO,EAAE,OAAO;oBAChB,SAAS,EAAE,QAAQ,CAAC,SAAS;oBAC7B,aAAa,EAAE,aAAa;oBAC5B,+CAA+C;oBAC/C,gBAAgB,EAAE,wBAAwB,CAAC,QAAQ,CAAC,aAAc,CAAE;oBACpE,iBAAiB,EAAE,iBAAiB;oBACpC,cAAc,EAAE,cAAc;oBAC9B,KAAK,EAAE;wBACL,cAAc,EAAE,cAAc;qBAC/B;oBACD,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;oBAC3C,4BAA4B;oBAC5B;;;;;uBAKG;oBACH,8BAA8B,EAC5B,OAAO,CAAC,WAAW,KAAK,WAAW,CAAC,eAAe;iBACtD,CAAC,CAAC;YACL,CAAC;iBAAM,IACL,CAAC,QAAQ,CAAC,aAAa;gBACvB;;;;mBAIG;gBACH,CAAC,eAAe;gBAChB,YAAY,CAAC,IAAI,CAAC,sBAAsB;gBACxC,CAAA,MAAA,OAAO,CAAC,sBAAsB,0CAAE,QAAQ,EAAE;oBACxC,YAAY,CAAC,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,EACrD,CAAC;gBACD,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,+CAA+C,CACrF,CAAC;gBAEF,MAAM,eAAe,CAAC,oCAAoC,CAAC;oBACzD,SAAS,EAAE,OAAO,CAAC,EAAG;oBACtB,kDAAkD;oBAClD,SAAS,EAAE,uDAAuD;oBAClE,gBAAgB,EAAE,IAAI,EAAE,mBAAmB;oBAC3C,aAAa,EAAE,aAAa;oBAC5B,iBAAiB,EAAE,iBAAiB;oBACpC;;;;;;;;uBAQG;oBACH,8BAA8B,EAC5B,OAAO,CAAC,WAAW,KAAK,WAAW,CAAC,eAAe;iBACtD,CAAC,CAAC;gBAEH,MAAM,YAAY,CAAC,iCAAiC,CAAC;oBACnD,SAAS,EAAE,OAAO,CAAC,EAAG;oBACtB,+CAA+C;oBAC/C,SAAS,EAAE,uDAAuD;oBAClE,gBAAgB,EAAE,IAAI,EAAE,mBAAmB;oBAC3C,aAAa,EAAE,aAAa;oBAC5B,iBAAiB,EAAE,iBAAiB;oBACpC,8BAA8B,EAC5B,OAAO,CAAC,WAAW,KAAK,WAAW,CAAC,eAAe;iBACtD,CAAC,CAAC;gBAEH,oCAAoC;gBACpC,MAAM,yBAAyB,GAC7B,MAAM,4BAA4B,CAAC,SAAS,CAAC;oBAC3C,KAAK,EAAE;wBACL,SAAS,EAAE,OAAO,CAAC,EAAG;wBACtB,SAAS,EAAE,OAAO,CAAC,SAAU;qBAC9B;oBACD,MAAM,EAAE;wBACN,GAAG,EAAE,IAAI;wBACT,eAAe,EAAE,IAAI;qBACtB;oBACD,IAAI,EAAE;wBACJ,QAAQ,EAAE,SAAS,CAAC,UAAU;qBAC/B;oBACD,KAAK,EAAE;wBACL,MAAM,EAAE,IAAI;qBACb;iBACF,CAAC,CAAC;gBAEL,IACE,yBAAyB;oBACzB,yBAAyB,CAAC,eAAe;oBACzC,yBAAyB,CAAC,eAAe,CAAC,QAAQ,EAAE;wBAClD,YAAY,CAAC,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,EACrD,CAAC;oBACD;;;uBAGG;gBACL,CAAC;qBAAM,CAAC;oBACN,8DAA8D;oBAC9D,MAAM,qBAAqB,GACzB,IAAI,qBAAqB,EAAE,CAAC;oBAC9B,qBAAqB,CAAC,SAAS,GAAG,OAAO,CAAC,EAAG,CAAC;oBAC9C,qBAAqB,CAAC,eAAe;wBACnC,YAAY,CAAC,IAAI,CAAC,sBAAuB,CAAC;oBAC5C,qBAAqB,CAAC,SAAS,GAAG,OAAO,CAAC,SAAU,CAAC;oBACrD,qBAAqB,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC,qDAAqD;oBACnG,qBAAqB,CAAC,eAAe,GAAG,IAAI,CAAC,KAAK,CAChD,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,CAC9B,CAAC;oBACF,qBAAqB,CAAC,SAAS;wBAC7B,wDAAwD,CAAC;oBAE3D;;;;;;uBAMG;oBACH,IAAI,uBAAuB,GAAY,IAAI,CAAC;oBAE5C;;;;;;;;;;;uBAWG;oBACH,MAAM,qBAAqB,GACzB,MAAM,+BAA+B,CAAC,iBAAiB,CAAC;wBACtD,SAAS,EAAE,OAAO,CAAC,SAAU;wBAC7B,EAAE,EAAE,YAAY,CAAC,IAAI,CAAC,sBAAsB;wBAC5C,OAAO,EAAE,oBAAoB;qBAC9B,CAAC,CAAC;oBAEL,IAAI,CAAC,qBAAqB,EAAE,CAAC;wBAC3B,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,iCAAiC,YAAY,CAAC,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,8BAA8B,MAAA,OAAO,CAAC,SAAS,0CAAE,QAAQ,EAAE,wGAAwG,CAC7R,CAAC;wBACF,uBAAuB,GAAG,KAAK,CAAC;oBAClC,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC;4BACH,MAAM,4BAA4B,CAAC,MAAM,CAAC;gCACxC,IAAI,EAAE,qBAAqB;gCAC3B,KAAK,EAAE;oCACL,MAAM,EAAE,IAAI;iCACb;6BACF,CAAC,CAAC;4BACH,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,uCAAuC,CAC7E,CAAC;wBACJ,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACb;;;;;;+BAMG;4BACH,IACE,GAAG,YAAY,gBAAgB;gCAC/B,GAAG,CAAC,OAAO,KAAK,6CAA6C,EAC7D,CAAC;gCACD,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,6FAA6F,CACnI,CAAC;4BACJ,CAAC;iCAAM,IACL,GAAG,YAAY,eAAe;gCAC9B,GAAG,CAAC,OAAO,KAAK,0CAA0C,EAC1D,CAAC;gCACD;;;;;;mCAMG;gCACH,MAAM,CAAC,KAAK,CACV,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,EAAE,wIAAwI,CAC9K,CAAC;gCACF,uBAAuB,GAAG,KAAK,CAAC;4BAClC,CAAC;iCAAM,CAAC;gCACN,MAAM,GAAG,CAAC;4BACZ,CAAC;wBACH,CAAC;oBACH,CAAC;oBAED,IAAI,uBAAuB,EAAE,CAAC;wBAC5B,MAAM,iBAAiB,GAAkB,MAAM,oBAAoB,CACjE,YAAY,CAAC,IAAI,CAAC,sBAAsB,CACzC,CAAC;wBAEF,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC;4BAC5B,IAAI,EAAE,wBAAwB;4BAC9B,KAAK,EAAE,yBAAyB;4BAChC,OAAO,EAAE,iBAAiB;gCACxB,CAAC,CAAC,+BAA+B,iBAAiB,4CAA4C;gCAC9F,CAAC,CAAC,uFAAuF;4BAC3F,EAAE,EAAE,aAAa,CAAC,cAAc,EAAE;yBACnC,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,YAAY,EAAE,CAAC;YAErB,MAAM,2BAA2B,EAAE,CAAC;YAEpC,cAAc,CAAC,cAAc,CAAC;gBAC5B,SAAS,EAAE,OAAO,CAAC,EAAG;gBACtB,SAAS,EAAE,OAAO,CAAC,SAAU;gBAC7B,aAAa,EAAE,aAAa;aAC7B,CAAC,CAAC;YAEH,OAAO,QAAQ,CAAC;QAClB,CAAC;gBAAS,CAAC;YACT,MAAM,YAAY,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAGoB,AAAb,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,KAcxC;;QACC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,GACpE,KAAK,CAAC;QAER;;;WAGG;QACH,MAAM,aAAa,GACjB,KAAK,CAAC,aAAa;YACnB,CAAC,MAAM,mBAAmB,CAAC,MAAM,CAAC;gBAChC,KAAK,EAAE;oBACL,SAAS,EAAE,OAAO,CAAC,EAAG;iBACvB;gBACD,MAAM,EAAE;oBACN,OAAO,EAAE,IAAI;oBACb,SAAS,EAAE,IAAI;oBACf,iBAAiB,EAAE,IAAI;oBACvB,KAAK,EAAE;wBACL,gBAAgB,EAAE,IAAI;wBACtB,IAAI,EAAE,IAAI;qBACX;iBACF;gBACD,KAAK,EAAE,iBAAiB;gBACxB,IAAI,EAAE,CAAC;gBACP,KAAK,EAAE;oBACL,MAAM,EAAE,IAAI;iBACb;aACF,CAAC,CAAC,CAAC;QAEN,uDAAuD;QACvD,MAAM,YAAY,GAAwB,aAAa,CAAC,MAAM,CAC5D,CAAC,EAAgB,EAAE,EAAE;;YACnB,OAAO,CACL,EAAE,CAAC,SAAS;gBACZ,CAAA,MAAA,EAAE,CAAC,KAAK,0CAAE,gBAAgB,MAAK,qBAAqB,CAAC,SAAS,CAC/D,CAAC;QACJ,CAAC,CACF,CAAC;QAEF,mEAAmE;QACnE,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,MAAM,CAAC,KAAK,CACV,GAAG,MAAA,OAAO,CAAC,EAAE,0CAAE,QAAQ,EAAE,uDAAuD,CACjF,CAAC;YACF,OAAO;gBACL,YAAY,EAAE,IAAI;gBAClB,cAAc,EAAE,CAAC;gBACjB,aAAa,EAAE,CAAC;gBAChB,iBAAiB,EAAE,CAAC;gBACpB,gBAAgB,EAAE,oBAAoB;gBACtC,eAAe,EAAE,gBAAgB;gBACjC,gBAAgB,EAAE,EAAE;aACrB,CAAC;QACJ,CAAC;QAED,yCAAyC;QACzC,MAAM,aAAa,GACjB,MAAA,OAAO,CAAC,qBAAqB,mCAAI,YAAY,CAAC,MAAM,CAAC;QACvD,4DAA4D;QAC5D,MAAM,kBAAkB,GAAW,IAAI,CAAC,GAAG,CACzC,aAAa,EACb,YAAY,CAAC,MAAM,CACpB,CAAC;QAEF;;;;WAIG;QACH,MAAM,kBAAkB,GAGpB,IAAI,GAAG,EAAE,CAAC;QAEd,MAAM,MAAM,GAAW,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC;QAEjD,KAAK,MAAM,YAAY,IAAI,YAAY,EAAE,CAAC;YACxC,MAAM,aAAa,GACjB,MAAA,YAAY,CAAC,iBAAiB,0CAAG,MAAM,CAAC,CAAC;YAE3C,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,uDAAuD;gBACvD,MAAM,CAAC,KAAK,CACV,GAAG,MAAA,OAAO,CAAC,EAAE,0CAAE,QAAQ,EAAE,YAAY,MAAA,YAAY,CAAC,OAAO,0CAAE,QAAQ,EAAE,6BAA6B,MAAM,aAAa,CACtH,CAAC;gBACF,SAAS;YACX,CAAC;YAED,kDAAkD;YAClD,MAAM,YAAY,GAA2B;gBAC3C,SAAS,EAAE,OAAO,CAAC,EAAG;gBACtB,aAAa,EAAE,SAAS;gBACxB,SAAS,EAAE,IAAI;aAChB,CAAC;YAEF,MAAM,qBAAqB,GAA6B;gBACtD,WAAW,EAAE,aAAa,CAAC,cAAc,EAAE;gBAC3C,eAAe,EAAE,EAAE;gBACnB,MAAM,EAAE,EAAE;aACX,CAAC;YAEF,MAAM,iBAAiB,GACrB,MAAM,wBAAwB,CAAC,kBAAkB,CAAC;gBAChD,aAAa,EAAE,aAA8B;gBAC7C,WAAW,EAAE,WAAW;gBACxB,OAAO,EAAE,OAAO;gBAChB,sBAAsB,EAAE,YAAY;gBACpC,iBAAiB,EAAE,qBAAqB;aACzC,CAAC,CAAC;YAEL,oBAAoB;YACpB,MAAM,WAAW,GAAW,iBAAiB,CAAC,aAAa,IAAI,MAAM,CAAC;YACtE,MAAM,QAAQ,GAEE,kBAAkB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAEpD,wCAAwC;YACxC,MAAM,SAAS,GAAW,CAAA,MAAA,YAAY,CAAC,KAAK,0CAAE,IAAI,KAAI,eAAe,CAAC;YAEtE,IAAI,QAAQ,EAAE,CAAC;gBACb,QAAQ,CAAC,KAAK,IAAI,CAAC,CAAC;gBACpB,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACtC,CAAC;iBAAM,CAAC;gBACN,kBAAkB,CAAC,GAAG,CAAC,WAAW,EAAE;oBAClC,KAAK,EAAE,CAAC;oBACR,SAAS,EAAE,iBAAiB,CAAC,SAAS;oBACtC,UAAU,EAAE,CAAC,SAAS,CAAC;iBACxB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,4CAA4C;QAC5C,IAAI,QAAQ,GAAW,CAAC,CAAC;QACzB,IAAI,iBAAiB,GAAkB,IAAI,CAAC;QAC5C,IAAI,gBAAgB,GAAkB,IAAI,CAAC;QAC3C,IAAI,iBAAiB,GAAkB,EAAE,CAAC;QAE1C,KAAK,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,kBAAkB,EAAE,CAAC;YACpD,IAAI,IAAI,CAAC,KAAK,GAAG,QAAQ,EAAE,CAAC;gBAC1B,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;gBACtB,iBAAiB,GAAG,UAAU,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC;gBAC9D,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC;gBAClC,iBAAiB,GAAG,IAAI,CAAC,UAAU,CAAC;YACtC,CAAC;QACH,CAAC;QAED,oEAAoE;QACpE,MAAM,YAAY,GAAY,QAAQ,IAAI,kBAAkB,CAAC;QAE7D,MAAM,CAAC,KAAK,CACV,GAAG,MAAA,OAAO,CAAC,EAAE,0CAAE,QAAQ,EAAE,6BAA6B,QAAQ,IAAI,kBAAkB,8BAA8B,iBAAiB,IAAI,MAAM,gBAAgB,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,GAAG,CACzM,CAAC;QAEF,OAAO;YACL,YAAY;YACZ,cAAc,EAAE,QAAQ;YACxB,aAAa,EAAE,kBAAkB;YACjC,iBAAiB,EAAE,YAAY,CAAC,MAAM;YACtC,gBAAgB,EAAE,YAAY,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI;YACzD,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI;YACvD,gBAAgB,EAAE,YAAY,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE;SACxD,CAAC;IACJ,CAAC;CACF;AAjwCqB;IADnB,WAAW,EAAE;;;;gDA6kCb;AAGoB;IADpB,WAAW,EAAE;;;;oDAkLb"}
@@ -11,13 +11,15 @@ import MonitorStatusTimeline from "../../../Models/DatabaseModels/MonitorStatusT
11
11
  import SortOrder from "../../../Types/BaseDatabase/SortOrder";
12
12
  import BadDataException from "../../../Types/Exception/BadDataException";
13
13
  import MonitorStatusTimelineService, { MONITOR_STATUS_SAME_AS_PREVIOUS_ERROR_MESSAGE, MONITOR_STATUS_TIMELINE_LOCK_ERROR_MESSAGE, } from "../../Services/MonitorStatusTimelineService";
14
+ import MonitorStatusService from "../../Services/MonitorStatusService";
14
15
  import ServerException from "../../../Types/Exception/ServerException";
16
+ import ProjectScopedReferenceValidator from "../Database/ProjectScopedReferenceValidator";
15
17
  import logger from "../Logger";
16
18
  import CaptureSpan from "../Telemetry/CaptureSpan";
17
19
  export default class MonitorStatusTimelineUtil {
18
20
  static async updateMonitorStatusTimeline(input) {
19
21
  // criteria filters are met, now process the actions.
20
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
22
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w;
21
23
  /*
22
24
  * Steady-state fast-path: the criteria's target status is already the
23
25
  * monitor's current status (the standard "online criteria matched on a
@@ -81,6 +83,31 @@ export default class MonitorStatusTimelineUtil {
81
83
  if (!monitorStatusId) {
82
84
  throw new BadDataException("Monitor status is not defined.");
83
85
  }
86
+ /*
87
+ * The criteria can name a status that no longer exists, or that belongs to
88
+ * another project: monitorSteps is a JSON blob with no foreign key behind
89
+ * it, so deleting a monitor status does not rewrite the criteria that
90
+ * point at it, and before issue #3039 was fixed the API accepted any uuid
91
+ * here in the first place. Writing it anyway is what raised
92
+ * insert or update on table "MonitorStatusTimeline" violates foreign key
93
+ * constraint
94
+ * inside the probe/telemetry worker, failing the whole ingest run for this
95
+ * monitor - no status change, and no monitor log or payload persisted
96
+ * either, because those come after this. Skip the status change and log,
97
+ * the same way MonitorIncident and MonitorAlert handle an unusable
98
+ * severity. New writes are rejected up front by
99
+ * MonitorStepsProjectValidator, so this only ever fires for monitors saved
100
+ * before that guard existed.
101
+ */
102
+ const isMonitorStatusUsable = await ProjectScopedReferenceValidator.isUsableInProject({
103
+ projectId: input.monitor.projectId,
104
+ id: monitorStatusId,
105
+ service: MonitorStatusService,
106
+ });
107
+ if (!isMonitorStatusUsable) {
108
+ logger.error(`${(_s = input.monitor.id) === null || _s === void 0 ? void 0 : _s.toString()} - Criteria "${(_t = input.criteriaInstance.data) === null || _t === void 0 ? void 0 : _t.name}" changes the monitor status to ${monitorStatusId.toString()}, which does not exist in project ${(_u = input.monitor.projectId) === null || _u === void 0 ? void 0 : _u.toString()}. Skipping the status change. Please pick a monitor status that exists in this project.`, monitorLogAttributes);
109
+ return null;
110
+ }
84
111
  //change monitor status.
85
112
  // get last status of this monitor.
86
113
  // get last monitor status timeline.
@@ -120,7 +147,7 @@ export default class MonitorStatusTimelineUtil {
120
147
  */
121
148
  if (err instanceof BadDataException &&
122
149
  err.message === MONITOR_STATUS_SAME_AS_PREVIOUS_ERROR_MESSAGE) {
123
- logger.debug(`${(_s = input.monitor.id) === null || _s === void 0 ? void 0 : _s.toString()} - Monitor status already equals desired status; skipping duplicate status timeline (concurrent race).`);
150
+ logger.debug(`${(_v = input.monitor.id) === null || _v === void 0 ? void 0 : _v.toString()} - Monitor status already equals desired status; skipping duplicate status timeline (concurrent race).`);
124
151
  return null;
125
152
  }
126
153
  /*
@@ -136,7 +163,7 @@ export default class MonitorStatusTimelineUtil {
136
163
  */
137
164
  if (err instanceof ServerException &&
138
165
  err.message === MONITOR_STATUS_TIMELINE_LOCK_ERROR_MESSAGE) {
139
- logger.error(`${(_t = input.monitor.id) === null || _t === void 0 ? void 0 : _t.toString()} - Could not acquire the monitor status timeline lock; skipping this status change. It will be retried on the next probe result.`);
166
+ logger.error(`${(_w = input.monitor.id) === null || _w === void 0 ? void 0 : _w.toString()} - Could not acquire the monitor status timeline lock; skipping this status change. It will be retried on the next probe result.`);
140
167
  return null;
141
168
  }
142
169
  throw err;
@@ -1 +1 @@
1
- {"version":3,"file":"MonitorStatusTimeline.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorStatusTimeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MonitorStatusTimeline.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorStatusTimeline.ts"],"names":[],"mappings":"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"}