{ "id": "ad67f70c-6378-42ff-8e80-03505c6b19ef", "prevId": "0d319176-0d28-4ae3-939d-9d03f0c47a4e", "version": "7", "dialect": "postgresql", "tables": { "public.app_operations": { "name": "app_operations", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "app_id": { "name": "app_id", "type": "text", "primaryKey": false, "notNull": true }, "action": { "name": "action", "type": "text", "primaryKey": false, "notNull": true }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true }, "progress_percent": { "name": "progress_percent", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "current_step": { "name": "current_step", "type": "text", "primaryKey": false, "notNull": true, "default": "'queued'" }, "error_message": { "name": "error_message", "type": "text", "primaryKey": false, "notNull": false }, "started_at": { "name": "started_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "finished_at": { "name": "finished_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "app_operations_app_id_idx": { "name": "app_operations_app_id_idx", "columns": [ { "expression": "app_id", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} }, "app_operations_status_idx": { "name": "app_operations_status_idx", "columns": [ { "expression": "status", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} }, "app_operations_updated_at_idx": { "name": "app_operations_updated_at_idx", "columns": [ { "expression": "updated_at", "isExpression": false, "asc": false, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.app_stacks": { "name": "app_stacks", "schema": "", "columns": { "app_id": { "name": "app_id", "type": "text", "primaryKey": true, "notNull": true }, "template_name": { "name": "template_name", "type": "text", "primaryKey": false, "notNull": true }, "stack_name": { "name": "stack_name", "type": "text", "primaryKey": false, "notNull": true }, "compose_path": { "name": "compose_path", "type": "text", "primaryKey": false, "notNull": true }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "default": "'not_installed'" }, "web_ui_port": { "name": "web_ui_port", "type": "integer", "primaryKey": false, "notNull": false }, "env_json": { "name": "env_json", "type": "jsonb", "primaryKey": false, "notNull": true, "default": "'{}'::jsonb" }, "display_name": { "name": "display_name", "type": "text", "primaryKey": false, "notNull": false }, "icon_url": { "name": "icon_url", "type": "text", "primaryKey": false, "notNull": false }, "installed_at": { "name": "installed_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "is_up_to_date": { "name": "is_up_to_date", "type": "boolean", "primaryKey": false, "notNull": false, "default": true }, "last_update_check": { "name": "last_update_check", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "local_digest": { "name": "local_digest", "type": "text", "primaryKey": false, "notNull": false }, "remote_digest": { "name": "remote_digest", "type": "text", "primaryKey": false, "notNull": false } }, "indexes": { "app_stacks_status_idx": { "name": "app_stacks_status_idx", "columns": [ { "expression": "status", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} }, "app_stacks_web_ui_port_idx": { "name": "app_stacks_web_ui_port_idx", "columns": [ { "expression": "web_ui_port", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.apps": { "name": "apps", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "default": "'unknown'" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "apps_name_idx": { "name": "apps_name_idx", "columns": [ { "expression": "name", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.custom_store_apps": { "name": "custom_store_apps", "schema": "", "columns": { "app_id": { "name": "app_id", "type": "text", "primaryKey": true, "notNull": true }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true }, "icon_url": { "name": "icon_url", "type": "text", "primaryKey": false, "notNull": false }, "web_ui_url": { "name": "web_ui_url", "type": "text", "primaryKey": false, "notNull": false }, "source_type": { "name": "source_type", "type": "text", "primaryKey": false, "notNull": true }, "source_text": { "name": "source_text", "type": "text", "primaryKey": false, "notNull": true }, "compose_content": { "name": "compose_content", "type": "text", "primaryKey": false, "notNull": true }, "repository_url": { "name": "repository_url", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "custom_store_apps_updated_at_idx": { "name": "custom_store_apps_updated_at_idx", "columns": [ { "expression": "updated_at", "isExpression": false, "asc": false, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.files_google_drive_tokens": { "name": "files_google_drive_tokens", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "email": { "name": "email", "type": "text", "primaryKey": false, "notNull": true }, "display_name": { "name": "display_name", "type": "text", "primaryKey": false, "notNull": false }, "access_token_ciphertext": { "name": "access_token_ciphertext", "type": "text", "primaryKey": false, "notNull": true }, "access_token_iv": { "name": "access_token_iv", "type": "text", "primaryKey": false, "notNull": true }, "access_token_tag": { "name": "access_token_tag", "type": "text", "primaryKey": false, "notNull": true }, "refresh_token_ciphertext": { "name": "refresh_token_ciphertext", "type": "text", "primaryKey": false, "notNull": false }, "refresh_token_iv": { "name": "refresh_token_iv", "type": "text", "primaryKey": false, "notNull": false }, "refresh_token_tag": { "name": "refresh_token_tag", "type": "text", "primaryKey": false, "notNull": false }, "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": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "files_google_drive_tokens_email_idx": { "name": "files_google_drive_tokens_email_idx", "columns": [ { "expression": "email", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} }, "files_google_drive_tokens_created_at_idx": { "name": "files_google_drive_tokens_created_at_idx", "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.files_local_shares": { "name": "files_local_shares", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "share_name": { "name": "share_name", "type": "text", "primaryKey": false, "notNull": true }, "source_path": { "name": "source_path", "type": "text", "primaryKey": false, "notNull": true }, "shared_path": { "name": "shared_path", "type": "text", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "files_local_shares_share_name_idx": { "name": "files_local_shares_share_name_idx", "columns": [ { "expression": "share_name", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} }, "files_local_shares_source_path_idx": { "name": "files_local_shares_source_path_idx", "columns": [ { "expression": "source_path", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} }, "files_local_shares_shared_path_idx": { "name": "files_local_shares_shared_path_idx", "columns": [ { "expression": "shared_path", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} }, "files_local_shares_created_at_idx": { "name": "files_local_shares_created_at_idx", "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.files_network_shares": { "name": "files_network_shares", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "host": { "name": "host", "type": "text", "primaryKey": false, "notNull": true }, "share": { "name": "share", "type": "text", "primaryKey": false, "notNull": true }, "username": { "name": "username", "type": "text", "primaryKey": false, "notNull": true }, "password_ciphertext": { "name": "password_ciphertext", "type": "text", "primaryKey": false, "notNull": true }, "password_iv": { "name": "password_iv", "type": "text", "primaryKey": false, "notNull": true }, "password_tag": { "name": "password_tag", "type": "text", "primaryKey": false, "notNull": true }, "mount_path": { "name": "mount_path", "type": "text", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "files_network_shares_mount_path_idx": { "name": "files_network_shares_mount_path_idx", "columns": [ { "expression": "mount_path", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} }, "files_network_shares_created_at_idx": { "name": "files_network_shares_created_at_idx", "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.files_trash_entries": { "name": "files_trash_entries", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "trash_path": { "name": "trash_path", "type": "text", "primaryKey": false, "notNull": true }, "original_path": { "name": "original_path", "type": "text", "primaryKey": false, "notNull": true }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "files_trash_entries_trash_path_idx": { "name": "files_trash_entries_trash_path_idx", "columns": [ { "expression": "trash_path", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": true, "concurrently": false, "method": "btree", "with": {} }, "files_trash_entries_deleted_at_idx": { "name": "files_trash_entries_deleted_at_idx", "columns": [ { "expression": "deleted_at", "isExpression": false, "asc": false, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.notifications": { "name": "notifications", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "title": { "name": "title", "type": "text", "primaryKey": false, "notNull": true }, "body": { "name": "body", "type": "text", "primaryKey": false, "notNull": true }, "kind": { "name": "kind", "type": "text", "primaryKey": false, "notNull": true, "default": "'info'" }, "read": { "name": "read", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "notifications_created_at_idx": { "name": "notifications_created_at_idx", "columns": [ { "expression": "created_at", "isExpression": false, "asc": false, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.scheduled_task_executions": { "name": "scheduled_task_executions", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "task_id": { "name": "task_id", "type": "text", "primaryKey": false, "notNull": true }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true }, "output": { "name": "output", "type": "text", "primaryKey": false, "notNull": false }, "started_at": { "name": "started_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "duration_ms": { "name": "duration_ms", "type": "integer", "primaryKey": false, "notNull": false } }, "indexes": { "scheduled_task_executions_task_id_idx": { "name": "scheduled_task_executions_task_id_idx", "columns": [ { "expression": "task_id", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} }, "scheduled_task_executions_started_at_idx": { "name": "scheduled_task_executions_started_at_idx", "columns": [ { "expression": "started_at", "isExpression": false, "asc": false, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": { "scheduled_task_executions_task_id_scheduled_tasks_id_fk": { "name": "scheduled_task_executions_task_id_scheduled_tasks_id_fk", "tableFrom": "scheduled_task_executions", "tableTo": "scheduled_tasks", "columnsFrom": [ "task_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.scheduled_tasks": { "name": "scheduled_tasks", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "label": { "name": "label", "type": "text", "primaryKey": false, "notNull": true }, "task_type": { "name": "task_type", "type": "text", "primaryKey": false, "notNull": true }, "task_config": { "name": "task_config", "type": "jsonb", "primaryKey": false, "notNull": true, "default": "'{}'::jsonb" }, "cron_expression": { "name": "cron_expression", "type": "text", "primaryKey": false, "notNull": true }, "enabled": { "name": "enabled", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "last_run_at": { "name": "last_run_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "last_run_status": { "name": "last_run_status", "type": "text", "primaryKey": false, "notNull": false }, "last_run_output": { "name": "last_run_output", "type": "text", "primaryKey": false, "notNull": false }, "next_run_at": { "name": "next_run_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" } }, "indexes": { "scheduled_tasks_next_run_at_idx": { "name": "scheduled_tasks_next_run_at_idx", "columns": [ { "expression": "next_run_at", "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 }, "user_id": { "name": "user_id", "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": true, "default": "now()" } }, "indexes": { "sessions_user_id_idx": { "name": "sessions_user_id_idx", "columns": [ { "expression": "user_id", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} }, "sessions_expires_at_idx": { "name": "sessions_expires_at_idx", "columns": [ { "expression": "expires_at", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": { "sessions_user_id_users_id_fk": { "name": "sessions_user_id_users_id_fk", "tableFrom": "sessions", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.settings": { "name": "settings", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "default": "'singleton'" }, "appearance_json": { "name": "appearance_json", "type": "jsonb", "primaryKey": false, "notNull": true, "default": "'{}'::jsonb" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "google_client_id": { "name": "google_client_id", "type": "text", "primaryKey": false, "notNull": false }, "google_client_secret_ciphertext": { "name": "google_client_secret_ciphertext", "type": "text", "primaryKey": false, "notNull": false }, "google_client_secret_iv": { "name": "google_client_secret_iv", "type": "text", "primaryKey": false, "notNull": false }, "google_client_secret_tag": { "name": "google_client_secret_tag", "type": "text", "primaryKey": false, "notNull": false }, "google_redirect_uri": { "name": "google_redirect_uri", "type": "text", "primaryKey": false, "notNull": false }, "tailscale_tailnet": { "name": "tailscale_tailnet", "type": "text", "primaryKey": false, "notNull": false }, "tailscale_api_key_ciphertext": { "name": "tailscale_api_key_ciphertext", "type": "text", "primaryKey": false, "notNull": false }, "tailscale_api_key_iv": { "name": "tailscale_api_key_iv", "type": "text", "primaryKey": false, "notNull": false }, "tailscale_api_key_tag": { "name": "tailscale_api_key_tag", "type": "text", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.users": { "name": "users", "schema": "", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true }, "username": { "name": "username", "type": "text", "primaryKey": false, "notNull": true }, "password_hash": { "name": "password_hash", "type": "text", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "now()" }, "totp_secret": { "name": "totp_secret", "type": "text", "primaryKey": false, "notNull": false }, "totp_enabled": { "name": "totp_enabled", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "totp_backup_codes": { "name": "totp_backup_codes", "type": "text", "primaryKey": false, "notNull": false }, "totp_enrolled_at": { "name": "totp_enrolled_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": { "users_username_idx": { "name": "users_username_idx", "columns": [ { "expression": "username", "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" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false } }, "enums": {}, "schemas": {}, "sequences": {}, "roles": {}, "policies": {}, "views": {}, "_meta": { "columns": {}, "schemas": {}, "tables": {} } }