@pipeline-builder/pipeline-data 3.4.124 → 3.4.126

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.
@@ -1003,6 +1003,40 @@ export declare const pipelineEvent: import("drizzle-orm/pg-core").PgTableWithCol
1003
1003
  }, {}, {
1004
1004
  length: 255;
1005
1005
  }>;
1006
+ commitTimestamp: import("drizzle-orm/pg-core").PgColumn<{
1007
+ name: "commit_timestamp";
1008
+ tableName: "pipeline_events";
1009
+ dataType: "date";
1010
+ columnType: "PgTimestamp";
1011
+ data: Date;
1012
+ driverParam: string;
1013
+ notNull: false;
1014
+ hasDefault: false;
1015
+ isPrimaryKey: false;
1016
+ isAutoincrement: false;
1017
+ hasRuntimeDefault: false;
1018
+ enumValues: undefined;
1019
+ baseColumn: never;
1020
+ identity: undefined;
1021
+ generated: undefined;
1022
+ }, {}, {}>;
1023
+ commitCount: import("drizzle-orm/pg-core").PgColumn<{
1024
+ name: "commit_count";
1025
+ tableName: "pipeline_events";
1026
+ dataType: "number";
1027
+ columnType: "PgInteger";
1028
+ data: number;
1029
+ driverParam: string | number;
1030
+ notNull: false;
1031
+ hasDefault: false;
1032
+ isPrimaryKey: false;
1033
+ isAutoincrement: false;
1034
+ hasRuntimeDefault: false;
1035
+ enumValues: undefined;
1036
+ baseColumn: never;
1037
+ identity: undefined;
1038
+ generated: undefined;
1039
+ }, {}, {}>;
1006
1040
  detail: import("drizzle-orm/pg-core").PgColumn<{
1007
1041
  name: "detail";
1008
1042
  tableName: "pipeline_events";
@@ -1042,6 +1076,520 @@ export declare const pipelineEvent: import("drizzle-orm/pg-core").PgTableWithCol
1042
1076
  };
1043
1077
  dialect: 'pg';
1044
1078
  }>;
