@sentry/junior 0.261.0 → 0.262.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/dist/{adapter-Bx_1B2De.js → adapter-t-Y9RHML.js} +2 -2
  2. package/dist/{admin-BAbbVgVc.js → admin-BCqeFndQ.js} +1 -1
  3. package/dist/{agent-hooks-ghyZZQqB.js → agent-hooks-9q2zdKHL.js} +63 -14
  4. package/dist/{agent-invocations-Qfz7dWgU.js → agent-invocations-CxKldAeB.js} +1 -0
  5. package/dist/{agent-runner-g110-xgg.js → agent-runner-Cx6NO5LE.js} +112 -35
  6. package/dist/api/schema.js +1 -1
  7. package/dist/api.js +31 -28
  8. package/dist/{app-VCiPQ65Q.d.ts → app-Bo0kB987.d.ts} +1 -1
  9. package/dist/app.d.ts +1 -1
  10. package/dist/app.js +52 -59
  11. package/dist/{assistant-reply-CQcMaWNL.js → assistant-reply-B2qUBAwL.js} +1 -1
  12. package/dist/{briefs-CKcfrIQL.js → briefs-DsGH2Vym.js} +2 -2
  13. package/dist/{catalog-runtime-cd60vzAB.js → catalog-runtime-CfwKT0sn.js} +1 -1
  14. package/dist/cli/chat.js +15 -17
  15. package/dist/cli/check.js +3 -3
  16. package/dist/cli/main.js +3 -3
  17. package/dist/cli/plugins.js +4 -4
  18. package/dist/cli/snapshot-create.js +4 -4
  19. package/dist/cli/upgrade.js +3 -3
  20. package/dist/{client-2i0JJpoC.js → client-DpfjZgNk.js} +2 -2
  21. package/dist/{config-C9qM41O0.js → config-BiCtNiu5.js} +2 -2
  22. package/dist/{connections-DrtTrwkp.js → connections-D9IKbfk-.js} +10 -10
  23. package/dist/{conversation-privacy-1iTiFX1O.js → conversation-privacy-CBUI0frD.js} +1 -1
  24. package/dist/{credential-sync-wKNQ1dYc.js → credential-sync-Bu6ZOuOk.js} +14 -14
  25. package/dist/{executor-Rimyj8HZ.js → executor-O8xqLDN6.js} +4 -3
  26. package/dist/{images-D1JggcVY.js → images-AM1exvU0.js} +2 -2
  27. package/dist/instrumentation.js +2 -2
  28. package/dist/{job-queue-BjQdSqA3.js → job-queue-DmarAQGI.js} +1 -1
  29. package/dist/{logging-BLTa7R7f.js → logging-dZN1Bvtu.js} +1 -1
  30. package/dist/{message-DAeP5WWW.js → message-C_g2S8kv.js} +3 -3
  31. package/dist/nitro.d.ts +1 -1
  32. package/dist/nitro.js +3 -3
  33. package/dist/{oauth-callback-server-BAy1hhF1.js → oauth-callback-server-DvvOvr4q.js} +2 -2
  34. package/dist/{profile-CthM2qFM.js → profile-BP2N5uDY.js} +13 -6
  35. package/dist/{registry-BnSaArNb.js → registry-BUje_knT.js} +1 -1
  36. package/dist/{resolve-B5eLRl0v.js → resolve-DftZiYNU.js} +4 -4
  37. package/dist/{result-Cvm0GZCv.js → result-CRMRT9CE.js} +16 -11
  38. package/dist/{runner-D-pUzHbU.js → runner-4mmL2Pt1.js} +10 -10
  39. package/dist/{sandbox-egress-signals-mvwGV7rl.js → sandbox-egress-signals-1ysv0z5A.js} +1 -1
  40. package/dist/{schema-OzL8Zw4H.js → schema-XuTZukI9.js} +1 -1
  41. package/dist/{service-account-DWxvpSfd.js → service-account-B1sH3P7d.js} +3 -3
  42. package/dist/{service-account-Ch1uIpnR.js → service-account-Del2I_x3.js} +3 -3
  43. package/dist/{session-stop-Boj_zpTa.js → session-stop-ZuyOHxdK.js} +11 -11
  44. package/dist/{skills-BpdYCfFt.js → skills-lPeepA2b.js} +2 -2
  45. package/dist/{spawn-h1DJMQTf.js → spawn-DovpdlrW.js} +3 -2
  46. package/dist/{store-B6KqcdCQ.js → store-dZynGGFW.js} +6 -6
  47. package/dist/{task-queue-BaDwKSYv.js → task-queue-CmMCtzHO.js} +3 -3
  48. package/dist/{task-runner-BAX5li9a.js → task-runner-BRgJ5e0s.js} +19 -11
  49. package/dist/{tasks-uCfmlWga.js → tasks-Bh2qYaed.js} +15 -24
  50. package/dist/{thread-state-BJHVIz8G.js → thread-state-DA37FsAT.js} +5 -5
  51. package/dist/{turn-failure-response-CCC76P6-.js → turn-failure-response-BLcscQ-f.js} +7 -7
  52. package/dist/{turn-lifecycle-pHSESVR9.js → turn-lifecycle-D0e887FM.js} +1 -1
  53. package/dist/{turn-session-routing-BIKJZaiw.js → turn-session-routing-DdbSbJS6.js} +1 -1
  54. package/dist/{validation-B9KL_5Wc.js → validation-DtcovXqq.js} +1 -1
  55. package/dist/{version-CN9BXMW_.js → version-JcDaJ75p.js} +1 -1
  56. package/dist/version.js +1 -1
  57. package/dist/{viewer-C5xFaYVi.js → viewer-oMTUVAcR.js} +4 -4
  58. package/dist/{web-input-D6eqfXYd.js → web-input-FQ5wgqYn.js} +26 -26
  59. package/dist/{work-C-ecZAme.js → work-BiIKfayl.js} +40 -10
  60. package/dist/{worker-BpYDqiOf.js → worker-BZ7l75NM.js} +5 -5
  61. package/migrations/0062_plugin_report_index.sql +20 -0
  62. package/migrations/0063_agent_invocation_type.sql +1 -0
  63. package/migrations/meta/0062_snapshot.json +3499 -0
  64. package/migrations/meta/0063_snapshot.json +3505 -0
  65. package/migrations/meta/_journal.json +14 -0
  66. package/package.json +5 -5
