truecourse 0.1.11 → 0.1.13

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.
@@ -0,0 +1,2062 @@
1
+ {
2
+ "id": "24fc57c4-443f-489a-bb25-0e378c30b4a2",
3
+ "prevId": "d088d680-bc31-4d7f-b124-d39188faf3d2",
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.analysis_usage": {
79
+ "name": "analysis_usage",
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
+ "analysis_id": {
90
+ "name": "analysis_id",
91
+ "type": "uuid",
92
+ "primaryKey": false,
93
+ "notNull": true
94
+ },
95
+ "provider": {
96
+ "name": "provider",
97
+ "type": "text",
98
+ "primaryKey": false,
99
+ "notNull": true
100
+ },
101
+ "call_type": {
102
+ "name": "call_type",
103
+ "type": "text",
104
+ "primaryKey": false,
105
+ "notNull": true
106
+ },
107
+ "input_tokens": {
108
+ "name": "input_tokens",
109
+ "type": "integer",
110
+ "primaryKey": false,
111
+ "notNull": true,
112
+ "default": 0
113
+ },
114
+ "output_tokens": {
115
+ "name": "output_tokens",
116
+ "type": "integer",
117
+ "primaryKey": false,
118
+ "notNull": true,
119
+ "default": 0
120
+ },
121
+ "cache_read_tokens": {
122
+ "name": "cache_read_tokens",
123
+ "type": "integer",
124
+ "primaryKey": false,
125
+ "notNull": true,
126
+ "default": 0
127
+ },
128
+ "cache_write_tokens": {
129
+ "name": "cache_write_tokens",
130
+ "type": "integer",
131
+ "primaryKey": false,
132
+ "notNull": true,
133
+ "default": 0
134
+ },
135
+ "total_tokens": {
136
+ "name": "total_tokens",
137
+ "type": "integer",
138
+ "primaryKey": false,
139
+ "notNull": true,
140
+ "default": 0
141
+ },
142
+ "cost_usd": {
143
+ "name": "cost_usd",
144
+ "type": "text",
145
+ "primaryKey": false,
146
+ "notNull": false
147
+ },
148
+ "duration_ms": {
149
+ "name": "duration_ms",
150
+ "type": "integer",
151
+ "primaryKey": false,
152
+ "notNull": true,
153
+ "default": 0
154
+ },
155
+ "created_at": {
156
+ "name": "created_at",
157
+ "type": "timestamp with time zone",
158
+ "primaryKey": false,
159
+ "notNull": true,
160
+ "default": "now()"
161
+ }
162
+ },
163
+ "indexes": {},
164
+ "foreignKeys": {
165
+ "analysis_usage_analysis_id_analyses_id_fk": {
166
+ "name": "analysis_usage_analysis_id_analyses_id_fk",
167
+ "tableFrom": "analysis_usage",
168
+ "tableTo": "analyses",
169
+ "columnsFrom": [
170
+ "analysis_id"
171
+ ],
172
+ "columnsTo": [
173
+ "id"
174
+ ],
175
+ "onDelete": "cascade",
176
+ "onUpdate": "no action"
177
+ }
178
+ },
179
+ "compositePrimaryKeys": {},
180
+ "uniqueConstraints": {},
181
+ "policies": {},
182
+ "checkConstraints": {},
183
+ "isRLSEnabled": false
184
+ },
185
+ "public.code_violations": {
186
+ "name": "code_violations",
187
+ "schema": "",
188
+ "columns": {
189
+ "id": {
190
+ "name": "id",
191
+ "type": "uuid",
192
+ "primaryKey": true,
193
+ "notNull": true,
194
+ "default": "gen_random_uuid()"
195
+ },
196
+ "analysis_id": {
197
+ "name": "analysis_id",
198
+ "type": "uuid",
199
+ "primaryKey": false,
200
+ "notNull": true
201
+ },
202
+ "file_path": {
203
+ "name": "file_path",
204
+ "type": "text",
205
+ "primaryKey": false,
206
+ "notNull": true
207
+ },
208
+ "line_start": {
209
+ "name": "line_start",
210
+ "type": "integer",
211
+ "primaryKey": false,
212
+ "notNull": true
213
+ },
214
+ "line_end": {
215
+ "name": "line_end",
216
+ "type": "integer",
217
+ "primaryKey": false,
218
+ "notNull": true
219
+ },
220
+ "column_start": {
221
+ "name": "column_start",
222
+ "type": "integer",
223
+ "primaryKey": false,
224
+ "notNull": true
225
+ },
226
+ "column_end": {
227
+ "name": "column_end",
228
+ "type": "integer",
229
+ "primaryKey": false,
230
+ "notNull": true
231
+ },
232
+ "rule_key": {
233
+ "name": "rule_key",
234
+ "type": "text",
235
+ "primaryKey": false,
236
+ "notNull": true
237
+ },
238
+ "severity": {
239
+ "name": "severity",
240
+ "type": "text",
241
+ "primaryKey": false,
242
+ "notNull": true
243
+ },
244
+ "status": {
245
+ "name": "status",
246
+ "type": "text",
247
+ "primaryKey": false,
248
+ "notNull": true,
249
+ "default": "'new'"
250
+ },
251
+ "title": {
252
+ "name": "title",
253
+ "type": "text",
254
+ "primaryKey": false,
255
+ "notNull": true
256
+ },
257
+ "content": {
258
+ "name": "content",
259
+ "type": "text",
260
+ "primaryKey": false,
261
+ "notNull": true
262
+ },
263
+ "snippet": {
264
+ "name": "snippet",
265
+ "type": "text",
266
+ "primaryKey": false,
267
+ "notNull": true
268
+ },
269
+ "fix_prompt": {
270
+ "name": "fix_prompt",
271
+ "type": "text",
272
+ "primaryKey": false,
273
+ "notNull": false
274
+ },
275
+ "first_seen_analysis_id": {
276
+ "name": "first_seen_analysis_id",
277
+ "type": "uuid",
278
+ "primaryKey": false,
279
+ "notNull": false
280
+ },
281
+ "first_seen_at": {
282
+ "name": "first_seen_at",
283
+ "type": "timestamp with time zone",
284
+ "primaryKey": false,
285
+ "notNull": false
286
+ },
287
+ "previous_code_violation_id": {
288
+ "name": "previous_code_violation_id",
289
+ "type": "uuid",
290
+ "primaryKey": false,
291
+ "notNull": false
292
+ },
293
+ "resolved_at": {
294
+ "name": "resolved_at",
295
+ "type": "timestamp with time zone",
296
+ "primaryKey": false,
297
+ "notNull": false
298
+ },
299
+ "created_at": {
300
+ "name": "created_at",
301
+ "type": "timestamp with time zone",
302
+ "primaryKey": false,
303
+ "notNull": true,
304
+ "default": "now()"
305
+ }
306
+ },
307
+ "indexes": {},
308
+ "foreignKeys": {
309
+ "code_violations_analysis_id_analyses_id_fk": {
310
+ "name": "code_violations_analysis_id_analyses_id_fk",
311
+ "tableFrom": "code_violations",
312
+ "tableTo": "analyses",
313
+ "columnsFrom": [
314
+ "analysis_id"
315
+ ],
316
+ "columnsTo": [
317
+ "id"
318
+ ],
319
+ "onDelete": "cascade",
320
+ "onUpdate": "no action"
321
+ },
322
+ "code_violations_first_seen_analysis_id_analyses_id_fk": {
323
+ "name": "code_violations_first_seen_analysis_id_analyses_id_fk",
324
+ "tableFrom": "code_violations",
325
+ "tableTo": "analyses",
326
+ "columnsFrom": [
327
+ "first_seen_analysis_id"
328
+ ],
329
+ "columnsTo": [
330
+ "id"
331
+ ],
332
+ "onDelete": "set null",
333
+ "onUpdate": "no action"
334
+ }
335
+ },
336
+ "compositePrimaryKeys": {},
337
+ "uniqueConstraints": {},
338
+ "policies": {},
339
+ "checkConstraints": {},
340
+ "isRLSEnabled": false
341
+ },
342
+ "public.conversations": {
343
+ "name": "conversations",
344
+ "schema": "",
345
+ "columns": {
346
+ "id": {
347
+ "name": "id",
348
+ "type": "uuid",
349
+ "primaryKey": true,
350
+ "notNull": true,
351
+ "default": "gen_random_uuid()"
352
+ },
353
+ "repo_id": {
354
+ "name": "repo_id",
355
+ "type": "uuid",
356
+ "primaryKey": false,
357
+ "notNull": true
358
+ },
359
+ "branch": {
360
+ "name": "branch",
361
+ "type": "text",
362
+ "primaryKey": false,
363
+ "notNull": false
364
+ },
365
+ "created_at": {
366
+ "name": "created_at",
367
+ "type": "timestamp with time zone",
368
+ "primaryKey": false,
369
+ "notNull": true,
370
+ "default": "now()"
371
+ },
372
+ "updated_at": {
373
+ "name": "updated_at",
374
+ "type": "timestamp with time zone",
375
+ "primaryKey": false,
376
+ "notNull": true,
377
+ "default": "now()"
378
+ }
379
+ },
380
+ "indexes": {},
381
+ "foreignKeys": {
382
+ "conversations_repo_id_repos_id_fk": {
383
+ "name": "conversations_repo_id_repos_id_fk",
384
+ "tableFrom": "conversations",
385
+ "tableTo": "repos",
386
+ "columnsFrom": [
387
+ "repo_id"
388
+ ],
389
+ "columnsTo": [
390
+ "id"
391
+ ],
392
+ "onDelete": "cascade",
393
+ "onUpdate": "no action"
394
+ }
395
+ },
396
+ "compositePrimaryKeys": {},
397
+ "uniqueConstraints": {},
398
+ "policies": {},
399
+ "checkConstraints": {},
400
+ "isRLSEnabled": false
401
+ },
402
+ "public.database_connections": {
403
+ "name": "database_connections",
404
+ "schema": "",
405
+ "columns": {
406
+ "id": {
407
+ "name": "id",
408
+ "type": "uuid",
409
+ "primaryKey": true,
410
+ "notNull": true,
411
+ "default": "gen_random_uuid()"
412
+ },
413
+ "analysis_id": {
414
+ "name": "analysis_id",
415
+ "type": "uuid",
416
+ "primaryKey": false,
417
+ "notNull": true
418
+ },
419
+ "service_id": {
420
+ "name": "service_id",
421
+ "type": "uuid",
422
+ "primaryKey": false,
423
+ "notNull": true
424
+ },
425
+ "database_id": {
426
+ "name": "database_id",
427
+ "type": "uuid",
428
+ "primaryKey": false,
429
+ "notNull": true
430
+ },
431
+ "driver": {
432
+ "name": "driver",
433
+ "type": "text",
434
+ "primaryKey": false,
435
+ "notNull": true
436
+ }
437
+ },
438
+ "indexes": {},
439
+ "foreignKeys": {
440
+ "database_connections_analysis_id_analyses_id_fk": {
441
+ "name": "database_connections_analysis_id_analyses_id_fk",
442
+ "tableFrom": "database_connections",
443
+ "tableTo": "analyses",
444
+ "columnsFrom": [
445
+ "analysis_id"
446
+ ],
447
+ "columnsTo": [
448
+ "id"
449
+ ],
450
+ "onDelete": "cascade",
451
+ "onUpdate": "no action"
452
+ },
453
+ "database_connections_service_id_services_id_fk": {
454
+ "name": "database_connections_service_id_services_id_fk",
455
+ "tableFrom": "database_connections",
456
+ "tableTo": "services",
457
+ "columnsFrom": [
458
+ "service_id"
459
+ ],
460
+ "columnsTo": [
461
+ "id"
462
+ ],
463
+ "onDelete": "cascade",
464
+ "onUpdate": "no action"
465
+ },
466
+ "database_connections_database_id_databases_id_fk": {
467
+ "name": "database_connections_database_id_databases_id_fk",
468
+ "tableFrom": "database_connections",
469
+ "tableTo": "databases",
470
+ "columnsFrom": [
471
+ "database_id"
472
+ ],
473
+ "columnsTo": [
474
+ "id"
475
+ ],
476
+ "onDelete": "cascade",
477
+ "onUpdate": "no action"
478
+ }
479
+ },
480
+ "compositePrimaryKeys": {},
481
+ "uniqueConstraints": {},
482
+ "policies": {},
483
+ "checkConstraints": {},
484
+ "isRLSEnabled": false
485
+ },
486
+ "public.databases": {
487
+ "name": "databases",
488
+ "schema": "",
489
+ "columns": {
490
+ "id": {
491
+ "name": "id",
492
+ "type": "uuid",
493
+ "primaryKey": true,
494
+ "notNull": true,
495
+ "default": "gen_random_uuid()"
496
+ },
497
+ "analysis_id": {
498
+ "name": "analysis_id",
499
+ "type": "uuid",
500
+ "primaryKey": false,
501
+ "notNull": true
502
+ },
503
+ "name": {
504
+ "name": "name",
505
+ "type": "text",
506
+ "primaryKey": false,
507
+ "notNull": true
508
+ },
509
+ "type": {
510
+ "name": "type",
511
+ "type": "text",
512
+ "primaryKey": false,
513
+ "notNull": true
514
+ },
515
+ "driver": {
516
+ "name": "driver",
517
+ "type": "text",
518
+ "primaryKey": false,
519
+ "notNull": true
520
+ },
521
+ "connection_config": {
522
+ "name": "connection_config",
523
+ "type": "jsonb",
524
+ "primaryKey": false,
525
+ "notNull": false
526
+ },
527
+ "tables": {
528
+ "name": "tables",
529
+ "type": "jsonb",
530
+ "primaryKey": false,
531
+ "notNull": false
532
+ },
533
+ "db_relations": {
534
+ "name": "db_relations",
535
+ "type": "jsonb",
536
+ "primaryKey": false,
537
+ "notNull": false
538
+ },
539
+ "connected_services": {
540
+ "name": "connected_services",
541
+ "type": "jsonb",
542
+ "primaryKey": false,
543
+ "notNull": false
544
+ },
545
+ "created_at": {
546
+ "name": "created_at",
547
+ "type": "timestamp with time zone",
548
+ "primaryKey": false,
549
+ "notNull": true,
550
+ "default": "now()"
551
+ }
552
+ },
553
+ "indexes": {},
554
+ "foreignKeys": {
555
+ "databases_analysis_id_analyses_id_fk": {
556
+ "name": "databases_analysis_id_analyses_id_fk",
557
+ "tableFrom": "databases",
558
+ "tableTo": "analyses",
559
+ "columnsFrom": [
560
+ "analysis_id"
561
+ ],
562
+ "columnsTo": [
563
+ "id"
564
+ ],
565
+ "onDelete": "cascade",
566
+ "onUpdate": "no action"
567
+ }
568
+ },
569
+ "compositePrimaryKeys": {},
570
+ "uniqueConstraints": {},
571
+ "policies": {},
572
+ "checkConstraints": {},
573
+ "isRLSEnabled": false
574
+ },
575
+ "public.deterministic_violations": {
576
+ "name": "deterministic_violations",
577
+ "schema": "",
578
+ "columns": {
579
+ "id": {
580
+ "name": "id",
581
+ "type": "uuid",
582
+ "primaryKey": true,
583
+ "notNull": true,
584
+ "default": "gen_random_uuid()"
585
+ },
586
+ "analysis_id": {
587
+ "name": "analysis_id",
588
+ "type": "uuid",
589
+ "primaryKey": false,
590
+ "notNull": true
591
+ },
592
+ "rule_key": {
593
+ "name": "rule_key",
594
+ "type": "text",
595
+ "primaryKey": false,
596
+ "notNull": true
597
+ },
598
+ "category": {
599
+ "name": "category",
600
+ "type": "text",
601
+ "primaryKey": false,
602
+ "notNull": true
603
+ },
604
+ "title": {
605
+ "name": "title",
606
+ "type": "text",
607
+ "primaryKey": false,
608
+ "notNull": true
609
+ },
610
+ "description": {
611
+ "name": "description",
612
+ "type": "text",
613
+ "primaryKey": false,
614
+ "notNull": true
615
+ },
616
+ "severity": {
617
+ "name": "severity",
618
+ "type": "text",
619
+ "primaryKey": false,
620
+ "notNull": true
621
+ },
622
+ "service_name": {
623
+ "name": "service_name",
624
+ "type": "text",
625
+ "primaryKey": false,
626
+ "notNull": true
627
+ },
628
+ "module_name": {
629
+ "name": "module_name",
630
+ "type": "text",
631
+ "primaryKey": false,
632
+ "notNull": false
633
+ },
634
+ "method_name": {
635
+ "name": "method_name",
636
+ "type": "text",
637
+ "primaryKey": false,
638
+ "notNull": false
639
+ },
640
+ "file_path": {
641
+ "name": "file_path",
642
+ "type": "text",
643
+ "primaryKey": false,
644
+ "notNull": false
645
+ },
646
+ "related_module_name": {
647
+ "name": "related_module_name",
648
+ "type": "text",
649
+ "primaryKey": false,
650
+ "notNull": false
651
+ },
652
+ "related_service_name": {
653
+ "name": "related_service_name",
654
+ "type": "text",
655
+ "primaryKey": false,
656
+ "notNull": false
657
+ },
658
+ "is_dependency_violation": {
659
+ "name": "is_dependency_violation",
660
+ "type": "boolean",
661
+ "primaryKey": false,
662
+ "notNull": true,
663
+ "default": false
664
+ },
665
+ "created_at": {
666
+ "name": "created_at",
667
+ "type": "timestamp with time zone",
668
+ "primaryKey": false,
669
+ "notNull": true,
670
+ "default": "now()"
671
+ }
672
+ },
673
+ "indexes": {},
674
+ "foreignKeys": {
675
+ "deterministic_violations_analysis_id_analyses_id_fk": {
676
+ "name": "deterministic_violations_analysis_id_analyses_id_fk",
677
+ "tableFrom": "deterministic_violations",
678
+ "tableTo": "analyses",
679
+ "columnsFrom": [
680
+ "analysis_id"
681
+ ],
682
+ "columnsTo": [
683
+ "id"
684
+ ],
685
+ "onDelete": "cascade",
686
+ "onUpdate": "no action"
687
+ }
688
+ },
689
+ "compositePrimaryKeys": {},
690
+ "uniqueConstraints": {},
691
+ "policies": {},
692
+ "checkConstraints": {},
693
+ "isRLSEnabled": false
694
+ },
695
+ "public.flow_steps": {
696
+ "name": "flow_steps",
697
+ "schema": "",
698
+ "columns": {
699
+ "id": {
700
+ "name": "id",
701
+ "type": "uuid",
702
+ "primaryKey": true,
703
+ "notNull": true,
704
+ "default": "gen_random_uuid()"
705
+ },
706
+ "flow_id": {
707
+ "name": "flow_id",
708
+ "type": "uuid",
709
+ "primaryKey": false,
710
+ "notNull": true
711
+ },
712
+ "step_order": {
713
+ "name": "step_order",
714
+ "type": "integer",
715
+ "primaryKey": false,
716
+ "notNull": true
717
+ },
718
+ "source_service": {
719
+ "name": "source_service",
720
+ "type": "text",
721
+ "primaryKey": false,
722
+ "notNull": true
723
+ },
724
+ "source_module": {
725
+ "name": "source_module",
726
+ "type": "text",
727
+ "primaryKey": false,
728
+ "notNull": true
729
+ },
730
+ "source_method": {
731
+ "name": "source_method",
732
+ "type": "text",
733
+ "primaryKey": false,
734
+ "notNull": true
735
+ },
736
+ "target_service": {
737
+ "name": "target_service",
738
+ "type": "text",
739
+ "primaryKey": false,
740
+ "notNull": true
741
+ },
742
+ "target_module": {
743
+ "name": "target_module",
744
+ "type": "text",
745
+ "primaryKey": false,
746
+ "notNull": true
747
+ },
748
+ "target_method": {
749
+ "name": "target_method",
750
+ "type": "text",
751
+ "primaryKey": false,
752
+ "notNull": true
753
+ },
754
+ "step_type": {
755
+ "name": "step_type",
756
+ "type": "text",
757
+ "primaryKey": false,
758
+ "notNull": true
759
+ },
760
+ "data_description": {
761
+ "name": "data_description",
762
+ "type": "text",
763
+ "primaryKey": false,
764
+ "notNull": false
765
+ },
766
+ "is_async": {
767
+ "name": "is_async",
768
+ "type": "boolean",
769
+ "primaryKey": false,
770
+ "notNull": true,
771
+ "default": false
772
+ },
773
+ "is_conditional": {
774
+ "name": "is_conditional",
775
+ "type": "boolean",
776
+ "primaryKey": false,
777
+ "notNull": true,
778
+ "default": false
779
+ }
780
+ },
781
+ "indexes": {},
782
+ "foreignKeys": {
783
+ "flow_steps_flow_id_flows_id_fk": {
784
+ "name": "flow_steps_flow_id_flows_id_fk",
785
+ "tableFrom": "flow_steps",
786
+ "tableTo": "flows",
787
+ "columnsFrom": [
788
+ "flow_id"
789
+ ],
790
+ "columnsTo": [
791
+ "id"
792
+ ],
793
+ "onDelete": "cascade",
794
+ "onUpdate": "no action"
795
+ }
796
+ },
797
+ "compositePrimaryKeys": {},
798
+ "uniqueConstraints": {},
799
+ "policies": {},
800
+ "checkConstraints": {},
801
+ "isRLSEnabled": false
802
+ },
803
+ "public.flows": {
804
+ "name": "flows",
805
+ "schema": "",
806
+ "columns": {
807
+ "id": {
808
+ "name": "id",
809
+ "type": "uuid",
810
+ "primaryKey": true,
811
+ "notNull": true,
812
+ "default": "gen_random_uuid()"
813
+ },
814
+ "analysis_id": {
815
+ "name": "analysis_id",
816
+ "type": "uuid",
817
+ "primaryKey": false,
818
+ "notNull": true
819
+ },
820
+ "name": {
821
+ "name": "name",
822
+ "type": "text",
823
+ "primaryKey": false,
824
+ "notNull": true
825
+ },
826
+ "description": {
827
+ "name": "description",
828
+ "type": "text",
829
+ "primaryKey": false,
830
+ "notNull": false
831
+ },
832
+ "entry_service": {
833
+ "name": "entry_service",
834
+ "type": "text",
835
+ "primaryKey": false,
836
+ "notNull": true
837
+ },
838
+ "entry_method": {
839
+ "name": "entry_method",
840
+ "type": "text",
841
+ "primaryKey": false,
842
+ "notNull": true
843
+ },
844
+ "category": {
845
+ "name": "category",
846
+ "type": "text",
847
+ "primaryKey": false,
848
+ "notNull": true
849
+ },
850
+ "trigger": {
851
+ "name": "trigger",
852
+ "type": "text",
853
+ "primaryKey": false,
854
+ "notNull": true
855
+ },
856
+ "step_count": {
857
+ "name": "step_count",
858
+ "type": "integer",
859
+ "primaryKey": false,
860
+ "notNull": true,
861
+ "default": 0
862
+ },
863
+ "created_at": {
864
+ "name": "created_at",
865
+ "type": "timestamp with time zone",
866
+ "primaryKey": false,
867
+ "notNull": true,
868
+ "default": "now()"
869
+ }
870
+ },
871
+ "indexes": {},
872
+ "foreignKeys": {
873
+ "flows_analysis_id_analyses_id_fk": {
874
+ "name": "flows_analysis_id_analyses_id_fk",
875
+ "tableFrom": "flows",
876
+ "tableTo": "analyses",
877
+ "columnsFrom": [
878
+ "analysis_id"
879
+ ],
880
+ "columnsTo": [
881
+ "id"
882
+ ],
883
+ "onDelete": "cascade",
884
+ "onUpdate": "no action"
885
+ }
886
+ },
887
+ "compositePrimaryKeys": {},
888
+ "uniqueConstraints": {},
889
+ "policies": {},
890
+ "checkConstraints": {},
891
+ "isRLSEnabled": false
892
+ },
893
+ "public.layers": {
894
+ "name": "layers",
895
+ "schema": "",
896
+ "columns": {
897
+ "id": {
898
+ "name": "id",
899
+ "type": "uuid",
900
+ "primaryKey": true,
901
+ "notNull": true,
902
+ "default": "gen_random_uuid()"
903
+ },
904
+ "analysis_id": {
905
+ "name": "analysis_id",
906
+ "type": "uuid",
907
+ "primaryKey": false,
908
+ "notNull": true
909
+ },
910
+ "service_id": {
911
+ "name": "service_id",
912
+ "type": "uuid",
913
+ "primaryKey": false,
914
+ "notNull": true
915
+ },
916
+ "service_name": {
917
+ "name": "service_name",
918
+ "type": "text",
919
+ "primaryKey": false,
920
+ "notNull": true
921
+ },
922
+ "layer": {
923
+ "name": "layer",
924
+ "type": "text",
925
+ "primaryKey": false,
926
+ "notNull": true
927
+ },
928
+ "file_count": {
929
+ "name": "file_count",
930
+ "type": "integer",
931
+ "primaryKey": false,
932
+ "notNull": true
933
+ },
934
+ "file_paths": {
935
+ "name": "file_paths",
936
+ "type": "jsonb",
937
+ "primaryKey": false,
938
+ "notNull": true
939
+ },
940
+ "confidence": {
941
+ "name": "confidence",
942
+ "type": "integer",
943
+ "primaryKey": false,
944
+ "notNull": true
945
+ },
946
+ "evidence": {
947
+ "name": "evidence",
948
+ "type": "jsonb",
949
+ "primaryKey": false,
950
+ "notNull": true
951
+ }
952
+ },
953
+ "indexes": {},
954
+ "foreignKeys": {
955
+ "layers_analysis_id_analyses_id_fk": {
956
+ "name": "layers_analysis_id_analyses_id_fk",
957
+ "tableFrom": "layers",
958
+ "tableTo": "analyses",
959
+ "columnsFrom": [
960
+ "analysis_id"
961
+ ],
962
+ "columnsTo": [
963
+ "id"
964
+ ],
965
+ "onDelete": "cascade",
966
+ "onUpdate": "no action"
967
+ },
968
+ "layers_service_id_services_id_fk": {
969
+ "name": "layers_service_id_services_id_fk",
970
+ "tableFrom": "layers",
971
+ "tableTo": "services",
972
+ "columnsFrom": [
973
+ "service_id"
974
+ ],
975
+ "columnsTo": [
976
+ "id"
977
+ ],
978
+ "onDelete": "cascade",
979
+ "onUpdate": "no action"
980
+ }
981
+ },
982
+ "compositePrimaryKeys": {},
983
+ "uniqueConstraints": {},
984
+ "policies": {},
985
+ "checkConstraints": {},
986
+ "isRLSEnabled": false
987
+ },
988
+ "public.messages": {
989
+ "name": "messages",
990
+ "schema": "",
991
+ "columns": {
992
+ "id": {
993
+ "name": "id",
994
+ "type": "uuid",
995
+ "primaryKey": true,
996
+ "notNull": true,
997
+ "default": "gen_random_uuid()"
998
+ },
999
+ "conversation_id": {
1000
+ "name": "conversation_id",
1001
+ "type": "uuid",
1002
+ "primaryKey": false,
1003
+ "notNull": true
1004
+ },
1005
+ "role": {
1006
+ "name": "role",
1007
+ "type": "text",
1008
+ "primaryKey": false,
1009
+ "notNull": true
1010
+ },
1011
+ "content": {
1012
+ "name": "content",
1013
+ "type": "text",
1014
+ "primaryKey": false,
1015
+ "notNull": true
1016
+ },
1017
+ "node_context": {
1018
+ "name": "node_context",
1019
+ "type": "jsonb",
1020
+ "primaryKey": false,
1021
+ "notNull": false
1022
+ },
1023
+ "created_at": {
1024
+ "name": "created_at",
1025
+ "type": "timestamp with time zone",
1026
+ "primaryKey": false,
1027
+ "notNull": true,
1028
+ "default": "now()"
1029
+ }
1030
+ },
1031
+ "indexes": {},
1032
+ "foreignKeys": {
1033
+ "messages_conversation_id_conversations_id_fk": {
1034
+ "name": "messages_conversation_id_conversations_id_fk",
1035
+ "tableFrom": "messages",
1036
+ "tableTo": "conversations",
1037
+ "columnsFrom": [
1038
+ "conversation_id"
1039
+ ],
1040
+ "columnsTo": [
1041
+ "id"
1042
+ ],
1043
+ "onDelete": "cascade",
1044
+ "onUpdate": "no action"
1045
+ }
1046
+ },
1047
+ "compositePrimaryKeys": {},
1048
+ "uniqueConstraints": {},
1049
+ "policies": {},
1050
+ "checkConstraints": {},
1051
+ "isRLSEnabled": false
1052
+ },
1053
+ "public.method_dependencies": {
1054
+ "name": "method_dependencies",
1055
+ "schema": "",
1056
+ "columns": {
1057
+ "id": {
1058
+ "name": "id",
1059
+ "type": "uuid",
1060
+ "primaryKey": true,
1061
+ "notNull": true,
1062
+ "default": "gen_random_uuid()"
1063
+ },
1064
+ "analysis_id": {
1065
+ "name": "analysis_id",
1066
+ "type": "uuid",
1067
+ "primaryKey": false,
1068
+ "notNull": true
1069
+ },
1070
+ "source_method_id": {
1071
+ "name": "source_method_id",
1072
+ "type": "uuid",
1073
+ "primaryKey": false,
1074
+ "notNull": true
1075
+ },
1076
+ "target_method_id": {
1077
+ "name": "target_method_id",
1078
+ "type": "uuid",
1079
+ "primaryKey": false,
1080
+ "notNull": true
1081
+ },
1082
+ "call_count": {
1083
+ "name": "call_count",
1084
+ "type": "integer",
1085
+ "primaryKey": false,
1086
+ "notNull": true,
1087
+ "default": 1
1088
+ }
1089
+ },
1090
+ "indexes": {},
1091
+ "foreignKeys": {
1092
+ "method_dependencies_analysis_id_analyses_id_fk": {
1093
+ "name": "method_dependencies_analysis_id_analyses_id_fk",
1094
+ "tableFrom": "method_dependencies",
1095
+ "tableTo": "analyses",
1096
+ "columnsFrom": [
1097
+ "analysis_id"
1098
+ ],
1099
+ "columnsTo": [
1100
+ "id"
1101
+ ],
1102
+ "onDelete": "cascade",
1103
+ "onUpdate": "no action"
1104
+ },
1105
+ "method_dependencies_source_method_id_methods_id_fk": {
1106
+ "name": "method_dependencies_source_method_id_methods_id_fk",
1107
+ "tableFrom": "method_dependencies",
1108
+ "tableTo": "methods",
1109
+ "columnsFrom": [
1110
+ "source_method_id"
1111
+ ],
1112
+ "columnsTo": [
1113
+ "id"
1114
+ ],
1115
+ "onDelete": "cascade",
1116
+ "onUpdate": "no action"
1117
+ },
1118
+ "method_dependencies_target_method_id_methods_id_fk": {
1119
+ "name": "method_dependencies_target_method_id_methods_id_fk",
1120
+ "tableFrom": "method_dependencies",
1121
+ "tableTo": "methods",
1122
+ "columnsFrom": [
1123
+ "target_method_id"
1124
+ ],
1125
+ "columnsTo": [
1126
+ "id"
1127
+ ],
1128
+ "onDelete": "cascade",
1129
+ "onUpdate": "no action"
1130
+ }
1131
+ },
1132
+ "compositePrimaryKeys": {},
1133
+ "uniqueConstraints": {},
1134
+ "policies": {},
1135
+ "checkConstraints": {},
1136
+ "isRLSEnabled": false
1137
+ },
1138
+ "public.methods": {
1139
+ "name": "methods",
1140
+ "schema": "",
1141
+ "columns": {
1142
+ "id": {
1143
+ "name": "id",
1144
+ "type": "uuid",
1145
+ "primaryKey": true,
1146
+ "notNull": true,
1147
+ "default": "gen_random_uuid()"
1148
+ },
1149
+ "analysis_id": {
1150
+ "name": "analysis_id",
1151
+ "type": "uuid",
1152
+ "primaryKey": false,
1153
+ "notNull": true
1154
+ },
1155
+ "module_id": {
1156
+ "name": "module_id",
1157
+ "type": "uuid",
1158
+ "primaryKey": false,
1159
+ "notNull": true
1160
+ },
1161
+ "name": {
1162
+ "name": "name",
1163
+ "type": "text",
1164
+ "primaryKey": false,
1165
+ "notNull": true
1166
+ },
1167
+ "signature": {
1168
+ "name": "signature",
1169
+ "type": "text",
1170
+ "primaryKey": false,
1171
+ "notNull": true
1172
+ },
1173
+ "param_count": {
1174
+ "name": "param_count",
1175
+ "type": "integer",
1176
+ "primaryKey": false,
1177
+ "notNull": true,
1178
+ "default": 0
1179
+ },
1180
+ "return_type": {
1181
+ "name": "return_type",
1182
+ "type": "text",
1183
+ "primaryKey": false,
1184
+ "notNull": false
1185
+ },
1186
+ "is_async": {
1187
+ "name": "is_async",
1188
+ "type": "boolean",
1189
+ "primaryKey": false,
1190
+ "notNull": true,
1191
+ "default": false
1192
+ },
1193
+ "is_exported": {
1194
+ "name": "is_exported",
1195
+ "type": "boolean",
1196
+ "primaryKey": false,
1197
+ "notNull": true,
1198
+ "default": false
1199
+ },
1200
+ "line_count": {
1201
+ "name": "line_count",
1202
+ "type": "integer",
1203
+ "primaryKey": false,
1204
+ "notNull": false
1205
+ },
1206
+ "statement_count": {
1207
+ "name": "statement_count",
1208
+ "type": "integer",
1209
+ "primaryKey": false,
1210
+ "notNull": false
1211
+ },
1212
+ "max_nesting_depth": {
1213
+ "name": "max_nesting_depth",
1214
+ "type": "integer",
1215
+ "primaryKey": false,
1216
+ "notNull": false
1217
+ }
1218
+ },
1219
+ "indexes": {},
1220
+ "foreignKeys": {
1221
+ "methods_analysis_id_analyses_id_fk": {
1222
+ "name": "methods_analysis_id_analyses_id_fk",
1223
+ "tableFrom": "methods",
1224
+ "tableTo": "analyses",
1225
+ "columnsFrom": [
1226
+ "analysis_id"
1227
+ ],
1228
+ "columnsTo": [
1229
+ "id"
1230
+ ],
1231
+ "onDelete": "cascade",
1232
+ "onUpdate": "no action"
1233
+ },
1234
+ "methods_module_id_modules_id_fk": {
1235
+ "name": "methods_module_id_modules_id_fk",
1236
+ "tableFrom": "methods",
1237
+ "tableTo": "modules",
1238
+ "columnsFrom": [
1239
+ "module_id"
1240
+ ],
1241
+ "columnsTo": [
1242
+ "id"
1243
+ ],
1244
+ "onDelete": "cascade",
1245
+ "onUpdate": "no action"
1246
+ }
1247
+ },
1248
+ "compositePrimaryKeys": {},
1249
+ "uniqueConstraints": {},
1250
+ "policies": {},
1251
+ "checkConstraints": {},
1252
+ "isRLSEnabled": false
1253
+ },
1254
+ "public.module_dependencies": {
1255
+ "name": "module_dependencies",
1256
+ "schema": "",
1257
+ "columns": {
1258
+ "id": {
1259
+ "name": "id",
1260
+ "type": "uuid",
1261
+ "primaryKey": true,
1262
+ "notNull": true,
1263
+ "default": "gen_random_uuid()"
1264
+ },
1265
+ "analysis_id": {
1266
+ "name": "analysis_id",
1267
+ "type": "uuid",
1268
+ "primaryKey": false,
1269
+ "notNull": true
1270
+ },
1271
+ "source_module_id": {
1272
+ "name": "source_module_id",
1273
+ "type": "uuid",
1274
+ "primaryKey": false,
1275
+ "notNull": true
1276
+ },
1277
+ "target_module_id": {
1278
+ "name": "target_module_id",
1279
+ "type": "uuid",
1280
+ "primaryKey": false,
1281
+ "notNull": true
1282
+ },
1283
+ "imported_names": {
1284
+ "name": "imported_names",
1285
+ "type": "jsonb",
1286
+ "primaryKey": false,
1287
+ "notNull": true
1288
+ },
1289
+ "dependency_count": {
1290
+ "name": "dependency_count",
1291
+ "type": "integer",
1292
+ "primaryKey": false,
1293
+ "notNull": true,
1294
+ "default": 1
1295
+ }
1296
+ },
1297
+ "indexes": {},
1298
+ "foreignKeys": {
1299
+ "module_dependencies_analysis_id_analyses_id_fk": {
1300
+ "name": "module_dependencies_analysis_id_analyses_id_fk",
1301
+ "tableFrom": "module_dependencies",
1302
+ "tableTo": "analyses",
1303
+ "columnsFrom": [
1304
+ "analysis_id"
1305
+ ],
1306
+ "columnsTo": [
1307
+ "id"
1308
+ ],
1309
+ "onDelete": "cascade",
1310
+ "onUpdate": "no action"
1311
+ },
1312
+ "module_dependencies_source_module_id_modules_id_fk": {
1313
+ "name": "module_dependencies_source_module_id_modules_id_fk",
1314
+ "tableFrom": "module_dependencies",
1315
+ "tableTo": "modules",
1316
+ "columnsFrom": [
1317
+ "source_module_id"
1318
+ ],
1319
+ "columnsTo": [
1320
+ "id"
1321
+ ],
1322
+ "onDelete": "cascade",
1323
+ "onUpdate": "no action"
1324
+ },
1325
+ "module_dependencies_target_module_id_modules_id_fk": {
1326
+ "name": "module_dependencies_target_module_id_modules_id_fk",
1327
+ "tableFrom": "module_dependencies",
1328
+ "tableTo": "modules",
1329
+ "columnsFrom": [
1330
+ "target_module_id"
1331
+ ],
1332
+ "columnsTo": [
1333
+ "id"
1334
+ ],
1335
+ "onDelete": "cascade",
1336
+ "onUpdate": "no action"
1337
+ }
1338
+ },
1339
+ "compositePrimaryKeys": {},
1340
+ "uniqueConstraints": {},
1341
+ "policies": {},
1342
+ "checkConstraints": {},
1343
+ "isRLSEnabled": false
1344
+ },
1345
+ "public.modules": {
1346
+ "name": "modules",
1347
+ "schema": "",
1348
+ "columns": {
1349
+ "id": {
1350
+ "name": "id",
1351
+ "type": "uuid",
1352
+ "primaryKey": true,
1353
+ "notNull": true,
1354
+ "default": "gen_random_uuid()"
1355
+ },
1356
+ "analysis_id": {
1357
+ "name": "analysis_id",
1358
+ "type": "uuid",
1359
+ "primaryKey": false,
1360
+ "notNull": true
1361
+ },
1362
+ "layer_id": {
1363
+ "name": "layer_id",
1364
+ "type": "uuid",
1365
+ "primaryKey": false,
1366
+ "notNull": true
1367
+ },
1368
+ "service_id": {
1369
+ "name": "service_id",
1370
+ "type": "uuid",
1371
+ "primaryKey": false,
1372
+ "notNull": true
1373
+ },
1374
+ "name": {
1375
+ "name": "name",
1376
+ "type": "text",
1377
+ "primaryKey": false,
1378
+ "notNull": true
1379
+ },
1380
+ "kind": {
1381
+ "name": "kind",
1382
+ "type": "text",
1383
+ "primaryKey": false,
1384
+ "notNull": true
1385
+ },
1386
+ "file_path": {
1387
+ "name": "file_path",
1388
+ "type": "text",
1389
+ "primaryKey": false,
1390
+ "notNull": true
1391
+ },
1392
+ "method_count": {
1393
+ "name": "method_count",
1394
+ "type": "integer",
1395
+ "primaryKey": false,
1396
+ "notNull": true,
1397
+ "default": 0
1398
+ },
1399
+ "property_count": {
1400
+ "name": "property_count",
1401
+ "type": "integer",
1402
+ "primaryKey": false,
1403
+ "notNull": true,
1404
+ "default": 0
1405
+ },
1406
+ "import_count": {
1407
+ "name": "import_count",
1408
+ "type": "integer",
1409
+ "primaryKey": false,
1410
+ "notNull": true,
1411
+ "default": 0
1412
+ },
1413
+ "export_count": {
1414
+ "name": "export_count",
1415
+ "type": "integer",
1416
+ "primaryKey": false,
1417
+ "notNull": true,
1418
+ "default": 0
1419
+ },
1420
+ "super_class": {
1421
+ "name": "super_class",
1422
+ "type": "text",
1423
+ "primaryKey": false,
1424
+ "notNull": false
1425
+ },
1426
+ "line_count": {
1427
+ "name": "line_count",
1428
+ "type": "integer",
1429
+ "primaryKey": false,
1430
+ "notNull": false
1431
+ }
1432
+ },
1433
+ "indexes": {},
1434
+ "foreignKeys": {
1435
+ "modules_analysis_id_analyses_id_fk": {
1436
+ "name": "modules_analysis_id_analyses_id_fk",
1437
+ "tableFrom": "modules",
1438
+ "tableTo": "analyses",
1439
+ "columnsFrom": [
1440
+ "analysis_id"
1441
+ ],
1442
+ "columnsTo": [
1443
+ "id"
1444
+ ],
1445
+ "onDelete": "cascade",
1446
+ "onUpdate": "no action"
1447
+ },
1448
+ "modules_layer_id_layers_id_fk": {
1449
+ "name": "modules_layer_id_layers_id_fk",
1450
+ "tableFrom": "modules",
1451
+ "tableTo": "layers",
1452
+ "columnsFrom": [
1453
+ "layer_id"
1454
+ ],
1455
+ "columnsTo": [
1456
+ "id"
1457
+ ],
1458
+ "onDelete": "cascade",
1459
+ "onUpdate": "no action"
1460
+ },
1461
+ "modules_service_id_services_id_fk": {
1462
+ "name": "modules_service_id_services_id_fk",
1463
+ "tableFrom": "modules",
1464
+ "tableTo": "services",
1465
+ "columnsFrom": [
1466
+ "service_id"
1467
+ ],
1468
+ "columnsTo": [
1469
+ "id"
1470
+ ],
1471
+ "onDelete": "cascade",
1472
+ "onUpdate": "no action"
1473
+ }
1474
+ },
1475
+ "compositePrimaryKeys": {},
1476
+ "uniqueConstraints": {},
1477
+ "policies": {},
1478
+ "checkConstraints": {},
1479
+ "isRLSEnabled": false
1480
+ },
1481
+ "public.repos": {
1482
+ "name": "repos",
1483
+ "schema": "",
1484
+ "columns": {
1485
+ "id": {
1486
+ "name": "id",
1487
+ "type": "uuid",
1488
+ "primaryKey": true,
1489
+ "notNull": true,
1490
+ "default": "gen_random_uuid()"
1491
+ },
1492
+ "name": {
1493
+ "name": "name",
1494
+ "type": "text",
1495
+ "primaryKey": false,
1496
+ "notNull": true
1497
+ },
1498
+ "path": {
1499
+ "name": "path",
1500
+ "type": "text",
1501
+ "primaryKey": false,
1502
+ "notNull": true
1503
+ },
1504
+ "last_analyzed_at": {
1505
+ "name": "last_analyzed_at",
1506
+ "type": "timestamp with time zone",
1507
+ "primaryKey": false,
1508
+ "notNull": false
1509
+ },
1510
+ "created_at": {
1511
+ "name": "created_at",
1512
+ "type": "timestamp with time zone",
1513
+ "primaryKey": false,
1514
+ "notNull": true,
1515
+ "default": "now()"
1516
+ },
1517
+ "updated_at": {
1518
+ "name": "updated_at",
1519
+ "type": "timestamp with time zone",
1520
+ "primaryKey": false,
1521
+ "notNull": true,
1522
+ "default": "now()"
1523
+ }
1524
+ },
1525
+ "indexes": {},
1526
+ "foreignKeys": {},
1527
+ "compositePrimaryKeys": {},
1528
+ "uniqueConstraints": {
1529
+ "repos_path_unique": {
1530
+ "name": "repos_path_unique",
1531
+ "nullsNotDistinct": false,
1532
+ "columns": [
1533
+ "path"
1534
+ ]
1535
+ }
1536
+ },
1537
+ "policies": {},
1538
+ "checkConstraints": {},
1539
+ "isRLSEnabled": false
1540
+ },
1541
+ "public.rules": {
1542
+ "name": "rules",
1543
+ "schema": "",
1544
+ "columns": {
1545
+ "key": {
1546
+ "name": "key",
1547
+ "type": "text",
1548
+ "primaryKey": true,
1549
+ "notNull": true
1550
+ },
1551
+ "category": {
1552
+ "name": "category",
1553
+ "type": "text",
1554
+ "primaryKey": false,
1555
+ "notNull": true
1556
+ },
1557
+ "name": {
1558
+ "name": "name",
1559
+ "type": "text",
1560
+ "primaryKey": false,
1561
+ "notNull": true
1562
+ },
1563
+ "description": {
1564
+ "name": "description",
1565
+ "type": "text",
1566
+ "primaryKey": false,
1567
+ "notNull": true
1568
+ },
1569
+ "prompt": {
1570
+ "name": "prompt",
1571
+ "type": "text",
1572
+ "primaryKey": false,
1573
+ "notNull": false
1574
+ },
1575
+ "enabled": {
1576
+ "name": "enabled",
1577
+ "type": "boolean",
1578
+ "primaryKey": false,
1579
+ "notNull": true,
1580
+ "default": true
1581
+ },
1582
+ "severity": {
1583
+ "name": "severity",
1584
+ "type": "text",
1585
+ "primaryKey": false,
1586
+ "notNull": true
1587
+ },
1588
+ "type": {
1589
+ "name": "type",
1590
+ "type": "text",
1591
+ "primaryKey": false,
1592
+ "notNull": true
1593
+ },
1594
+ "is_dependency_violation": {
1595
+ "name": "is_dependency_violation",
1596
+ "type": "boolean",
1597
+ "primaryKey": false,
1598
+ "notNull": true,
1599
+ "default": false
1600
+ },
1601
+ "created_at": {
1602
+ "name": "created_at",
1603
+ "type": "timestamp with time zone",
1604
+ "primaryKey": false,
1605
+ "notNull": true,
1606
+ "default": "now()"
1607
+ },
1608
+ "updated_at": {
1609
+ "name": "updated_at",
1610
+ "type": "timestamp with time zone",
1611
+ "primaryKey": false,
1612
+ "notNull": true,
1613
+ "default": "now()"
1614
+ }
1615
+ },
1616
+ "indexes": {},
1617
+ "foreignKeys": {},
1618
+ "compositePrimaryKeys": {},
1619
+ "uniqueConstraints": {},
1620
+ "policies": {},
1621
+ "checkConstraints": {},
1622
+ "isRLSEnabled": false
1623
+ },
1624
+ "public.service_dependencies": {
1625
+ "name": "service_dependencies",
1626
+ "schema": "",
1627
+ "columns": {
1628
+ "id": {
1629
+ "name": "id",
1630
+ "type": "uuid",
1631
+ "primaryKey": true,
1632
+ "notNull": true,
1633
+ "default": "gen_random_uuid()"
1634
+ },
1635
+ "analysis_id": {
1636
+ "name": "analysis_id",
1637
+ "type": "uuid",
1638
+ "primaryKey": false,
1639
+ "notNull": true
1640
+ },
1641
+ "source_service_id": {
1642
+ "name": "source_service_id",
1643
+ "type": "uuid",
1644
+ "primaryKey": false,
1645
+ "notNull": true
1646
+ },
1647
+ "target_service_id": {
1648
+ "name": "target_service_id",
1649
+ "type": "uuid",
1650
+ "primaryKey": false,
1651
+ "notNull": true
1652
+ },
1653
+ "dependency_count": {
1654
+ "name": "dependency_count",
1655
+ "type": "integer",
1656
+ "primaryKey": false,
1657
+ "notNull": false
1658
+ },
1659
+ "dependency_type": {
1660
+ "name": "dependency_type",
1661
+ "type": "text",
1662
+ "primaryKey": false,
1663
+ "notNull": false
1664
+ }
1665
+ },
1666
+ "indexes": {},
1667
+ "foreignKeys": {
1668
+ "service_dependencies_analysis_id_analyses_id_fk": {
1669
+ "name": "service_dependencies_analysis_id_analyses_id_fk",
1670
+ "tableFrom": "service_dependencies",
1671
+ "tableTo": "analyses",
1672
+ "columnsFrom": [
1673
+ "analysis_id"
1674
+ ],
1675
+ "columnsTo": [
1676
+ "id"
1677
+ ],
1678
+ "onDelete": "cascade",
1679
+ "onUpdate": "no action"
1680
+ },
1681
+ "service_dependencies_source_service_id_services_id_fk": {
1682
+ "name": "service_dependencies_source_service_id_services_id_fk",
1683
+ "tableFrom": "service_dependencies",
1684
+ "tableTo": "services",
1685
+ "columnsFrom": [
1686
+ "source_service_id"
1687
+ ],
1688
+ "columnsTo": [
1689
+ "id"
1690
+ ],
1691
+ "onDelete": "cascade",
1692
+ "onUpdate": "no action"
1693
+ },
1694
+ "service_dependencies_target_service_id_services_id_fk": {
1695
+ "name": "service_dependencies_target_service_id_services_id_fk",
1696
+ "tableFrom": "service_dependencies",
1697
+ "tableTo": "services",
1698
+ "columnsFrom": [
1699
+ "target_service_id"
1700
+ ],
1701
+ "columnsTo": [
1702
+ "id"
1703
+ ],
1704
+ "onDelete": "cascade",
1705
+ "onUpdate": "no action"
1706
+ }
1707
+ },
1708
+ "compositePrimaryKeys": {},
1709
+ "uniqueConstraints": {},
1710
+ "policies": {},
1711
+ "checkConstraints": {},
1712
+ "isRLSEnabled": false
1713
+ },
1714
+ "public.services": {
1715
+ "name": "services",
1716
+ "schema": "",
1717
+ "columns": {
1718
+ "id": {
1719
+ "name": "id",
1720
+ "type": "uuid",
1721
+ "primaryKey": true,
1722
+ "notNull": true,
1723
+ "default": "gen_random_uuid()"
1724
+ },
1725
+ "analysis_id": {
1726
+ "name": "analysis_id",
1727
+ "type": "uuid",
1728
+ "primaryKey": false,
1729
+ "notNull": true
1730
+ },
1731
+ "name": {
1732
+ "name": "name",
1733
+ "type": "text",
1734
+ "primaryKey": false,
1735
+ "notNull": true
1736
+ },
1737
+ "root_path": {
1738
+ "name": "root_path",
1739
+ "type": "text",
1740
+ "primaryKey": false,
1741
+ "notNull": true
1742
+ },
1743
+ "type": {
1744
+ "name": "type",
1745
+ "type": "text",
1746
+ "primaryKey": false,
1747
+ "notNull": true
1748
+ },
1749
+ "framework": {
1750
+ "name": "framework",
1751
+ "type": "text",
1752
+ "primaryKey": false,
1753
+ "notNull": false
1754
+ },
1755
+ "file_count": {
1756
+ "name": "file_count",
1757
+ "type": "integer",
1758
+ "primaryKey": false,
1759
+ "notNull": false
1760
+ },
1761
+ "description": {
1762
+ "name": "description",
1763
+ "type": "text",
1764
+ "primaryKey": false,
1765
+ "notNull": false
1766
+ },
1767
+ "layer_summary": {
1768
+ "name": "layer_summary",
1769
+ "type": "jsonb",
1770
+ "primaryKey": false,
1771
+ "notNull": false
1772
+ },
1773
+ "created_at": {
1774
+ "name": "created_at",
1775
+ "type": "timestamp with time zone",
1776
+ "primaryKey": false,
1777
+ "notNull": true,
1778
+ "default": "now()"
1779
+ }
1780
+ },
1781
+ "indexes": {},
1782
+ "foreignKeys": {
1783
+ "services_analysis_id_analyses_id_fk": {
1784
+ "name": "services_analysis_id_analyses_id_fk",
1785
+ "tableFrom": "services",
1786
+ "tableTo": "analyses",
1787
+ "columnsFrom": [
1788
+ "analysis_id"
1789
+ ],
1790
+ "columnsTo": [
1791
+ "id"
1792
+ ],
1793
+ "onDelete": "cascade",
1794
+ "onUpdate": "no action"
1795
+ }
1796
+ },
1797
+ "compositePrimaryKeys": {},
1798
+ "uniqueConstraints": {},
1799
+ "policies": {},
1800
+ "checkConstraints": {},
1801
+ "isRLSEnabled": false
1802
+ },
1803
+ "public.violations": {
1804
+ "name": "violations",
1805
+ "schema": "",
1806
+ "columns": {
1807
+ "id": {
1808
+ "name": "id",
1809
+ "type": "uuid",
1810
+ "primaryKey": true,
1811
+ "notNull": true,
1812
+ "default": "gen_random_uuid()"
1813
+ },
1814
+ "repo_id": {
1815
+ "name": "repo_id",
1816
+ "type": "uuid",
1817
+ "primaryKey": false,
1818
+ "notNull": true
1819
+ },
1820
+ "analysis_id": {
1821
+ "name": "analysis_id",
1822
+ "type": "uuid",
1823
+ "primaryKey": false,
1824
+ "notNull": true
1825
+ },
1826
+ "type": {
1827
+ "name": "type",
1828
+ "type": "text",
1829
+ "primaryKey": false,
1830
+ "notNull": true
1831
+ },
1832
+ "title": {
1833
+ "name": "title",
1834
+ "type": "text",
1835
+ "primaryKey": false,
1836
+ "notNull": true
1837
+ },
1838
+ "content": {
1839
+ "name": "content",
1840
+ "type": "text",
1841
+ "primaryKey": false,
1842
+ "notNull": true
1843
+ },
1844
+ "severity": {
1845
+ "name": "severity",
1846
+ "type": "text",
1847
+ "primaryKey": false,
1848
+ "notNull": true
1849
+ },
1850
+ "status": {
1851
+ "name": "status",
1852
+ "type": "text",
1853
+ "primaryKey": false,
1854
+ "notNull": true,
1855
+ "default": "'new'"
1856
+ },
1857
+ "target_service_id": {
1858
+ "name": "target_service_id",
1859
+ "type": "uuid",
1860
+ "primaryKey": false,
1861
+ "notNull": false
1862
+ },
1863
+ "target_database_id": {
1864
+ "name": "target_database_id",
1865
+ "type": "uuid",
1866
+ "primaryKey": false,
1867
+ "notNull": false
1868
+ },
1869
+ "target_module_id": {
1870
+ "name": "target_module_id",
1871
+ "type": "uuid",
1872
+ "primaryKey": false,
1873
+ "notNull": false
1874
+ },
1875
+ "target_method_id": {
1876
+ "name": "target_method_id",
1877
+ "type": "uuid",
1878
+ "primaryKey": false,
1879
+ "notNull": false
1880
+ },
1881
+ "target_table": {
1882
+ "name": "target_table",
1883
+ "type": "text",
1884
+ "primaryKey": false,
1885
+ "notNull": false
1886
+ },
1887
+ "fix_prompt": {
1888
+ "name": "fix_prompt",
1889
+ "type": "text",
1890
+ "primaryKey": false,
1891
+ "notNull": false
1892
+ },
1893
+ "rule_key": {
1894
+ "name": "rule_key",
1895
+ "type": "text",
1896
+ "primaryKey": false,
1897
+ "notNull": true
1898
+ },
1899
+ "deterministic_violation_id": {
1900
+ "name": "deterministic_violation_id",
1901
+ "type": "uuid",
1902
+ "primaryKey": false,
1903
+ "notNull": false
1904
+ },
1905
+ "first_seen_analysis_id": {
1906
+ "name": "first_seen_analysis_id",
1907
+ "type": "uuid",
1908
+ "primaryKey": false,
1909
+ "notNull": false
1910
+ },
1911
+ "first_seen_at": {
1912
+ "name": "first_seen_at",
1913
+ "type": "timestamp with time zone",
1914
+ "primaryKey": false,
1915
+ "notNull": false
1916
+ },
1917
+ "previous_violation_id": {
1918
+ "name": "previous_violation_id",
1919
+ "type": "uuid",
1920
+ "primaryKey": false,
1921
+ "notNull": false
1922
+ },
1923
+ "resolved_at": {
1924
+ "name": "resolved_at",
1925
+ "type": "timestamp with time zone",
1926
+ "primaryKey": false,
1927
+ "notNull": false
1928
+ },
1929
+ "created_at": {
1930
+ "name": "created_at",
1931
+ "type": "timestamp with time zone",
1932
+ "primaryKey": false,
1933
+ "notNull": true,
1934
+ "default": "now()"
1935
+ }
1936
+ },
1937
+ "indexes": {},
1938
+ "foreignKeys": {
1939
+ "violations_repo_id_repos_id_fk": {
1940
+ "name": "violations_repo_id_repos_id_fk",
1941
+ "tableFrom": "violations",
1942
+ "tableTo": "repos",
1943
+ "columnsFrom": [
1944
+ "repo_id"
1945
+ ],
1946
+ "columnsTo": [
1947
+ "id"
1948
+ ],
1949
+ "onDelete": "cascade",
1950
+ "onUpdate": "no action"
1951
+ },
1952
+ "violations_analysis_id_analyses_id_fk": {
1953
+ "name": "violations_analysis_id_analyses_id_fk",
1954
+ "tableFrom": "violations",
1955
+ "tableTo": "analyses",
1956
+ "columnsFrom": [
1957
+ "analysis_id"
1958
+ ],
1959
+ "columnsTo": [
1960
+ "id"
1961
+ ],
1962
+ "onDelete": "cascade",
1963
+ "onUpdate": "no action"
1964
+ },
1965
+ "violations_target_service_id_services_id_fk": {
1966
+ "name": "violations_target_service_id_services_id_fk",
1967
+ "tableFrom": "violations",
1968
+ "tableTo": "services",
1969
+ "columnsFrom": [
1970
+ "target_service_id"
1971
+ ],
1972
+ "columnsTo": [
1973
+ "id"
1974
+ ],
1975
+ "onDelete": "set null",
1976
+ "onUpdate": "no action"
1977
+ },
1978
+ "violations_target_database_id_databases_id_fk": {
1979
+ "name": "violations_target_database_id_databases_id_fk",
1980
+ "tableFrom": "violations",
1981
+ "tableTo": "databases",
1982
+ "columnsFrom": [
1983
+ "target_database_id"
1984
+ ],
1985
+ "columnsTo": [
1986
+ "id"
1987
+ ],
1988
+ "onDelete": "set null",
1989
+ "onUpdate": "no action"
1990
+ },
1991
+ "violations_target_module_id_modules_id_fk": {
1992
+ "name": "violations_target_module_id_modules_id_fk",
1993
+ "tableFrom": "violations",
1994
+ "tableTo": "modules",
1995
+ "columnsFrom": [
1996
+ "target_module_id"
1997
+ ],
1998
+ "columnsTo": [
1999
+ "id"
2000
+ ],
2001
+ "onDelete": "set null",
2002
+ "onUpdate": "no action"
2003
+ },
2004
+ "violations_target_method_id_methods_id_fk": {
2005
+ "name": "violations_target_method_id_methods_id_fk",
2006
+ "tableFrom": "violations",
2007
+ "tableTo": "methods",
2008
+ "columnsFrom": [
2009
+ "target_method_id"
2010
+ ],
2011
+ "columnsTo": [
2012
+ "id"
2013
+ ],
2014
+ "onDelete": "set null",
2015
+ "onUpdate": "no action"
2016
+ },
2017
+ "violations_deterministic_violation_id_deterministic_violations_id_fk": {
2018
+ "name": "violations_deterministic_violation_id_deterministic_violations_id_fk",
2019
+ "tableFrom": "violations",
2020
+ "tableTo": "deterministic_violations",
2021
+ "columnsFrom": [
2022
+ "deterministic_violation_id"
2023
+ ],
2024
+ "columnsTo": [
2025
+ "id"
2026
+ ],
2027
+ "onDelete": "set null",
2028
+ "onUpdate": "no action"
2029
+ },
2030
+ "violations_first_seen_analysis_id_analyses_id_fk": {
2031
+ "name": "violations_first_seen_analysis_id_analyses_id_fk",
2032
+ "tableFrom": "violations",
2033
+ "tableTo": "analyses",
2034
+ "columnsFrom": [
2035
+ "first_seen_analysis_id"
2036
+ ],
2037
+ "columnsTo": [
2038
+ "id"
2039
+ ],
2040
+ "onDelete": "set null",
2041
+ "onUpdate": "no action"
2042
+ }
2043
+ },
2044
+ "compositePrimaryKeys": {},
2045
+ "uniqueConstraints": {},
2046
+ "policies": {},
2047
+ "checkConstraints": {},
2048
+ "isRLSEnabled": false
2049
+ }
2050
+ },
2051
+ "enums": {},
2052
+ "schemas": {},
2053
+ "sequences": {},
2054
+ "roles": {},
2055
+ "policies": {},
2056
+ "views": {},
2057
+ "_meta": {
2058
+ "columns": {},
2059
+ "schemas": {},
2060
+ "tables": {}
2061
+ }
2062
+ }