@usine/engine 0.3.0 → 0.5.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 (201) hide show
  1. package/LICENSE +661 -21
  2. package/README.md +112 -38
  3. package/dist/board-moves/board-moves.d.ts +20 -0
  4. package/dist/board-moves/board-moves.d.ts.map +1 -0
  5. package/dist/board-moves/board-moves.js +74 -0
  6. package/dist/board-moves/board-moves.js.map +1 -0
  7. package/dist/board-moves/model.d.ts +21 -0
  8. package/dist/board-moves/model.d.ts.map +1 -0
  9. package/dist/board-moves/model.js +22 -0
  10. package/dist/board-moves/model.js.map +1 -0
  11. package/dist/cursor/cursor.d.ts +2 -6
  12. package/dist/cursor/cursor.d.ts.map +1 -1
  13. package/dist/cursor/cursor.js +2 -6
  14. package/dist/cursor/cursor.js.map +1 -1
  15. package/dist/cycle-budget/cycle-budget.d.ts +14 -8
  16. package/dist/cycle-budget/cycle-budget.d.ts.map +1 -1
  17. package/dist/cycle-budget/cycle-budget.js +51 -10
  18. package/dist/cycle-budget/cycle-budget.js.map +1 -1
  19. package/dist/cycle-budget/model.d.ts +6 -2
  20. package/dist/cycle-budget/model.d.ts.map +1 -1
  21. package/dist/cycle-budget/model.js +5 -2
  22. package/dist/cycle-budget/model.js.map +1 -1
  23. package/dist/cycle-budget/queries.d.ts +1 -1
  24. package/dist/cycle-budget/queries.d.ts.map +1 -1
  25. package/dist/cycle-budget/queries.js +3 -3
  26. package/dist/cycle-budget/queries.js.map +1 -1
  27. package/dist/database/database.d.ts +1 -1
  28. package/dist/database/database.d.ts.map +1 -1
  29. package/dist/database/local-sqlite.d.ts +13 -10
  30. package/dist/database/local-sqlite.d.ts.map +1 -1
  31. package/dist/database/local-sqlite.js +22 -17
  32. package/dist/database/local-sqlite.js.map +1 -1
  33. package/dist/database/schema.d.ts +668 -36
  34. package/dist/database/schema.d.ts.map +1 -1
  35. package/dist/database/schema.js +123 -23
  36. package/dist/database/schema.js.map +1 -1
  37. package/dist/{workflow → engine}/admission.d.ts +2 -2
  38. package/dist/engine/admission.d.ts.map +1 -0
  39. package/dist/{workflow → engine}/admission.js +4 -4
  40. package/dist/engine/admission.js.map +1 -0
  41. package/dist/engine/checkout-recovery.d.ts +79 -0
  42. package/dist/engine/checkout-recovery.d.ts.map +1 -0
  43. package/dist/engine/checkout-recovery.js +238 -0
  44. package/dist/engine/checkout-recovery.js.map +1 -0
  45. package/dist/engine/engine.d.ts +67 -26
  46. package/dist/engine/engine.d.ts.map +1 -1
  47. package/dist/engine/engine.js +136 -129
  48. package/dist/engine/engine.js.map +1 -1
  49. package/dist/engine/error.d.ts +29 -10
  50. package/dist/engine/error.d.ts.map +1 -1
  51. package/dist/engine/error.js +28 -8
  52. package/dist/engine/error.js.map +1 -1
  53. package/dist/engine/lifecycle.d.ts +83 -28
  54. package/dist/engine/lifecycle.d.ts.map +1 -1
  55. package/dist/engine/lifecycle.js +94 -45
  56. package/dist/engine/lifecycle.js.map +1 -1
  57. package/dist/engine/retry.d.ts +16 -0
  58. package/dist/engine/retry.d.ts.map +1 -0
  59. package/dist/engine/retry.js +18 -0
  60. package/dist/engine/retry.js.map +1 -0
  61. package/dist/engine/run-again.d.ts +45 -0
  62. package/dist/engine/run-again.d.ts.map +1 -0
  63. package/dist/engine/run-again.js +56 -0
  64. package/dist/engine/run-again.js.map +1 -0
  65. package/dist/engine/run-driver.d.ts +68 -0
  66. package/dist/engine/run-driver.d.ts.map +1 -0
  67. package/dist/engine/run-driver.js +448 -0
  68. package/dist/engine/run-driver.js.map +1 -0
  69. package/dist/engine/shutdown.d.ts +3 -4
  70. package/dist/engine/shutdown.d.ts.map +1 -1
  71. package/dist/engine/shutdown.js +3 -4
  72. package/dist/engine/shutdown.js.map +1 -1
  73. package/dist/engine/submission.d.ts +31 -11
  74. package/dist/engine/submission.d.ts.map +1 -1
  75. package/dist/engine/submission.js +43 -12
  76. package/dist/engine/submission.js.map +1 -1
  77. package/dist/engine/unconfirmed-stops.d.ts +27 -0
  78. package/dist/engine/unconfirmed-stops.d.ts.map +1 -0
  79. package/dist/engine/unconfirmed-stops.js +26 -0
  80. package/dist/engine/unconfirmed-stops.js.map +1 -0
  81. package/dist/item-projection/item-projection.d.ts +14 -4
  82. package/dist/item-projection/item-projection.d.ts.map +1 -1
  83. package/dist/item-projection/item-projection.js +60 -14
  84. package/dist/item-projection/item-projection.js.map +1 -1
  85. package/dist/item-projection/model.d.ts +5 -1
  86. package/dist/item-projection/model.d.ts.map +1 -1
  87. package/dist/item-projection/model.js +6 -2
  88. package/dist/item-projection/model.js.map +1 -1
  89. package/dist/loop-control/loop-control.d.ts +5 -5
  90. package/dist/loop-control/loop-control.d.ts.map +1 -1
  91. package/dist/loop-control/loop-control.js +4 -4
  92. package/dist/loop-control/loop-control.js.map +1 -1
  93. package/dist/loop-control/model.d.ts +1 -1
  94. package/dist/loop-control/model.d.ts.map +1 -1
  95. package/dist/loop-control/model.js +1 -1
  96. package/dist/loop-control/model.js.map +1 -1
  97. package/dist/repository-label-projection/model.d.ts +2 -2
  98. package/dist/repository-label-projection/model.d.ts.map +1 -1
  99. package/dist/repository-label-projection/model.js +2 -2
  100. package/dist/repository-label-projection/model.js.map +1 -1
  101. package/dist/repository-label-projection/repository-label-projection.d.ts +1 -1
  102. package/dist/repository-label-projection/repository-label-projection.d.ts.map +1 -1
  103. package/dist/repository-label-projection/repository-label-projection.js +1 -1
  104. package/dist/repository-label-projection/repository-label-projection.js.map +1 -1
  105. package/dist/run-reader/model.d.ts +62 -4
  106. package/dist/run-reader/model.d.ts.map +1 -1
  107. package/dist/run-reader/model.js +66 -7
  108. package/dist/run-reader/model.js.map +1 -1
  109. package/dist/run-reader/run-reader.d.ts +25 -10
  110. package/dist/run-reader/run-reader.d.ts.map +1 -1
  111. package/dist/run-reader/run-reader.js +25 -7
  112. package/dist/run-reader/run-reader.js.map +1 -1
  113. package/dist/step-executor.d.ts +86 -13
  114. package/dist/step-executor.d.ts.map +1 -1
  115. package/dist/step-executor.js +10 -2
  116. package/dist/step-executor.js.map +1 -1
  117. package/dist/store/attempt-windows.d.ts +8 -0
  118. package/dist/store/attempt-windows.d.ts.map +1 -0
  119. package/dist/store/attempt-windows.js +53 -0
  120. package/dist/store/attempt-windows.js.map +1 -0
  121. package/dist/store/codec.d.ts +242 -43
  122. package/dist/store/codec.d.ts.map +1 -1
  123. package/dist/store/codec.js +61 -16
  124. package/dist/store/codec.js.map +1 -1
  125. package/dist/store/leftovers.d.ts +10 -0
  126. package/dist/store/leftovers.d.ts.map +1 -0
  127. package/dist/store/leftovers.js +43 -0
  128. package/dist/store/leftovers.js.map +1 -0
  129. package/dist/store/loop-items.d.ts +16 -0
  130. package/dist/store/loop-items.d.ts.map +1 -0
  131. package/dist/store/loop-items.js +185 -0
  132. package/dist/store/loop-items.js.map +1 -0
  133. package/dist/store/queries.d.ts +385 -36
  134. package/dist/store/queries.d.ts.map +1 -1
  135. package/dist/store/queries.js +355 -107
  136. package/dist/store/queries.js.map +1 -1
  137. package/dist/store/store.d.ts +106 -54
  138. package/dist/store/store.d.ts.map +1 -1
  139. package/dist/store/store.js +497 -190
  140. package/dist/store/store.js.map +1 -1
  141. package/dist/store/transcript.d.ts +3 -3
  142. package/dist/store/transcript.d.ts.map +1 -1
  143. package/dist/store/transcript.js +25 -6
  144. package/dist/store/transcript.js.map +1 -1
  145. package/dist/transcript.d.ts +19 -20
  146. package/dist/transcript.d.ts.map +1 -1
  147. package/dist/transcript.js +23 -21
  148. package/dist/transcript.js.map +1 -1
  149. package/dist/trigger-condition.d.ts +23 -0
  150. package/dist/trigger-condition.d.ts.map +1 -0
  151. package/dist/trigger-condition.js +8 -0
  152. package/dist/trigger-condition.js.map +1 -0
  153. package/drizzle/20260917071139_resolve_run_failure/migration.sql +1 -0
  154. package/drizzle/20260917071139_resolve_run_failure/snapshot.json +1471 -0
  155. package/drizzle/20260918032643_attempt_salvage/migration.sql +1 -0
  156. package/drizzle/20260918032643_attempt_salvage/snapshot.json +1481 -0
  157. package/drizzle/20261011153856_drop_workflow_tables/migration.sql +4 -0
  158. package/drizzle/20261011153856_drop_workflow_tables/snapshot.json +1433 -0
  159. package/drizzle/20261017155043_attempt_salvage_check/migration.sql +41 -0
  160. package/drizzle/20261017155043_attempt_salvage_check/snapshot.json +1421 -0
  161. package/drizzle/20261018162700_discard_attempt_leftovers/migration.sql +1 -0
  162. package/drizzle/20261018162700_discard_attempt_leftovers/snapshot.json +1431 -0
  163. package/drizzle/20261018172605_loop_items_and_reopenings/migration.sql +15 -0
  164. package/drizzle/20261018172605_loop_items_and_reopenings/snapshot.json +1574 -0
  165. package/drizzle/20261018180339_attempt_ended_at/migration.sql +1 -0
  166. package/drizzle/20261018180339_attempt_ended_at/snapshot.json +1584 -0
  167. package/drizzle/20261019104043_run_approval_source/migration.sql +15 -0
  168. package/drizzle/20261019104043_run_approval_source/snapshot.json +1610 -0
  169. package/drizzle/20261019133538_board_moves/migration.sql +14 -0
  170. package/drizzle/20261019133538_board_moves/snapshot.json +1731 -0
  171. package/drizzle/20261019170538_item_projection_gone/migration.sql +1 -0
  172. package/drizzle/20261019170538_item_projection_gone/snapshot.json +1741 -0
  173. package/drizzle/20261019180649_run_again_events/migration.sql +7 -0
  174. package/drizzle/20261019180649_run_again_events/snapshot.json +1804 -0
  175. package/drizzle/20261019185008_trigger_event_permissions/migration.sql +1 -0
  176. package/drizzle/20261019185008_trigger_event_permissions/snapshot.json +1814 -0
  177. package/drizzle/20261020103746_attempt_start/migration.sql +5 -0
  178. package/drizzle/20261020103746_attempt_start/snapshot.json +1844 -0
  179. package/drizzle/20261020125211_attempt_comments/migration.sql +1 -0
  180. package/drizzle/20261020125211_attempt_comments/snapshot.json +1854 -0
  181. package/drizzle/20261020191320_run_closed_at/migration.sql +6 -0
  182. package/drizzle/20261020191320_run_closed_at/snapshot.json +1864 -0
  183. package/drizzle/20261023091428_rename_loop_item_hold_to_suppression/migration.sql +2 -0
  184. package/drizzle/20261023091428_rename_loop_item_hold_to_suppression/snapshot.json +1867 -0
  185. package/drizzle/20261024162954_cycle_ask_closures/migration.sql +10 -0
  186. package/drizzle/20261024162954_cycle_ask_closures/snapshot.json +1948 -0
  187. package/drizzle/20261027104206_attempt_out_of_memory/migration.sql +1 -0
  188. package/drizzle/20261027104206_attempt_out_of_memory/snapshot.json +1958 -0
  189. package/drizzle/20261027191944_failure_resolution/migration.sql +1 -0
  190. package/drizzle/20261027191944_failure_resolution/snapshot.json +1968 -0
  191. package/package.json +22 -12
  192. package/dist/workflow/admission.d.ts.map +0 -1
  193. package/dist/workflow/admission.js.map +0 -1
  194. package/dist/workflow/command.d.ts +0 -13
  195. package/dist/workflow/command.d.ts.map +0 -1
  196. package/dist/workflow/command.js +0 -17
  197. package/dist/workflow/command.js.map +0 -1
  198. package/dist/workflow/workflow.d.ts +0 -18
  199. package/dist/workflow/workflow.d.ts.map +0 -1
  200. package/dist/workflow/workflow.js +0 -108
  201. package/dist/workflow/workflow.js.map +0 -1
