changemaker.lite/api/drizzle/meta/0000_snapshot.json

11540 lines
296 KiB
JSON

{
"id": "6955a337-e5d0-41c7-a9b4-adcca9539b09",
"prevId": "00000000-0000-0000-0000-000000000000",
"version": "7",
"dialect": "postgresql",
"tables": {
"public.ad_clicks": {
"name": "ad_clicks",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"ad_id": {
"name": "ad_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"session_id": {
"name": "session_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_ad_clicks_ad": {
"name": "idx_ad_clicks_ad",
"columns": [
{
"expression": "ad_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_ad_clicks_session": {
"name": "idx_ad_clicks_session",
"columns": [
{
"expression": "session_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_ad_clicks_date": {
"name": "idx_ad_clicks_date",
"columns": [
{
"expression": "created_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"ad_clicks_ad_id_ads_id_fk": {
"name": "ad_clicks_ad_id_ads_id_fk",
"tableFrom": "ad_clicks",
"tableTo": "ads",
"columnsFrom": [
"ad_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.ad_impressions": {
"name": "ad_impressions",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"ad_id": {
"name": "ad_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"session_id": {
"name": "session_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_ad_impressions_ad": {
"name": "idx_ad_impressions_ad",
"columns": [
{
"expression": "ad_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_ad_impressions_session": {
"name": "idx_ad_impressions_session",
"columns": [
{
"expression": "session_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_ad_impressions_date": {
"name": "idx_ad_impressions_date",
"columns": [
{
"expression": "created_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"ad_impressions_ad_id_ads_id_fk": {
"name": "ad_impressions_ad_id_ads_id_fk",
"tableFrom": "ad_impressions",
"tableTo": "ads",
"columnsFrom": [
"ad_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.ads": {
"name": "ads",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"type": {
"name": "type",
"type": "text",
"primaryKey": false,
"notNull": true
},
"variant": {
"name": "variant",
"type": "text",
"primaryKey": false,
"notNull": false
},
"image_path": {
"name": "image_path",
"type": "text",
"primaryKey": false,
"notNull": false
},
"link_url": {
"name": "link_url",
"type": "text",
"primaryKey": false,
"notNull": false
},
"title": {
"name": "title",
"type": "text",
"primaryKey": false,
"notNull": false
},
"visibility": {
"name": "visibility",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'everyone'"
},
"is_active": {
"name": "is_active",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"position": {
"name": "position",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"impression_count": {
"name": "impression_count",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"click_count": {
"name": "click_count",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"updated_at": {
"name": "updated_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_ads_type": {
"name": "idx_ads_type",
"columns": [
{
"expression": "type",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_ads_is_active": {
"name": "idx_ads_is_active",
"columns": [
{
"expression": "is_active",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_ads_visibility": {
"name": "idx_ads_visibility",
"columns": [
{
"expression": "visibility",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.app_settings": {
"name": "app_settings",
"schema": "",
"columns": {
"key": {
"name": "key",
"type": "text",
"primaryKey": true,
"notNull": true
},
"value": {
"name": "value",
"type": "text",
"primaryKey": false,
"notNull": true
},
"updated_at": {
"name": "updated_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.auth_tokens": {
"name": "auth_tokens",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"token": {
"name": "token",
"type": "text",
"primaryKey": false,
"notNull": true
},
"type": {
"name": "type",
"type": "text",
"primaryKey": false,
"notNull": true
},
"expires_at": {
"name": "expires_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_auth_tokens_token": {
"name": "idx_auth_tokens_token",
"columns": [
{
"expression": "token",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_auth_tokens_user": {
"name": "idx_auth_tokens_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"auth_tokens_token_unique": {
"name": "auth_tokens_token_unique",
"nullsNotDistinct": false,
"columns": [
"token"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.chat_thread_read_status": {
"name": "chat_thread_read_status",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"media_id": {
"name": "media_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"last_seen_at": {
"name": "last_seen_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
}
},
"indexes": {
"idx_chat_thread_read_unique": {
"name": "idx_chat_thread_read_unique",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "media_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_chat_thread_read_user": {
"name": "idx_chat_thread_read_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.close_friends": {
"name": "close_friends",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"close_friend_id": {
"name": "close_friend_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"added_at": {
"name": "added_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_close_friends_unique": {
"name": "idx_close_friends_unique",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "close_friend_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": true,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_close_friends_user": {
"name": "idx_close_friends_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"close_friends_user_id_users_id_fk": {
"name": "close_friends_user_id_users_id_fk",
"tableFrom": "close_friends",
"tableTo": "users",
"columnsFrom": [
"user_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"close_friends_close_friend_id_users_id_fk": {
"name": "close_friends_close_friend_id_users_id_fk",
"tableFrom": "close_friends",
"tableTo": "users",
"columnsFrom": [
"close_friend_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.comment_moderation": {
"name": "comment_moderation",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"comment_id": {
"name": "comment_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'pending'"
},
"moderated_by": {
"name": "moderated_by",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"moderated_at": {
"name": "moderated_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"reason": {
"name": "reason",
"type": "text",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_comment_moderation_comment": {
"name": "idx_comment_moderation_comment",
"columns": [
{
"expression": "comment_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_comment_moderation_status": {
"name": "idx_comment_moderation_status",
"columns": [
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.comments": {
"name": "comments",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"media_id": {
"name": "media_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"session_id": {
"name": "session_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"content": {
"name": "content",
"type": "text",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"safety_status": {
"name": "safety_status",
"type": "text",
"primaryKey": false,
"notNull": false,
"default": "'pending'"
},
"safety_checked_at": {
"name": "safety_checked_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"safety_categories": {
"name": "safety_categories",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"safety_reasoning": {
"name": "safety_reasoning",
"type": "text",
"primaryKey": false,
"notNull": false
},
"is_hidden": {
"name": "is_hidden",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"hidden_at": {
"name": "hidden_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"hidden_reason": {
"name": "hidden_reason",
"type": "text",
"primaryKey": false,
"notNull": false
},
"moderation_notes": {
"name": "moderation_notes",
"type": "text",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_comments_media": {
"name": "idx_comments_media",
"columns": [
{
"expression": "media_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_comments_session": {
"name": "idx_comments_session",
"columns": [
{
"expression": "session_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_comments_user": {
"name": "idx_comments_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_comments_safety_status": {
"name": "idx_comments_safety_status",
"columns": [
{
"expression": "safety_status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_comments_is_hidden": {
"name": "idx_comments_is_hidden",
"columns": [
{
"expression": "is_hidden",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.compilations": {
"name": "compilations",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"filename": {
"name": "filename",
"type": "text",
"primaryKey": false,
"notNull": true
},
"path": {
"name": "path",
"type": "text",
"primaryKey": false,
"notNull": false
},
"duration_seconds": {
"name": "duration_seconds",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"video_ids": {
"name": "video_ids",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"settings": {
"name": "settings",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.content_reports": {
"name": "content_reports",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"media_id": {
"name": "media_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"session_id": {
"name": "session_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"report_type": {
"name": "report_type",
"type": "text",
"primaryKey": false,
"notNull": true
},
"description": {
"name": "description",
"type": "text",
"primaryKey": false,
"notNull": false
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'pending'"
},
"resolved_by": {
"name": "resolved_by",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"resolved_at": {
"name": "resolved_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"resolution_notes": {
"name": "resolution_notes",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_content_reports_media": {
"name": "idx_content_reports_media",
"columns": [
{
"expression": "media_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_content_reports_status": {
"name": "idx_content_reports_status",
"columns": [
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_content_reports_session": {
"name": "idx_content_reports_session",
"columns": [
{
"expression": "session_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_content_reports_created": {
"name": "idx_content_reports_created",
"columns": [
{
"expression": "created_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.creators": {
"name": "creators",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"name": {
"name": "name",
"type": "text",
"primaryKey": false,
"notNull": true
},
"slug": {
"name": "slug",
"type": "text",
"primaryKey": false,
"notNull": true
},
"gender": {
"name": "gender",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"primary_face_id": {
"name": "primary_face_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"face_count": {
"name": "face_count",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"video_count": {
"name": "video_count",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"tag_id": {
"name": "tag_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"is_public": {
"name": "is_public",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"centroid_embedding": {
"name": "centroid_embedding",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"centroid_updated_at": {
"name": "centroid_updated_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"centroid_face_count": {
"name": "centroid_face_count",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"embedding_variance": {
"name": "embedding_variance",
"type": "real",
"primaryKey": false,
"notNull": false
},
"avg_intra_cluster_similarity": {
"name": "avg_intra_cluster_similarity",
"type": "real",
"primaryKey": false,
"notNull": false
},
"avg_age": {
"name": "avg_age",
"type": "real",
"primaryKey": false,
"notNull": false
},
"age_std_dev": {
"name": "age_std_dev",
"type": "real",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"updated_at": {
"name": "updated_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_creators_name": {
"name": "idx_creators_name",
"columns": [
{
"expression": "name",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_creators_slug": {
"name": "idx_creators_slug",
"columns": [
{
"expression": "slug",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_creators_gender": {
"name": "idx_creators_gender",
"columns": [
{
"expression": "gender",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_creators_tag": {
"name": "idx_creators_tag",
"columns": [
{
"expression": "tag_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_creators_public": {
"name": "idx_creators_public",
"columns": [
{
"expression": "is_public",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"creators_name_unique": {
"name": "creators_name_unique",
"nullsNotDistinct": false,
"columns": [
"name"
]
},
"creators_slug_unique": {
"name": "creators_slug_unique",
"nullsNotDistinct": false,
"columns": [
"slug"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.digest_clip_tags": {
"name": "digest_clip_tags",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"clip_id": {
"name": "clip_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"tag_id": {
"name": "tag_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"source": {
"name": "source",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'auto'"
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_digest_clip_tags_clip": {
"name": "idx_digest_clip_tags_clip",
"columns": [
{
"expression": "clip_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_clip_tags_tag": {
"name": "idx_digest_clip_tags_tag",
"columns": [
{
"expression": "tag_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_clip_tags_unique": {
"name": "idx_digest_clip_tags_unique",
"columns": [
{
"expression": "clip_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "tag_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.digest_compilations": {
"name": "digest_compilations",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"digest_id": {
"name": "digest_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"video_id": {
"name": "video_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"folder_id": {
"name": "folder_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"filename": {
"name": "filename",
"type": "text",
"primaryKey": false,
"notNull": true
},
"name": {
"name": "name",
"type": "text",
"primaryKey": false,
"notNull": false
},
"path": {
"name": "path",
"type": "text",
"primaryKey": false,
"notNull": true
},
"duration_seconds": {
"name": "duration_seconds",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"orientation": {
"name": "orientation",
"type": "text",
"primaryKey": false,
"notNull": false
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'pending'"
},
"error": {
"name": "error",
"type": "text",
"primaryKey": false,
"notNull": false
},
"has_captions": {
"name": "has_captions",
"type": "integer",
"primaryKey": false,
"notNull": true,
"default": 0
},
"caption_style": {
"name": "caption_style",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"closing_ad_path": {
"name": "closing_ad_path",
"type": "text",
"primaryKey": false,
"notNull": false
},
"closing_ad_duration": {
"name": "closing_ad_duration",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"tags": {
"name": "tags",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"completed_at": {
"name": "completed_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_digest_compilations_digest": {
"name": "idx_digest_compilations_digest",
"columns": [
{
"expression": "digest_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_compilations_video": {
"name": "idx_digest_compilations_video",
"columns": [
{
"expression": "video_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_compilations_status": {
"name": "idx_digest_compilations_status",
"columns": [
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_compilations_folder": {
"name": "idx_digest_compilations_folder",
"columns": [
{
"expression": "folder_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.digest_generated_clips": {
"name": "digest_generated_clips",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"selected_clip_id": {
"name": "selected_clip_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"digest_id": {
"name": "digest_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"folder_id": {
"name": "folder_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"clip_path": {
"name": "clip_path",
"type": "text",
"primaryKey": false,
"notNull": false
},
"gif_path": {
"name": "gif_path",
"type": "text",
"primaryKey": false,
"notNull": false
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'pending'"
},
"error": {
"name": "error",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"completed_at": {
"name": "completed_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"published_to_public_media_id": {
"name": "published_to_public_media_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"published_at": {
"name": "published_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_digest_generated_clips_selected": {
"name": "idx_digest_generated_clips_selected",
"columns": [
{
"expression": "selected_clip_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_generated_clips_digest": {
"name": "idx_digest_generated_clips_digest",
"columns": [
{
"expression": "digest_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_generated_clips_status": {
"name": "idx_digest_generated_clips_status",
"columns": [
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_generated_clips_folder": {
"name": "idx_digest_generated_clips_folder",
"columns": [
{
"expression": "folder_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.digest_generated_scenes": {
"name": "digest_generated_scenes",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"digest_id": {
"name": "digest_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"video_id": {
"name": "video_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"folder_id": {
"name": "folder_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"scene_number": {
"name": "scene_number",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"scene_path": {
"name": "scene_path",
"type": "text",
"primaryKey": false,
"notNull": false
},
"start_time": {
"name": "start_time",
"type": "real",
"primaryKey": false,
"notNull": true
},
"end_time": {
"name": "end_time",
"type": "real",
"primaryKey": false,
"notNull": true
},
"duration": {
"name": "duration",
"type": "real",
"primaryKey": false,
"notNull": true
},
"tags": {
"name": "tags",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"dominant_position": {
"name": "dominant_position",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"published_to_public_media_id": {
"name": "published_to_public_media_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"published_at": {
"name": "published_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_digest_generated_scenes_digest": {
"name": "idx_digest_generated_scenes_digest",
"columns": [
{
"expression": "digest_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_generated_scenes_video": {
"name": "idx_digest_generated_scenes_video",
"columns": [
{
"expression": "video_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_generated_scenes_folder": {
"name": "idx_digest_generated_scenes_folder",
"columns": [
{
"expression": "folder_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_generated_scenes_path": {
"name": "idx_digest_generated_scenes_path",
"columns": [
{
"expression": "scene_path",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.digest_output_folders": {
"name": "digest_output_folders",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"digest_id": {
"name": "digest_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"video_id": {
"name": "video_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"folder_path": {
"name": "folder_path",
"type": "text",
"primaryKey": false,
"notNull": true
},
"folder_name": {
"name": "folder_name",
"type": "text",
"primaryKey": false,
"notNull": true
},
"folder_type": {
"name": "folder_type",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'clips'"
},
"clip_count": {
"name": "clip_count",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"compilation_count": {
"name": "compilation_count",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"total_size": {
"name": "total_size",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_digest_output_folders_digest": {
"name": "idx_digest_output_folders_digest",
"columns": [
{
"expression": "digest_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_output_folders_video": {
"name": "idx_digest_output_folders_video",
"columns": [
{
"expression": "video_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_output_folders_path": {
"name": "idx_digest_output_folders_path",
"columns": [
{
"expression": "folder_path",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.digest_selected_clips": {
"name": "digest_selected_clips",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"digest_id": {
"name": "digest_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"video_id": {
"name": "video_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"clip_type": {
"name": "clip_type",
"type": "text",
"primaryKey": false,
"notNull": true
},
"start_time": {
"name": "start_time",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"end_time": {
"name": "end_time",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"duration": {
"name": "duration",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"reason": {
"name": "reason",
"type": "text",
"primaryKey": false,
"notNull": false
},
"interest_score": {
"name": "interest_score",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"position": {
"name": "position",
"type": "text",
"primaryKey": false,
"notNull": false
},
"transcript_hint": {
"name": "transcript_hint",
"type": "text",
"primaryKey": false,
"notNull": false
},
"tags": {
"name": "tags",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"source": {
"name": "source",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'machine'"
},
"is_included": {
"name": "is_included",
"type": "integer",
"primaryKey": false,
"notNull": true,
"default": 1
},
"is_hook": {
"name": "is_hook",
"type": "integer",
"primaryKey": false,
"notNull": true,
"default": 0
},
"sequence_order": {
"name": "sequence_order",
"type": "integer",
"primaryKey": false,
"notNull": true,
"default": 0
},
"hook_source_clip_id": {
"name": "hook_source_clip_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_digest_selected_clips_digest": {
"name": "idx_digest_selected_clips_digest",
"columns": [
{
"expression": "digest_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_selected_clips_video": {
"name": "idx_digest_selected_clips_video",
"columns": [
{
"expression": "video_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_selected_clips_type": {
"name": "idx_digest_selected_clips_type",
"columns": [
{
"expression": "clip_type",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_selected_clips_source": {
"name": "idx_digest_selected_clips_source",
"columns": [
{
"expression": "source",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_selected_clips_sequence": {
"name": "idx_digest_selected_clips_sequence",
"columns": [
{
"expression": "sequence_order",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_selected_clips_is_hook": {
"name": "idx_digest_selected_clips_is_hook",
"columns": [
{
"expression": "is_hook",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_selected_clips_hook_source": {
"name": "idx_digest_selected_clips_hook_source",
"columns": [
{
"expression": "hook_source_clip_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.digest_suggested_tags": {
"name": "digest_suggested_tags",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"digest_id": {
"name": "digest_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"video_id": {
"name": "video_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"suggested_category": {
"name": "suggested_category",
"type": "text",
"primaryKey": false,
"notNull": true
},
"suggested_value": {
"name": "suggested_value",
"type": "text",
"primaryKey": false,
"notNull": true
},
"confidence": {
"name": "confidence",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'pending'"
},
"mapped_tag_id": {
"name": "mapped_tag_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"reviewed_by": {
"name": "reviewed_by",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"reviewed_at": {
"name": "reviewed_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_digest_suggested_tags_digest": {
"name": "idx_digest_suggested_tags_digest",
"columns": [
{
"expression": "digest_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_suggested_tags_video": {
"name": "idx_digest_suggested_tags_video",
"columns": [
{
"expression": "video_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_suggested_tags_status": {
"name": "idx_digest_suggested_tags_status",
"columns": [
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_suggested_tags_cat_val": {
"name": "idx_digest_suggested_tags_cat_val",
"columns": [
{
"expression": "suggested_category",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "suggested_value",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.digest_video_tags": {
"name": "digest_video_tags",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"digest_id": {
"name": "digest_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"video_id": {
"name": "video_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"category": {
"name": "category",
"type": "text",
"primaryKey": false,
"notNull": true
},
"value": {
"name": "value",
"type": "text",
"primaryKey": false,
"notNull": true
},
"confidence": {
"name": "confidence",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"source": {
"name": "source",
"type": "text",
"primaryKey": false,
"notNull": false,
"default": "'digest'"
},
"evidence": {
"name": "evidence",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_digest_video_tags_digest": {
"name": "idx_digest_video_tags_digest",
"columns": [
{
"expression": "digest_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_video_tags_video": {
"name": "idx_digest_video_tags_video",
"columns": [
{
"expression": "video_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_video_tags_category": {
"name": "idx_digest_video_tags_category",
"columns": [
{
"expression": "category",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_video_tags_value": {
"name": "idx_digest_video_tags_value",
"columns": [
{
"expression": "value",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_digest_video_tags_cat_val": {
"name": "idx_digest_video_tags_cat_val",
"columns": [
{
"expression": "category",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "value",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.email_change_tokens": {
"name": "email_change_tokens",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"new_email": {
"name": "new_email",
"type": "text",
"primaryKey": false,
"notNull": true
},
"token": {
"name": "token",
"type": "text",
"primaryKey": false,
"notNull": true
},
"expires_at": {
"name": "expires_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_email_change_tokens_token": {
"name": "idx_email_change_tokens_token",
"columns": [
{
"expression": "token",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_email_change_tokens_user": {
"name": "idx_email_change_tokens_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"email_change_tokens_token_unique": {
"name": "email_change_tokens_token_unique",
"nullsNotDistinct": false,
"columns": [
"token"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.email_verification_tokens": {
"name": "email_verification_tokens",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"token": {
"name": "token",
"type": "text",
"primaryKey": false,
"notNull": true
},
"expires_at": {
"name": "expires_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_email_verification_tokens_token": {
"name": "idx_email_verification_tokens_token",
"columns": [
{
"expression": "token",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_email_verification_tokens_user": {
"name": "idx_email_verification_tokens_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"email_verification_tokens_token_unique": {
"name": "email_verification_tokens_token_unique",
"nullsNotDistinct": false,
"columns": [
"token"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.featured_playlists": {
"name": "featured_playlists",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"playlist_id": {
"name": "playlist_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"position": {
"name": "position",
"type": "integer",
"primaryKey": false,
"notNull": true,
"default": 0
},
"featured_by": {
"name": "featured_by",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"featured_at": {
"name": "featured_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_featured_playlists_position": {
"name": "idx_featured_playlists_position",
"columns": [
{
"expression": "position",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"featured_playlists_playlist_id_unique": {
"name": "featured_playlists_playlist_id_unique",
"nullsNotDistinct": false,
"columns": [
"playlist_id"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.friendships": {
"name": "friendships",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"friend_id": {
"name": "friend_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'pending'"
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"accepted_at": {
"name": "accepted_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_friendships_user_friend": {
"name": "idx_friendships_user_friend",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "friend_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_friendships_user": {
"name": "idx_friendships_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_friendships_friend": {
"name": "idx_friendships_friend",
"columns": [
{
"expression": "friend_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_friendships_status": {
"name": "idx_friendships_status",
"columns": [
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.geo_blocking_rules": {
"name": "geo_blocking_rules",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"country": {
"name": "country",
"type": "text",
"primaryKey": false,
"notNull": true
},
"country_name": {
"name": "country_name",
"type": "text",
"primaryKey": false,
"notNull": false
},
"region": {
"name": "region",
"type": "text",
"primaryKey": false,
"notNull": false
},
"city": {
"name": "city",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"created_by": {
"name": "created_by",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"note": {
"name": "note",
"type": "text",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_geo_blocking_country": {
"name": "idx_geo_blocking_country",
"columns": [
{
"expression": "country",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_geo_blocking_unique": {
"name": "idx_geo_blocking_unique",
"columns": [
{
"expression": "country",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "region",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "city",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": true,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"geo_blocking_rules_created_by_users_id_fk": {
"name": "geo_blocking_rules_created_by_users_id_fk",
"tableFrom": "geo_blocking_rules",
"tableTo": "users",
"columnsFrom": [
"created_by"
],
"columnsTo": [
"id"
],
"onDelete": "no action",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.highlight_cooldowns": {
"name": "highlight_cooldowns",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"last_generated_at": {
"name": "last_generated_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
}
},
"indexes": {
"idx_highlight_cooldowns_user": {
"name": "idx_highlight_cooldowns_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.invoices": {
"name": "invoices",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"plan_id": {
"name": "plan_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"invoice_number": {
"name": "invoice_number",
"type": "text",
"primaryKey": false,
"notNull": true
},
"amount_cad": {
"name": "amount_cad",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'pending'"
},
"due_date": {
"name": "due_date",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
},
"paid_at": {
"name": "paid_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"payment_id": {
"name": "payment_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"description": {
"name": "description",
"type": "text",
"primaryKey": false,
"notNull": false
},
"notes": {
"name": "notes",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"updated_at": {
"name": "updated_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_invoices_user": {
"name": "idx_invoices_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_invoices_status": {
"name": "idx_invoices_status",
"columns": [
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_invoices_due_date": {
"name": "idx_invoices_due_date",
"columns": [
{
"expression": "due_date",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_invoices_number": {
"name": "idx_invoices_number",
"columns": [
{
"expression": "invoice_number",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"invoices_user_id_users_id_fk": {
"name": "invoices_user_id_users_id_fk",
"tableFrom": "invoices",
"tableTo": "users",
"columnsFrom": [
"user_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"invoices_plan_id_subscription_plans_id_fk": {
"name": "invoices_plan_id_subscription_plans_id_fk",
"tableFrom": "invoices",
"tableTo": "subscription_plans",
"columnsFrom": [
"plan_id"
],
"columnsTo": [
"id"
],
"onDelete": "no action",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"invoices_invoice_number_unique": {
"name": "invoices_invoice_number_unique",
"nullsNotDistinct": false,
"columns": [
"invoice_number"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.jobs": {
"name": "jobs",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"type": {
"name": "type",
"type": "text",
"primaryKey": false,
"notNull": true
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": false,
"default": "'pending'"
},
"progress": {
"name": "progress",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"log": {
"name": "log",
"type": "text",
"primaryKey": false,
"notNull": false
},
"params": {
"name": "params",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"started_at": {
"name": "started_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"completed_at": {
"name": "completed_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"resource_category": {
"name": "resource_category",
"type": "text",
"primaryKey": false,
"notNull": false,
"default": "'cpu'"
},
"vram_required": {
"name": "vram_required",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"queue_position": {
"name": "queue_position",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"waiting_reason": {
"name": "waiting_reason",
"type": "text",
"primaryKey": false,
"notNull": false
},
"priority": {
"name": "priority",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 5
},
"pipeline_id": {
"name": "pipeline_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"pipeline_step_id": {
"name": "pipeline_step_id",
"type": "integer",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_jobs_queue": {
"name": "idx_jobs_queue",
"columns": [
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "priority",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "created_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_jobs_resource": {
"name": "idx_jobs_resource",
"columns": [
{
"expression": "resource_category",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_jobs_pipeline": {
"name": "idx_jobs_pipeline",
"columns": [
{
"expression": "pipeline_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.moderation_word_lists": {
"name": "moderation_word_lists",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"level": {
"name": "level",
"type": "text",
"primaryKey": false,
"notNull": true
},
"word": {
"name": "word",
"type": "text",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"created_by": {
"name": "created_by",
"type": "integer",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_moderation_word_lists_level": {
"name": "idx_moderation_word_lists_level",
"columns": [
{
"expression": "level",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_moderation_word_lists_word": {
"name": "idx_moderation_word_lists_word",
"columns": [
{
"expression": "word",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.notification_preferences": {
"name": "notification_preferences",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"email_friend_request": {
"name": "email_friend_request",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"email_friend_request_accepted": {
"name": "email_friend_request_accepted",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"email_poke": {
"name": "email_poke",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"email_video_recommendation": {
"name": "email_video_recommendation",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"email_watch_party_invite": {
"name": "email_watch_party_invite",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"email_achievement": {
"name": "email_achievement",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"email_digest_complete": {
"name": "email_digest_complete",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"email_digest_failed": {
"name": "email_digest_failed",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"email_upload_approved": {
"name": "email_upload_approved",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"email_upload_rejected": {
"name": "email_upload_rejected",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"inapp_friend_request": {
"name": "inapp_friend_request",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"inapp_friend_request_accepted": {
"name": "inapp_friend_request_accepted",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"inapp_poke": {
"name": "inapp_poke",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"inapp_video_recommendation": {
"name": "inapp_video_recommendation",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"inapp_watch_party_invite": {
"name": "inapp_watch_party_invite",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"inapp_achievement": {
"name": "inapp_achievement",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"inapp_digest_complete": {
"name": "inapp_digest_complete",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"inapp_digest_failed": {
"name": "inapp_digest_failed",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"inapp_upload_approved": {
"name": "inapp_upload_approved",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"inapp_upload_rejected": {
"name": "inapp_upload_rejected",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"inapp_comment_reply": {
"name": "inapp_comment_reply",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"inapp_system": {
"name": "inapp_system",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"quiet_hours_enabled": {
"name": "quiet_hours_enabled",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"quiet_hours_start": {
"name": "quiet_hours_start",
"type": "text",
"primaryKey": false,
"notNull": false
},
"quiet_hours_end": {
"name": "quiet_hours_end",
"type": "text",
"primaryKey": false,
"notNull": false
},
"updated_at": {
"name": "updated_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_notification_preferences_user": {
"name": "idx_notification_preferences_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"notification_preferences_user_id_users_id_fk": {
"name": "notification_preferences_user_id_users_id_fk",
"tableFrom": "notification_preferences",
"tableTo": "users",
"columnsFrom": [
"user_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"notification_preferences_user_id_unique": {
"name": "notification_preferences_user_id_unique",
"nullsNotDistinct": false,
"columns": [
"user_id"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.notifications": {
"name": "notifications",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"type": {
"name": "type",
"type": "text",
"primaryKey": false,
"notNull": true
},
"title": {
"name": "title",
"type": "text",
"primaryKey": false,
"notNull": true
},
"message": {
"name": "message",
"type": "text",
"primaryKey": false,
"notNull": false
},
"reference_type": {
"name": "reference_type",
"type": "text",
"primaryKey": false,
"notNull": false
},
"reference_id": {
"name": "reference_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"actor_id": {
"name": "actor_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"metadata": {
"name": "metadata",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"is_read": {
"name": "is_read",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"action_url": {
"name": "action_url",
"type": "text",
"primaryKey": false,
"notNull": false
},
"group_key": {
"name": "group_key",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"read_at": {
"name": "read_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_notifications_user_unread": {
"name": "idx_notifications_user_unread",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "is_read",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_notifications_user_created": {
"name": "idx_notifications_user_created",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "created_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_notifications_type": {
"name": "idx_notifications_type",
"columns": [
{
"expression": "type",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_notifications_created": {
"name": "idx_notifications_created",
"columns": [
{
"expression": "created_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_notifications_actor": {
"name": "idx_notifications_actor",
"columns": [
{
"expression": "actor_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"notifications_user_id_users_id_fk": {
"name": "notifications_user_id_users_id_fk",
"tableFrom": "notifications",
"tableTo": "users",
"columnsFrom": [
"user_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"notifications_actor_id_users_id_fk": {
"name": "notifications_actor_id_users_id_fk",
"tableFrom": "notifications",
"tableTo": "users",
"columnsFrom": [
"actor_id"
],
"columnsTo": [
"id"
],
"onDelete": "set null",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.password_reset_tokens": {
"name": "password_reset_tokens",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"token": {
"name": "token",
"type": "text",
"primaryKey": false,
"notNull": true
},
"expires_at": {
"name": "expires_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"used_at": {
"name": "used_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_password_reset_tokens_token": {
"name": "idx_password_reset_tokens_token",
"columns": [
{
"expression": "token",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_password_reset_tokens_user": {
"name": "idx_password_reset_tokens_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"password_reset_tokens_token_unique": {
"name": "password_reset_tokens_token_unique",
"nullsNotDistinct": false,
"columns": [
"token"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.payment_audit_log": {
"name": "payment_audit_log",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"payment_id": {
"name": "payment_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"invoice_id": {
"name": "invoice_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"action": {
"name": "action",
"type": "text",
"primaryKey": false,
"notNull": true
},
"previous_state": {
"name": "previous_state",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"new_state": {
"name": "new_state",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"performed_by": {
"name": "performed_by",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"notes": {
"name": "notes",
"type": "text",
"primaryKey": false,
"notNull": false
},
"ip_address": {
"name": "ip_address",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_payment_audit_payment": {
"name": "idx_payment_audit_payment",
"columns": [
{
"expression": "payment_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_payment_audit_invoice": {
"name": "idx_payment_audit_invoice",
"columns": [
{
"expression": "invoice_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_payment_audit_user": {
"name": "idx_payment_audit_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_payment_audit_action": {
"name": "idx_payment_audit_action",
"columns": [
{
"expression": "action",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_payment_audit_created": {
"name": "idx_payment_audit_created",
"columns": [
{
"expression": "created_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"payment_audit_log_payment_id_payments_id_fk": {
"name": "payment_audit_log_payment_id_payments_id_fk",
"tableFrom": "payment_audit_log",
"tableTo": "payments",
"columnsFrom": [
"payment_id"
],
"columnsTo": [
"id"
],
"onDelete": "no action",
"onUpdate": "no action"
},
"payment_audit_log_invoice_id_invoices_id_fk": {
"name": "payment_audit_log_invoice_id_invoices_id_fk",
"tableFrom": "payment_audit_log",
"tableTo": "invoices",
"columnsFrom": [
"invoice_id"
],
"columnsTo": [
"id"
],
"onDelete": "no action",
"onUpdate": "no action"
},
"payment_audit_log_user_id_users_id_fk": {
"name": "payment_audit_log_user_id_users_id_fk",
"tableFrom": "payment_audit_log",
"tableTo": "users",
"columnsFrom": [
"user_id"
],
"columnsTo": [
"id"
],
"onDelete": "no action",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.payments": {
"name": "payments",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"invoice_id": {
"name": "invoice_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"sender_email": {
"name": "sender_email",
"type": "text",
"primaryKey": false,
"notNull": true
},
"sender_name": {
"name": "sender_name",
"type": "text",
"primaryKey": false,
"notNull": false
},
"amount_cad": {
"name": "amount_cad",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"reference_number": {
"name": "reference_number",
"type": "text",
"primaryKey": false,
"notNull": false
},
"custom_message": {
"name": "custom_message",
"type": "text",
"primaryKey": false,
"notNull": false
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'unmatched'"
},
"match_confidence": {
"name": "match_confidence",
"type": "real",
"primaryKey": false,
"notNull": false
},
"match_method": {
"name": "match_method",
"type": "text",
"primaryKey": false,
"notNull": false
},
"raw_email_json": {
"name": "raw_email_json",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"received_at": {
"name": "received_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
},
"processed_at": {
"name": "processed_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"processed_by": {
"name": "processed_by",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"updated_at": {
"name": "updated_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_payments_user": {
"name": "idx_payments_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_payments_invoice": {
"name": "idx_payments_invoice",
"columns": [
{
"expression": "invoice_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_payments_status": {
"name": "idx_payments_status",
"columns": [
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_payments_sender_email": {
"name": "idx_payments_sender_email",
"columns": [
{
"expression": "sender_email",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_payments_reference": {
"name": "idx_payments_reference",
"columns": [
{
"expression": "reference_number",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_payments_received_at": {
"name": "idx_payments_received_at",
"columns": [
{
"expression": "received_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"payments_invoice_id_invoices_id_fk": {
"name": "payments_invoice_id_invoices_id_fk",
"tableFrom": "payments",
"tableTo": "invoices",
"columnsFrom": [
"invoice_id"
],
"columnsTo": [
"id"
],
"onDelete": "no action",
"onUpdate": "no action"
},
"payments_user_id_users_id_fk": {
"name": "payments_user_id_users_id_fk",
"tableFrom": "payments",
"tableTo": "users",
"columnsFrom": [
"user_id"
],
"columnsTo": [
"id"
],
"onDelete": "set null",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"payments_reference_number_unique": {
"name": "payments_reference_number_unique",
"nullsNotDistinct": false,
"columns": [
"reference_number"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.performer_discrepancies": {
"name": "performer_discrepancies",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"video_id": {
"name": "video_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"digest_id": {
"name": "digest_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"parsed_performer_name": {
"name": "parsed_performer_name",
"type": "text",
"primaryKey": false,
"notNull": true
},
"parsed_method": {
"name": "parsed_method",
"type": "text",
"primaryKey": false,
"notNull": false
},
"parsed_confidence": {
"name": "parsed_confidence",
"type": "real",
"primaryKey": false,
"notNull": false
},
"detected_performer_id": {
"name": "detected_performer_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"detected_performer_name": {
"name": "detected_performer_name",
"type": "text",
"primaryKey": false,
"notNull": false
},
"face_match_confidence": {
"name": "face_match_confidence",
"type": "real",
"primaryKey": false,
"notNull": false
},
"face_similarity": {
"name": "face_similarity",
"type": "real",
"primaryKey": false,
"notNull": false
},
"discrepancy_type": {
"name": "discrepancy_type",
"type": "text",
"primaryKey": false,
"notNull": true
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'pending'"
},
"resolved_by": {
"name": "resolved_by",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"resolved_at": {
"name": "resolved_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"resolution": {
"name": "resolution",
"type": "text",
"primaryKey": false,
"notNull": false
},
"admin_notes": {
"name": "admin_notes",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true,
"default": "now()"
}
},
"indexes": {
"idx_discrepancies_video": {
"name": "idx_discrepancies_video",
"columns": [
{
"expression": "video_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_discrepancies_digest": {
"name": "idx_discrepancies_digest",
"columns": [
{
"expression": "digest_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_discrepancies_status": {
"name": "idx_discrepancies_status",
"columns": [
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_discrepancies_type": {
"name": "idx_discrepancies_type",
"columns": [
{
"expression": "discrepancy_type",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_discrepancies_detected_performer": {
"name": "idx_discrepancies_detected_performer",
"columns": [
{
"expression": "detected_performer_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"performer_discrepancies_video_id_videos_id_fk": {
"name": "performer_discrepancies_video_id_videos_id_fk",
"tableFrom": "performer_discrepancies",
"tableTo": "videos",
"columnsFrom": [
"video_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"performer_discrepancies_digest_id_video_digests_id_fk": {
"name": "performer_discrepancies_digest_id_video_digests_id_fk",
"tableFrom": "performer_discrepancies",
"tableTo": "video_digests",
"columnsFrom": [
"digest_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"performer_discrepancies_detected_performer_id_creators_id_fk": {
"name": "performer_discrepancies_detected_performer_id_creators_id_fk",
"tableFrom": "performer_discrepancies",
"tableTo": "creators",
"columnsFrom": [
"detected_performer_id"
],
"columnsTo": [
"id"
],
"onDelete": "set null",
"onUpdate": "no action"
},
"performer_discrepancies_resolved_by_users_id_fk": {
"name": "performer_discrepancies_resolved_by_users_id_fk",
"tableFrom": "performer_discrepancies",
"tableTo": "users",
"columnsFrom": [
"resolved_by"
],
"columnsTo": [
"id"
],
"onDelete": "set null",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.performer_faces": {
"name": "performer_faces",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"performer_id": {
"name": "performer_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"performer_name": {
"name": "performer_name",
"type": "text",
"primaryKey": false,
"notNull": false
},
"face_embedding": {
"name": "face_embedding",
"type": "jsonb",
"primaryKey": false,
"notNull": true
},
"gender": {
"name": "gender",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"age": {
"name": "age",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"detection_score": {
"name": "detection_score",
"type": "real",
"primaryKey": false,
"notNull": false
},
"bbox": {
"name": "bbox",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"face_crop_path": {
"name": "face_crop_path",
"type": "text",
"primaryKey": false,
"notNull": false
},
"source_frame": {
"name": "source_frame",
"type": "text",
"primaryKey": false,
"notNull": false
},
"source_video": {
"name": "source_video",
"type": "text",
"primaryKey": false,
"notNull": false
},
"source_digest_id": {
"name": "source_digest_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"frame_timestamp": {
"name": "frame_timestamp",
"type": "real",
"primaryKey": false,
"notNull": false
},
"frame_index": {
"name": "frame_index",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"faces_in_frame": {
"name": "faces_in_frame",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 1
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": false,
"default": "'pending'"
},
"match_confidence": {
"name": "match_confidence",
"type": "real",
"primaryKey": false,
"notNull": false
},
"is_verified": {
"name": "is_verified",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"updated_at": {
"name": "updated_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_performer_faces_performer": {
"name": "idx_performer_faces_performer",
"columns": [
{
"expression": "performer_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_performer_faces_name": {
"name": "idx_performer_faces_name",
"columns": [
{
"expression": "performer_name",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_performer_faces_video": {
"name": "idx_performer_faces_video",
"columns": [
{
"expression": "source_video",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_performer_faces_gender": {
"name": "idx_performer_faces_gender",
"columns": [
{
"expression": "gender",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_performer_faces_digest": {
"name": "idx_performer_faces_digest",
"columns": [
{
"expression": "source_digest_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_performer_faces_crop": {
"name": "idx_performer_faces_crop",
"columns": [
{
"expression": "face_crop_path",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_performer_faces_status": {
"name": "idx_performer_faces_status",
"columns": [
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_performer_faces_faces_in_frame": {
"name": "idx_performer_faces_faces_in_frame",
"columns": [
{
"expression": "faces_in_frame",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_performer_faces_det_score": {
"name": "idx_performer_faces_det_score",
"columns": [
{
"expression": "detection_score",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.pipeline_step_events": {
"name": "pipeline_step_events",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"step_id": {
"name": "step_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"event_type": {
"name": "event_type",
"type": "text",
"primaryKey": false,
"notNull": true
},
"event_data": {
"name": "event_data",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_pipeline_step_events_step": {
"name": "idx_pipeline_step_events_step",
"columns": [
{
"expression": "step_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_pipeline_step_events_created": {
"name": "idx_pipeline_step_events_created",
"columns": [
{
"expression": "created_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"pipeline_step_events_step_id_pipeline_steps_id_fk": {
"name": "pipeline_step_events_step_id_pipeline_steps_id_fk",
"tableFrom": "pipeline_step_events",
"tableTo": "pipeline_steps",
"columnsFrom": [
"step_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.pipeline_steps": {
"name": "pipeline_steps",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"pipeline_id": {
"name": "pipeline_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"name": {
"name": "name",
"type": "text",
"primaryKey": false,
"notNull": true
},
"step_type": {
"name": "step_type",
"type": "text",
"primaryKey": false,
"notNull": true
},
"sequence_order": {
"name": "sequence_order",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"depends_on": {
"name": "depends_on",
"type": "jsonb",
"primaryKey": false,
"notNull": false,
"default": "'[]'::jsonb"
},
"resource_category": {
"name": "resource_category",
"type": "text",
"primaryKey": false,
"notNull": false,
"default": "'cpu'"
},
"vram_required": {
"name": "vram_required",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"required_containers": {
"name": "required_containers",
"type": "jsonb",
"primaryKey": false,
"notNull": false,
"default": "'[]'::jsonb"
},
"config": {
"name": "config",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'pending'"
},
"progress": {
"name": "progress",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"result": {
"name": "result",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"error": {
"name": "error",
"type": "text",
"primaryKey": false,
"notNull": false
},
"estimated_duration_ms": {
"name": "estimated_duration_ms",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"started_at": {
"name": "started_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"completed_at": {
"name": "completed_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"duration_ms": {
"name": "duration_ms",
"type": "integer",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_pipeline_steps_pipeline": {
"name": "idx_pipeline_steps_pipeline",
"columns": [
{
"expression": "pipeline_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_pipeline_steps_sequence": {
"name": "idx_pipeline_steps_sequence",
"columns": [
{
"expression": "pipeline_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "sequence_order",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_pipeline_steps_status": {
"name": "idx_pipeline_steps_status",
"columns": [
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"pipeline_steps_pipeline_id_pipelines_id_fk": {
"name": "pipeline_steps_pipeline_id_pipelines_id_fk",
"tableFrom": "pipeline_steps",
"tableTo": "pipelines",
"columnsFrom": [
"pipeline_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.pipeline_templates": {
"name": "pipeline_templates",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"name": {
"name": "name",
"type": "text",
"primaryKey": false,
"notNull": true
},
"display_name": {
"name": "display_name",
"type": "text",
"primaryKey": false,
"notNull": true
},
"description": {
"name": "description",
"type": "text",
"primaryKey": false,
"notNull": false
},
"steps": {
"name": "steps",
"type": "jsonb",
"primaryKey": false,
"notNull": true
},
"context_schema": {
"name": "context_schema",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"updated_at": {
"name": "updated_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_pipeline_templates_name": {
"name": "idx_pipeline_templates_name",
"columns": [
{
"expression": "name",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"pipeline_templates_name_unique": {
"name": "pipeline_templates_name_unique",
"nullsNotDistinct": false,
"columns": [
"name"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.pipelines": {
"name": "pipelines",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"name": {
"name": "name",
"type": "text",
"primaryKey": false,
"notNull": true
},
"description": {
"name": "description",
"type": "text",
"primaryKey": false,
"notNull": false
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'pending'"
},
"priority": {
"name": "priority",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 5
},
"context": {
"name": "context",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"total_vram_required": {
"name": "total_vram_required",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"estimated_duration_ms": {
"name": "estimated_duration_ms",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"progress": {
"name": "progress",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"current_step_id": {
"name": "current_step_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"completed_steps": {
"name": "completed_steps",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"total_steps": {
"name": "total_steps",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"error": {
"name": "error",
"type": "text",
"primaryKey": false,
"notNull": false
},
"retry_count": {
"name": "retry_count",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"max_retries": {
"name": "max_retries",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 3
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"queued_at": {
"name": "queued_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"started_at": {
"name": "started_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"completed_at": {
"name": "completed_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"last_heartbeat": {
"name": "last_heartbeat",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"running_on_node": {
"name": "running_on_node",
"type": "text",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_pipelines_status": {
"name": "idx_pipelines_status",
"columns": [
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_pipelines_priority": {
"name": "idx_pipelines_priority",
"columns": [
{
"expression": "priority",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "created_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_pipelines_heartbeat": {
"name": "idx_pipelines_heartbeat",
"columns": [
{
"expression": "last_heartbeat",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.playlist_videos": {
"name": "playlist_videos",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"playlist_id": {
"name": "playlist_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"media_id": {
"name": "media_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"position": {
"name": "position",
"type": "integer",
"primaryKey": false,
"notNull": true,
"default": 0
},
"added_at": {
"name": "added_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_playlist_videos_playlist": {
"name": "idx_playlist_videos_playlist",
"columns": [
{
"expression": "playlist_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_playlist_videos_media": {
"name": "idx_playlist_videos_media",
"columns": [
{
"expression": "media_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_playlist_videos_unique": {
"name": "idx_playlist_videos_unique",
"columns": [
{
"expression": "playlist_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "media_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.playlist_views": {
"name": "playlist_views",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"playlist_id": {
"name": "playlist_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"session_id": {
"name": "session_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_playlist_views_playlist": {
"name": "idx_playlist_views_playlist",
"columns": [
{
"expression": "playlist_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_playlist_views_unique": {
"name": "idx_playlist_views_unique",
"columns": [
{
"expression": "playlist_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "session_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.playlists": {
"name": "playlists",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"name": {
"name": "name",
"type": "text",
"primaryKey": false,
"notNull": true
},
"description": {
"name": "description",
"type": "text",
"primaryKey": false,
"notNull": false
},
"is_public": {
"name": "is_public",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"share_token": {
"name": "share_token",
"type": "text",
"primaryKey": false,
"notNull": false
},
"thumbnail_media_id": {
"name": "thumbnail_media_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"video_count": {
"name": "video_count",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"total_duration_seconds": {
"name": "total_duration_seconds",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"view_count": {
"name": "view_count",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"updated_at": {
"name": "updated_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_playlists_user": {
"name": "idx_playlists_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_playlists_public": {
"name": "idx_playlists_public",
"columns": [
{
"expression": "is_public",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_playlists_share_token": {
"name": "idx_playlists_share_token",
"columns": [
{
"expression": "share_token",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_playlists_user_name": {
"name": "idx_playlists_user_name",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "name",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": true,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"playlists_share_token_unique": {
"name": "playlists_share_token_unique",
"nullsNotDistinct": false,
"columns": [
"share_token"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.pokes": {
"name": "pokes",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"from_user_id": {
"name": "from_user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"to_user_id": {
"name": "to_user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"is_read": {
"name": "is_read",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_pokes_to_user": {
"name": "idx_pokes_to_user",
"columns": [
{
"expression": "to_user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_pokes_from_user": {
"name": "idx_pokes_from_user",
"columns": [
{
"expression": "from_user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.privacy_settings": {
"name": "privacy_settings",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"show_online_status": {
"name": "show_online_status",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"show_currently_watching": {
"name": "show_currently_watching",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"show_in_friend_activity": {
"name": "show_in_friend_activity",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"anonymize_public_comments": {
"name": "anonymize_public_comments",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"hide_public_reactions": {
"name": "hide_public_reactions",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"hide_public_finishes": {
"name": "hide_public_finishes",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"allow_friend_requests": {
"name": "allow_friend_requests",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"close_friends_only_watching": {
"name": "close_friends_only_watching",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"updated_at": {
"name": "updated_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_privacy_settings_user": {
"name": "idx_privacy_settings_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"privacy_settings_user_id_users_id_fk": {
"name": "privacy_settings_user_id_users_id_fk",
"tableFrom": "privacy_settings",
"tableTo": "users",
"columnsFrom": [
"user_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"privacy_settings_user_id_unique": {
"name": "privacy_settings_user_id_unique",
"nullsNotDistinct": false,
"columns": [
"user_id"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.public_media": {
"name": "public_media",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"path": {
"name": "path",
"type": "text",
"primaryKey": false,
"notNull": true
},
"filename": {
"name": "filename",
"type": "text",
"primaryKey": false,
"notNull": true
},
"category": {
"name": "category",
"type": "text",
"primaryKey": false,
"notNull": true
},
"duration_seconds": {
"name": "duration_seconds",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"quality": {
"name": "quality",
"type": "text",
"primaryKey": false,
"notNull": false
},
"orientation": {
"name": "orientation",
"type": "text",
"primaryKey": false,
"notNull": false
},
"thumbnail_path": {
"name": "thumbnail_path",
"type": "text",
"primaryKey": false,
"notNull": false
},
"file_size": {
"name": "file_size",
"type": "bigint",
"primaryKey": false,
"notNull": false
},
"view_count": {
"name": "view_count",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"upvote_count": {
"name": "upvote_count",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"comment_count": {
"name": "comment_count",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"finish_count": {
"name": "finish_count",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"total_watch_time": {
"name": "total_watch_time",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"is_locked": {
"name": "is_locked",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"locked_at": {
"name": "locked_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"locked_by": {
"name": "locked_by",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"position": {
"name": "position",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"uploader_id": {
"name": "uploader_id",
"type": "integer",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_public_media_category": {
"name": "idx_public_media_category",
"columns": [
{
"expression": "category",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_public_media_path": {
"name": "idx_public_media_path",
"columns": [
{
"expression": "path",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_public_media_is_locked": {
"name": "idx_public_media_is_locked",
"columns": [
{
"expression": "is_locked",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_public_media_position": {
"name": "idx_public_media_position",
"columns": [
{
"expression": "position",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_public_media_uploader": {
"name": "idx_public_media_uploader",
"columns": [
{
"expression": "uploader_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_public_media_category_date": {
"name": "idx_public_media_category_date",
"columns": [
{
"expression": "category",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "created_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_public_media_orientation": {
"name": "idx_public_media_orientation",
"columns": [
{
"expression": "orientation",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_public_media_category_locked_date": {
"name": "idx_public_media_category_locked_date",
"columns": [
{
"expression": "category",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "is_locked",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "created_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"public_media_path_unique": {
"name": "public_media_path_unique",
"nullsNotDistinct": false,
"columns": [
"path"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.public_media_performers": {
"name": "public_media_performers",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"media_id": {
"name": "media_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"performer_id": {
"name": "performer_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"added_at": {
"name": "added_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_public_media_performers_media": {
"name": "idx_public_media_performers_media",
"columns": [
{
"expression": "media_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_public_media_performers_performer": {
"name": "idx_public_media_performers_performer",
"columns": [
{
"expression": "performer_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_public_media_performers_unique": {
"name": "idx_public_media_performers_unique",
"columns": [
{
"expression": "media_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "performer_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": true,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.public_media_tags": {
"name": "public_media_tags",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"media_id": {
"name": "media_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"tag_id": {
"name": "tag_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"added_at": {
"name": "added_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_public_media_tags_media": {
"name": "idx_public_media_tags_media",
"columns": [
{
"expression": "media_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_public_media_tags_tag": {
"name": "idx_public_media_tags_tag",
"columns": [
{
"expression": "tag_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_public_media_tags_unique": {
"name": "idx_public_media_tags_unique",
"columns": [
{
"expression": "media_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "tag_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.published_inbox_files": {
"name": "published_inbox_files",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"source_inbox_path": {
"name": "source_inbox_path",
"type": "text",
"primaryKey": false,
"notNull": true
},
"filename": {
"name": "filename",
"type": "text",
"primaryKey": false,
"notNull": true
},
"published_at": {
"name": "published_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"published_to_path": {
"name": "published_to_path",
"type": "text",
"primaryKey": false,
"notNull": false
},
"public_media_id": {
"name": "public_media_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"file_type": {
"name": "file_type",
"type": "text",
"primaryKey": false,
"notNull": true
}
},
"indexes": {
"idx_published_inbox_source": {
"name": "idx_published_inbox_source",
"columns": [
{
"expression": "source_inbox_path",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_published_inbox_file_type": {
"name": "idx_published_inbox_file_type",
"columns": [
{
"expression": "file_type",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"published_inbox_files_public_media_id_public_media_id_fk": {
"name": "published_inbox_files_public_media_id_public_media_id_fk",
"tableFrom": "published_inbox_files",
"tableTo": "public_media",
"columnsFrom": [
"public_media_id"
],
"columnsTo": [
"id"
],
"onDelete": "set null",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.rate_limits": {
"name": "rate_limits",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"key": {
"name": "key",
"type": "text",
"primaryKey": false,
"notNull": true
},
"count": {
"name": "count",
"type": "integer",
"primaryKey": false,
"notNull": true,
"default": 1
},
"reset_at": {
"name": "reset_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
}
},
"indexes": {
"idx_rate_limits_key": {
"name": "idx_rate_limits_key",
"columns": [
{
"expression": "key",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": true,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_rate_limits_reset_at": {
"name": "idx_rate_limits_reset_at",
"columns": [
{
"expression": "reset_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"rate_limits_key_unique": {
"name": "rate_limits_key_unique",
"nullsNotDistinct": false,
"columns": [
"key"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.resource_snapshots": {
"name": "resource_snapshots",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"gpu_index": {
"name": "gpu_index",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"gpu_name": {
"name": "gpu_name",
"type": "text",
"primaryKey": false,
"notNull": false
},
"vram_used_mb": {
"name": "vram_used_mb",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"vram_total_mb": {
"name": "vram_total_mb",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"gpu_utilization": {
"name": "gpu_utilization",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"gpu_temperature": {
"name": "gpu_temperature",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"active_processes": {
"name": "active_processes",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"pipeline_id": {
"name": "pipeline_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"step_id": {
"name": "step_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_resource_snapshots_created": {
"name": "idx_resource_snapshots_created",
"columns": [
{
"expression": "created_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_resource_snapshots_pipeline": {
"name": "idx_resource_snapshots_pipeline",
"columns": [
{
"expression": "pipeline_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.session_bans": {
"name": "session_bans",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"session_id": {
"name": "session_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"reason": {
"name": "reason",
"type": "text",
"primaryKey": false,
"notNull": false
},
"banned_by": {
"name": "banned_by",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"expires_at": {
"name": "expires_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_session_bans_session": {
"name": "idx_session_bans_session",
"columns": [
{
"expression": "session_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.sessions": {
"name": "sessions",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "text",
"primaryKey": true,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"last_seen_at": {
"name": "last_seen_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"ip_address": {
"name": "ip_address",
"type": "text",
"primaryKey": false,
"notNull": false
},
"user_agent": {
"name": "user_agent",
"type": "text",
"primaryKey": false,
"notNull": false
},
"device_type": {
"name": "device_type",
"type": "text",
"primaryKey": false,
"notNull": false
},
"browser": {
"name": "browser",
"type": "text",
"primaryKey": false,
"notNull": false
},
"os": {
"name": "os",
"type": "text",
"primaryKey": false,
"notNull": false
},
"country": {
"name": "country",
"type": "text",
"primaryKey": false,
"notNull": false
},
"country_name": {
"name": "country_name",
"type": "text",
"primaryKey": false,
"notNull": false
},
"region": {
"name": "region",
"type": "text",
"primaryKey": false,
"notNull": false
},
"city": {
"name": "city",
"type": "text",
"primaryKey": false,
"notNull": false
},
"timezone": {
"name": "timezone",
"type": "text",
"primaryKey": false,
"notNull": false
},
"latitude": {
"name": "latitude",
"type": "real",
"primaryKey": false,
"notNull": false
},
"longitude": {
"name": "longitude",
"type": "real",
"primaryKey": false,
"notNull": false
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"first_seen_at": {
"name": "first_seen_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"visit_count": {
"name": "visit_count",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 1
}
},
"indexes": {
"idx_sessions_user_id": {
"name": "idx_sessions_user_id",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_sessions_country": {
"name": "idx_sessions_country",
"columns": [
{
"expression": "country",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.subscription_plans": {
"name": "subscription_plans",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"name": {
"name": "name",
"type": "text",
"primaryKey": false,
"notNull": true
},
"display_name": {
"name": "display_name",
"type": "text",
"primaryKey": false,
"notNull": true
},
"description": {
"name": "description",
"type": "text",
"primaryKey": false,
"notNull": false
},
"price_cad": {
"name": "price_cad",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"duration_days": {
"name": "duration_days",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"is_active": {
"name": "is_active",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"sort_order": {
"name": "sort_order",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"updated_at": {
"name": "updated_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"subscription_plans_name_unique": {
"name": "subscription_plans_name_unique",
"nullsNotDistinct": false,
"columns": [
"name"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.tag_categories": {
"name": "tag_categories",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"name": {
"name": "name",
"type": "text",
"primaryKey": false,
"notNull": true
},
"display_order": {
"name": "display_order",
"type": "integer",
"primaryKey": false,
"notNull": true,
"default": 0
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_tag_categories_display_order": {
"name": "idx_tag_categories_display_order",
"columns": [
{
"expression": "display_order",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"tag_categories_name_unique": {
"name": "tag_categories_name_unique",
"nullsNotDistinct": false,
"columns": [
"name"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.tag_generation_jobs": {
"name": "tag_generation_jobs",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'pending'"
},
"content_type": {
"name": "content_type",
"type": "text",
"primaryKey": false,
"notNull": true
},
"content_ids": {
"name": "content_ids",
"type": "jsonb",
"primaryKey": false,
"notNull": true
},
"options": {
"name": "options",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"results": {
"name": "results",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"progress": {
"name": "progress",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"current_item": {
"name": "current_item",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"total_items": {
"name": "total_items",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"error": {
"name": "error",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"completed_at": {
"name": "completed_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_tag_gen_status": {
"name": "idx_tag_gen_status",
"columns": [
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_tag_gen_content_type": {
"name": "idx_tag_gen_content_type",
"columns": [
{
"expression": "content_type",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_tag_gen_created_at": {
"name": "idx_tag_gen_created_at",
"columns": [
{
"expression": "created_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.tags": {
"name": "tags",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"category_id": {
"name": "category_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"name": {
"name": "name",
"type": "text",
"primaryKey": false,
"notNull": true
},
"display_order": {
"name": "display_order",
"type": "integer",
"primaryKey": false,
"notNull": true,
"default": 0
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_tags_category": {
"name": "idx_tags_category",
"columns": [
{
"expression": "category_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_tags_display_order": {
"name": "idx_tags_display_order",
"columns": [
{
"expression": "display_order",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_tags_unique_name": {
"name": "idx_tags_unique_name",
"columns": [
{
"expression": "category_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "name",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.upload_invites": {
"name": "upload_invites",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"code": {
"name": "code",
"type": "text",
"primaryKey": false,
"notNull": true
},
"label": {
"name": "label",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_by": {
"name": "created_by",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'active'"
},
"max_uploads": {
"name": "max_uploads",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"upload_count": {
"name": "upload_count",
"type": "integer",
"primaryKey": false,
"notNull": true,
"default": 0
},
"expires_at": {
"name": "expires_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_upload_invites_code": {
"name": "idx_upload_invites_code",
"columns": [
{
"expression": "code",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_upload_invites_status": {
"name": "idx_upload_invites_status",
"columns": [
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_upload_invites_created_by": {
"name": "idx_upload_invites_created_by",
"columns": [
{
"expression": "created_by",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"upload_invites_code_unique": {
"name": "upload_invites_code_unique",
"nullsNotDistinct": false,
"columns": [
"code"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.upvotes": {
"name": "upvotes",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"media_id": {
"name": "media_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"session_id": {
"name": "session_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_upvotes_unique": {
"name": "idx_upvotes_unique",
"columns": [
{
"expression": "media_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "session_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_upvotes_media": {
"name": "idx_upvotes_media",
"columns": [
{
"expression": "media_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.user_achievements": {
"name": "user_achievements",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"achievement_id": {
"name": "achievement_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"unlocked_at": {
"name": "unlocked_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
},
"progress": {
"name": "progress",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"notified": {
"name": "notified",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
}
},
"indexes": {
"idx_user_achievements_user": {
"name": "idx_user_achievements_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_user_achievements_unique": {
"name": "idx_user_achievements_unique",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "achievement_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": true,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.user_blocks": {
"name": "user_blocks",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"blocked_user_id": {
"name": "blocked_user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_user_blocks_unique": {
"name": "idx_user_blocks_unique",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "blocked_user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_user_blocks_user": {
"name": "idx_user_blocks_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.user_daily_activity": {
"name": "user_daily_activity",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"activity_date": {
"name": "activity_date",
"type": "text",
"primaryKey": false,
"notNull": true
},
"watch_time_seconds": {
"name": "watch_time_seconds",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"videos_watched": {
"name": "videos_watched",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"first_activity_hour": {
"name": "first_activity_hour",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_user_daily_activity_unique": {
"name": "idx_user_daily_activity_unique",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "activity_date",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.user_finishes": {
"name": "user_finishes",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"media_id": {
"name": "media_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"session_id": {
"name": "session_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
}
},
"indexes": {
"idx_user_finishes_user": {
"name": "idx_user_finishes_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_user_finishes_date": {
"name": "idx_user_finishes_date",
"columns": [
{
"expression": "created_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.user_gallery_images": {
"name": "user_gallery_images",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"filename": {
"name": "filename",
"type": "text",
"primaryKey": false,
"notNull": true
},
"original_filename": {
"name": "original_filename",
"type": "text",
"primaryKey": false,
"notNull": false
},
"position": {
"name": "position",
"type": "integer",
"primaryKey": false,
"notNull": true,
"default": 0
},
"uploaded_at": {
"name": "uploaded_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_user_gallery_user": {
"name": "idx_user_gallery_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_user_gallery_position": {
"name": "idx_user_gallery_position",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "position",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.user_presence": {
"name": "user_presence",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"is_online": {
"name": "is_online",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"current_media_id": {
"name": "current_media_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"last_activity_at": {
"name": "last_activity_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"last_video_change_at": {
"name": "last_video_change_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_user_presence_online": {
"name": "idx_user_presence_online",
"columns": [
{
"expression": "is_online",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_user_presence_user": {
"name": "idx_user_presence_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"user_presence_user_id_unique": {
"name": "user_presence_user_id_unique",
"nullsNotDistinct": false,
"columns": [
"user_id"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.user_social_links": {
"name": "user_social_links",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"platform": {
"name": "platform",
"type": "text",
"primaryKey": false,
"notNull": true
},
"url": {
"name": "url",
"type": "text",
"primaryKey": false,
"notNull": true
},
"display_name": {
"name": "display_name",
"type": "text",
"primaryKey": false,
"notNull": false
},
"position": {
"name": "position",
"type": "integer",
"primaryKey": false,
"notNull": true,
"default": 0
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_user_social_links_user": {
"name": "idx_user_social_links_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_user_social_links_position": {
"name": "idx_user_social_links_position",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "position",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.user_stats": {
"name": "user_stats",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"total_watch_time_seconds": {
"name": "total_watch_time_seconds",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"total_videos_watched": {
"name": "total_videos_watched",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"total_upvotes_given": {
"name": "total_upvotes_given",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"total_comments_made": {
"name": "total_comments_made",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"total_finishes": {
"name": "total_finishes",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"current_day_streak": {
"name": "current_day_streak",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"longest_day_streak": {
"name": "longest_day_streak",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"last_active_date": {
"name": "last_active_date",
"type": "text",
"primaryKey": false,
"notNull": false
},
"longest_single_session": {
"name": "longest_single_session",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"categories_completed": {
"name": "categories_completed",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"night_owl_count": {
"name": "night_owl_count",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"early_bird_count": {
"name": "early_bird_count",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"updated_at": {
"name": "updated_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"user_stats_user_id_unique": {
"name": "user_stats_user_id_unique",
"nullsNotDistinct": false,
"columns": [
"user_id"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.user_subscriptions": {
"name": "user_subscriptions",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"plan_id": {
"name": "plan_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'inactive'"
},
"start_date": {
"name": "start_date",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"end_date": {
"name": "end_date",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"grace_period_end_date": {
"name": "grace_period_end_date",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"last_payment_id": {
"name": "last_payment_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"auto_renew": {
"name": "auto_renew",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"notes": {
"name": "notes",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"updated_at": {
"name": "updated_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_user_subscriptions_user": {
"name": "idx_user_subscriptions_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": true,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_user_subscriptions_status": {
"name": "idx_user_subscriptions_status",
"columns": [
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_user_subscriptions_end_date": {
"name": "idx_user_subscriptions_end_date",
"columns": [
{
"expression": "end_date",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"user_subscriptions_user_id_users_id_fk": {
"name": "user_subscriptions_user_id_users_id_fk",
"tableFrom": "user_subscriptions",
"tableTo": "users",
"columnsFrom": [
"user_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"user_subscriptions_plan_id_subscription_plans_id_fk": {
"name": "user_subscriptions_plan_id_subscription_plans_id_fk",
"tableFrom": "user_subscriptions",
"tableTo": "subscription_plans",
"columnsFrom": [
"plan_id"
],
"columnsTo": [
"id"
],
"onDelete": "no action",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.user_tag_preferences": {
"name": "user_tag_preferences",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"tag_id": {
"name": "tag_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"saved_at": {
"name": "saved_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_user_tag_preferences_user": {
"name": "idx_user_tag_preferences_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_user_tag_preferences_tag": {
"name": "idx_user_tag_preferences_tag",
"columns": [
{
"expression": "tag_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_user_tag_preferences_unique": {
"name": "idx_user_tag_preferences_unique",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "tag_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.user_upload_suggested_tags": {
"name": "user_upload_suggested_tags",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"upload_id": {
"name": "upload_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"tag_id": {
"name": "tag_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"suggested_at": {
"name": "suggested_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_user_upload_suggested_tags_upload": {
"name": "idx_user_upload_suggested_tags_upload",
"columns": [
{
"expression": "upload_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_user_upload_suggested_tags_tag": {
"name": "idx_user_upload_suggested_tags_tag",
"columns": [
{
"expression": "tag_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_user_upload_suggested_tags_unique": {
"name": "idx_user_upload_suggested_tags_unique",
"columns": [
{
"expression": "upload_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "tag_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.user_uploads": {
"name": "user_uploads",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"filename": {
"name": "filename",
"type": "text",
"primaryKey": false,
"notNull": true
},
"original_filename": {
"name": "original_filename",
"type": "text",
"primaryKey": false,
"notNull": false
},
"path": {
"name": "path",
"type": "text",
"primaryKey": false,
"notNull": true
},
"duration_seconds": {
"name": "duration_seconds",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"quality": {
"name": "quality",
"type": "text",
"primaryKey": false,
"notNull": false
},
"orientation": {
"name": "orientation",
"type": "text",
"primaryKey": false,
"notNull": false
},
"file_size": {
"name": "file_size",
"type": "bigint",
"primaryKey": false,
"notNull": false
},
"thumbnail_path": {
"name": "thumbnail_path",
"type": "text",
"primaryKey": false,
"notNull": false
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'pending'"
},
"reviewed_by": {
"name": "reviewed_by",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"reviewed_at": {
"name": "reviewed_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"review_notes": {
"name": "review_notes",
"type": "text",
"primaryKey": false,
"notNull": false
},
"public_media_id": {
"name": "public_media_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"upload_invite_id": {
"name": "upload_invite_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_user_uploads_user": {
"name": "idx_user_uploads_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_user_uploads_status": {
"name": "idx_user_uploads_status",
"columns": [
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_user_uploads_created": {
"name": "idx_user_uploads_created",
"columns": [
{
"expression": "created_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_user_uploads_invite": {
"name": "idx_user_uploads_invite",
"columns": [
{
"expression": "upload_invite_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.users": {
"name": "users",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"username": {
"name": "username",
"type": "text",
"primaryKey": false,
"notNull": true
},
"email": {
"name": "email",
"type": "text",
"primaryKey": false,
"notNull": true
},
"password_hash": {
"name": "password_hash",
"type": "text",
"primaryKey": false,
"notNull": true
},
"role": {
"name": "role",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'user'"
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'pending'"
},
"email_verified": {
"name": "email_verified",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"linked_session_id": {
"name": "linked_session_id",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"approved_at": {
"name": "approved_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"approved_by": {
"name": "approved_by",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"last_login_at": {
"name": "last_login_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"is_trusted": {
"name": "is_trusted",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"max_upload_duration_seconds": {
"name": "max_upload_duration_seconds",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 60
},
"auto_accept_uploads": {
"name": "auto_accept_uploads",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"trusted_at": {
"name": "trusted_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"trusted_by": {
"name": "trusted_by",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"default_playlist_id": {
"name": "default_playlist_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"social_links_public": {
"name": "social_links_public",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"subscription_status": {
"name": "subscription_status",
"type": "text",
"primaryKey": false,
"notNull": false,
"default": "'none'"
},
"subscription_plan_id": {
"name": "subscription_plan_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"subscription_end_date": {
"name": "subscription_end_date",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"lifetime_member": {
"name": "lifetime_member",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"total_paid_cad": {
"name": "total_paid_cad",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"last_moderation_action": {
"name": "last_moderation_action",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_users_email": {
"name": "idx_users_email",
"columns": [
{
"expression": "email",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_users_username": {
"name": "idx_users_username",
"columns": [
{
"expression": "username",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_users_status": {
"name": "idx_users_status",
"columns": [
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_users_trusted": {
"name": "idx_users_trusted",
"columns": [
{
"expression": "is_trusted",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_users_subscription_status": {
"name": "idx_users_subscription_status",
"columns": [
{
"expression": "subscription_status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"users_username_unique": {
"name": "users_username_unique",
"nullsNotDistinct": false,
"columns": [
"username"
]
},
"users_email_unique": {
"name": "users_email_unique",
"nullsNotDistinct": false,
"columns": [
"email"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.video_digests": {
"name": "video_digests",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"video_id": {
"name": "video_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"job_id": {
"name": "job_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'pending'"
},
"progress": {
"name": "progress",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"frame_count": {
"name": "frame_count",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"config": {
"name": "config",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"frame_analyses": {
"name": "frame_analyses",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"transcript": {
"name": "transcript",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"tags": {
"name": "tags",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"suggested_clips": {
"name": "suggested_clips",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"ad_cut_spec": {
"name": "ad_cut_spec",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"stage_results": {
"name": "stage_results",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"started_at": {
"name": "started_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"completed_at": {
"name": "completed_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"error": {
"name": "error",
"type": "text",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_video_digests_video": {
"name": "idx_video_digests_video",
"columns": [
{
"expression": "video_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_video_digests_status": {
"name": "idx_video_digests_status",
"columns": [
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_video_digests_created": {
"name": "idx_video_digests_created",
"columns": [
{
"expression": "created_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.video_ocr_results": {
"name": "video_ocr_results",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"digest_id": {
"name": "digest_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"video_id": {
"name": "video_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"frame_index": {
"name": "frame_index",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"timestamp": {
"name": "timestamp",
"type": "real",
"primaryKey": false,
"notNull": true
},
"extracted_text": {
"name": "extracted_text",
"type": "text",
"primaryKey": false,
"notNull": true
},
"confidence": {
"name": "confidence",
"type": "real",
"primaryKey": false,
"notNull": false
},
"text_type": {
"name": "text_type",
"type": "text",
"primaryKey": false,
"notNull": false
},
"source_frame": {
"name": "source_frame",
"type": "text",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_video_ocr_results_digest": {
"name": "idx_video_ocr_results_digest",
"columns": [
{
"expression": "digest_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_video_ocr_results_video": {
"name": "idx_video_ocr_results_video",
"columns": [
{
"expression": "video_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.video_reactions": {
"name": "video_reactions",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"media_id": {
"name": "media_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"reaction_type": {
"name": "reaction_type",
"type": "text",
"primaryKey": false,
"notNull": true
},
"video_timestamp": {
"name": "video_timestamp",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": true
}
},
"indexes": {
"idx_video_reactions_user_media_type": {
"name": "idx_video_reactions_user_media_type",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "media_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "reaction_type",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_video_reactions_media_timestamp": {
"name": "idx_video_reactions_media_timestamp",
"columns": [
{
"expression": "media_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "video_timestamp",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_video_reactions_media": {
"name": "idx_video_reactions_media",
"columns": [
{
"expression": "media_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_video_reactions_created": {
"name": "idx_video_reactions_created",
"columns": [
{
"expression": "created_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.video_recommendations": {
"name": "video_recommendations",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"from_user_id": {
"name": "from_user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"to_user_id": {
"name": "to_user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"media_id": {
"name": "media_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"message": {
"name": "message",
"type": "text",
"primaryKey": false,
"notNull": false
},
"is_read": {
"name": "is_read",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_video_recommendations_to_user": {
"name": "idx_video_recommendations_to_user",
"columns": [
{
"expression": "to_user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_video_recommendations_from_user": {
"name": "idx_video_recommendations_from_user",
"columns": [
{
"expression": "from_user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_video_recommendations_media": {
"name": "idx_video_recommendations_media",
"columns": [
{
"expression": "media_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.video_scene_cuts": {
"name": "video_scene_cuts",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"video_id": {
"name": "video_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"cuts": {
"name": "cuts",
"type": "jsonb",
"primaryKey": false,
"notNull": true
},
"scene_count": {
"name": "scene_count",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"duration": {
"name": "duration",
"type": "real",
"primaryKey": false,
"notNull": true
},
"detector": {
"name": "detector",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'content'"
},
"threshold": {
"name": "threshold",
"type": "real",
"primaryKey": false,
"notNull": true,
"default": 27
},
"transnet_cuts": {
"name": "transnet_cuts",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"pyscenedetect_cuts": {
"name": "pyscenedetect_cuts",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"clip_cuts": {
"name": "clip_cuts",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"merged_cuts_detailed": {
"name": "merged_cuts_detailed",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"merge_strategy": {
"name": "merge_strategy",
"type": "text",
"primaryKey": false,
"notNull": false,
"default": "'weighted'"
},
"tolerance_seconds": {
"name": "tolerance_seconds",
"type": "real",
"primaryKey": false,
"notNull": false,
"default": 0.75
},
"detectors_used": {
"name": "detectors_used",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"processing_time_ms": {
"name": "processing_time_ms",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_video_scene_cuts_video": {
"name": "idx_video_scene_cuts_video",
"columns": [
{
"expression": "video_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.video_segments": {
"name": "video_segments",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"digest_id": {
"name": "digest_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"video_id": {
"name": "video_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"segment_type": {
"name": "segment_type",
"type": "text",
"primaryKey": false,
"notNull": true
},
"start_time": {
"name": "start_time",
"type": "real",
"primaryKey": false,
"notNull": true
},
"end_time": {
"name": "end_time",
"type": "real",
"primaryKey": false,
"notNull": true
},
"duration": {
"name": "duration",
"type": "real",
"primaryKey": false,
"notNull": true
},
"tags": {
"name": "tags",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"transcript_snippet": {
"name": "transcript_snippet",
"type": "text",
"primaryKey": false,
"notNull": false
},
"vocal_category": {
"name": "vocal_category",
"type": "text",
"primaryKey": false,
"notNull": false
},
"position_change": {
"name": "position_change",
"type": "text",
"primaryKey": false,
"notNull": false
},
"dominant_position": {
"name": "dominant_position",
"type": "text",
"primaryKey": false,
"notNull": false
},
"interest_score": {
"name": "interest_score",
"type": "real",
"primaryKey": false,
"notNull": false,
"default": 0
},
"has_eye_contact": {
"name": "has_eye_contact",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"has_full_sentence": {
"name": "has_full_sentence",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"is_climax_moment": {
"name": "is_climax_moment",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"captioned": {
"name": "captioned",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"caption_text": {
"name": "caption_text",
"type": "text",
"primaryKey": false,
"notNull": false
},
"title": {
"name": "title",
"type": "text",
"primaryKey": false,
"notNull": false
},
"keyframe_path": {
"name": "keyframe_path",
"type": "text",
"primaryKey": false,
"notNull": false
},
"keyframe_timestamp": {
"name": "keyframe_timestamp",
"type": "real",
"primaryKey": false,
"notNull": false
},
"is_included": {
"name": "is_included",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"sequence_order": {
"name": "sequence_order",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"is_hook": {
"name": "is_hook",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"include_in_clips": {
"name": "include_in_clips",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_video_segments_digest": {
"name": "idx_video_segments_digest",
"columns": [
{
"expression": "digest_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_video_segments_video": {
"name": "idx_video_segments_video",
"columns": [
{
"expression": "video_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_video_segments_type": {
"name": "idx_video_segments_type",
"columns": [
{
"expression": "segment_type",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_video_segments_time": {
"name": "idx_video_segments_time",
"columns": [
{
"expression": "video_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "start_time",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_video_segments_included": {
"name": "idx_video_segments_included",
"columns": [
{
"expression": "digest_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "is_included",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_video_segments_sequence": {
"name": "idx_video_segments_sequence",
"columns": [
{
"expression": "digest_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "sequence_order",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_video_segments_clips": {
"name": "idx_video_segments_clips",
"columns": [
{
"expression": "digest_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "include_in_clips",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.video_tag_timeline": {
"name": "video_tag_timeline",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"video_id": {
"name": "video_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"digest_id": {
"name": "digest_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"timestamp": {
"name": "timestamp",
"type": "real",
"primaryKey": false,
"notNull": true
},
"tags": {
"name": "tags",
"type": "jsonb",
"primaryKey": false,
"notNull": true
},
"dominant_position": {
"name": "dominant_position",
"type": "text",
"primaryKey": false,
"notNull": false
},
"performer_count": {
"name": "performer_count",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"intensity": {
"name": "intensity",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"has_dialogue": {
"name": "has_dialogue",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"has_eye_contact": {
"name": "has_eye_contact",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"frame_path": {
"name": "frame_path",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_video_tag_timeline_video": {
"name": "idx_video_tag_timeline_video",
"columns": [
{
"expression": "video_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_video_tag_timeline_digest": {
"name": "idx_video_tag_timeline_digest",
"columns": [
{
"expression": "digest_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_video_tag_timeline_timestamp": {
"name": "idx_video_tag_timeline_timestamp",
"columns": [
{
"expression": "video_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "timestamp",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_video_tag_timeline_position": {
"name": "idx_video_tag_timeline_position",
"columns": [
{
"expression": "dominant_position",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.video_tags": {
"name": "video_tags",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"video_id": {
"name": "video_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"tag_id": {
"name": "tag_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"confidence": {
"name": "confidence",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"source": {
"name": "source",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'manual'"
},
"digest_id": {
"name": "digest_id",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_video_tags_video": {
"name": "idx_video_tags_video",
"columns": [
{
"expression": "video_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_video_tags_tag": {
"name": "idx_video_tags_tag",
"columns": [
{
"expression": "tag_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_video_tags_source": {
"name": "idx_video_tags_source",
"columns": [
{
"expression": "source",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_video_tags_unique": {
"name": "idx_video_tags_unique",
"columns": [
{
"expression": "video_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "tag_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.videos": {
"name": "videos",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"path": {
"name": "path",
"type": "text",
"primaryKey": false,
"notNull": true
},
"filename": {
"name": "filename",
"type": "text",
"primaryKey": false,
"notNull": true
},
"producer": {
"name": "producer",
"type": "text",
"primaryKey": false,
"notNull": false
},
"creator": {
"name": "creator",
"type": "text",
"primaryKey": false,
"notNull": false
},
"title": {
"name": "title",
"type": "text",
"primaryKey": false,
"notNull": false
},
"duration_seconds": {
"name": "duration_seconds",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"quality": {
"name": "quality",
"type": "text",
"primaryKey": false,
"notNull": false
},
"orientation": {
"name": "orientation",
"type": "text",
"primaryKey": false,
"notNull": false
},
"has_audio": {
"name": "has_audio",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"file_size": {
"name": "file_size",
"type": "bigint",
"primaryKey": false,
"notNull": false
},
"file_hash": {
"name": "file_hash",
"type": "text",
"primaryKey": false,
"notNull": false
},
"width": {
"name": "width",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"height": {
"name": "height",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"last_validated": {
"name": "last_validated",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"is_valid": {
"name": "is_valid",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"thumbnail_path": {
"name": "thumbnail_path",
"type": "text",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"tags": {
"name": "tags",
"type": "jsonb",
"primaryKey": false,
"notNull": false
},
"directory_type": {
"name": "directory_type",
"type": "text",
"primaryKey": false,
"notNull": false
},
"public_view_count": {
"name": "public_view_count",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"public_upvote_count": {
"name": "public_upvote_count",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"public_comment_count": {
"name": "public_comment_count",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"public_completion_count": {
"name": "public_completion_count",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"public_total_watch_time": {
"name": "public_total_watch_time",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"moved_from_public_at": {
"name": "moved_from_public_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"original_filename": {
"name": "original_filename",
"type": "text",
"primaryKey": false,
"notNull": false
},
"original_path": {
"name": "original_path",
"type": "text",
"primaryKey": false,
"notNull": false
},
"standardized_at": {
"name": "standardized_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_orientation": {
"name": "idx_orientation",
"columns": [
{
"expression": "orientation",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_producer": {
"name": "idx_producer",
"columns": [
{
"expression": "producer",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_is_valid": {
"name": "idx_is_valid",
"columns": [
{
"expression": "is_valid",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_directory_type": {
"name": "idx_directory_type",
"columns": [
{
"expression": "directory_type",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_videos_fingerprint": {
"name": "idx_videos_fingerprint",
"columns": [
{
"expression": "duration_seconds",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "file_size",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "width",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "height",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_videos_directory_valid_orientation": {
"name": "idx_videos_directory_valid_orientation",
"columns": [
{
"expression": "directory_type",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "is_valid",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "orientation",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"videos_path_unique": {
"name": "videos_path_unique",
"nullsNotDistinct": false,
"columns": [
"path"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.views": {
"name": "views",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"media_id": {
"name": "media_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"session_id": {
"name": "session_id",
"type": "text",
"primaryKey": false,
"notNull": true
},
"watch_time_seconds": {
"name": "watch_time_seconds",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"last_updated": {
"name": "last_updated",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_views_unique": {
"name": "idx_views_unique",
"columns": [
{
"expression": "media_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "session_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_views_media": {
"name": "idx_views_media",
"columns": [
{
"expression": "media_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.watch_party_chat_messages": {
"name": "watch_party_chat_messages",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"party_id": {
"name": "party_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"content": {
"name": "content",
"type": "text",
"primaryKey": false,
"notNull": true
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_watch_party_chat_party": {
"name": "idx_watch_party_chat_party",
"columns": [
{
"expression": "party_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_watch_party_chat_created": {
"name": "idx_watch_party_chat_created",
"columns": [
{
"expression": "created_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"watch_party_chat_messages_party_id_watch_party_sessions_id_fk": {
"name": "watch_party_chat_messages_party_id_watch_party_sessions_id_fk",
"tableFrom": "watch_party_chat_messages",
"tableTo": "watch_party_sessions",
"columnsFrom": [
"party_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"watch_party_chat_messages_user_id_users_id_fk": {
"name": "watch_party_chat_messages_user_id_users_id_fk",
"tableFrom": "watch_party_chat_messages",
"tableTo": "users",
"columnsFrom": [
"user_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.watch_party_invites": {
"name": "watch_party_invites",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"party_id": {
"name": "party_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"from_user_id": {
"name": "from_user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"to_user_id": {
"name": "to_user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'pending'"
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"responded_at": {
"name": "responded_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_watch_party_invites_party": {
"name": "idx_watch_party_invites_party",
"columns": [
{
"expression": "party_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_watch_party_invites_to_user": {
"name": "idx_watch_party_invites_to_user",
"columns": [
{
"expression": "to_user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_watch_party_invites_from_user": {
"name": "idx_watch_party_invites_from_user",
"columns": [
{
"expression": "from_user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_watch_party_invites_status": {
"name": "idx_watch_party_invites_status",
"columns": [
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"watch_party_invites_party_id_watch_party_sessions_id_fk": {
"name": "watch_party_invites_party_id_watch_party_sessions_id_fk",
"tableFrom": "watch_party_invites",
"tableTo": "watch_party_sessions",
"columnsFrom": [
"party_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"watch_party_invites_from_user_id_users_id_fk": {
"name": "watch_party_invites_from_user_id_users_id_fk",
"tableFrom": "watch_party_invites",
"tableTo": "users",
"columnsFrom": [
"from_user_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"watch_party_invites_to_user_id_users_id_fk": {
"name": "watch_party_invites_to_user_id_users_id_fk",
"tableFrom": "watch_party_invites",
"tableTo": "users",
"columnsFrom": [
"to_user_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.watch_party_participants": {
"name": "watch_party_participants",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"party_id": {
"name": "party_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"is_connected": {
"name": "is_connected",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"is_kicked": {
"name": "is_kicked",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"joined_at": {
"name": "joined_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"left_at": {
"name": "left_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_watch_party_participants_party": {
"name": "idx_watch_party_participants_party",
"columns": [
{
"expression": "party_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_watch_party_participants_user": {
"name": "idx_watch_party_participants_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_watch_party_participants_unique": {
"name": "idx_watch_party_participants_unique",
"columns": [
{
"expression": "party_id",
"isExpression": false,
"asc": true,
"nulls": "last"
},
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"watch_party_participants_party_id_watch_party_sessions_id_fk": {
"name": "watch_party_participants_party_id_watch_party_sessions_id_fk",
"tableFrom": "watch_party_participants",
"tableTo": "watch_party_sessions",
"columnsFrom": [
"party_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"watch_party_participants_user_id_users_id_fk": {
"name": "watch_party_participants_user_id_users_id_fk",
"tableFrom": "watch_party_participants",
"tableTo": "users",
"columnsFrom": [
"user_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.watch_party_reactions": {
"name": "watch_party_reactions",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"party_id": {
"name": "party_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"user_id": {
"name": "user_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"reaction_type": {
"name": "reaction_type",
"type": "text",
"primaryKey": false,
"notNull": true
},
"video_timestamp": {
"name": "video_timestamp",
"type": "integer",
"primaryKey": false,
"notNull": false
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
}
},
"indexes": {
"idx_watch_party_reactions_party": {
"name": "idx_watch_party_reactions_party",
"columns": [
{
"expression": "party_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_watch_party_reactions_user": {
"name": "idx_watch_party_reactions_user",
"columns": [
{
"expression": "user_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"watch_party_reactions_party_id_watch_party_sessions_id_fk": {
"name": "watch_party_reactions_party_id_watch_party_sessions_id_fk",
"tableFrom": "watch_party_reactions",
"tableTo": "watch_party_sessions",
"columnsFrom": [
"party_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"watch_party_reactions_user_id_users_id_fk": {
"name": "watch_party_reactions_user_id_users_id_fk",
"tableFrom": "watch_party_reactions",
"tableTo": "users",
"columnsFrom": [
"user_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
},
"public.watch_party_sessions": {
"name": "watch_party_sessions",
"schema": "",
"columns": {
"id": {
"name": "id",
"type": "serial",
"primaryKey": true,
"notNull": true
},
"host_id": {
"name": "host_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"media_id": {
"name": "media_id",
"type": "integer",
"primaryKey": false,
"notNull": true
},
"invite_code": {
"name": "invite_code",
"type": "text",
"primaryKey": false,
"notNull": true
},
"status": {
"name": "status",
"type": "text",
"primaryKey": false,
"notNull": true,
"default": "'waiting'"
},
"current_time": {
"name": "current_time",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 0
},
"is_playing": {
"name": "is_playing",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": false
},
"max_participants": {
"name": "max_participants",
"type": "integer",
"primaryKey": false,
"notNull": false,
"default": 20
},
"allow_chat": {
"name": "allow_chat",
"type": "boolean",
"primaryKey": false,
"notNull": false,
"default": true
},
"created_at": {
"name": "created_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false,
"default": "now()"
},
"started_at": {
"name": "started_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"ended_at": {
"name": "ended_at",
"type": "timestamp with time zone",
"primaryKey": false,
"notNull": false
},
"summary_stats": {
"name": "summary_stats",
"type": "jsonb",
"primaryKey": false,
"notNull": false
}
},
"indexes": {
"idx_watch_party_sessions_host": {
"name": "idx_watch_party_sessions_host",
"columns": [
{
"expression": "host_id",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_watch_party_sessions_invite": {
"name": "idx_watch_party_sessions_invite",
"columns": [
{
"expression": "invite_code",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_watch_party_sessions_status": {
"name": "idx_watch_party_sessions_status",
"columns": [
{
"expression": "status",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
},
"idx_watch_party_sessions_created": {
"name": "idx_watch_party_sessions_created",
"columns": [
{
"expression": "created_at",
"isExpression": false,
"asc": true,
"nulls": "last"
}
],
"isUnique": false,
"concurrently": false,
"method": "btree",
"with": {}
}
},
"foreignKeys": {
"watch_party_sessions_host_id_users_id_fk": {
"name": "watch_party_sessions_host_id_users_id_fk",
"tableFrom": "watch_party_sessions",
"tableTo": "users",
"columnsFrom": [
"host_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
},
"watch_party_sessions_media_id_public_media_id_fk": {
"name": "watch_party_sessions_media_id_public_media_id_fk",
"tableFrom": "watch_party_sessions",
"tableTo": "public_media",
"columnsFrom": [
"media_id"
],
"columnsTo": [
"id"
],
"onDelete": "cascade",
"onUpdate": "no action"
}
},
"compositePrimaryKeys": {},
"uniqueConstraints": {
"watch_party_sessions_invite_code_unique": {
"name": "watch_party_sessions_invite_code_unique",
"nullsNotDistinct": false,
"columns": [
"invite_code"
]
}
},
"policies": {},
"checkConstraints": {},
"isRLSEnabled": false
}
},
"enums": {},
"schemas": {},
"sequences": {},
"roles": {},
"policies": {},
"views": {},
"_meta": {
"columns": {},
"schemas": {},
"tables": {}
}
}