@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.
- package/lib/api/crud-service.d.ts +14 -0
- package/lib/api/crud-service.js +45 -1
- package/lib/api/reporting-service.d.ts +375 -94
- package/lib/api/reporting-service.js +915 -282
- package/lib/database/drizzle-schema.d.ts +508 -0
- package/lib/database/drizzle-schema.js +9 -2
- package/lib/database/schema/pipeline.d.ts +556 -0
- package/lib/database/schema/pipeline.js +110 -3
- package/package.json +2 -2
|
@@ -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
|
*/
|