@@ -0,0 +1,1814 @@
1
+ {
2
+ "version": "7",
3
+ "dialect": "sqlite",
4
+ "id": "9f24478d-4879-4b18-8bd8-4e92c304e925",
5
+ "prevIds": ["ba3ad574-214f-4234-aea5-f3327851ad49"],
6
+ "ddl": [
7
+ {
8
+ "name": "usine_approvals",
9
+ "entityType": "tables"
10
+ },
11
+ {
12
+ "name": "usine_attempt_transcripts",
13
+ "entityType": "tables"
14
+ },
15
+ {
16
+ "name": "usine_attempts",
17
+ "entityType": "tables"
18
+ },
19
+ {
20
+ "name": "usine_board_moves",
21
+ "entityType": "tables"
22
+ },
23
+ {
24
+ "name": "usine_cursors",
25
+ "entityType": "tables"
26
+ },
27
+ {
28
+ "name": "usine_cycle_reservations",
29
+ "entityType": "tables"
30
+ },
31
+ {
32
+ "name": "usine_cycle_resets",
33
+ "entityType": "tables"
34
+ },
35
+ {
36
+ "name": "usine_events",
37
+ "entityType": "tables"
38
+ },
39
+ {
40
+ "name": "usine_ignored_events",
41
+ "entityType": "tables"
42
+ },
43
+ {
44
+ "name": "usine_item_cycle_budgets",
45
+ "entityType": "tables"
46
+ },
47
+ {
48
+ "name": "usine_item_projections",
49
+ "entityType": "tables"
50
+ },
51
+ {
52
+ "name": "usine_loop_items",
53
+ "entityType": "tables"
54
+ },
55
+ {
56
+ "name": "usine_loop_runtime",
57
+ "entityType": "tables"
58
+ },
59
+ {
60
+ "name": "usine_projection_revision",
61
+ "entityType": "tables"
62
+ },
63
+ {
64
+ "name": "usine_repository_label_projections",
65
+ "entityType": "tables"
66
+ },
67
+ {
68
+ "name": "usine_run_again_events",
69
+ "entityType": "tables"
70
+ },
71
+ {
72
+ "name": "usine_runs",
73
+ "entityType": "tables"
74
+ },
75
+ {
76
+ "name": "usine_steps",
77
+ "entityType": "tables"
78
+ },
79
+ {
80
+ "name": "usine_trigger_events",
81
+ "entityType": "tables"
82
+ },
83
+ {
84
+ "type": "text",
85
+ "notNull": false,
86
+ "autoincrement": false,
87
+ "default": null,
88
+ "generated": null,
89
+ "name": "run_id",
90
+ "entityType": "columns",
91
+ "table": "usine_approvals"
92
+ },
93
+ {
94
+ "type": "text",
95
+ "notNull": true,
96
+ "autoincrement": false,
97
+ "default": null,
98
+ "generated": null,
99
+ "name": "event_id",
100
+ "entityType": "columns",
101
+ "table": "usine_approvals"
102
+ },
103
+ {
104
+ "type": "text",
105
+ "notNull": false,
106
+ "autoincrement": false,
107
+ "default": null,
108
+ "generated": null,
109
+ "name": "channel",
110
+ "entityType": "columns",
111
+ "table": "usine_approvals"
112
+ },
113
+ {
114
+ "type": "text",
115
+ "notNull": false,
116
+ "autoincrement": false,
117
+ "default": null,
118
+ "generated": null,
119
+ "name": "approver",
120
+ "entityType": "columns",
121
+ "table": "usine_approvals"
122
+ },
123
+ {
124
+ "type": "integer",
125
+ "notNull": false,
126
+ "autoincrement": true,
127
+ "default": null,
128
+ "generated": null,
129
+ "name": "sequence",
130
+ "entityType": "columns",
131
+ "table": "usine_attempt_transcripts"
132
+ },
133
+ {
134
+ "type": "text",
135
+ "notNull": true,
136
+ "autoincrement": false,
137
+ "default": null,
138
+ "generated": null,
139
+ "name": "attempt_id",
140
+ "entityType": "columns",
141
+ "table": "usine_attempt_transcripts"
142
+ },
143
+ {
144
+ "type": "text",
145
+ "notNull": true,
146
+ "autoincrement": false,
147
+ "default": null,
148
+ "generated": null,
149
+ "name": "direction",
150
+ "entityType": "columns",
151
+ "table": "usine_attempt_transcripts"
152
+ },
153
+ {
154
+ "type": "integer",
155
+ "notNull": true,
156
+ "autoincrement": false,
157
+ "default": null,
158
+ "generated": null,
159
+ "name": "channel_sequence",
160
+ "entityType": "columns",
161
+ "table": "usine_attempt_transcripts"
162
+ },
163
+ {
164
+ "type": "text",
165
+ "notNull": true,
166
+ "autoincrement": false,
167
+ "default": null,
168
+ "generated": null,
169
+ "name": "envelope",
170
+ "entityType": "columns",
171
+ "table": "usine_attempt_transcripts"
172
+ },
173
+ {
174
+ "type": "text",
175
+ "notNull": true,
176
+ "autoincrement": false,
177
+ "default": null,
178
+ "generated": null,
179
+ "name": "received_at",
180
+ "entityType": "columns",
181
+ "table": "usine_attempt_transcripts"
182
+ },
183
+ {
184
+ "type": "text",
185
+ "notNull": false,
186
+ "autoincrement": false,
187
+ "default": null,
188
+ "generated": null,
189
+ "name": "attempt_id",
190
+ "entityType": "columns",
191
+ "table": "usine_attempts"
192
+ },
193
+ {
194
+ "type": "text",
195
+ "notNull": true,
196
+ "autoincrement": false,
197
+ "default": null,
198
+ "generated": null,
199
+ "name": "run_id",
200
+ "entityType": "columns",
201
+ "table": "usine_attempts"
202
+ },
203
+ {
204
+ "type": "text",
205
+ "notNull": true,
206
+ "autoincrement": false,
207
+ "default": null,
208
+ "generated": null,
209
+ "name": "step_name",
210
+ "entityType": "columns",
211
+ "table": "usine_attempts"
212
+ },
213
+ {
214
+ "type": "text",
215
+ "notNull": true,
216
+ "autoincrement": false,
217
+ "default": null,
218
+ "generated": null,
219
+ "name": "worker_name",
220
+ "entityType": "columns",
221
+ "table": "usine_attempts"
222
+ },
223
+ {
224
+ "type": "integer",
225
+ "notNull": true,
226
+ "autoincrement": false,
227
+ "default": null,
228
+ "generated": null,
229
+ "name": "attempt_number",
230
+ "entityType": "columns",
231
+ "table": "usine_attempts"
232
+ },
233
+ {
234
+ "type": "text",
235
+ "notNull": true,
236
+ "autoincrement": false,
237
+ "default": null,
238
+ "generated": null,
239
+ "name": "brain_json",
240
+ "entityType": "columns",
241
+ "table": "usine_attempts"
242
+ },
243
+ {
244
+ "type": "text",
245
+ "notNull": true,
246
+ "autoincrement": false,
247
+ "default": null,
248
+ "generated": null,
249
+ "name": "task",
250
+ "entityType": "columns",
251
+ "table": "usine_attempts"
252
+ },
253
+ {
254
+ "type": "text",
255
+ "notNull": true,
256
+ "autoincrement": false,
257
+ "default": null,
258
+ "generated": null,
259
+ "name": "agent",
260
+ "entityType": "columns",
261
+ "table": "usine_attempts"
262
+ },
263
+ {
264
+ "type": "integer",
265
+ "notNull": true,
266
+ "autoincrement": false,
267
+ "default": "false",
268
+ "generated": null,
269
+ "name": "operator_intervened",
270
+ "entityType": "columns",
271
+ "table": "usine_attempts"
272
+ },
273
+ {
274
+ "type": "text",
275
+ "notNull": false,
276
+ "autoincrement": false,
277
+ "default": null,
278
+ "generated": null,
279
+ "name": "parent_model",
280
+ "entityType": "columns",
281
+ "table": "usine_attempts"
282
+ },
283
+ {
284
+ "type": "text",
285
+ "notNull": true,
286
+ "autoincrement": false,
287
+ "default": null,
288
+ "generated": null,
289
+ "name": "started_at",
290
+ "entityType": "columns",
291
+ "table": "usine_attempts"
292
+ },
293
+ {
294
+ "type": "text",
295
+ "notNull": false,
296
+ "autoincrement": false,
297
+ "default": null,
298
+ "generated": null,
299
+ "name": "outcome_json",
300
+ "entityType": "columns",
301
+ "table": "usine_attempts"
302
+ },
303
+ {
304
+ "type": "text",
305
+ "notNull": false,
306
+ "autoincrement": false,
307
+ "default": null,
308
+ "generated": null,
309
+ "name": "ended_at",
310
+ "entityType": "columns",
311
+ "table": "usine_attempts"
312
+ },
313
+ {
314
+ "type": "text",
315
+ "notNull": false,
316
+ "autoincrement": false,
317
+ "default": null,
318
+ "generated": null,
319
+ "name": "salvage_json",
320
+ "entityType": "columns",
321
+ "table": "usine_attempts"
322
+ },
323
+ {
324
+ "type": "text",
325
+ "notNull": false,
326
+ "autoincrement": false,
327
+ "default": null,
328
+ "generated": null,
329
+ "name": "leftovers_discarded_at",
330
+ "entityType": "columns",
331
+ "table": "usine_attempts"
332
+ },
333
+ {
334
+ "type": "integer",
335
+ "notNull": false,
336
+ "autoincrement": true,
337
+ "default": null,
338
+ "generated": null,
339
+ "name": "move_id",
340
+ "entityType": "columns",
341
+ "table": "usine_board_moves"
342
+ },
343
+ {
344
+ "type": "text",
345
+ "notNull": true,
346
+ "autoincrement": false,
347
+ "default": null,
348
+ "generated": null,
349
+ "name": "repository",
350
+ "entityType": "columns",
351
+ "table": "usine_board_moves"
352
+ },
353
+ {
354
+ "type": "text",
355
+ "notNull": true,
356
+ "autoincrement": false,
357
+ "default": null,
358
+ "generated": null,
359
+ "name": "item_key",
360
+ "entityType": "columns",
361
+ "table": "usine_board_moves"
362
+ },
363
+ {
364
+ "type": "text",
365
+ "notNull": true,
366
+ "autoincrement": false,
367
+ "default": null,
368
+ "generated": null,
369
+ "name": "moved_at",
370
+ "entityType": "columns",
371
+ "table": "usine_board_moves"
372
+ },
373
+ {
374
+ "type": "text",
375
+ "notNull": true,
376
+ "autoincrement": false,
377
+ "default": null,
378
+ "generated": null,
379
+ "name": "from_lane",
380
+ "entityType": "columns",
381
+ "table": "usine_board_moves"
382
+ },
383
+ {
384
+ "type": "text",
385
+ "notNull": true,
386
+ "autoincrement": false,
387
+ "default": null,
388
+ "generated": null,
389
+ "name": "to_lane",
390
+ "entityType": "columns",
391
+ "table": "usine_board_moves"
392
+ },
393
+ {
394
+ "type": "text",
395
+ "notNull": true,
396
+ "autoincrement": false,
397
+ "default": null,
398
+ "generated": null,
399
+ "name": "added_json",
400
+ "entityType": "columns",
401
+ "table": "usine_board_moves"
402
+ },
403
+ {
404
+ "type": "text",
405
+ "notNull": true,
406
+ "autoincrement": false,
407
+ "default": null,
408
+ "generated": null,
409
+ "name": "removed_json",
410
+ "entityType": "columns",
411
+ "table": "usine_board_moves"
412
+ },
413
+ {
414
+ "type": "text",
415
+ "notNull": false,
416
+ "autoincrement": false,
417
+ "default": null,
418
+ "generated": null,
419
+ "name": "cursor_key",
420
+ "entityType": "columns",
421
+ "table": "usine_cursors"
422
+ },
423
+ {
424
+ "type": "text",
425
+ "notNull": true,
426
+ "autoincrement": false,
427
+ "default": null,
428
+ "generated": null,
429
+ "name": "value_json",
430
+ "entityType": "columns",
431
+ "table": "usine_cursors"
432
+ },
433
+ {
434
+ "type": "text",
435
+ "notNull": false,
436
+ "autoincrement": false,
437
+ "default": null,
438
+ "generated": null,
439
+ "name": "run_id",
440
+ "entityType": "columns",
441
+ "table": "usine_cycle_reservations"
442
+ },
443
+ {
444
+ "type": "text",
445
+ "notNull": true,
446
+ "autoincrement": false,
447
+ "default": null,
448
+ "generated": null,
449
+ "name": "item_key",
450
+ "entityType": "columns",
451
+ "table": "usine_cycle_reservations"
452
+ },
453
+ {
454
+ "type": "integer",
455
+ "notNull": true,
456
+ "autoincrement": false,
457
+ "default": null,
458
+ "generated": null,
459
+ "name": "generation",
460
+ "entityType": "columns",
461
+ "table": "usine_cycle_reservations"
462
+ },
463
+ {
464
+ "type": "text",
465
+ "notNull": true,
466
+ "autoincrement": false,
467
+ "default": null,
468
+ "generated": null,
469
+ "name": "loop",
470
+ "entityType": "columns",
471
+ "table": "usine_cycle_reservations"
472
+ },
473
+ {
474
+ "type": "text",
475
+ "notNull": false,
476
+ "autoincrement": false,
477
+ "default": null,
478
+ "generated": null,
479
+ "name": "ask_id",
480
+ "entityType": "columns",
481
+ "table": "usine_cycle_resets"
482
+ },
483
+ {
484
+ "type": "text",
485
+ "notNull": true,
486
+ "autoincrement": false,
487
+ "default": null,
488
+ "generated": null,
489
+ "name": "event_id",
490
+ "entityType": "columns",
491
+ "table": "usine_cycle_resets"
492
+ },
493
+ {
494
+ "type": "text",
495
+ "notNull": true,
496
+ "autoincrement": false,
497
+ "default": null,
498
+ "generated": null,
499
+ "name": "item_key",
500
+ "entityType": "columns",
501
+ "table": "usine_cycle_resets"
502
+ },
503
+ {
504
+ "type": "text",
505
+ "notNull": false,
506
+ "autoincrement": false,
507
+ "default": null,
508
+ "generated": null,
509
+ "name": "event_id",
510
+ "entityType": "columns",
511
+ "table": "usine_events"
512
+ },
513
+ {
514
+ "type": "text",
515
+ "notNull": true,
516
+ "autoincrement": false,
517
+ "default": null,
518
+ "generated": null,
519
+ "name": "dedup_key",
520
+ "entityType": "columns",
521
+ "table": "usine_events"
522
+ },
523
+ {
524
+ "type": "text",
525
+ "notNull": true,
526
+ "autoincrement": false,
527
+ "default": null,
528
+ "generated": null,
529
+ "name": "payload_json",
530
+ "entityType": "columns",
531
+ "table": "usine_events"
532
+ },
533
+ {
534
+ "type": "text",
535
+ "notNull": true,
536
+ "autoincrement": false,
537
+ "default": null,
538
+ "generated": null,
539
+ "name": "received_at",
540
+ "entityType": "columns",
541
+ "table": "usine_events"
542
+ },
543
+ {
544
+ "type": "text",
545
+ "notNull": false,
546
+ "autoincrement": false,
547
+ "default": null,
548
+ "generated": null,
549
+ "name": "event_id",
550
+ "entityType": "columns",
551
+ "table": "usine_ignored_events"
552
+ },
553
+ {
554
+ "type": "text",
555
+ "notNull": true,
556
+ "autoincrement": false,
557
+ "default": null,
558
+ "generated": null,
559
+ "name": "reason",
560
+ "entityType": "columns",
561
+ "table": "usine_ignored_events"
562
+ },
563
+ {
564
+ "type": "text",
565
+ "notNull": false,
566
+ "autoincrement": false,
567
+ "default": null,
568
+ "generated": null,
569
+ "name": "item_key",
570
+ "entityType": "columns",
571
+ "table": "usine_item_cycle_budgets"
572
+ },
573
+ {
574
+ "type": "text",
575
+ "notNull": true,
576
+ "autoincrement": false,
577
+ "default": null,
578
+ "generated": null,
579
+ "name": "repository",
580
+ "entityType": "columns",
581
+ "table": "usine_item_cycle_budgets"
582
+ },
583
+ {
584
+ "type": "integer",
585
+ "notNull": true,
586
+ "autoincrement": false,
587
+ "default": "0",
588
+ "generated": null,
589
+ "name": "generation",
590
+ "entityType": "columns",
591
+ "table": "usine_item_cycle_budgets"
592
+ },
593
+ {
594
+ "type": "text",
595
+ "notNull": false,
596
+ "autoincrement": false,
597
+ "default": null,
598
+ "generated": null,
599
+ "name": "ask_json",
600
+ "entityType": "columns",
601
+ "table": "usine_item_cycle_budgets"
602
+ },
603
+ {
604
+ "type": "integer",
605
+ "notNull": true,
606
+ "autoincrement": false,
607
+ "default": "false",
608
+ "generated": null,
609
+ "name": "reset_pending",
610
+ "entityType": "columns",
611
+ "table": "usine_item_cycle_budgets"
612
+ },
613
+ {
614
+ "type": "text",
615
+ "notNull": false,
616
+ "autoincrement": false,
617
+ "default": null,
618
+ "generated": null,
619
+ "name": "item_key",
620
+ "entityType": "columns",
621
+ "table": "usine_item_projections"
622
+ },
623
+ {
624
+ "type": "text",
625
+ "notNull": true,
626
+ "autoincrement": false,
627
+ "default": null,
628
+ "generated": null,
629
+ "name": "repository",
630
+ "entityType": "columns",
631
+ "table": "usine_item_projections"
632
+ },
633
+ {
634
+ "type": "text",
635
+ "notNull": true,
636
+ "autoincrement": false,
637
+ "default": null,
638
+ "generated": null,
639
+ "name": "source",
640
+ "entityType": "columns",
641
+ "table": "usine_item_projections"
642
+ },
643
+ {
644
+ "type": "integer",
645
+ "notNull": true,
646
+ "autoincrement": false,
647
+ "default": null,
648
+ "generated": null,
649
+ "name": "item_number",
650
+ "entityType": "columns",
651
+ "table": "usine_item_projections"
652
+ },
653
+ {
654
+ "type": "text",
655
+ "notNull": true,
656
+ "autoincrement": false,
657
+ "default": null,
658
+ "generated": null,
659
+ "name": "content_hash",
660
+ "entityType": "columns",
661
+ "table": "usine_item_projections"
662
+ },
663
+ {
664
+ "type": "text",
665
+ "notNull": true,
666
+ "autoincrement": false,
667
+ "default": null,
668
+ "generated": null,
669
+ "name": "payload_json",
670
+ "entityType": "columns",
671
+ "table": "usine_item_projections"
672
+ },
673
+ {
674
+ "type": "text",
675
+ "notNull": false,
676
+ "autoincrement": false,
677
+ "default": null,
678
+ "generated": null,
679
+ "name": "gone_at",
680
+ "entityType": "columns",
681
+ "table": "usine_item_projections"
682
+ },
683
+ {
684
+ "type": "text",
685
+ "notNull": true,
686
+ "autoincrement": false,
687
+ "default": null,
688
+ "generated": null,
689
+ "name": "loop_name",
690
+ "entityType": "columns",
691
+ "table": "usine_loop_items"
692
+ },
693
+ {
694
+ "type": "text",
695
+ "notNull": true,
696
+ "autoincrement": false,
697
+ "default": null,
698
+ "generated": null,
699
+ "name": "item_key",
700
+ "entityType": "columns",
701
+ "table": "usine_loop_items"
702
+ },
703
+ {
704
+ "type": "text",
705
+ "notNull": false,
706
+ "autoincrement": false,
707
+ "default": null,
708
+ "generated": null,
709
+ "name": "observed_event_id",
710
+ "entityType": "columns",
711
+ "table": "usine_loop_items"
712
+ },
713
+ {
714
+ "type": "text",
715
+ "notNull": false,
716
+ "autoincrement": false,
717
+ "default": null,
718
+ "generated": null,
719
+ "name": "held_by_run_id",
720
+ "entityType": "columns",
721
+ "table": "usine_loop_items"
722
+ },
723
+ {
724
+ "type": "text",
725
+ "notNull": false,
726
+ "autoincrement": false,
727
+ "default": null,
728
+ "generated": null,
729
+ "name": "held_event_id",
730
+ "entityType": "columns",
731
+ "table": "usine_loop_items"
732
+ },
733
+ {
734
+ "type": "text",
735
+ "notNull": false,
736
+ "autoincrement": false,
737
+ "default": null,
738
+ "generated": null,
739
+ "name": "loop_name",
740
+ "entityType": "columns",
741
+ "table": "usine_loop_runtime"
742
+ },
743
+ {
744
+ "type": "integer",
745
+ "notNull": true,
746
+ "autoincrement": false,
747
+ "default": null,
748
+ "generated": null,
749
+ "name": "paused",
750
+ "entityType": "columns",
751
+ "table": "usine_loop_runtime"
752
+ },
753
+ {
754
+ "type": "integer",
755
+ "notNull": false,
756
+ "autoincrement": false,
757
+ "default": "1",
758
+ "generated": null,
759
+ "name": "singleton",
760
+ "entityType": "columns",
761
+ "table": "usine_projection_revision"
762
+ },
763
+ {
764
+ "type": "integer",
765
+ "notNull": true,
766
+ "autoincrement": false,
767
+ "default": "0",
768
+ "generated": null,
769
+ "name": "revision",
770
+ "entityType": "columns",
771
+ "table": "usine_projection_revision"
772
+ },
773
+ {
774
+ "type": "text",
775
+ "notNull": false,
776
+ "autoincrement": false,
777
+ "default": null,
778
+ "generated": null,
779
+ "name": "repository",
780
+ "entityType": "columns",
781
+ "table": "usine_repository_label_projections"
782
+ },
783
+ {
784
+ "type": "text",
785
+ "notNull": true,
786
+ "autoincrement": false,
787
+ "default": null,
788
+ "generated": null,
789
+ "name": "labels_json",
790
+ "entityType": "columns",
791
+ "table": "usine_repository_label_projections"
792
+ },
793
+ {
794
+ "type": "text",
795
+ "notNull": false,
796
+ "autoincrement": false,
797
+ "default": null,
798
+ "generated": null,
799
+ "name": "event_id",
800
+ "entityType": "columns",
801
+ "table": "usine_run_again_events"
802
+ },
803
+ {
804
+ "type": "text",
805
+ "notNull": true,
806
+ "autoincrement": false,
807
+ "default": null,
808
+ "generated": null,
809
+ "name": "from_run_id",
810
+ "entityType": "columns",
811
+ "table": "usine_run_again_events"
812
+ },
813
+ {
814
+ "type": "text",
815
+ "notNull": false,
816
+ "autoincrement": false,
817
+ "default": null,
818
+ "generated": null,
819
+ "name": "requested_by",
820
+ "entityType": "columns",
821
+ "table": "usine_run_again_events"
822
+ },
823
+ {
824
+ "type": "text",
825
+ "notNull": false,
826
+ "autoincrement": false,
827
+ "default": null,
828
+ "generated": null,
829
+ "name": "run_id",
830
+ "entityType": "columns",
831
+ "table": "usine_runs"
832
+ },
833
+ {
834
+ "type": "text",
835
+ "notNull": true,
836
+ "autoincrement": false,
837
+ "default": null,
838
+ "generated": null,
839
+ "name": "event_id",
840
+ "entityType": "columns",
841
+ "table": "usine_runs"
842
+ },
843
+ {
844
+ "type": "text",
845
+ "notNull": true,
846
+ "autoincrement": false,
847
+ "default": null,
848
+ "generated": null,
849
+ "name": "loop_name",
850
+ "entityType": "columns",
851
+ "table": "usine_runs"
852
+ },
853
+ {
854
+ "type": "text",
855
+ "notNull": true,
856
+ "autoincrement": false,
857
+ "default": null,
858
+ "generated": null,
859
+ "name": "state_json",
860
+ "entityType": "columns",
861
+ "table": "usine_runs"
862
+ },
863
+ {
864
+ "type": "text",
865
+ "notNull": false,
866
+ "autoincrement": false,
867
+ "default": null,
868
+ "generated": null,
869
+ "name": "resolved_failure_attempt_id",
870
+ "entityType": "columns",
871
+ "table": "usine_runs"
872
+ },
873
+ {
874
+ "type": "text",
875
+ "notNull": true,
876
+ "autoincrement": false,
877
+ "default": null,
878
+ "generated": null,
879
+ "name": "opened_at",
880
+ "entityType": "columns",
881
+ "table": "usine_runs"
882
+ },
883
+ {
884
+ "type": "text",
885
+ "notNull": true,
886
+ "autoincrement": false,
887
+ "default": null,
888
+ "generated": null,
889
+ "name": "repository",
890
+ "entityType": "columns",
891
+ "table": "usine_runs"
892
+ },
893
+ {
894
+ "type": "text",
895
+ "notNull": true,
896
+ "autoincrement": false,
897
+ "default": null,
898
+ "generated": null,
899
+ "name": "revision",
900
+ "entityType": "columns",
901
+ "table": "usine_runs"
902
+ },
903
+ {
904
+ "type": "text",
905
+ "notNull": true,
906
+ "autoincrement": false,
907
+ "default": null,
908
+ "generated": null,
909
+ "name": "task",
910
+ "entityType": "columns",
911
+ "table": "usine_runs"
912
+ },
913
+ {
914
+ "type": "text",
915
+ "notNull": true,
916
+ "autoincrement": false,
917
+ "default": null,
918
+ "generated": null,
919
+ "name": "agent_json",
920
+ "entityType": "columns",
921
+ "table": "usine_runs"
922
+ },
923
+ {
924
+ "type": "text",
925
+ "notNull": false,
926
+ "autoincrement": false,
927
+ "default": null,
928
+ "generated": null,
929
+ "name": "parent_model",
930
+ "entityType": "columns",
931
+ "table": "usine_runs"
932
+ },
933
+ {
934
+ "type": "text",
935
+ "notNull": true,
936
+ "autoincrement": false,
937
+ "default": null,
938
+ "generated": null,
939
+ "name": "run_id",
940
+ "entityType": "columns",
941
+ "table": "usine_steps"
942
+ },
943
+ {
944
+ "type": "text",
945
+ "notNull": true,
946
+ "autoincrement": false,
947
+ "default": null,
948
+ "generated": null,
949
+ "name": "step_name",
950
+ "entityType": "columns",
951
+ "table": "usine_steps"
952
+ },
953
+ {
954
+ "type": "text",
955
+ "notNull": false,
956
+ "autoincrement": false,
957
+ "default": null,
958
+ "generated": null,
959
+ "name": "result",
960
+ "entityType": "columns",
961
+ "table": "usine_steps"
962
+ },
963
+ {
964
+ "type": "text",
965
+ "notNull": false,
966
+ "autoincrement": false,
967
+ "default": null,
968
+ "generated": null,
969
+ "name": "event_id",
970
+ "entityType": "columns",
971
+ "table": "usine_trigger_events"
972
+ },
973
+ {
974
+ "type": "text",
975
+ "notNull": true,
976
+ "autoincrement": false,
977
+ "default": null,
978
+ "generated": null,
979
+ "name": "item_key",
980
+ "entityType": "columns",
981
+ "table": "usine_trigger_events"
982
+ },
983
+ {
984
+ "type": "text",
985
+ "notNull": true,
986
+ "autoincrement": false,
987
+ "default": null,
988
+ "generated": null,
989
+ "name": "loop_name",
990
+ "entityType": "columns",
991
+ "table": "usine_trigger_events"
992
+ },
993
+ {
994
+ "type": "text",
995
+ "notNull": true,
996
+ "autoincrement": false,
997
+ "default": null,
998
+ "generated": null,
999
+ "name": "step_name",
1000
+ "entityType": "columns",
1001
+ "table": "usine_trigger_events"
1002
+ },
1003
+ {
1004
+ "type": "text",
1005
+ "notNull": true,
1006
+ "autoincrement": false,
1007
+ "default": null,
1008
+ "generated": null,
1009
+ "name": "approval",
1010
+ "entityType": "columns",
1011
+ "table": "usine_trigger_events"
1012
+ },
1013
+ {
1014
+ "type": "text",
1015
+ "notNull": true,
1016
+ "autoincrement": false,
1017
+ "default": "'write'",
1018
+ "generated": null,
1019
+ "name": "permissions",
1020
+ "entityType": "columns",
1021
+ "table": "usine_trigger_events"
1022
+ },
1023
+ {
1024
+ "type": "integer",
1025
+ "notNull": false,
1026
+ "autoincrement": false,
1027
+ "default": null,
1028
+ "generated": null,
1029
+ "name": "cycle_limit",
1030
+ "entityType": "columns",
1031
+ "table": "usine_trigger_events"
1032
+ },
1033
+ {
1034
+ "type": "integer",
1035
+ "notNull": true,
1036
+ "autoincrement": false,
1037
+ "default": "0",
1038
+ "generated": null,
1039
+ "name": "cycle_generation",
1040
+ "entityType": "columns",
1041
+ "table": "usine_trigger_events"
1042
+ },
1043
+ {
1044
+ "type": "text",
1045
+ "notNull": true,
1046
+ "autoincrement": false,
1047
+ "default": null,
1048
+ "generated": null,
1049
+ "name": "repository",
1050
+ "entityType": "columns",
1051
+ "table": "usine_trigger_events"
1052
+ },
1053
+ {
1054
+ "type": "text",
1055
+ "notNull": true,
1056
+ "autoincrement": false,
1057
+ "default": null,
1058
+ "generated": null,
1059
+ "name": "revision",
1060
+ "entityType": "columns",
1061
+ "table": "usine_trigger_events"
1062
+ },
1063
+ {
1064
+ "type": "text",
1065
+ "notNull": true,
1066
+ "autoincrement": false,
1067
+ "default": null,
1068
+ "generated": null,
1069
+ "name": "task",
1070
+ "entityType": "columns",
1071
+ "table": "usine_trigger_events"
1072
+ },
1073
+ {
1074
+ "type": "text",
1075
+ "notNull": true,
1076
+ "autoincrement": false,
1077
+ "default": null,
1078
+ "generated": null,
1079
+ "name": "agent_json",
1080
+ "entityType": "columns",
1081
+ "table": "usine_trigger_events"
1082
+ },
1083
+ {
1084
+ "type": "text",
1085
+ "notNull": false,
1086
+ "autoincrement": false,
1087
+ "default": null,
1088
+ "generated": null,
1089
+ "name": "parent_model",
1090
+ "entityType": "columns",
1091
+ "table": "usine_trigger_events"
1092
+ },
1093
+ {
1094
+ "type": "text",
1095
+ "notNull": false,
1096
+ "autoincrement": false,
1097
+ "default": null,
1098
+ "generated": null,
1099
+ "name": "reopens_event_id",
1100
+ "entityType": "columns",
1101
+ "table": "usine_trigger_events"
1102
+ },
1103
+ {
1104
+ "type": "integer",
1105
+ "notNull": true,
1106
+ "autoincrement": false,
1107
+ "default": "0",
1108
+ "generated": null,
1109
+ "name": "reopening",
1110
+ "entityType": "columns",
1111
+ "table": "usine_trigger_events"
1112
+ },
1113
+ {
1114
+ "columns": ["run_id"],
1115
+ "tableTo": "usine_runs",
1116
+ "columnsTo": ["run_id"],
1117
+ "onUpdate": "NO ACTION",
1118
+ "onDelete": "NO ACTION",
1119
+ "nameExplicit": false,
1120
+ "name": "fk_usine_approvals_run_id_usine_runs_run_id_fk",
1121
+ "entityType": "fks",
1122
+ "table": "usine_approvals"
1123
+ },
1124
+ {
1125
+ "columns": ["event_id"],
1126
+ "tableTo": "usine_events",
1127
+ "columnsTo": ["event_id"],
1128
+ "onUpdate": "NO ACTION",
1129
+ "onDelete": "NO ACTION",
1130
+ "nameExplicit": false,
1131
+ "name": "fk_usine_approvals_event_id_usine_events_event_id_fk",
1132
+ "entityType": "fks",
1133
+ "table": "usine_approvals"
1134
+ },
1135
+ {
1136
+ "columns": ["attempt_id"],
1137
+ "tableTo": "usine_attempts",
1138
+ "columnsTo": ["attempt_id"],
1139
+ "onUpdate": "NO ACTION",
1140
+ "onDelete": "NO ACTION",
1141
+ "nameExplicit": false,
1142
+ "name": "fk_usine_attempt_transcripts_attempt_id_usine_attempts_attempt_id_fk",
1143
+ "entityType": "fks",
1144
+ "table": "usine_attempt_transcripts"
1145
+ },
1146
+ {
1147
+ "columns": ["run_id", "step_name"],
1148
+ "tableTo": "usine_steps",
1149
+ "columnsTo": ["run_id", "step_name"],
1150
+ "onUpdate": "NO ACTION",
1151
+ "onDelete": "NO ACTION",
1152
+ "nameExplicit": false,
1153
+ "name": "fk_usine_attempts_run_id_step_name_usine_steps_run_id_step_name_fk",
1154
+ "entityType": "fks",
1155
+ "table": "usine_attempts"
1156
+ },
1157
+ {
1158
+ "columns": ["run_id"],
1159
+ "tableTo": "usine_runs",
1160
+ "columnsTo": ["run_id"],
1161
+ "onUpdate": "NO ACTION",
1162
+ "onDelete": "NO ACTION",
1163
+ "nameExplicit": false,
1164
+ "name": "fk_usine_cycle_reservations_run_id_usine_runs_run_id_fk",
1165
+ "entityType": "fks",
1166
+ "table": "usine_cycle_reservations"
1167
+ },
1168
+ {
1169
+ "columns": ["item_key"],
1170
+ "tableTo": "usine_item_cycle_budgets",
1171
+ "columnsTo": ["item_key"],
1172
+ "onUpdate": "NO ACTION",
1173
+ "onDelete": "NO ACTION",
1174
+ "nameExplicit": false,
1175
+ "name": "fk_usine_cycle_reservations_item_key_usine_item_cycle_budgets_item_key_fk",
1176
+ "entityType": "fks",
1177
+ "table": "usine_cycle_reservations"
1178
+ },
1179
+ {
1180
+ "columns": ["event_id"],
1181
+ "tableTo": "usine_events",
1182
+ "columnsTo": ["event_id"],
1183
+ "onUpdate": "NO ACTION",
1184
+ "onDelete": "NO ACTION",
1185
+ "nameExplicit": false,
1186
+ "name": "fk_usine_cycle_resets_event_id_usine_events_event_id_fk",
1187
+ "entityType": "fks",
1188
+ "table": "usine_cycle_resets"
1189
+ },
1190
+ {
1191
+ "columns": ["item_key"],
1192
+ "tableTo": "usine_item_cycle_budgets",
1193
+ "columnsTo": ["item_key"],
1194
+ "onUpdate": "NO ACTION",
1195
+ "onDelete": "NO ACTION",
1196
+ "nameExplicit": false,
1197
+ "name": "fk_usine_cycle_resets_item_key_usine_item_cycle_budgets_item_key_fk",
1198
+ "entityType": "fks",
1199
+ "table": "usine_cycle_resets"
1200
+ },
1201
+ {
1202
+ "columns": ["event_id"],
1203
+ "tableTo": "usine_trigger_events",
1204
+ "columnsTo": ["event_id"],
1205
+ "onUpdate": "NO ACTION",
1206
+ "onDelete": "NO ACTION",
1207
+ "nameExplicit": false,
1208
+ "name": "fk_usine_ignored_events_event_id_usine_trigger_events_event_id_fk",
1209
+ "entityType": "fks",
1210
+ "table": "usine_ignored_events"
1211
+ },
1212
+ {
1213
+ "columns": ["observed_event_id"],
1214
+ "tableTo": "usine_events",
1215
+ "columnsTo": ["event_id"],
1216
+ "onUpdate": "NO ACTION",
1217
+ "onDelete": "NO ACTION",
1218
+ "nameExplicit": false,
1219
+ "name": "fk_usine_loop_items_observed_event_id_usine_events_event_id_fk",
1220
+ "entityType": "fks",
1221
+ "table": "usine_loop_items"
1222
+ },
1223
+ {
1224
+ "columns": ["held_by_run_id"],
1225
+ "tableTo": "usine_runs",
1226
+ "columnsTo": ["run_id"],
1227
+ "onUpdate": "NO ACTION",
1228
+ "onDelete": "NO ACTION",
1229
+ "nameExplicit": false,
1230
+ "name": "fk_usine_loop_items_held_by_run_id_usine_runs_run_id_fk",
1231
+ "entityType": "fks",
1232
+ "table": "usine_loop_items"
1233
+ },
1234
+ {
1235
+ "columns": ["held_event_id"],
1236
+ "tableTo": "usine_events",
1237
+ "columnsTo": ["event_id"],
1238
+ "onUpdate": "NO ACTION",
1239
+ "onDelete": "NO ACTION",
1240
+ "nameExplicit": false,
1241
+ "name": "fk_usine_loop_items_held_event_id_usine_events_event_id_fk",
1242
+ "entityType": "fks",
1243
+ "table": "usine_loop_items"
1244
+ },
1245
+ {
1246
+ "columns": ["event_id"],
1247
+ "tableTo": "usine_trigger_events",
1248
+ "columnsTo": ["event_id"],
1249
+ "onUpdate": "NO ACTION",
1250
+ "onDelete": "NO ACTION",
1251
+ "nameExplicit": false,
1252
+ "name": "fk_usine_run_again_events_event_id_usine_trigger_events_event_id_fk",
1253
+ "entityType": "fks",
1254
+ "table": "usine_run_again_events"
1255
+ },
1256
+ {
1257
+ "columns": ["from_run_id"],
1258
+ "tableTo": "usine_runs",
1259
+ "columnsTo": ["run_id"],
1260
+ "onUpdate": "NO ACTION",
1261
+ "onDelete": "NO ACTION",
1262
+ "nameExplicit": false,
1263
+ "name": "fk_usine_run_again_events_from_run_id_usine_runs_run_id_fk",
1264
+ "entityType": "fks",
1265
+ "table": "usine_run_again_events"
1266
+ },
1267
+ {
1268
+ "columns": ["event_id"],
1269
+ "tableTo": "usine_trigger_events",
1270
+ "columnsTo": ["event_id"],
1271
+ "onUpdate": "NO ACTION",
1272
+ "onDelete": "NO ACTION",
1273
+ "nameExplicit": false,
1274
+ "name": "fk_usine_runs_event_id_usine_trigger_events_event_id_fk",
1275
+ "entityType": "fks",
1276
+ "table": "usine_runs"
1277
+ },
1278
+ {
1279
+ "columns": ["run_id"],
1280
+ "tableTo": "usine_runs",
1281
+ "columnsTo": ["run_id"],
1282
+ "onUpdate": "NO ACTION",
1283
+ "onDelete": "NO ACTION",
1284
+ "nameExplicit": false,
1285
+ "name": "fk_usine_steps_run_id_usine_runs_run_id_fk",
1286
+ "entityType": "fks",
1287
+ "table": "usine_steps"
1288
+ },
1289
+ {
1290
+ "columns": ["event_id"],
1291
+ "tableTo": "usine_events",
1292
+ "columnsTo": ["event_id"],
1293
+ "onUpdate": "NO ACTION",
1294
+ "onDelete": "NO ACTION",
1295
+ "nameExplicit": false,
1296
+ "name": "fk_usine_trigger_events_event_id_usine_events_event_id_fk",
1297
+ "entityType": "fks",
1298
+ "table": "usine_trigger_events"
1299
+ },
1300
+ {
1301
+ "columns": ["reopens_event_id"],
1302
+ "tableTo": "usine_events",
1303
+ "columnsTo": ["event_id"],
1304
+ "onUpdate": "NO ACTION",
1305
+ "onDelete": "NO ACTION",
1306
+ "nameExplicit": false,
1307
+ "name": "fk_usine_trigger_events_reopens_event_id_usine_events_event_id_fk",
1308
+ "entityType": "fks",
1309
+ "table": "usine_trigger_events"
1310
+ },
1311
+ {
1312
+ "columns": ["loop_name", "item_key"],
1313
+ "nameExplicit": false,
1314
+ "name": "usine_loop_items_pk",
1315
+ "entityType": "pks",
1316
+ "table": "usine_loop_items"
1317
+ },
1318
+ {
1319
+ "columns": ["run_id", "step_name"],
1320
+ "nameExplicit": false,
1321
+ "name": "usine_steps_pk",
1322
+ "entityType": "pks",
1323
+ "table": "usine_steps"
1324
+ },
1325
+ {
1326
+ "columns": ["run_id"],
1327
+ "nameExplicit": false,
1328
+ "name": "usine_approvals_pk",
1329
+ "table": "usine_approvals",
1330
+ "entityType": "pks"
1331
+ },
1332
+ {
1333
+ "columns": ["sequence"],
1334
+ "nameExplicit": false,
1335
+ "name": "usine_attempt_transcripts_pk",
1336
+ "table": "usine_attempt_transcripts",
1337
+ "entityType": "pks"
1338
+ },
1339
+ {
1340
+ "columns": ["attempt_id"],
1341
+ "nameExplicit": false,
1342
+ "name": "usine_attempts_pk",
1343
+ "table": "usine_attempts",
1344
+ "entityType": "pks"
1345
+ },
1346
+ {
1347
+ "columns": ["move_id"],
1348
+ "nameExplicit": false,
1349
+ "name": "usine_board_moves_pk",
1350
+ "table": "usine_board_moves",
1351
+ "entityType": "pks"
1352
+ },
1353
+ {
1354
+ "columns": ["cursor_key"],
1355
+ "nameExplicit": false,
1356
+ "name": "usine_cursors_pk",
1357
+ "table": "usine_cursors",
1358
+ "entityType": "pks"
1359
+ },
1360
+ {
1361
+ "columns": ["run_id"],
1362
+ "nameExplicit": false,
1363
+ "name": "usine_cycle_reservations_pk",
1364
+ "table": "usine_cycle_reservations",
1365
+ "entityType": "pks"
1366
+ },
1367
+ {
1368
+ "columns": ["ask_id"],
1369
+ "nameExplicit": false,
1370
+ "name": "usine_cycle_resets_pk",
1371
+ "table": "usine_cycle_resets",
1372
+ "entityType": "pks"
1373
+ },
1374
+ {
1375
+ "columns": ["event_id"],
1376
+ "nameExplicit": false,
1377
+ "name": "usine_events_pk",
1378
+ "table": "usine_events",
1379
+ "entityType": "pks"
1380
+ },
1381
+ {
1382
+ "columns": ["event_id"],
1383
+ "nameExplicit": false,
1384
+ "name": "usine_ignored_events_pk",
1385
+ "table": "usine_ignored_events",
1386
+ "entityType": "pks"
1387
+ },
1388
+ {
1389
+ "columns": ["item_key"],
1390
+ "nameExplicit": false,
1391
+ "name": "usine_item_cycle_budgets_pk",
1392
+ "table": "usine_item_cycle_budgets",
1393
+ "entityType": "pks"
1394
+ },
1395
+ {
1396
+ "columns": ["item_key"],
1397
+ "nameExplicit": false,
1398
+ "name": "usine_item_projections_pk",
1399
+ "table": "usine_item_projections",
1400
+ "entityType": "pks"
1401
+ },
1402
+ {
1403
+ "columns": ["loop_name"],
1404
+ "nameExplicit": false,
1405
+ "name": "usine_loop_runtime_pk",
1406
+ "table": "usine_loop_runtime",
1407
+ "entityType": "pks"
1408
+ },
1409
+ {
1410
+ "columns": ["singleton"],
1411
+ "nameExplicit": false,
1412
+ "name": "usine_projection_revision_pk",
1413
+ "table": "usine_projection_revision",
1414
+ "entityType": "pks"
1415
+ },
1416
+ {
1417
+ "columns": ["repository"],
1418
+ "nameExplicit": false,
1419
+ "name": "usine_repository_label_projections_pk",
1420
+ "table": "usine_repository_label_projections",
1421
+ "entityType": "pks"
1422
+ },
1423
+ {
1424
+ "columns": ["event_id"],
1425
+ "nameExplicit": false,
1426
+ "name": "usine_run_again_events_pk",
1427
+ "table": "usine_run_again_events",
1428
+ "entityType": "pks"
1429
+ },
1430
+ {
1431
+ "columns": ["run_id"],
1432
+ "nameExplicit": false,
1433
+ "name": "usine_runs_pk",
1434
+ "table": "usine_runs",
1435
+ "entityType": "pks"
1436
+ },
1437
+ {
1438
+ "columns": ["event_id"],
1439
+ "nameExplicit": false,
1440
+ "name": "usine_trigger_events_pk",
1441
+ "table": "usine_trigger_events",
1442
+ "entityType": "pks"
1443
+ },
1444
+ {
1445
+ "columns": [
1446
+ {
1447
+ "value": "attempt_id",
1448
+ "isExpression": false
1449
+ },
1450
+ {
1451
+ "value": "direction",
1452
+ "isExpression": false
1453
+ },
1454
+ {
1455
+ "value": "channel_sequence",
1456
+ "isExpression": false
1457
+ }
1458
+ ],
1459
+ "isUnique": true,
1460
+ "where": null,
1461
+ "origin": "manual",
1462
+ "name": "usine_attempt_transcript_envelope",
1463
+ "entityType": "indexes",
1464
+ "table": "usine_attempt_transcripts"
1465
+ },
1466
+ {
1467
+ "columns": [
1468
+ {
1469
+ "value": "attempt_id",
1470
+ "isExpression": false
1471
+ },
1472
+ {
1473
+ "value": "sequence",
1474
+ "isExpression": false
1475
+ }
1476
+ ],
1477
+ "isUnique": false,
1478
+ "where": null,
1479
+ "origin": "manual",
1480
+ "name": "usine_attempt_transcript_tail",
1481
+ "entityType": "indexes",
1482
+ "table": "usine_attempt_transcripts"
1483
+ },
1484
+ {
1485
+ "columns": [
1486
+ {
1487
+ "value": "run_id",
1488
+ "isExpression": false
1489
+ },
1490
+ {
1491
+ "value": "step_name",
1492
+ "isExpression": false
1493
+ },
1494
+ {
1495
+ "value": "attempt_number",
1496
+ "isExpression": false
1497
+ }
1498
+ ],
1499
+ "isUnique": true,
1500
+ "where": null,
1501
+ "origin": "manual",
1502
+ "name": "usine_attempt_number",
1503
+ "entityType": "indexes",
1504
+ "table": "usine_attempts"
1505
+ },
1506
+ {
1507
+ "columns": [
1508
+ {
1509
+ "value": "run_id",
1510
+ "isExpression": false
1511
+ }
1512
+ ],
1513
+ "isUnique": true,
1514
+ "where": "\"usine_attempts\".\"outcome_json\" is null",
1515
+ "origin": "manual",
1516
+ "name": "usine_one_in_flight_attempt",
1517
+ "entityType": "indexes",
1518
+ "table": "usine_attempts"
1519
+ },
1520
+ {
1521
+ "columns": [
1522
+ {
1523
+ "value": "item_key",
1524
+ "isExpression": false
1525
+ },
1526
+ {
1527
+ "value": "moved_at",
1528
+ "isExpression": false
1529
+ }
1530
+ ],
1531
+ "isUnique": false,
1532
+ "where": null,
1533
+ "origin": "manual",
1534
+ "name": "usine_board_moves_item",
1535
+ "entityType": "indexes",
1536
+ "table": "usine_board_moves"
1537
+ },
1538
+ {
1539
+ "columns": [
1540
+ {
1541
+ "value": "item_key",
1542
+ "isExpression": false
1543
+ },
1544
+ {
1545
+ "value": "generation",
1546
+ "isExpression": false
1547
+ },
1548
+ {
1549
+ "value": "loop",
1550
+ "isExpression": false
1551
+ }
1552
+ ],
1553
+ "isUnique": false,
1554
+ "where": null,
1555
+ "origin": "manual",
1556
+ "name": "usine_cycle_reservations_item",
1557
+ "entityType": "indexes",
1558
+ "table": "usine_cycle_reservations"
1559
+ },
1560
+ {
1561
+ "columns": [
1562
+ {
1563
+ "value": "repository",
1564
+ "isExpression": false
1565
+ },
1566
+ {
1567
+ "value": "item_number",
1568
+ "isExpression": false
1569
+ }
1570
+ ],
1571
+ "isUnique": true,
1572
+ "where": null,
1573
+ "origin": "manual",
1574
+ "name": "usine_item_projection_number",
1575
+ "entityType": "indexes",
1576
+ "table": "usine_item_projections"
1577
+ },
1578
+ {
1579
+ "columns": [
1580
+ {
1581
+ "value": "loop_name",
1582
+ "isExpression": false
1583
+ },
1584
+ {
1585
+ "value": "item_key",
1586
+ "isExpression": false
1587
+ }
1588
+ ],
1589
+ "isUnique": false,
1590
+ "where": null,
1591
+ "origin": "manual",
1592
+ "name": "usine_trigger_events_item",
1593
+ "entityType": "indexes",
1594
+ "table": "usine_trigger_events"
1595
+ },
1596
+ {
1597
+ "columns": [
1598
+ {
1599
+ "value": "item_key",
1600
+ "isExpression": false
1601
+ }
1602
+ ],
1603
+ "isUnique": false,
1604
+ "where": null,
1605
+ "origin": "manual",
1606
+ "name": "usine_trigger_events_item_history",
1607
+ "entityType": "indexes",
1608
+ "table": "usine_trigger_events"
1609
+ },
1610
+ {
1611
+ "columns": [
1612
+ {
1613
+ "value": "reopens_event_id",
1614
+ "isExpression": false
1615
+ },
1616
+ {
1617
+ "value": "reopening",
1618
+ "isExpression": false
1619
+ }
1620
+ ],
1621
+ "isUnique": true,
1622
+ "where": null,
1623
+ "origin": "manual",
1624
+ "name": "usine_trigger_event_reopening",
1625
+ "entityType": "indexes",
1626
+ "table": "usine_trigger_events"
1627
+ },
1628
+ {
1629
+ "columns": ["event_id"],
1630
+ "nameExplicit": false,
1631
+ "name": "usine_approvals_event_id_unique",
1632
+ "entityType": "uniques",
1633
+ "table": "usine_approvals"
1634
+ },
1635
+ {
1636
+ "columns": ["event_id"],
1637
+ "nameExplicit": false,
1638
+ "name": "usine_cycle_resets_event_id_unique",
1639
+ "entityType": "uniques",
1640
+ "table": "usine_cycle_resets"
1641
+ },
1642
+ {
1643
+ "columns": ["dedup_key"],
1644
+ "nameExplicit": false,
1645
+ "name": "usine_events_dedup_key_unique",
1646
+ "entityType": "uniques",
1647
+ "table": "usine_events"
1648
+ },
1649
+ {
1650
+ "columns": ["event_id"],
1651
+ "nameExplicit": false,
1652
+ "name": "usine_runs_event_id_unique",
1653
+ "entityType": "uniques",
1654
+ "table": "usine_runs"
1655
+ },
1656
+ {
1657
+ "value": "(\"channel\" is null and \"approver\" is null) or \"channel\" = 'ui' or (\"channel\" = 'github-ask' and \"approver\" is not null)",
1658
+ "name": "usine_approvals_source",
1659
+ "entityType": "checks",
1660
+ "table": "usine_approvals"
1661
+ },
1662
+ {
1663
+ "value": "\"direction\" in ('inbound', 'outbound')",
1664
+ "name": "usine_attempt_transcripts_direction",
1665
+ "entityType": "checks",
1666
+ "table": "usine_attempt_transcripts"
1667
+ },
1668
+ {
1669
+ "value": "\"channel_sequence\" >= 1",
1670
+ "name": "usine_attempt_transcripts_sequence",
1671
+ "entityType": "checks",
1672
+ "table": "usine_attempt_transcripts"
1673
+ },
1674
+ {
1675
+ "value": "json_valid(\"envelope\")",
1676
+ "name": "usine_attempt_transcripts_envelope_json_valid",
1677
+ "entityType": "checks",
1678
+ "table": "usine_attempt_transcripts"
1679
+ },
1680
+ {
1681
+ "value": "\"attempt_number\" >= 1",
1682
+ "name": "usine_attempts_number",
1683
+ "entityType": "checks",
1684
+ "table": "usine_attempts"
1685
+ },
1686
+ {
1687
+ "value": "json_valid(\"brain_json\")",
1688
+ "name": "usine_attempts_brain_json_valid",
1689
+ "entityType": "checks",
1690
+ "table": "usine_attempts"
1691
+ },
1692
+ {
1693
+ "value": "\"outcome_json\" is null or json_valid(\"outcome_json\")",
1694
+ "name": "usine_attempts_outcome_json_valid",
1695
+ "entityType": "checks",
1696
+ "table": "usine_attempts"
1697
+ },
1698
+ {
1699
+ "value": "\"salvage_json\" is null or json_valid(\"salvage_json\")",
1700
+ "name": "usine_attempts_salvage_json_valid",
1701
+ "entityType": "checks",
1702
+ "table": "usine_attempts"
1703
+ },
1704
+ {
1705
+ "value": "json_valid(\"added_json\")",
1706
+ "name": "usine_board_moves_added_json_valid",
1707
+ "entityType": "checks",
1708
+ "table": "usine_board_moves"
1709
+ },
1710
+ {
1711
+ "value": "json_valid(\"removed_json\")",
1712
+ "name": "usine_board_moves_removed_json_valid",
1713
+ "entityType": "checks",
1714
+ "table": "usine_board_moves"
1715
+ },
1716
+ {
1717
+ "value": "json_valid(\"value_json\")",
1718
+ "name": "usine_cursors_value_json_valid",
1719
+ "entityType": "checks",
1720
+ "table": "usine_cursors"
1721
+ },
1722
+ {
1723
+ "value": "\"generation\" >= 0",
1724
+ "name": "usine_cycle_reservations_generation",
1725
+ "entityType": "checks",
1726
+ "table": "usine_cycle_reservations"
1727
+ },
1728
+ {
1729
+ "value": "json_valid(\"payload_json\")",
1730
+ "name": "usine_events_payload_json_valid",
1731
+ "entityType": "checks",
1732
+ "table": "usine_events"
1733
+ },
1734
+ {
1735
+ "value": "\"reason\" in ('superseded', 'revoked')",
1736
+ "name": "usine_ignored_events_reason",
1737
+ "entityType": "checks",
1738
+ "table": "usine_ignored_events"
1739
+ },
1740
+ {
1741
+ "value": "\"generation\" >= 0",
1742
+ "name": "usine_item_cycle_generation",
1743
+ "entityType": "checks",
1744
+ "table": "usine_item_cycle_budgets"
1745
+ },
1746
+ {
1747
+ "value": "\"ask_json\" is null or json_valid(\"ask_json\")",
1748
+ "name": "usine_item_cycle_ask_json",
1749
+ "entityType": "checks",
1750
+ "table": "usine_item_cycle_budgets"
1751
+ },
1752
+ {
1753
+ "value": "\"item_number\" >= 1",
1754
+ "name": "usine_item_projections_number",
1755
+ "entityType": "checks",
1756
+ "table": "usine_item_projections"
1757
+ },
1758
+ {
1759
+ "value": "json_valid(\"payload_json\")",
1760
+ "name": "usine_item_projections_payload_json_valid",
1761
+ "entityType": "checks",
1762
+ "table": "usine_item_projections"
1763
+ },
1764
+ {
1765
+ "value": "\"singleton\" = 1",
1766
+ "name": "usine_projection_revision_singleton",
1767
+ "entityType": "checks",
1768
+ "table": "usine_projection_revision"
1769
+ },
1770
+ {
1771
+ "value": "json_valid(\"labels_json\")",
1772
+ "name": "usine_repository_label_projections_labels_json_valid",
1773
+ "entityType": "checks",
1774
+ "table": "usine_repository_label_projections"
1775
+ },
1776
+ {
1777
+ "value": "json_valid(\"state_json\")",
1778
+ "name": "usine_runs_state_json_valid",
1779
+ "entityType": "checks",
1780
+ "table": "usine_runs"
1781
+ },
1782
+ {
1783
+ "value": "json_valid(\"agent_json\")",
1784
+ "name": "usine_runs_agent_json_valid",
1785
+ "entityType": "checks",
1786
+ "table": "usine_runs"
1787
+ },
1788
+ {
1789
+ "value": "\"result\" is null or json_valid(\"result\")",
1790
+ "name": "usine_steps_result_json_valid",
1791
+ "entityType": "checks",
1792
+ "table": "usine_steps"
1793
+ },
1794
+ {
1795
+ "value": "\"approval\" in ('none', 'required')",
1796
+ "name": "usine_trigger_events_approval",
1797
+ "entityType": "checks",
1798
+ "table": "usine_trigger_events"
1799
+ },
1800
+ {
1801
+ "value": "\"cycle_limit\" is null or \"cycle_limit\" >= 1",
1802
+ "name": "usine_trigger_events_cycle_limit",
1803
+ "entityType": "checks",
1804
+ "table": "usine_trigger_events"
1805
+ },
1806
+ {
1807
+ "value": "json_valid(\"agent_json\")",
1808
+ "name": "usine_trigger_events_agent_json_valid",
1809
+ "entityType": "checks",
1810
+ "table": "usine_trigger_events"
1811
+ }
1812
+ ],
1813
+ "renames": []
1814
+ }