Barazo AppView backend barazo.forum
at main 4288 lines 115 kB view raw
1{ 2 "id": "518f80c8-6efa-48f3-a1c5-35a93911b0ba", 3 "prevId": "2e645169-605f-48d4-8fae-e20020f0d918", 4 "version": "7", 5 "dialect": "postgresql", 6 "tables": { 7 "public.users": { 8 "name": "users", 9 "schema": "", 10 "columns": { 11 "did": { 12 "name": "did", 13 "type": "text", 14 "primaryKey": true, 15 "notNull": true 16 }, 17 "handle": { 18 "name": "handle", 19 "type": "text", 20 "primaryKey": false, 21 "notNull": true 22 }, 23 "display_name": { 24 "name": "display_name", 25 "type": "text", 26 "primaryKey": false, 27 "notNull": false 28 }, 29 "avatar_url": { 30 "name": "avatar_url", 31 "type": "text", 32 "primaryKey": false, 33 "notNull": false 34 }, 35 "banner_url": { 36 "name": "banner_url", 37 "type": "text", 38 "primaryKey": false, 39 "notNull": false 40 }, 41 "bio": { 42 "name": "bio", 43 "type": "text", 44 "primaryKey": false, 45 "notNull": false 46 }, 47 "role": { 48 "name": "role", 49 "type": "text", 50 "primaryKey": false, 51 "notNull": true, 52 "default": "'user'" 53 }, 54 "is_banned": { 55 "name": "is_banned", 56 "type": "boolean", 57 "primaryKey": false, 58 "notNull": true, 59 "default": false 60 }, 61 "reputation_score": { 62 "name": "reputation_score", 63 "type": "integer", 64 "primaryKey": false, 65 "notNull": true, 66 "default": 0 67 }, 68 "first_seen_at": { 69 "name": "first_seen_at", 70 "type": "timestamp with time zone", 71 "primaryKey": false, 72 "notNull": true, 73 "default": "now()" 74 }, 75 "last_active_at": { 76 "name": "last_active_at", 77 "type": "timestamp with time zone", 78 "primaryKey": false, 79 "notNull": true, 80 "default": "now()" 81 }, 82 "declared_age": { 83 "name": "declared_age", 84 "type": "integer", 85 "primaryKey": false, 86 "notNull": false 87 }, 88 "maturity_pref": { 89 "name": "maturity_pref", 90 "type": "text", 91 "primaryKey": false, 92 "notNull": true, 93 "default": "'safe'" 94 }, 95 "account_created_at": { 96 "name": "account_created_at", 97 "type": "timestamp with time zone", 98 "primaryKey": false, 99 "notNull": false 100 }, 101 "followers_count": { 102 "name": "followers_count", 103 "type": "integer", 104 "primaryKey": false, 105 "notNull": true, 106 "default": 0 107 }, 108 "follows_count": { 109 "name": "follows_count", 110 "type": "integer", 111 "primaryKey": false, 112 "notNull": true, 113 "default": 0 114 }, 115 "atproto_posts_count": { 116 "name": "atproto_posts_count", 117 "type": "integer", 118 "primaryKey": false, 119 "notNull": true, 120 "default": 0 121 }, 122 "has_bluesky_profile": { 123 "name": "has_bluesky_profile", 124 "type": "boolean", 125 "primaryKey": false, 126 "notNull": true, 127 "default": false 128 }, 129 "atproto_labels": { 130 "name": "atproto_labels", 131 "type": "jsonb", 132 "primaryKey": false, 133 "notNull": true, 134 "default": "'[]'::jsonb" 135 } 136 }, 137 "indexes": { 138 "users_role_elevated_idx": { 139 "name": "users_role_elevated_idx", 140 "columns": [ 141 { 142 "expression": "role", 143 "isExpression": false, 144 "asc": true, 145 "nulls": "last" 146 } 147 ], 148 "isUnique": false, 149 "where": "role IN ('moderator', 'admin')", 150 "concurrently": false, 151 "method": "btree", 152 "with": {} 153 }, 154 "users_handle_idx": { 155 "name": "users_handle_idx", 156 "columns": [ 157 { 158 "expression": "handle", 159 "isExpression": false, 160 "asc": true, 161 "nulls": "last" 162 } 163 ], 164 "isUnique": false, 165 "concurrently": false, 166 "method": "btree", 167 "with": {} 168 }, 169 "users_account_created_at_idx": { 170 "name": "users_account_created_at_idx", 171 "columns": [ 172 { 173 "expression": "account_created_at", 174 "isExpression": false, 175 "asc": true, 176 "nulls": "last" 177 } 178 ], 179 "isUnique": false, 180 "concurrently": false, 181 "method": "btree", 182 "with": {} 183 } 184 }, 185 "foreignKeys": {}, 186 "compositePrimaryKeys": {}, 187 "uniqueConstraints": {}, 188 "policies": {}, 189 "checkConstraints": {}, 190 "isRLSEnabled": false 191 }, 192 "public.firehose_cursor": { 193 "name": "firehose_cursor", 194 "schema": "", 195 "columns": { 196 "id": { 197 "name": "id", 198 "type": "text", 199 "primaryKey": true, 200 "notNull": true, 201 "default": "'default'" 202 }, 203 "cursor": { 204 "name": "cursor", 205 "type": "bigint", 206 "primaryKey": false, 207 "notNull": false 208 }, 209 "updated_at": { 210 "name": "updated_at", 211 "type": "timestamp with time zone", 212 "primaryKey": false, 213 "notNull": true, 214 "default": "now()" 215 } 216 }, 217 "indexes": {}, 218 "foreignKeys": {}, 219 "compositePrimaryKeys": {}, 220 "uniqueConstraints": {}, 221 "policies": {}, 222 "checkConstraints": {}, 223 "isRLSEnabled": false 224 }, 225 "public.topics": { 226 "name": "topics", 227 "schema": "", 228 "columns": { 229 "uri": { 230 "name": "uri", 231 "type": "text", 232 "primaryKey": true, 233 "notNull": true 234 }, 235 "rkey": { 236 "name": "rkey", 237 "type": "text", 238 "primaryKey": false, 239 "notNull": true 240 }, 241 "author_did": { 242 "name": "author_did", 243 "type": "text", 244 "primaryKey": false, 245 "notNull": true 246 }, 247 "title": { 248 "name": "title", 249 "type": "text", 250 "primaryKey": false, 251 "notNull": true 252 }, 253 "content": { 254 "name": "content", 255 "type": "text", 256 "primaryKey": false, 257 "notNull": true 258 }, 259 "content_format": { 260 "name": "content_format", 261 "type": "text", 262 "primaryKey": false, 263 "notNull": false 264 }, 265 "category": { 266 "name": "category", 267 "type": "text", 268 "primaryKey": false, 269 "notNull": true 270 }, 271 "tags": { 272 "name": "tags", 273 "type": "jsonb", 274 "primaryKey": false, 275 "notNull": false 276 }, 277 "community_did": { 278 "name": "community_did", 279 "type": "text", 280 "primaryKey": false, 281 "notNull": true 282 }, 283 "cid": { 284 "name": "cid", 285 "type": "text", 286 "primaryKey": false, 287 "notNull": true 288 }, 289 "labels": { 290 "name": "labels", 291 "type": "jsonb", 292 "primaryKey": false, 293 "notNull": false 294 }, 295 "reply_count": { 296 "name": "reply_count", 297 "type": "integer", 298 "primaryKey": false, 299 "notNull": true, 300 "default": 0 301 }, 302 "reaction_count": { 303 "name": "reaction_count", 304 "type": "integer", 305 "primaryKey": false, 306 "notNull": true, 307 "default": 0 308 }, 309 "vote_count": { 310 "name": "vote_count", 311 "type": "integer", 312 "primaryKey": false, 313 "notNull": true, 314 "default": 0 315 }, 316 "last_activity_at": { 317 "name": "last_activity_at", 318 "type": "timestamp with time zone", 319 "primaryKey": false, 320 "notNull": true, 321 "default": "now()" 322 }, 323 "created_at": { 324 "name": "created_at", 325 "type": "timestamp with time zone", 326 "primaryKey": false, 327 "notNull": true 328 }, 329 "indexed_at": { 330 "name": "indexed_at", 331 "type": "timestamp with time zone", 332 "primaryKey": false, 333 "notNull": true, 334 "default": "now()" 335 }, 336 "is_locked": { 337 "name": "is_locked", 338 "type": "boolean", 339 "primaryKey": false, 340 "notNull": true, 341 "default": false 342 }, 343 "is_pinned": { 344 "name": "is_pinned", 345 "type": "boolean", 346 "primaryKey": false, 347 "notNull": true, 348 "default": false 349 }, 350 "pinned_at": { 351 "name": "pinned_at", 352 "type": "timestamp with time zone", 353 "primaryKey": false, 354 "notNull": false 355 }, 356 "pinned_scope": { 357 "name": "pinned_scope", 358 "type": "text", 359 "primaryKey": false, 360 "notNull": false 361 }, 362 "is_mod_deleted": { 363 "name": "is_mod_deleted", 364 "type": "boolean", 365 "primaryKey": false, 366 "notNull": true, 367 "default": false 368 }, 369 "is_author_deleted": { 370 "name": "is_author_deleted", 371 "type": "boolean", 372 "primaryKey": false, 373 "notNull": true, 374 "default": false 375 }, 376 "moderation_status": { 377 "name": "moderation_status", 378 "type": "text", 379 "primaryKey": false, 380 "notNull": true, 381 "default": "'approved'" 382 }, 383 "trust_status": { 384 "name": "trust_status", 385 "type": "text", 386 "primaryKey": false, 387 "notNull": true, 388 "default": "'trusted'" 389 } 390 }, 391 "indexes": { 392 "topics_author_did_idx": { 393 "name": "topics_author_did_idx", 394 "columns": [ 395 { 396 "expression": "author_did", 397 "isExpression": false, 398 "asc": true, 399 "nulls": "last" 400 } 401 ], 402 "isUnique": false, 403 "concurrently": false, 404 "method": "btree", 405 "with": {} 406 }, 407 "topics_category_idx": { 408 "name": "topics_category_idx", 409 "columns": [ 410 { 411 "expression": "category", 412 "isExpression": false, 413 "asc": true, 414 "nulls": "last" 415 } 416 ], 417 "isUnique": false, 418 "concurrently": false, 419 "method": "btree", 420 "with": {} 421 }, 422 "topics_created_at_idx": { 423 "name": "topics_created_at_idx", 424 "columns": [ 425 { 426 "expression": "created_at", 427 "isExpression": false, 428 "asc": true, 429 "nulls": "last" 430 } 431 ], 432 "isUnique": false, 433 "concurrently": false, 434 "method": "btree", 435 "with": {} 436 }, 437 "topics_last_activity_at_idx": { 438 "name": "topics_last_activity_at_idx", 439 "columns": [ 440 { 441 "expression": "last_activity_at", 442 "isExpression": false, 443 "asc": true, 444 "nulls": "last" 445 } 446 ], 447 "isUnique": false, 448 "concurrently": false, 449 "method": "btree", 450 "with": {} 451 }, 452 "topics_community_did_idx": { 453 "name": "topics_community_did_idx", 454 "columns": [ 455 { 456 "expression": "community_did", 457 "isExpression": false, 458 "asc": true, 459 "nulls": "last" 460 } 461 ], 462 "isUnique": false, 463 "concurrently": false, 464 "method": "btree", 465 "with": {} 466 }, 467 "topics_moderation_status_idx": { 468 "name": "topics_moderation_status_idx", 469 "columns": [ 470 { 471 "expression": "moderation_status", 472 "isExpression": false, 473 "asc": true, 474 "nulls": "last" 475 } 476 ], 477 "isUnique": false, 478 "concurrently": false, 479 "method": "btree", 480 "with": {} 481 }, 482 "topics_trust_status_idx": { 483 "name": "topics_trust_status_idx", 484 "columns": [ 485 { 486 "expression": "trust_status", 487 "isExpression": false, 488 "asc": true, 489 "nulls": "last" 490 } 491 ], 492 "isUnique": false, 493 "concurrently": false, 494 "method": "btree", 495 "with": {} 496 }, 497 "topics_community_category_activity_idx": { 498 "name": "topics_community_category_activity_idx", 499 "columns": [ 500 { 501 "expression": "community_did", 502 "isExpression": false, 503 "asc": true, 504 "nulls": "last" 505 }, 506 { 507 "expression": "category", 508 "isExpression": false, 509 "asc": true, 510 "nulls": "last" 511 }, 512 { 513 "expression": "last_activity_at", 514 "isExpression": false, 515 "asc": true, 516 "nulls": "last" 517 } 518 ], 519 "isUnique": false, 520 "concurrently": false, 521 "method": "btree", 522 "with": {} 523 }, 524 "topics_pinned_scope_idx": { 525 "name": "topics_pinned_scope_idx", 526 "columns": [ 527 { 528 "expression": "pinned_scope", 529 "isExpression": false, 530 "asc": true, 531 "nulls": "last" 532 } 533 ], 534 "isUnique": false, 535 "concurrently": false, 536 "method": "btree", 537 "with": {} 538 }, 539 "topics_author_did_rkey_idx": { 540 "name": "topics_author_did_rkey_idx", 541 "columns": [ 542 { 543 "expression": "author_did", 544 "isExpression": false, 545 "asc": true, 546 "nulls": "last" 547 }, 548 { 549 "expression": "rkey", 550 "isExpression": false, 551 "asc": true, 552 "nulls": "last" 553 } 554 ], 555 "isUnique": false, 556 "concurrently": false, 557 "method": "btree", 558 "with": {} 559 } 560 }, 561 "foreignKeys": {}, 562 "compositePrimaryKeys": {}, 563 "uniqueConstraints": {}, 564 "policies": { 565 "tenant_isolation": { 566 "name": "tenant_isolation", 567 "as": "PERMISSIVE", 568 "for": "ALL", 569 "to": ["barazo_app"], 570 "using": "community_did = current_setting('app.current_community_did', true)", 571 "withCheck": "community_did = current_setting('app.current_community_did', true)" 572 } 573 }, 574 "checkConstraints": {}, 575 "isRLSEnabled": true 576 }, 577 "public.replies": { 578 "name": "replies", 579 "schema": "", 580 "columns": { 581 "uri": { 582 "name": "uri", 583 "type": "text", 584 "primaryKey": true, 585 "notNull": true 586 }, 587 "rkey": { 588 "name": "rkey", 589 "type": "text", 590 "primaryKey": false, 591 "notNull": true 592 }, 593 "author_did": { 594 "name": "author_did", 595 "type": "text", 596 "primaryKey": false, 597 "notNull": true 598 }, 599 "content": { 600 "name": "content", 601 "type": "text", 602 "primaryKey": false, 603 "notNull": true 604 }, 605 "content_format": { 606 "name": "content_format", 607 "type": "text", 608 "primaryKey": false, 609 "notNull": false 610 }, 611 "root_uri": { 612 "name": "root_uri", 613 "type": "text", 614 "primaryKey": false, 615 "notNull": true 616 }, 617 "root_cid": { 618 "name": "root_cid", 619 "type": "text", 620 "primaryKey": false, 621 "notNull": true 622 }, 623 "parent_uri": { 624 "name": "parent_uri", 625 "type": "text", 626 "primaryKey": false, 627 "notNull": true 628 }, 629 "parent_cid": { 630 "name": "parent_cid", 631 "type": "text", 632 "primaryKey": false, 633 "notNull": true 634 }, 635 "community_did": { 636 "name": "community_did", 637 "type": "text", 638 "primaryKey": false, 639 "notNull": true 640 }, 641 "cid": { 642 "name": "cid", 643 "type": "text", 644 "primaryKey": false, 645 "notNull": true 646 }, 647 "labels": { 648 "name": "labels", 649 "type": "jsonb", 650 "primaryKey": false, 651 "notNull": false 652 }, 653 "reaction_count": { 654 "name": "reaction_count", 655 "type": "integer", 656 "primaryKey": false, 657 "notNull": true, 658 "default": 0 659 }, 660 "vote_count": { 661 "name": "vote_count", 662 "type": "integer", 663 "primaryKey": false, 664 "notNull": true, 665 "default": 0 666 }, 667 "depth": { 668 "name": "depth", 669 "type": "integer", 670 "primaryKey": false, 671 "notNull": true, 672 "default": 1 673 }, 674 "created_at": { 675 "name": "created_at", 676 "type": "timestamp with time zone", 677 "primaryKey": false, 678 "notNull": true 679 }, 680 "indexed_at": { 681 "name": "indexed_at", 682 "type": "timestamp with time zone", 683 "primaryKey": false, 684 "notNull": true, 685 "default": "now()" 686 }, 687 "is_author_deleted": { 688 "name": "is_author_deleted", 689 "type": "boolean", 690 "primaryKey": false, 691 "notNull": true, 692 "default": false 693 }, 694 "is_mod_deleted": { 695 "name": "is_mod_deleted", 696 "type": "boolean", 697 "primaryKey": false, 698 "notNull": true, 699 "default": false 700 }, 701 "moderation_status": { 702 "name": "moderation_status", 703 "type": "text", 704 "primaryKey": false, 705 "notNull": true, 706 "default": "'approved'" 707 }, 708 "trust_status": { 709 "name": "trust_status", 710 "type": "text", 711 "primaryKey": false, 712 "notNull": true, 713 "default": "'trusted'" 714 } 715 }, 716 "indexes": { 717 "replies_author_did_idx": { 718 "name": "replies_author_did_idx", 719 "columns": [ 720 { 721 "expression": "author_did", 722 "isExpression": false, 723 "asc": true, 724 "nulls": "last" 725 } 726 ], 727 "isUnique": false, 728 "concurrently": false, 729 "method": "btree", 730 "with": {} 731 }, 732 "replies_root_uri_idx": { 733 "name": "replies_root_uri_idx", 734 "columns": [ 735 { 736 "expression": "root_uri", 737 "isExpression": false, 738 "asc": true, 739 "nulls": "last" 740 } 741 ], 742 "isUnique": false, 743 "concurrently": false, 744 "method": "btree", 745 "with": {} 746 }, 747 "replies_parent_uri_idx": { 748 "name": "replies_parent_uri_idx", 749 "columns": [ 750 { 751 "expression": "parent_uri", 752 "isExpression": false, 753 "asc": true, 754 "nulls": "last" 755 } 756 ], 757 "isUnique": false, 758 "concurrently": false, 759 "method": "btree", 760 "with": {} 761 }, 762 "replies_created_at_idx": { 763 "name": "replies_created_at_idx", 764 "columns": [ 765 { 766 "expression": "created_at", 767 "isExpression": false, 768 "asc": true, 769 "nulls": "last" 770 } 771 ], 772 "isUnique": false, 773 "concurrently": false, 774 "method": "btree", 775 "with": {} 776 }, 777 "replies_community_did_idx": { 778 "name": "replies_community_did_idx", 779 "columns": [ 780 { 781 "expression": "community_did", 782 "isExpression": false, 783 "asc": true, 784 "nulls": "last" 785 } 786 ], 787 "isUnique": false, 788 "concurrently": false, 789 "method": "btree", 790 "with": {} 791 }, 792 "replies_moderation_status_idx": { 793 "name": "replies_moderation_status_idx", 794 "columns": [ 795 { 796 "expression": "moderation_status", 797 "isExpression": false, 798 "asc": true, 799 "nulls": "last" 800 } 801 ], 802 "isUnique": false, 803 "concurrently": false, 804 "method": "btree", 805 "with": {} 806 }, 807 "replies_trust_status_idx": { 808 "name": "replies_trust_status_idx", 809 "columns": [ 810 { 811 "expression": "trust_status", 812 "isExpression": false, 813 "asc": true, 814 "nulls": "last" 815 } 816 ], 817 "isUnique": false, 818 "concurrently": false, 819 "method": "btree", 820 "with": {} 821 }, 822 "replies_root_uri_created_at_idx": { 823 "name": "replies_root_uri_created_at_idx", 824 "columns": [ 825 { 826 "expression": "root_uri", 827 "isExpression": false, 828 "asc": true, 829 "nulls": "last" 830 }, 831 { 832 "expression": "created_at", 833 "isExpression": false, 834 "asc": true, 835 "nulls": "last" 836 } 837 ], 838 "isUnique": false, 839 "concurrently": false, 840 "method": "btree", 841 "with": {} 842 }, 843 "replies_root_uri_depth_idx": { 844 "name": "replies_root_uri_depth_idx", 845 "columns": [ 846 { 847 "expression": "root_uri", 848 "isExpression": false, 849 "asc": true, 850 "nulls": "last" 851 }, 852 { 853 "expression": "depth", 854 "isExpression": false, 855 "asc": true, 856 "nulls": "last" 857 } 858 ], 859 "isUnique": false, 860 "concurrently": false, 861 "method": "btree", 862 "with": {} 863 }, 864 "replies_author_did_rkey_idx": { 865 "name": "replies_author_did_rkey_idx", 866 "columns": [ 867 { 868 "expression": "author_did", 869 "isExpression": false, 870 "asc": true, 871 "nulls": "last" 872 }, 873 { 874 "expression": "rkey", 875 "isExpression": false, 876 "asc": true, 877 "nulls": "last" 878 } 879 ], 880 "isUnique": false, 881 "concurrently": false, 882 "method": "btree", 883 "with": {} 884 } 885 }, 886 "foreignKeys": {}, 887 "compositePrimaryKeys": {}, 888 "uniqueConstraints": {}, 889 "policies": { 890 "tenant_isolation": { 891 "name": "tenant_isolation", 892 "as": "PERMISSIVE", 893 "for": "ALL", 894 "to": ["barazo_app"], 895 "using": "community_did = current_setting('app.current_community_did', true)", 896 "withCheck": "community_did = current_setting('app.current_community_did', true)" 897 } 898 }, 899 "checkConstraints": {}, 900 "isRLSEnabled": true 901 }, 902 "public.reactions": { 903 "name": "reactions", 904 "schema": "", 905 "columns": { 906 "uri": { 907 "name": "uri", 908 "type": "text", 909 "primaryKey": true, 910 "notNull": true 911 }, 912 "rkey": { 913 "name": "rkey", 914 "type": "text", 915 "primaryKey": false, 916 "notNull": true 917 }, 918 "author_did": { 919 "name": "author_did", 920 "type": "text", 921 "primaryKey": false, 922 "notNull": true 923 }, 924 "subject_uri": { 925 "name": "subject_uri", 926 "type": "text", 927 "primaryKey": false, 928 "notNull": true 929 }, 930 "subject_cid": { 931 "name": "subject_cid", 932 "type": "text", 933 "primaryKey": false, 934 "notNull": true 935 }, 936 "type": { 937 "name": "type", 938 "type": "text", 939 "primaryKey": false, 940 "notNull": true 941 }, 942 "community_did": { 943 "name": "community_did", 944 "type": "text", 945 "primaryKey": false, 946 "notNull": true 947 }, 948 "cid": { 949 "name": "cid", 950 "type": "text", 951 "primaryKey": false, 952 "notNull": true 953 }, 954 "created_at": { 955 "name": "created_at", 956 "type": "timestamp with time zone", 957 "primaryKey": false, 958 "notNull": true 959 }, 960 "indexed_at": { 961 "name": "indexed_at", 962 "type": "timestamp with time zone", 963 "primaryKey": false, 964 "notNull": true, 965 "default": "now()" 966 } 967 }, 968 "indexes": { 969 "reactions_author_did_idx": { 970 "name": "reactions_author_did_idx", 971 "columns": [ 972 { 973 "expression": "author_did", 974 "isExpression": false, 975 "asc": true, 976 "nulls": "last" 977 } 978 ], 979 "isUnique": false, 980 "concurrently": false, 981 "method": "btree", 982 "with": {} 983 }, 984 "reactions_subject_uri_idx": { 985 "name": "reactions_subject_uri_idx", 986 "columns": [ 987 { 988 "expression": "subject_uri", 989 "isExpression": false, 990 "asc": true, 991 "nulls": "last" 992 } 993 ], 994 "isUnique": false, 995 "concurrently": false, 996 "method": "btree", 997 "with": {} 998 }, 999 "reactions_community_did_idx": { 1000 "name": "reactions_community_did_idx", 1001 "columns": [ 1002 { 1003 "expression": "community_did", 1004 "isExpression": false, 1005 "asc": true, 1006 "nulls": "last" 1007 } 1008 ], 1009 "isUnique": false, 1010 "concurrently": false, 1011 "method": "btree", 1012 "with": {} 1013 }, 1014 "reactions_subject_uri_type_idx": { 1015 "name": "reactions_subject_uri_type_idx", 1016 "columns": [ 1017 { 1018 "expression": "subject_uri", 1019 "isExpression": false, 1020 "asc": true, 1021 "nulls": "last" 1022 }, 1023 { 1024 "expression": "type", 1025 "isExpression": false, 1026 "asc": true, 1027 "nulls": "last" 1028 } 1029 ], 1030 "isUnique": false, 1031 "concurrently": false, 1032 "method": "btree", 1033 "with": {} 1034 } 1035 }, 1036 "foreignKeys": {}, 1037 "compositePrimaryKeys": {}, 1038 "uniqueConstraints": { 1039 "reactions_author_subject_type_uniq": { 1040 "name": "reactions_author_subject_type_uniq", 1041 "nullsNotDistinct": false, 1042 "columns": ["author_did", "subject_uri", "type"] 1043 } 1044 }, 1045 "policies": { 1046 "tenant_isolation": { 1047 "name": "tenant_isolation", 1048 "as": "PERMISSIVE", 1049 "for": "ALL", 1050 "to": ["barazo_app"], 1051 "using": "community_did = current_setting('app.current_community_did', true)", 1052 "withCheck": "community_did = current_setting('app.current_community_did', true)" 1053 } 1054 }, 1055 "checkConstraints": {}, 1056 "isRLSEnabled": true 1057 }, 1058 "public.votes": { 1059 "name": "votes", 1060 "schema": "", 1061 "columns": { 1062 "uri": { 1063 "name": "uri", 1064 "type": "text", 1065 "primaryKey": true, 1066 "notNull": true 1067 }, 1068 "rkey": { 1069 "name": "rkey", 1070 "type": "text", 1071 "primaryKey": false, 1072 "notNull": true 1073 }, 1074 "author_did": { 1075 "name": "author_did", 1076 "type": "text", 1077 "primaryKey": false, 1078 "notNull": true 1079 }, 1080 "subject_uri": { 1081 "name": "subject_uri", 1082 "type": "text", 1083 "primaryKey": false, 1084 "notNull": true 1085 }, 1086 "subject_cid": { 1087 "name": "subject_cid", 1088 "type": "text", 1089 "primaryKey": false, 1090 "notNull": true 1091 }, 1092 "direction": { 1093 "name": "direction", 1094 "type": "text", 1095 "primaryKey": false, 1096 "notNull": true 1097 }, 1098 "community_did": { 1099 "name": "community_did", 1100 "type": "text", 1101 "primaryKey": false, 1102 "notNull": true 1103 }, 1104 "cid": { 1105 "name": "cid", 1106 "type": "text", 1107 "primaryKey": false, 1108 "notNull": true 1109 }, 1110 "created_at": { 1111 "name": "created_at", 1112 "type": "timestamp with time zone", 1113 "primaryKey": false, 1114 "notNull": true 1115 }, 1116 "indexed_at": { 1117 "name": "indexed_at", 1118 "type": "timestamp with time zone", 1119 "primaryKey": false, 1120 "notNull": true, 1121 "default": "now()" 1122 } 1123 }, 1124 "indexes": { 1125 "votes_author_did_idx": { 1126 "name": "votes_author_did_idx", 1127 "columns": [ 1128 { 1129 "expression": "author_did", 1130 "isExpression": false, 1131 "asc": true, 1132 "nulls": "last" 1133 } 1134 ], 1135 "isUnique": false, 1136 "concurrently": false, 1137 "method": "btree", 1138 "with": {} 1139 }, 1140 "votes_subject_uri_idx": { 1141 "name": "votes_subject_uri_idx", 1142 "columns": [ 1143 { 1144 "expression": "subject_uri", 1145 "isExpression": false, 1146 "asc": true, 1147 "nulls": "last" 1148 } 1149 ], 1150 "isUnique": false, 1151 "concurrently": false, 1152 "method": "btree", 1153 "with": {} 1154 }, 1155 "votes_community_did_idx": { 1156 "name": "votes_community_did_idx", 1157 "columns": [ 1158 { 1159 "expression": "community_did", 1160 "isExpression": false, 1161 "asc": true, 1162 "nulls": "last" 1163 } 1164 ], 1165 "isUnique": false, 1166 "concurrently": false, 1167 "method": "btree", 1168 "with": {} 1169 } 1170 }, 1171 "foreignKeys": {}, 1172 "compositePrimaryKeys": {}, 1173 "uniqueConstraints": { 1174 "votes_author_subject_uniq": { 1175 "name": "votes_author_subject_uniq", 1176 "nullsNotDistinct": false, 1177 "columns": ["author_did", "subject_uri"] 1178 } 1179 }, 1180 "policies": {}, 1181 "checkConstraints": {}, 1182 "isRLSEnabled": false 1183 }, 1184 "public.tracked_repos": { 1185 "name": "tracked_repos", 1186 "schema": "", 1187 "columns": { 1188 "did": { 1189 "name": "did", 1190 "type": "text", 1191 "primaryKey": true, 1192 "notNull": true 1193 }, 1194 "tracked_at": { 1195 "name": "tracked_at", 1196 "type": "timestamp with time zone", 1197 "primaryKey": false, 1198 "notNull": true, 1199 "default": "now()" 1200 } 1201 }, 1202 "indexes": {}, 1203 "foreignKeys": {}, 1204 "compositePrimaryKeys": {}, 1205 "uniqueConstraints": {}, 1206 "policies": {}, 1207 "checkConstraints": {}, 1208 "isRLSEnabled": false 1209 }, 1210 "public.community_settings": { 1211 "name": "community_settings", 1212 "schema": "", 1213 "columns": { 1214 "community_did": { 1215 "name": "community_did", 1216 "type": "text", 1217 "primaryKey": true, 1218 "notNull": true 1219 }, 1220 "domains": { 1221 "name": "domains", 1222 "type": "jsonb", 1223 "primaryKey": false, 1224 "notNull": true, 1225 "default": "'[]'::jsonb" 1226 }, 1227 "initialized": { 1228 "name": "initialized", 1229 "type": "boolean", 1230 "primaryKey": false, 1231 "notNull": true, 1232 "default": false 1233 }, 1234 "admin_did": { 1235 "name": "admin_did", 1236 "type": "text", 1237 "primaryKey": false, 1238 "notNull": false 1239 }, 1240 "community_name": { 1241 "name": "community_name", 1242 "type": "text", 1243 "primaryKey": false, 1244 "notNull": true, 1245 "default": "'Barazo Community'" 1246 }, 1247 "maturity_rating": { 1248 "name": "maturity_rating", 1249 "type": "text", 1250 "primaryKey": false, 1251 "notNull": true, 1252 "default": "'safe'" 1253 }, 1254 "reaction_set": { 1255 "name": "reaction_set", 1256 "type": "jsonb", 1257 "primaryKey": false, 1258 "notNull": true, 1259 "default": "'[\"like\"]'::jsonb" 1260 }, 1261 "moderation_thresholds": { 1262 "name": "moderation_thresholds", 1263 "type": "jsonb", 1264 "primaryKey": false, 1265 "notNull": true, 1266 "default": "'{\"autoBlockReportCount\":5,\"warnThreshold\":3,\"firstPostQueueCount\":0,\"newAccountDays\":7,\"newAccountWriteRatePerMin\":3,\"establishedWriteRatePerMin\":10,\"linkHoldEnabled\":false,\"topicCreationDelayEnabled\":false,\"burstPostCount\":5,\"burstWindowMinutes\":10,\"trustedPostThreshold\":10}'::jsonb" 1267 }, 1268 "word_filter": { 1269 "name": "word_filter", 1270 "type": "jsonb", 1271 "primaryKey": false, 1272 "notNull": true, 1273 "default": "'[]'::jsonb" 1274 }, 1275 "jurisdiction_country": { 1276 "name": "jurisdiction_country", 1277 "type": "text", 1278 "primaryKey": false, 1279 "notNull": false 1280 }, 1281 "age_threshold": { 1282 "name": "age_threshold", 1283 "type": "integer", 1284 "primaryKey": false, 1285 "notNull": true, 1286 "default": 16 1287 }, 1288 "max_reply_depth": { 1289 "name": "max_reply_depth", 1290 "type": "integer", 1291 "primaryKey": false, 1292 "notNull": true, 1293 "default": 9999 1294 }, 1295 "require_login_for_mature": { 1296 "name": "require_login_for_mature", 1297 "type": "boolean", 1298 "primaryKey": false, 1299 "notNull": true, 1300 "default": true 1301 }, 1302 "community_description": { 1303 "name": "community_description", 1304 "type": "text", 1305 "primaryKey": false, 1306 "notNull": false 1307 }, 1308 "handle": { 1309 "name": "handle", 1310 "type": "text", 1311 "primaryKey": false, 1312 "notNull": false 1313 }, 1314 "service_endpoint": { 1315 "name": "service_endpoint", 1316 "type": "text", 1317 "primaryKey": false, 1318 "notNull": false 1319 }, 1320 "signing_key": { 1321 "name": "signing_key", 1322 "type": "text", 1323 "primaryKey": false, 1324 "notNull": false 1325 }, 1326 "rotation_key": { 1327 "name": "rotation_key", 1328 "type": "text", 1329 "primaryKey": false, 1330 "notNull": false 1331 }, 1332 "community_logo_url": { 1333 "name": "community_logo_url", 1334 "type": "text", 1335 "primaryKey": false, 1336 "notNull": false 1337 }, 1338 "favicon_url": { 1339 "name": "favicon_url", 1340 "type": "text", 1341 "primaryKey": false, 1342 "notNull": false 1343 }, 1344 "header_logo_url": { 1345 "name": "header_logo_url", 1346 "type": "text", 1347 "primaryKey": false, 1348 "notNull": false 1349 }, 1350 "show_community_name": { 1351 "name": "show_community_name", 1352 "type": "boolean", 1353 "primaryKey": false, 1354 "notNull": true, 1355 "default": true 1356 }, 1357 "primary_color": { 1358 "name": "primary_color", 1359 "type": "text", 1360 "primaryKey": false, 1361 "notNull": false 1362 }, 1363 "accent_color": { 1364 "name": "accent_color", 1365 "type": "text", 1366 "primaryKey": false, 1367 "notNull": false 1368 }, 1369 "created_at": { 1370 "name": "created_at", 1371 "type": "timestamp with time zone", 1372 "primaryKey": false, 1373 "notNull": true, 1374 "default": "now()" 1375 }, 1376 "updated_at": { 1377 "name": "updated_at", 1378 "type": "timestamp with time zone", 1379 "primaryKey": false, 1380 "notNull": true, 1381 "default": "now()" 1382 } 1383 }, 1384 "indexes": {}, 1385 "foreignKeys": {}, 1386 "compositePrimaryKeys": {}, 1387 "uniqueConstraints": {}, 1388 "policies": { 1389 "tenant_isolation": { 1390 "name": "tenant_isolation", 1391 "as": "PERMISSIVE", 1392 "for": "ALL", 1393 "to": ["barazo_app"], 1394 "using": "community_did = current_setting('app.current_community_did', true)", 1395 "withCheck": "community_did = current_setting('app.current_community_did', true)" 1396 } 1397 }, 1398 "checkConstraints": {}, 1399 "isRLSEnabled": true 1400 }, 1401 "public.categories": { 1402 "name": "categories", 1403 "schema": "", 1404 "columns": { 1405 "id": { 1406 "name": "id", 1407 "type": "text", 1408 "primaryKey": true, 1409 "notNull": true 1410 }, 1411 "slug": { 1412 "name": "slug", 1413 "type": "text", 1414 "primaryKey": false, 1415 "notNull": true 1416 }, 1417 "name": { 1418 "name": "name", 1419 "type": "text", 1420 "primaryKey": false, 1421 "notNull": true 1422 }, 1423 "description": { 1424 "name": "description", 1425 "type": "text", 1426 "primaryKey": false, 1427 "notNull": false 1428 }, 1429 "parent_id": { 1430 "name": "parent_id", 1431 "type": "text", 1432 "primaryKey": false, 1433 "notNull": false 1434 }, 1435 "sort_order": { 1436 "name": "sort_order", 1437 "type": "integer", 1438 "primaryKey": false, 1439 "notNull": true, 1440 "default": 0 1441 }, 1442 "community_did": { 1443 "name": "community_did", 1444 "type": "text", 1445 "primaryKey": false, 1446 "notNull": true 1447 }, 1448 "maturity_rating": { 1449 "name": "maturity_rating", 1450 "type": "text", 1451 "primaryKey": false, 1452 "notNull": true, 1453 "default": "'safe'" 1454 }, 1455 "created_at": { 1456 "name": "created_at", 1457 "type": "timestamp with time zone", 1458 "primaryKey": false, 1459 "notNull": true, 1460 "default": "now()" 1461 }, 1462 "updated_at": { 1463 "name": "updated_at", 1464 "type": "timestamp with time zone", 1465 "primaryKey": false, 1466 "notNull": true, 1467 "default": "now()" 1468 } 1469 }, 1470 "indexes": { 1471 "categories_slug_community_did_idx": { 1472 "name": "categories_slug_community_did_idx", 1473 "columns": [ 1474 { 1475 "expression": "slug", 1476 "isExpression": false, 1477 "asc": true, 1478 "nulls": "last" 1479 }, 1480 { 1481 "expression": "community_did", 1482 "isExpression": false, 1483 "asc": true, 1484 "nulls": "last" 1485 } 1486 ], 1487 "isUnique": true, 1488 "concurrently": false, 1489 "method": "btree", 1490 "with": {} 1491 }, 1492 "categories_parent_id_idx": { 1493 "name": "categories_parent_id_idx", 1494 "columns": [ 1495 { 1496 "expression": "parent_id", 1497 "isExpression": false, 1498 "asc": true, 1499 "nulls": "last" 1500 } 1501 ], 1502 "isUnique": false, 1503 "concurrently": false, 1504 "method": "btree", 1505 "with": {} 1506 }, 1507 "categories_community_did_idx": { 1508 "name": "categories_community_did_idx", 1509 "columns": [ 1510 { 1511 "expression": "community_did", 1512 "isExpression": false, 1513 "asc": true, 1514 "nulls": "last" 1515 } 1516 ], 1517 "isUnique": false, 1518 "concurrently": false, 1519 "method": "btree", 1520 "with": {} 1521 }, 1522 "categories_maturity_rating_idx": { 1523 "name": "categories_maturity_rating_idx", 1524 "columns": [ 1525 { 1526 "expression": "maturity_rating", 1527 "isExpression": false, 1528 "asc": true, 1529 "nulls": "last" 1530 } 1531 ], 1532 "isUnique": false, 1533 "concurrently": false, 1534 "method": "btree", 1535 "with": {} 1536 } 1537 }, 1538 "foreignKeys": { 1539 "categories_parent_id_fk": { 1540 "name": "categories_parent_id_fk", 1541 "tableFrom": "categories", 1542 "tableTo": "categories", 1543 "columnsFrom": ["parent_id"], 1544 "columnsTo": ["id"], 1545 "onDelete": "set null", 1546 "onUpdate": "no action" 1547 } 1548 }, 1549 "compositePrimaryKeys": {}, 1550 "uniqueConstraints": {}, 1551 "policies": { 1552 "tenant_isolation": { 1553 "name": "tenant_isolation", 1554 "as": "PERMISSIVE", 1555 "for": "ALL", 1556 "to": ["barazo_app"], 1557 "using": "community_did = current_setting('app.current_community_did', true)", 1558 "withCheck": "community_did = current_setting('app.current_community_did', true)" 1559 } 1560 }, 1561 "checkConstraints": {}, 1562 "isRLSEnabled": true 1563 }, 1564 "public.moderation_actions": { 1565 "name": "moderation_actions", 1566 "schema": "", 1567 "columns": { 1568 "id": { 1569 "name": "id", 1570 "type": "serial", 1571 "primaryKey": true, 1572 "notNull": true 1573 }, 1574 "action": { 1575 "name": "action", 1576 "type": "text", 1577 "primaryKey": false, 1578 "notNull": true 1579 }, 1580 "target_uri": { 1581 "name": "target_uri", 1582 "type": "text", 1583 "primaryKey": false, 1584 "notNull": false 1585 }, 1586 "target_did": { 1587 "name": "target_did", 1588 "type": "text", 1589 "primaryKey": false, 1590 "notNull": false 1591 }, 1592 "moderator_did": { 1593 "name": "moderator_did", 1594 "type": "text", 1595 "primaryKey": false, 1596 "notNull": true 1597 }, 1598 "community_did": { 1599 "name": "community_did", 1600 "type": "text", 1601 "primaryKey": false, 1602 "notNull": true 1603 }, 1604 "reason": { 1605 "name": "reason", 1606 "type": "text", 1607 "primaryKey": false, 1608 "notNull": false 1609 }, 1610 "created_at": { 1611 "name": "created_at", 1612 "type": "timestamp with time zone", 1613 "primaryKey": false, 1614 "notNull": true, 1615 "default": "now()" 1616 } 1617 }, 1618 "indexes": { 1619 "mod_actions_moderator_did_idx": { 1620 "name": "mod_actions_moderator_did_idx", 1621 "columns": [ 1622 { 1623 "expression": "moderator_did", 1624 "isExpression": false, 1625 "asc": true, 1626 "nulls": "last" 1627 } 1628 ], 1629 "isUnique": false, 1630 "concurrently": false, 1631 "method": "btree", 1632 "with": {} 1633 }, 1634 "mod_actions_community_did_idx": { 1635 "name": "mod_actions_community_did_idx", 1636 "columns": [ 1637 { 1638 "expression": "community_did", 1639 "isExpression": false, 1640 "asc": true, 1641 "nulls": "last" 1642 } 1643 ], 1644 "isUnique": false, 1645 "concurrently": false, 1646 "method": "btree", 1647 "with": {} 1648 }, 1649 "mod_actions_created_at_idx": { 1650 "name": "mod_actions_created_at_idx", 1651 "columns": [ 1652 { 1653 "expression": "created_at", 1654 "isExpression": false, 1655 "asc": true, 1656 "nulls": "last" 1657 } 1658 ], 1659 "isUnique": false, 1660 "concurrently": false, 1661 "method": "btree", 1662 "with": {} 1663 }, 1664 "mod_actions_target_uri_idx": { 1665 "name": "mod_actions_target_uri_idx", 1666 "columns": [ 1667 { 1668 "expression": "target_uri", 1669 "isExpression": false, 1670 "asc": true, 1671 "nulls": "last" 1672 } 1673 ], 1674 "isUnique": false, 1675 "concurrently": false, 1676 "method": "btree", 1677 "with": {} 1678 }, 1679 "mod_actions_target_did_idx": { 1680 "name": "mod_actions_target_did_idx", 1681 "columns": [ 1682 { 1683 "expression": "target_did", 1684 "isExpression": false, 1685 "asc": true, 1686 "nulls": "last" 1687 } 1688 ], 1689 "isUnique": false, 1690 "concurrently": false, 1691 "method": "btree", 1692 "with": {} 1693 } 1694 }, 1695 "foreignKeys": {}, 1696 "compositePrimaryKeys": {}, 1697 "uniqueConstraints": {}, 1698 "policies": { 1699 "tenant_isolation": { 1700 "name": "tenant_isolation", 1701 "as": "PERMISSIVE", 1702 "for": "ALL", 1703 "to": ["barazo_app"], 1704 "using": "community_did = current_setting('app.current_community_did', true)", 1705 "withCheck": "community_did = current_setting('app.current_community_did', true)" 1706 } 1707 }, 1708 "checkConstraints": {}, 1709 "isRLSEnabled": true 1710 }, 1711 "public.reports": { 1712 "name": "reports", 1713 "schema": "", 1714 "columns": { 1715 "id": { 1716 "name": "id", 1717 "type": "serial", 1718 "primaryKey": true, 1719 "notNull": true 1720 }, 1721 "reporter_did": { 1722 "name": "reporter_did", 1723 "type": "text", 1724 "primaryKey": false, 1725 "notNull": true 1726 }, 1727 "target_uri": { 1728 "name": "target_uri", 1729 "type": "text", 1730 "primaryKey": false, 1731 "notNull": true 1732 }, 1733 "target_did": { 1734 "name": "target_did", 1735 "type": "text", 1736 "primaryKey": false, 1737 "notNull": true 1738 }, 1739 "reason_type": { 1740 "name": "reason_type", 1741 "type": "text", 1742 "primaryKey": false, 1743 "notNull": true 1744 }, 1745 "description": { 1746 "name": "description", 1747 "type": "text", 1748 "primaryKey": false, 1749 "notNull": false 1750 }, 1751 "community_did": { 1752 "name": "community_did", 1753 "type": "text", 1754 "primaryKey": false, 1755 "notNull": true 1756 }, 1757 "status": { 1758 "name": "status", 1759 "type": "text", 1760 "primaryKey": false, 1761 "notNull": true, 1762 "default": "'pending'" 1763 }, 1764 "resolution_type": { 1765 "name": "resolution_type", 1766 "type": "text", 1767 "primaryKey": false, 1768 "notNull": false 1769 }, 1770 "resolved_by": { 1771 "name": "resolved_by", 1772 "type": "text", 1773 "primaryKey": false, 1774 "notNull": false 1775 }, 1776 "resolved_at": { 1777 "name": "resolved_at", 1778 "type": "timestamp with time zone", 1779 "primaryKey": false, 1780 "notNull": false 1781 }, 1782 "appeal_reason": { 1783 "name": "appeal_reason", 1784 "type": "text", 1785 "primaryKey": false, 1786 "notNull": false 1787 }, 1788 "appealed_at": { 1789 "name": "appealed_at", 1790 "type": "timestamp with time zone", 1791 "primaryKey": false, 1792 "notNull": false 1793 }, 1794 "appeal_status": { 1795 "name": "appeal_status", 1796 "type": "text", 1797 "primaryKey": false, 1798 "notNull": true, 1799 "default": "'none'" 1800 }, 1801 "created_at": { 1802 "name": "created_at", 1803 "type": "timestamp with time zone", 1804 "primaryKey": false, 1805 "notNull": true, 1806 "default": "now()" 1807 } 1808 }, 1809 "indexes": { 1810 "reports_reporter_did_idx": { 1811 "name": "reports_reporter_did_idx", 1812 "columns": [ 1813 { 1814 "expression": "reporter_did", 1815 "isExpression": false, 1816 "asc": true, 1817 "nulls": "last" 1818 } 1819 ], 1820 "isUnique": false, 1821 "concurrently": false, 1822 "method": "btree", 1823 "with": {} 1824 }, 1825 "reports_target_uri_idx": { 1826 "name": "reports_target_uri_idx", 1827 "columns": [ 1828 { 1829 "expression": "target_uri", 1830 "isExpression": false, 1831 "asc": true, 1832 "nulls": "last" 1833 } 1834 ], 1835 "isUnique": false, 1836 "concurrently": false, 1837 "method": "btree", 1838 "with": {} 1839 }, 1840 "reports_target_did_idx": { 1841 "name": "reports_target_did_idx", 1842 "columns": [ 1843 { 1844 "expression": "target_did", 1845 "isExpression": false, 1846 "asc": true, 1847 "nulls": "last" 1848 } 1849 ], 1850 "isUnique": false, 1851 "concurrently": false, 1852 "method": "btree", 1853 "with": {} 1854 }, 1855 "reports_community_did_idx": { 1856 "name": "reports_community_did_idx", 1857 "columns": [ 1858 { 1859 "expression": "community_did", 1860 "isExpression": false, 1861 "asc": true, 1862 "nulls": "last" 1863 } 1864 ], 1865 "isUnique": false, 1866 "concurrently": false, 1867 "method": "btree", 1868 "with": {} 1869 }, 1870 "reports_status_idx": { 1871 "name": "reports_status_idx", 1872 "columns": [ 1873 { 1874 "expression": "status", 1875 "isExpression": false, 1876 "asc": true, 1877 "nulls": "last" 1878 } 1879 ], 1880 "isUnique": false, 1881 "concurrently": false, 1882 "method": "btree", 1883 "with": {} 1884 }, 1885 "reports_created_at_idx": { 1886 "name": "reports_created_at_idx", 1887 "columns": [ 1888 { 1889 "expression": "created_at", 1890 "isExpression": false, 1891 "asc": true, 1892 "nulls": "last" 1893 } 1894 ], 1895 "isUnique": false, 1896 "concurrently": false, 1897 "method": "btree", 1898 "with": {} 1899 }, 1900 "reports_unique_reporter_target_idx": { 1901 "name": "reports_unique_reporter_target_idx", 1902 "columns": [ 1903 { 1904 "expression": "reporter_did", 1905 "isExpression": false, 1906 "asc": true, 1907 "nulls": "last" 1908 }, 1909 { 1910 "expression": "target_uri", 1911 "isExpression": false, 1912 "asc": true, 1913 "nulls": "last" 1914 }, 1915 { 1916 "expression": "community_did", 1917 "isExpression": false, 1918 "asc": true, 1919 "nulls": "last" 1920 } 1921 ], 1922 "isUnique": true, 1923 "concurrently": false, 1924 "method": "btree", 1925 "with": {} 1926 } 1927 }, 1928 "foreignKeys": {}, 1929 "compositePrimaryKeys": {}, 1930 "uniqueConstraints": {}, 1931 "policies": { 1932 "tenant_isolation": { 1933 "name": "tenant_isolation", 1934 "as": "PERMISSIVE", 1935 "for": "ALL", 1936 "to": ["barazo_app"], 1937 "using": "community_did = current_setting('app.current_community_did', true)", 1938 "withCheck": "community_did = current_setting('app.current_community_did', true)" 1939 } 1940 }, 1941 "checkConstraints": {}, 1942 "isRLSEnabled": true 1943 }, 1944 "public.notifications": { 1945 "name": "notifications", 1946 "schema": "", 1947 "columns": { 1948 "id": { 1949 "name": "id", 1950 "type": "serial", 1951 "primaryKey": true, 1952 "notNull": true 1953 }, 1954 "recipient_did": { 1955 "name": "recipient_did", 1956 "type": "text", 1957 "primaryKey": false, 1958 "notNull": true 1959 }, 1960 "type": { 1961 "name": "type", 1962 "type": "text", 1963 "primaryKey": false, 1964 "notNull": true 1965 }, 1966 "subject_uri": { 1967 "name": "subject_uri", 1968 "type": "text", 1969 "primaryKey": false, 1970 "notNull": true 1971 }, 1972 "actor_did": { 1973 "name": "actor_did", 1974 "type": "text", 1975 "primaryKey": false, 1976 "notNull": true 1977 }, 1978 "community_did": { 1979 "name": "community_did", 1980 "type": "text", 1981 "primaryKey": false, 1982 "notNull": true 1983 }, 1984 "read": { 1985 "name": "read", 1986 "type": "boolean", 1987 "primaryKey": false, 1988 "notNull": true, 1989 "default": false 1990 }, 1991 "created_at": { 1992 "name": "created_at", 1993 "type": "timestamp with time zone", 1994 "primaryKey": false, 1995 "notNull": true, 1996 "default": "now()" 1997 } 1998 }, 1999 "indexes": { 2000 "notifications_recipient_did_idx": { 2001 "name": "notifications_recipient_did_idx", 2002 "columns": [ 2003 { 2004 "expression": "recipient_did", 2005 "isExpression": false, 2006 "asc": true, 2007 "nulls": "last" 2008 } 2009 ], 2010 "isUnique": false, 2011 "concurrently": false, 2012 "method": "btree", 2013 "with": {} 2014 }, 2015 "notifications_recipient_read_idx": { 2016 "name": "notifications_recipient_read_idx", 2017 "columns": [ 2018 { 2019 "expression": "recipient_did", 2020 "isExpression": false, 2021 "asc": true, 2022 "nulls": "last" 2023 }, 2024 { 2025 "expression": "read", 2026 "isExpression": false, 2027 "asc": true, 2028 "nulls": "last" 2029 } 2030 ], 2031 "isUnique": false, 2032 "concurrently": false, 2033 "method": "btree", 2034 "with": {} 2035 }, 2036 "notifications_created_at_idx": { 2037 "name": "notifications_created_at_idx", 2038 "columns": [ 2039 { 2040 "expression": "created_at", 2041 "isExpression": false, 2042 "asc": true, 2043 "nulls": "last" 2044 } 2045 ], 2046 "isUnique": false, 2047 "concurrently": false, 2048 "method": "btree", 2049 "with": {} 2050 } 2051 }, 2052 "foreignKeys": {}, 2053 "compositePrimaryKeys": {}, 2054 "uniqueConstraints": {}, 2055 "policies": { 2056 "tenant_isolation": { 2057 "name": "tenant_isolation", 2058 "as": "PERMISSIVE", 2059 "for": "ALL", 2060 "to": ["barazo_app"], 2061 "using": "community_did = current_setting('app.current_community_did', true)", 2062 "withCheck": "community_did = current_setting('app.current_community_did', true)" 2063 } 2064 }, 2065 "checkConstraints": {}, 2066 "isRLSEnabled": true 2067 }, 2068 "public.user_community_preferences": { 2069 "name": "user_community_preferences", 2070 "schema": "", 2071 "columns": { 2072 "did": { 2073 "name": "did", 2074 "type": "text", 2075 "primaryKey": false, 2076 "notNull": true 2077 }, 2078 "community_did": { 2079 "name": "community_did", 2080 "type": "text", 2081 "primaryKey": false, 2082 "notNull": true 2083 }, 2084 "maturity_override": { 2085 "name": "maturity_override", 2086 "type": "text", 2087 "primaryKey": false, 2088 "notNull": false 2089 }, 2090 "muted_words": { 2091 "name": "muted_words", 2092 "type": "jsonb", 2093 "primaryKey": false, 2094 "notNull": false 2095 }, 2096 "blocked_dids": { 2097 "name": "blocked_dids", 2098 "type": "jsonb", 2099 "primaryKey": false, 2100 "notNull": false 2101 }, 2102 "muted_dids": { 2103 "name": "muted_dids", 2104 "type": "jsonb", 2105 "primaryKey": false, 2106 "notNull": false 2107 }, 2108 "notification_prefs": { 2109 "name": "notification_prefs", 2110 "type": "jsonb", 2111 "primaryKey": false, 2112 "notNull": false 2113 }, 2114 "updated_at": { 2115 "name": "updated_at", 2116 "type": "timestamp with time zone", 2117 "primaryKey": false, 2118 "notNull": true, 2119 "default": "now()" 2120 } 2121 }, 2122 "indexes": { 2123 "user_community_prefs_did_idx": { 2124 "name": "user_community_prefs_did_idx", 2125 "columns": [ 2126 { 2127 "expression": "did", 2128 "isExpression": false, 2129 "asc": true, 2130 "nulls": "last" 2131 } 2132 ], 2133 "isUnique": false, 2134 "concurrently": false, 2135 "method": "btree", 2136 "with": {} 2137 }, 2138 "user_community_prefs_community_idx": { 2139 "name": "user_community_prefs_community_idx", 2140 "columns": [ 2141 { 2142 "expression": "community_did", 2143 "isExpression": false, 2144 "asc": true, 2145 "nulls": "last" 2146 } 2147 ], 2148 "isUnique": false, 2149 "concurrently": false, 2150 "method": "btree", 2151 "with": {} 2152 } 2153 }, 2154 "foreignKeys": {}, 2155 "compositePrimaryKeys": { 2156 "user_community_preferences_did_community_did_pk": { 2157 "name": "user_community_preferences_did_community_did_pk", 2158 "columns": ["did", "community_did"] 2159 } 2160 }, 2161 "uniqueConstraints": {}, 2162 "policies": { 2163 "tenant_isolation": { 2164 "name": "tenant_isolation", 2165 "as": "PERMISSIVE", 2166 "for": "ALL", 2167 "to": ["barazo_app"], 2168 "using": "community_did = current_setting('app.current_community_did', true)", 2169 "withCheck": "community_did = current_setting('app.current_community_did', true)" 2170 } 2171 }, 2172 "checkConstraints": {}, 2173 "isRLSEnabled": true 2174 }, 2175 "public.user_preferences": { 2176 "name": "user_preferences", 2177 "schema": "", 2178 "columns": { 2179 "did": { 2180 "name": "did", 2181 "type": "text", 2182 "primaryKey": true, 2183 "notNull": true 2184 }, 2185 "maturity_level": { 2186 "name": "maturity_level", 2187 "type": "text", 2188 "primaryKey": false, 2189 "notNull": true, 2190 "default": "'sfw'" 2191 }, 2192 "declared_age": { 2193 "name": "declared_age", 2194 "type": "integer", 2195 "primaryKey": false, 2196 "notNull": false 2197 }, 2198 "muted_words": { 2199 "name": "muted_words", 2200 "type": "jsonb", 2201 "primaryKey": false, 2202 "notNull": true, 2203 "default": "'[]'::jsonb" 2204 }, 2205 "blocked_dids": { 2206 "name": "blocked_dids", 2207 "type": "jsonb", 2208 "primaryKey": false, 2209 "notNull": true, 2210 "default": "'[]'::jsonb" 2211 }, 2212 "muted_dids": { 2213 "name": "muted_dids", 2214 "type": "jsonb", 2215 "primaryKey": false, 2216 "notNull": true, 2217 "default": "'[]'::jsonb" 2218 }, 2219 "cross_post_bluesky": { 2220 "name": "cross_post_bluesky", 2221 "type": "boolean", 2222 "primaryKey": false, 2223 "notNull": true, 2224 "default": false 2225 }, 2226 "cross_post_frontpage": { 2227 "name": "cross_post_frontpage", 2228 "type": "boolean", 2229 "primaryKey": false, 2230 "notNull": true, 2231 "default": false 2232 }, 2233 "cross_post_scopes_granted": { 2234 "name": "cross_post_scopes_granted", 2235 "type": "boolean", 2236 "primaryKey": false, 2237 "notNull": true, 2238 "default": false 2239 }, 2240 "updated_at": { 2241 "name": "updated_at", 2242 "type": "timestamp with time zone", 2243 "primaryKey": false, 2244 "notNull": true, 2245 "default": "now()" 2246 } 2247 }, 2248 "indexes": {}, 2249 "foreignKeys": {}, 2250 "compositePrimaryKeys": {}, 2251 "uniqueConstraints": {}, 2252 "policies": {}, 2253 "checkConstraints": {}, 2254 "isRLSEnabled": false 2255 }, 2256 "public.cross_posts": { 2257 "name": "cross_posts", 2258 "schema": "", 2259 "columns": { 2260 "id": { 2261 "name": "id", 2262 "type": "text", 2263 "primaryKey": true, 2264 "notNull": true 2265 }, 2266 "topic_uri": { 2267 "name": "topic_uri", 2268 "type": "text", 2269 "primaryKey": false, 2270 "notNull": true 2271 }, 2272 "service": { 2273 "name": "service", 2274 "type": "text", 2275 "primaryKey": false, 2276 "notNull": true 2277 }, 2278 "cross_post_uri": { 2279 "name": "cross_post_uri", 2280 "type": "text", 2281 "primaryKey": false, 2282 "notNull": true 2283 }, 2284 "cross_post_cid": { 2285 "name": "cross_post_cid", 2286 "type": "text", 2287 "primaryKey": false, 2288 "notNull": true 2289 }, 2290 "author_did": { 2291 "name": "author_did", 2292 "type": "text", 2293 "primaryKey": false, 2294 "notNull": true 2295 }, 2296 "created_at": { 2297 "name": "created_at", 2298 "type": "timestamp with time zone", 2299 "primaryKey": false, 2300 "notNull": true, 2301 "default": "now()" 2302 } 2303 }, 2304 "indexes": { 2305 "cross_posts_topic_uri_idx": { 2306 "name": "cross_posts_topic_uri_idx", 2307 "columns": [ 2308 { 2309 "expression": "topic_uri", 2310 "isExpression": false, 2311 "asc": true, 2312 "nulls": "last" 2313 } 2314 ], 2315 "isUnique": false, 2316 "concurrently": false, 2317 "method": "btree", 2318 "with": {} 2319 }, 2320 "cross_posts_author_did_idx": { 2321 "name": "cross_posts_author_did_idx", 2322 "columns": [ 2323 { 2324 "expression": "author_did", 2325 "isExpression": false, 2326 "asc": true, 2327 "nulls": "last" 2328 } 2329 ], 2330 "isUnique": false, 2331 "concurrently": false, 2332 "method": "btree", 2333 "with": {} 2334 } 2335 }, 2336 "foreignKeys": {}, 2337 "compositePrimaryKeys": {}, 2338 "uniqueConstraints": {}, 2339 "policies": {}, 2340 "checkConstraints": {}, 2341 "isRLSEnabled": false 2342 }, 2343 "public.community_onboarding_fields": { 2344 "name": "community_onboarding_fields", 2345 "schema": "", 2346 "columns": { 2347 "id": { 2348 "name": "id", 2349 "type": "text", 2350 "primaryKey": true, 2351 "notNull": true 2352 }, 2353 "community_did": { 2354 "name": "community_did", 2355 "type": "text", 2356 "primaryKey": false, 2357 "notNull": true 2358 }, 2359 "field_type": { 2360 "name": "field_type", 2361 "type": "text", 2362 "primaryKey": false, 2363 "notNull": true 2364 }, 2365 "label": { 2366 "name": "label", 2367 "type": "text", 2368 "primaryKey": false, 2369 "notNull": true 2370 }, 2371 "description": { 2372 "name": "description", 2373 "type": "text", 2374 "primaryKey": false, 2375 "notNull": false 2376 }, 2377 "is_mandatory": { 2378 "name": "is_mandatory", 2379 "type": "boolean", 2380 "primaryKey": false, 2381 "notNull": true, 2382 "default": true 2383 }, 2384 "sort_order": { 2385 "name": "sort_order", 2386 "type": "integer", 2387 "primaryKey": false, 2388 "notNull": true, 2389 "default": 0 2390 }, 2391 "source": { 2392 "name": "source", 2393 "type": "text", 2394 "primaryKey": false, 2395 "notNull": true, 2396 "default": "'admin'" 2397 }, 2398 "config": { 2399 "name": "config", 2400 "type": "jsonb", 2401 "primaryKey": false, 2402 "notNull": false 2403 }, 2404 "created_at": { 2405 "name": "created_at", 2406 "type": "timestamp with time zone", 2407 "primaryKey": false, 2408 "notNull": true, 2409 "default": "now()" 2410 }, 2411 "updated_at": { 2412 "name": "updated_at", 2413 "type": "timestamp with time zone", 2414 "primaryKey": false, 2415 "notNull": true, 2416 "default": "now()" 2417 } 2418 }, 2419 "indexes": { 2420 "onboarding_fields_community_idx": { 2421 "name": "onboarding_fields_community_idx", 2422 "columns": [ 2423 { 2424 "expression": "community_did", 2425 "isExpression": false, 2426 "asc": true, 2427 "nulls": "last" 2428 } 2429 ], 2430 "isUnique": false, 2431 "concurrently": false, 2432 "method": "btree", 2433 "with": {} 2434 } 2435 }, 2436 "foreignKeys": {}, 2437 "compositePrimaryKeys": {}, 2438 "uniqueConstraints": {}, 2439 "policies": { 2440 "tenant_isolation": { 2441 "name": "tenant_isolation", 2442 "as": "PERMISSIVE", 2443 "for": "ALL", 2444 "to": ["barazo_app"], 2445 "using": "community_did = current_setting('app.current_community_did', true)", 2446 "withCheck": "community_did = current_setting('app.current_community_did', true)" 2447 } 2448 }, 2449 "checkConstraints": {}, 2450 "isRLSEnabled": true 2451 }, 2452 "public.user_onboarding_responses": { 2453 "name": "user_onboarding_responses", 2454 "schema": "", 2455 "columns": { 2456 "did": { 2457 "name": "did", 2458 "type": "text", 2459 "primaryKey": false, 2460 "notNull": true 2461 }, 2462 "community_did": { 2463 "name": "community_did", 2464 "type": "text", 2465 "primaryKey": false, 2466 "notNull": true 2467 }, 2468 "field_id": { 2469 "name": "field_id", 2470 "type": "text", 2471 "primaryKey": false, 2472 "notNull": true 2473 }, 2474 "response": { 2475 "name": "response", 2476 "type": "jsonb", 2477 "primaryKey": false, 2478 "notNull": true 2479 }, 2480 "completed_at": { 2481 "name": "completed_at", 2482 "type": "timestamp with time zone", 2483 "primaryKey": false, 2484 "notNull": true, 2485 "default": "now()" 2486 } 2487 }, 2488 "indexes": { 2489 "onboarding_responses_did_community_idx": { 2490 "name": "onboarding_responses_did_community_idx", 2491 "columns": [ 2492 { 2493 "expression": "did", 2494 "isExpression": false, 2495 "asc": true, 2496 "nulls": "last" 2497 }, 2498 { 2499 "expression": "community_did", 2500 "isExpression": false, 2501 "asc": true, 2502 "nulls": "last" 2503 } 2504 ], 2505 "isUnique": false, 2506 "concurrently": false, 2507 "method": "btree", 2508 "with": {} 2509 } 2510 }, 2511 "foreignKeys": {}, 2512 "compositePrimaryKeys": { 2513 "user_onboarding_responses_did_community_did_field_id_pk": { 2514 "name": "user_onboarding_responses_did_community_did_field_id_pk", 2515 "columns": ["did", "community_did", "field_id"] 2516 } 2517 }, 2518 "uniqueConstraints": {}, 2519 "policies": { 2520 "tenant_isolation": { 2521 "name": "tenant_isolation", 2522 "as": "PERMISSIVE", 2523 "for": "ALL", 2524 "to": ["barazo_app"], 2525 "using": "community_did = current_setting('app.current_community_did', true)", 2526 "withCheck": "community_did = current_setting('app.current_community_did', true)" 2527 } 2528 }, 2529 "checkConstraints": {}, 2530 "isRLSEnabled": true 2531 }, 2532 "public.moderation_queue": { 2533 "name": "moderation_queue", 2534 "schema": "", 2535 "columns": { 2536 "id": { 2537 "name": "id", 2538 "type": "serial", 2539 "primaryKey": true, 2540 "notNull": true 2541 }, 2542 "content_uri": { 2543 "name": "content_uri", 2544 "type": "text", 2545 "primaryKey": false, 2546 "notNull": true 2547 }, 2548 "content_type": { 2549 "name": "content_type", 2550 "type": "text", 2551 "primaryKey": false, 2552 "notNull": true 2553 }, 2554 "author_did": { 2555 "name": "author_did", 2556 "type": "text", 2557 "primaryKey": false, 2558 "notNull": true 2559 }, 2560 "community_did": { 2561 "name": "community_did", 2562 "type": "text", 2563 "primaryKey": false, 2564 "notNull": true 2565 }, 2566 "queue_reason": { 2567 "name": "queue_reason", 2568 "type": "text", 2569 "primaryKey": false, 2570 "notNull": true 2571 }, 2572 "matched_words": { 2573 "name": "matched_words", 2574 "type": "jsonb", 2575 "primaryKey": false, 2576 "notNull": false 2577 }, 2578 "status": { 2579 "name": "status", 2580 "type": "text", 2581 "primaryKey": false, 2582 "notNull": true, 2583 "default": "'pending'" 2584 }, 2585 "reviewed_by": { 2586 "name": "reviewed_by", 2587 "type": "text", 2588 "primaryKey": false, 2589 "notNull": false 2590 }, 2591 "created_at": { 2592 "name": "created_at", 2593 "type": "timestamp with time zone", 2594 "primaryKey": false, 2595 "notNull": true, 2596 "default": "now()" 2597 }, 2598 "reviewed_at": { 2599 "name": "reviewed_at", 2600 "type": "timestamp with time zone", 2601 "primaryKey": false, 2602 "notNull": false 2603 } 2604 }, 2605 "indexes": { 2606 "mod_queue_author_did_idx": { 2607 "name": "mod_queue_author_did_idx", 2608 "columns": [ 2609 { 2610 "expression": "author_did", 2611 "isExpression": false, 2612 "asc": true, 2613 "nulls": "last" 2614 } 2615 ], 2616 "isUnique": false, 2617 "concurrently": false, 2618 "method": "btree", 2619 "with": {} 2620 }, 2621 "mod_queue_community_did_idx": { 2622 "name": "mod_queue_community_did_idx", 2623 "columns": [ 2624 { 2625 "expression": "community_did", 2626 "isExpression": false, 2627 "asc": true, 2628 "nulls": "last" 2629 } 2630 ], 2631 "isUnique": false, 2632 "concurrently": false, 2633 "method": "btree", 2634 "with": {} 2635 }, 2636 "mod_queue_status_idx": { 2637 "name": "mod_queue_status_idx", 2638 "columns": [ 2639 { 2640 "expression": "status", 2641 "isExpression": false, 2642 "asc": true, 2643 "nulls": "last" 2644 } 2645 ], 2646 "isUnique": false, 2647 "concurrently": false, 2648 "method": "btree", 2649 "with": {} 2650 }, 2651 "mod_queue_created_at_idx": { 2652 "name": "mod_queue_created_at_idx", 2653 "columns": [ 2654 { 2655 "expression": "created_at", 2656 "isExpression": false, 2657 "asc": true, 2658 "nulls": "last" 2659 } 2660 ], 2661 "isUnique": false, 2662 "concurrently": false, 2663 "method": "btree", 2664 "with": {} 2665 }, 2666 "mod_queue_content_uri_idx": { 2667 "name": "mod_queue_content_uri_idx", 2668 "columns": [ 2669 { 2670 "expression": "content_uri", 2671 "isExpression": false, 2672 "asc": true, 2673 "nulls": "last" 2674 } 2675 ], 2676 "isUnique": false, 2677 "concurrently": false, 2678 "method": "btree", 2679 "with": {} 2680 } 2681 }, 2682 "foreignKeys": {}, 2683 "compositePrimaryKeys": {}, 2684 "uniqueConstraints": {}, 2685 "policies": { 2686 "tenant_isolation": { 2687 "name": "tenant_isolation", 2688 "as": "PERMISSIVE", 2689 "for": "ALL", 2690 "to": ["barazo_app"], 2691 "using": "community_did = current_setting('app.current_community_did', true)", 2692 "withCheck": "community_did = current_setting('app.current_community_did', true)" 2693 } 2694 }, 2695 "checkConstraints": {}, 2696 "isRLSEnabled": true 2697 }, 2698 "public.account_trust": { 2699 "name": "account_trust", 2700 "schema": "", 2701 "columns": { 2702 "id": { 2703 "name": "id", 2704 "type": "serial", 2705 "primaryKey": true, 2706 "notNull": true 2707 }, 2708 "did": { 2709 "name": "did", 2710 "type": "text", 2711 "primaryKey": false, 2712 "notNull": true 2713 }, 2714 "community_did": { 2715 "name": "community_did", 2716 "type": "text", 2717 "primaryKey": false, 2718 "notNull": true 2719 }, 2720 "approved_post_count": { 2721 "name": "approved_post_count", 2722 "type": "integer", 2723 "primaryKey": false, 2724 "notNull": true, 2725 "default": 0 2726 }, 2727 "is_trusted": { 2728 "name": "is_trusted", 2729 "type": "boolean", 2730 "primaryKey": false, 2731 "notNull": true, 2732 "default": false 2733 }, 2734 "trusted_at": { 2735 "name": "trusted_at", 2736 "type": "timestamp with time zone", 2737 "primaryKey": false, 2738 "notNull": false 2739 } 2740 }, 2741 "indexes": { 2742 "account_trust_did_community_idx": { 2743 "name": "account_trust_did_community_idx", 2744 "columns": [ 2745 { 2746 "expression": "did", 2747 "isExpression": false, 2748 "asc": true, 2749 "nulls": "last" 2750 }, 2751 { 2752 "expression": "community_did", 2753 "isExpression": false, 2754 "asc": true, 2755 "nulls": "last" 2756 } 2757 ], 2758 "isUnique": true, 2759 "concurrently": false, 2760 "method": "btree", 2761 "with": {} 2762 }, 2763 "account_trust_did_idx": { 2764 "name": "account_trust_did_idx", 2765 "columns": [ 2766 { 2767 "expression": "did", 2768 "isExpression": false, 2769 "asc": true, 2770 "nulls": "last" 2771 } 2772 ], 2773 "isUnique": false, 2774 "concurrently": false, 2775 "method": "btree", 2776 "with": {} 2777 } 2778 }, 2779 "foreignKeys": {}, 2780 "compositePrimaryKeys": {}, 2781 "uniqueConstraints": {}, 2782 "policies": { 2783 "tenant_isolation": { 2784 "name": "tenant_isolation", 2785 "as": "PERMISSIVE", 2786 "for": "ALL", 2787 "to": ["barazo_app"], 2788 "using": "community_did = current_setting('app.current_community_did', true)", 2789 "withCheck": "community_did = current_setting('app.current_community_did', true)" 2790 } 2791 }, 2792 "checkConstraints": {}, 2793 "isRLSEnabled": true 2794 }, 2795 "public.community_filters": { 2796 "name": "community_filters", 2797 "schema": "", 2798 "columns": { 2799 "community_did": { 2800 "name": "community_did", 2801 "type": "text", 2802 "primaryKey": true, 2803 "notNull": true 2804 }, 2805 "status": { 2806 "name": "status", 2807 "type": "text", 2808 "primaryKey": false, 2809 "notNull": true, 2810 "default": "'active'" 2811 }, 2812 "admin_did": { 2813 "name": "admin_did", 2814 "type": "text", 2815 "primaryKey": false, 2816 "notNull": false 2817 }, 2818 "reason": { 2819 "name": "reason", 2820 "type": "text", 2821 "primaryKey": false, 2822 "notNull": false 2823 }, 2824 "report_count": { 2825 "name": "report_count", 2826 "type": "integer", 2827 "primaryKey": false, 2828 "notNull": true, 2829 "default": 0 2830 }, 2831 "last_reviewed_at": { 2832 "name": "last_reviewed_at", 2833 "type": "timestamp with time zone", 2834 "primaryKey": false, 2835 "notNull": false 2836 }, 2837 "filtered_by": { 2838 "name": "filtered_by", 2839 "type": "text", 2840 "primaryKey": false, 2841 "notNull": false 2842 }, 2843 "created_at": { 2844 "name": "created_at", 2845 "type": "timestamp with time zone", 2846 "primaryKey": false, 2847 "notNull": true, 2848 "default": "now()" 2849 }, 2850 "updated_at": { 2851 "name": "updated_at", 2852 "type": "timestamp with time zone", 2853 "primaryKey": false, 2854 "notNull": true, 2855 "default": "now()" 2856 } 2857 }, 2858 "indexes": { 2859 "community_filters_status_idx": { 2860 "name": "community_filters_status_idx", 2861 "columns": [ 2862 { 2863 "expression": "status", 2864 "isExpression": false, 2865 "asc": true, 2866 "nulls": "last" 2867 } 2868 ], 2869 "isUnique": false, 2870 "concurrently": false, 2871 "method": "btree", 2872 "with": {} 2873 }, 2874 "community_filters_admin_did_idx": { 2875 "name": "community_filters_admin_did_idx", 2876 "columns": [ 2877 { 2878 "expression": "admin_did", 2879 "isExpression": false, 2880 "asc": true, 2881 "nulls": "last" 2882 } 2883 ], 2884 "isUnique": false, 2885 "concurrently": false, 2886 "method": "btree", 2887 "with": {} 2888 }, 2889 "community_filters_updated_at_idx": { 2890 "name": "community_filters_updated_at_idx", 2891 "columns": [ 2892 { 2893 "expression": "updated_at", 2894 "isExpression": false, 2895 "asc": true, 2896 "nulls": "last" 2897 } 2898 ], 2899 "isUnique": false, 2900 "concurrently": false, 2901 "method": "btree", 2902 "with": {} 2903 } 2904 }, 2905 "foreignKeys": {}, 2906 "compositePrimaryKeys": {}, 2907 "uniqueConstraints": {}, 2908 "policies": { 2909 "tenant_isolation": { 2910 "name": "tenant_isolation", 2911 "as": "PERMISSIVE", 2912 "for": "ALL", 2913 "to": ["barazo_app"], 2914 "using": "community_did = current_setting('app.current_community_did', true)", 2915 "withCheck": "community_did = current_setting('app.current_community_did', true)" 2916 } 2917 }, 2918 "checkConstraints": {}, 2919 "isRLSEnabled": true 2920 }, 2921 "public.account_filters": { 2922 "name": "account_filters", 2923 "schema": "", 2924 "columns": { 2925 "id": { 2926 "name": "id", 2927 "type": "serial", 2928 "primaryKey": true, 2929 "notNull": true 2930 }, 2931 "did": { 2932 "name": "did", 2933 "type": "text", 2934 "primaryKey": false, 2935 "notNull": true 2936 }, 2937 "community_did": { 2938 "name": "community_did", 2939 "type": "text", 2940 "primaryKey": false, 2941 "notNull": true 2942 }, 2943 "status": { 2944 "name": "status", 2945 "type": "text", 2946 "primaryKey": false, 2947 "notNull": true, 2948 "default": "'active'" 2949 }, 2950 "reason": { 2951 "name": "reason", 2952 "type": "text", 2953 "primaryKey": false, 2954 "notNull": false 2955 }, 2956 "report_count": { 2957 "name": "report_count", 2958 "type": "integer", 2959 "primaryKey": false, 2960 "notNull": true, 2961 "default": 0 2962 }, 2963 "ban_count": { 2964 "name": "ban_count", 2965 "type": "integer", 2966 "primaryKey": false, 2967 "notNull": true, 2968 "default": 0 2969 }, 2970 "last_reviewed_at": { 2971 "name": "last_reviewed_at", 2972 "type": "timestamp with time zone", 2973 "primaryKey": false, 2974 "notNull": false 2975 }, 2976 "filtered_by": { 2977 "name": "filtered_by", 2978 "type": "text", 2979 "primaryKey": false, 2980 "notNull": false 2981 }, 2982 "created_at": { 2983 "name": "created_at", 2984 "type": "timestamp with time zone", 2985 "primaryKey": false, 2986 "notNull": true, 2987 "default": "now()" 2988 }, 2989 "updated_at": { 2990 "name": "updated_at", 2991 "type": "timestamp with time zone", 2992 "primaryKey": false, 2993 "notNull": true, 2994 "default": "now()" 2995 } 2996 }, 2997 "indexes": { 2998 "account_filters_did_community_idx": { 2999 "name": "account_filters_did_community_idx", 3000 "columns": [ 3001 { 3002 "expression": "did", 3003 "isExpression": false, 3004 "asc": true, 3005 "nulls": "last" 3006 }, 3007 { 3008 "expression": "community_did", 3009 "isExpression": false, 3010 "asc": true, 3011 "nulls": "last" 3012 } 3013 ], 3014 "isUnique": true, 3015 "concurrently": false, 3016 "method": "btree", 3017 "with": {} 3018 }, 3019 "account_filters_did_idx": { 3020 "name": "account_filters_did_idx", 3021 "columns": [ 3022 { 3023 "expression": "did", 3024 "isExpression": false, 3025 "asc": true, 3026 "nulls": "last" 3027 } 3028 ], 3029 "isUnique": false, 3030 "concurrently": false, 3031 "method": "btree", 3032 "with": {} 3033 }, 3034 "account_filters_community_did_idx": { 3035 "name": "account_filters_community_did_idx", 3036 "columns": [ 3037 { 3038 "expression": "community_did", 3039 "isExpression": false, 3040 "asc": true, 3041 "nulls": "last" 3042 } 3043 ], 3044 "isUnique": false, 3045 "concurrently": false, 3046 "method": "btree", 3047 "with": {} 3048 }, 3049 "account_filters_status_idx": { 3050 "name": "account_filters_status_idx", 3051 "columns": [ 3052 { 3053 "expression": "status", 3054 "isExpression": false, 3055 "asc": true, 3056 "nulls": "last" 3057 } 3058 ], 3059 "isUnique": false, 3060 "concurrently": false, 3061 "method": "btree", 3062 "with": {} 3063 }, 3064 "account_filters_updated_at_idx": { 3065 "name": "account_filters_updated_at_idx", 3066 "columns": [ 3067 { 3068 "expression": "updated_at", 3069 "isExpression": false, 3070 "asc": true, 3071 "nulls": "last" 3072 } 3073 ], 3074 "isUnique": false, 3075 "concurrently": false, 3076 "method": "btree", 3077 "with": {} 3078 } 3079 }, 3080 "foreignKeys": {}, 3081 "compositePrimaryKeys": {}, 3082 "uniqueConstraints": {}, 3083 "policies": { 3084 "tenant_isolation": { 3085 "name": "tenant_isolation", 3086 "as": "PERMISSIVE", 3087 "for": "ALL", 3088 "to": ["barazo_app"], 3089 "using": "community_did = current_setting('app.current_community_did', true)", 3090 "withCheck": "community_did = current_setting('app.current_community_did', true)" 3091 } 3092 }, 3093 "checkConstraints": {}, 3094 "isRLSEnabled": true 3095 }, 3096 "public.ozone_labels": { 3097 "name": "ozone_labels", 3098 "schema": "", 3099 "columns": { 3100 "id": { 3101 "name": "id", 3102 "type": "serial", 3103 "primaryKey": true, 3104 "notNull": true 3105 }, 3106 "src": { 3107 "name": "src", 3108 "type": "text", 3109 "primaryKey": false, 3110 "notNull": true 3111 }, 3112 "uri": { 3113 "name": "uri", 3114 "type": "text", 3115 "primaryKey": false, 3116 "notNull": true 3117 }, 3118 "val": { 3119 "name": "val", 3120 "type": "text", 3121 "primaryKey": false, 3122 "notNull": true 3123 }, 3124 "neg": { 3125 "name": "neg", 3126 "type": "boolean", 3127 "primaryKey": false, 3128 "notNull": true, 3129 "default": false 3130 }, 3131 "cts": { 3132 "name": "cts", 3133 "type": "timestamp with time zone", 3134 "primaryKey": false, 3135 "notNull": true 3136 }, 3137 "exp": { 3138 "name": "exp", 3139 "type": "timestamp with time zone", 3140 "primaryKey": false, 3141 "notNull": false 3142 }, 3143 "indexed_at": { 3144 "name": "indexed_at", 3145 "type": "timestamp with time zone", 3146 "primaryKey": false, 3147 "notNull": true, 3148 "default": "now()" 3149 } 3150 }, 3151 "indexes": { 3152 "ozone_labels_src_uri_val_idx": { 3153 "name": "ozone_labels_src_uri_val_idx", 3154 "columns": [ 3155 { 3156 "expression": "src", 3157 "isExpression": false, 3158 "asc": true, 3159 "nulls": "last" 3160 }, 3161 { 3162 "expression": "uri", 3163 "isExpression": false, 3164 "asc": true, 3165 "nulls": "last" 3166 }, 3167 { 3168 "expression": "val", 3169 "isExpression": false, 3170 "asc": true, 3171 "nulls": "last" 3172 } 3173 ], 3174 "isUnique": true, 3175 "concurrently": false, 3176 "method": "btree", 3177 "with": {} 3178 }, 3179 "ozone_labels_uri_idx": { 3180 "name": "ozone_labels_uri_idx", 3181 "columns": [ 3182 { 3183 "expression": "uri", 3184 "isExpression": false, 3185 "asc": true, 3186 "nulls": "last" 3187 } 3188 ], 3189 "isUnique": false, 3190 "concurrently": false, 3191 "method": "btree", 3192 "with": {} 3193 }, 3194 "ozone_labels_val_idx": { 3195 "name": "ozone_labels_val_idx", 3196 "columns": [ 3197 { 3198 "expression": "val", 3199 "isExpression": false, 3200 "asc": true, 3201 "nulls": "last" 3202 } 3203 ], 3204 "isUnique": false, 3205 "concurrently": false, 3206 "method": "btree", 3207 "with": {} 3208 }, 3209 "ozone_labels_indexed_at_idx": { 3210 "name": "ozone_labels_indexed_at_idx", 3211 "columns": [ 3212 { 3213 "expression": "indexed_at", 3214 "isExpression": false, 3215 "asc": true, 3216 "nulls": "last" 3217 } 3218 ], 3219 "isUnique": false, 3220 "concurrently": false, 3221 "method": "btree", 3222 "with": {} 3223 } 3224 }, 3225 "foreignKeys": {}, 3226 "compositePrimaryKeys": {}, 3227 "uniqueConstraints": {}, 3228 "policies": {}, 3229 "checkConstraints": {}, 3230 "isRLSEnabled": false 3231 }, 3232 "public.community_profiles": { 3233 "name": "community_profiles", 3234 "schema": "", 3235 "columns": { 3236 "did": { 3237 "name": "did", 3238 "type": "text", 3239 "primaryKey": false, 3240 "notNull": true 3241 }, 3242 "community_did": { 3243 "name": "community_did", 3244 "type": "text", 3245 "primaryKey": false, 3246 "notNull": true 3247 }, 3248 "display_name": { 3249 "name": "display_name", 3250 "type": "text", 3251 "primaryKey": false, 3252 "notNull": false 3253 }, 3254 "avatar_url": { 3255 "name": "avatar_url", 3256 "type": "text", 3257 "primaryKey": false, 3258 "notNull": false 3259 }, 3260 "banner_url": { 3261 "name": "banner_url", 3262 "type": "text", 3263 "primaryKey": false, 3264 "notNull": false 3265 }, 3266 "bio": { 3267 "name": "bio", 3268 "type": "text", 3269 "primaryKey": false, 3270 "notNull": false 3271 }, 3272 "updated_at": { 3273 "name": "updated_at", 3274 "type": "timestamp with time zone", 3275 "primaryKey": false, 3276 "notNull": true, 3277 "default": "now()" 3278 } 3279 }, 3280 "indexes": { 3281 "community_profiles_did_idx": { 3282 "name": "community_profiles_did_idx", 3283 "columns": [ 3284 { 3285 "expression": "did", 3286 "isExpression": false, 3287 "asc": true, 3288 "nulls": "last" 3289 } 3290 ], 3291 "isUnique": false, 3292 "concurrently": false, 3293 "method": "btree", 3294 "with": {} 3295 }, 3296 "community_profiles_community_idx": { 3297 "name": "community_profiles_community_idx", 3298 "columns": [ 3299 { 3300 "expression": "community_did", 3301 "isExpression": false, 3302 "asc": true, 3303 "nulls": "last" 3304 } 3305 ], 3306 "isUnique": false, 3307 "concurrently": false, 3308 "method": "btree", 3309 "with": {} 3310 } 3311 }, 3312 "foreignKeys": {}, 3313 "compositePrimaryKeys": { 3314 "community_profiles_did_community_did_pk": { 3315 "name": "community_profiles_did_community_did_pk", 3316 "columns": ["did", "community_did"] 3317 } 3318 }, 3319 "uniqueConstraints": {}, 3320 "policies": { 3321 "tenant_isolation": { 3322 "name": "tenant_isolation", 3323 "as": "PERMISSIVE", 3324 "for": "ALL", 3325 "to": ["barazo_app"], 3326 "using": "community_did = current_setting('app.current_community_did', true)", 3327 "withCheck": "community_did = current_setting('app.current_community_did', true)" 3328 } 3329 }, 3330 "checkConstraints": {}, 3331 "isRLSEnabled": true 3332 }, 3333 "public.interaction_graph": { 3334 "name": "interaction_graph", 3335 "schema": "", 3336 "columns": { 3337 "source_did": { 3338 "name": "source_did", 3339 "type": "text", 3340 "primaryKey": false, 3341 "notNull": true 3342 }, 3343 "target_did": { 3344 "name": "target_did", 3345 "type": "text", 3346 "primaryKey": false, 3347 "notNull": true 3348 }, 3349 "community_id": { 3350 "name": "community_id", 3351 "type": "text", 3352 "primaryKey": false, 3353 "notNull": true 3354 }, 3355 "interaction_type": { 3356 "name": "interaction_type", 3357 "type": "text", 3358 "primaryKey": false, 3359 "notNull": true 3360 }, 3361 "weight": { 3362 "name": "weight", 3363 "type": "integer", 3364 "primaryKey": false, 3365 "notNull": true, 3366 "default": 1 3367 }, 3368 "first_interaction_at": { 3369 "name": "first_interaction_at", 3370 "type": "timestamp with time zone", 3371 "primaryKey": false, 3372 "notNull": true, 3373 "default": "now()" 3374 }, 3375 "last_interaction_at": { 3376 "name": "last_interaction_at", 3377 "type": "timestamp with time zone", 3378 "primaryKey": false, 3379 "notNull": true, 3380 "default": "now()" 3381 } 3382 }, 3383 "indexes": { 3384 "interaction_graph_source_target_community_idx": { 3385 "name": "interaction_graph_source_target_community_idx", 3386 "columns": [ 3387 { 3388 "expression": "source_did", 3389 "isExpression": false, 3390 "asc": true, 3391 "nulls": "last" 3392 }, 3393 { 3394 "expression": "target_did", 3395 "isExpression": false, 3396 "asc": true, 3397 "nulls": "last" 3398 }, 3399 { 3400 "expression": "community_id", 3401 "isExpression": false, 3402 "asc": true, 3403 "nulls": "last" 3404 } 3405 ], 3406 "isUnique": false, 3407 "concurrently": false, 3408 "method": "btree", 3409 "with": {} 3410 } 3411 }, 3412 "foreignKeys": {}, 3413 "compositePrimaryKeys": { 3414 "interaction_graph_source_did_target_did_community_id_interaction_type_pk": { 3415 "name": "interaction_graph_source_did_target_did_community_id_interaction_type_pk", 3416 "columns": ["source_did", "target_did", "community_id", "interaction_type"] 3417 } 3418 }, 3419 "uniqueConstraints": {}, 3420 "policies": {}, 3421 "checkConstraints": {}, 3422 "isRLSEnabled": false 3423 }, 3424 "public.trust_seeds": { 3425 "name": "trust_seeds", 3426 "schema": "", 3427 "columns": { 3428 "id": { 3429 "name": "id", 3430 "type": "serial", 3431 "primaryKey": true, 3432 "notNull": true 3433 }, 3434 "did": { 3435 "name": "did", 3436 "type": "text", 3437 "primaryKey": false, 3438 "notNull": true 3439 }, 3440 "community_id": { 3441 "name": "community_id", 3442 "type": "text", 3443 "primaryKey": false, 3444 "notNull": true, 3445 "default": "''" 3446 }, 3447 "added_by": { 3448 "name": "added_by", 3449 "type": "text", 3450 "primaryKey": false, 3451 "notNull": true 3452 }, 3453 "reason": { 3454 "name": "reason", 3455 "type": "text", 3456 "primaryKey": false, 3457 "notNull": false 3458 }, 3459 "created_at": { 3460 "name": "created_at", 3461 "type": "timestamp with time zone", 3462 "primaryKey": false, 3463 "notNull": true, 3464 "default": "now()" 3465 } 3466 }, 3467 "indexes": { 3468 "trust_seeds_did_community_idx": { 3469 "name": "trust_seeds_did_community_idx", 3470 "columns": [ 3471 { 3472 "expression": "did", 3473 "isExpression": false, 3474 "asc": true, 3475 "nulls": "last" 3476 }, 3477 { 3478 "expression": "community_id", 3479 "isExpression": false, 3480 "asc": true, 3481 "nulls": "last" 3482 } 3483 ], 3484 "isUnique": true, 3485 "concurrently": false, 3486 "method": "btree", 3487 "with": {} 3488 } 3489 }, 3490 "foreignKeys": {}, 3491 "compositePrimaryKeys": {}, 3492 "uniqueConstraints": {}, 3493 "policies": {}, 3494 "checkConstraints": {}, 3495 "isRLSEnabled": false 3496 }, 3497 "public.trust_scores": { 3498 "name": "trust_scores", 3499 "schema": "", 3500 "columns": { 3501 "did": { 3502 "name": "did", 3503 "type": "text", 3504 "primaryKey": false, 3505 "notNull": true 3506 }, 3507 "community_id": { 3508 "name": "community_id", 3509 "type": "text", 3510 "primaryKey": false, 3511 "notNull": true, 3512 "default": "''" 3513 }, 3514 "score": { 3515 "name": "score", 3516 "type": "real", 3517 "primaryKey": false, 3518 "notNull": true 3519 }, 3520 "computed_at": { 3521 "name": "computed_at", 3522 "type": "timestamp with time zone", 3523 "primaryKey": false, 3524 "notNull": true, 3525 "default": "now()" 3526 } 3527 }, 3528 "indexes": { 3529 "trust_scores_did_community_idx": { 3530 "name": "trust_scores_did_community_idx", 3531 "columns": [ 3532 { 3533 "expression": "did", 3534 "isExpression": false, 3535 "asc": true, 3536 "nulls": "last" 3537 }, 3538 { 3539 "expression": "community_id", 3540 "isExpression": false, 3541 "asc": true, 3542 "nulls": "last" 3543 } 3544 ], 3545 "isUnique": false, 3546 "concurrently": false, 3547 "method": "btree", 3548 "with": {} 3549 } 3550 }, 3551 "foreignKeys": {}, 3552 "compositePrimaryKeys": { 3553 "trust_scores_did_community_id_pk": { 3554 "name": "trust_scores_did_community_id_pk", 3555 "columns": ["did", "community_id"] 3556 } 3557 }, 3558 "uniqueConstraints": {}, 3559 "policies": {}, 3560 "checkConstraints": {}, 3561 "isRLSEnabled": false 3562 }, 3563 "public.sybil_clusters": { 3564 "name": "sybil_clusters", 3565 "schema": "", 3566 "columns": { 3567 "id": { 3568 "name": "id", 3569 "type": "serial", 3570 "primaryKey": true, 3571 "notNull": true 3572 }, 3573 "cluster_hash": { 3574 "name": "cluster_hash", 3575 "type": "text", 3576 "primaryKey": false, 3577 "notNull": true 3578 }, 3579 "internal_edge_count": { 3580 "name": "internal_edge_count", 3581 "type": "integer", 3582 "primaryKey": false, 3583 "notNull": true 3584 }, 3585 "external_edge_count": { 3586 "name": "external_edge_count", 3587 "type": "integer", 3588 "primaryKey": false, 3589 "notNull": true 3590 }, 3591 "member_count": { 3592 "name": "member_count", 3593 "type": "integer", 3594 "primaryKey": false, 3595 "notNull": true 3596 }, 3597 "status": { 3598 "name": "status", 3599 "type": "text", 3600 "primaryKey": false, 3601 "notNull": true, 3602 "default": "'flagged'" 3603 }, 3604 "reviewed_by": { 3605 "name": "reviewed_by", 3606 "type": "text", 3607 "primaryKey": false, 3608 "notNull": false 3609 }, 3610 "reviewed_at": { 3611 "name": "reviewed_at", 3612 "type": "timestamp with time zone", 3613 "primaryKey": false, 3614 "notNull": false 3615 }, 3616 "detected_at": { 3617 "name": "detected_at", 3618 "type": "timestamp with time zone", 3619 "primaryKey": false, 3620 "notNull": true, 3621 "default": "now()" 3622 }, 3623 "updated_at": { 3624 "name": "updated_at", 3625 "type": "timestamp with time zone", 3626 "primaryKey": false, 3627 "notNull": true, 3628 "default": "now()" 3629 } 3630 }, 3631 "indexes": { 3632 "sybil_clusters_hash_idx": { 3633 "name": "sybil_clusters_hash_idx", 3634 "columns": [ 3635 { 3636 "expression": "cluster_hash", 3637 "isExpression": false, 3638 "asc": true, 3639 "nulls": "last" 3640 } 3641 ], 3642 "isUnique": true, 3643 "concurrently": false, 3644 "method": "btree", 3645 "with": {} 3646 } 3647 }, 3648 "foreignKeys": {}, 3649 "compositePrimaryKeys": {}, 3650 "uniqueConstraints": {}, 3651 "policies": {}, 3652 "checkConstraints": {}, 3653 "isRLSEnabled": false 3654 }, 3655 "public.sybil_cluster_members": { 3656 "name": "sybil_cluster_members", 3657 "schema": "", 3658 "columns": { 3659 "cluster_id": { 3660 "name": "cluster_id", 3661 "type": "integer", 3662 "primaryKey": false, 3663 "notNull": true 3664 }, 3665 "did": { 3666 "name": "did", 3667 "type": "text", 3668 "primaryKey": false, 3669 "notNull": true 3670 }, 3671 "role_in_cluster": { 3672 "name": "role_in_cluster", 3673 "type": "text", 3674 "primaryKey": false, 3675 "notNull": true 3676 }, 3677 "joined_at": { 3678 "name": "joined_at", 3679 "type": "timestamp with time zone", 3680 "primaryKey": false, 3681 "notNull": true, 3682 "default": "now()" 3683 } 3684 }, 3685 "indexes": {}, 3686 "foreignKeys": { 3687 "sybil_cluster_members_cluster_id_sybil_clusters_id_fk": { 3688 "name": "sybil_cluster_members_cluster_id_sybil_clusters_id_fk", 3689 "tableFrom": "sybil_cluster_members", 3690 "tableTo": "sybil_clusters", 3691 "columnsFrom": ["cluster_id"], 3692 "columnsTo": ["id"], 3693 "onDelete": "no action", 3694 "onUpdate": "no action" 3695 } 3696 }, 3697 "compositePrimaryKeys": { 3698 "sybil_cluster_members_cluster_id_did_pk": { 3699 "name": "sybil_cluster_members_cluster_id_did_pk", 3700 "columns": ["cluster_id", "did"] 3701 } 3702 }, 3703 "uniqueConstraints": {}, 3704 "policies": {}, 3705 "checkConstraints": {}, 3706 "isRLSEnabled": false 3707 }, 3708 "public.behavioral_flags": { 3709 "name": "behavioral_flags", 3710 "schema": "", 3711 "columns": { 3712 "id": { 3713 "name": "id", 3714 "type": "serial", 3715 "primaryKey": true, 3716 "notNull": true 3717 }, 3718 "flag_type": { 3719 "name": "flag_type", 3720 "type": "text", 3721 "primaryKey": false, 3722 "notNull": true 3723 }, 3724 "affected_dids": { 3725 "name": "affected_dids", 3726 "type": "jsonb", 3727 "primaryKey": false, 3728 "notNull": true 3729 }, 3730 "details": { 3731 "name": "details", 3732 "type": "text", 3733 "primaryKey": false, 3734 "notNull": true 3735 }, 3736 "community_did": { 3737 "name": "community_did", 3738 "type": "text", 3739 "primaryKey": false, 3740 "notNull": false 3741 }, 3742 "status": { 3743 "name": "status", 3744 "type": "text", 3745 "primaryKey": false, 3746 "notNull": true, 3747 "default": "'pending'" 3748 }, 3749 "detected_at": { 3750 "name": "detected_at", 3751 "type": "timestamp with time zone", 3752 "primaryKey": false, 3753 "notNull": true, 3754 "default": "now()" 3755 } 3756 }, 3757 "indexes": { 3758 "behavioral_flags_flag_type_idx": { 3759 "name": "behavioral_flags_flag_type_idx", 3760 "columns": [ 3761 { 3762 "expression": "flag_type", 3763 "isExpression": false, 3764 "asc": true, 3765 "nulls": "last" 3766 } 3767 ], 3768 "isUnique": false, 3769 "concurrently": false, 3770 "method": "btree", 3771 "with": {} 3772 }, 3773 "behavioral_flags_status_idx": { 3774 "name": "behavioral_flags_status_idx", 3775 "columns": [ 3776 { 3777 "expression": "status", 3778 "isExpression": false, 3779 "asc": true, 3780 "nulls": "last" 3781 } 3782 ], 3783 "isUnique": false, 3784 "concurrently": false, 3785 "method": "btree", 3786 "with": {} 3787 }, 3788 "behavioral_flags_detected_at_idx": { 3789 "name": "behavioral_flags_detected_at_idx", 3790 "columns": [ 3791 { 3792 "expression": "detected_at", 3793 "isExpression": false, 3794 "asc": true, 3795 "nulls": "last" 3796 } 3797 ], 3798 "isUnique": false, 3799 "concurrently": false, 3800 "method": "btree", 3801 "with": {} 3802 } 3803 }, 3804 "foreignKeys": {}, 3805 "compositePrimaryKeys": {}, 3806 "uniqueConstraints": {}, 3807 "policies": {}, 3808 "checkConstraints": {}, 3809 "isRLSEnabled": false 3810 }, 3811 "public.pds_trust_factors": { 3812 "name": "pds_trust_factors", 3813 "schema": "", 3814 "columns": { 3815 "id": { 3816 "name": "id", 3817 "type": "serial", 3818 "primaryKey": true, 3819 "notNull": true 3820 }, 3821 "pds_host": { 3822 "name": "pds_host", 3823 "type": "text", 3824 "primaryKey": false, 3825 "notNull": true 3826 }, 3827 "trust_factor": { 3828 "name": "trust_factor", 3829 "type": "real", 3830 "primaryKey": false, 3831 "notNull": true 3832 }, 3833 "is_default": { 3834 "name": "is_default", 3835 "type": "boolean", 3836 "primaryKey": false, 3837 "notNull": true, 3838 "default": false 3839 }, 3840 "updated_at": { 3841 "name": "updated_at", 3842 "type": "timestamp with time zone", 3843 "primaryKey": false, 3844 "notNull": true, 3845 "default": "now()" 3846 } 3847 }, 3848 "indexes": { 3849 "pds_trust_factors_pds_host_idx": { 3850 "name": "pds_trust_factors_pds_host_idx", 3851 "columns": [ 3852 { 3853 "expression": "pds_host", 3854 "isExpression": false, 3855 "asc": true, 3856 "nulls": "last" 3857 } 3858 ], 3859 "isUnique": true, 3860 "concurrently": false, 3861 "method": "btree", 3862 "with": {} 3863 } 3864 }, 3865 "foreignKeys": {}, 3866 "compositePrimaryKeys": {}, 3867 "uniqueConstraints": {}, 3868 "policies": {}, 3869 "checkConstraints": {}, 3870 "isRLSEnabled": false 3871 }, 3872 "public.pages": { 3873 "name": "pages", 3874 "schema": "", 3875 "columns": { 3876 "id": { 3877 "name": "id", 3878 "type": "text", 3879 "primaryKey": true, 3880 "notNull": true 3881 }, 3882 "slug": { 3883 "name": "slug", 3884 "type": "text", 3885 "primaryKey": false, 3886 "notNull": true 3887 }, 3888 "title": { 3889 "name": "title", 3890 "type": "text", 3891 "primaryKey": false, 3892 "notNull": true 3893 }, 3894 "content": { 3895 "name": "content", 3896 "type": "text", 3897 "primaryKey": false, 3898 "notNull": true 3899 }, 3900 "status": { 3901 "name": "status", 3902 "type": "text", 3903 "primaryKey": false, 3904 "notNull": true, 3905 "default": "'draft'" 3906 }, 3907 "meta_description": { 3908 "name": "meta_description", 3909 "type": "text", 3910 "primaryKey": false, 3911 "notNull": false 3912 }, 3913 "parent_id": { 3914 "name": "parent_id", 3915 "type": "text", 3916 "primaryKey": false, 3917 "notNull": false 3918 }, 3919 "sort_order": { 3920 "name": "sort_order", 3921 "type": "integer", 3922 "primaryKey": false, 3923 "notNull": true, 3924 "default": 0 3925 }, 3926 "community_did": { 3927 "name": "community_did", 3928 "type": "text", 3929 "primaryKey": false, 3930 "notNull": true 3931 }, 3932 "created_at": { 3933 "name": "created_at", 3934 "type": "timestamp with time zone", 3935 "primaryKey": false, 3936 "notNull": true, 3937 "default": "now()" 3938 }, 3939 "updated_at": { 3940 "name": "updated_at", 3941 "type": "timestamp with time zone", 3942 "primaryKey": false, 3943 "notNull": true, 3944 "default": "now()" 3945 } 3946 }, 3947 "indexes": { 3948 "pages_slug_community_did_idx": { 3949 "name": "pages_slug_community_did_idx", 3950 "columns": [ 3951 { 3952 "expression": "slug", 3953 "isExpression": false, 3954 "asc": true, 3955 "nulls": "last" 3956 }, 3957 { 3958 "expression": "community_did", 3959 "isExpression": false, 3960 "asc": true, 3961 "nulls": "last" 3962 } 3963 ], 3964 "isUnique": true, 3965 "concurrently": false, 3966 "method": "btree", 3967 "with": {} 3968 }, 3969 "pages_community_did_idx": { 3970 "name": "pages_community_did_idx", 3971 "columns": [ 3972 { 3973 "expression": "community_did", 3974 "isExpression": false, 3975 "asc": true, 3976 "nulls": "last" 3977 } 3978 ], 3979 "isUnique": false, 3980 "concurrently": false, 3981 "method": "btree", 3982 "with": {} 3983 }, 3984 "pages_parent_id_idx": { 3985 "name": "pages_parent_id_idx", 3986 "columns": [ 3987 { 3988 "expression": "parent_id", 3989 "isExpression": false, 3990 "asc": true, 3991 "nulls": "last" 3992 } 3993 ], 3994 "isUnique": false, 3995 "concurrently": false, 3996 "method": "btree", 3997 "with": {} 3998 }, 3999 "pages_status_community_did_idx": { 4000 "name": "pages_status_community_did_idx", 4001 "columns": [ 4002 { 4003 "expression": "status", 4004 "isExpression": false, 4005 "asc": true, 4006 "nulls": "last" 4007 }, 4008 { 4009 "expression": "community_did", 4010 "isExpression": false, 4011 "asc": true, 4012 "nulls": "last" 4013 } 4014 ], 4015 "isUnique": false, 4016 "concurrently": false, 4017 "method": "btree", 4018 "with": {} 4019 } 4020 }, 4021 "foreignKeys": { 4022 "pages_parent_id_fk": { 4023 "name": "pages_parent_id_fk", 4024 "tableFrom": "pages", 4025 "tableTo": "pages", 4026 "columnsFrom": ["parent_id"], 4027 "columnsTo": ["id"], 4028 "onDelete": "set null", 4029 "onUpdate": "no action" 4030 } 4031 }, 4032 "compositePrimaryKeys": {}, 4033 "uniqueConstraints": {}, 4034 "policies": { 4035 "tenant_isolation": { 4036 "name": "tenant_isolation", 4037 "as": "PERMISSIVE", 4038 "for": "ALL", 4039 "to": ["barazo_app"], 4040 "using": "community_did = current_setting('app.current_community_did', true)", 4041 "withCheck": "community_did = current_setting('app.current_community_did', true)" 4042 } 4043 }, 4044 "checkConstraints": {}, 4045 "isRLSEnabled": true 4046 }, 4047 "public.plugin_permissions": { 4048 "name": "plugin_permissions", 4049 "schema": "", 4050 "columns": { 4051 "id": { 4052 "name": "id", 4053 "type": "uuid", 4054 "primaryKey": true, 4055 "notNull": true, 4056 "default": "gen_random_uuid()" 4057 }, 4058 "plugin_id": { 4059 "name": "plugin_id", 4060 "type": "uuid", 4061 "primaryKey": false, 4062 "notNull": true 4063 }, 4064 "permission": { 4065 "name": "permission", 4066 "type": "text", 4067 "primaryKey": false, 4068 "notNull": true 4069 }, 4070 "granted_at": { 4071 "name": "granted_at", 4072 "type": "timestamp with time zone", 4073 "primaryKey": false, 4074 "notNull": true, 4075 "default": "now()" 4076 } 4077 }, 4078 "indexes": {}, 4079 "foreignKeys": { 4080 "plugin_permissions_plugin_id_plugins_id_fk": { 4081 "name": "plugin_permissions_plugin_id_plugins_id_fk", 4082 "tableFrom": "plugin_permissions", 4083 "tableTo": "plugins", 4084 "columnsFrom": ["plugin_id"], 4085 "columnsTo": ["id"], 4086 "onDelete": "cascade", 4087 "onUpdate": "no action" 4088 } 4089 }, 4090 "compositePrimaryKeys": {}, 4091 "uniqueConstraints": { 4092 "plugin_permissions_plugin_id_permission_unique": { 4093 "name": "plugin_permissions_plugin_id_permission_unique", 4094 "nullsNotDistinct": false, 4095 "columns": ["plugin_id", "permission"] 4096 } 4097 }, 4098 "policies": { 4099 "plugin_permissions_instance_wide": { 4100 "name": "plugin_permissions_instance_wide", 4101 "as": "PERMISSIVE", 4102 "for": "ALL", 4103 "to": ["barazo_app"], 4104 "using": "true" 4105 } 4106 }, 4107 "checkConstraints": {}, 4108 "isRLSEnabled": true 4109 }, 4110 "public.plugin_settings": { 4111 "name": "plugin_settings", 4112 "schema": "", 4113 "columns": { 4114 "id": { 4115 "name": "id", 4116 "type": "uuid", 4117 "primaryKey": true, 4118 "notNull": true, 4119 "default": "gen_random_uuid()" 4120 }, 4121 "plugin_id": { 4122 "name": "plugin_id", 4123 "type": "uuid", 4124 "primaryKey": false, 4125 "notNull": true 4126 }, 4127 "key": { 4128 "name": "key", 4129 "type": "text", 4130 "primaryKey": false, 4131 "notNull": true 4132 }, 4133 "value": { 4134 "name": "value", 4135 "type": "jsonb", 4136 "primaryKey": false, 4137 "notNull": true 4138 } 4139 }, 4140 "indexes": {}, 4141 "foreignKeys": { 4142 "plugin_settings_plugin_id_plugins_id_fk": { 4143 "name": "plugin_settings_plugin_id_plugins_id_fk", 4144 "tableFrom": "plugin_settings", 4145 "tableTo": "plugins", 4146 "columnsFrom": ["plugin_id"], 4147 "columnsTo": ["id"], 4148 "onDelete": "cascade", 4149 "onUpdate": "no action" 4150 } 4151 }, 4152 "compositePrimaryKeys": {}, 4153 "uniqueConstraints": { 4154 "plugin_settings_plugin_id_key_unique": { 4155 "name": "plugin_settings_plugin_id_key_unique", 4156 "nullsNotDistinct": false, 4157 "columns": ["plugin_id", "key"] 4158 } 4159 }, 4160 "policies": { 4161 "plugin_settings_instance_wide": { 4162 "name": "plugin_settings_instance_wide", 4163 "as": "PERMISSIVE", 4164 "for": "ALL", 4165 "to": ["barazo_app"], 4166 "using": "true" 4167 } 4168 }, 4169 "checkConstraints": {}, 4170 "isRLSEnabled": true 4171 }, 4172 "public.plugins": { 4173 "name": "plugins", 4174 "schema": "", 4175 "columns": { 4176 "id": { 4177 "name": "id", 4178 "type": "uuid", 4179 "primaryKey": true, 4180 "notNull": true, 4181 "default": "gen_random_uuid()" 4182 }, 4183 "name": { 4184 "name": "name", 4185 "type": "text", 4186 "primaryKey": false, 4187 "notNull": true 4188 }, 4189 "display_name": { 4190 "name": "display_name", 4191 "type": "text", 4192 "primaryKey": false, 4193 "notNull": true 4194 }, 4195 "version": { 4196 "name": "version", 4197 "type": "text", 4198 "primaryKey": false, 4199 "notNull": true 4200 }, 4201 "description": { 4202 "name": "description", 4203 "type": "text", 4204 "primaryKey": false, 4205 "notNull": true 4206 }, 4207 "source": { 4208 "name": "source", 4209 "type": "text", 4210 "primaryKey": false, 4211 "notNull": true 4212 }, 4213 "category": { 4214 "name": "category", 4215 "type": "text", 4216 "primaryKey": false, 4217 "notNull": true 4218 }, 4219 "enabled": { 4220 "name": "enabled", 4221 "type": "boolean", 4222 "primaryKey": false, 4223 "notNull": true, 4224 "default": false 4225 }, 4226 "manifest_json": { 4227 "name": "manifest_json", 4228 "type": "jsonb", 4229 "primaryKey": false, 4230 "notNull": true 4231 }, 4232 "installed_at": { 4233 "name": "installed_at", 4234 "type": "timestamp with time zone", 4235 "primaryKey": false, 4236 "notNull": true, 4237 "default": "now()" 4238 }, 4239 "updated_at": { 4240 "name": "updated_at", 4241 "type": "timestamp with time zone", 4242 "primaryKey": false, 4243 "notNull": true, 4244 "default": "now()" 4245 } 4246 }, 4247 "indexes": {}, 4248 "foreignKeys": {}, 4249 "compositePrimaryKeys": {}, 4250 "uniqueConstraints": { 4251 "plugins_name_unique": { 4252 "name": "plugins_name_unique", 4253 "nullsNotDistinct": false, 4254 "columns": ["name"] 4255 } 4256 }, 4257 "policies": { 4258 "plugins_instance_wide": { 4259 "name": "plugins_instance_wide", 4260 "as": "PERMISSIVE", 4261 "for": "ALL", 4262 "to": ["barazo_app"], 4263 "using": "true" 4264 } 4265 }, 4266 "checkConstraints": {}, 4267 "isRLSEnabled": true 4268 } 4269 }, 4270 "enums": {}, 4271 "schemas": {}, 4272 "sequences": {}, 4273 "roles": { 4274 "barazo_app": { 4275 "name": "barazo_app", 4276 "createDb": false, 4277 "createRole": false, 4278 "inherit": true 4279 } 4280 }, 4281 "policies": {}, 4282 "views": {}, 4283 "_meta": { 4284 "columns": {}, 4285 "schemas": {}, 4286 "tables": {} 4287 } 4288}