duron 0.2.2 → 0.3.0-beta.1

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 (77) hide show
  1. package/dist/action-job.d.ts +2 -0
  2. package/dist/action-job.d.ts.map +1 -1
  3. package/dist/action-job.js +20 -1
  4. package/dist/action-manager.d.ts +2 -0
  5. package/dist/action-manager.d.ts.map +1 -1
  6. package/dist/action-manager.js +3 -0
  7. package/dist/action.d.ts +27 -0
  8. package/dist/action.d.ts.map +1 -1
  9. package/dist/action.js +9 -0
  10. package/dist/adapters/adapter.d.ts +10 -2
  11. package/dist/adapters/adapter.d.ts.map +1 -1
  12. package/dist/adapters/adapter.js +59 -1
  13. package/dist/adapters/postgres/base.d.ts +9 -4
  14. package/dist/adapters/postgres/base.d.ts.map +1 -1
  15. package/dist/adapters/postgres/base.js +269 -19
  16. package/dist/adapters/postgres/schema.d.ts +249 -105
  17. package/dist/adapters/postgres/schema.d.ts.map +1 -1
  18. package/dist/adapters/postgres/schema.default.d.ts +249 -106
  19. package/dist/adapters/postgres/schema.default.d.ts.map +1 -1
  20. package/dist/adapters/postgres/schema.default.js +2 -2
  21. package/dist/adapters/postgres/schema.js +29 -1
  22. package/dist/adapters/schemas.d.ts +140 -7
  23. package/dist/adapters/schemas.d.ts.map +1 -1
  24. package/dist/adapters/schemas.js +52 -4
  25. package/dist/client.d.ts +8 -1
  26. package/dist/client.d.ts.map +1 -1
  27. package/dist/client.js +28 -0
  28. package/dist/errors.d.ts +6 -0
  29. package/dist/errors.d.ts.map +1 -1
  30. package/dist/errors.js +16 -1
  31. package/dist/index.d.ts +4 -2
  32. package/dist/index.d.ts.map +1 -1
  33. package/dist/index.js +4 -2
  34. package/dist/server.d.ts +220 -16
  35. package/dist/server.d.ts.map +1 -1
  36. package/dist/server.js +123 -8
  37. package/dist/step-manager.d.ts +8 -2
  38. package/dist/step-manager.d.ts.map +1 -1
  39. package/dist/step-manager.js +174 -15
  40. package/dist/telemetry/adapter.d.ts +85 -0
  41. package/dist/telemetry/adapter.d.ts.map +1 -0
  42. package/dist/telemetry/adapter.js +128 -0
  43. package/dist/telemetry/index.d.ts +5 -0
  44. package/dist/telemetry/index.d.ts.map +1 -0
  45. package/dist/telemetry/index.js +4 -0
  46. package/dist/telemetry/local.d.ts +21 -0
  47. package/dist/telemetry/local.d.ts.map +1 -0
  48. package/dist/telemetry/local.js +180 -0
  49. package/dist/telemetry/noop.d.ts +16 -0
  50. package/dist/telemetry/noop.d.ts.map +1 -0
  51. package/dist/telemetry/noop.js +39 -0
  52. package/dist/telemetry/opentelemetry.d.ts +24 -0
  53. package/dist/telemetry/opentelemetry.d.ts.map +1 -0
  54. package/dist/telemetry/opentelemetry.js +202 -0
  55. package/migrations/postgres/20260117231749_clumsy_penance/migration.sql +3 -0
  56. package/migrations/postgres/20260117231749_clumsy_penance/snapshot.json +988 -0
  57. package/migrations/postgres/20260118202533_wealthy_mysterio/migration.sql +24 -0
  58. package/migrations/postgres/20260118202533_wealthy_mysterio/snapshot.json +1362 -0
  59. package/package.json +6 -4
  60. package/src/action-job.ts +35 -0
  61. package/src/action-manager.ts +5 -0
  62. package/src/action.ts +199 -0
  63. package/src/adapters/adapter.ts +151 -0
  64. package/src/adapters/postgres/base.ts +342 -23
  65. package/src/adapters/postgres/schema.default.ts +2 -2
  66. package/src/adapters/postgres/schema.ts +49 -1
  67. package/src/adapters/schemas.ts +81 -5
  68. package/src/client.ts +78 -0
  69. package/src/errors.ts +45 -1
  70. package/src/index.ts +10 -2
  71. package/src/server.ts +163 -8
  72. package/src/step-manager.ts +293 -13
  73. package/src/telemetry/adapter.ts +468 -0
  74. package/src/telemetry/index.ts +17 -0
  75. package/src/telemetry/local.ts +336 -0
  76. package/src/telemetry/noop.ts +95 -0
  77. package/src/telemetry/opentelemetry.ts +310 -0
