truecourse 0.1.7 → 0.1.9

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 (38) hide show
  1. package/cli.mjs +7 -7
  2. package/db/migrations/0001_abnormal_random.sql +13 -0
  3. package/db/migrations/0002_slippery_fallen_one.sql +2 -0
  4. package/db/migrations/0003_yielding_mad_thinker.sql +2 -0
  5. package/db/migrations/meta/0001_snapshot.json +1583 -0
  6. package/db/migrations/meta/0002_snapshot.json +1583 -0
  7. package/db/migrations/meta/0003_snapshot.json +1602 -0
  8. package/db/migrations/meta/_journal.json +21 -0
  9. package/package.json +1 -1
  10. package/public/assets/index-B_clh7JM.css +1 -0
  11. package/public/assets/index-BcQKBiyG.js +386 -0
  12. package/public/index.html +29 -12
  13. package/server.mjs +84155 -11383
  14. package/public/404.html +0 -12
  15. package/public/_next/static/chunks/381-85180243c39f893f.js +0 -1
  16. package/public/_next/static/chunks/552-6917726d81ee49a3.js +0 -1
  17. package/public/_next/static/chunks/572-f3883e9a1f12af9b.js +0 -1
  18. package/public/_next/static/chunks/597-bdc49f9b0afbcc65.js +0 -1
  19. package/public/_next/static/chunks/7273c211-cf17e181dbeacc49.js +0 -1
  20. package/public/_next/static/chunks/a51c26f2-8f567e78114a65f0.js +0 -1
  21. package/public/_next/static/chunks/app/_not-found/page-7ce89933d9d660c3.js +0 -1
  22. package/public/_next/static/chunks/app/layout-7b61f0cc08a2b70c.js +0 -1
  23. package/public/_next/static/chunks/app/page-cfec34672a92b197.js +0 -1
  24. package/public/_next/static/chunks/app/repos/[[...slug]]/page-775a75a81164bb72.js +0 -1
  25. package/public/_next/static/chunks/framework-56b72e8a5f911564.js +0 -1
  26. package/public/_next/static/chunks/main-19f32cbfea665136.js +0 -1
  27. package/public/_next/static/chunks/main-app-11a30c55aba12d50.js +0 -1
  28. package/public/_next/static/chunks/pages/_app-23d1cfabc23fb6da.js +0 -1
  29. package/public/_next/static/chunks/pages/_error-647008f4bf4249c2.js +0 -1
  30. package/public/_next/static/chunks/polyfills-42372ed130431b0a.js +0 -1
  31. package/public/_next/static/chunks/webpack-f20a7a6e701c70d8.js +0 -1
  32. package/public/_next/static/css/599369d853c61df7.css +0 -31
  33. package/public/_next/static/css/bfb5d4bf473c84ea.css +0 -1
  34. package/public/_next/static/kOyPn8D2uazBrGUJ8aHW-/_buildManifest.js +0 -1
  35. package/public/_next/static/kOyPn8D2uazBrGUJ8aHW-/_ssgManifest.js +0 -1
  36. package/public/index.txt +0 -19
  37. package/public/repos.html +0 -12
  38. package/public/repos.txt +0 -17