1079
+ /**
1080
+ * Manual post-deploy outcome markers (Phase 2). A user marks a deployment
1081
+ * `failed` (production incident linked to a deploy) or `restored` (recovered).
1082
+ * These feed the DORA post-deploy Change Failure Rate component and the real
1083
+ * MTTR (restored − deployed). Correlated to a deploy execution by `executionId`.
1084
+ *
1085
+ * @table deployment_outcomes
1086
+ */
1087
+ export declare const deploymentOutcome: import("drizzle-orm/pg-core").PgTableWithColumns<{
1088
+ name: "deployment_outcomes";
1089
+ schema: undefined;
1090
+ columns: {
1091
+ id: import("drizzle-orm/pg-core").PgColumn<{
1092
+ name: "id";
1093
+ tableName: "deployment_outcomes";
1094
+ dataType: "string";
1095
+ columnType: "PgUUID";
1096
+ data: string;
1097
+ driverParam: string;
1098
+ notNull: true;
1099
+ hasDefault: true;
1100
+ isPrimaryKey: true;
1101
+ isAutoincrement: false;
1102
+ hasRuntimeDefault: false;
1103
+ enumValues: undefined;
1104
+ baseColumn: never;
1105
+ identity: undefined;
1106
+ generated: undefined;
1107
+ }, {}, {}>;
1108
+ executionId: import("drizzle-orm/pg-core").PgColumn<{
1109
+ name: "execution_id";
1110
+ tableName: "deployment_outcomes";
1111
+ dataType: "string";
1112
+ columnType: "PgVarchar";
1113
+ data: string;
1114
+ driverParam: string;
1115
+ notNull: true;
1116
+ hasDefault: false;
1117
+ isPrimaryKey: false;
1118
+ isAutoincrement: false;
1119
+ hasRuntimeDefault: false;
1120
+ enumValues: [string, ...string[]];
1121
+ baseColumn: never;
1122
+ identity: undefined;
1123
+ generated: undefined;
1124
+ }, {}, {
1125
+ length: 255;
1126
+ }>;
1127
+ orgId: import("drizzle-orm/pg-core").PgColumn<{
1128
+ name: "org_id";
1129
+ tableName: "deployment_outcomes";
1130
+ dataType: "string";
1131
+ columnType: "PgVarchar";
1132
+ data: string;
1133
+ driverParam: string;
1134
+ notNull: true;
1135
+ hasDefault: false;
1136
+ isPrimaryKey: false;
1137
+ isAutoincrement: false;
1138
+ hasRuntimeDefault: false;
1139
+ enumValues: [string, ...string[]];
1140
+ baseColumn: never;
1141
+ identity: undefined;
1142
+ generated: undefined;
1143
+ }, {}, {
1144
+ length: 255;
1145
+ }>;
1146
+ environment: import("drizzle-orm/pg-core").PgColumn<{
1147
+ name: "environment";
1148
+ tableName: "deployment_outcomes";
1149
+ dataType: "string";
1150
+ columnType: "PgVarchar";
1151
+ data: string;
1152
+ driverParam: string;
1153
+ notNull: false;
1154
+ hasDefault: false;
1155
+ isPrimaryKey: false;
1156
+ isAutoincrement: false;
1157
+ hasRuntimeDefault: false;
1158
+ enumValues: [string, ...string[]];
1159
+ baseColumn: never;
1160
+ identity: undefined;
1161
+ generated: undefined;
1162
+ }, {}, {
1163
+ length: 255;
1164
+ }>;
1165
+ outcome: import("drizzle-orm/pg-core").PgColumn<{
1166
+ name: "outcome";
1167
+ tableName: "deployment_outcomes";
1168
+ dataType: "string";
1169
+ columnType: "PgVarchar";
1170
+ data: "failed" | "restored";
1171
+ driverParam: string;
1172
+ notNull: true;
1173
+ hasDefault: false;
1174
+ isPrimaryKey: false;
1175
+ isAutoincrement: false;
1176
+ hasRuntimeDefault: false;
1177
+ enumValues: [string, ...string[]];
1178
+ baseColumn: never;
1179
+ identity: undefined;
1180
+ generated: undefined;
1181
+ }, {}, {
1182
+ length: 20;
1183
+ $type: "failed" | "restored";
1184
+ }>;
1185
+ at: import("drizzle-orm/pg-core").PgColumn<{
1186
+ name: "at";
1187
+ tableName: "deployment_outcomes";
1188
+ dataType: "date";
1189
+ columnType: "PgTimestamp";
1190
+ data: Date;
1191
+ driverParam: string;
1192
+ notNull: true;
1193
+ hasDefault: false;
1194
+ isPrimaryKey: false;
1195
+ isAutoincrement: false;
1196
+ hasRuntimeDefault: false;
1197
+ enumValues: undefined;
1198
+ baseColumn: never;
1199
+ identity: undefined;
1200
+ generated: undefined;
1201
+ }, {}, {}>;
1202
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
1203
+ name: "created_at";
1204
+ tableName: "deployment_outcomes";
1205
+ dataType: "date";
1206
+ columnType: "PgTimestamp";
1207
+ data: Date;
1208
+ driverParam: string;
1209
+ notNull: true;
1210
+ hasDefault: true;
1211
+ isPrimaryKey: false;
1212
+ isAutoincrement: false;
1213
+ hasRuntimeDefault: false;
1214
+ enumValues: undefined;
1215
+ baseColumn: never;
1216
+ identity: undefined;
1217
+ generated: undefined;
1218
+ }, {}, {}>;
1219
+ };
1220
+ dialect: 'pg';
1221
+ }>;
1222
+ /**
1223
+ * Per-org ingestion health (Phase 3). The AWS events Lambda periodically posts
1224
+ * forwarded/dropped counters + the last event timestamp so the Reports UI can
1225
+ * show whether events are flowing / stale / dropping. One row per org.
1226
+ *
1227
+ * @table ingest_health
1228
+ */
1229
+ export declare const ingestHealth: import("drizzle-orm/pg-core").PgTableWithColumns<{
1230
+ name: "ingest_health";
1231
+ schema: undefined;
1232
+ columns: {
1233
+ orgId: import("drizzle-orm/pg-core").PgColumn<{
1234
+ name: "org_id";
1235
+ tableName: "ingest_health";
1236
+ dataType: "string";
1237
+ columnType: "PgVarchar";
1238
+ data: string;
1239
+ driverParam: string;
1240
+ notNull: true;
1241
+ hasDefault: false;
1242
+ isPrimaryKey: true;
1243
+ isAutoincrement: false;
1244
+ hasRuntimeDefault: false;
1245
+ enumValues: [string, ...string[]];
1246
+ baseColumn: never;
1247
+ identity: undefined;
1248
+ generated: undefined;
1249
+ }, {}, {
1250
+ length: 255;
1251
+ }>;
1252
+ lastEventAt: import("drizzle-orm/pg-core").PgColumn<{
1253
+ name: "last_event_at";
1254
+ tableName: "ingest_health";
1255
+ dataType: "date";
1256
+ columnType: "PgTimestamp";
1257
+ data: Date;
1258
+ driverParam: string;
1259
+ notNull: false;
1260
+ hasDefault: false;
1261
+ isPrimaryKey: false;
1262
+ isAutoincrement: false;
1263
+ hasRuntimeDefault: false;
1264
+ enumValues: undefined;
1265
+ baseColumn: never;
1266
+ identity: undefined;
1267
+ generated: undefined;
1268
+ }, {}, {}>;
1269
+ forwarded: import("drizzle-orm/pg-core").PgColumn<{
1270
+ name: "forwarded";
1271
+ tableName: "ingest_health";
1272
+ dataType: "number";
1273
+ columnType: "PgBigInt53";
1274
+ data: number;
1275
+ driverParam: string | number;
1276
+ notNull: false;
1277
+ hasDefault: false;
1278
+ isPrimaryKey: false;
1279
+ isAutoincrement: false;
1280
+ hasRuntimeDefault: false;
1281
+ enumValues: undefined;
1282
+ baseColumn: never;
1283
+ identity: undefined;
1284
+ generated: undefined;
1285
+ }, {}, {}>;
1286
+ dropped: import("drizzle-orm/pg-core").PgColumn<{
1287
+ name: "dropped";
1288
+ tableName: "ingest_health";
1289
+ dataType: "number";
1290
+ columnType: "PgBigInt53";
1291
+ data: number;
1292
+ driverParam: string | number;
1293
+ notNull: false;
1294
+ hasDefault: false;
1295
+ isPrimaryKey: false;
1296
+ isAutoincrement: false;
1297
+ hasRuntimeDefault: false;
1298
+ enumValues: undefined;
1299
+ baseColumn: never;
1300
+ identity: undefined;
1301
+ generated: undefined;
1302
+ }, {}, {}>;
1303
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
1304
+ name: "updated_at";
1305
+ tableName: "ingest_health";
1306
+ dataType: "date";
1307
+ columnType: "PgTimestamp";
1308
+ data: Date;
1309
+ driverParam: string;
1310
+ notNull: true;
1311
+ hasDefault: true;
1312
+ isPrimaryKey: false;
1313
+ isAutoincrement: false;
1314
+ hasRuntimeDefault: false;
1315
+ enumValues: undefined;
1316
+ baseColumn: never;
1317
+ identity: undefined;
1318
+ generated: undefined;
1319
+ }, {}, {}>;
1320
+ };
1321
+ dialect: 'pg';
1322
+ }>;
1323
+ /**
1324
+ * Production incidents ingested from the org's incident tooling (Phase 5). The
1325
+ * user points their Alertmanager / PagerDuty / Datadog webhook at
1326
+ * `POST /api/reports/incidents` (machine `reporting:ingest` scope). Each incident
1327
+ * carries its external id, the affected `environment`, when it opened, and when
1328
+ * it was resolved (nullable — a later resolve updates it). DORA correlates each
1329
+ * incident to the most recent successful deploy to `environment` within
1330
+ * `DORA_INCIDENT_WINDOW_HOURS`, turning it into an automated post-deploy failure
1331
+ * (Change Failure Rate) and a real recovery time (`resolved_at − opened_at` MTTR).
1332
+ * `incident_id` is UNIQUE per org so a resolve re-post is an idempotent upsert.
1333
+ *
1334
+ * @table incidents
1335
+ */
1336
+ export declare const incident: import("drizzle-orm/pg-core").PgTableWithColumns<{
1337
+ name: "incidents";
1338
+ schema: undefined;
1339
+ columns: {
1340
+ id: import("drizzle-orm/pg-core").PgColumn<{
1341
+ name: "id";
1342
+ tableName: "incidents";
1343
+ dataType: "string";
1344
+ columnType: "PgUUID";
1345
+ data: string;
1346
+ driverParam: string;
1347
+ notNull: true;
1348
+ hasDefault: true;
1349
+ isPrimaryKey: true;
1350
+ isAutoincrement: false;
1351
+ hasRuntimeDefault: false;
1352
+ enumValues: undefined;
1353
+ baseColumn: never;
1354
+ identity: undefined;
1355
+ generated: undefined;
1356
+ }, {}, {}>;
1357
+ incidentId: import("drizzle-orm/pg-core").PgColumn<{
1358
+ name: "incident_id";
1359
+ tableName: "incidents";
1360
+ dataType: "string";
1361
+ columnType: "PgVarchar";
1362
+ data: string;
1363
+ driverParam: string;
1364
+ notNull: true;
1365
+ hasDefault: false;
1366
+ isPrimaryKey: false;
1367
+ isAutoincrement: false;
1368
+ hasRuntimeDefault: false;
1369
+ enumValues: [string, ...string[]];
1370
+ baseColumn: never;
1371
+ identity: undefined;
1372
+ generated: undefined;
1373
+ }, {}, {
1374
+ length: 255;
1375
+ }>;
1376
+ orgId: import("drizzle-orm/pg-core").PgColumn<{
1377
+ name: "org_id";
1378
+ tableName: "incidents";
1379
+ dataType: "string";
1380
+ columnType: "PgVarchar";
1381
+ data: string;
1382
+ driverParam: string;
1383
+ notNull: true;
1384
+ hasDefault: false;
1385
+ isPrimaryKey: false;
1386
+ isAutoincrement: false;
1387
+ hasRuntimeDefault: false;
1388
+ enumValues: [string, ...string[]];
1389
+ baseColumn: never;
1390
+ identity: undefined;
1391
+ generated: undefined;
1392
+ }, {}, {
1393
+ length: 255;
1394
+ }>;
1395
+ environment: import("drizzle-orm/pg-core").PgColumn<{
1396
+ name: "environment";
1397
+ tableName: "incidents";
1398
+ dataType: "string";
1399
+ columnType: "PgVarchar";
1400
+ data: string;
1401
+ driverParam: string;
1402
+ notNull: true;
1403
+ hasDefault: false;
1404
+ isPrimaryKey: false;
1405
+ isAutoincrement: false;
1406
+ hasRuntimeDefault: false;
1407
+ enumValues: [string, ...string[]];
1408
+ baseColumn: never;
1409
+ identity: undefined;
1410
+ generated: undefined;
1411
+ }, {}, {
1412
+ length: 255;
1413
+ }>;
1414
+ openedAt: import("drizzle-orm/pg-core").PgColumn<{
1415
+ name: "opened_at";
1416
+ tableName: "incidents";
1417
+ dataType: "date";
1418
+ columnType: "PgTimestamp";
1419
+ data: Date;
1420
+ driverParam: string;
1421
+ notNull: true;
1422
+ hasDefault: false;
1423
+ isPrimaryKey: false;
1424
+ isAutoincrement: false;
1425
+ hasRuntimeDefault: false;
1426
+ enumValues: undefined;
1427
+ baseColumn: never;
1428
+ identity: undefined;
1429
+ generated: undefined;
1430
+ }, {}, {}>;
1431
+ resolvedAt: import("drizzle-orm/pg-core").PgColumn<{
1432
+ name: "resolved_at";
1433
+ tableName: "incidents";
1434
+ dataType: "date";
1435
+ columnType: "PgTimestamp";
1436
+ data: Date;
1437
+ driverParam: string;
1438
+ notNull: false;
1439
+ hasDefault: false;
1440
+ isPrimaryKey: false;
1441
+ isAutoincrement: false;
1442
+ hasRuntimeDefault: false;
1443
+ enumValues: undefined;
1444
+ baseColumn: never;
1445
+ identity: undefined;
1446
+ generated: undefined;
1447
+ }, {}, {}>;
1448
+ severity: import("drizzle-orm/pg-core").PgColumn<{
1449
+ name: "severity";
1450
+ tableName: "incidents";
1451
+ dataType: "string";
1452
+ columnType: "PgVarchar";
1453
+ data: string;
1454
+ driverParam: string;
1455
+ notNull: true;
1456
+ hasDefault: false;
1457
+ isPrimaryKey: false;
1458
+ isAutoincrement: false;
1459
+ hasRuntimeDefault: false;
1460
+ enumValues: [string, ...string[]];
1461
+ baseColumn: never;
1462
+ identity: undefined;
1463
+ generated: undefined;
1464
+ }, {}, {
1465
+ length: 50;
1466
+ }>;
1467
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
1468
+ name: "created_at";
1469
+ tableName: "incidents";
1470
+ dataType: "date";
1471
+ columnType: "PgTimestamp";
1472
+ data: Date;
1473
+ driverParam: string;
1474
+ notNull: true;
1475
+ hasDefault: true;
1476
+ isPrimaryKey: false;
1477
+ isAutoincrement: false;
1478
+ hasRuntimeDefault: false;
1479
+ enumValues: undefined;
1480
+ baseColumn: never;
1481
+ identity: undefined;
1482
+ generated: undefined;
1483
+ }, {}, {}>;
1484
+ };
1485
+ dialect: 'pg';
1486
+ }>;
1487
+ /**
1488
+ * Per-org DORA computation + retention overrides. One row per org (org_id PK).
1489
+ * `incidentWindowHours` (Phase 5b) overrides the global `DORA_INCIDENT_WINDOW_HOURS`
1490
+ * used to correlate an ingested incident to the most recent successful deploy.
1491
+ * `eventRetentionDays` / `doraRetentionDays` (Phase 7) override the global reporting
1492
+ * retention windows for the split sweep — standard events (`environment IS NULL`)
1493
+ * vs DORA source (deploy stages + `deployment_outcomes` + `incidents`). Any NULL /
1494
+ * absent value falls back to its env default. Set self-serve by an org admin via
1495
+ * `PUT /api/reports/settings/incidents`. This table is itself never purged.
1496
+ *
1497
+ * @table dora_settings
1498
+ */
1499
+ export declare const doraSettings: import("drizzle-orm/pg-core").PgTableWithColumns<{
1500
+ name: "dora_settings";
1501
+ schema: undefined;
1502
+ columns: {
1503
+ orgId: import("drizzle-orm/pg-core").PgColumn<{
1504
+ name: "org_id";
1505
+ tableName: "dora_settings";
1506
+ dataType: "string";
1507
+ columnType: "PgVarchar";
1508
+ data: string;
1509
+ driverParam: string;
1510
+ notNull: true;
1511
+ hasDefault: false;
1512
+ isPrimaryKey: true;
1513
+ isAutoincrement: false;
1514
+ hasRuntimeDefault: false;
1515
+ enumValues: [string, ...string[]];
1516
+ baseColumn: never;
1517
+ identity: undefined;
1518
+ generated: undefined;
1519
+ }, {}, {
1520
+ length: 255;
1521
+ }>;
1522
+ incidentWindowHours: import("drizzle-orm/pg-core").PgColumn<{
1523
+ name: "incident_window_hours";
1524
+ tableName: "dora_settings";
1525
+ dataType: "number";
1526
+ columnType: "PgInteger";
1527
+ data: number;
1528
+ driverParam: string | number;
1529
+ notNull: false;
1530
+ hasDefault: false;
1531
+ isPrimaryKey: false;
1532
+ isAutoincrement: false;
1533
+ hasRuntimeDefault: false;
1534
+ enumValues: undefined;
1535
+ baseColumn: never;
1536
+ identity: undefined;
1537
+ generated: undefined;
1538
+ }, {}, {}>;
1539
+ eventRetentionDays: import("drizzle-orm/pg-core").PgColumn<{
1540
+ name: "event_retention_days";
1541
+ tableName: "dora_settings";
1542
+ dataType: "number";
1543
+ columnType: "PgInteger";
1544
+ data: number;
1545
+ driverParam: string | number;
1546
+ notNull: false;
1547
+ hasDefault: false;
1548
+ isPrimaryKey: false;
1549
+ isAutoincrement: false;
1550
+ hasRuntimeDefault: false;
1551
+ enumValues: undefined;
1552
+ baseColumn: never;
1553
+ identity: undefined;
1554
+ generated: undefined;
1555
+ }, {}, {}>;
1556
+ doraRetentionDays: import("drizzle-orm/pg-core").PgColumn<{
1557
+ name: "dora_retention_days";
1558
+ tableName: "dora_settings";
1559
+ dataType: "number";
1560
+ columnType: "PgInteger";
1561
+ data: number;
1562
+ driverParam: string | number;
1563
+ notNull: false;
1564
+ hasDefault: false;
1565
+ isPrimaryKey: false;
1566
+ isAutoincrement: false;
1567
+ hasRuntimeDefault: false;
1568
+ enumValues: undefined;
1569
+ baseColumn: never;
1570
+ identity: undefined;
1571
+ generated: undefined;
1572
+ }, {}, {}>;
1573
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
1574
+ name: "updated_at";
1575
+ tableName: "dora_settings";
1576
+ dataType: "date";
1577
+ columnType: "PgTimestamp";
1578
+ data: Date;
1579
+ driverParam: string;
1580
+ notNull: true;
1581
+ hasDefault: true;
1582
+ isPrimaryKey: false;
1583
+ isAutoincrement: false;
1584
+ hasRuntimeDefault: false;
1585
+ enumValues: undefined;
1586
+ baseColumn: never;
1587
+ identity: undefined;
1588
+ generated: undefined;
1589
+ }, {}, {}>;
1590
+ };
1591
+ dialect: 'pg';
1592
+ }>;
1045
1593
  /**
1046
1594
  * TypeScript types representing database rows
1047
1595
  */
@@ -1051,6 +1599,14 @@ export type PipelineRegistry = typeof pipelineRegistry.$inferSelect;
1051
1599
  export type PipelineRegistryInsert = typeof pipelineRegistry.$inferInsert;
1052
1600
  export type PipelineEvent = typeof pipelineEvent.$inferSelect;
1053
1601
  export type PipelineEventInsert = typeof pipelineEvent.$inferInsert;
1602
+ export type DeploymentOutcome = typeof deploymentOutcome.$inferSelect;
1603
+ export type DeploymentOutcomeInsert = typeof deploymentOutcome.$inferInsert;
1604
+ export type IngestHealth = typeof ingestHealth.$inferSelect;
1605
+ export type IngestHealthInsert = typeof ingestHealth.$inferInsert;
1606
+ export type Incident = typeof incident.$inferSelect;
1607
+ export type IncidentInsert = typeof incident.$inferInsert;
1608
+ export type DoraSettings = typeof doraSettings.$inferSelect;
1609
+ export type DoraSettingsInsert = typeof doraSettings.$inferInsert;
1054
1610
  /**
1055
1611
  * Helper types for working with partial updates
1056
1612
  */