@@ -0,0 +1,1362 @@
1
+ {
2
+ "version": "8",
3
+ "dialect": "postgres",
4
+ "id": "677e77a4-16f7-4931-a58b-2ca2184ce1be",
5
+ "prevIds": ["4dab3234-6e6b-4a65-a5c5-c898bf2f3911"],
6
+ "ddl": [
7
+ {
8
+ "name": "duron",
9
+ "entityType": "schemas"
10
+ },
11
+ {
12
+ "isRlsEnabled": false,
13
+ "name": "job_steps",
14
+ "entityType": "tables",
15
+ "schema": "duron"
16
+ },
17
+ {
18
+ "isRlsEnabled": false,
19
+ "name": "jobs",
20
+ "entityType": "tables",
21
+ "schema": "duron"
22
+ },
23
+ {
24
+ "isRlsEnabled": false,
25
+ "name": "metrics",
26
+ "entityType": "tables",
27
+ "schema": "duron"
28
+ },
29
+ {
30
+ "type": "uuid",
31
+ "typeSchema": null,
32
+ "notNull": true,
33
+ "dimensions": 0,
34
+ "default": "gen_random_uuid()",
35
+ "generated": null,
36
+ "identity": null,
37
+ "name": "id",
38
+ "entityType": "columns",
39
+ "schema": "duron",
40
+ "table": "job_steps"
41
+ },
42
+ {
43
+ "type": "uuid",
44
+ "typeSchema": null,
45
+ "notNull": true,
46
+ "dimensions": 0,
47
+ "default": null,
48
+ "generated": null,
49
+ "identity": null,
50
+ "name": "job_id",
51
+ "entityType": "columns",
52
+ "schema": "duron",
53
+ "table": "job_steps"
54
+ },
55
+ {
56
+ "type": "uuid",
57
+ "typeSchema": null,
58
+ "notNull": false,
59
+ "dimensions": 0,
60
+ "default": null,
61
+ "generated": null,
62
+ "identity": null,
63
+ "name": "parent_step_id",
64
+ "entityType": "columns",
65
+ "schema": "duron",
66
+ "table": "job_steps"
67
+ },
68
+ {
69
+ "type": "boolean",
70
+ "typeSchema": null,
71
+ "notNull": true,
72
+ "dimensions": 0,
73
+ "default": "false",
74
+ "generated": null,
75
+ "identity": null,
76
+ "name": "branch",
77
+ "entityType": "columns",
78
+ "schema": "duron",
79
+ "table": "job_steps"
80
+ },
81
+ {
82
+ "type": "text",
83
+ "typeSchema": null,
84
+ "notNull": true,
85
+ "dimensions": 0,
86
+ "default": null,
87
+ "generated": null,
88
+ "identity": null,
89
+ "name": "name",
90
+ "entityType": "columns",
91
+ "schema": "duron",
92
+ "table": "job_steps"
93
+ },
94
+ {
95
+ "type": "text",
96
+ "typeSchema": null,
97
+ "notNull": true,
98
+ "dimensions": 0,
99
+ "default": "'active'",
100
+ "generated": null,
101
+ "identity": null,
102
+ "name": "status",
103
+ "entityType": "columns",
104
+ "schema": "duron",
105
+ "table": "job_steps"
106
+ },
107
+ {
108
+ "type": "jsonb",
109
+ "typeSchema": null,
110
+ "notNull": false,
111
+ "dimensions": 0,
112
+ "default": null,
113
+ "generated": null,
114
+ "identity": null,
115
+ "name": "output",
116
+ "entityType": "columns",
117
+ "schema": "duron",
118
+ "table": "job_steps"
119
+ },
120
+ {
121
+ "type": "jsonb",
122
+ "typeSchema": null,
123
+ "notNull": false,
124
+ "dimensions": 0,
125
+ "default": null,
126
+ "generated": null,
127
+ "identity": null,
128
+ "name": "error",
129
+ "entityType": "columns",
130
+ "schema": "duron",
131
+ "table": "job_steps"
132
+ },
133
+ {
134
+ "type": "timestamp with time zone",
135
+ "typeSchema": null,
136
+ "notNull": true,
137
+ "dimensions": 0,
138
+ "default": "now()",
139
+ "generated": null,
140
+ "identity": null,
141
+ "name": "started_at",
142
+ "entityType": "columns",
143
+ "schema": "duron",
144
+ "table": "job_steps"
145
+ },
146
+ {
147
+ "type": "timestamp with time zone",
148
+ "typeSchema": null,
149
+ "notNull": false,
150
+ "dimensions": 0,
151
+ "default": null,
152
+ "generated": null,
153
+ "identity": null,
154
+ "name": "finished_at",
155
+ "entityType": "columns",
156
+ "schema": "duron",
157
+ "table": "job_steps"
158
+ },
159
+ {
160
+ "type": "integer",
161
+ "typeSchema": null,
162
+ "notNull": true,
163
+ "dimensions": 0,
164
+ "default": null,
165
+ "generated": null,
166
+ "identity": null,
167
+ "name": "timeout_ms",
168
+ "entityType": "columns",
169
+ "schema": "duron",
170
+ "table": "job_steps"
171
+ },
172
+ {
173
+ "type": "timestamp with time zone",
174
+ "typeSchema": null,
175
+ "notNull": false,
176
+ "dimensions": 0,
177
+ "default": null,
178
+ "generated": null,
179
+ "identity": null,
180
+ "name": "expires_at",
181
+ "entityType": "columns",
182
+ "schema": "duron",
183
+ "table": "job_steps"
184
+ },
185
+ {
186
+ "type": "integer",
187
+ "typeSchema": null,
188
+ "notNull": true,
189
+ "dimensions": 0,
190
+ "default": "0",
191
+ "generated": null,
192
+ "identity": null,
193
+ "name": "retries_limit",
194
+ "entityType": "columns",
195
+ "schema": "duron",
196
+ "table": "job_steps"
197
+ },
198
+ {
199
+ "type": "integer",
200
+ "typeSchema": null,
201
+ "notNull": true,
202
+ "dimensions": 0,
203
+ "default": "0",
204
+ "generated": null,
205
+ "identity": null,
206
+ "name": "retries_count",
207
+ "entityType": "columns",
208
+ "schema": "duron",
209
+ "table": "job_steps"
210
+ },
211
+ {
212
+ "type": "integer",
213
+ "typeSchema": null,
214
+ "notNull": false,
215
+ "dimensions": 0,
216
+ "default": null,
217
+ "generated": null,
218
+ "identity": null,
219
+ "name": "delayed_ms",
220
+ "entityType": "columns",
221
+ "schema": "duron",
222
+ "table": "job_steps"
223
+ },
224
+ {
225
+ "type": "jsonb",
226
+ "typeSchema": null,
227
+ "notNull": true,
228
+ "dimensions": 0,
229
+ "default": "'{}'",
230
+ "generated": null,
231
+ "identity": null,
232
+ "name": "history_failed_attempts",
233
+ "entityType": "columns",
234
+ "schema": "duron",
235
+ "table": "job_steps"
236
+ },
237
+ {
238
+ "type": "timestamp with time zone",
239
+ "typeSchema": null,
240
+ "notNull": true,
241
+ "dimensions": 0,
242
+ "default": "now()",
243
+ "generated": null,
244
+ "identity": null,
245
+ "name": "created_at",
246
+ "entityType": "columns",
247
+ "schema": "duron",
248
+ "table": "job_steps"
249
+ },
250
+ {
251
+ "type": "timestamp with time zone",
252
+ "typeSchema": null,
253
+ "notNull": true,
254
+ "dimensions": 0,
255
+ "default": "now()",
256
+ "generated": null,
257
+ "identity": null,
258
+ "name": "updated_at",
259
+ "entityType": "columns",
260
+ "schema": "duron",
261
+ "table": "job_steps"
262
+ },
263
+ {
264
+ "type": "uuid",
265
+ "typeSchema": null,
266
+ "notNull": true,
267
+ "dimensions": 0,
268
+ "default": "gen_random_uuid()",
269
+ "generated": null,
270
+ "identity": null,
271
+ "name": "id",
272
+ "entityType": "columns",
273
+ "schema": "duron",
274
+ "table": "jobs"
275
+ },
276
+ {
277
+ "type": "text",
278
+ "typeSchema": null,
279
+ "notNull": true,
280
+ "dimensions": 0,
281
+ "default": null,
282
+ "generated": null,
283
+ "identity": null,
284
+ "name": "action_name",
285
+ "entityType": "columns",
286
+ "schema": "duron",
287
+ "table": "jobs"
288
+ },
289
+ {
290
+ "type": "text",
291
+ "typeSchema": null,
292
+ "notNull": true,
293
+ "dimensions": 0,
294
+ "default": null,
295
+ "generated": null,
296
+ "identity": null,
297
+ "name": "group_key",
298
+ "entityType": "columns",
299
+ "schema": "duron",
300
+ "table": "jobs"
301
+ },
302
+ {
303
+ "type": "text",
304
+ "typeSchema": null,
305
+ "notNull": true,
306
+ "dimensions": 0,
307
+ "default": "'created'",
308
+ "generated": null,
309
+ "identity": null,
310
+ "name": "status",
311
+ "entityType": "columns",
312
+ "schema": "duron",
313
+ "table": "jobs"
314
+ },
315
+ {
316
+ "type": "text",
317
+ "typeSchema": null,
318
+ "notNull": true,
319
+ "dimensions": 0,
320
+ "default": null,
321
+ "generated": null,
322
+ "identity": null,
323
+ "name": "checksum",
324
+ "entityType": "columns",
325
+ "schema": "duron",
326
+ "table": "jobs"
327
+ },
328
+ {
329
+ "type": "jsonb",
330
+ "typeSchema": null,
331
+ "notNull": true,
332
+ "dimensions": 0,
333
+ "default": "'{}'",
334
+ "generated": null,
335
+ "identity": null,
336
+ "name": "input",
337
+ "entityType": "columns",
338
+ "schema": "duron",
339
+ "table": "jobs"
340
+ },
341
+ {
342
+ "type": "jsonb",
343
+ "typeSchema": null,
344
+ "notNull": false,
345
+ "dimensions": 0,
346
+ "default": null,
347
+ "generated": null,
348
+ "identity": null,
349
+ "name": "output",
350
+ "entityType": "columns",
351
+ "schema": "duron",
352
+ "table": "jobs"
353
+ },
354
+ {
355
+ "type": "jsonb",
356
+ "typeSchema": null,
357
+ "notNull": false,
358
+ "dimensions": 0,
359
+ "default": null,
360
+ "generated": null,
361
+ "identity": null,
362
+ "name": "error",
363
+ "entityType": "columns",
364
+ "schema": "duron",
365
+ "table": "jobs"
366
+ },
367
+ {
368
+ "type": "integer",
369
+ "typeSchema": null,
370
+ "notNull": true,
371
+ "dimensions": 0,
372
+ "default": null,
373
+ "generated": null,
374
+ "identity": null,
375
+ "name": "timeout_ms",
376
+ "entityType": "columns",
377
+ "schema": "duron",
378
+ "table": "jobs"
379
+ },
380
+ {
381
+ "type": "timestamp with time zone",
382
+ "typeSchema": null,
383
+ "notNull": false,
384
+ "dimensions": 0,
385
+ "default": null,
386
+ "generated": null,
387
+ "identity": null,
388
+ "name": "expires_at",
389
+ "entityType": "columns",
390
+ "schema": "duron",
391
+ "table": "jobs"
392
+ },
393
+ {
394
+ "type": "timestamp with time zone",
395
+ "typeSchema": null,
396
+ "notNull": false,
397
+ "dimensions": 0,
398
+ "default": null,
399
+ "generated": null,
400
+ "identity": null,
401
+ "name": "started_at",
402
+ "entityType": "columns",
403
+ "schema": "duron",
404
+ "table": "jobs"
405
+ },
406
+ {
407
+ "type": "timestamp with time zone",
408
+ "typeSchema": null,
409
+ "notNull": false,
410
+ "dimensions": 0,
411
+ "default": null,
412
+ "generated": null,
413
+ "identity": null,
414
+ "name": "finished_at",
415
+ "entityType": "columns",
416
+ "schema": "duron",
417
+ "table": "jobs"
418
+ },
419
+ {
420
+ "type": "text",
421
+ "typeSchema": null,
422
+ "notNull": false,
423
+ "dimensions": 0,
424
+ "default": null,
425
+ "generated": null,
426
+ "identity": null,
427
+ "name": "client_id",
428
+ "entityType": "columns",
429
+ "schema": "duron",
430
+ "table": "jobs"
431
+ },
432
+ {
433
+ "type": "integer",
434
+ "typeSchema": null,
435
+ "notNull": true,
436
+ "dimensions": 0,
437
+ "default": "10",
438
+ "generated": null,
439
+ "identity": null,
440
+ "name": "concurrency_limit",
441
+ "entityType": "columns",
442
+ "schema": "duron",
443
+ "table": "jobs"
444
+ },
445
+ {
446
+ "type": "timestamp with time zone",
447
+ "typeSchema": null,
448
+ "notNull": true,
449
+ "dimensions": 0,
450
+ "default": "now()",
451
+ "generated": null,
452
+ "identity": null,
453
+ "name": "created_at",
454
+ "entityType": "columns",
455
+ "schema": "duron",
456
+ "table": "jobs"
457
+ },
458
+ {
459
+ "type": "timestamp with time zone",
460
+ "typeSchema": null,
461
+ "notNull": true,
462
+ "dimensions": 0,
463
+ "default": "now()",
464
+ "generated": null,
465
+ "identity": null,
466
+ "name": "updated_at",
467
+ "entityType": "columns",
468
+ "schema": "duron",
469
+ "table": "jobs"
470
+ },
471
+ {
472
+ "type": "uuid",
473
+ "typeSchema": null,
474
+ "notNull": true,
475
+ "dimensions": 0,
476
+ "default": "gen_random_uuid()",
477
+ "generated": null,
478
+ "identity": null,
479
+ "name": "id",
480
+ "entityType": "columns",
481
+ "schema": "duron",
482
+ "table": "metrics"
483
+ },
484
+ {
485
+ "type": "uuid",
486
+ "typeSchema": null,
487
+ "notNull": true,
488
+ "dimensions": 0,
489
+ "default": null,
490
+ "generated": null,
491
+ "identity": null,
492
+ "name": "job_id",
493
+ "entityType": "columns",
494
+ "schema": "duron",
495
+ "table": "metrics"
496
+ },
497
+ {
498
+ "type": "uuid",
499
+ "typeSchema": null,
500
+ "notNull": false,
501
+ "dimensions": 0,
502
+ "default": null,
503
+ "generated": null,
504
+ "identity": null,
505
+ "name": "step_id",
506
+ "entityType": "columns",
507
+ "schema": "duron",
508
+ "table": "metrics"
509
+ },
510
+ {
511
+ "type": "text",
512
+ "typeSchema": null,
513
+ "notNull": true,
514
+ "dimensions": 0,
515
+ "default": null,
516
+ "generated": null,
517
+ "identity": null,
518
+ "name": "name",
519
+ "entityType": "columns",
520
+ "schema": "duron",
521
+ "table": "metrics"
522
+ },
523
+ {
524
+ "type": "double precision",
525
+ "typeSchema": null,
526
+ "notNull": true,
527
+ "dimensions": 0,
528
+ "default": null,
529
+ "generated": null,
530
+ "identity": null,
531
+ "name": "value",
532
+ "entityType": "columns",
533
+ "schema": "duron",
534
+ "table": "metrics"
535
+ },
536
+ {
537
+ "type": "jsonb",
538
+ "typeSchema": null,
539
+ "notNull": true,
540
+ "dimensions": 0,
541
+ "default": "'{}'",
542
+ "generated": null,
543
+ "identity": null,
544
+ "name": "attributes",
545
+ "entityType": "columns",
546
+ "schema": "duron",
547
+ "table": "metrics"
548
+ },
549
+ {
550
+ "type": "text",
551
+ "typeSchema": null,
552
+ "notNull": true,
553
+ "dimensions": 0,
554
+ "default": null,
555
+ "generated": null,
556
+ "identity": null,
557
+ "name": "type",
558
+ "entityType": "columns",
559
+ "schema": "duron",
560
+ "table": "metrics"
561
+ },
562
+ {
563
+ "type": "timestamp with time zone",
564
+ "typeSchema": null,
565
+ "notNull": true,
566
+ "dimensions": 0,
567
+ "default": "now()",
568
+ "generated": null,
569
+ "identity": null,
570
+ "name": "timestamp",
571
+ "entityType": "columns",
572
+ "schema": "duron",
573
+ "table": "metrics"
574
+ },
575
+ {
576
+ "type": "timestamp with time zone",
577
+ "typeSchema": null,
578
+ "notNull": true,
579
+ "dimensions": 0,
580
+ "default": "now()",
581
+ "generated": null,
582
+ "identity": null,
583
+ "name": "created_at",
584
+ "entityType": "columns",
585
+ "schema": "duron",
586
+ "table": "metrics"
587
+ },
588
+ {
589
+ "nameExplicit": true,
590
+ "columns": [
591
+ {
592
+ "value": "job_id",
593
+ "isExpression": false,
594
+ "asc": true,
595
+ "nullsFirst": false,
596
+ "opclass": null
597
+ }
598
+ ],
599
+ "isUnique": false,
600
+ "where": null,
601
+ "with": "",
602
+ "method": "btree",
603
+ "concurrently": false,
604
+ "name": "idx_job_steps_job_id",
605
+ "entityType": "indexes",
606
+ "schema": "duron",
607
+ "table": "job_steps"
608
+ },
609
+ {
610
+ "nameExplicit": true,
611
+ "columns": [
612
+ {
613
+ "value": "status",
614
+ "isExpression": false,
615
+ "asc": true,
616
+ "nullsFirst": false,
617
+ "opclass": null
618
+ }
619
+ ],
620
+ "isUnique": false,
621
+ "where": null,
622
+ "with": "",
623
+ "method": "btree",
624
+ "concurrently": false,
625
+ "name": "idx_job_steps_status",
626
+ "entityType": "indexes",
627
+ "schema": "duron",
628
+ "table": "job_steps"
629
+ },
630
+ {
631
+ "nameExplicit": true,
632
+ "columns": [
633
+ {
634
+ "value": "name",
635
+ "isExpression": false,
636
+ "asc": true,
637
+ "nullsFirst": false,
638
+ "opclass": null
639
+ }
640
+ ],
641
+ "isUnique": false,
642
+ "where": null,
643
+ "with": "",
644
+ "method": "btree",
645
+ "concurrently": false,
646
+ "name": "idx_job_steps_name",
647
+ "entityType": "indexes",
648
+ "schema": "duron",
649
+ "table": "job_steps"
650
+ },
651
+ {
652
+ "nameExplicit": true,
653
+ "columns": [
654
+ {
655
+ "value": "expires_at",
656
+ "isExpression": false,
657
+ "asc": true,
658
+ "nullsFirst": false,
659
+ "opclass": null
660
+ }
661
+ ],
662
+ "isUnique": false,
663
+ "where": null,
664
+ "with": "",
665
+ "method": "btree",
666
+ "concurrently": false,
667
+ "name": "idx_job_steps_expires_at",
668
+ "entityType": "indexes",
669
+ "schema": "duron",
670
+ "table": "job_steps"
671
+ },
672
+ {
673
+ "nameExplicit": true,
674
+ "columns": [
675
+ {
676
+ "value": "parent_step_id",
677
+ "isExpression": false,
678
+ "asc": true,
679
+ "nullsFirst": false,
680
+ "opclass": null
681
+ }
682
+ ],
683
+ "isUnique": false,
684
+ "where": null,
685
+ "with": "",
686
+ "method": "btree",
687
+ "concurrently": false,
688
+ "name": "idx_job_steps_parent_step_id",
689
+ "entityType": "indexes",
690
+ "schema": "duron",
691
+ "table": "job_steps"
692
+ },
693
+ {
694
+ "nameExplicit": true,
695
+ "columns": [
696
+ {
697
+ "value": "job_id",
698
+ "isExpression": false,
699
+ "asc": true,
700
+ "nullsFirst": false,
701
+ "opclass": null
702
+ },
703
+ {
704
+ "value": "status",
705
+ "isExpression": false,
706
+ "asc": true,
707
+ "nullsFirst": false,
708
+ "opclass": null
709
+ }
710
+ ],
711
+ "isUnique": false,
712
+ "where": null,
713
+ "with": "",
714
+ "method": "btree",
715
+ "concurrently": false,
716
+ "name": "idx_job_steps_job_status",
717
+ "entityType": "indexes",
718
+ "schema": "duron",
719
+ "table": "job_steps"
720
+ },
721
+ {
722
+ "nameExplicit": true,
723
+ "columns": [
724
+ {
725
+ "value": "job_id",
726
+ "isExpression": false,
727
+ "asc": true,
728
+ "nullsFirst": false,
729
+ "opclass": null
730
+ },
731
+ {
732
+ "value": "name",
733
+ "isExpression": false,
734
+ "asc": true,
735
+ "nullsFirst": false,
736
+ "opclass": null
737
+ }
738
+ ],
739
+ "isUnique": false,
740
+ "where": null,
741
+ "with": "",
742
+ "method": "btree",
743
+ "concurrently": false,
744
+ "name": "idx_job_steps_job_name",
745
+ "entityType": "indexes",
746
+ "schema": "duron",
747
+ "table": "job_steps"
748
+ },
749
+ {
750
+ "nameExplicit": true,
751
+ "columns": [
752
+ {
753
+ "value": "to_tsvector('english', \"output\"::text)",
754
+ "isExpression": true,
755
+ "asc": true,
756
+ "nullsFirst": false,
757
+ "opclass": null
758
+ }
759
+ ],
760
+ "isUnique": false,
761
+ "where": null,
762
+ "with": "",
763
+ "method": "gin",
764
+ "concurrently": false,
765
+ "name": "idx_job_steps_output_fts",
766
+ "entityType": "indexes",
767
+ "schema": "duron",
768
+ "table": "job_steps"
769
+ },
770
+ {
771
+ "nameExplicit": true,
772
+ "columns": [
773
+ {
774
+ "value": "action_name",
775
+ "isExpression": false,
776
+ "asc": true,
777
+ "nullsFirst": false,
778
+ "opclass": null
779
+ }
780
+ ],
781
+ "isUnique": false,
782
+ "where": null,
783
+ "with": "",
784
+ "method": "btree",
785
+ "concurrently": false,
786
+ "name": "idx_jobs_action_name",
787
+ "entityType": "indexes",
788
+ "schema": "duron",
789
+ "table": "jobs"
790
+ },
791
+ {
792
+ "nameExplicit": true,
793
+ "columns": [
794
+ {
795
+ "value": "status",
796
+ "isExpression": false,
797
+ "asc": true,
798
+ "nullsFirst": false,
799
+ "opclass": null
800
+ }
801
+ ],
802
+ "isUnique": false,
803
+ "where": null,
804
+ "with": "",
805
+ "method": "btree",
806
+ "concurrently": false,
807
+ "name": "idx_jobs_status",
808
+ "entityType": "indexes",
809
+ "schema": "duron",
810
+ "table": "jobs"
811
+ },
812
+ {
813
+ "nameExplicit": true,
814
+ "columns": [
815
+ {
816
+ "value": "group_key",
817
+ "isExpression": false,
818
+ "asc": true,
819
+ "nullsFirst": false,
820
+ "opclass": null
821
+ }
822
+ ],
823
+ "isUnique": false,
824
+ "where": null,
825
+ "with": "",
826
+ "method": "btree",
827
+ "concurrently": false,
828
+ "name": "idx_jobs_group_key",
829
+ "entityType": "indexes",
830
+ "schema": "duron",
831
+ "table": "jobs"
832
+ },
833
+ {
834
+ "nameExplicit": true,
835
+ "columns": [
836
+ {
837
+ "value": "started_at",
838
+ "isExpression": false,
839
+ "asc": true,
840
+ "nullsFirst": false,
841
+ "opclass": null
842
+ }
843
+ ],
844
+ "isUnique": false,
845
+ "where": null,
846
+ "with": "",
847
+ "method": "btree",
848
+ "concurrently": false,
849
+ "name": "idx_jobs_started_at",
850
+ "entityType": "indexes",
851
+ "schema": "duron",
852
+ "table": "jobs"
853
+ },
854
+ {
855
+ "nameExplicit": true,
856
+ "columns": [
857
+ {
858
+ "value": "finished_at",
859
+ "isExpression": false,
860
+ "asc": true,
861
+ "nullsFirst": false,
862
+ "opclass": null
863
+ }
864
+ ],
865
+ "isUnique": false,
866
+ "where": null,
867
+ "with": "",
868
+ "method": "btree",
869
+ "concurrently": false,
870
+ "name": "idx_jobs_finished_at",
871
+ "entityType": "indexes",
872
+ "schema": "duron",
873
+ "table": "jobs"
874
+ },
875
+ {
876
+ "nameExplicit": true,
877
+ "columns": [
878
+ {
879
+ "value": "expires_at",
880
+ "isExpression": false,
881
+ "asc": true,
882
+ "nullsFirst": false,
883
+ "opclass": null
884
+ }
885
+ ],
886
+ "isUnique": false,
887
+ "where": null,
888
+ "with": "",
889
+ "method": "btree",
890
+ "concurrently": false,
891
+ "name": "idx_jobs_expires_at",
892
+ "entityType": "indexes",
893
+ "schema": "duron",
894
+ "table": "jobs"
895
+ },
896
+ {
897
+ "nameExplicit": true,
898
+ "columns": [
899
+ {
900
+ "value": "client_id",
901
+ "isExpression": false,
902
+ "asc": true,
903
+ "nullsFirst": false,
904
+ "opclass": null
905
+ }
906
+ ],
907
+ "isUnique": false,
908
+ "where": null,
909
+ "with": "",
910
+ "method": "btree",
911
+ "concurrently": false,
912
+ "name": "idx_jobs_client_id",
913
+ "entityType": "indexes",
914
+ "schema": "duron",
915
+ "table": "jobs"
916
+ },
917
+ {
918
+ "nameExplicit": true,
919
+ "columns": [
920
+ {
921
+ "value": "checksum",
922
+ "isExpression": false,
923
+ "asc": true,
924
+ "nullsFirst": false,
925
+ "opclass": null
926
+ }
927
+ ],
928
+ "isUnique": false,
929
+ "where": null,
930
+ "with": "",
931
+ "method": "btree",
932
+ "concurrently": false,
933
+ "name": "idx_jobs_checksum",
934
+ "entityType": "indexes",
935
+ "schema": "duron",
936
+ "table": "jobs"
937
+ },
938
+ {
939
+ "nameExplicit": true,
940
+ "columns": [
941
+ {
942
+ "value": "concurrency_limit",
943
+ "isExpression": false,
944
+ "asc": true,
945
+ "nullsFirst": false,
946
+ "opclass": null
947
+ }
948
+ ],
949
+ "isUnique": false,
950
+ "where": null,
951
+ "with": "",
952
+ "method": "btree",
953
+ "concurrently": false,
954
+ "name": "idx_jobs_concurrency_limit",
955
+ "entityType": "indexes",
956
+ "schema": "duron",
957
+ "table": "jobs"
958
+ },
959
+ {
960
+ "nameExplicit": true,
961
+ "columns": [
962
+ {
963
+ "value": "action_name",
964
+ "isExpression": false,
965
+ "asc": true,
966
+ "nullsFirst": false,
967
+ "opclass": null
968
+ },
969
+ {
970
+ "value": "status",
971
+ "isExpression": false,
972
+ "asc": true,
973
+ "nullsFirst": false,
974
+ "opclass": null
975
+ }
976
+ ],
977
+ "isUnique": false,
978
+ "where": null,
979
+ "with": "",
980
+ "method": "btree",
981
+ "concurrently": false,
982
+ "name": "idx_jobs_action_status",
983
+ "entityType": "indexes",
984
+ "schema": "duron",
985
+ "table": "jobs"
986
+ },
987
+ {
988
+ "nameExplicit": true,
989
+ "columns": [
990
+ {
991
+ "value": "action_name",
992
+ "isExpression": false,
993
+ "asc": true,
994
+ "nullsFirst": false,
995
+ "opclass": null
996
+ },
997
+ {
998
+ "value": "group_key",
999
+ "isExpression": false,
1000
+ "asc": true,
1001
+ "nullsFirst": false,
1002
+ "opclass": null
1003
+ }
1004
+ ],
1005
+ "isUnique": false,
1006
+ "where": null,
1007
+ "with": "",
1008
+ "method": "btree",
1009
+ "concurrently": false,
1010
+ "name": "idx_jobs_action_group",
1011
+ "entityType": "indexes",
1012
+ "schema": "duron",
1013
+ "table": "jobs"
1014
+ },
1015
+ {
1016
+ "nameExplicit": true,
1017
+ "columns": [
1018
+ {
1019
+ "value": "to_tsvector('english', \"input\"::text)",
1020
+ "isExpression": true,
1021
+ "asc": true,
1022
+ "nullsFirst": false,
1023
+ "opclass": null
1024
+ }
1025
+ ],
1026
+ "isUnique": false,
1027
+ "where": null,
1028
+ "with": "",
1029
+ "method": "gin",
1030
+ "concurrently": false,
1031
+ "name": "idx_jobs_input_fts",
1032
+ "entityType": "indexes",
1033
+ "schema": "duron",
1034
+ "table": "jobs"
1035
+ },
1036
+ {
1037
+ "nameExplicit": true,
1038
+ "columns": [
1039
+ {
1040
+ "value": "to_tsvector('english', \"output\"::text)",
1041
+ "isExpression": true,
1042
+ "asc": true,
1043
+ "nullsFirst": false,
1044
+ "opclass": null
1045
+ }
1046
+ ],
1047
+ "isUnique": false,
1048
+ "where": null,
1049
+ "with": "",
1050
+ "method": "gin",
1051
+ "concurrently": false,
1052
+ "name": "idx_jobs_output_fts",
1053
+ "entityType": "indexes",
1054
+ "schema": "duron",
1055
+ "table": "jobs"
1056
+ },
1057
+ {
1058
+ "nameExplicit": true,
1059
+ "columns": [
1060
+ {
1061
+ "value": "job_id",
1062
+ "isExpression": false,
1063
+ "asc": true,
1064
+ "nullsFirst": false,
1065
+ "opclass": null
1066
+ }
1067
+ ],
1068
+ "isUnique": false,
1069
+ "where": null,
1070
+ "with": "",
1071
+ "method": "btree",
1072
+ "concurrently": false,
1073
+ "name": "idx_metrics_job_id",
1074
+ "entityType": "indexes",
1075
+ "schema": "duron",
1076
+ "table": "metrics"
1077
+ },
1078
+ {
1079
+ "nameExplicit": true,
1080
+ "columns": [
1081
+ {
1082
+ "value": "step_id",
1083
+ "isExpression": false,
1084
+ "asc": true,
1085
+ "nullsFirst": false,
1086
+ "opclass": null
1087
+ }
1088
+ ],
1089
+ "isUnique": false,
1090
+ "where": null,
1091
+ "with": "",
1092
+ "method": "btree",
1093
+ "concurrently": false,
1094
+ "name": "idx_metrics_step_id",
1095
+ "entityType": "indexes",
1096
+ "schema": "duron",
1097
+ "table": "metrics"
1098
+ },
1099
+ {
1100
+ "nameExplicit": true,
1101
+ "columns": [
1102
+ {
1103
+ "value": "name",
1104
+ "isExpression": false,
1105
+ "asc": true,
1106
+ "nullsFirst": false,
1107
+ "opclass": null
1108
+ }
1109
+ ],
1110
+ "isUnique": false,
1111
+ "where": null,
1112
+ "with": "",
1113
+ "method": "btree",
1114
+ "concurrently": false,
1115
+ "name": "idx_metrics_name",
1116
+ "entityType": "indexes",
1117
+ "schema": "duron",
1118
+ "table": "metrics"
1119
+ },
1120
+ {
1121
+ "nameExplicit": true,
1122
+ "columns": [
1123
+ {
1124
+ "value": "type",
1125
+ "isExpression": false,
1126
+ "asc": true,
1127
+ "nullsFirst": false,
1128
+ "opclass": null
1129
+ }
1130
+ ],
1131
+ "isUnique": false,
1132
+ "where": null,
1133
+ "with": "",
1134
+ "method": "btree",
1135
+ "concurrently": false,
1136
+ "name": "idx_metrics_type",
1137
+ "entityType": "indexes",
1138
+ "schema": "duron",
1139
+ "table": "metrics"
1140
+ },
1141
+ {
1142
+ "nameExplicit": true,
1143
+ "columns": [
1144
+ {
1145
+ "value": "timestamp",
1146
+ "isExpression": false,
1147
+ "asc": true,
1148
+ "nullsFirst": false,
1149
+ "opclass": null
1150
+ }
1151
+ ],
1152
+ "isUnique": false,
1153
+ "where": null,
1154
+ "with": "",
1155
+ "method": "btree",
1156
+ "concurrently": false,
1157
+ "name": "idx_metrics_timestamp",
1158
+ "entityType": "indexes",
1159
+ "schema": "duron",
1160
+ "table": "metrics"
1161
+ },
1162
+ {
1163
+ "nameExplicit": true,
1164
+ "columns": [
1165
+ {
1166
+ "value": "job_id",
1167
+ "isExpression": false,
1168
+ "asc": true,
1169
+ "nullsFirst": false,
1170
+ "opclass": null
1171
+ },
1172
+ {
1173
+ "value": "step_id",
1174
+ "isExpression": false,
1175
+ "asc": true,
1176
+ "nullsFirst": false,
1177
+ "opclass": null
1178
+ }
1179
+ ],
1180
+ "isUnique": false,
1181
+ "where": null,
1182
+ "with": "",
1183
+ "method": "btree",
1184
+ "concurrently": false,
1185
+ "name": "idx_metrics_job_step",
1186
+ "entityType": "indexes",
1187
+ "schema": "duron",
1188
+ "table": "metrics"
1189
+ },
1190
+ {
1191
+ "nameExplicit": true,
1192
+ "columns": [
1193
+ {
1194
+ "value": "job_id",
1195
+ "isExpression": false,
1196
+ "asc": true,
1197
+ "nullsFirst": false,
1198
+ "opclass": null
1199
+ },
1200
+ {
1201
+ "value": "name",
1202
+ "isExpression": false,
1203
+ "asc": true,
1204
+ "nullsFirst": false,
1205
+ "opclass": null
1206
+ }
1207
+ ],
1208
+ "isUnique": false,
1209
+ "where": null,
1210
+ "with": "",
1211
+ "method": "btree",
1212
+ "concurrently": false,
1213
+ "name": "idx_metrics_job_name",
1214
+ "entityType": "indexes",
1215
+ "schema": "duron",
1216
+ "table": "metrics"
1217
+ },
1218
+ {
1219
+ "nameExplicit": true,
1220
+ "columns": [
1221
+ {
1222
+ "value": "job_id",
1223
+ "isExpression": false,
1224
+ "asc": true,
1225
+ "nullsFirst": false,
1226
+ "opclass": null
1227
+ },
1228
+ {
1229
+ "value": "type",
1230
+ "isExpression": false,
1231
+ "asc": true,
1232
+ "nullsFirst": false,
1233
+ "opclass": null
1234
+ }
1235
+ ],
1236
+ "isUnique": false,
1237
+ "where": null,
1238
+ "with": "",
1239
+ "method": "btree",
1240
+ "concurrently": false,
1241
+ "name": "idx_metrics_job_type",
1242
+ "entityType": "indexes",
1243
+ "schema": "duron",
1244
+ "table": "metrics"
1245
+ },
1246
+ {
1247
+ "nameExplicit": true,
1248
+ "columns": [
1249
+ {
1250
+ "value": "attributes",
1251
+ "isExpression": false,
1252
+ "asc": true,
1253
+ "nullsFirst": false,
1254
+ "opclass": null
1255
+ }
1256
+ ],
1257
+ "isUnique": false,
1258
+ "where": null,
1259
+ "with": "",
1260
+ "method": "gin",
1261
+ "concurrently": false,
1262
+ "name": "idx_metrics_attributes",
1263
+ "entityType": "indexes",
1264
+ "schema": "duron",
1265
+ "table": "metrics"
1266
+ },
1267
+ {
1268
+ "nameExplicit": false,
1269
+ "columns": ["job_id"],
1270
+ "schemaTo": "duron",
1271
+ "tableTo": "jobs",
1272
+ "columnsTo": ["id"],
1273
+ "onUpdate": "NO ACTION",
1274
+ "onDelete": "CASCADE",
1275
+ "name": "job_steps_job_id_jobs_id_fkey",
1276
+ "entityType": "fks",
1277
+ "schema": "duron",
1278
+ "table": "job_steps"
1279
+ },
1280
+ {
1281
+ "nameExplicit": false,
1282
+ "columns": ["job_id"],
1283
+ "schemaTo": "duron",
1284
+ "tableTo": "jobs",
1285
+ "columnsTo": ["id"],
1286
+ "onUpdate": "NO ACTION",
1287
+ "onDelete": "CASCADE",
1288
+ "name": "metrics_job_id_jobs_id_fkey",
1289
+ "entityType": "fks",
1290
+ "schema": "duron",
1291
+ "table": "metrics"
1292
+ },
1293
+ {
1294
+ "nameExplicit": false,
1295
+ "columns": ["step_id"],
1296
+ "schemaTo": "duron",
1297
+ "tableTo": "job_steps",
1298
+ "columnsTo": ["id"],
1299
+ "onUpdate": "NO ACTION",
1300
+ "onDelete": "CASCADE",
1301
+ "name": "metrics_step_id_job_steps_id_fkey",
1302
+ "entityType": "fks",
1303
+ "schema": "duron",
1304
+ "table": "metrics"
1305
+ },
1306
+ {
1307
+ "columns": ["id"],
1308
+ "nameExplicit": false,
1309
+ "name": "job_steps_pkey",
1310
+ "schema": "duron",
1311
+ "table": "job_steps",
1312
+ "entityType": "pks"
1313
+ },
1314
+ {
1315
+ "columns": ["id"],
1316
+ "nameExplicit": false,
1317
+ "name": "jobs_pkey",
1318
+ "schema": "duron",
1319
+ "table": "jobs",
1320
+ "entityType": "pks"
1321
+ },
1322
+ {
1323
+ "columns": ["id"],
1324
+ "nameExplicit": false,
1325
+ "name": "metrics_pkey",
1326
+ "schema": "duron",
1327
+ "table": "metrics",
1328
+ "entityType": "pks"
1329
+ },
1330
+ {
1331
+ "nameExplicit": true,
1332
+ "columns": ["job_id", "name"],
1333
+ "nullsNotDistinct": false,
1334
+ "name": "unique_job_step_name",
1335
+ "entityType": "uniques",
1336
+ "schema": "duron",
1337
+ "table": "job_steps"
1338
+ },
1339
+ {
1340
+ "value": "\"status\" IN ('active','completed','failed','cancelled')",
1341
+ "name": "job_steps_status_check",
1342
+ "entityType": "checks",
1343
+ "schema": "duron",
1344
+ "table": "job_steps"
1345
+ },
1346
+ {
1347
+ "value": "\"status\" IN ('created','active','completed','failed','cancelled')",
1348
+ "name": "jobs_status_check",
1349
+ "entityType": "checks",
1350
+ "schema": "duron",
1351
+ "table": "jobs"
1352
+ },
1353
+ {
1354
+ "value": "\"type\" IN ('metric', 'span_event', 'span_attribute')",
1355
+ "name": "metrics_type_check",
1356
+ "entityType": "checks",
1357
+ "schema": "duron",
1358
+ "table": "metrics"
1359
+ }
1360
+ ],
1361
+ "renames": []
1362
+ }