@@ -0,0 +1,1602 @@
1
+ {
2
+ "id": "a3aef80e-7786-4388-b892-11d251ed9eec",
3
+ "prevId": "e5469cd0-7f86-46a1-a24a-dc7452d7345f",
4
+ "version": "7",
5
+ "dialect": "postgresql",
6
+ "tables": {
7
+ "public.analyses": {
8
+ "name": "analyses",
9
+ "schema": "",
10
+ "columns": {
11
+ "id": {
12
+ "name": "id",
13
+ "type": "uuid",
14
+ "primaryKey": true,
15
+ "notNull": true,
16
+ "default": "gen_random_uuid()"
17
+ },
18
+ "repo_id": {
19
+ "name": "repo_id",
20
+ "type": "uuid",
21
+ "primaryKey": false,
22
+ "notNull": true
23
+ },
24
+ "branch": {
25
+ "name": "branch",
26
+ "type": "text",
27
+ "primaryKey": false,
28
+ "notNull": false
29
+ },
30
+ "architecture": {
31
+ "name": "architecture",
32
+ "type": "text",
33
+ "primaryKey": false,
34
+ "notNull": true
35
+ },
36
+ "metadata": {
37
+ "name": "metadata",
38
+ "type": "jsonb",
39
+ "primaryKey": false,
40
+ "notNull": false
41
+ },
42
+ "node_positions": {
43
+ "name": "node_positions",
44
+ "type": "jsonb",
45
+ "primaryKey": false,
46
+ "notNull": false
47
+ },
48
+ "created_at": {
49
+ "name": "created_at",
50
+ "type": "timestamp with time zone",
51
+ "primaryKey": false,
52
+ "notNull": true,
53
+ "default": "now()"
54
+ }
55
+ },
56
+ "indexes": {},
57
+ "foreignKeys": {
58
+ "analyses_repo_id_repos_id_fk": {
59
+ "name": "analyses_repo_id_repos_id_fk",
60
+ "tableFrom": "analyses",
61
+ "tableTo": "repos",
62
+ "columnsFrom": [
63
+ "repo_id"
64
+ ],
65
+ "columnsTo": [
66
+ "id"
67
+ ],
68
+ "onDelete": "cascade",
69
+ "onUpdate": "no action"
70
+ }
71
+ },
72
+ "compositePrimaryKeys": {},
73
+ "uniqueConstraints": {},
74
+ "policies": {},
75
+ "checkConstraints": {},
76
+ "isRLSEnabled": false
77
+ },
78
+ "public.conversations": {
79
+ "name": "conversations",
80
+ "schema": "",
81
+ "columns": {
82
+ "id": {
83
+ "name": "id",
84
+ "type": "uuid",
85
+ "primaryKey": true,
86
+ "notNull": true,
87
+ "default": "gen_random_uuid()"
88
+ },
89
+ "repo_id": {
90
+ "name": "repo_id",
91
+ "type": "uuid",
92
+ "primaryKey": false,
93
+ "notNull": true
94
+ },
95
+ "branch": {
96
+ "name": "branch",
97
+ "type": "text",
98
+ "primaryKey": false,
99
+ "notNull": false
100
+ },
101
+ "created_at": {
102
+ "name": "created_at",
103
+ "type": "timestamp with time zone",
104
+ "primaryKey": false,
105
+ "notNull": true,
106
+ "default": "now()"
107
+ },
108
+ "updated_at": {
109
+ "name": "updated_at",
110
+ "type": "timestamp with time zone",
111
+ "primaryKey": false,
112
+ "notNull": true,
113
+ "default": "now()"
114
+ }
115
+ },
116
+ "indexes": {},
117
+ "foreignKeys": {
118
+ "conversations_repo_id_repos_id_fk": {
119
+ "name": "conversations_repo_id_repos_id_fk",
120
+ "tableFrom": "conversations",
121
+ "tableTo": "repos",
122
+ "columnsFrom": [
123
+ "repo_id"
124
+ ],
125
+ "columnsTo": [
126
+ "id"
127
+ ],
128
+ "onDelete": "cascade",
129
+ "onUpdate": "no action"
130
+ }
131
+ },
132
+ "compositePrimaryKeys": {},
133
+ "uniqueConstraints": {},
134
+ "policies": {},
135
+ "checkConstraints": {},
136
+ "isRLSEnabled": false
137
+ },
138
+ "public.database_connections": {
139
+ "name": "database_connections",
140
+ "schema": "",
141
+ "columns": {
142
+ "id": {
143
+ "name": "id",
144
+ "type": "uuid",
145
+ "primaryKey": true,
146
+ "notNull": true,
147
+ "default": "gen_random_uuid()"
148
+ },
149
+ "analysis_id": {
150
+ "name": "analysis_id",
151
+ "type": "uuid",
152
+ "primaryKey": false,
153
+ "notNull": true
154
+ },
155
+ "service_id": {
156
+ "name": "service_id",
157
+ "type": "uuid",
158
+ "primaryKey": false,
159
+ "notNull": true
160
+ },
161
+ "database_id": {
162
+ "name": "database_id",
163
+ "type": "uuid",
164
+ "primaryKey": false,
165
+ "notNull": true
166
+ },
167
+ "driver": {
168
+ "name": "driver",
169
+ "type": "text",
170
+ "primaryKey": false,
171
+ "notNull": true
172
+ }
173
+ },
174
+ "indexes": {},
175
+ "foreignKeys": {
176
+ "database_connections_analysis_id_analyses_id_fk": {
177
+ "name": "database_connections_analysis_id_analyses_id_fk",
178
+ "tableFrom": "database_connections",
179
+ "tableTo": "analyses",
180
+ "columnsFrom": [
181
+ "analysis_id"
182
+ ],
183
+ "columnsTo": [
184
+ "id"
185
+ ],
186
+ "onDelete": "cascade",
187
+ "onUpdate": "no action"
188
+ },
189
+ "database_connections_service_id_services_id_fk": {
190
+ "name": "database_connections_service_id_services_id_fk",
191
+ "tableFrom": "database_connections",
192
+ "tableTo": "services",
193
+ "columnsFrom": [
194
+ "service_id"
195
+ ],
196
+ "columnsTo": [
197
+ "id"
198
+ ],
199
+ "onDelete": "cascade",
200
+ "onUpdate": "no action"
201
+ },
202
+ "database_connections_database_id_databases_id_fk": {
203
+ "name": "database_connections_database_id_databases_id_fk",
204
+ "tableFrom": "database_connections",
205
+ "tableTo": "databases",
206
+ "columnsFrom": [
207
+ "database_id"
208
+ ],
209
+ "columnsTo": [
210
+ "id"
211
+ ],
212
+ "onDelete": "cascade",
213
+ "onUpdate": "no action"
214
+ }
215
+ },
216
+ "compositePrimaryKeys": {},
217
+ "uniqueConstraints": {},
218
+ "policies": {},
219
+ "checkConstraints": {},
220
+ "isRLSEnabled": false
221
+ },
222
+ "public.databases": {
223
+ "name": "databases",
224
+ "schema": "",
225
+ "columns": {
226
+ "id": {
227
+ "name": "id",
228
+ "type": "uuid",
229
+ "primaryKey": true,
230
+ "notNull": true,
231
+ "default": "gen_random_uuid()"
232
+ },
233
+ "analysis_id": {
234
+ "name": "analysis_id",
235
+ "type": "uuid",
236
+ "primaryKey": false,
237
+ "notNull": true
238
+ },
239
+ "name": {
240
+ "name": "name",
241
+ "type": "text",
242
+ "primaryKey": false,
243
+ "notNull": true
244
+ },
245
+ "type": {
246
+ "name": "type",
247
+ "type": "text",
248
+ "primaryKey": false,
249
+ "notNull": true
250
+ },
251
+ "driver": {
252
+ "name": "driver",
253
+ "type": "text",
254
+ "primaryKey": false,
255
+ "notNull": true
256
+ },
257
+ "connection_config": {
258
+ "name": "connection_config",
259
+ "type": "jsonb",
260
+ "primaryKey": false,
261
+ "notNull": false
262
+ },
263
+ "tables": {
264
+ "name": "tables",
265
+ "type": "jsonb",
266
+ "primaryKey": false,
267
+ "notNull": false
268
+ },
269
+ "db_relations": {
270
+ "name": "db_relations",
271
+ "type": "jsonb",
272
+ "primaryKey": false,
273
+ "notNull": false
274
+ },
275
+ "connected_services": {
276
+ "name": "connected_services",
277
+ "type": "jsonb",
278
+ "primaryKey": false,
279
+ "notNull": false
280
+ },
281
+ "created_at": {
282
+ "name": "created_at",
283
+ "type": "timestamp with time zone",
284
+ "primaryKey": false,
285
+ "notNull": true,
286
+ "default": "now()"
287
+ }
288
+ },
289
+ "indexes": {},
290
+ "foreignKeys": {
291
+ "databases_analysis_id_analyses_id_fk": {
292
+ "name": "databases_analysis_id_analyses_id_fk",
293
+ "tableFrom": "databases",
294
+ "tableTo": "analyses",
295
+ "columnsFrom": [
296
+ "analysis_id"
297
+ ],
298
+ "columnsTo": [
299
+ "id"
300
+ ],
301
+ "onDelete": "cascade",
302
+ "onUpdate": "no action"
303
+ }
304
+ },
305
+ "compositePrimaryKeys": {},
306
+ "uniqueConstraints": {},
307
+ "policies": {},
308
+ "checkConstraints": {},
309
+ "isRLSEnabled": false
310
+ },
311
+ "public.diff_checks": {
312
+ "name": "diff_checks",
313
+ "schema": "",
314
+ "columns": {
315
+ "id": {
316
+ "name": "id",
317
+ "type": "uuid",
318
+ "primaryKey": true,
319
+ "notNull": true,
320
+ "default": "gen_random_uuid()"
321
+ },
322
+ "repo_id": {
323
+ "name": "repo_id",
324
+ "type": "uuid",
325
+ "primaryKey": false,
326
+ "notNull": true
327
+ },
328
+ "analysis_id": {
329
+ "name": "analysis_id",
330
+ "type": "uuid",
331
+ "primaryKey": false,
332
+ "notNull": true
333
+ },
334
+ "diff_analysis_id": {
335
+ "name": "diff_analysis_id",
336
+ "type": "uuid",
337
+ "primaryKey": false,
338
+ "notNull": false
339
+ },
340
+ "changed_files": {
341
+ "name": "changed_files",
342
+ "type": "jsonb",
343
+ "primaryKey": false,
344
+ "notNull": true
345
+ },
346
+ "resolved_violation_ids": {
347
+ "name": "resolved_violation_ids",
348
+ "type": "jsonb",
349
+ "primaryKey": false,
350
+ "notNull": true
351
+ },
352
+ "new_violations": {
353
+ "name": "new_violations",
354
+ "type": "jsonb",
355
+ "primaryKey": false,
356
+ "notNull": true
357
+ },
358
+ "affected_node_ids": {
359
+ "name": "affected_node_ids",
360
+ "type": "jsonb",
361
+ "primaryKey": false,
362
+ "notNull": true
363
+ },
364
+ "summary": {
365
+ "name": "summary",
366
+ "type": "jsonb",
367
+ "primaryKey": false,
368
+ "notNull": true
369
+ },
370
+ "created_at": {
371
+ "name": "created_at",
372
+ "type": "timestamp with time zone",
373
+ "primaryKey": false,
374
+ "notNull": true,
375
+ "default": "now()"
376
+ }
377
+ },
378
+ "indexes": {},
379
+ "foreignKeys": {
380
+ "diff_checks_repo_id_repos_id_fk": {
381
+ "name": "diff_checks_repo_id_repos_id_fk",
382
+ "tableFrom": "diff_checks",
383
+ "tableTo": "repos",
384
+ "columnsFrom": [
385
+ "repo_id"
386
+ ],
387
+ "columnsTo": [
388
+ "id"
389
+ ],
390
+ "onDelete": "cascade",
391
+ "onUpdate": "no action"
392
+ },
393
+ "diff_checks_analysis_id_analyses_id_fk": {
394
+ "name": "diff_checks_analysis_id_analyses_id_fk",
395
+ "tableFrom": "diff_checks",
396
+ "tableTo": "analyses",
397
+ "columnsFrom": [
398
+ "analysis_id"
399
+ ],
400
+ "columnsTo": [
401
+ "id"
402
+ ],
403
+ "onDelete": "cascade",
404
+ "onUpdate": "no action"
405
+ },
406
+ "diff_checks_diff_analysis_id_analyses_id_fk": {
407
+ "name": "diff_checks_diff_analysis_id_analyses_id_fk",
408
+ "tableFrom": "diff_checks",
409
+ "tableTo": "analyses",
410
+ "columnsFrom": [
411
+ "diff_analysis_id"
412
+ ],
413
+ "columnsTo": [
414
+ "id"
415
+ ],
416
+ "onDelete": "set null",
417
+ "onUpdate": "no action"
418
+ }
419
+ },
420
+ "compositePrimaryKeys": {},
421
+ "uniqueConstraints": {},
422
+ "policies": {},
423
+ "checkConstraints": {},
424
+ "isRLSEnabled": false
425
+ },
426
+ "public.layer_dependencies": {
427
+ "name": "layer_dependencies",
428
+ "schema": "",
429
+ "columns": {
430
+ "id": {
431
+ "name": "id",
432
+ "type": "uuid",
433
+ "primaryKey": true,
434
+ "notNull": true,
435
+ "default": "gen_random_uuid()"
436
+ },
437
+ "analysis_id": {
438
+ "name": "analysis_id",
439
+ "type": "uuid",
440
+ "primaryKey": false,
441
+ "notNull": true
442
+ },
443
+ "source_service_name": {
444
+ "name": "source_service_name",
445
+ "type": "text",
446
+ "primaryKey": false,
447
+ "notNull": true
448
+ },
449
+ "source_layer": {
450
+ "name": "source_layer",
451
+ "type": "text",
452
+ "primaryKey": false,
453
+ "notNull": true
454
+ },
455
+ "target_service_name": {
456
+ "name": "target_service_name",
457
+ "type": "text",
458
+ "primaryKey": false,
459
+ "notNull": true
460
+ },
461
+ "target_layer": {
462
+ "name": "target_layer",
463
+ "type": "text",
464
+ "primaryKey": false,
465
+ "notNull": true
466
+ },
467
+ "dependency_count": {
468
+ "name": "dependency_count",
469
+ "type": "integer",
470
+ "primaryKey": false,
471
+ "notNull": true
472
+ },
473
+ "is_violation": {
474
+ "name": "is_violation",
475
+ "type": "boolean",
476
+ "primaryKey": false,
477
+ "notNull": true,
478
+ "default": false
479
+ },
480
+ "violation_reason": {
481
+ "name": "violation_reason",
482
+ "type": "text",
483
+ "primaryKey": false,
484
+ "notNull": false
485
+ }
486
+ },
487
+ "indexes": {},
488
+ "foreignKeys": {
489
+ "layer_dependencies_analysis_id_analyses_id_fk": {
490
+ "name": "layer_dependencies_analysis_id_analyses_id_fk",
491
+ "tableFrom": "layer_dependencies",
492
+ "tableTo": "analyses",
493
+ "columnsFrom": [
494
+ "analysis_id"
495
+ ],
496
+ "columnsTo": [
497
+ "id"
498
+ ],
499
+ "onDelete": "cascade",
500
+ "onUpdate": "no action"
501
+ }
502
+ },
503
+ "compositePrimaryKeys": {},
504
+ "uniqueConstraints": {},
505
+ "policies": {},
506
+ "checkConstraints": {},
507
+ "isRLSEnabled": false
508
+ },
509
+ "public.layers": {
510
+ "name": "layers",
511
+ "schema": "",
512
+ "columns": {
513
+ "id": {
514
+ "name": "id",
515
+ "type": "uuid",
516
+ "primaryKey": true,
517
+ "notNull": true,
518
+ "default": "gen_random_uuid()"
519
+ },
520
+ "analysis_id": {
521
+ "name": "analysis_id",
522
+ "type": "uuid",
523
+ "primaryKey": false,
524
+ "notNull": true
525
+ },
526
+ "service_id": {
527
+ "name": "service_id",
528
+ "type": "uuid",
529
+ "primaryKey": false,
530
+ "notNull": true
531
+ },
532
+ "service_name": {
533
+ "name": "service_name",
534
+ "type": "text",
535
+ "primaryKey": false,
536
+ "notNull": true
537
+ },
538
+ "layer": {
539
+ "name": "layer",
540
+ "type": "text",
541
+ "primaryKey": false,
542
+ "notNull": true
543
+ },
544
+ "file_count": {
545
+ "name": "file_count",
546
+ "type": "integer",
547
+ "primaryKey": false,
548
+ "notNull": true
549
+ },
550
+ "file_paths": {
551
+ "name": "file_paths",
552
+ "type": "jsonb",
553
+ "primaryKey": false,
554
+ "notNull": true
555
+ },
556
+ "confidence": {
557
+ "name": "confidence",
558
+ "type": "integer",
559
+ "primaryKey": false,
560
+ "notNull": true
561
+ },
562
+ "evidence": {
563
+ "name": "evidence",
564
+ "type": "jsonb",
565
+ "primaryKey": false,
566
+ "notNull": true
567
+ }
568
+ },
569
+ "indexes": {},
570
+ "foreignKeys": {
571
+ "layers_analysis_id_analyses_id_fk": {
572
+ "name": "layers_analysis_id_analyses_id_fk",
573
+ "tableFrom": "layers",
574
+ "tableTo": "analyses",
575
+ "columnsFrom": [
576
+ "analysis_id"
577
+ ],
578
+ "columnsTo": [
579
+ "id"
580
+ ],
581
+ "onDelete": "cascade",
582
+ "onUpdate": "no action"
583
+ },
584
+ "layers_service_id_services_id_fk": {
585
+ "name": "layers_service_id_services_id_fk",
586
+ "tableFrom": "layers",
587
+ "tableTo": "services",
588
+ "columnsFrom": [
589
+ "service_id"
590
+ ],
591
+ "columnsTo": [
592
+ "id"
593
+ ],
594
+ "onDelete": "cascade",
595
+ "onUpdate": "no action"
596
+ }
597
+ },
598
+ "compositePrimaryKeys": {},
599
+ "uniqueConstraints": {},
600
+ "policies": {},
601
+ "checkConstraints": {},
602
+ "isRLSEnabled": false
603
+ },
604
+ "public.messages": {
605
+ "name": "messages",
606
+ "schema": "",
607
+ "columns": {
608
+ "id": {
609
+ "name": "id",
610
+ "type": "uuid",
611
+ "primaryKey": true,
612
+ "notNull": true,
613
+ "default": "gen_random_uuid()"
614
+ },
615
+ "conversation_id": {
616
+ "name": "conversation_id",
617
+ "type": "uuid",
618
+ "primaryKey": false,
619
+ "notNull": true
620
+ },
621
+ "role": {
622
+ "name": "role",
623
+ "type": "text",
624
+ "primaryKey": false,
625
+ "notNull": true
626
+ },
627
+ "content": {
628
+ "name": "content",
629
+ "type": "text",
630
+ "primaryKey": false,
631
+ "notNull": true
632
+ },
633
+ "node_context": {
634
+ "name": "node_context",
635
+ "type": "jsonb",
636
+ "primaryKey": false,
637
+ "notNull": false
638
+ },
639
+ "created_at": {
640
+ "name": "created_at",
641
+ "type": "timestamp with time zone",
642
+ "primaryKey": false,
643
+ "notNull": true,
644
+ "default": "now()"
645
+ }
646
+ },
647
+ "indexes": {},
648
+ "foreignKeys": {
649
+ "messages_conversation_id_conversations_id_fk": {
650
+ "name": "messages_conversation_id_conversations_id_fk",
651
+ "tableFrom": "messages",
652
+ "tableTo": "conversations",
653
+ "columnsFrom": [
654
+ "conversation_id"
655
+ ],
656
+ "columnsTo": [
657
+ "id"
658
+ ],
659
+ "onDelete": "cascade",
660
+ "onUpdate": "no action"
661
+ }
662
+ },
663
+ "compositePrimaryKeys": {},
664
+ "uniqueConstraints": {},
665
+ "policies": {},
666
+ "checkConstraints": {},
667
+ "isRLSEnabled": false
668
+ },
669
+ "public.method_dependencies": {
670
+ "name": "method_dependencies",
671
+ "schema": "",
672
+ "columns": {
673
+ "id": {
674
+ "name": "id",
675
+ "type": "uuid",
676
+ "primaryKey": true,
677
+ "notNull": true,
678
+ "default": "gen_random_uuid()"
679
+ },
680
+ "analysis_id": {
681
+ "name": "analysis_id",
682
+ "type": "uuid",
683
+ "primaryKey": false,
684
+ "notNull": true
685
+ },
686
+ "source_method_id": {
687
+ "name": "source_method_id",
688
+ "type": "uuid",
689
+ "primaryKey": false,
690
+ "notNull": true
691
+ },
692
+ "target_method_id": {
693
+ "name": "target_method_id",
694
+ "type": "uuid",
695
+ "primaryKey": false,
696
+ "notNull": true
697
+ },
698
+ "call_count": {
699
+ "name": "call_count",
700
+ "type": "integer",
701
+ "primaryKey": false,
702
+ "notNull": true,
703
+ "default": 1
704
+ }
705
+ },
706
+ "indexes": {},
707
+ "foreignKeys": {
708
+ "method_dependencies_analysis_id_analyses_id_fk": {
709
+ "name": "method_dependencies_analysis_id_analyses_id_fk",
710
+ "tableFrom": "method_dependencies",
711
+ "tableTo": "analyses",
712
+ "columnsFrom": [
713
+ "analysis_id"
714
+ ],
715
+ "columnsTo": [
716
+ "id"
717
+ ],
718
+ "onDelete": "cascade",
719
+ "onUpdate": "no action"
720
+ },
721
+ "method_dependencies_source_method_id_methods_id_fk": {
722
+ "name": "method_dependencies_source_method_id_methods_id_fk",
723
+ "tableFrom": "method_dependencies",
724
+ "tableTo": "methods",
725
+ "columnsFrom": [
726
+ "source_method_id"
727
+ ],
728
+ "columnsTo": [
729
+ "id"
730
+ ],
731
+ "onDelete": "cascade",
732
+ "onUpdate": "no action"
733
+ },
734
+ "method_dependencies_target_method_id_methods_id_fk": {
735
+ "name": "method_dependencies_target_method_id_methods_id_fk",
736
+ "tableFrom": "method_dependencies",
737
+ "tableTo": "methods",
738
+ "columnsFrom": [
739
+ "target_method_id"
740
+ ],
741
+ "columnsTo": [
742
+ "id"
743
+ ],
744
+ "onDelete": "cascade",
745
+ "onUpdate": "no action"
746
+ }
747
+ },
748
+ "compositePrimaryKeys": {},
749
+ "uniqueConstraints": {},
750
+ "policies": {},
751
+ "checkConstraints": {},
752
+ "isRLSEnabled": false
753
+ },
754
+ "public.methods": {
755
+ "name": "methods",
756
+ "schema": "",
757
+ "columns": {
758
+ "id": {
759
+ "name": "id",
760
+ "type": "uuid",
761
+ "primaryKey": true,
762
+ "notNull": true,
763
+ "default": "gen_random_uuid()"
764
+ },
765
+ "analysis_id": {
766
+ "name": "analysis_id",
767
+ "type": "uuid",
768
+ "primaryKey": false,
769
+ "notNull": true
770
+ },
771
+ "module_id": {
772
+ "name": "module_id",
773
+ "type": "uuid",
774
+ "primaryKey": false,
775
+ "notNull": true
776
+ },
777
+ "name": {
778
+ "name": "name",
779
+ "type": "text",
780
+ "primaryKey": false,
781
+ "notNull": true
782
+ },
783
+ "signature": {
784
+ "name": "signature",
785
+ "type": "text",
786
+ "primaryKey": false,
787
+ "notNull": true
788
+ },
789
+ "param_count": {
790
+ "name": "param_count",
791
+ "type": "integer",
792
+ "primaryKey": false,
793
+ "notNull": true,
794
+ "default": 0
795
+ },
796
+ "return_type": {
797
+ "name": "return_type",
798
+ "type": "text",
799
+ "primaryKey": false,
800
+ "notNull": false
801
+ },
802
+ "is_async": {
803
+ "name": "is_async",
804
+ "type": "boolean",
805
+ "primaryKey": false,
806
+ "notNull": true,
807
+ "default": false
808
+ },
809
+ "is_exported": {
810
+ "name": "is_exported",
811
+ "type": "boolean",
812
+ "primaryKey": false,
813
+ "notNull": true,
814
+ "default": false
815
+ },
816
+ "line_count": {
817
+ "name": "line_count",
818
+ "type": "integer",
819
+ "primaryKey": false,
820
+ "notNull": false
821
+ },
822
+ "statement_count": {
823
+ "name": "statement_count",
824
+ "type": "integer",
825
+ "primaryKey": false,
826
+ "notNull": false
827
+ },
828
+ "max_nesting_depth": {
829
+ "name": "max_nesting_depth",
830
+ "type": "integer",
831
+ "primaryKey": false,
832
+ "notNull": false
833
+ }
834
+ },
835
+ "indexes": {},
836
+ "foreignKeys": {
837
+ "methods_analysis_id_analyses_id_fk": {
838
+ "name": "methods_analysis_id_analyses_id_fk",
839
+ "tableFrom": "methods",
840
+ "tableTo": "analyses",
841
+ "columnsFrom": [
842
+ "analysis_id"
843
+ ],
844
+ "columnsTo": [
845
+ "id"
846
+ ],
847
+ "onDelete": "cascade",
848
+ "onUpdate": "no action"
849
+ },
850
+ "methods_module_id_modules_id_fk": {
851
+ "name": "methods_module_id_modules_id_fk",
852
+ "tableFrom": "methods",
853
+ "tableTo": "modules",
854
+ "columnsFrom": [
855
+ "module_id"
856
+ ],
857
+ "columnsTo": [
858
+ "id"
859
+ ],
860
+ "onDelete": "cascade",
861
+ "onUpdate": "no action"
862
+ }
863
+ },
864
+ "compositePrimaryKeys": {},
865
+ "uniqueConstraints": {},
866
+ "policies": {},
867
+ "checkConstraints": {},
868
+ "isRLSEnabled": false
869
+ },
870
+ "public.module_dependencies": {
871
+ "name": "module_dependencies",
872
+ "schema": "",
873
+ "columns": {
874
+ "id": {
875
+ "name": "id",
876
+ "type": "uuid",
877
+ "primaryKey": true,
878
+ "notNull": true,
879
+ "default": "gen_random_uuid()"
880
+ },
881
+ "analysis_id": {
882
+ "name": "analysis_id",
883
+ "type": "uuid",
884
+ "primaryKey": false,
885
+ "notNull": true
886
+ },
887
+ "source_module_id": {
888
+ "name": "source_module_id",
889
+ "type": "uuid",
890
+ "primaryKey": false,
891
+ "notNull": true
892
+ },
893
+ "target_module_id": {
894
+ "name": "target_module_id",
895
+ "type": "uuid",
896
+ "primaryKey": false,
897
+ "notNull": true
898
+ },
899
+ "imported_names": {
900
+ "name": "imported_names",
901
+ "type": "jsonb",
902
+ "primaryKey": false,
903
+ "notNull": true
904
+ },
905
+ "dependency_count": {
906
+ "name": "dependency_count",
907
+ "type": "integer",
908
+ "primaryKey": false,
909
+ "notNull": true,
910
+ "default": 1
911
+ }
912
+ },
913
+ "indexes": {},
914
+ "foreignKeys": {
915
+ "module_dependencies_analysis_id_analyses_id_fk": {
916
+ "name": "module_dependencies_analysis_id_analyses_id_fk",
917
+ "tableFrom": "module_dependencies",
918
+ "tableTo": "analyses",
919
+ "columnsFrom": [
920
+ "analysis_id"
921
+ ],
922
+ "columnsTo": [
923
+ "id"
924
+ ],
925
+ "onDelete": "cascade",
926
+ "onUpdate": "no action"
927
+ },
928
+ "module_dependencies_source_module_id_modules_id_fk": {
929
+ "name": "module_dependencies_source_module_id_modules_id_fk",
930
+ "tableFrom": "module_dependencies",
931
+ "tableTo": "modules",
932
+ "columnsFrom": [
933
+ "source_module_id"
934
+ ],
935
+ "columnsTo": [
936
+ "id"
937
+ ],
938
+ "onDelete": "cascade",
939
+ "onUpdate": "no action"
940
+ },
941
+ "module_dependencies_target_module_id_modules_id_fk": {
942
+ "name": "module_dependencies_target_module_id_modules_id_fk",
943
+ "tableFrom": "module_dependencies",
944
+ "tableTo": "modules",
945
+ "columnsFrom": [
946
+ "target_module_id"
947
+ ],
948
+ "columnsTo": [
949
+ "id"
950
+ ],
951
+ "onDelete": "cascade",
952
+ "onUpdate": "no action"
953
+ }
954
+ },
955
+ "compositePrimaryKeys": {},
956
+ "uniqueConstraints": {},
957
+ "policies": {},
958
+ "checkConstraints": {},
959
+ "isRLSEnabled": false
960
+ },
961
+ "public.modules": {
962
+ "name": "modules",
963
+ "schema": "",
964
+ "columns": {
965
+ "id": {
966
+ "name": "id",
967
+ "type": "uuid",
968
+ "primaryKey": true,
969
+ "notNull": true,
970
+ "default": "gen_random_uuid()"
971
+ },
972
+ "analysis_id": {
973
+ "name": "analysis_id",
974
+ "type": "uuid",
975
+ "primaryKey": false,
976
+ "notNull": true
977
+ },
978
+ "layer_id": {
979
+ "name": "layer_id",
980
+ "type": "uuid",
981
+ "primaryKey": false,
982
+ "notNull": true
983
+ },
984
+ "service_id": {
985
+ "name": "service_id",
986
+ "type": "uuid",
987
+ "primaryKey": false,
988
+ "notNull": true
989
+ },
990
+ "name": {
991
+ "name": "name",
992
+ "type": "text",
993
+ "primaryKey": false,
994
+ "notNull": true
995
+ },
996
+ "kind": {
997
+ "name": "kind",
998
+ "type": "text",
999
+ "primaryKey": false,
1000
+ "notNull": true
1001
+ },
1002
+ "file_path": {
1003
+ "name": "file_path",
1004
+ "type": "text",
1005
+ "primaryKey": false,
1006
+ "notNull": true
1007
+ },
1008
+ "method_count": {
1009
+ "name": "method_count",
1010
+ "type": "integer",
1011
+ "primaryKey": false,
1012
+ "notNull": true,
1013
+ "default": 0
1014
+ },
1015
+ "property_count": {
1016
+ "name": "property_count",
1017
+ "type": "integer",
1018
+ "primaryKey": false,
1019
+ "notNull": true,
1020
+ "default": 0
1021
+ },
1022
+ "import_count": {
1023
+ "name": "import_count",
1024
+ "type": "integer",
1025
+ "primaryKey": false,
1026
+ "notNull": true,
1027
+ "default": 0
1028
+ },
1029
+ "export_count": {
1030
+ "name": "export_count",
1031
+ "type": "integer",
1032
+ "primaryKey": false,
1033
+ "notNull": true,
1034
+ "default": 0
1035
+ },
1036
+ "super_class": {
1037
+ "name": "super_class",
1038
+ "type": "text",
1039
+ "primaryKey": false,
1040
+ "notNull": false
1041
+ },
1042
+ "line_count": {
1043
+ "name": "line_count",
1044
+ "type": "integer",
1045
+ "primaryKey": false,
1046
+ "notNull": false
1047
+ }
1048
+ },
1049
+ "indexes": {},
1050
+ "foreignKeys": {
1051
+ "modules_analysis_id_analyses_id_fk": {
1052
+ "name": "modules_analysis_id_analyses_id_fk",
1053
+ "tableFrom": "modules",
1054
+ "tableTo": "analyses",
1055
+ "columnsFrom": [
1056
+ "analysis_id"
1057
+ ],
1058
+ "columnsTo": [
1059
+ "id"
1060
+ ],
1061
+ "onDelete": "cascade",
1062
+ "onUpdate": "no action"
1063
+ },
1064
+ "modules_layer_id_layers_id_fk": {
1065
+ "name": "modules_layer_id_layers_id_fk",
1066
+ "tableFrom": "modules",
1067
+ "tableTo": "layers",
1068
+ "columnsFrom": [
1069
+ "layer_id"
1070
+ ],
1071
+ "columnsTo": [
1072
+ "id"
1073
+ ],
1074
+ "onDelete": "cascade",
1075
+ "onUpdate": "no action"
1076
+ },
1077
+ "modules_service_id_services_id_fk": {
1078
+ "name": "modules_service_id_services_id_fk",
1079
+ "tableFrom": "modules",
1080
+ "tableTo": "services",
1081
+ "columnsFrom": [
1082
+ "service_id"
1083
+ ],
1084
+ "columnsTo": [
1085
+ "id"
1086
+ ],
1087
+ "onDelete": "cascade",
1088
+ "onUpdate": "no action"
1089
+ }
1090
+ },
1091
+ "compositePrimaryKeys": {},
1092
+ "uniqueConstraints": {},
1093
+ "policies": {},
1094
+ "checkConstraints": {},
1095
+ "isRLSEnabled": false
1096
+ },
1097
+ "public.repos": {
1098
+ "name": "repos",
1099
+ "schema": "",
1100
+ "columns": {
1101
+ "id": {
1102
+ "name": "id",
1103
+ "type": "uuid",
1104
+ "primaryKey": true,
1105
+ "notNull": true,
1106
+ "default": "gen_random_uuid()"
1107
+ },
1108
+ "name": {
1109
+ "name": "name",
1110
+ "type": "text",
1111
+ "primaryKey": false,
1112
+ "notNull": true
1113
+ },
1114
+ "path": {
1115
+ "name": "path",
1116
+ "type": "text",
1117
+ "primaryKey": false,
1118
+ "notNull": true
1119
+ },
1120
+ "last_analyzed_at": {
1121
+ "name": "last_analyzed_at",
1122
+ "type": "timestamp with time zone",
1123
+ "primaryKey": false,
1124
+ "notNull": false
1125
+ },
1126
+ "created_at": {
1127
+ "name": "created_at",
1128
+ "type": "timestamp with time zone",
1129
+ "primaryKey": false,
1130
+ "notNull": true,
1131
+ "default": "now()"
1132
+ },
1133
+ "updated_at": {
1134
+ "name": "updated_at",
1135
+ "type": "timestamp with time zone",
1136
+ "primaryKey": false,
1137
+ "notNull": true,
1138
+ "default": "now()"
1139
+ }
1140
+ },
1141
+ "indexes": {},
1142
+ "foreignKeys": {},
1143
+ "compositePrimaryKeys": {},
1144
+ "uniqueConstraints": {
1145
+ "repos_path_unique": {
1146
+ "name": "repos_path_unique",
1147
+ "nullsNotDistinct": false,
1148
+ "columns": [
1149
+ "path"
1150
+ ]
1151
+ }
1152
+ },
1153
+ "policies": {},
1154
+ "checkConstraints": {},
1155
+ "isRLSEnabled": false
1156
+ },
1157
+ "public.rules": {
1158
+ "name": "rules",
1159
+ "schema": "",
1160
+ "columns": {
1161
+ "key": {
1162
+ "name": "key",
1163
+ "type": "text",
1164
+ "primaryKey": true,
1165
+ "notNull": true
1166
+ },
1167
+ "category": {
1168
+ "name": "category",
1169
+ "type": "text",
1170
+ "primaryKey": false,
1171
+ "notNull": true
1172
+ },
1173
+ "name": {
1174
+ "name": "name",
1175
+ "type": "text",
1176
+ "primaryKey": false,
1177
+ "notNull": true
1178
+ },
1179
+ "description": {
1180
+ "name": "description",
1181
+ "type": "text",
1182
+ "primaryKey": false,
1183
+ "notNull": true
1184
+ },
1185
+ "prompt": {
1186
+ "name": "prompt",
1187
+ "type": "text",
1188
+ "primaryKey": false,
1189
+ "notNull": false
1190
+ },
1191
+ "enabled": {
1192
+ "name": "enabled",
1193
+ "type": "boolean",
1194
+ "primaryKey": false,
1195
+ "notNull": true,
1196
+ "default": true
1197
+ },
1198
+ "severity": {
1199
+ "name": "severity",
1200
+ "type": "text",
1201
+ "primaryKey": false,
1202
+ "notNull": true
1203
+ },
1204
+ "type": {
1205
+ "name": "type",
1206
+ "type": "text",
1207
+ "primaryKey": false,
1208
+ "notNull": true
1209
+ },
1210
+ "created_at": {
1211
+ "name": "created_at",
1212
+ "type": "timestamp with time zone",
1213
+ "primaryKey": false,
1214
+ "notNull": true,
1215
+ "default": "now()"
1216
+ },
1217
+ "updated_at": {
1218
+ "name": "updated_at",
1219
+ "type": "timestamp with time zone",
1220
+ "primaryKey": false,
1221
+ "notNull": true,
1222
+ "default": "now()"
1223
+ }
1224
+ },
1225
+ "indexes": {},
1226
+ "foreignKeys": {},
1227
+ "compositePrimaryKeys": {},
1228
+ "uniqueConstraints": {},
1229
+ "policies": {},
1230
+ "checkConstraints": {},
1231
+ "isRLSEnabled": false
1232
+ },
1233
+ "public.service_dependencies": {
1234
+ "name": "service_dependencies",
1235
+ "schema": "",
1236
+ "columns": {
1237
+ "id": {
1238
+ "name": "id",
1239
+ "type": "uuid",
1240
+ "primaryKey": true,
1241
+ "notNull": true,
1242
+ "default": "gen_random_uuid()"
1243
+ },
1244
+ "analysis_id": {
1245
+ "name": "analysis_id",
1246
+ "type": "uuid",
1247
+ "primaryKey": false,
1248
+ "notNull": true
1249
+ },
1250
+ "source_service_id": {
1251
+ "name": "source_service_id",
1252
+ "type": "uuid",
1253
+ "primaryKey": false,
1254
+ "notNull": true
1255
+ },
1256
+ "target_service_id": {
1257
+ "name": "target_service_id",
1258
+ "type": "uuid",
1259
+ "primaryKey": false,
1260
+ "notNull": true
1261
+ },
1262
+ "dependency_count": {
1263
+ "name": "dependency_count",
1264
+ "type": "integer",
1265
+ "primaryKey": false,
1266
+ "notNull": false
1267
+ },
1268
+ "dependency_type": {
1269
+ "name": "dependency_type",
1270
+ "type": "text",
1271
+ "primaryKey": false,
1272
+ "notNull": false
1273
+ }
1274
+ },
1275
+ "indexes": {},
1276
+ "foreignKeys": {
1277
+ "service_dependencies_analysis_id_analyses_id_fk": {
1278
+ "name": "service_dependencies_analysis_id_analyses_id_fk",
1279
+ "tableFrom": "service_dependencies",
1280
+ "tableTo": "analyses",
1281
+ "columnsFrom": [
1282
+ "analysis_id"
1283
+ ],
1284
+ "columnsTo": [
1285
+ "id"
1286
+ ],
1287
+ "onDelete": "cascade",
1288
+ "onUpdate": "no action"
1289
+ },
1290
+ "service_dependencies_source_service_id_services_id_fk": {
1291
+ "name": "service_dependencies_source_service_id_services_id_fk",
1292
+ "tableFrom": "service_dependencies",
1293
+ "tableTo": "services",
1294
+ "columnsFrom": [
1295
+ "source_service_id"
1296
+ ],
1297
+ "columnsTo": [
1298
+ "id"
1299
+ ],
1300
+ "onDelete": "cascade",
1301
+ "onUpdate": "no action"
1302
+ },
1303
+ "service_dependencies_target_service_id_services_id_fk": {
1304
+ "name": "service_dependencies_target_service_id_services_id_fk",
1305
+ "tableFrom": "service_dependencies",
1306
+ "tableTo": "services",
1307
+ "columnsFrom": [
1308
+ "target_service_id"
1309
+ ],
1310
+ "columnsTo": [
1311
+ "id"
1312
+ ],
1313
+ "onDelete": "cascade",
1314
+ "onUpdate": "no action"
1315
+ }
1316
+ },
1317
+ "compositePrimaryKeys": {},
1318
+ "uniqueConstraints": {},
1319
+ "policies": {},
1320
+ "checkConstraints": {},
1321
+ "isRLSEnabled": false
1322
+ },
1323
+ "public.services": {
1324
+ "name": "services",
1325
+ "schema": "",
1326
+ "columns": {
1327
+ "id": {
1328
+ "name": "id",
1329
+ "type": "uuid",
1330
+ "primaryKey": true,
1331
+ "notNull": true,
1332
+ "default": "gen_random_uuid()"
1333
+ },
1334
+ "analysis_id": {
1335
+ "name": "analysis_id",
1336
+ "type": "uuid",
1337
+ "primaryKey": false,
1338
+ "notNull": true
1339
+ },
1340
+ "name": {
1341
+ "name": "name",
1342
+ "type": "text",
1343
+ "primaryKey": false,
1344
+ "notNull": true
1345
+ },
1346
+ "root_path": {
1347
+ "name": "root_path",
1348
+ "type": "text",
1349
+ "primaryKey": false,
1350
+ "notNull": true
1351
+ },
1352
+ "type": {
1353
+ "name": "type",
1354
+ "type": "text",
1355
+ "primaryKey": false,
1356
+ "notNull": true
1357
+ },
1358
+ "framework": {
1359
+ "name": "framework",
1360
+ "type": "text",
1361
+ "primaryKey": false,
1362
+ "notNull": false
1363
+ },
1364
+ "file_count": {
1365
+ "name": "file_count",
1366
+ "type": "integer",
1367
+ "primaryKey": false,
1368
+ "notNull": false
1369
+ },
1370
+ "description": {
1371
+ "name": "description",
1372
+ "type": "text",
1373
+ "primaryKey": false,
1374
+ "notNull": false
1375
+ },
1376
+ "layer_summary": {
1377
+ "name": "layer_summary",
1378
+ "type": "jsonb",
1379
+ "primaryKey": false,
1380
+ "notNull": false
1381
+ },
1382
+ "created_at": {
1383
+ "name": "created_at",
1384
+ "type": "timestamp with time zone",
1385
+ "primaryKey": false,
1386
+ "notNull": true,
1387
+ "default": "now()"
1388
+ }
1389
+ },
1390
+ "indexes": {},
1391
+ "foreignKeys": {
1392
+ "services_analysis_id_analyses_id_fk": {
1393
+ "name": "services_analysis_id_analyses_id_fk",
1394
+ "tableFrom": "services",
1395
+ "tableTo": "analyses",
1396
+ "columnsFrom": [
1397
+ "analysis_id"
1398
+ ],
1399
+ "columnsTo": [
1400
+ "id"
1401
+ ],
1402
+ "onDelete": "cascade",
1403
+ "onUpdate": "no action"
1404
+ }
1405
+ },
1406
+ "compositePrimaryKeys": {},
1407
+ "uniqueConstraints": {},
1408
+ "policies": {},
1409
+ "checkConstraints": {},
1410
+ "isRLSEnabled": false
1411
+ },
1412
+ "public.violations": {
1413
+ "name": "violations",
1414
+ "schema": "",
1415
+ "columns": {
1416
+ "id": {
1417
+ "name": "id",
1418
+ "type": "uuid",
1419
+ "primaryKey": true,
1420
+ "notNull": true,
1421
+ "default": "gen_random_uuid()"
1422
+ },
1423
+ "repo_id": {
1424
+ "name": "repo_id",
1425
+ "type": "uuid",
1426
+ "primaryKey": false,
1427
+ "notNull": true
1428
+ },
1429
+ "analysis_id": {
1430
+ "name": "analysis_id",
1431
+ "type": "uuid",
1432
+ "primaryKey": false,
1433
+ "notNull": true
1434
+ },
1435
+ "type": {
1436
+ "name": "type",
1437
+ "type": "text",
1438
+ "primaryKey": false,
1439
+ "notNull": true
1440
+ },
1441
+ "title": {
1442
+ "name": "title",
1443
+ "type": "text",
1444
+ "primaryKey": false,
1445
+ "notNull": true
1446
+ },
1447
+ "content": {
1448
+ "name": "content",
1449
+ "type": "text",
1450
+ "primaryKey": false,
1451
+ "notNull": true
1452
+ },
1453
+ "severity": {
1454
+ "name": "severity",
1455
+ "type": "text",
1456
+ "primaryKey": false,
1457
+ "notNull": true
1458
+ },
1459
+ "target_service_id": {
1460
+ "name": "target_service_id",
1461
+ "type": "uuid",
1462
+ "primaryKey": false,
1463
+ "notNull": false
1464
+ },
1465
+ "target_database_id": {
1466
+ "name": "target_database_id",
1467
+ "type": "uuid",
1468
+ "primaryKey": false,
1469
+ "notNull": false
1470
+ },
1471
+ "target_module_id": {
1472
+ "name": "target_module_id",
1473
+ "type": "uuid",
1474
+ "primaryKey": false,
1475
+ "notNull": false
1476
+ },
1477
+ "target_method_id": {
1478
+ "name": "target_method_id",
1479
+ "type": "uuid",
1480
+ "primaryKey": false,
1481
+ "notNull": false
1482
+ },
1483
+ "target_table": {
1484
+ "name": "target_table",
1485
+ "type": "text",
1486
+ "primaryKey": false,
1487
+ "notNull": false
1488
+ },
1489
+ "fix_prompt": {
1490
+ "name": "fix_prompt",
1491
+ "type": "text",
1492
+ "primaryKey": false,
1493
+ "notNull": false
1494
+ },
1495
+ "created_at": {
1496
+ "name": "created_at",
1497
+ "type": "timestamp with time zone",
1498
+ "primaryKey": false,
1499
+ "notNull": true,
1500
+ "default": "now()"
1501
+ }
1502
+ },
1503
+ "indexes": {},
1504
+ "foreignKeys": {
1505
+ "violations_repo_id_repos_id_fk": {
1506
+ "name": "violations_repo_id_repos_id_fk",
1507
+ "tableFrom": "violations",
1508
+ "tableTo": "repos",
1509
+ "columnsFrom": [
1510
+ "repo_id"
1511
+ ],
1512
+ "columnsTo": [
1513
+ "id"
1514
+ ],
1515
+ "onDelete": "cascade",
1516
+ "onUpdate": "no action"
1517
+ },
1518
+ "violations_analysis_id_analyses_id_fk": {
1519
+ "name": "violations_analysis_id_analyses_id_fk",
1520
+ "tableFrom": "violations",
1521
+ "tableTo": "analyses",
1522
+ "columnsFrom": [
1523
+ "analysis_id"
1524
+ ],
1525
+ "columnsTo": [
1526
+ "id"
1527
+ ],
1528
+ "onDelete": "cascade",
1529
+ "onUpdate": "no action"
1530
+ },
1531
+ "violations_target_service_id_services_id_fk": {
1532
+ "name": "violations_target_service_id_services_id_fk",
1533
+ "tableFrom": "violations",
1534
+ "tableTo": "services",
1535
+ "columnsFrom": [
1536
+ "target_service_id"
1537
+ ],
1538
+ "columnsTo": [
1539
+ "id"
1540
+ ],
1541
+ "onDelete": "set null",
1542
+ "onUpdate": "no action"
1543
+ },
1544
+ "violations_target_database_id_databases_id_fk": {
1545
+ "name": "violations_target_database_id_databases_id_fk",
1546
+ "tableFrom": "violations",
1547
+ "tableTo": "databases",
1548
+ "columnsFrom": [
1549
+ "target_database_id"
1550
+ ],
1551
+ "columnsTo": [
1552
+ "id"
1553
+ ],
1554
+ "onDelete": "set null",
1555
+ "onUpdate": "no action"
1556
+ },
1557
+ "violations_target_module_id_modules_id_fk": {
1558
+ "name": "violations_target_module_id_modules_id_fk",
1559
+ "tableFrom": "violations",
1560
+ "tableTo": "modules",
1561
+ "columnsFrom": [
1562
+ "target_module_id"
1563
+ ],
1564
+ "columnsTo": [
1565
+ "id"
1566
+ ],
1567
+ "onDelete": "set null",
1568
+ "onUpdate": "no action"
1569
+ },
1570
+ "violations_target_method_id_methods_id_fk": {
1571
+ "name": "violations_target_method_id_methods_id_fk",
1572
+ "tableFrom": "violations",
1573
+ "tableTo": "methods",
1574
+ "columnsFrom": [
1575
+ "target_method_id"
1576
+ ],
1577
+ "columnsTo": [
1578
+ "id"
1579
+ ],
1580
+ "onDelete": "set null",
1581
+ "onUpdate": "no action"
1582
+ }
1583
+ },
1584
+ "compositePrimaryKeys": {},
1585
+ "uniqueConstraints": {},
1586
+ "policies": {},
1587
+ "checkConstraints": {},
1588
+ "isRLSEnabled": false
1589
+ }
1590
+ },
1591
+ "enums": {},
1592
+ "schemas": {},
1593
+ "sequences": {},
1594
+ "roles": {},
1595
+ "policies": {},
1596
+ "views": {},
1597
+ "_meta": {
1598
+ "columns": {},
1599
+ "schemas": {},
1600
+ "tables": {}
1601
+ }
1602
+ }