@meyicloud/meyi-insight-server 1.0.7 → 1.1.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 (89) hide show
  1. package/dist/constants/incidentCategories.d.ts +38 -9
  2. package/dist/constants/incidentCategories.d.ts.map +1 -1
  3. package/dist/constants/incidentCategories.js +70 -10
  4. package/dist/constants/incidentCategories.js.map +1 -1
  5. package/dist/controllers/incident.controller.d.ts.map +1 -1
  6. package/dist/controllers/incident.controller.js +23 -3
  7. package/dist/controllers/incident.controller.js.map +1 -1
  8. package/dist/database/schema.d.ts +257 -18
  9. package/dist/database/schema.d.ts.map +1 -1
  10. package/dist/database/schema.js +36 -3
  11. package/dist/database/schema.js.map +1 -1
  12. package/dist/features/incident-priority/index.d.ts +3 -0
  13. package/dist/features/incident-priority/index.d.ts.map +1 -0
  14. package/dist/features/incident-priority/index.js +3 -0
  15. package/dist/features/incident-priority/index.js.map +1 -0
  16. package/dist/features/incident-priority/priority.rules.d.ts +15 -0
  17. package/dist/features/incident-priority/priority.rules.d.ts.map +1 -0
  18. package/dist/features/incident-priority/priority.rules.js +38 -0
  19. package/dist/features/incident-priority/priority.rules.js.map +1 -0
  20. package/dist/features/incident-priority/priority.types.d.ts +13 -0
  21. package/dist/features/incident-priority/priority.types.d.ts.map +1 -0
  22. package/dist/features/incident-priority/priority.types.js +7 -0
  23. package/dist/features/incident-priority/priority.types.js.map +1 -0
  24. package/dist/features/sla/domain/sla.defaults.d.ts +12 -0
  25. package/dist/features/sla/domain/sla.defaults.d.ts.map +1 -0
  26. package/dist/features/sla/domain/sla.defaults.js +30 -0
  27. package/dist/features/sla/domain/sla.defaults.js.map +1 -0
  28. package/dist/features/sla/domain/sla.evaluator.d.ts +22 -2
  29. package/dist/features/sla/domain/sla.evaluator.d.ts.map +1 -1
  30. package/dist/features/sla/domain/sla.evaluator.js +26 -3
  31. package/dist/features/sla/domain/sla.evaluator.js.map +1 -1
  32. package/dist/features/sla/domain/sla.resolver.d.ts +42 -10
  33. package/dist/features/sla/domain/sla.resolver.d.ts.map +1 -1
  34. package/dist/features/sla/domain/sla.resolver.js +109 -15
  35. package/dist/features/sla/domain/sla.resolver.js.map +1 -1
  36. package/dist/features/sla/domain/sla.types.d.ts +54 -8
  37. package/dist/features/sla/domain/sla.types.d.ts.map +1 -1
  38. package/dist/features/sla/domain/sla.types.js +1 -0
  39. package/dist/features/sla/domain/sla.types.js.map +1 -1
  40. package/dist/features/sla/index.d.ts +2 -1
  41. package/dist/features/sla/index.d.ts.map +1 -1
  42. package/dist/features/sla/index.js +1 -0
  43. package/dist/features/sla/index.js.map +1 -1
  44. package/dist/features/sla/sla-policy.model.d.ts +30 -10
  45. package/dist/features/sla/sla-policy.model.d.ts.map +1 -1
  46. package/dist/features/sla/sla-policy.model.js +64 -28
  47. package/dist/features/sla/sla-policy.model.js.map +1 -1
  48. package/dist/features/sla/sla-policy.service.d.ts +16 -13
  49. package/dist/features/sla/sla-policy.service.d.ts.map +1 -1
  50. package/dist/features/sla/sla-policy.service.js +65 -23
  51. package/dist/features/sla/sla-policy.service.js.map +1 -1
  52. package/dist/features/sla/sla.schema.d.ts +84 -2
  53. package/dist/features/sla/sla.schema.d.ts.map +1 -1
  54. package/dist/features/sla/sla.schema.js +25 -7
  55. package/dist/features/sla/sla.schema.js.map +1 -1
  56. package/dist/index.d.ts +3 -1
  57. package/dist/index.d.ts.map +1 -1
  58. package/dist/index.js +2 -1
  59. package/dist/index.js.map +1 -1
  60. package/dist/migrations/run.d.ts.map +1 -1
  61. package/dist/migrations/run.js +212 -5
  62. package/dist/migrations/run.js.map +1 -1
  63. package/dist/models/incident.model.d.ts +47 -2
  64. package/dist/models/incident.model.d.ts.map +1 -1
  65. package/dist/models/incident.model.js +127 -21
  66. package/dist/models/incident.model.js.map +1 -1
  67. package/dist/server.d.ts +2 -0
  68. package/dist/server.d.ts.map +1 -1
  69. package/dist/server.js +2 -1
  70. package/dist/server.js.map +1 -1
  71. package/dist/service.d.ts +28 -3
  72. package/dist/service.d.ts.map +1 -1
  73. package/dist/service.js +14 -2
  74. package/dist/service.js.map +1 -1
  75. package/dist/services/alert.service.d.ts.map +1 -1
  76. package/dist/services/alert.service.js +2 -0
  77. package/dist/services/alert.service.js.map +1 -1
  78. package/dist/services/incident.service.d.ts +50 -2
  79. package/dist/services/incident.service.d.ts.map +1 -1
  80. package/dist/services/incident.service.js +113 -17
  81. package/dist/services/incident.service.js.map +1 -1
  82. package/dist/services/retention.service.d.ts +63 -0
  83. package/dist/services/retention.service.d.ts.map +1 -0
  84. package/dist/services/retention.service.js +264 -0
  85. package/dist/services/retention.service.js.map +1 -0
  86. package/dist/services/workflow.service.d.ts.map +1 -1
  87. package/dist/services/workflow.service.js +2 -0
  88. package/dist/services/workflow.service.js.map +1 -1
  89. package/package.json +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"alert.service.js","sourceRoot":"","sources":["../../src/services/alert.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"alert.service.js","sourceRoot":"","sources":["../../src/services/alert.service.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,11 @@
1
- import type { IncidentModel } from "../models/incident.model.js";
1
+ import { type IncidentModel, type IncidentSavingsDetail } from "../models/incident.model.js";
2
2
  import type { IncidentCommentModel } from "../models/incident-comment.model.js";
3
+ export declare const DUPLICATE_OPEN_INCIDENT = "Another open incident already tracks this finding";
3
4
  import type { SettingsModel } from "../models/settings.model.js";
4
5
  import type { IncidentEventModel } from "../models/incident-event.model.js";
6
+ import { type IncidentGroup, type IncidentSort } from "../constants/incidentCategories.js";
5
7
  import type { ConnectorEnvironment } from "../features/connector-environment/environment.types.js";
8
+ import { type IncidentPriority } from "../features/incident-priority/priority.types.js";
6
9
  import type { SlaPolicyProvider } from "../features/sla/domain/sla.types.js";
7
10
  export interface CreateIncidentInput {
8
11
  name: string;
@@ -10,7 +13,7 @@ export interface CreateIncidentInput {
10
13
  resourceName: string;
11
14
  resourceType: string;
12
15
  downMessage?: string | null;
13
- tags?: Record<string, string>;
16
+ tags?: Record<string, unknown>;
14
17
  downTime?: string;
15
18
  alertId?: string | null;
16
19
  assigneeIds?: string[];
@@ -19,7 +22,32 @@ export interface CreateIncidentInput {
19
22
  description?: string | null;
20
23
  accountId?: string | null;
21
24
  accountName?: string | null;
25
+ /** Explicit priority (P1..P4). When absent it is derived from tags, then severity. */
26
+ priority?: string | null;
27
+ /** Alert severity the incident was raised from; used to derive the priority. */
28
+ severity?: string | null;
29
+ /** Stable producer key used for dedup (see upsertByExternalRef). */
30
+ externalRef?: string | null;
31
+ /** Estimated monthly savings in USD (exact, else the lower bound). Non-finite/negative = null. */
32
+ savingsMonthly?: number | null;
33
+ /** Savings range for display. */
34
+ savingsDetail?: IncidentSavingsDetail | null;
22
35
  }
36
+ /** Input for upsertByExternalRef: tenant, source and externalRef are required. */
37
+ export type UpsertIncidentByExternalRefInput = CreateIncidentInput & {
38
+ tenantId: string;
39
+ source: string;
40
+ externalRef: string;
41
+ };
42
+ /** Fields every incident DTO (list + detail) adds on top of the stored row. */
43
+ export interface IncidentDtoFields {
44
+ group: IncidentGroup;
45
+ externalRef: string | null;
46
+ savingsMonthly: number | null;
47
+ savingsDetail: IncidentSavingsDetail | null;
48
+ }
49
+ /** Adds the derived group and converts numeric savings (a string from pg) to a number. */
50
+ export declare function toIncidentDto<T extends Record<string, any>>(row: T): T & IncidentDtoFields;
23
51
  export declare class IncidentService {
24
52
  private model;
25
53
  private commentModel;
@@ -27,6 +55,8 @@ export declare class IncidentService {
27
55
  private eventModel?;
28
56
  private slaProvider?;
29
57
  constructor(model: IncidentModel, commentModel: IncidentCommentModel, settingsModel: SettingsModel, eventModel?: IncidentEventModel, slaProvider?: SlaPolicyProvider);
58
+ /** Validates an explicit priority, and keeps older clients working that only send tags.priority. */
59
+ private withNormalizedPriority;
30
60
  private slaResolver;
31
61
  private recordEvent;
32
62
  private attachComments;
@@ -40,13 +70,21 @@ export declare class IncidentService {
40
70
  sourceTypes?: string[];
41
71
  accountNames?: string[];
42
72
  environment?: ConnectorEnvironment;
73
+ priorities?: IncidentPriority[];
43
74
  incidentType?: string;
44
75
  tenantId?: string;
76
+ /** created_desc | priority_savings. Absent: cost = priority_savings, else created_desc. */
77
+ sort?: IncidentSort | string;
45
78
  }): Promise<{
79
+ sort: "created_desc" | "priority_savings";
46
80
  incidents: {
47
81
  sla: import("../features/sla/domain/sla.types.js").SlaEvaluation;
48
82
  id: string;
49
83
  comments: any[];
84
+ group: IncidentGroup;
85
+ externalRef: string | null;
86
+ savingsMonthly: number | null;
87
+ savingsDetail: IncidentSavingsDetail | null;
50
88
  }[];
51
89
  total: number;
52
90
  page: number;
@@ -99,6 +137,16 @@ export declare class IncidentService {
99
137
  }>;
100
138
  getById(id: string, tenantId?: string): Promise<any>;
101
139
  create(input: CreateIncidentInput): Promise<any>;
140
+ /**
141
+ * Creates the incident, or refreshes the OPEN incident with the same (tenant, source, externalRef).
142
+ * Race-safe: the partial unique index rejects a concurrent duplicate insert (23505), which is retried
143
+ * as an update. A resolved/closed incident is never touched; a new one is created instead.
144
+ */
145
+ upsertByExternalRef(input: UpsertIncidentByExternalRefInput): Promise<{
146
+ incident: any;
147
+ created: boolean;
148
+ }>;
149
+ private loadDto;
102
150
  triggerAnalysis(id: string, options?: {
103
151
  prompt?: string;
104
152
  tenantId?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"incident.service.d.ts","sourceRoot":"","sources":["../../src/services/incident.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"incident.service.d.ts","sourceRoot":"","sources":["../../src/services/incident.service.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,22 @@
1
- import { resolveSourcesForIncidentType } from "../constants/incidentCategories.js";
2
- import { evaluateIncidentRow, isBreachingNow } from "../features/sla/domain/sla.evaluator.js";
1
+ import { EXTERNAL_REF_UNIQUE_INDEX, isUniqueViolation, } from "../models/incident.model.js";
2
+ export const DUPLICATE_OPEN_INCIDENT = "Another open incident already tracks this finding";
3
+ import { incidentGroupForSource, resolveIncidentSort, resolveSourceFilterForIncidentType, } from "../constants/incidentCategories.js";
4
+ import { DEFAULT_INCIDENT_PRIORITY } from "../features/incident-priority/priority.types.js";
5
+ import { derivePriority, normalizePriority } from "../features/incident-priority/priority.rules.js";
6
+ import { evaluateIncidentRow, isBreachingNow, isSlaTracked } from "../features/sla/domain/sla.evaluator.js";
3
7
  import { createSlaResolver } from "../features/sla/domain/sla.resolver.js";
4
- const priorityFor = (r) => (r.status === "in_progress" ? "P1" : r.status === "resolved" ? "P3" : "P2");
8
+ /** Adds the derived group and converts numeric savings (a string from pg) to a number. */
9
+ export function toIncidentDto(row) {
10
+ const raw = row.savingsMonthly;
11
+ const n = raw === null || raw === undefined || raw === "" ? null : Number(raw);
12
+ return {
13
+ ...row,
14
+ group: incidentGroupForSource(row.source),
15
+ externalRef: row.externalRef ?? null,
16
+ savingsMonthly: n !== null && Number.isFinite(n) ? n : null,
17
+ savingsDetail: row.savingsDetail ?? null,
18
+ };
19
+ }
5
20
  export class IncidentService {
6
21
  model;
7
22
  commentModel;
@@ -15,8 +30,19 @@ export class IncidentService {
15
30
  this.eventModel = eventModel;
16
31
  this.slaProvider = slaProvider;
17
32
  }
33
+ /** Validates an explicit priority, and keeps older clients working that only send tags.priority. */
34
+ withNormalizedPriority(data) {
35
+ if ("priority" in data) {
36
+ const priority = normalizePriority(data.priority);
37
+ if (!priority)
38
+ throw new Error("Invalid priority");
39
+ return { ...data, priority };
40
+ }
41
+ const fromTag = normalizePriority(data.tags?.priority);
42
+ return fromTag ? { ...data, priority: fromTag } : data;
43
+ }
18
44
  async slaResolver(tenantId) {
19
- return this.slaProvider ? this.slaProvider.loadResolver(tenantId) : createSlaResolver([]);
45
+ return this.slaProvider ? this.slaProvider.loadResolver(tenantId) : createSlaResolver([], []);
20
46
  }
21
47
  async recordEvent(input) {
22
48
  if (!this.eventModel)
@@ -44,7 +70,10 @@ export class IncidentService {
44
70
  async list(params) {
45
71
  const page = Math.max(1, params.page ?? 1);
46
72
  const limit = Math.min(100, params.limit ?? 20);
47
- const effectiveSourceTypes = resolveSourcesForIncidentType(params.incidentType, params.sourceTypes);
73
+ const sort = resolveIncidentSort(params.sort, params.incidentType);
74
+ if (!sort)
75
+ throw new Error("Invalid sort");
76
+ const sourceFilter = resolveSourceFilterForIncidentType(params.incidentType, params.sourceTypes);
48
77
  const result = await this.model.list({
49
78
  page,
50
79
  limit,
@@ -52,16 +81,20 @@ export class IncidentService {
52
81
  search: params.search,
53
82
  assigneeIds: params.assigneeIds,
54
83
  statuses: params.statuses,
55
- sourceTypes: effectiveSourceTypes,
84
+ sourceTypes: sourceFilter.sourceTypes,
85
+ excludeSourceTypes: sourceFilter.excludeSourceTypes,
56
86
  accountNames: params.accountNames,
57
87
  environment: params.environment,
88
+ priorities: params.priorities,
58
89
  tenantId: params.tenantId,
90
+ sort,
59
91
  });
60
92
  const resolveSla = await this.slaResolver(params.tenantId);
61
93
  const withComments = await this.attachComments(result.incidents);
62
94
  return {
63
95
  ...result,
64
- incidents: withComments.map((incident) => ({ ...incident, sla: evaluateIncidentRow(incident, resolveSla) })),
96
+ sort,
97
+ incidents: withComments.map((incident) => ({ ...toIncidentDto(incident), sla: evaluateIncidentRow(incident, resolveSla) })),
65
98
  };
66
99
  }
67
100
  async searchUsers(search, limit, tenantId) {
@@ -69,8 +102,8 @@ export class IncidentService {
69
102
  }
70
103
  /** Dashboard summary: active counts, MTTR today, open feed, recent activity. */
71
104
  async dashboard(tenantId, sourceTypes, incidentType) {
72
- const effectiveSourceTypes = resolveSourcesForIncidentType(incidentType, sourceTypes);
73
- const rows = await this.model.findForAggregation(tenantId, undefined, effectiveSourceTypes);
105
+ const sourceFilter = resolveSourceFilterForIncidentType(incidentType, sourceTypes);
106
+ const rows = await this.model.findForAggregation(tenantId, undefined, sourceFilter.sourceTypes, undefined, sourceFilter.excludeSourceTypes);
74
107
  const now = Date.now();
75
108
  const ms = (v) => (v ? new Date(v).getTime() : 0);
76
109
  const ageMin = (v) => (v ? Math.max(0, Math.floor((now - ms(v)) / 60000)) : 0);
@@ -81,7 +114,7 @@ export class IncidentService {
81
114
  const n = new Date();
82
115
  return d.getFullYear() === n.getFullYear() && d.getMonth() === n.getMonth() && d.getDate() === n.getDate();
83
116
  };
84
- const priorityFor = (r) => (r.status === "in_progress" ? "P1" : r.status === "resolved" ? "P3" : "P2");
117
+ const priorityFor = (r) => normalizePriority(r.priority) ?? DEFAULT_INCIDENT_PRIORITY;
85
118
  const assigneeCount = (r) => {
86
119
  const a = r.assigneeIds;
87
120
  if (Array.isArray(a))
@@ -140,8 +173,8 @@ export class IncidentService {
140
173
  const d = new Date();
141
174
  d.setDate(d.getDate() - days);
142
175
  const sinceIso = d.toISOString();
143
- const effectiveSourceTypes = resolveSourcesForIncidentType(incidentType, sourceTypes);
144
- const rows = await this.model.findForAggregation(tenantId, sinceIso, effectiveSourceTypes);
176
+ const sourceFilter = resolveSourceFilterForIncidentType(incidentType, sourceTypes);
177
+ const rows = await this.model.findForAggregation(tenantId, sinceIso, sourceFilter.sourceTypes, undefined, sourceFilter.excludeSourceTypes);
145
178
  const ms = (v) => (v ? new Date(v).getTime() : 0);
146
179
  const diffMin = (from, to) => (from && to ? Math.max(0, Math.floor((ms(to) - ms(from)) / 60000)) : null);
147
180
  const avg = (xs) => (xs.length ? Math.round(xs.reduce((a, b) => a + b, 0) / xs.length) : 0);
@@ -157,8 +190,9 @@ export class IncidentService {
157
190
  const resolveSla = await this.slaResolver(tenantId);
158
191
  const evaluations = rows.map((r) => ({ r, ev: evaluateIncidentRow(r, resolveSla) }));
159
192
  const sla = evaluations.filter(({ r, ev }) => isBreachingNow(ev, r.status)).length;
160
- // Incidents whose account has SLA enabled; lets the UI hide SLA stats when nothing is tracked.
161
- const slaTracked = evaluations.filter(({ ev }) => ev.policy.enabled).length;
193
+ // Incidents measured against at least one real SLA limit (disabled and best-effort phases don't count);
194
+ // lets the UI hide SLA stats when nothing is tracked.
195
+ const slaTracked = evaluations.filter(({ ev }) => isSlaTracked(ev)).length;
162
196
  const aiPct = rows.length ? Math.round((rows.filter((r) => r.analysisStatus === "completed").length / rows.length) * 100) : 0;
163
197
  // Per-day timeline buckets
164
198
  const timeline = [];
@@ -200,10 +234,11 @@ export class IncidentService {
200
234
  const comments = await this.commentModel.listByIncidentId(id);
201
235
  const events = this.eventModel ? await this.eventModel.listByIncidentId(id) : [];
202
236
  const sla = evaluateIncidentRow(incident, await this.slaResolver(tenantId));
203
- return { ...incident, comments, events, sla };
237
+ return { ...toIncidentDto(incident), comments, events, sla };
204
238
  }
205
239
  async create(input) {
206
- const incident = await this.model.create(input);
240
+ const priority = derivePriority({ explicit: input.priority, tags: input.tags, severity: input.severity });
241
+ const incident = await this.model.create({ ...input, priority });
207
242
  await this.recordEvent({
208
243
  incidentId: incident.id,
209
244
  type: "created",
@@ -224,6 +259,59 @@ export class IncidentService {
224
259
  }
225
260
  return incident;
226
261
  }
262
+ /**
263
+ * Creates the incident, or refreshes the OPEN incident with the same (tenant, source, externalRef).
264
+ * Race-safe: the partial unique index rejects a concurrent duplicate insert (23505), which is retried
265
+ * as an update. A resolved/closed incident is never touched; a new one is created instead.
266
+ */
267
+ async upsertByExternalRef(input) {
268
+ const tenantId = typeof input.tenantId === "string" ? input.tenantId.trim() : "";
269
+ const source = typeof input.source === "string" ? input.source.trim() : "";
270
+ const externalRef = typeof input.externalRef === "string" ? input.externalRef.trim() : "";
271
+ if (!tenantId)
272
+ throw new Error("tenantId is required");
273
+ if (!source)
274
+ throw new Error("source is required");
275
+ if (!externalRef)
276
+ throw new Error("externalRef is required");
277
+ if (input.priority !== undefined && input.priority !== null && !normalizePriority(input.priority)) {
278
+ throw new Error("Invalid priority");
279
+ }
280
+ const normalized = { ...input, tenantId, source, externalRef };
281
+ for (let attempt = 0; attempt < 3; attempt++) {
282
+ const existing = await this.model.findOpenByExternalRef(tenantId, source, externalRef);
283
+ if (existing) {
284
+ const refreshed = await this.model.refreshOpenByExternalRef(existing.id, tenantId, {
285
+ name: normalized.name,
286
+ description: normalized.description,
287
+ priority: normalizePriority(normalized.priority) ?? undefined,
288
+ savingsMonthly: normalized.savingsMonthly,
289
+ savingsDetail: normalized.savingsDetail,
290
+ accountName: normalized.accountName,
291
+ tags: normalized.tags,
292
+ });
293
+ // Resolved between the read and the update: loop, which creates a fresh incident.
294
+ if (refreshed)
295
+ return { incident: await this.loadDto(existing.id, tenantId), created: false };
296
+ continue;
297
+ }
298
+ try {
299
+ const created = await this.create(normalized);
300
+ return { incident: await this.loadDto(created.id, tenantId), created: true };
301
+ }
302
+ catch (err) {
303
+ // A concurrent writer inserted the same open ref first; retry as an update.
304
+ if (isUniqueViolation(err, EXTERNAL_REF_UNIQUE_INDEX))
305
+ continue;
306
+ throw err;
307
+ }
308
+ }
309
+ throw new Error("Could not upsert incident by externalRef after retries");
310
+ }
311
+ async loadDto(id, tenantId) {
312
+ const row = await this.model.findById(id, tenantId);
313
+ return row ? toIncidentDto(row) : null;
314
+ }
227
315
  async triggerAnalysis(id, options = {}) {
228
316
  const AI_ENDPOINT = process.env.INSIGHT_AI_API_ENDPOINT ?? "http://127.0.0.1:8000";
229
317
  if (!AI_ENDPOINT)
@@ -288,7 +376,15 @@ export class IncidentService {
288
376
  const existing = await this.model.findById(id, tenantId);
289
377
  if (!existing)
290
378
  throw new Error("Incident not found");
291
- await this.model.update(id, data, tenantId);
379
+ try {
380
+ await this.model.update(id, this.withNormalizedPriority(data), tenantId);
381
+ }
382
+ catch (err) {
383
+ // Reopening a resolved incident whose finding already has a newer open incident.
384
+ if (isUniqueViolation(err, EXTERNAL_REF_UNIQUE_INDEX))
385
+ throw new Error(DUPLICATE_OPEN_INCIDENT);
386
+ throw err;
387
+ }
292
388
  if (data.status && data.status !== existing.status) {
293
389
  await this.recordEvent({
294
390
  incidentId: id,
@@ -1 +1 @@
1
- {"version":3,"file":"incident.service.js","sourceRoot":"","sources":["../../src/services/incident.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"incident.service.js","sourceRoot":"","sources":["../../src/services/incident.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * Data retention for Insight history (plan §6.3).
3
+ *
4
+ * Safety rules, enforced in every statement:
5
+ * - Every tenant statement filters `tenant_id = $1::text` in the query itself.
6
+ * - Only resolved/closed incidents are purged; open or in-progress incidents are never touched.
7
+ * - Alerts are purged only when unlinked, or linked to an incident purged in this same run.
8
+ * - Deletes run in bounded batches (`LIMIT batchSize`), each in its own short transaction with a
9
+ * statement timeout, so lock time stays bounded on large tables.
10
+ *
11
+ * Use the raw database handle (not a fallback-tenant proxy): the tenant comes only from the caller.
12
+ */
13
+ export interface PurgeTableCount {
14
+ table: string;
15
+ deleted: number;
16
+ }
17
+ export interface PurgeBeforeOptions {
18
+ tenantId: string;
19
+ cutoff: Date;
20
+ /** Rows per delete batch. Default 5000, max 50000. */
21
+ batchSize?: number;
22
+ /** Count what would be deleted; delete nothing. */
23
+ dryRun?: boolean;
24
+ /** Checked between batches; an aborted signal stops the run with an AbortError. */
25
+ signal?: AbortSignal;
26
+ /** Pause between full batches, in ms. Default 20. */
27
+ pauseMs?: number;
28
+ /** statement_timeout for each batch, in ms. Default 30000. */
29
+ statementTimeoutMs?: number;
30
+ }
31
+ export type PurgeSystemBeforeOptions = Omit<PurgeBeforeOptions, "tenantId">;
32
+ export interface PurgeBeforeResult {
33
+ tables: PurgeTableCount[];
34
+ /** Ids of incidents deleted in this run (empty for a dry run). */
35
+ incidentIds: string[];
36
+ }
37
+ export interface PurgeSystemBeforeResult {
38
+ tables: PurgeTableCount[];
39
+ }
40
+ export declare class RetentionService {
41
+ private db;
42
+ constructor(db: any);
43
+ private validate;
44
+ /** Runs one statement in a short transaction with a local statement timeout. */
45
+ private inTx;
46
+ private checkAbort;
47
+ /** Repeats a LIMITed delete until a batch comes back short. Returns the rows deleted (and RETURNING rows). */
48
+ private deleteInBatches;
49
+ private count;
50
+ /**
51
+ * Purges one tenant's Insight history older than `cutoff` (plan §6.3):
52
+ * resolved/closed incidents (comments, events, logs, evidence cascade), alerts that are unlinked or
53
+ * linked to an incident purged in this run (pipeline events and group members cascade), flushed
54
+ * alarm groups, and workflow executions.
55
+ */
56
+ purgeBefore(opts: PurgeBeforeOptions): Promise<PurgeBeforeResult>;
57
+ /**
58
+ * Purges Insight tables that have no tenant column (system level): webhook failure logs, and
59
+ * finished (done/failed) jobs in insight_job_queue. Pending/leased jobs are never touched.
60
+ */
61
+ purgeSystemBefore(opts: PurgeSystemBeforeOptions): Promise<PurgeSystemBeforeResult>;
62
+ }
63
+ //# sourceMappingURL=retention.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retention.service.d.ts","sourceRoot":"","sources":["../../src/services/retention.service.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;GAWG;AAEH,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,IAAI,CAAC;IACb,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mDAAmD;IACnD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,mFAAmF;IACnF,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,qDAAqD;IACrD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8DAA8D;IAC9D,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,MAAM,wBAAwB,GAAG,IAAI,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC;AAE5E,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,kEAAkE;IAClE,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAkDD,qBAAa,gBAAgB;IACf,OAAO,CAAC,EAAE;gBAAF,EAAE,EAAE,GAAG;IAE3B,OAAO,CAAC,QAAQ;IAoBhB,gFAAgF;YAClE,IAAI;IAOlB,OAAO,CAAC,UAAU;IAIlB,8GAA8G;YAChG,eAAe;YAef,KAAK;IAKnB;;;;;OAKG;IACG,WAAW,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA+HvE;;;OAGG;IACG,iBAAiB,CAAC,IAAI,EAAE,wBAAwB,GAAG,OAAO,CAAC,uBAAuB,CAAC;CA0C1F"}