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