@pipeline-builder/pipeline-data 3.4.85 → 3.4.87

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.
@@ -0,0 +1,554 @@
1
+ /**
2
+ * Per-org alert notification destination. Multi-tenant alerting routes
3
+ * Alertmanager webhooks to the platform; the platform looks the firing
4
+ * alert's `org_id` label up here and forwards to each enabled destination.
5
+ *
6
+ * Channels * - `slack` `target` is the incoming-webhook URL
7
+ * - `webhook` `target` is any HTTPS URL; the relay posts the
8
+ * Alertmanager v2 webhook payload verbatim
9
+ * - `in-app` `target` ignored; surfaces as an in-app message via
10
+ * the existing `messages` table
11
+ *
12
+ * Secrets * - For `slack`/`webhook` channels, the URL itself is the secret. We don't
13
+ * log it on `dashboard.update` or surface the full URL on GET endpoints
14
+ * after write; just a masked preview (last 12 chars). Stored in clear
15
+ * text same posture as `compliance_notification_preferences.webhook_url`
16
+ * and consistent with the rest of the app's secret handling for org-level
17
+ * integrations. If we add a KMS-encryption tier for any secret column,
18
+ * this is one of the first to migrate.
19
+ *
20
+ * @table org_alert_destinations
21
+ */
22
+ export declare const orgAlertDestination: import("drizzle-orm/pg-core").PgTableWithColumns<{
23
+ name: "org_alert_destinations";
24
+ schema: undefined;
25
+ columns: {
26
+ id: import("drizzle-orm/pg-core").PgColumn<{
27
+ name: "id";
28
+ tableName: "org_alert_destinations";
29
+ dataType: "string";
30
+ columnType: "PgUUID";
31
+ data: string;
32
+ driverParam: string;
33
+ notNull: true;
34
+ hasDefault: true;
35
+ isPrimaryKey: true;
36
+ isAutoincrement: false;
37
+ hasRuntimeDefault: false;
38
+ enumValues: undefined;
39
+ baseColumn: never;
40
+ identity: undefined;
41
+ generated: undefined;
42
+ }, {}, {}>;
43
+ orgId: import("drizzle-orm/pg-core").PgColumn<{
44
+ name: "org_id";
45
+ tableName: "org_alert_destinations";
46
+ dataType: "string";
47
+ columnType: "PgVarchar";
48
+ data: string;
49
+ driverParam: string;
50
+ notNull: true;
51
+ hasDefault: false;
52
+ isPrimaryKey: false;
53
+ isAutoincrement: false;
54
+ hasRuntimeDefault: false;
55
+ enumValues: [string, ...string[]];
56
+ baseColumn: never;
57
+ identity: undefined;
58
+ generated: undefined;
59
+ }, {}, {
60
+ length: 255;
61
+ }>;
62
+ createdBy: import("drizzle-orm/pg-core").PgColumn<{
63
+ name: "created_by";
64
+ tableName: "org_alert_destinations";
65
+ dataType: "string";
66
+ columnType: "PgText";
67
+ data: string;
68
+ driverParam: string;
69
+ notNull: true;
70
+ hasDefault: false;
71
+ isPrimaryKey: false;
72
+ isAutoincrement: false;
73
+ hasRuntimeDefault: false;
74
+ enumValues: [string, ...string[]];
75
+ baseColumn: never;
76
+ identity: undefined;
77
+ generated: undefined;
78
+ }, {}, {}>;
79
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
80
+ name: "created_at";
81
+ tableName: "org_alert_destinations";
82
+ dataType: "date";
83
+ columnType: "PgTimestamp";
84
+ data: Date;
85
+ driverParam: string;
86
+ notNull: true;
87
+ hasDefault: true;
88
+ isPrimaryKey: false;
89
+ isAutoincrement: false;
90
+ hasRuntimeDefault: false;
91
+ enumValues: undefined;
92
+ baseColumn: never;
93
+ identity: undefined;
94
+ generated: undefined;
95
+ }, {}, {}>;
96
+ updatedBy: import("drizzle-orm/pg-core").PgColumn<{
97
+ name: "updated_by";
98
+ tableName: "org_alert_destinations";
99
+ dataType: "string";
100
+ columnType: "PgText";
101
+ data: string;
102
+ driverParam: string;
103
+ notNull: true;
104
+ hasDefault: false;
105
+ isPrimaryKey: false;
106
+ isAutoincrement: false;
107
+ hasRuntimeDefault: false;
108
+ enumValues: [string, ...string[]];
109
+ baseColumn: never;
110
+ identity: undefined;
111
+ generated: undefined;
112
+ }, {}, {}>;
113
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
114
+ name: "updated_at";
115
+ tableName: "org_alert_destinations";
116
+ dataType: "date";
117
+ columnType: "PgTimestamp";
118
+ data: Date;
119
+ driverParam: string;
120
+ notNull: true;
121
+ hasDefault: true;
122
+ isPrimaryKey: false;
123
+ isAutoincrement: false;
124
+ hasRuntimeDefault: false;
125
+ enumValues: undefined;
126
+ baseColumn: never;
127
+ identity: undefined;
128
+ generated: undefined;
129
+ }, {}, {}>;
130
+ channel: import("drizzle-orm/pg-core").PgColumn<{
131
+ name: "channel";
132
+ tableName: "org_alert_destinations";
133
+ dataType: "string";
134
+ columnType: "PgVarchar";
135
+ data: "slack" | "webhook" | "in-app" | "email";
136
+ driverParam: string;
137
+ notNull: true;
138
+ hasDefault: false;
139
+ isPrimaryKey: false;
140
+ isAutoincrement: false;
141
+ hasRuntimeDefault: false;
142
+ enumValues: [string, ...string[]];
143
+ baseColumn: never;
144
+ identity: undefined;
145
+ generated: undefined;
146
+ }, {}, {
147
+ length: 20;
148
+ $type: "slack" | "webhook" | "in-app" | "email";
149
+ }>;
150
+ target: import("drizzle-orm/pg-core").PgColumn<{
151
+ name: "target";
152
+ tableName: "org_alert_destinations";
153
+ dataType: "string";
154
+ columnType: "PgText";
155
+ data: string;
156
+ driverParam: string;
157
+ notNull: true;
158
+ hasDefault: true;
159
+ isPrimaryKey: false;
160
+ isAutoincrement: false;
161
+ hasRuntimeDefault: false;
162
+ enumValues: [string, ...string[]];
163
+ baseColumn: never;
164
+ identity: undefined;
165
+ generated: undefined;
166
+ }, {}, {}>;
167
+ label: import("drizzle-orm/pg-core").PgColumn<{
168
+ name: "label";
169
+ tableName: "org_alert_destinations";
170
+ dataType: "string";
171
+ columnType: "PgVarchar";
172
+ data: string;
173
+ driverParam: string;
174
+ notNull: true;
175
+ hasDefault: false;
176
+ isPrimaryKey: false;
177
+ isAutoincrement: false;
178
+ hasRuntimeDefault: false;
179
+ enumValues: [string, ...string[]];
180
+ baseColumn: never;
181
+ identity: undefined;
182
+ generated: undefined;
183
+ }, {}, {
184
+ length: 100;
185
+ }>;
186
+ minSeverity: import("drizzle-orm/pg-core").PgColumn<{
187
+ name: "min_severity";
188
+ tableName: "org_alert_destinations";
189
+ dataType: "string";
190
+ columnType: "PgVarchar";
191
+ data: "warning" | "critical";
192
+ driverParam: string;
193
+ notNull: true;
194
+ hasDefault: true;
195
+ isPrimaryKey: false;
196
+ isAutoincrement: false;
197
+ hasRuntimeDefault: false;
198
+ enumValues: [string, ...string[]];
199
+ baseColumn: never;
200
+ identity: undefined;
201
+ generated: undefined;
202
+ }, {}, {
203
+ length: 10;
204
+ $type: "warning" | "critical";
205
+ }>;
206
+ enabled: import("drizzle-orm/pg-core").PgColumn<{
207
+ name: "enabled";
208
+ tableName: "org_alert_destinations";
209
+ dataType: "boolean";
210
+ columnType: "PgBoolean";
211
+ data: boolean;
212
+ driverParam: boolean;
213
+ notNull: true;
214
+ hasDefault: true;
215
+ isPrimaryKey: false;
216
+ isAutoincrement: false;
217
+ hasRuntimeDefault: false;
218
+ enumValues: undefined;
219
+ baseColumn: never;
220
+ identity: undefined;
221
+ generated: undefined;
222
+ }, {}, {}>;
223
+ deletedAt: import("drizzle-orm/pg-core").PgColumn<{
224
+ name: "deleted_at";
225
+ tableName: "org_alert_destinations";
226
+ dataType: "date";
227
+ columnType: "PgTimestamp";
228
+ data: Date;
229
+ driverParam: string;
230
+ notNull: false;
231
+ hasDefault: false;
232
+ isPrimaryKey: false;
233
+ isAutoincrement: false;
234
+ hasRuntimeDefault: false;
235
+ enumValues: undefined;
236
+ baseColumn: never;
237
+ identity: undefined;
238
+ generated: undefined;
239
+ }, {}, {}>;
240
+ deletedBy: import("drizzle-orm/pg-core").PgColumn<{
241
+ name: "deleted_by";
242
+ tableName: "org_alert_destinations";
243
+ dataType: "string";
244
+ columnType: "PgText";
245
+ data: string;
246
+ driverParam: string;
247
+ notNull: false;
248
+ hasDefault: false;
249
+ isPrimaryKey: false;
250
+ isAutoincrement: false;
251
+ hasRuntimeDefault: false;
252
+ enumValues: [string, ...string[]];
253
+ baseColumn: never;
254
+ identity: undefined;
255
+ generated: undefined;
256
+ }, {}, {}>;
257
+ };
258
+ dialect: "pg";
259
+ }>;
260
+ /**
261
+ * Per-org alert rules authored by operators.
262
+ *
263
+ * Each row materializes into a `groups[].rules[]` entry in a Prometheus
264
+ * `rule_files` YAML. The materializer endpoint
265
+ * `GET /api/observability/alert-rules/materialized.yml` renders all enabled
266
+ * rules across all orgs (deleted=null) into one document; Prometheus polls
267
+ * or a sidecar copies it into the rules dir.
268
+ *
269
+ * Tenancy + safety * - `expr` is user-authored PromQL. The CRUD route enforces that the
270
+ * expression substring-contains `org_id="<orgId>"` so an operator can't
271
+ * write rules that fire on other orgs' metrics. This is a coarse gate
272
+ * (a malformed expression can still be syntactically wrong) but it
273
+ * closes the cross-tenant data leak. Real PromQL parsing + automatic
274
+ * org_id injection is a follow-on.
275
+ * - The materialized rule carries `labels.org_id = <orgId>` so the
276
+ * alertmanager-relay routes firing alerts to the right org's
277
+ * destinations (matches the alert-relay model).
278
+ *
279
+ * @table org_alert_rules
280
+ */
281
+ export declare const orgAlertRule: import("drizzle-orm/pg-core").PgTableWithColumns<{
282
+ name: "org_alert_rules";
283
+ schema: undefined;
284
+ columns: {
285
+ id: import("drizzle-orm/pg-core").PgColumn<{
286
+ name: "id";
287
+ tableName: "org_alert_rules";
288
+ dataType: "string";
289
+ columnType: "PgUUID";
290
+ data: string;
291
+ driverParam: string;
292
+ notNull: true;
293
+ hasDefault: true;
294
+ isPrimaryKey: true;
295
+ isAutoincrement: false;
296
+ hasRuntimeDefault: false;
297
+ enumValues: undefined;
298
+ baseColumn: never;
299
+ identity: undefined;
300
+ generated: undefined;
301
+ }, {}, {}>;
302
+ orgId: import("drizzle-orm/pg-core").PgColumn<{
303
+ name: "org_id";
304
+ tableName: "org_alert_rules";
305
+ dataType: "string";
306
+ columnType: "PgVarchar";
307
+ data: string;
308
+ driverParam: string;
309
+ notNull: true;
310
+ hasDefault: false;
311
+ isPrimaryKey: false;
312
+ isAutoincrement: false;
313
+ hasRuntimeDefault: false;
314
+ enumValues: [string, ...string[]];
315
+ baseColumn: never;
316
+ identity: undefined;
317
+ generated: undefined;
318
+ }, {}, {
319
+ length: 255;
320
+ }>;
321
+ createdBy: import("drizzle-orm/pg-core").PgColumn<{
322
+ name: "created_by";
323
+ tableName: "org_alert_rules";
324
+ dataType: "string";
325
+ columnType: "PgText";
326
+ data: string;
327
+ driverParam: string;
328
+ notNull: true;
329
+ hasDefault: false;
330
+ isPrimaryKey: false;
331
+ isAutoincrement: false;
332
+ hasRuntimeDefault: false;
333
+ enumValues: [string, ...string[]];
334
+ baseColumn: never;
335
+ identity: undefined;
336
+ generated: undefined;
337
+ }, {}, {}>;
338
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
339
+ name: "created_at";
340
+ tableName: "org_alert_rules";
341
+ dataType: "date";
342
+ columnType: "PgTimestamp";
343
+ data: Date;
344
+ driverParam: string;
345
+ notNull: true;
346
+ hasDefault: true;
347
+ isPrimaryKey: false;
348
+ isAutoincrement: false;
349
+ hasRuntimeDefault: false;
350
+ enumValues: undefined;
351
+ baseColumn: never;
352
+ identity: undefined;
353
+ generated: undefined;
354
+ }, {}, {}>;
355
+ updatedBy: import("drizzle-orm/pg-core").PgColumn<{
356
+ name: "updated_by";
357
+ tableName: "org_alert_rules";
358
+ dataType: "string";
359
+ columnType: "PgText";
360
+ data: string;
361
+ driverParam: string;
362
+ notNull: true;
363
+ hasDefault: false;
364
+ isPrimaryKey: false;
365
+ isAutoincrement: false;
366
+ hasRuntimeDefault: false;
367
+ enumValues: [string, ...string[]];
368
+ baseColumn: never;
369
+ identity: undefined;
370
+ generated: undefined;
371
+ }, {}, {}>;
372
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
373
+ name: "updated_at";
374
+ tableName: "org_alert_rules";
375
+ dataType: "date";
376
+ columnType: "PgTimestamp";
377
+ data: Date;
378
+ driverParam: string;
379
+ notNull: true;
380
+ hasDefault: true;
381
+ isPrimaryKey: false;
382
+ isAutoincrement: false;
383
+ hasRuntimeDefault: false;
384
+ enumValues: undefined;
385
+ baseColumn: never;
386
+ identity: undefined;
387
+ generated: undefined;
388
+ }, {}, {}>;
389
+ name: import("drizzle-orm/pg-core").PgColumn<{
390
+ name: "name";
391
+ tableName: "org_alert_rules";
392
+ dataType: "string";
393
+ columnType: "PgVarchar";
394
+ data: string;
395
+ driverParam: string;
396
+ notNull: true;
397
+ hasDefault: false;
398
+ isPrimaryKey: false;
399
+ isAutoincrement: false;
400
+ hasRuntimeDefault: false;
401
+ enumValues: [string, ...string[]];
402
+ baseColumn: never;
403
+ identity: undefined;
404
+ generated: undefined;
405
+ }, {}, {
406
+ length: 100;
407
+ }>;
408
+ expr: import("drizzle-orm/pg-core").PgColumn<{
409
+ name: "expr";
410
+ tableName: "org_alert_rules";
411
+ dataType: "string";
412
+ columnType: "PgText";
413
+ data: string;
414
+ driverParam: string;
415
+ notNull: true;
416
+ hasDefault: false;
417
+ isPrimaryKey: false;
418
+ isAutoincrement: false;
419
+ hasRuntimeDefault: false;
420
+ enumValues: [string, ...string[]];
421
+ baseColumn: never;
422
+ identity: undefined;
423
+ generated: undefined;
424
+ }, {}, {}>;
425
+ forDuration: import("drizzle-orm/pg-core").PgColumn<{
426
+ name: "for_duration";
427
+ tableName: "org_alert_rules";
428
+ dataType: "string";
429
+ columnType: "PgVarchar";
430
+ data: string;
431
+ driverParam: string;
432
+ notNull: true;
433
+ hasDefault: true;
434
+ isPrimaryKey: false;
435
+ isAutoincrement: false;
436
+ hasRuntimeDefault: false;
437
+ enumValues: [string, ...string[]];
438
+ baseColumn: never;
439
+ identity: undefined;
440
+ generated: undefined;
441
+ }, {}, {
442
+ length: 20;
443
+ }>;
444
+ severity: import("drizzle-orm/pg-core").PgColumn<{
445
+ name: "severity";
446
+ tableName: "org_alert_rules";
447
+ dataType: "string";
448
+ columnType: "PgVarchar";
449
+ data: "warning" | "critical";
450
+ driverParam: string;
451
+ notNull: true;
452
+ hasDefault: true;
453
+ isPrimaryKey: false;
454
+ isAutoincrement: false;
455
+ hasRuntimeDefault: false;
456
+ enumValues: [string, ...string[]];
457
+ baseColumn: never;
458
+ identity: undefined;
459
+ generated: undefined;
460
+ }, {}, {
461
+ length: 20;
462
+ $type: "warning" | "critical";
463
+ }>;
464
+ summary: import("drizzle-orm/pg-core").PgColumn<{
465
+ name: "summary";
466
+ tableName: "org_alert_rules";
467
+ dataType: "string";
468
+ columnType: "PgText";
469
+ data: string;
470
+ driverParam: string;
471
+ notNull: true;
472
+ hasDefault: false;
473
+ isPrimaryKey: false;
474
+ isAutoincrement: false;
475
+ hasRuntimeDefault: false;
476
+ enumValues: [string, ...string[]];
477
+ baseColumn: never;
478
+ identity: undefined;
479
+ generated: undefined;
480
+ }, {}, {}>;
481
+ description: import("drizzle-orm/pg-core").PgColumn<{
482
+ name: "description";
483
+ tableName: "org_alert_rules";
484
+ dataType: "string";
485
+ columnType: "PgText";
486
+ data: string;
487
+ driverParam: string;
488
+ notNull: true;
489
+ hasDefault: true;
490
+ isPrimaryKey: false;
491
+ isAutoincrement: false;
492
+ hasRuntimeDefault: false;
493
+ enumValues: [string, ...string[]];
494
+ baseColumn: never;
495
+ identity: undefined;
496
+ generated: undefined;
497
+ }, {}, {}>;
498
+ enabled: import("drizzle-orm/pg-core").PgColumn<{
499
+ name: "enabled";
500
+ tableName: "org_alert_rules";
501
+ dataType: "boolean";
502
+ columnType: "PgBoolean";
503
+ data: boolean;
504
+ driverParam: boolean;
505
+ notNull: true;
506
+ hasDefault: true;
507
+ isPrimaryKey: false;
508
+ isAutoincrement: false;
509
+ hasRuntimeDefault: false;
510
+ enumValues: undefined;
511
+ baseColumn: never;
512
+ identity: undefined;
513
+ generated: undefined;
514
+ }, {}, {}>;
515
+ deletedAt: import("drizzle-orm/pg-core").PgColumn<{
516
+ name: "deleted_at";
517
+ tableName: "org_alert_rules";
518
+ dataType: "date";
519
+ columnType: "PgTimestamp";
520
+ data: Date;
521
+ driverParam: string;
522
+ notNull: false;
523
+ hasDefault: false;
524
+ isPrimaryKey: false;
525
+ isAutoincrement: false;
526
+ hasRuntimeDefault: false;
527
+ enumValues: undefined;
528
+ baseColumn: never;
529
+ identity: undefined;
530
+ generated: undefined;
531
+ }, {}, {}>;
532
+ deletedBy: import("drizzle-orm/pg-core").PgColumn<{
533
+ name: "deleted_by";
534
+ tableName: "org_alert_rules";
535
+ dataType: "string";
536
+ columnType: "PgText";
537
+ data: string;
538
+ driverParam: string;
539
+ notNull: false;
540
+ hasDefault: false;
541
+ isPrimaryKey: false;
542
+ isAutoincrement: false;
543
+ hasRuntimeDefault: false;
544
+ enumValues: [string, ...string[]];
545
+ baseColumn: never;
546
+ identity: undefined;
547
+ generated: undefined;
548
+ }, {}, {}>;
549
+ };
550
+ dialect: "pg";
551
+ }>;
552
+ export type OrgAlertDestination = typeof orgAlertDestination.$inferSelect;
553
+ export type OrgAlertDestinationInsert = typeof orgAlertDestination.$inferInsert;
554
+ export type OrgAlertDestinationUpdate = Partial<Omit<OrgAlertDestinationInsert, 'id' | 'createdAt' | 'createdBy' | 'orgId'>>;