@@ -0,0 +1,3499 @@
1
+ {
2
+ "id": "894b7102-5ab1-47d8-9b36-8cb377781910",
3
+ "prevId": "0f399a3e-7d45-47fd-a8ea-531f2a310588",
4
+ "version": "7",
5
+ "dialect": "postgresql",
6
+ "tables": {
7
+ "public.junior_agent_bindings": {
8
+ "name": "junior_agent_bindings",
9
+ "schema": "",
10
+ "columns": {
11
+ "parent_conversation_id": {
12
+ "name": "parent_conversation_id",
13
+ "type": "text",
14
+ "primaryKey": false,
15
+ "notNull": true
16
+ },
17
+ "name": {
18
+ "name": "name",
19
+ "type": "text",
20
+ "primaryKey": false,
21
+ "notNull": true
22
+ },
23
+ "child_conversation_id": {
24
+ "name": "child_conversation_id",
25
+ "type": "text",
26
+ "primaryKey": false,
27
+ "notNull": true
28
+ }
29
+ },
30
+ "indexes": {
31
+ "junior_agent_bindings_child_idx": {
32
+ "name": "junior_agent_bindings_child_idx",
33
+ "columns": [
34
+ {
35
+ "expression": "child_conversation_id",
36
+ "isExpression": false,
37
+ "asc": true,
38
+ "nulls": "last"
39
+ }
40
+ ],
41
+ "isUnique": true,
42
+ "concurrently": false,
43
+ "method": "btree",
44
+ "with": {}
45
+ }
46
+ },
47
+ "foreignKeys": {
48
+ "junior_agent_bindings_parent_conversation_id_junior_conversations_conversation_id_fk": {
49
+ "name": "junior_agent_bindings_parent_conversation_id_junior_conversations_conversation_id_fk",
50
+ "tableFrom": "junior_agent_bindings",
51
+ "tableTo": "junior_conversations",
52
+ "columnsFrom": ["parent_conversation_id"],
53
+ "columnsTo": ["conversation_id"],
54
+ "onDelete": "no action",
55
+ "onUpdate": "no action"
56
+ },
57
+ "junior_agent_bindings_child_conversation_id_junior_conversations_conversation_id_fk": {
58
+ "name": "junior_agent_bindings_child_conversation_id_junior_conversations_conversation_id_fk",
59
+ "tableFrom": "junior_agent_bindings",
60
+ "tableTo": "junior_conversations",
61
+ "columnsFrom": ["child_conversation_id"],
62
+ "columnsTo": ["conversation_id"],
63
+ "onDelete": "no action",
64
+ "onUpdate": "no action"
65
+ }
66
+ },
67
+ "compositePrimaryKeys": {
68
+ "junior_agent_bindings_parent_conversation_id_name_pk": {
69
+ "name": "junior_agent_bindings_parent_conversation_id_name_pk",
70
+ "columns": ["parent_conversation_id", "name"]
71
+ }
72
+ },
73
+ "uniqueConstraints": {},
74
+ "policies": {},
75
+ "checkConstraints": {},
76
+ "isRLSEnabled": false
77
+ },
78
+ "public.junior_agent_invocations": {
79
+ "name": "junior_agent_invocations",
80
+ "schema": "",
81
+ "columns": {
82
+ "invocation_id": {
83
+ "name": "invocation_id",
84
+ "type": "text",
85
+ "primaryKey": true,
86
+ "notNull": true
87
+ },
88
+ "parent_conversation_id": {
89
+ "name": "parent_conversation_id",
90
+ "type": "text",
91
+ "primaryKey": false,
92
+ "notNull": true
93
+ },
94
+ "child_conversation_id": {
95
+ "name": "child_conversation_id",
96
+ "type": "text",
97
+ "primaryKey": false,
98
+ "notNull": true
99
+ },
100
+ "agent_name": {
101
+ "name": "agent_name",
102
+ "type": "text",
103
+ "primaryKey": false,
104
+ "notNull": false
105
+ },
106
+ "input": {
107
+ "name": "input",
108
+ "type": "text",
109
+ "primaryKey": false,
110
+ "notNull": true
111
+ },
112
+ "title": {
113
+ "name": "title",
114
+ "type": "text",
115
+ "primaryKey": false,
116
+ "notNull": false
117
+ },
118
+ "actor_json": {
119
+ "name": "actor_json",
120
+ "type": "jsonb",
121
+ "primaryKey": false,
122
+ "notNull": true
123
+ },
124
+ "credential_context_json": {
125
+ "name": "credential_context_json",
126
+ "type": "jsonb",
127
+ "primaryKey": false,
128
+ "notNull": false
129
+ },
130
+ "source_json": {
131
+ "name": "source_json",
132
+ "type": "jsonb",
133
+ "primaryKey": false,
134
+ "notNull": true
135
+ },
136
+ "destination_json": {
137
+ "name": "destination_json",
138
+ "type": "jsonb",
139
+ "primaryKey": false,
140
+ "notNull": true
141
+ },
142
+ "destination_visibility": {
143
+ "name": "destination_visibility",
144
+ "type": "text",
145
+ "primaryKey": false,
146
+ "notNull": false
147
+ },
148
+ "model_profile": {
149
+ "name": "model_profile",
150
+ "type": "text",
151
+ "primaryKey": false,
152
+ "notNull": false
153
+ },
154
+ "reasoning_level": {
155
+ "name": "reasoning_level",
156
+ "type": "text",
157
+ "primaryKey": false,
158
+ "notNull": false
159
+ },
160
+ "parent_tool_call_id": {
161
+ "name": "parent_tool_call_id",
162
+ "type": "text",
163
+ "primaryKey": false,
164
+ "notNull": false
165
+ },
166
+ "status": {
167
+ "name": "status",
168
+ "type": "text",
169
+ "primaryKey": false,
170
+ "notNull": true
171
+ },
172
+ "mailbox_status": {
173
+ "name": "mailbox_status",
174
+ "type": "text",
175
+ "primaryKey": false,
176
+ "notNull": true
177
+ },
178
+ "parent_mailbox_status": {
179
+ "name": "parent_mailbox_status",
180
+ "type": "text",
181
+ "primaryKey": false,
182
+ "notNull": false
183
+ },
184
+ "result": {
185
+ "name": "result",
186
+ "type": "text",
187
+ "primaryKey": false,
188
+ "notNull": false
189
+ },
190
+ "error_message": {
191
+ "name": "error_message",
192
+ "type": "text",
193
+ "primaryKey": false,
194
+ "notNull": false
195
+ },
196
+ "created_at": {
197
+ "name": "created_at",
198
+ "type": "timestamp with time zone",
199
+ "primaryKey": false,
200
+ "notNull": true
201
+ },
202
+ "updated_at": {
203
+ "name": "updated_at",
204
+ "type": "timestamp with time zone",
205
+ "primaryKey": false,
206
+ "notNull": true
207
+ },
208
+ "terminal_at": {
209
+ "name": "terminal_at",
210
+ "type": "timestamp with time zone",
211
+ "primaryKey": false,
212
+ "notNull": false
213
+ }
214
+ },
215
+ "indexes": {
216
+ "junior_agent_invocations_child_idx": {
217
+ "name": "junior_agent_invocations_child_idx",
218
+ "columns": [
219
+ {
220
+ "expression": "child_conversation_id",
221
+ "isExpression": false,
222
+ "asc": true,
223
+ "nulls": "last"
224
+ }
225
+ ],
226
+ "isUnique": false,
227
+ "concurrently": false,
228
+ "method": "btree",
229
+ "with": {}
230
+ },
231
+ "junior_agent_invocations_mailbox_idx": {
232
+ "name": "junior_agent_invocations_mailbox_idx",
233
+ "columns": [
234
+ {
235
+ "expression": "mailbox_status",
236
+ "isExpression": false,
237
+ "asc": true,
238
+ "nulls": "last"
239
+ },
240
+ {
241
+ "expression": "created_at",
242
+ "isExpression": false,
243
+ "asc": true,
244
+ "nulls": "last"
245
+ }
246
+ ],
247
+ "isUnique": false,
248
+ "concurrently": false,
249
+ "method": "btree",
250
+ "with": {}
251
+ },
252
+ "junior_agent_invocations_parent_mailbox_idx": {
253
+ "name": "junior_agent_invocations_parent_mailbox_idx",
254
+ "columns": [
255
+ {
256
+ "expression": "parent_mailbox_status",
257
+ "isExpression": false,
258
+ "asc": true,
259
+ "nulls": "last"
260
+ },
261
+ {
262
+ "expression": "terminal_at",
263
+ "isExpression": false,
264
+ "asc": true,
265
+ "nulls": "last"
266
+ }
267
+ ],
268
+ "isUnique": false,
269
+ "concurrently": false,
270
+ "method": "btree",
271
+ "with": {}
272
+ }
273
+ },
274
+ "foreignKeys": {
275
+ "junior_agent_invocations_parent_conversation_id_junior_conversations_conversation_id_fk": {
276
+ "name": "junior_agent_invocations_parent_conversation_id_junior_conversations_conversation_id_fk",
277
+ "tableFrom": "junior_agent_invocations",
278
+ "tableTo": "junior_conversations",
279
+ "columnsFrom": ["parent_conversation_id"],
280
+ "columnsTo": ["conversation_id"],
281
+ "onDelete": "no action",
282
+ "onUpdate": "no action"
283
+ },
284
+ "junior_agent_invocations_child_conversation_id_junior_conversations_conversation_id_fk": {
285
+ "name": "junior_agent_invocations_child_conversation_id_junior_conversations_conversation_id_fk",
286
+ "tableFrom": "junior_agent_invocations",
287
+ "tableTo": "junior_conversations",
288
+ "columnsFrom": ["child_conversation_id"],
289
+ "columnsTo": ["conversation_id"],
290
+ "onDelete": "no action",
291
+ "onUpdate": "no action"
292
+ }
293
+ },
294
+ "compositePrimaryKeys": {},
295
+ "uniqueConstraints": {},
296
+ "policies": {},
297
+ "checkConstraints": {},
298
+ "isRLSEnabled": false
299
+ },
300
+ "public.junior_api_tokens": {
301
+ "name": "junior_api_tokens",
302
+ "schema": "",
303
+ "columns": {
304
+ "id": {
305
+ "name": "id",
306
+ "type": "text",
307
+ "primaryKey": true,
308
+ "notNull": true
309
+ },
310
+ "owner_email_normalized": {
311
+ "name": "owner_email_normalized",
312
+ "type": "text",
313
+ "primaryKey": false,
314
+ "notNull": true
315
+ },
316
+ "name": {
317
+ "name": "name",
318
+ "type": "text",
319
+ "primaryKey": false,
320
+ "notNull": true
321
+ },
322
+ "token_hash": {
323
+ "name": "token_hash",
324
+ "type": "text",
325
+ "primaryKey": false,
326
+ "notNull": true
327
+ },
328
+ "token_suffix": {
329
+ "name": "token_suffix",
330
+ "type": "text",
331
+ "primaryKey": false,
332
+ "notNull": true
333
+ },
334
+ "created_at": {
335
+ "name": "created_at",
336
+ "type": "timestamp with time zone",
337
+ "primaryKey": false,
338
+ "notNull": true
339
+ },
340
+ "expires_at": {
341
+ "name": "expires_at",
342
+ "type": "timestamp with time zone",
343
+ "primaryKey": false,
344
+ "notNull": true
345
+ },
346
+ "last_used_at": {
347
+ "name": "last_used_at",
348
+ "type": "timestamp with time zone",
349
+ "primaryKey": false,
350
+ "notNull": false
351
+ },
352
+ "revoked_at": {
353
+ "name": "revoked_at",
354
+ "type": "timestamp with time zone",
355
+ "primaryKey": false,
356
+ "notNull": false
357
+ }
358
+ },
359
+ "indexes": {
360
+ "junior_api_tokens_token_hash_uidx": {
361
+ "name": "junior_api_tokens_token_hash_uidx",
362
+ "columns": [
363
+ {
364
+ "expression": "token_hash",
365
+ "isExpression": false,
366
+ "asc": true,
367
+ "nulls": "last"
368
+ }
369
+ ],
370
+ "isUnique": true,
371
+ "concurrently": false,
372
+ "method": "btree",
373
+ "with": {}
374
+ },
375
+ "junior_api_tokens_owner_email_idx": {
376
+ "name": "junior_api_tokens_owner_email_idx",
377
+ "columns": [
378
+ {
379
+ "expression": "owner_email_normalized",
380
+ "isExpression": false,
381
+ "asc": true,
382
+ "nulls": "last"
383
+ }
384
+ ],
385
+ "isUnique": false,
386
+ "concurrently": false,
387
+ "method": "btree",
388
+ "with": {}
389
+ }
390
+ },
391
+ "foreignKeys": {},
392
+ "compositePrimaryKeys": {},
393
+ "uniqueConstraints": {},
394
+ "policies": {},
395
+ "checkConstraints": {},
396
+ "isRLSEnabled": false
397
+ },
398
+ "public.junior_artifacts": {
399
+ "name": "junior_artifacts",
400
+ "schema": "",
401
+ "columns": {
402
+ "id": {
403
+ "name": "id",
404
+ "type": "text",
405
+ "primaryKey": true,
406
+ "notNull": true
407
+ },
408
+ "conversation_id": {
409
+ "name": "conversation_id",
410
+ "type": "text",
411
+ "primaryKey": false,
412
+ "notNull": true
413
+ },
414
+ "sha256": {
415
+ "name": "sha256",
416
+ "type": "text",
417
+ "primaryKey": false,
418
+ "notNull": true
419
+ },
420
+ "ext": {
421
+ "name": "ext",
422
+ "type": "text",
423
+ "primaryKey": false,
424
+ "notNull": true
425
+ },
426
+ "storage_key": {
427
+ "name": "storage_key",
428
+ "type": "text",
429
+ "primaryKey": false,
430
+ "notNull": true
431
+ },
432
+ "content_type": {
433
+ "name": "content_type",
434
+ "type": "text",
435
+ "primaryKey": false,
436
+ "notNull": true
437
+ },
438
+ "bytes": {
439
+ "name": "bytes",
440
+ "type": "integer",
441
+ "primaryKey": false,
442
+ "notNull": true
443
+ },
444
+ "public": {
445
+ "name": "public",
446
+ "type": "boolean",
447
+ "primaryKey": false,
448
+ "notNull": true
449
+ },
450
+ "created_at": {
451
+ "name": "created_at",
452
+ "type": "timestamp with time zone",
453
+ "primaryKey": false,
454
+ "notNull": true
455
+ },
456
+ "delete_requested_at": {
457
+ "name": "delete_requested_at",
458
+ "type": "timestamp with time zone",
459
+ "primaryKey": false,
460
+ "notNull": false
461
+ }
462
+ },
463
+ "indexes": {
464
+ "junior_artifacts_conversation_sha_uidx": {
465
+ "name": "junior_artifacts_conversation_sha_uidx",
466
+ "columns": [
467
+ {
468
+ "expression": "conversation_id",
469
+ "isExpression": false,
470
+ "asc": true,
471
+ "nulls": "last"
472
+ },
473
+ {
474
+ "expression": "sha256",
475
+ "isExpression": false,
476
+ "asc": true,
477
+ "nulls": "last"
478
+ }
479
+ ],
480
+ "isUnique": true,
481
+ "concurrently": false,
482
+ "method": "btree",
483
+ "with": {}
484
+ },
485
+ "junior_artifacts_gc_idx": {
486
+ "name": "junior_artifacts_gc_idx",
487
+ "columns": [
488
+ {
489
+ "expression": "delete_requested_at",
490
+ "isExpression": false,
491
+ "asc": true,
492
+ "nulls": "last"
493
+ },
494
+ {
495
+ "expression": "created_at",
496
+ "isExpression": false,
497
+ "asc": true,
498
+ "nulls": "last"
499
+ }
500
+ ],
501
+ "isUnique": false,
502
+ "concurrently": false,
503
+ "method": "btree",
504
+ "with": {}
505
+ },
506
+ "junior_artifacts_conversation_idx": {
507
+ "name": "junior_artifacts_conversation_idx",
508
+ "columns": [
509
+ {
510
+ "expression": "conversation_id",
511
+ "isExpression": false,
512
+ "asc": true,
513
+ "nulls": "last"
514
+ }
515
+ ],
516
+ "isUnique": false,
517
+ "concurrently": false,
518
+ "method": "btree",
519
+ "with": {}
520
+ }
521
+ },
522
+ "foreignKeys": {},
523
+ "compositePrimaryKeys": {},
524
+ "uniqueConstraints": {},
525
+ "policies": {},
526
+ "checkConstraints": {},
527
+ "isRLSEnabled": false
528
+ },
529
+ "public.junior_attachments": {
530
+ "name": "junior_attachments",
531
+ "schema": "",
532
+ "columns": {
533
+ "id": {
534
+ "name": "id",
535
+ "type": "text",
536
+ "primaryKey": true,
537
+ "notNull": true
538
+ },
539
+ "conversation_id": {
540
+ "name": "conversation_id",
541
+ "type": "text",
542
+ "primaryKey": false,
543
+ "notNull": true
544
+ },
545
+ "storage_provider": {
546
+ "name": "storage_provider",
547
+ "type": "text",
548
+ "primaryKey": false,
549
+ "notNull": true
550
+ },
551
+ "storage_key": {
552
+ "name": "storage_key",
553
+ "type": "text",
554
+ "primaryKey": false,
555
+ "notNull": true
556
+ },
557
+ "provider": {
558
+ "name": "provider",
559
+ "type": "text",
560
+ "primaryKey": false,
561
+ "notNull": false
562
+ },
563
+ "provider_id": {
564
+ "name": "provider_id",
565
+ "type": "text",
566
+ "primaryKey": false,
567
+ "notNull": false
568
+ },
569
+ "filename": {
570
+ "name": "filename",
571
+ "type": "text",
572
+ "primaryKey": false,
573
+ "notNull": true
574
+ },
575
+ "content_type": {
576
+ "name": "content_type",
577
+ "type": "text",
578
+ "primaryKey": false,
579
+ "notNull": true
580
+ },
581
+ "bytes": {
582
+ "name": "bytes",
583
+ "type": "integer",
584
+ "primaryKey": false,
585
+ "notNull": true
586
+ },
587
+ "sha256": {
588
+ "name": "sha256",
589
+ "type": "text",
590
+ "primaryKey": false,
591
+ "notNull": true
592
+ },
593
+ "vision_summary": {
594
+ "name": "vision_summary",
595
+ "type": "text",
596
+ "primaryKey": false,
597
+ "notNull": false
598
+ },
599
+ "created_at": {
600
+ "name": "created_at",
601
+ "type": "timestamp with time zone",
602
+ "primaryKey": false,
603
+ "notNull": true
604
+ },
605
+ "delete_requested_at": {
606
+ "name": "delete_requested_at",
607
+ "type": "timestamp with time zone",
608
+ "primaryKey": false,
609
+ "notNull": false
610
+ }
611
+ },
612
+ "indexes": {
613
+ "junior_attachments_conversation_idx": {
614
+ "name": "junior_attachments_conversation_idx",
615
+ "columns": [
616
+ {
617
+ "expression": "conversation_id",
618
+ "isExpression": false,
619
+ "asc": true,
620
+ "nulls": "last"
621
+ }
622
+ ],
623
+ "isUnique": false,
624
+ "concurrently": false,
625
+ "method": "btree",
626
+ "with": {}
627
+ },
628
+ "junior_attachments_provider_idx": {
629
+ "name": "junior_attachments_provider_idx",
630
+ "columns": [
631
+ {
632
+ "expression": "conversation_id",
633
+ "isExpression": false,
634
+ "asc": true,
635
+ "nulls": "last"
636
+ },
637
+ {
638
+ "expression": "provider",
639
+ "isExpression": false,
640
+ "asc": true,
641
+ "nulls": "last"
642
+ },
643
+ {
644
+ "expression": "provider_id",
645
+ "isExpression": false,
646
+ "asc": true,
647
+ "nulls": "last"
648
+ }
649
+ ],
650
+ "isUnique": false,
651
+ "concurrently": false,
652
+ "method": "btree",
653
+ "with": {}
654
+ },
655
+ "junior_attachments_gc_idx": {
656
+ "name": "junior_attachments_gc_idx",
657
+ "columns": [
658
+ {
659
+ "expression": "storage_provider",
660
+ "isExpression": false,
661
+ "asc": true,
662
+ "nulls": "last"
663
+ },
664
+ {
665
+ "expression": "delete_requested_at",
666
+ "isExpression": false,
667
+ "asc": true,
668
+ "nulls": "last"
669
+ },
670
+ {
671
+ "expression": "created_at",
672
+ "isExpression": false,
673
+ "asc": true,
674
+ "nulls": "last"
675
+ }
676
+ ],
677
+ "isUnique": false,
678
+ "concurrently": false,
679
+ "method": "btree",
680
+ "with": {}
681
+ }
682
+ },
683
+ "foreignKeys": {
684
+ "junior_attachments_conversation_id_junior_conversations_conversation_id_fk": {
685
+ "name": "junior_attachments_conversation_id_junior_conversations_conversation_id_fk",
686
+ "tableFrom": "junior_attachments",
687
+ "tableTo": "junior_conversations",
688
+ "columnsFrom": ["conversation_id"],
689
+ "columnsTo": ["conversation_id"],
690
+ "onDelete": "cascade",
691
+ "onUpdate": "no action"
692
+ }
693
+ },
694
+ "compositePrimaryKeys": {},
695
+ "uniqueConstraints": {},
696
+ "policies": {},
697
+ "checkConstraints": {},
698
+ "isRLSEnabled": false
699
+ },
700
+ "public.junior_automation_runs": {
701
+ "name": "junior_automation_runs",
702
+ "schema": "",
703
+ "columns": {
704
+ "id": {
705
+ "name": "id",
706
+ "type": "text",
707
+ "primaryKey": true,
708
+ "notNull": true
709
+ },
710
+ "automation_id": {
711
+ "name": "automation_id",
712
+ "type": "text",
713
+ "primaryKey": false,
714
+ "notNull": true
715
+ },
716
+ "conversation_id": {
717
+ "name": "conversation_id",
718
+ "type": "text",
719
+ "primaryKey": false,
720
+ "notNull": false
721
+ },
722
+ "status": {
723
+ "name": "status",
724
+ "type": "text",
725
+ "primaryKey": false,
726
+ "notNull": true
727
+ },
728
+ "automation_version": {
729
+ "name": "automation_version",
730
+ "type": "integer",
731
+ "primaryKey": false,
732
+ "notNull": false
733
+ },
734
+ "scheduled_for_ms": {
735
+ "name": "scheduled_for_ms",
736
+ "type": "bigint",
737
+ "primaryKey": false,
738
+ "notNull": false
739
+ },
740
+ "attempt": {
741
+ "name": "attempt",
742
+ "type": "integer",
743
+ "primaryKey": false,
744
+ "notNull": false
745
+ },
746
+ "claimed_at_ms": {
747
+ "name": "claimed_at_ms",
748
+ "type": "bigint",
749
+ "primaryKey": false,
750
+ "notNull": false
751
+ },
752
+ "dispatch_id": {
753
+ "name": "dispatch_id",
754
+ "type": "text",
755
+ "primaryKey": false,
756
+ "notNull": false
757
+ },
758
+ "started_at_ms": {
759
+ "name": "started_at_ms",
760
+ "type": "bigint",
761
+ "primaryKey": false,
762
+ "notNull": false
763
+ },
764
+ "completed_at_ms": {
765
+ "name": "completed_at_ms",
766
+ "type": "bigint",
767
+ "primaryKey": false,
768
+ "notNull": false
769
+ },
770
+ "error_message": {
771
+ "name": "error_message",
772
+ "type": "text",
773
+ "primaryKey": false,
774
+ "notNull": false
775
+ },
776
+ "result_message_ts": {
777
+ "name": "result_message_ts",
778
+ "type": "text",
779
+ "primaryKey": false,
780
+ "notNull": false
781
+ }
782
+ },
783
+ "indexes": {
784
+ "junior_automation_runs_automation_idx": {
785
+ "name": "junior_automation_runs_automation_idx",
786
+ "columns": [
787
+ {
788
+ "expression": "automation_id",
789
+ "isExpression": false,
790
+ "asc": true,
791
+ "nulls": "last"
792
+ },
793
+ {
794
+ "expression": "completed_at_ms",
795
+ "isExpression": false,
796
+ "asc": true,
797
+ "nulls": "last"
798
+ }
799
+ ],
800
+ "isUnique": false,
801
+ "concurrently": false,
802
+ "method": "btree",
803
+ "with": {}
804
+ },
805
+ "junior_automation_runs_completed_idx": {
806
+ "name": "junior_automation_runs_completed_idx",
807
+ "columns": [
808
+ {
809
+ "expression": "completed_at_ms",
810
+ "isExpression": false,
811
+ "asc": true,
812
+ "nulls": "last"
813
+ }
814
+ ],
815
+ "isUnique": false,
816
+ "concurrently": false,
817
+ "method": "btree",
818
+ "with": {}
819
+ },
820
+ "junior_automation_runs_incomplete_idx": {
821
+ "name": "junior_automation_runs_incomplete_idx",
822
+ "columns": [
823
+ {
824
+ "expression": "automation_id",
825
+ "isExpression": false,
826
+ "asc": true,
827
+ "nulls": "last"
828
+ },
829
+ {
830
+ "expression": "scheduled_for_ms",
831
+ "isExpression": false,
832
+ "asc": true,
833
+ "nulls": "last"
834
+ }
835
+ ],
836
+ "isUnique": false,
837
+ "where": "\"junior_automation_runs\".\"status\" in ('pending', 'running')",
838
+ "concurrently": false,
839
+ "method": "btree",
840
+ "with": {}
841
+ }
842
+ },
843
+ "foreignKeys": {
844
+ "junior_automation_runs_automation_id_junior_automations_id_fk": {
845
+ "name": "junior_automation_runs_automation_id_junior_automations_id_fk",
846
+ "tableFrom": "junior_automation_runs",
847
+ "tableTo": "junior_automations",
848
+ "columnsFrom": ["automation_id"],
849
+ "columnsTo": ["id"],
850
+ "onDelete": "cascade",
851
+ "onUpdate": "no action"
852
+ },
853
+ "junior_automation_runs_conversation_id_junior_conversations_conversation_id_fk": {
854
+ "name": "junior_automation_runs_conversation_id_junior_conversations_conversation_id_fk",
855
+ "tableFrom": "junior_automation_runs",
856
+ "tableTo": "junior_conversations",
857
+ "columnsFrom": ["conversation_id"],
858
+ "columnsTo": ["conversation_id"],
859
+ "onDelete": "no action",
860
+ "onUpdate": "no action"
861
+ },
862
+ "junior_automation_runs_automation_version_fk": {
863
+ "name": "junior_automation_runs_automation_version_fk",
864
+ "tableFrom": "junior_automation_runs",
865
+ "tableTo": "junior_automation_versions",
866
+ "columnsFrom": ["automation_id", "automation_version"],
867
+ "columnsTo": ["automation_id", "version"],
868
+ "onDelete": "no action",
869
+ "onUpdate": "no action"
870
+ }
871
+ },
872
+ "compositePrimaryKeys": {},
873
+ "uniqueConstraints": {
874
+ "junior_automation_runs_conversation_id_unique": {
875
+ "name": "junior_automation_runs_conversation_id_unique",
876
+ "nullsNotDistinct": false,
877
+ "columns": ["conversation_id"]
878
+ }
879
+ },
880
+ "policies": {},
881
+ "checkConstraints": {
882
+ "junior_automation_runs_status_check": {
883
+ "name": "junior_automation_runs_status_check",
884
+ "value": "\"junior_automation_runs\".\"status\" in ('pending', 'running', 'completed', 'failed', 'blocked', 'skipped')"
885
+ }
886
+ },
887
+ "isRLSEnabled": false
888
+ },
889
+ "public.junior_automation_versions": {
890
+ "name": "junior_automation_versions",
891
+ "schema": "",
892
+ "columns": {
893
+ "automation_id": {
894
+ "name": "automation_id",
895
+ "type": "text",
896
+ "primaryKey": false,
897
+ "notNull": true
898
+ },
899
+ "version": {
900
+ "name": "version",
901
+ "type": "integer",
902
+ "primaryKey": false,
903
+ "notNull": true
904
+ },
905
+ "created_at_ms": {
906
+ "name": "created_at_ms",
907
+ "type": "bigint",
908
+ "primaryKey": false,
909
+ "notNull": true
910
+ },
911
+ "edited_by": {
912
+ "name": "edited_by",
913
+ "type": "jsonb",
914
+ "primaryKey": false,
915
+ "notNull": false
916
+ },
917
+ "definition": {
918
+ "name": "definition",
919
+ "type": "jsonb",
920
+ "primaryKey": false,
921
+ "notNull": true
922
+ }
923
+ },
924
+ "indexes": {},
925
+ "foreignKeys": {
926
+ "junior_automation_versions_automation_id_fk": {
927
+ "name": "junior_automation_versions_automation_id_fk",
928
+ "tableFrom": "junior_automation_versions",
929
+ "tableTo": "junior_automations",
930
+ "columnsFrom": ["automation_id"],
931
+ "columnsTo": ["id"],
932
+ "onDelete": "cascade",
933
+ "onUpdate": "no action"
934
+ }
935
+ },
936
+ "compositePrimaryKeys": {
937
+ "junior_automation_versions_pk": {
938
+ "name": "junior_automation_versions_pk",
939
+ "columns": ["automation_id", "version"]
940
+ }
941
+ },
942
+ "uniqueConstraints": {},
943
+ "policies": {},
944
+ "checkConstraints": {},
945
+ "isRLSEnabled": false
946
+ },
947
+ "public.junior_automations": {
948
+ "name": "junior_automations",
949
+ "schema": "",
950
+ "columns": {
951
+ "id": {
952
+ "name": "id",
953
+ "type": "text",
954
+ "primaryKey": true,
955
+ "notNull": true
956
+ },
957
+ "kind": {
958
+ "name": "kind",
959
+ "type": "text",
960
+ "primaryKey": false,
961
+ "notNull": true
962
+ },
963
+ "team_id": {
964
+ "name": "team_id",
965
+ "type": "text",
966
+ "primaryKey": false,
967
+ "notNull": true
968
+ },
969
+ "channel_id": {
970
+ "name": "channel_id",
971
+ "type": "text",
972
+ "primaryKey": false,
973
+ "notNull": true
974
+ },
975
+ "creator_slack_user_id": {
976
+ "name": "creator_slack_user_id",
977
+ "type": "text",
978
+ "primaryKey": false,
979
+ "notNull": true
980
+ },
981
+ "creator_identity_id": {
982
+ "name": "creator_identity_id",
983
+ "type": "text",
984
+ "primaryKey": false,
985
+ "notNull": true
986
+ },
987
+ "status": {
988
+ "name": "status",
989
+ "type": "text",
990
+ "primaryKey": false,
991
+ "notNull": true
992
+ },
993
+ "status_reason": {
994
+ "name": "status_reason",
995
+ "type": "text",
996
+ "primaryKey": false,
997
+ "notNull": false
998
+ },
999
+ "title": {
1000
+ "name": "title",
1001
+ "type": "text",
1002
+ "primaryKey": false,
1003
+ "notNull": false
1004
+ },
1005
+ "instruction": {
1006
+ "name": "instruction",
1007
+ "type": "text",
1008
+ "primaryKey": false,
1009
+ "notNull": true
1010
+ },
1011
+ "created_at_ms": {
1012
+ "name": "created_at_ms",
1013
+ "type": "bigint",
1014
+ "primaryKey": false,
1015
+ "notNull": true
1016
+ },
1017
+ "next_run_at_ms": {
1018
+ "name": "next_run_at_ms",
1019
+ "type": "bigint",
1020
+ "primaryKey": false,
1021
+ "notNull": false
1022
+ },
1023
+ "run_now_at_ms": {
1024
+ "name": "run_now_at_ms",
1025
+ "type": "bigint",
1026
+ "primaryKey": false,
1027
+ "notNull": false
1028
+ },
1029
+ "namespace": {
1030
+ "name": "namespace",
1031
+ "type": "text",
1032
+ "primaryKey": false,
1033
+ "notNull": false
1034
+ },
1035
+ "identifier": {
1036
+ "name": "identifier",
1037
+ "type": "text",
1038
+ "primaryKey": false,
1039
+ "notNull": false
1040
+ },
1041
+ "record": {
1042
+ "name": "record",
1043
+ "type": "jsonb",
1044
+ "primaryKey": false,
1045
+ "notNull": true
1046
+ }
1047
+ },
1048
+ "indexes": {
1049
+ "junior_automations_team_idx": {
1050
+ "name": "junior_automations_team_idx",
1051
+ "columns": [
1052
+ {
1053
+ "expression": "team_id",
1054
+ "isExpression": false,
1055
+ "asc": true,
1056
+ "nulls": "last"
1057
+ },
1058
+ {
1059
+ "expression": "created_at_ms",
1060
+ "isExpression": false,
1061
+ "asc": true,
1062
+ "nulls": "last"
1063
+ },
1064
+ {
1065
+ "expression": "id",
1066
+ "isExpression": false,
1067
+ "asc": true,
1068
+ "nulls": "last"
1069
+ }
1070
+ ],
1071
+ "isUnique": false,
1072
+ "where": "\"junior_automations\".\"status\" <> 'deleted'",
1073
+ "concurrently": false,
1074
+ "method": "btree",
1075
+ "with": {}
1076
+ },
1077
+ "junior_automations_creator_identity_idx": {
1078
+ "name": "junior_automations_creator_identity_idx",
1079
+ "columns": [
1080
+ {
1081
+ "expression": "creator_identity_id",
1082
+ "isExpression": false,
1083
+ "asc": true,
1084
+ "nulls": "last"
1085
+ },
1086
+ {
1087
+ "expression": "created_at_ms",
1088
+ "isExpression": false,
1089
+ "asc": true,
1090
+ "nulls": "last"
1091
+ },
1092
+ {
1093
+ "expression": "id",
1094
+ "isExpression": false,
1095
+ "asc": true,
1096
+ "nulls": "last"
1097
+ }
1098
+ ],
1099
+ "isUnique": false,
1100
+ "concurrently": false,
1101
+ "method": "btree",
1102
+ "with": {}
1103
+ },
1104
+ "junior_automations_run_now_due_idx": {
1105
+ "name": "junior_automations_run_now_due_idx",
1106
+ "columns": [
1107
+ {
1108
+ "expression": "run_now_at_ms",
1109
+ "isExpression": false,
1110
+ "asc": true,
1111
+ "nulls": "last"
1112
+ },
1113
+ {
1114
+ "expression": "created_at_ms",
1115
+ "isExpression": false,
1116
+ "asc": true,
1117
+ "nulls": "last"
1118
+ },
1119
+ {
1120
+ "expression": "id",
1121
+ "isExpression": false,
1122
+ "asc": true,
1123
+ "nulls": "last"
1124
+ }
1125
+ ],
1126
+ "isUnique": false,
1127
+ "where": "\"junior_automations\".\"status\" = 'active' AND \"junior_automations\".\"run_now_at_ms\" IS NOT NULL",
1128
+ "concurrently": false,
1129
+ "method": "btree",
1130
+ "with": {}
1131
+ },
1132
+ "junior_automations_next_run_due_idx": {
1133
+ "name": "junior_automations_next_run_due_idx",
1134
+ "columns": [
1135
+ {
1136
+ "expression": "next_run_at_ms",
1137
+ "isExpression": false,
1138
+ "asc": true,
1139
+ "nulls": "last"
1140
+ },
1141
+ {
1142
+ "expression": "created_at_ms",
1143
+ "isExpression": false,
1144
+ "asc": true,
1145
+ "nulls": "last"
1146
+ },
1147
+ {
1148
+ "expression": "id",
1149
+ "isExpression": false,
1150
+ "asc": true,
1151
+ "nulls": "last"
1152
+ }
1153
+ ],
1154
+ "isUnique": false,
1155
+ "where": "\"junior_automations\".\"status\" = 'active' AND \"junior_automations\".\"next_run_at_ms\" IS NOT NULL",
1156
+ "concurrently": false,
1157
+ "method": "btree",
1158
+ "with": {}
1159
+ },
1160
+ "junior_automations_match_idx": {
1161
+ "name": "junior_automations_match_idx",
1162
+ "columns": [
1163
+ {
1164
+ "expression": "namespace",
1165
+ "isExpression": false,
1166
+ "asc": true,
1167
+ "nulls": "last"
1168
+ },
1169
+ {
1170
+ "expression": "identifier",
1171
+ "isExpression": false,
1172
+ "asc": true,
1173
+ "nulls": "last"
1174
+ },
1175
+ {
1176
+ "expression": "created_at_ms",
1177
+ "isExpression": false,
1178
+ "asc": true,
1179
+ "nulls": "last"
1180
+ },
1181
+ {
1182
+ "expression": "id",
1183
+ "isExpression": false,
1184
+ "asc": true,
1185
+ "nulls": "last"
1186
+ }
1187
+ ],
1188
+ "isUnique": false,
1189
+ "where": "\"junior_automations\".\"status\" <> 'deleted'",
1190
+ "concurrently": false,
1191
+ "method": "btree",
1192
+ "with": {}
1193
+ }
1194
+ },
1195
+ "foreignKeys": {
1196
+ "junior_automations_creator_identity_id_junior_identities_id_fk": {
1197
+ "name": "junior_automations_creator_identity_id_junior_identities_id_fk",
1198
+ "tableFrom": "junior_automations",
1199
+ "tableTo": "junior_identities",
1200
+ "columnsFrom": ["creator_identity_id"],
1201
+ "columnsTo": ["id"],
1202
+ "onDelete": "no action",
1203
+ "onUpdate": "no action"
1204
+ }
1205
+ },
1206
+ "compositePrimaryKeys": {},
1207
+ "uniqueConstraints": {},
1208
+ "policies": {},
1209
+ "checkConstraints": {
1210
+ "junior_automations_kind_check": {
1211
+ "name": "junior_automations_kind_check",
1212
+ "value": "\"junior_automations\".\"kind\" in ('scheduled', 'event')"
1213
+ },
1214
+ "junior_automations_status_check": {
1215
+ "name": "junior_automations_status_check",
1216
+ "value": "\"junior_automations\".\"status\" in ('active', 'blocked', 'paused', 'completed', 'deleted')"
1217
+ },
1218
+ "junior_automations_record_check": {
1219
+ "name": "junior_automations_record_check",
1220
+ "value": "jsonb_typeof(\"junior_automations\".\"record\") = 'object'"
1221
+ },
1222
+ "junior_automations_trigger_check": {
1223
+ "name": "junior_automations_trigger_check",
1224
+ "value": "(\"junior_automations\".\"kind\" = 'scheduled' and \"junior_automations\".\"namespace\" is null and \"junior_automations\".\"identifier\" is null) or (\"junior_automations\".\"kind\" = 'event' and \"junior_automations\".\"namespace\" is not null and \"junior_automations\".\"identifier\" is not null and \"junior_automations\".\"next_run_at_ms\" is null and \"junior_automations\".\"run_now_at_ms\" is null and \"junior_automations\".\"status\" <> 'completed')"
1225
+ }
1226
+ },
1227
+ "isRLSEnabled": false
1228
+ },
1229
+ "public.junior_code_changes": {
1230
+ "name": "junior_code_changes",
1231
+ "schema": "",
1232
+ "columns": {
1233
+ "id": {
1234
+ "name": "id",
1235
+ "type": "uuid",
1236
+ "primaryKey": true,
1237
+ "notNull": true
1238
+ },
1239
+ "closed_at": {
1240
+ "name": "closed_at",
1241
+ "type": "timestamp with time zone",
1242
+ "primaryKey": false,
1243
+ "notNull": false
1244
+ },
1245
+ "conversation_ids": {
1246
+ "name": "conversation_ids",
1247
+ "type": "text[]",
1248
+ "primaryKey": false,
1249
+ "notNull": true,
1250
+ "default": "ARRAY[]::text[]"
1251
+ },
1252
+ "merged_at": {
1253
+ "name": "merged_at",
1254
+ "type": "timestamp with time zone",
1255
+ "primaryKey": false,
1256
+ "notNull": false
1257
+ },
1258
+ "number": {
1259
+ "name": "number",
1260
+ "type": "integer",
1261
+ "primaryKey": false,
1262
+ "notNull": true
1263
+ },
1264
+ "opened_at": {
1265
+ "name": "opened_at",
1266
+ "type": "timestamp with time zone",
1267
+ "primaryKey": false,
1268
+ "notNull": true
1269
+ },
1270
+ "provider": {
1271
+ "name": "provider",
1272
+ "type": "text",
1273
+ "primaryKey": false,
1274
+ "notNull": true
1275
+ },
1276
+ "provider_id": {
1277
+ "name": "provider_id",
1278
+ "type": "text",
1279
+ "primaryKey": false,
1280
+ "notNull": true
1281
+ },
1282
+ "repository_id": {
1283
+ "name": "repository_id",
1284
+ "type": "uuid",
1285
+ "primaryKey": false,
1286
+ "notNull": true
1287
+ },
1288
+ "state": {
1289
+ "name": "state",
1290
+ "type": "text",
1291
+ "primaryKey": false,
1292
+ "notNull": true
1293
+ },
1294
+ "title": {
1295
+ "name": "title",
1296
+ "type": "text",
1297
+ "primaryKey": false,
1298
+ "notNull": false
1299
+ },
1300
+ "updated_at": {
1301
+ "name": "updated_at",
1302
+ "type": "timestamp with time zone",
1303
+ "primaryKey": false,
1304
+ "notNull": true
1305
+ },
1306
+ "url": {
1307
+ "name": "url",
1308
+ "type": "text",
1309
+ "primaryKey": false,
1310
+ "notNull": false
1311
+ }
1312
+ },
1313
+ "indexes": {
1314
+ "junior_code_changes_provider_id_idx": {
1315
+ "name": "junior_code_changes_provider_id_idx",
1316
+ "columns": [
1317
+ {
1318
+ "expression": "provider",
1319
+ "isExpression": false,
1320
+ "asc": true,
1321
+ "nulls": "last"
1322
+ },
1323
+ {
1324
+ "expression": "provider_id",
1325
+ "isExpression": false,
1326
+ "asc": true,
1327
+ "nulls": "last"
1328
+ }
1329
+ ],
1330
+ "isUnique": true,
1331
+ "concurrently": false,
1332
+ "method": "btree",
1333
+ "with": {}
1334
+ },
1335
+ "junior_code_changes_opened_at_idx": {
1336
+ "name": "junior_code_changes_opened_at_idx",
1337
+ "columns": [
1338
+ {
1339
+ "expression": "opened_at",
1340
+ "isExpression": false,
1341
+ "asc": true,
1342
+ "nulls": "last"
1343
+ }
1344
+ ],
1345
+ "isUnique": false,
1346
+ "concurrently": false,
1347
+ "method": "btree",
1348
+ "with": {}
1349
+ },
1350
+ "junior_code_changes_merged_at_idx": {
1351
+ "name": "junior_code_changes_merged_at_idx",
1352
+ "columns": [
1353
+ {
1354
+ "expression": "merged_at",
1355
+ "isExpression": false,
1356
+ "asc": true,
1357
+ "nulls": "last"
1358
+ }
1359
+ ],
1360
+ "isUnique": false,
1361
+ "concurrently": false,
1362
+ "method": "btree",
1363
+ "with": {}
1364
+ },
1365
+ "junior_code_changes_closed_at_idx": {
1366
+ "name": "junior_code_changes_closed_at_idx",
1367
+ "columns": [
1368
+ {
1369
+ "expression": "closed_at",
1370
+ "isExpression": false,
1371
+ "asc": true,
1372
+ "nulls": "last"
1373
+ }
1374
+ ],
1375
+ "isUnique": false,
1376
+ "concurrently": false,
1377
+ "method": "btree",
1378
+ "with": {}
1379
+ },
1380
+ "junior_code_changes_open_idx": {
1381
+ "name": "junior_code_changes_open_idx",
1382
+ "columns": [
1383
+ {
1384
+ "expression": "id",
1385
+ "isExpression": false,
1386
+ "asc": true,
1387
+ "nulls": "last"
1388
+ }
1389
+ ],
1390
+ "isUnique": false,
1391
+ "where": "\"junior_code_changes\".\"state\" = 'open'",
1392
+ "concurrently": false,
1393
+ "method": "btree",
1394
+ "with": {}
1395
+ }
1396
+ },
1397
+ "foreignKeys": {
1398
+ "junior_code_changes_repository_id_junior_code_repositories_id_fk": {
1399
+ "name": "junior_code_changes_repository_id_junior_code_repositories_id_fk",
1400
+ "tableFrom": "junior_code_changes",
1401
+ "tableTo": "junior_code_repositories",
1402
+ "columnsFrom": ["repository_id"],
1403
+ "columnsTo": ["id"],
1404
+ "onDelete": "cascade",
1405
+ "onUpdate": "no action"
1406
+ }
1407
+ },
1408
+ "compositePrimaryKeys": {},
1409
+ "uniqueConstraints": {},
1410
+ "policies": {},
1411
+ "checkConstraints": {},
1412
+ "isRLSEnabled": false
1413
+ },
1414
+ "public.junior_code_repositories": {
1415
+ "name": "junior_code_repositories",
1416
+ "schema": "",
1417
+ "columns": {
1418
+ "id": {
1419
+ "name": "id",
1420
+ "type": "uuid",
1421
+ "primaryKey": true,
1422
+ "notNull": true
1423
+ },
1424
+ "name": {
1425
+ "name": "name",
1426
+ "type": "text",
1427
+ "primaryKey": false,
1428
+ "notNull": true
1429
+ },
1430
+ "provider": {
1431
+ "name": "provider",
1432
+ "type": "text",
1433
+ "primaryKey": false,
1434
+ "notNull": true
1435
+ },
1436
+ "provider_id": {
1437
+ "name": "provider_id",
1438
+ "type": "text",
1439
+ "primaryKey": false,
1440
+ "notNull": true
1441
+ },
1442
+ "url": {
1443
+ "name": "url",
1444
+ "type": "text",
1445
+ "primaryKey": false,
1446
+ "notNull": false
1447
+ },
1448
+ "updated_at": {
1449
+ "name": "updated_at",
1450
+ "type": "timestamp with time zone",
1451
+ "primaryKey": false,
1452
+ "notNull": true
1453
+ }
1454
+ },
1455
+ "indexes": {
1456
+ "junior_code_repositories_provider_id_idx": {
1457
+ "name": "junior_code_repositories_provider_id_idx",
1458
+ "columns": [
1459
+ {
1460
+ "expression": "provider",
1461
+ "isExpression": false,
1462
+ "asc": true,
1463
+ "nulls": "last"
1464
+ },
1465
+ {
1466
+ "expression": "provider_id",
1467
+ "isExpression": false,
1468
+ "asc": true,
1469
+ "nulls": "last"
1470
+ }
1471
+ ],
1472
+ "isUnique": true,
1473
+ "concurrently": false,
1474
+ "method": "btree",
1475
+ "with": {}
1476
+ }
1477
+ },
1478
+ "foreignKeys": {},
1479
+ "compositePrimaryKeys": {},
1480
+ "uniqueConstraints": {},
1481
+ "policies": {},
1482
+ "checkConstraints": {},
1483
+ "isRLSEnabled": false
1484
+ },
1485
+ "public.junior_conversation_annotations": {
1486
+ "name": "junior_conversation_annotations",
1487
+ "schema": "",
1488
+ "columns": {
1489
+ "conversation_id": {
1490
+ "name": "conversation_id",
1491
+ "type": "text",
1492
+ "primaryKey": false,
1493
+ "notNull": true
1494
+ },
1495
+ "plugin": {
1496
+ "name": "plugin",
1497
+ "type": "text",
1498
+ "primaryKey": false,
1499
+ "notNull": true
1500
+ },
1501
+ "kind": {
1502
+ "name": "kind",
1503
+ "type": "text",
1504
+ "primaryKey": false,
1505
+ "notNull": true
1506
+ },
1507
+ "key": {
1508
+ "name": "key",
1509
+ "type": "text",
1510
+ "primaryKey": false,
1511
+ "notNull": true
1512
+ },
1513
+ "annotation_json": {
1514
+ "name": "annotation_json",
1515
+ "type": "jsonb",
1516
+ "primaryKey": false,
1517
+ "notNull": true
1518
+ },
1519
+ "created_at": {
1520
+ "name": "created_at",
1521
+ "type": "timestamp with time zone",
1522
+ "primaryKey": false,
1523
+ "notNull": true
1524
+ },
1525
+ "updated_at": {
1526
+ "name": "updated_at",
1527
+ "type": "timestamp with time zone",
1528
+ "primaryKey": false,
1529
+ "notNull": true
1530
+ }
1531
+ },
1532
+ "indexes": {},
1533
+ "foreignKeys": {
1534
+ "junior_conversation_annotations_conversation_id_fk": {
1535
+ "name": "junior_conversation_annotations_conversation_id_fk",
1536
+ "tableFrom": "junior_conversation_annotations",
1537
+ "tableTo": "junior_conversations",
1538
+ "columnsFrom": ["conversation_id"],
1539
+ "columnsTo": ["conversation_id"],
1540
+ "onDelete": "cascade",
1541
+ "onUpdate": "no action"
1542
+ }
1543
+ },
1544
+ "compositePrimaryKeys": {
1545
+ "junior_conversation_annotations_pk": {
1546
+ "name": "junior_conversation_annotations_pk",
1547
+ "columns": ["conversation_id", "plugin", "kind", "key"]
1548
+ }
1549
+ },
1550
+ "uniqueConstraints": {},
1551
+ "policies": {},
1552
+ "checkConstraints": {},
1553
+ "isRLSEnabled": false
1554
+ },
1555
+ "public.junior_conversation_bindings": {
1556
+ "name": "junior_conversation_bindings",
1557
+ "schema": "",
1558
+ "columns": {
1559
+ "conversation_id": {
1560
+ "name": "conversation_id",
1561
+ "type": "text",
1562
+ "primaryKey": false,
1563
+ "notNull": true
1564
+ },
1565
+ "provider": {
1566
+ "name": "provider",
1567
+ "type": "text",
1568
+ "primaryKey": false,
1569
+ "notNull": true
1570
+ },
1571
+ "provider_tenant_id": {
1572
+ "name": "provider_tenant_id",
1573
+ "type": "text",
1574
+ "primaryKey": false,
1575
+ "notNull": true,
1576
+ "default": "''"
1577
+ },
1578
+ "provider_destination_id": {
1579
+ "name": "provider_destination_id",
1580
+ "type": "text",
1581
+ "primaryKey": false,
1582
+ "notNull": true
1583
+ },
1584
+ "provider_conversation_id": {
1585
+ "name": "provider_conversation_id",
1586
+ "type": "text",
1587
+ "primaryKey": false,
1588
+ "notNull": true
1589
+ },
1590
+ "created_at": {
1591
+ "name": "created_at",
1592
+ "type": "timestamp with time zone",
1593
+ "primaryKey": false,
1594
+ "notNull": true
1595
+ }
1596
+ },
1597
+ "indexes": {
1598
+ "junior_conversation_bindings_conversation_idx": {
1599
+ "name": "junior_conversation_bindings_conversation_idx",
1600
+ "columns": [
1601
+ {
1602
+ "expression": "conversation_id",
1603
+ "isExpression": false,
1604
+ "asc": true,
1605
+ "nulls": "last"
1606
+ }
1607
+ ],
1608
+ "isUnique": false,
1609
+ "concurrently": false,
1610
+ "method": "btree",
1611
+ "with": {}
1612
+ }
1613
+ },
1614
+ "foreignKeys": {
1615
+ "junior_conversation_bindings_conversation_id_junior_conversations_conversation_id_fk": {
1616
+ "name": "junior_conversation_bindings_conversation_id_junior_conversations_conversation_id_fk",
1617
+ "tableFrom": "junior_conversation_bindings",
1618
+ "tableTo": "junior_conversations",
1619
+ "columnsFrom": ["conversation_id"],
1620
+ "columnsTo": ["conversation_id"],
1621
+ "onDelete": "no action",
1622
+ "onUpdate": "no action"
1623
+ }
1624
+ },
1625
+ "compositePrimaryKeys": {
1626
+ "junior_conversation_bindings_provider_conversation_pk": {
1627
+ "name": "junior_conversation_bindings_provider_conversation_pk",
1628
+ "columns": [
1629
+ "provider",
1630
+ "provider_tenant_id",
1631
+ "provider_destination_id",
1632
+ "provider_conversation_id"
1633
+ ]
1634
+ }
1635
+ },
1636
+ "uniqueConstraints": {},
1637
+ "policies": {},
1638
+ "checkConstraints": {},
1639
+ "isRLSEnabled": false
1640
+ },
1641
+ "public.junior_conversation_briefs": {
1642
+ "name": "junior_conversation_briefs",
1643
+ "schema": "",
1644
+ "columns": {
1645
+ "conversation_id": {
1646
+ "name": "conversation_id",
1647
+ "type": "text",
1648
+ "primaryKey": false,
1649
+ "notNull": true
1650
+ },
1651
+ "version": {
1652
+ "name": "version",
1653
+ "type": "integer",
1654
+ "primaryKey": false,
1655
+ "notNull": true
1656
+ },
1657
+ "turn_id": {
1658
+ "name": "turn_id",
1659
+ "type": "text",
1660
+ "primaryKey": false,
1661
+ "notNull": true
1662
+ },
1663
+ "through_seq": {
1664
+ "name": "through_seq",
1665
+ "type": "integer",
1666
+ "primaryKey": false,
1667
+ "notNull": true
1668
+ },
1669
+ "content": {
1670
+ "name": "content",
1671
+ "type": "jsonb",
1672
+ "primaryKey": false,
1673
+ "notNull": true
1674
+ },
1675
+ "search_text": {
1676
+ "name": "search_text",
1677
+ "type": "text",
1678
+ "primaryKey": false,
1679
+ "notNull": true
1680
+ },
1681
+ "model_id": {
1682
+ "name": "model_id",
1683
+ "type": "text",
1684
+ "primaryKey": false,
1685
+ "notNull": true
1686
+ },
1687
+ "cost_usd": {
1688
+ "name": "cost_usd",
1689
+ "type": "double precision",
1690
+ "primaryKey": false,
1691
+ "notNull": false
1692
+ },
1693
+ "created_at": {
1694
+ "name": "created_at",
1695
+ "type": "timestamp with time zone",
1696
+ "primaryKey": false,
1697
+ "notNull": true,
1698
+ "default": "now()"
1699
+ }
1700
+ },
1701
+ "indexes": {
1702
+ "junior_conversation_briefs_conversation_turn_idx": {
1703
+ "name": "junior_conversation_briefs_conversation_turn_idx",
1704
+ "columns": [
1705
+ {
1706
+ "expression": "conversation_id",
1707
+ "isExpression": false,
1708
+ "asc": true,
1709
+ "nulls": "last"
1710
+ },
1711
+ {
1712
+ "expression": "turn_id",
1713
+ "isExpression": false,
1714
+ "asc": true,
1715
+ "nulls": "last"
1716
+ }
1717
+ ],
1718
+ "isUnique": true,
1719
+ "concurrently": false,
1720
+ "method": "btree",
1721
+ "with": {}
1722
+ },
1723
+ "junior_conversation_briefs_conversation_version_idx": {
1724
+ "name": "junior_conversation_briefs_conversation_version_idx",
1725
+ "columns": [
1726
+ {
1727
+ "expression": "conversation_id",
1728
+ "isExpression": false,
1729
+ "asc": true,
1730
+ "nulls": "last"
1731
+ },
1732
+ {
1733
+ "expression": "version",
1734
+ "isExpression": false,
1735
+ "asc": false,
1736
+ "nulls": "last"
1737
+ }
1738
+ ],
1739
+ "isUnique": false,
1740
+ "concurrently": false,
1741
+ "method": "btree",
1742
+ "with": {}
1743
+ },
1744
+ "junior_conversation_briefs_search_idx": {
1745
+ "name": "junior_conversation_briefs_search_idx",
1746
+ "columns": [
1747
+ {
1748
+ "expression": "to_tsvector('english', \"search_text\")",
1749
+ "asc": true,
1750
+ "isExpression": true,
1751
+ "nulls": "last"
1752
+ }
1753
+ ],
1754
+ "isUnique": false,
1755
+ "concurrently": false,
1756
+ "method": "gin",
1757
+ "with": {}
1758
+ }
1759
+ },
1760
+ "foreignKeys": {
1761
+ "junior_conversation_briefs_conversation_id_junior_conversations_conversation_id_fk": {
1762
+ "name": "junior_conversation_briefs_conversation_id_junior_conversations_conversation_id_fk",
1763
+ "tableFrom": "junior_conversation_briefs",
1764
+ "tableTo": "junior_conversations",
1765
+ "columnsFrom": ["conversation_id"],
1766
+ "columnsTo": ["conversation_id"],
1767
+ "onDelete": "cascade",
1768
+ "onUpdate": "no action"
1769
+ }
1770
+ },
1771
+ "compositePrimaryKeys": {
1772
+ "junior_conversation_briefs_conversation_id_version_pk": {
1773
+ "name": "junior_conversation_briefs_conversation_id_version_pk",
1774
+ "columns": ["conversation_id", "version"]
1775
+ }
1776
+ },
1777
+ "uniqueConstraints": {},
1778
+ "policies": {},
1779
+ "checkConstraints": {},
1780
+ "isRLSEnabled": false
1781
+ },
1782
+ "public.junior_conversation_events": {
1783
+ "name": "junior_conversation_events",
1784
+ "schema": "",
1785
+ "columns": {
1786
+ "conversation_id": {
1787
+ "name": "conversation_id",
1788
+ "type": "text",
1789
+ "primaryKey": false,
1790
+ "notNull": true
1791
+ },
1792
+ "seq": {
1793
+ "name": "seq",
1794
+ "type": "integer",
1795
+ "primaryKey": false,
1796
+ "notNull": true
1797
+ },
1798
+ "history_version": {
1799
+ "name": "history_version",
1800
+ "type": "integer",
1801
+ "primaryKey": false,
1802
+ "notNull": true
1803
+ },
1804
+ "schema_version": {
1805
+ "name": "schema_version",
1806
+ "type": "integer",
1807
+ "primaryKey": false,
1808
+ "notNull": true,
1809
+ "default": 1
1810
+ },
1811
+ "idempotency_key": {
1812
+ "name": "idempotency_key",
1813
+ "type": "text",
1814
+ "primaryKey": false,
1815
+ "notNull": false
1816
+ },
1817
+ "type": {
1818
+ "name": "type",
1819
+ "type": "text",
1820
+ "primaryKey": false,
1821
+ "notNull": true
1822
+ },
1823
+ "payload": {
1824
+ "name": "payload",
1825
+ "type": "jsonb",
1826
+ "primaryKey": false,
1827
+ "notNull": true
1828
+ },
1829
+ "actor_identity_id": {
1830
+ "name": "actor_identity_id",
1831
+ "type": "text",
1832
+ "primaryKey": false,
1833
+ "notNull": false
1834
+ },
1835
+ "created_at": {
1836
+ "name": "created_at",
1837
+ "type": "timestamp with time zone",
1838
+ "primaryKey": false,
1839
+ "notNull": true
1840
+ }
1841
+ },
1842
+ "indexes": {
1843
+ "junior_conversation_events_history_version_idx": {
1844
+ "name": "junior_conversation_events_history_version_idx",
1845
+ "columns": [
1846
+ {
1847
+ "expression": "conversation_id",
1848
+ "isExpression": false,
1849
+ "asc": true,
1850
+ "nulls": "last"
1851
+ },
1852
+ {
1853
+ "expression": "history_version",
1854
+ "isExpression": false,
1855
+ "asc": true,
1856
+ "nulls": "last"
1857
+ },
1858
+ {
1859
+ "expression": "seq",
1860
+ "isExpression": false,
1861
+ "asc": true,
1862
+ "nulls": "last"
1863
+ }
1864
+ ],
1865
+ "isUnique": false,
1866
+ "concurrently": false,
1867
+ "method": "btree",
1868
+ "with": {}
1869
+ },
1870
+ "junior_conversation_events_type_idx": {
1871
+ "name": "junior_conversation_events_type_idx",
1872
+ "columns": [
1873
+ {
1874
+ "expression": "conversation_id",
1875
+ "isExpression": false,
1876
+ "asc": true,
1877
+ "nulls": "last"
1878
+ },
1879
+ {
1880
+ "expression": "type",
1881
+ "isExpression": false,
1882
+ "asc": true,
1883
+ "nulls": "last"
1884
+ },
1885
+ {
1886
+ "expression": "seq",
1887
+ "isExpression": false,
1888
+ "asc": true,
1889
+ "nulls": "last"
1890
+ }
1891
+ ],
1892
+ "isUnique": false,
1893
+ "concurrently": false,
1894
+ "method": "btree",
1895
+ "with": {}
1896
+ },
1897
+ "junior_conversation_events_plugin_report_idx": {
1898
+ "name": "junior_conversation_events_plugin_report_idx",
1899
+ "columns": [
1900
+ {
1901
+ "expression": "(\"payload\"->>'namespace')",
1902
+ "asc": true,
1903
+ "isExpression": true,
1904
+ "nulls": "last"
1905
+ },
1906
+ {
1907
+ "expression": "(\"payload\"->>'name')",
1908
+ "asc": true,
1909
+ "isExpression": true,
1910
+ "nulls": "last"
1911
+ },
1912
+ {
1913
+ "expression": "created_at",
1914
+ "isExpression": false,
1915
+ "asc": true,
1916
+ "nulls": "last"
1917
+ }
1918
+ ],
1919
+ "isUnique": false,
1920
+ "where": "\"junior_conversation_events\".\"type\" = 'structured_event'",
1921
+ "concurrently": false,
1922
+ "method": "btree",
1923
+ "with": {}
1924
+ },
1925
+ "junior_conversation_events_actor_identity_idx": {
1926
+ "name": "junior_conversation_events_actor_identity_idx",
1927
+ "columns": [
1928
+ {
1929
+ "expression": "actor_identity_id",
1930
+ "isExpression": false,
1931
+ "asc": true,
1932
+ "nulls": "last"
1933
+ },
1934
+ {
1935
+ "expression": "conversation_id",
1936
+ "isExpression": false,
1937
+ "asc": true,
1938
+ "nulls": "last"
1939
+ },
1940
+ {
1941
+ "expression": "seq",
1942
+ "isExpression": false,
1943
+ "asc": true,
1944
+ "nulls": "last"
1945
+ }
1946
+ ],
1947
+ "isUnique": false,
1948
+ "concurrently": false,
1949
+ "method": "btree",
1950
+ "with": {}
1951
+ },
1952
+ "junior_conversation_events_message_search_idx": {
1953
+ "name": "junior_conversation_events_message_search_idx",
1954
+ "columns": [
1955
+ {
1956
+ "expression": "to_tsvector('english', \"payload\"->>'text')",
1957
+ "asc": true,
1958
+ "isExpression": true,
1959
+ "nulls": "last"
1960
+ }
1961
+ ],
1962
+ "isUnique": false,
1963
+ "where": "\"junior_conversation_events\".\"type\" = 'message'",
1964
+ "concurrently": false,
1965
+ "method": "gin",
1966
+ "with": {}
1967
+ },
1968
+ "junior_conversation_events_idempotency_idx": {
1969
+ "name": "junior_conversation_events_idempotency_idx",
1970
+ "columns": [
1971
+ {
1972
+ "expression": "conversation_id",
1973
+ "isExpression": false,
1974
+ "asc": true,
1975
+ "nulls": "last"
1976
+ },
1977
+ {
1978
+ "expression": "idempotency_key",
1979
+ "isExpression": false,
1980
+ "asc": true,
1981
+ "nulls": "last"
1982
+ }
1983
+ ],
1984
+ "isUnique": true,
1985
+ "concurrently": false,
1986
+ "method": "btree",
1987
+ "with": {}
1988
+ }
1989
+ },
1990
+ "foreignKeys": {
1991
+ "junior_conversation_events_actor_identity_id_junior_identities_id_fk": {
1992
+ "name": "junior_conversation_events_actor_identity_id_junior_identities_id_fk",
1993
+ "tableFrom": "junior_conversation_events",
1994
+ "tableTo": "junior_identities",
1995
+ "columnsFrom": ["actor_identity_id"],
1996
+ "columnsTo": ["id"],
1997
+ "onDelete": "no action",
1998
+ "onUpdate": "no action"
1999
+ },
2000
+ "junior_conversation_events_conversation_id_junior_conversations_conversation_id_fk": {
2001
+ "name": "junior_conversation_events_conversation_id_junior_conversations_conversation_id_fk",
2002
+ "tableFrom": "junior_conversation_events",
2003
+ "tableTo": "junior_conversations",
2004
+ "columnsFrom": ["conversation_id"],
2005
+ "columnsTo": ["conversation_id"],
2006
+ "onDelete": "no action",
2007
+ "onUpdate": "no action"
2008
+ }
2009
+ },
2010
+ "compositePrimaryKeys": {
2011
+ "junior_conversation_events_conversation_id_seq_pk": {
2012
+ "name": "junior_conversation_events_conversation_id_seq_pk",
2013
+ "columns": ["conversation_id", "seq"]
2014
+ }
2015
+ },
2016
+ "uniqueConstraints": {},
2017
+ "policies": {},
2018
+ "checkConstraints": {},
2019
+ "isRLSEnabled": false
2020
+ },
2021
+ "public.junior_conversation_metrics": {
2022
+ "name": "junior_conversation_metrics",
2023
+ "schema": "",
2024
+ "columns": {
2025
+ "conversation_id": {
2026
+ "name": "conversation_id",
2027
+ "type": "text",
2028
+ "primaryKey": false,
2029
+ "notNull": true
2030
+ },
2031
+ "run_id": {
2032
+ "name": "run_id",
2033
+ "type": "text",
2034
+ "primaryKey": false,
2035
+ "notNull": true
2036
+ },
2037
+ "metric": {
2038
+ "name": "metric",
2039
+ "type": "text",
2040
+ "primaryKey": false,
2041
+ "notNull": true
2042
+ },
2043
+ "value": {
2044
+ "name": "value",
2045
+ "type": "double precision",
2046
+ "primaryKey": false,
2047
+ "notNull": true
2048
+ },
2049
+ "occurred_at": {
2050
+ "name": "occurred_at",
2051
+ "type": "timestamp with time zone",
2052
+ "primaryKey": false,
2053
+ "notNull": true
2054
+ },
2055
+ "updated_at": {
2056
+ "name": "updated_at",
2057
+ "type": "timestamp with time zone",
2058
+ "primaryKey": false,
2059
+ "notNull": true
2060
+ }
2061
+ },
2062
+ "indexes": {
2063
+ "junior_conversation_metrics_occurred_at_metric_idx": {
2064
+ "name": "junior_conversation_metrics_occurred_at_metric_idx",
2065
+ "columns": [
2066
+ {
2067
+ "expression": "occurred_at",
2068
+ "isExpression": false,
2069
+ "asc": true,
2070
+ "nulls": "last"
2071
+ },
2072
+ {
2073
+ "expression": "metric",
2074
+ "isExpression": false,
2075
+ "asc": true,
2076
+ "nulls": "last"
2077
+ }
2078
+ ],
2079
+ "isUnique": false,
2080
+ "concurrently": false,
2081
+ "method": "btree",
2082
+ "with": {}
2083
+ }
2084
+ },
2085
+ "foreignKeys": {
2086
+ "junior_conversation_metrics_conversation_id_junior_conversations_conversation_id_fk": {
2087
+ "name": "junior_conversation_metrics_conversation_id_junior_conversations_conversation_id_fk",
2088
+ "tableFrom": "junior_conversation_metrics",
2089
+ "tableTo": "junior_conversations",
2090
+ "columnsFrom": ["conversation_id"],
2091
+ "columnsTo": ["conversation_id"],
2092
+ "onDelete": "no action",
2093
+ "onUpdate": "no action"
2094
+ }
2095
+ },
2096
+ "compositePrimaryKeys": {
2097
+ "junior_conversation_metrics_conversation_id_run_id_metric_pk": {
2098
+ "name": "junior_conversation_metrics_conversation_id_run_id_metric_pk",
2099
+ "columns": ["conversation_id", "run_id", "metric"]
2100
+ }
2101
+ },
2102
+ "uniqueConstraints": {},
2103
+ "policies": {},
2104
+ "checkConstraints": {},
2105
+ "isRLSEnabled": false
2106
+ },
2107
+ "public.junior_conversation_participants": {
2108
+ "name": "junior_conversation_participants",
2109
+ "schema": "",
2110
+ "columns": {
2111
+ "user_id": {
2112
+ "name": "user_id",
2113
+ "type": "text",
2114
+ "primaryKey": false,
2115
+ "notNull": true
2116
+ },
2117
+ "root_conversation_id": {
2118
+ "name": "root_conversation_id",
2119
+ "type": "text",
2120
+ "primaryKey": false,
2121
+ "notNull": true
2122
+ },
2123
+ "last_message_at": {
2124
+ "name": "last_message_at",
2125
+ "type": "timestamp with time zone",
2126
+ "primaryKey": false,
2127
+ "notNull": true
2128
+ },
2129
+ "archived_at": {
2130
+ "name": "archived_at",
2131
+ "type": "timestamp with time zone",
2132
+ "primaryKey": false,
2133
+ "notNull": false
2134
+ }
2135
+ },
2136
+ "indexes": {
2137
+ "junior_conversation_participants_user_activity_idx": {
2138
+ "name": "junior_conversation_participants_user_activity_idx",
2139
+ "columns": [
2140
+ {
2141
+ "expression": "user_id",
2142
+ "isExpression": false,
2143
+ "asc": true,
2144
+ "nulls": "last"
2145
+ },
2146
+ {
2147
+ "expression": "last_message_at",
2148
+ "isExpression": false,
2149
+ "asc": false,
2150
+ "nulls": "last"
2151
+ }
2152
+ ],
2153
+ "isUnique": false,
2154
+ "concurrently": false,
2155
+ "method": "btree",
2156
+ "with": {}
2157
+ },
2158
+ "junior_conversation_participants_root_idx": {
2159
+ "name": "junior_conversation_participants_root_idx",
2160
+ "columns": [
2161
+ {
2162
+ "expression": "root_conversation_id",
2163
+ "isExpression": false,
2164
+ "asc": true,
2165
+ "nulls": "last"
2166
+ }
2167
+ ],
2168
+ "isUnique": false,
2169
+ "concurrently": false,
2170
+ "method": "btree",
2171
+ "with": {}
2172
+ }
2173
+ },
2174
+ "foreignKeys": {
2175
+ "junior_conversation_participants_user_id_junior_users_id_fk": {
2176
+ "name": "junior_conversation_participants_user_id_junior_users_id_fk",
2177
+ "tableFrom": "junior_conversation_participants",
2178
+ "tableTo": "junior_users",
2179
+ "columnsFrom": ["user_id"],
2180
+ "columnsTo": ["id"],
2181
+ "onDelete": "no action",
2182
+ "onUpdate": "no action"
2183
+ },
2184
+ "junior_conversation_participants_root_conversation_id_junior_conversations_conversation_id_fk": {
2185
+ "name": "junior_conversation_participants_root_conversation_id_junior_conversations_conversation_id_fk",
2186
+ "tableFrom": "junior_conversation_participants",
2187
+ "tableTo": "junior_conversations",
2188
+ "columnsFrom": ["root_conversation_id"],
2189
+ "columnsTo": ["conversation_id"],
2190
+ "onDelete": "no action",
2191
+ "onUpdate": "no action"
2192
+ }
2193
+ },
2194
+ "compositePrimaryKeys": {
2195
+ "junior_conversation_participants_user_root_pk": {
2196
+ "name": "junior_conversation_participants_user_root_pk",
2197
+ "columns": ["user_id", "root_conversation_id"]
2198
+ }
2199
+ },
2200
+ "uniqueConstraints": {},
2201
+ "policies": {},
2202
+ "checkConstraints": {},
2203
+ "isRLSEnabled": false
2204
+ },
2205
+ "public.junior_conversations": {
2206
+ "name": "junior_conversations",
2207
+ "schema": "",
2208
+ "columns": {
2209
+ "conversation_id": {
2210
+ "name": "conversation_id",
2211
+ "type": "text",
2212
+ "primaryKey": true,
2213
+ "notNull": true
2214
+ },
2215
+ "schema_version": {
2216
+ "name": "schema_version",
2217
+ "type": "integer",
2218
+ "primaryKey": false,
2219
+ "notNull": true,
2220
+ "default": 1
2221
+ },
2222
+ "source": {
2223
+ "name": "source",
2224
+ "type": "text",
2225
+ "primaryKey": false,
2226
+ "notNull": false
2227
+ },
2228
+ "source_json": {
2229
+ "name": "source_json",
2230
+ "type": "jsonb",
2231
+ "primaryKey": false,
2232
+ "notNull": false
2233
+ },
2234
+ "location_json": {
2235
+ "name": "location_json",
2236
+ "type": "jsonb",
2237
+ "primaryKey": false,
2238
+ "notNull": false
2239
+ },
2240
+ "destination_id": {
2241
+ "name": "destination_id",
2242
+ "type": "text",
2243
+ "primaryKey": false,
2244
+ "notNull": false
2245
+ },
2246
+ "destination_json": {
2247
+ "name": "destination_json",
2248
+ "type": "jsonb",
2249
+ "primaryKey": false,
2250
+ "notNull": false
2251
+ },
2252
+ "actor_identity_id": {
2253
+ "name": "actor_identity_id",
2254
+ "type": "text",
2255
+ "primaryKey": false,
2256
+ "notNull": false
2257
+ },
2258
+ "creator_identity_id": {
2259
+ "name": "creator_identity_id",
2260
+ "type": "text",
2261
+ "primaryKey": false,
2262
+ "notNull": false
2263
+ },
2264
+ "credential_subject_identity_id": {
2265
+ "name": "credential_subject_identity_id",
2266
+ "type": "text",
2267
+ "primaryKey": false,
2268
+ "notNull": false
2269
+ },
2270
+ "actor_json": {
2271
+ "name": "actor_json",
2272
+ "type": "jsonb",
2273
+ "primaryKey": false,
2274
+ "notNull": false
2275
+ },
2276
+ "channel_name": {
2277
+ "name": "channel_name",
2278
+ "type": "text",
2279
+ "primaryKey": false,
2280
+ "notNull": false
2281
+ },
2282
+ "title": {
2283
+ "name": "title",
2284
+ "type": "text",
2285
+ "primaryKey": false,
2286
+ "notNull": false
2287
+ },
2288
+ "created_at": {
2289
+ "name": "created_at",
2290
+ "type": "timestamp with time zone",
2291
+ "primaryKey": false,
2292
+ "notNull": true
2293
+ },
2294
+ "last_activity_at": {
2295
+ "name": "last_activity_at",
2296
+ "type": "timestamp with time zone",
2297
+ "primaryKey": false,
2298
+ "notNull": true
2299
+ },
2300
+ "updated_at": {
2301
+ "name": "updated_at",
2302
+ "type": "timestamp with time zone",
2303
+ "primaryKey": false,
2304
+ "notNull": true
2305
+ },
2306
+ "execution_updated_at": {
2307
+ "name": "execution_updated_at",
2308
+ "type": "timestamp with time zone",
2309
+ "primaryKey": false,
2310
+ "notNull": false
2311
+ },
2312
+ "execution_status": {
2313
+ "name": "execution_status",
2314
+ "type": "text",
2315
+ "primaryKey": false,
2316
+ "notNull": true
2317
+ },
2318
+ "run_id": {
2319
+ "name": "run_id",
2320
+ "type": "text",
2321
+ "primaryKey": false,
2322
+ "notNull": false
2323
+ },
2324
+ "last_checkpoint_at": {
2325
+ "name": "last_checkpoint_at",
2326
+ "type": "timestamp with time zone",
2327
+ "primaryKey": false,
2328
+ "notNull": false
2329
+ },
2330
+ "last_enqueued_at": {
2331
+ "name": "last_enqueued_at",
2332
+ "type": "timestamp with time zone",
2333
+ "primaryKey": false,
2334
+ "notNull": false
2335
+ },
2336
+ "parent_conversation_id": {
2337
+ "name": "parent_conversation_id",
2338
+ "type": "text",
2339
+ "primaryKey": false,
2340
+ "notNull": false
2341
+ },
2342
+ "forked_from_conversation_id": {
2343
+ "name": "forked_from_conversation_id",
2344
+ "type": "text",
2345
+ "primaryKey": false,
2346
+ "notNull": false
2347
+ },
2348
+ "root_conversation_id": {
2349
+ "name": "root_conversation_id",
2350
+ "type": "text",
2351
+ "primaryKey": false,
2352
+ "notNull": false
2353
+ },
2354
+ "transcript_purged_at": {
2355
+ "name": "transcript_purged_at",
2356
+ "type": "timestamp with time zone",
2357
+ "primaryKey": false,
2358
+ "notNull": false
2359
+ },
2360
+ "stopped_at": {
2361
+ "name": "stopped_at",
2362
+ "type": "timestamp with time zone",
2363
+ "primaryKey": false,
2364
+ "notNull": false
2365
+ },
2366
+ "duration_ms": {
2367
+ "name": "duration_ms",
2368
+ "type": "integer",
2369
+ "primaryKey": false,
2370
+ "notNull": true,
2371
+ "default": 0
2372
+ },
2373
+ "usage_json": {
2374
+ "name": "usage_json",
2375
+ "type": "jsonb",
2376
+ "primaryKey": false,
2377
+ "notNull": false
2378
+ },
2379
+ "execution_duration_ms": {
2380
+ "name": "execution_duration_ms",
2381
+ "type": "integer",
2382
+ "primaryKey": false,
2383
+ "notNull": true,
2384
+ "default": 0
2385
+ },
2386
+ "execution_usage_json": {
2387
+ "name": "execution_usage_json",
2388
+ "type": "jsonb",
2389
+ "primaryKey": false,
2390
+ "notNull": false
2391
+ },
2392
+ "metric_run_id": {
2393
+ "name": "metric_run_id",
2394
+ "type": "text",
2395
+ "primaryKey": false,
2396
+ "notNull": false
2397
+ },
2398
+ "archived_at": {
2399
+ "name": "archived_at",
2400
+ "type": "timestamp with time zone",
2401
+ "primaryKey": false,
2402
+ "notNull": false
2403
+ }
2404
+ },
2405
+ "indexes": {
2406
+ "junior_conversations_last_activity_idx": {
2407
+ "name": "junior_conversations_last_activity_idx",
2408
+ "columns": [
2409
+ {
2410
+ "expression": "last_activity_at",
2411
+ "isExpression": false,
2412
+ "asc": false,
2413
+ "nulls": "last"
2414
+ },
2415
+ {
2416
+ "expression": "conversation_id",
2417
+ "isExpression": false,
2418
+ "asc": true,
2419
+ "nulls": "last"
2420
+ }
2421
+ ],
2422
+ "isUnique": false,
2423
+ "concurrently": false,
2424
+ "method": "btree",
2425
+ "with": {}
2426
+ },
2427
+ "junior_conversations_active_idx": {
2428
+ "name": "junior_conversations_active_idx",
2429
+ "columns": [
2430
+ {
2431
+ "expression": "coalesce(\"execution_updated_at\", \"updated_at\")",
2432
+ "asc": true,
2433
+ "isExpression": true,
2434
+ "nulls": "last"
2435
+ },
2436
+ {
2437
+ "expression": "conversation_id",
2438
+ "isExpression": false,
2439
+ "asc": true,
2440
+ "nulls": "last"
2441
+ }
2442
+ ],
2443
+ "isUnique": false,
2444
+ "where": "\"junior_conversations\".\"execution_status\" <> 'idle'",
2445
+ "concurrently": false,
2446
+ "method": "btree",
2447
+ "with": {}
2448
+ },
2449
+ "junior_conversations_destination_activity_idx": {
2450
+ "name": "junior_conversations_destination_activity_idx",
2451
+ "columns": [
2452
+ {
2453
+ "expression": "destination_id",
2454
+ "isExpression": false,
2455
+ "asc": true,
2456
+ "nulls": "last"
2457
+ },
2458
+ {
2459
+ "expression": "last_activity_at",
2460
+ "isExpression": false,
2461
+ "asc": false,
2462
+ "nulls": "last"
2463
+ }
2464
+ ],
2465
+ "isUnique": false,
2466
+ "concurrently": false,
2467
+ "method": "btree",
2468
+ "with": {}
2469
+ },
2470
+ "junior_conversations_actor_activity_idx": {
2471
+ "name": "junior_conversations_actor_activity_idx",
2472
+ "columns": [
2473
+ {
2474
+ "expression": "actor_identity_id",
2475
+ "isExpression": false,
2476
+ "asc": true,
2477
+ "nulls": "last"
2478
+ },
2479
+ {
2480
+ "expression": "last_activity_at",
2481
+ "isExpression": false,
2482
+ "asc": false,
2483
+ "nulls": "last"
2484
+ }
2485
+ ],
2486
+ "isUnique": false,
2487
+ "concurrently": false,
2488
+ "method": "btree",
2489
+ "with": {}
2490
+ },
2491
+ "junior_conversations_parent_idx": {
2492
+ "name": "junior_conversations_parent_idx",
2493
+ "columns": [
2494
+ {
2495
+ "expression": "parent_conversation_id",
2496
+ "isExpression": false,
2497
+ "asc": true,
2498
+ "nulls": "last"
2499
+ }
2500
+ ],
2501
+ "isUnique": false,
2502
+ "concurrently": false,
2503
+ "method": "btree",
2504
+ "with": {}
2505
+ },
2506
+ "junior_conversations_forked_from_idx": {
2507
+ "name": "junior_conversations_forked_from_idx",
2508
+ "columns": [
2509
+ {
2510
+ "expression": "forked_from_conversation_id",
2511
+ "isExpression": false,
2512
+ "asc": true,
2513
+ "nulls": "last"
2514
+ }
2515
+ ],
2516
+ "isUnique": false,
2517
+ "concurrently": false,
2518
+ "method": "btree",
2519
+ "with": {}
2520
+ },
2521
+ "junior_conversations_root_idx": {
2522
+ "name": "junior_conversations_root_idx",
2523
+ "columns": [
2524
+ {
2525
+ "expression": "root_conversation_id",
2526
+ "isExpression": false,
2527
+ "asc": true,
2528
+ "nulls": "last"
2529
+ }
2530
+ ],
2531
+ "isUnique": false,
2532
+ "concurrently": false,
2533
+ "method": "btree",
2534
+ "with": {}
2535
+ }
2536
+ },
2537
+ "foreignKeys": {
2538
+ "junior_conversations_destination_id_junior_destinations_id_fk": {
2539
+ "name": "junior_conversations_destination_id_junior_destinations_id_fk",
2540
+ "tableFrom": "junior_conversations",
2541
+ "tableTo": "junior_destinations",
2542
+ "columnsFrom": ["destination_id"],
2543
+ "columnsTo": ["id"],
2544
+ "onDelete": "no action",
2545
+ "onUpdate": "no action"
2546
+ },
2547
+ "junior_conversations_actor_identity_id_junior_identities_id_fk": {
2548
+ "name": "junior_conversations_actor_identity_id_junior_identities_id_fk",
2549
+ "tableFrom": "junior_conversations",
2550
+ "tableTo": "junior_identities",
2551
+ "columnsFrom": ["actor_identity_id"],
2552
+ "columnsTo": ["id"],
2553
+ "onDelete": "no action",
2554
+ "onUpdate": "no action"
2555
+ },
2556
+ "junior_conversations_creator_identity_id_junior_identities_id_fk": {
2557
+ "name": "junior_conversations_creator_identity_id_junior_identities_id_fk",
2558
+ "tableFrom": "junior_conversations",
2559
+ "tableTo": "junior_identities",
2560
+ "columnsFrom": ["creator_identity_id"],
2561
+ "columnsTo": ["id"],
2562
+ "onDelete": "no action",
2563
+ "onUpdate": "no action"
2564
+ },
2565
+ "junior_conversations_credential_subject_identity_id_junior_identities_id_fk": {
2566
+ "name": "junior_conversations_credential_subject_identity_id_junior_identities_id_fk",
2567
+ "tableFrom": "junior_conversations",
2568
+ "tableTo": "junior_identities",
2569
+ "columnsFrom": ["credential_subject_identity_id"],
2570
+ "columnsTo": ["id"],
2571
+ "onDelete": "no action",
2572
+ "onUpdate": "no action"
2573
+ },
2574
+ "junior_conversations_parent_conversation_id_junior_conversations_conversation_id_fk": {
2575
+ "name": "junior_conversations_parent_conversation_id_junior_conversations_conversation_id_fk",
2576
+ "tableFrom": "junior_conversations",
2577
+ "tableTo": "junior_conversations",
2578
+ "columnsFrom": ["parent_conversation_id"],
2579
+ "columnsTo": ["conversation_id"],
2580
+ "onDelete": "no action",
2581
+ "onUpdate": "no action"
2582
+ },
2583
+ "junior_conversations_forked_from_conversation_id_junior_conversations_conversation_id_fk": {
2584
+ "name": "junior_conversations_forked_from_conversation_id_junior_conversations_conversation_id_fk",
2585
+ "tableFrom": "junior_conversations",
2586
+ "tableTo": "junior_conversations",
2587
+ "columnsFrom": ["forked_from_conversation_id"],
2588
+ "columnsTo": ["conversation_id"],
2589
+ "onDelete": "set null",
2590
+ "onUpdate": "no action"
2591
+ },
2592
+ "junior_conversations_root_conversation_id_junior_conversations_conversation_id_fk": {
2593
+ "name": "junior_conversations_root_conversation_id_junior_conversations_conversation_id_fk",
2594
+ "tableFrom": "junior_conversations",
2595
+ "tableTo": "junior_conversations",
2596
+ "columnsFrom": ["root_conversation_id"],
2597
+ "columnsTo": ["conversation_id"],
2598
+ "onDelete": "no action",
2599
+ "onUpdate": "no action"
2600
+ }
2601
+ },
2602
+ "compositePrimaryKeys": {},
2603
+ "uniqueConstraints": {},
2604
+ "policies": {},
2605
+ "checkConstraints": {},
2606
+ "isRLSEnabled": false
2607
+ },
2608
+ "public.junior_destinations": {
2609
+ "name": "junior_destinations",
2610
+ "schema": "",
2611
+ "columns": {
2612
+ "id": {
2613
+ "name": "id",
2614
+ "type": "text",
2615
+ "primaryKey": true,
2616
+ "notNull": true
2617
+ },
2618
+ "provider": {
2619
+ "name": "provider",
2620
+ "type": "text",
2621
+ "primaryKey": false,
2622
+ "notNull": true
2623
+ },
2624
+ "provider_tenant_id": {
2625
+ "name": "provider_tenant_id",
2626
+ "type": "text",
2627
+ "primaryKey": false,
2628
+ "notNull": true,
2629
+ "default": "''"
2630
+ },
2631
+ "provider_destination_id": {
2632
+ "name": "provider_destination_id",
2633
+ "type": "text",
2634
+ "primaryKey": false,
2635
+ "notNull": true
2636
+ },
2637
+ "kind": {
2638
+ "name": "kind",
2639
+ "type": "text",
2640
+ "primaryKey": false,
2641
+ "notNull": true
2642
+ },
2643
+ "parent_destination_id": {
2644
+ "name": "parent_destination_id",
2645
+ "type": "text",
2646
+ "primaryKey": false,
2647
+ "notNull": false
2648
+ },
2649
+ "display_name": {
2650
+ "name": "display_name",
2651
+ "type": "text",
2652
+ "primaryKey": false,
2653
+ "notNull": false
2654
+ },
2655
+ "visibility": {
2656
+ "name": "visibility",
2657
+ "type": "text",
2658
+ "primaryKey": false,
2659
+ "notNull": true,
2660
+ "default": "'unknown'"
2661
+ },
2662
+ "metadata_json": {
2663
+ "name": "metadata_json",
2664
+ "type": "jsonb",
2665
+ "primaryKey": false,
2666
+ "notNull": false
2667
+ },
2668
+ "created_at": {
2669
+ "name": "created_at",
2670
+ "type": "timestamp with time zone",
2671
+ "primaryKey": false,
2672
+ "notNull": true
2673
+ },
2674
+ "updated_at": {
2675
+ "name": "updated_at",
2676
+ "type": "timestamp with time zone",
2677
+ "primaryKey": false,
2678
+ "notNull": true
2679
+ }
2680
+ },
2681
+ "indexes": {
2682
+ "junior_destinations_provider_destination_uidx": {
2683
+ "name": "junior_destinations_provider_destination_uidx",
2684
+ "columns": [
2685
+ {
2686
+ "expression": "provider",
2687
+ "isExpression": false,
2688
+ "asc": true,
2689
+ "nulls": "last"
2690
+ },
2691
+ {
2692
+ "expression": "provider_tenant_id",
2693
+ "isExpression": false,
2694
+ "asc": true,
2695
+ "nulls": "last"
2696
+ },
2697
+ {
2698
+ "expression": "provider_destination_id",
2699
+ "isExpression": false,
2700
+ "asc": true,
2701
+ "nulls": "last"
2702
+ }
2703
+ ],
2704
+ "isUnique": true,
2705
+ "concurrently": false,
2706
+ "method": "btree",
2707
+ "with": {}
2708
+ },
2709
+ "junior_destinations_provider_kind_idx": {
2710
+ "name": "junior_destinations_provider_kind_idx",
2711
+ "columns": [
2712
+ {
2713
+ "expression": "provider",
2714
+ "isExpression": false,
2715
+ "asc": true,
2716
+ "nulls": "last"
2717
+ },
2718
+ {
2719
+ "expression": "kind",
2720
+ "isExpression": false,
2721
+ "asc": true,
2722
+ "nulls": "last"
2723
+ }
2724
+ ],
2725
+ "isUnique": false,
2726
+ "concurrently": false,
2727
+ "method": "btree",
2728
+ "with": {}
2729
+ }
2730
+ },
2731
+ "foreignKeys": {},
2732
+ "compositePrimaryKeys": {},
2733
+ "uniqueConstraints": {},
2734
+ "policies": {},
2735
+ "checkConstraints": {},
2736
+ "isRLSEnabled": false
2737
+ },
2738
+ "public.junior_identities": {
2739
+ "name": "junior_identities",
2740
+ "schema": "",
2741
+ "columns": {
2742
+ "id": {
2743
+ "name": "id",
2744
+ "type": "text",
2745
+ "primaryKey": true,
2746
+ "notNull": true
2747
+ },
2748
+ "kind": {
2749
+ "name": "kind",
2750
+ "type": "text",
2751
+ "primaryKey": false,
2752
+ "notNull": true
2753
+ },
2754
+ "provider": {
2755
+ "name": "provider",
2756
+ "type": "text",
2757
+ "primaryKey": false,
2758
+ "notNull": true
2759
+ },
2760
+ "provider_tenant_id": {
2761
+ "name": "provider_tenant_id",
2762
+ "type": "text",
2763
+ "primaryKey": false,
2764
+ "notNull": true,
2765
+ "default": "''"
2766
+ },
2767
+ "provider_subject_id": {
2768
+ "name": "provider_subject_id",
2769
+ "type": "text",
2770
+ "primaryKey": false,
2771
+ "notNull": true
2772
+ },
2773
+ "display_name": {
2774
+ "name": "display_name",
2775
+ "type": "text",
2776
+ "primaryKey": false,
2777
+ "notNull": false
2778
+ },
2779
+ "handle": {
2780
+ "name": "handle",
2781
+ "type": "text",
2782
+ "primaryKey": false,
2783
+ "notNull": false
2784
+ },
2785
+ "email": {
2786
+ "name": "email",
2787
+ "type": "text",
2788
+ "primaryKey": false,
2789
+ "notNull": false
2790
+ },
2791
+ "avatar_url": {
2792
+ "name": "avatar_url",
2793
+ "type": "text",
2794
+ "primaryKey": false,
2795
+ "notNull": false
2796
+ },
2797
+ "metadata_json": {
2798
+ "name": "metadata_json",
2799
+ "type": "jsonb",
2800
+ "primaryKey": false,
2801
+ "notNull": false
2802
+ },
2803
+ "created_at": {
2804
+ "name": "created_at",
2805
+ "type": "timestamp with time zone",
2806
+ "primaryKey": false,
2807
+ "notNull": true
2808
+ },
2809
+ "updated_at": {
2810
+ "name": "updated_at",
2811
+ "type": "timestamp with time zone",
2812
+ "primaryKey": false,
2813
+ "notNull": true
2814
+ },
2815
+ "user_id": {
2816
+ "name": "user_id",
2817
+ "type": "text",
2818
+ "primaryKey": false,
2819
+ "notNull": false
2820
+ },
2821
+ "email_normalized": {
2822
+ "name": "email_normalized",
2823
+ "type": "text",
2824
+ "primaryKey": false,
2825
+ "notNull": false
2826
+ },
2827
+ "email_verified": {
2828
+ "name": "email_verified",
2829
+ "type": "boolean",
2830
+ "primaryKey": false,
2831
+ "notNull": true,
2832
+ "default": false
2833
+ },
2834
+ "signed_in_at": {
2835
+ "name": "signed_in_at",
2836
+ "type": "timestamp with time zone",
2837
+ "primaryKey": false,
2838
+ "notNull": false
2839
+ }
2840
+ },
2841
+ "indexes": {
2842
+ "junior_identities_provider_subject_uidx": {
2843
+ "name": "junior_identities_provider_subject_uidx",
2844
+ "columns": [
2845
+ {
2846
+ "expression": "provider",
2847
+ "isExpression": false,
2848
+ "asc": true,
2849
+ "nulls": "last"
2850
+ },
2851
+ {
2852
+ "expression": "provider_tenant_id",
2853
+ "isExpression": false,
2854
+ "asc": true,
2855
+ "nulls": "last"
2856
+ },
2857
+ {
2858
+ "expression": "provider_subject_id",
2859
+ "isExpression": false,
2860
+ "asc": true,
2861
+ "nulls": "last"
2862
+ }
2863
+ ],
2864
+ "isUnique": true,
2865
+ "concurrently": false,
2866
+ "method": "btree",
2867
+ "with": {}
2868
+ },
2869
+ "junior_identities_user_idx": {
2870
+ "name": "junior_identities_user_idx",
2871
+ "columns": [
2872
+ {
2873
+ "expression": "user_id",
2874
+ "isExpression": false,
2875
+ "asc": true,
2876
+ "nulls": "last"
2877
+ }
2878
+ ],
2879
+ "isUnique": false,
2880
+ "concurrently": false,
2881
+ "method": "btree",
2882
+ "with": {}
2883
+ },
2884
+ "junior_identities_verified_email_idx": {
2885
+ "name": "junior_identities_verified_email_idx",
2886
+ "columns": [
2887
+ {
2888
+ "expression": "email_normalized",
2889
+ "isExpression": false,
2890
+ "asc": true,
2891
+ "nulls": "last"
2892
+ }
2893
+ ],
2894
+ "isUnique": false,
2895
+ "where": "\"junior_identities\".\"email_verified\" = true AND \"junior_identities\".\"email_normalized\" IS NOT NULL",
2896
+ "concurrently": false,
2897
+ "method": "btree",
2898
+ "with": {}
2899
+ },
2900
+ "junior_identities_kind_provider_idx": {
2901
+ "name": "junior_identities_kind_provider_idx",
2902
+ "columns": [
2903
+ {
2904
+ "expression": "kind",
2905
+ "isExpression": false,
2906
+ "asc": true,
2907
+ "nulls": "last"
2908
+ },
2909
+ {
2910
+ "expression": "provider",
2911
+ "isExpression": false,
2912
+ "asc": true,
2913
+ "nulls": "last"
2914
+ }
2915
+ ],
2916
+ "isUnique": false,
2917
+ "concurrently": false,
2918
+ "method": "btree",
2919
+ "with": {}
2920
+ }
2921
+ },
2922
+ "foreignKeys": {
2923
+ "junior_identities_user_id_junior_users_id_fk": {
2924
+ "name": "junior_identities_user_id_junior_users_id_fk",
2925
+ "tableFrom": "junior_identities",
2926
+ "tableTo": "junior_users",
2927
+ "columnsFrom": ["user_id"],
2928
+ "columnsTo": ["id"],
2929
+ "onDelete": "no action",
2930
+ "onUpdate": "no action"
2931
+ }
2932
+ },
2933
+ "compositePrimaryKeys": {},
2934
+ "uniqueConstraints": {},
2935
+ "policies": {},
2936
+ "checkConstraints": {},
2937
+ "isRLSEnabled": false
2938
+ },
2939
+ "public.junior_location_configurations": {
2940
+ "name": "junior_location_configurations",
2941
+ "schema": "",
2942
+ "columns": {
2943
+ "location_id": {
2944
+ "name": "location_id",
2945
+ "type": "text",
2946
+ "primaryKey": false,
2947
+ "notNull": true
2948
+ },
2949
+ "key": {
2950
+ "name": "key",
2951
+ "type": "text",
2952
+ "primaryKey": false,
2953
+ "notNull": true
2954
+ },
2955
+ "value": {
2956
+ "name": "value",
2957
+ "type": "text",
2958
+ "primaryKey": false,
2959
+ "notNull": true
2960
+ },
2961
+ "updated_at": {
2962
+ "name": "updated_at",
2963
+ "type": "timestamp with time zone",
2964
+ "primaryKey": false,
2965
+ "notNull": true
2966
+ },
2967
+ "updated_by": {
2968
+ "name": "updated_by",
2969
+ "type": "text",
2970
+ "primaryKey": false,
2971
+ "notNull": false
2972
+ },
2973
+ "source": {
2974
+ "name": "source",
2975
+ "type": "text",
2976
+ "primaryKey": false,
2977
+ "notNull": false
2978
+ },
2979
+ "expires_at": {
2980
+ "name": "expires_at",
2981
+ "type": "text",
2982
+ "primaryKey": false,
2983
+ "notNull": false
2984
+ }
2985
+ },
2986
+ "indexes": {},
2987
+ "foreignKeys": {
2988
+ "junior_location_configurations_location_id_junior_destinations_id_fk": {
2989
+ "name": "junior_location_configurations_location_id_junior_destinations_id_fk",
2990
+ "tableFrom": "junior_location_configurations",
2991
+ "tableTo": "junior_destinations",
2992
+ "columnsFrom": ["location_id"],
2993
+ "columnsTo": ["id"],
2994
+ "onDelete": "cascade",
2995
+ "onUpdate": "no action"
2996
+ }
2997
+ },
2998
+ "compositePrimaryKeys": {
2999
+ "junior_location_configurations_location_id_key_pk": {
3000
+ "name": "junior_location_configurations_location_id_key_pk",
3001
+ "columns": ["location_id", "key"]
3002
+ }
3003
+ },
3004
+ "uniqueConstraints": {},
3005
+ "policies": {},
3006
+ "checkConstraints": {},
3007
+ "isRLSEnabled": false
3008
+ },
3009
+ "public.junior_snapshots": {
3010
+ "name": "junior_snapshots",
3011
+ "schema": "",
3012
+ "columns": {
3013
+ "id": {
3014
+ "name": "id",
3015
+ "type": "text",
3016
+ "primaryKey": true,
3017
+ "notNull": true
3018
+ },
3019
+ "workspace_id": {
3020
+ "name": "workspace_id",
3021
+ "type": "text",
3022
+ "primaryKey": false,
3023
+ "notNull": true
3024
+ },
3025
+ "profile_hash": {
3026
+ "name": "profile_hash",
3027
+ "type": "text",
3028
+ "primaryKey": false,
3029
+ "notNull": true
3030
+ },
3031
+ "status": {
3032
+ "name": "status",
3033
+ "type": "text",
3034
+ "primaryKey": false,
3035
+ "notNull": true
3036
+ },
3037
+ "snapshot_id": {
3038
+ "name": "snapshot_id",
3039
+ "type": "text",
3040
+ "primaryKey": false,
3041
+ "notNull": false
3042
+ },
3043
+ "build_duration_ms": {
3044
+ "name": "build_duration_ms",
3045
+ "type": "integer",
3046
+ "primaryKey": false,
3047
+ "notNull": false
3048
+ },
3049
+ "size_bytes": {
3050
+ "name": "size_bytes",
3051
+ "type": "bigint",
3052
+ "primaryKey": false,
3053
+ "notNull": false
3054
+ },
3055
+ "generated_at": {
3056
+ "name": "generated_at",
3057
+ "type": "timestamp with time zone",
3058
+ "primaryKey": false,
3059
+ "notNull": false
3060
+ },
3061
+ "build_started_at": {
3062
+ "name": "build_started_at",
3063
+ "type": "timestamp with time zone",
3064
+ "primaryKey": false,
3065
+ "notNull": false
3066
+ },
3067
+ "build_phase": {
3068
+ "name": "build_phase",
3069
+ "type": "text",
3070
+ "primaryKey": false,
3071
+ "notNull": false
3072
+ },
3073
+ "build_sandbox_name": {
3074
+ "name": "build_sandbox_name",
3075
+ "type": "text",
3076
+ "primaryKey": false,
3077
+ "notNull": false
3078
+ },
3079
+ "build_command_id": {
3080
+ "name": "build_command_id",
3081
+ "type": "text",
3082
+ "primaryKey": false,
3083
+ "notNull": false
3084
+ },
3085
+ "build_error": {
3086
+ "name": "build_error",
3087
+ "type": "text",
3088
+ "primaryKey": false,
3089
+ "notNull": false
3090
+ },
3091
+ "created_at": {
3092
+ "name": "created_at",
3093
+ "type": "timestamp with time zone",
3094
+ "primaryKey": false,
3095
+ "notNull": true
3096
+ },
3097
+ "updated_at": {
3098
+ "name": "updated_at",
3099
+ "type": "timestamp with time zone",
3100
+ "primaryKey": false,
3101
+ "notNull": true
3102
+ }
3103
+ },
3104
+ "indexes": {
3105
+ "junior_snapshots_snapshot_id_uidx": {
3106
+ "name": "junior_snapshots_snapshot_id_uidx",
3107
+ "columns": [
3108
+ {
3109
+ "expression": "snapshot_id",
3110
+ "isExpression": false,
3111
+ "asc": true,
3112
+ "nulls": "last"
3113
+ }
3114
+ ],
3115
+ "isUnique": true,
3116
+ "concurrently": false,
3117
+ "method": "btree",
3118
+ "with": {}
3119
+ },
3120
+ "junior_snapshots_workspace_idx": {
3121
+ "name": "junior_snapshots_workspace_idx",
3122
+ "columns": [
3123
+ {
3124
+ "expression": "workspace_id",
3125
+ "isExpression": false,
3126
+ "asc": true,
3127
+ "nulls": "last"
3128
+ }
3129
+ ],
3130
+ "isUnique": false,
3131
+ "concurrently": false,
3132
+ "method": "btree",
3133
+ "with": {}
3134
+ },
3135
+ "junior_snapshots_workspace_profile_status_idx": {
3136
+ "name": "junior_snapshots_workspace_profile_status_idx",
3137
+ "columns": [
3138
+ {
3139
+ "expression": "workspace_id",
3140
+ "isExpression": false,
3141
+ "asc": true,
3142
+ "nulls": "last"
3143
+ },
3144
+ {
3145
+ "expression": "profile_hash",
3146
+ "isExpression": false,
3147
+ "asc": true,
3148
+ "nulls": "last"
3149
+ },
3150
+ {
3151
+ "expression": "status",
3152
+ "isExpression": false,
3153
+ "asc": true,
3154
+ "nulls": "last"
3155
+ }
3156
+ ],
3157
+ "isUnique": false,
3158
+ "concurrently": false,
3159
+ "method": "btree",
3160
+ "with": {}
3161
+ },
3162
+ "junior_snapshots_active_build_uidx": {
3163
+ "name": "junior_snapshots_active_build_uidx",
3164
+ "columns": [
3165
+ {
3166
+ "expression": "workspace_id",
3167
+ "isExpression": false,
3168
+ "asc": true,
3169
+ "nulls": "last"
3170
+ },
3171
+ {
3172
+ "expression": "profile_hash",
3173
+ "isExpression": false,
3174
+ "asc": true,
3175
+ "nulls": "last"
3176
+ }
3177
+ ],
3178
+ "isUnique": true,
3179
+ "where": "\"junior_snapshots\".\"status\" = 'building'",
3180
+ "concurrently": false,
3181
+ "method": "btree",
3182
+ "with": {}
3183
+ },
3184
+ "junior_snapshots_workspace_status_idx": {
3185
+ "name": "junior_snapshots_workspace_status_idx",
3186
+ "columns": [
3187
+ {
3188
+ "expression": "workspace_id",
3189
+ "isExpression": false,
3190
+ "asc": true,
3191
+ "nulls": "last"
3192
+ },
3193
+ {
3194
+ "expression": "status",
3195
+ "isExpression": false,
3196
+ "asc": true,
3197
+ "nulls": "last"
3198
+ }
3199
+ ],
3200
+ "isUnique": false,
3201
+ "concurrently": false,
3202
+ "method": "btree",
3203
+ "with": {}
3204
+ }
3205
+ },
3206
+ "foreignKeys": {
3207
+ "junior_snapshots_workspace_id_junior_workspaces_id_fk": {
3208
+ "name": "junior_snapshots_workspace_id_junior_workspaces_id_fk",
3209
+ "tableFrom": "junior_snapshots",
3210
+ "tableTo": "junior_workspaces",
3211
+ "columnsFrom": ["workspace_id"],
3212
+ "columnsTo": ["id"],
3213
+ "onDelete": "cascade",
3214
+ "onUpdate": "no action"
3215
+ }
3216
+ },
3217
+ "compositePrimaryKeys": {},
3218
+ "uniqueConstraints": {},
3219
+ "policies": {},
3220
+ "checkConstraints": {
3221
+ "junior_snapshots_status_check": {
3222
+ "name": "junior_snapshots_status_check",
3223
+ "value": "\"junior_snapshots\".\"status\" in ('building', 'failed', 'ready')"
3224
+ },
3225
+ "junior_snapshots_build_phase_check": {
3226
+ "name": "junior_snapshots_build_phase_check",
3227
+ "value": "\"junior_snapshots\".\"build_phase\" is null or \"junior_snapshots\".\"build_phase\" in ('created', 'dependencies_installed', 'repositories_prepared')"
3228
+ },
3229
+ "junior_snapshots_ready_fields_check": {
3230
+ "name": "junior_snapshots_ready_fields_check",
3231
+ "value": "\"junior_snapshots\".\"status\" <> 'ready' or (\"junior_snapshots\".\"snapshot_id\" is not null and \"junior_snapshots\".\"build_duration_ms\" is not null and \"junior_snapshots\".\"generated_at\" is not null)"
3232
+ },
3233
+ "junior_snapshots_build_fields_check": {
3234
+ "name": "junior_snapshots_build_fields_check",
3235
+ "value": "\"junior_snapshots\".\"status\" = 'ready' or (\"junior_snapshots\".\"build_started_at\" is not null and \"junior_snapshots\".\"build_phase\" is not null)"
3236
+ },
3237
+ "junior_snapshots_build_duration_check": {
3238
+ "name": "junior_snapshots_build_duration_check",
3239
+ "value": "\"junior_snapshots\".\"build_duration_ms\" is null or \"junior_snapshots\".\"build_duration_ms\" >= 0"
3240
+ },
3241
+ "junior_snapshots_size_bytes_check": {
3242
+ "name": "junior_snapshots_size_bytes_check",
3243
+ "value": "\"junior_snapshots\".\"size_bytes\" is null or \"junior_snapshots\".\"size_bytes\" >= 0"
3244
+ }
3245
+ },
3246
+ "isRLSEnabled": false
3247
+ },
3248
+ "public.junior_stats": {
3249
+ "name": "junior_stats",
3250
+ "schema": "",
3251
+ "columns": {
3252
+ "date": {
3253
+ "name": "date",
3254
+ "type": "date",
3255
+ "primaryKey": false,
3256
+ "notNull": true
3257
+ },
3258
+ "namespace": {
3259
+ "name": "namespace",
3260
+ "type": "text",
3261
+ "primaryKey": false,
3262
+ "notNull": true
3263
+ },
3264
+ "metric": {
3265
+ "name": "metric",
3266
+ "type": "text",
3267
+ "primaryKey": false,
3268
+ "notNull": true
3269
+ },
3270
+ "name": {
3271
+ "name": "name",
3272
+ "type": "text",
3273
+ "primaryKey": false,
3274
+ "notNull": true
3275
+ },
3276
+ "count": {
3277
+ "name": "count",
3278
+ "type": "integer",
3279
+ "primaryKey": false,
3280
+ "notNull": true,
3281
+ "default": 0
3282
+ }
3283
+ },
3284
+ "indexes": {},
3285
+ "foreignKeys": {},
3286
+ "compositePrimaryKeys": {
3287
+ "junior_stats_date_namespace_metric_name_pk": {
3288
+ "name": "junior_stats_date_namespace_metric_name_pk",
3289
+ "columns": ["date", "namespace", "metric", "name"]
3290
+ }
3291
+ },
3292
+ "uniqueConstraints": {},
3293
+ "policies": {},
3294
+ "checkConstraints": {},
3295
+ "isRLSEnabled": false
3296
+ },
3297
+ "public.junior_users": {
3298
+ "name": "junior_users",
3299
+ "schema": "",
3300
+ "columns": {
3301
+ "id": {
3302
+ "name": "id",
3303
+ "type": "text",
3304
+ "primaryKey": true,
3305
+ "notNull": true
3306
+ },
3307
+ "primary_email": {
3308
+ "name": "primary_email",
3309
+ "type": "text",
3310
+ "primaryKey": false,
3311
+ "notNull": true
3312
+ },
3313
+ "primary_email_normalized": {
3314
+ "name": "primary_email_normalized",
3315
+ "type": "text",
3316
+ "primaryKey": false,
3317
+ "notNull": true
3318
+ },
3319
+ "display_name": {
3320
+ "name": "display_name",
3321
+ "type": "text",
3322
+ "primaryKey": false,
3323
+ "notNull": false
3324
+ },
3325
+ "timezone": {
3326
+ "name": "timezone",
3327
+ "type": "text",
3328
+ "primaryKey": false,
3329
+ "notNull": false
3330
+ },
3331
+ "is_admin": {
3332
+ "name": "is_admin",
3333
+ "type": "boolean",
3334
+ "primaryKey": false,
3335
+ "notNull": true,
3336
+ "default": false
3337
+ },
3338
+ "created_at": {
3339
+ "name": "created_at",
3340
+ "type": "timestamp with time zone",
3341
+ "primaryKey": false,
3342
+ "notNull": true
3343
+ },
3344
+ "updated_at": {
3345
+ "name": "updated_at",
3346
+ "type": "timestamp with time zone",
3347
+ "primaryKey": false,
3348
+ "notNull": true
3349
+ }
3350
+ },
3351
+ "indexes": {
3352
+ "junior_users_primary_email_normalized_uidx": {
3353
+ "name": "junior_users_primary_email_normalized_uidx",
3354
+ "columns": [
3355
+ {
3356
+ "expression": "primary_email_normalized",
3357
+ "isExpression": false,
3358
+ "asc": true,
3359
+ "nulls": "last"
3360
+ }
3361
+ ],
3362
+ "isUnique": true,
3363
+ "concurrently": false,
3364
+ "method": "btree",
3365
+ "with": {}
3366
+ }
3367
+ },
3368
+ "foreignKeys": {},
3369
+ "compositePrimaryKeys": {},
3370
+ "uniqueConstraints": {},
3371
+ "policies": {},
3372
+ "checkConstraints": {},
3373
+ "isRLSEnabled": false
3374
+ },
3375
+ "public.junior_workspace_repos": {
3376
+ "name": "junior_workspace_repos",
3377
+ "schema": "",
3378
+ "columns": {
3379
+ "workspace_id": {
3380
+ "name": "workspace_id",
3381
+ "type": "text",
3382
+ "primaryKey": false,
3383
+ "notNull": true
3384
+ },
3385
+ "provider": {
3386
+ "name": "provider",
3387
+ "type": "text",
3388
+ "primaryKey": false,
3389
+ "notNull": true
3390
+ },
3391
+ "repo": {
3392
+ "name": "repo",
3393
+ "type": "text",
3394
+ "primaryKey": false,
3395
+ "notNull": true
3396
+ }
3397
+ },
3398
+ "indexes": {},
3399
+ "foreignKeys": {
3400
+ "junior_workspace_repos_workspace_id_junior_workspaces_id_fk": {
3401
+ "name": "junior_workspace_repos_workspace_id_junior_workspaces_id_fk",
3402
+ "tableFrom": "junior_workspace_repos",
3403
+ "tableTo": "junior_workspaces",
3404
+ "columnsFrom": ["workspace_id"],
3405
+ "columnsTo": ["id"],
3406
+ "onDelete": "cascade",
3407
+ "onUpdate": "no action"
3408
+ }
3409
+ },
3410
+ "compositePrimaryKeys": {
3411
+ "junior_workspace_repos_workspace_id_provider_repo_pk": {
3412
+ "name": "junior_workspace_repos_workspace_id_provider_repo_pk",
3413
+ "columns": ["workspace_id", "provider", "repo"]
3414
+ }
3415
+ },
3416
+ "uniqueConstraints": {},
3417
+ "policies": {},
3418
+ "checkConstraints": {},
3419
+ "isRLSEnabled": false
3420
+ },
3421
+ "public.junior_workspaces": {
3422
+ "name": "junior_workspaces",
3423
+ "schema": "",
3424
+ "columns": {
3425
+ "id": {
3426
+ "name": "id",
3427
+ "type": "text",
3428
+ "primaryKey": true,
3429
+ "notNull": true
3430
+ },
3431
+ "name": {
3432
+ "name": "name",
3433
+ "type": "text",
3434
+ "primaryKey": false,
3435
+ "notNull": true
3436
+ },
3437
+ "setup_script": {
3438
+ "name": "setup_script",
3439
+ "type": "text",
3440
+ "primaryKey": false,
3441
+ "notNull": true,
3442
+ "default": "''"
3443
+ },
3444
+ "vcpus": {
3445
+ "name": "vcpus",
3446
+ "type": "integer",
3447
+ "primaryKey": false,
3448
+ "notNull": false
3449
+ },
3450
+ "created_at": {
3451
+ "name": "created_at",
3452
+ "type": "timestamp with time zone",
3453
+ "primaryKey": false,
3454
+ "notNull": true
3455
+ },
3456
+ "updated_at": {
3457
+ "name": "updated_at",
3458
+ "type": "timestamp with time zone",
3459
+ "primaryKey": false,
3460
+ "notNull": true
3461
+ }
3462
+ },
3463
+ "indexes": {
3464
+ "junior_workspaces_name_idx": {
3465
+ "name": "junior_workspaces_name_idx",
3466
+ "columns": [
3467
+ {
3468
+ "expression": "name",
3469
+ "isExpression": false,
3470
+ "asc": true,
3471
+ "nulls": "last"
3472
+ }
3473
+ ],
3474
+ "isUnique": true,
3475
+ "concurrently": false,
3476
+ "method": "btree",
3477
+ "with": {}
3478
+ }
3479
+ },
3480
+ "foreignKeys": {},
3481
+ "compositePrimaryKeys": {},
3482
+ "uniqueConstraints": {},
3483
+ "policies": {},
3484
+ "checkConstraints": {},
3485
+ "isRLSEnabled": false
3486
+ }
3487
+ },
3488
+ "enums": {},
3489
+ "schemas": {},
3490
+ "sequences": {},
3491
+ "roles": {},
3492
+ "policies": {},
3493
+ "views": {},
3494
+ "_meta": {
3495
+ "columns": {},
3496
+ "schemas": {},
3497
+ "tables": {}
3498
+ }
3499
+ }