{ "version": "6", "dialect": "sqlite", "id": "9bcc3080-7092-4a86-8d8e-022df0344be9", "prevId": "fb3625a8-1c04-444b-a2f2-8e99b189906c", "tables": { "agent_conversations": { "name": "agent_conversations", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "title": { "name": "title", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "last_message_at": { "name": "last_message_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "agent_conversations_user_id_users_id_fk": { "name": "agent_conversations_user_id_users_id_fk", "tableFrom": "agent_conversations", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "agent_memories": { "name": "agent_memories", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "conversation_id": { "name": "conversation_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "role": { "name": "role", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "content": { "name": "content", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "embedding": { "name": "embedding", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "metadata": { "name": "metadata", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "agent_memories_conversation_id_agent_conversations_id_fk": { "name": "agent_memories_conversation_id_agent_conversations_id_fk", "tableFrom": "agent_memories", "tableTo": "agent_conversations", "columnsFrom": [ "conversation_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "agent_memories_user_id_users_id_fk": { "name": "agent_memories_user_id_users_id_fk", "tableFrom": "agent_memories", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "customers": { "name": "customers", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "company": { "name": "company", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "email": { "name": "email", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "phone": { "name": "phone", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "address": { "name": "address", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "notes": { "name": "notes", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "netsuite_id": { "name": "netsuite_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "customers_organization_id_organizations_id_fk": { "name": "customers_organization_id_organizations_id_fk", "tableFrom": "customers", "tableTo": "organizations", "columnsFrom": [ "organization_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "feedback": { "name": "feedback", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "type": { "name": "type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "message": { "name": "message", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "email": { "name": "email", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "page_url": { "name": "page_url", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "user_agent": { "name": "user_agent", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "viewport_width": { "name": "viewport_width", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "viewport_height": { "name": "viewport_height", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "ip_hash": { "name": "ip_hash", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "github_issue_url": { "name": "github_issue_url", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "feedback_interviews": { "name": "feedback_interviews", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "user_name": { "name": "user_name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "user_role": { "name": "user_role", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "responses": { "name": "responses", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "summary": { "name": "summary", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "pain_points": { "name": "pain_points", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "feature_requests": { "name": "feature_requests", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "overall_sentiment": { "name": "overall_sentiment", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "github_issue_url": { "name": "github_issue_url", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "conversation_id": { "name": "conversation_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "feedback_interviews_user_id_users_id_fk": { "name": "feedback_interviews_user_id_users_id_fk", "tableFrom": "feedback_interviews", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "group_members": { "name": "group_members", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "group_id": { "name": "group_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "joined_at": { "name": "joined_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "group_members_group_id_groups_id_fk": { "name": "group_members_group_id_groups_id_fk", "tableFrom": "group_members", "tableTo": "groups", "columnsFrom": [ "group_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "group_members_user_id_users_id_fk": { "name": "group_members_user_id_users_id_fk", "tableFrom": "group_members", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "groups": { "name": "groups", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "color": { "name": "color", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "groups_organization_id_organizations_id_fk": { "name": "groups_organization_id_organizations_id_fk", "tableFrom": "groups", "tableTo": "organizations", "columnsFrom": [ "organization_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "organization_invites": { "name": "organization_invites", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "code": { "name": "code", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "role": { "name": "role", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'office'" }, "max_uses": { "name": "max_uses", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "use_count": { "name": "use_count", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "expires_at": { "name": "expires_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "is_active": { "name": "is_active", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": true }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": { "organization_invites_code_unique": { "name": "organization_invites_code_unique", "columns": [ "code" ], "isUnique": true } }, "foreignKeys": { "organization_invites_organization_id_organizations_id_fk": { "name": "organization_invites_organization_id_organizations_id_fk", "tableFrom": "organization_invites", "tableTo": "organizations", "columnsFrom": [ "organization_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "organization_invites_created_by_users_id_fk": { "name": "organization_invites_created_by_users_id_fk", "tableFrom": "organization_invites", "tableTo": "users", "columnsFrom": [ "created_by" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "organization_members": { "name": "organization_members", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "role": { "name": "role", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "joined_at": { "name": "joined_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "organization_members_organization_id_organizations_id_fk": { "name": "organization_members_organization_id_organizations_id_fk", "tableFrom": "organization_members", "tableTo": "organizations", "columnsFrom": [ "organization_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "organization_members_user_id_users_id_fk": { "name": "organization_members_user_id_users_id_fk", "tableFrom": "organization_members", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "organizations": { "name": "organizations", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "slug": { "name": "slug", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "type": { "name": "type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "logo_url": { "name": "logo_url", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "is_active": { "name": "is_active", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": true }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": { "organizations_slug_unique": { "name": "organizations_slug_unique", "columns": [ "slug" ], "isUnique": true } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "project_members": { "name": "project_members", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "project_id": { "name": "project_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "role": { "name": "role", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "assigned_at": { "name": "assigned_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "project_members_project_id_projects_id_fk": { "name": "project_members_project_id_projects_id_fk", "tableFrom": "project_members", "tableTo": "projects", "columnsFrom": [ "project_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "project_members_user_id_users_id_fk": { "name": "project_members_user_id_users_id_fk", "tableFrom": "project_members", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "projects": { "name": "projects", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'OPEN'" }, "address": { "name": "address", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "client_name": { "name": "client_name", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "project_manager": { "name": "project_manager", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "netsuite_job_id": { "name": "netsuite_job_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "projects_organization_id_organizations_id_fk": { "name": "projects_organization_id_organizations_id_fk", "tableFrom": "projects", "tableTo": "organizations", "columnsFrom": [ "organization_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "push_tokens": { "name": "push_tokens", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "token": { "name": "token", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "platform": { "name": "platform", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "push_tokens_user_id_users_id_fk": { "name": "push_tokens_user_id_users_id_fk", "tableFrom": "push_tokens", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "schedule_baselines": { "name": "schedule_baselines", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "project_id": { "name": "project_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "snapshot_data": { "name": "snapshot_data", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "schedule_baselines_project_id_projects_id_fk": { "name": "schedule_baselines_project_id_projects_id_fk", "tableFrom": "schedule_baselines", "tableTo": "projects", "columnsFrom": [ "project_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "schedule_tasks": { "name": "schedule_tasks", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "project_id": { "name": "project_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "title": { "name": "title", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "start_date": { "name": "start_date", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "workdays": { "name": "workdays", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "end_date_calculated": { "name": "end_date_calculated", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "phase": { "name": "phase", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'PENDING'" }, "is_critical_path": { "name": "is_critical_path", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false }, "is_milestone": { "name": "is_milestone", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false }, "percent_complete": { "name": "percent_complete", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "assigned_to": { "name": "assigned_to", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "sort_order": { "name": "sort_order", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "schedule_tasks_project_id_projects_id_fk": { "name": "schedule_tasks_project_id_projects_id_fk", "tableFrom": "schedule_tasks", "tableTo": "projects", "columnsFrom": [ "project_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "slab_memories": { "name": "slab_memories", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "content": { "name": "content", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "memory_type": { "name": "memory_type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "tags": { "name": "tags", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "importance": { "name": "importance", "type": "real", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0.7 }, "pinned": { "name": "pinned", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false }, "access_count": { "name": "access_count", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "last_accessed_at": { "name": "last_accessed_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "slab_memories_user_id_users_id_fk": { "name": "slab_memories_user_id_users_id_fk", "tableFrom": "slab_memories", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "task_dependencies": { "name": "task_dependencies", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "predecessor_id": { "name": "predecessor_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "successor_id": { "name": "successor_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "type": { "name": "type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'FS'" }, "lag_days": { "name": "lag_days", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 } }, "indexes": {}, "foreignKeys": { "task_dependencies_predecessor_id_schedule_tasks_id_fk": { "name": "task_dependencies_predecessor_id_schedule_tasks_id_fk", "tableFrom": "task_dependencies", "tableTo": "schedule_tasks", "columnsFrom": [ "predecessor_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "task_dependencies_successor_id_schedule_tasks_id_fk": { "name": "task_dependencies_successor_id_schedule_tasks_id_fk", "tableFrom": "task_dependencies", "tableTo": "schedule_tasks", "columnsFrom": [ "successor_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "team_members": { "name": "team_members", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "team_id": { "name": "team_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "joined_at": { "name": "joined_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "team_members_team_id_teams_id_fk": { "name": "team_members_team_id_teams_id_fk", "tableFrom": "team_members", "tableTo": "teams", "columnsFrom": [ "team_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "team_members_user_id_users_id_fk": { "name": "team_members_user_id_users_id_fk", "tableFrom": "team_members", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "teams": { "name": "teams", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "teams_organization_id_organizations_id_fk": { "name": "teams_organization_id_organizations_id_fk", "tableFrom": "teams", "tableTo": "organizations", "columnsFrom": [ "organization_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "users": { "name": "users", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "email": { "name": "email", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "first_name": { "name": "first_name", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "last_name": { "name": "last_name", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "display_name": { "name": "display_name", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "avatar_url": { "name": "avatar_url", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "role": { "name": "role", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'office'" }, "google_email": { "name": "google_email", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "is_active": { "name": "is_active", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": true }, "last_login_at": { "name": "last_login_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": { "users_email_unique": { "name": "users_email_unique", "columns": [ "email" ], "isUnique": true } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "vendors": { "name": "vendors", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "category": { "name": "category", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'Subcontractor'" }, "email": { "name": "email", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "phone": { "name": "phone", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "address": { "name": "address", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "netsuite_id": { "name": "netsuite_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "vendors_organization_id_organizations_id_fk": { "name": "vendors_organization_id_organizations_id_fk", "tableFrom": "vendors", "tableTo": "organizations", "columnsFrom": [ "organization_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "workday_exceptions": { "name": "workday_exceptions", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "project_id": { "name": "project_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "title": { "name": "title", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "start_date": { "name": "start_date", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "end_date": { "name": "end_date", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "type": { "name": "type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'non_working'" }, "category": { "name": "category", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'company_holiday'" }, "recurrence": { "name": "recurrence", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'one_time'" }, "notes": { "name": "notes", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "workday_exceptions_project_id_projects_id_fk": { "name": "workday_exceptions_project_id_projects_id_fk", "tableFrom": "workday_exceptions", "tableTo": "projects", "columnsFrom": [ "project_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "credit_memos": { "name": "credit_memos", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "netsuite_id": { "name": "netsuite_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "customer_id": { "name": "customer_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "project_id": { "name": "project_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "memo_number": { "name": "memo_number", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'draft'" }, "issue_date": { "name": "issue_date", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "total": { "name": "total", "type": "real", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "amount_applied": { "name": "amount_applied", "type": "real", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "amount_remaining": { "name": "amount_remaining", "type": "real", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "memo": { "name": "memo", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "line_items": { "name": "line_items", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "credit_memos_customer_id_customers_id_fk": { "name": "credit_memos_customer_id_customers_id_fk", "tableFrom": "credit_memos", "tableTo": "customers", "columnsFrom": [ "customer_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" }, "credit_memos_project_id_projects_id_fk": { "name": "credit_memos_project_id_projects_id_fk", "tableFrom": "credit_memos", "tableTo": "projects", "columnsFrom": [ "project_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "invoices": { "name": "invoices", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "netsuite_id": { "name": "netsuite_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "customer_id": { "name": "customer_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "project_id": { "name": "project_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "invoice_number": { "name": "invoice_number", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'draft'" }, "issue_date": { "name": "issue_date", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "due_date": { "name": "due_date", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "subtotal": { "name": "subtotal", "type": "real", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "tax": { "name": "tax", "type": "real", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "total": { "name": "total", "type": "real", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "amount_paid": { "name": "amount_paid", "type": "real", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "amount_due": { "name": "amount_due", "type": "real", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "memo": { "name": "memo", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "line_items": { "name": "line_items", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "invoices_customer_id_customers_id_fk": { "name": "invoices_customer_id_customers_id_fk", "tableFrom": "invoices", "tableTo": "customers", "columnsFrom": [ "customer_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" }, "invoices_project_id_projects_id_fk": { "name": "invoices_project_id_projects_id_fk", "tableFrom": "invoices", "tableTo": "projects", "columnsFrom": [ "project_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "netsuite_auth": { "name": "netsuite_auth", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "account_id": { "name": "account_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "access_token_encrypted": { "name": "access_token_encrypted", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "refresh_token_encrypted": { "name": "refresh_token_encrypted", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "expires_in": { "name": "expires_in", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "token_type": { "name": "token_type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "issued_at": { "name": "issued_at", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "netsuite_sync_log": { "name": "netsuite_sync_log", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "sync_type": { "name": "sync_type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "record_type": { "name": "record_type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "direction": { "name": "direction", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "records_processed": { "name": "records_processed", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "records_failed": { "name": "records_failed", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "error_summary": { "name": "error_summary", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "started_at": { "name": "started_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "completed_at": { "name": "completed_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "netsuite_sync_metadata": { "name": "netsuite_sync_metadata", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "local_table": { "name": "local_table", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "local_record_id": { "name": "local_record_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "netsuite_record_type": { "name": "netsuite_record_type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "netsuite_internal_id": { "name": "netsuite_internal_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "last_synced_at": { "name": "last_synced_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "last_modified_local": { "name": "last_modified_local", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "last_modified_remote": { "name": "last_modified_remote", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "sync_status": { "name": "sync_status", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'synced'" }, "conflict_data": { "name": "conflict_data", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "error_message": { "name": "error_message", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "retry_count": { "name": "retry_count", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "payments": { "name": "payments", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "netsuite_id": { "name": "netsuite_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "customer_id": { "name": "customer_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "vendor_id": { "name": "vendor_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "project_id": { "name": "project_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "payment_type": { "name": "payment_type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "amount": { "name": "amount", "type": "real", "primaryKey": false, "notNull": true, "autoincrement": false }, "payment_date": { "name": "payment_date", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "payment_method": { "name": "payment_method", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "reference_number": { "name": "reference_number", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "memo": { "name": "memo", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "payments_customer_id_customers_id_fk": { "name": "payments_customer_id_customers_id_fk", "tableFrom": "payments", "tableTo": "customers", "columnsFrom": [ "customer_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" }, "payments_vendor_id_vendors_id_fk": { "name": "payments_vendor_id_vendors_id_fk", "tableFrom": "payments", "tableTo": "vendors", "columnsFrom": [ "vendor_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" }, "payments_project_id_projects_id_fk": { "name": "payments_project_id_projects_id_fk", "tableFrom": "payments", "tableTo": "projects", "columnsFrom": [ "project_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "vendor_bills": { "name": "vendor_bills", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "netsuite_id": { "name": "netsuite_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "vendor_id": { "name": "vendor_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "project_id": { "name": "project_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "bill_number": { "name": "bill_number", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'pending'" }, "bill_date": { "name": "bill_date", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "due_date": { "name": "due_date", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "subtotal": { "name": "subtotal", "type": "real", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "tax": { "name": "tax", "type": "real", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "total": { "name": "total", "type": "real", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "amount_paid": { "name": "amount_paid", "type": "real", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "amount_due": { "name": "amount_due", "type": "real", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "memo": { "name": "memo", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "line_items": { "name": "line_items", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "vendor_bills_vendor_id_vendors_id_fk": { "name": "vendor_bills_vendor_id_vendors_id_fk", "tableFrom": "vendor_bills", "tableTo": "vendors", "columnsFrom": [ "vendor_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" }, "vendor_bills_project_id_projects_id_fk": { "name": "vendor_bills_project_id_projects_id_fk", "tableFrom": "vendor_bills", "tableTo": "projects", "columnsFrom": [ "project_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "plugin_config": { "name": "plugin_config", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "plugin_id": { "name": "plugin_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "key": { "name": "key", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "value": { "name": "value", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "is_encrypted": { "name": "is_encrypted", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "plugin_config_plugin_id_plugins_id_fk": { "name": "plugin_config_plugin_id_plugins_id_fk", "tableFrom": "plugin_config", "tableTo": "plugins", "columnsFrom": [ "plugin_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "plugin_events": { "name": "plugin_events", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "plugin_id": { "name": "plugin_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "event_type": { "name": "event_type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "details": { "name": "details", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "plugin_events_plugin_id_plugins_id_fk": { "name": "plugin_events_plugin_id_plugins_id_fk", "tableFrom": "plugin_events", "tableTo": "plugins", "columnsFrom": [ "plugin_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "plugin_events_user_id_users_id_fk": { "name": "plugin_events_user_id_users_id_fk", "tableFrom": "plugin_events", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "plugins": { "name": "plugins", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "version": { "name": "version", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "source": { "name": "source", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "source_type": { "name": "source_type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "capabilities": { "name": "capabilities", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "required_env_vars": { "name": "required_env_vars", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'disabled'" }, "status_reason": { "name": "status_reason", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "enabled_by": { "name": "enabled_by", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "enabled_at": { "name": "enabled_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "installed_at": { "name": "installed_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "plugins_enabled_by_users_id_fk": { "name": "plugins_enabled_by_users_id_fk", "tableFrom": "plugins", "tableTo": "users", "columnsFrom": [ "enabled_by" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "agent_items": { "name": "agent_items", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "conversation_id": { "name": "conversation_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "type": { "name": "type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "title": { "name": "title", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "content": { "name": "content", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "done": { "name": "done", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false }, "sort_order": { "name": "sort_order", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "parent_id": { "name": "parent_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "metadata": { "name": "metadata", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "agent_items_user_id_users_id_fk": { "name": "agent_items_user_id_users_id_fk", "tableFrom": "agent_items", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "agent_config": { "name": "agent_config", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "model_id": { "name": "model_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "model_name": { "name": "model_name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "provider": { "name": "provider", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "prompt_cost": { "name": "prompt_cost", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "completion_cost": { "name": "completion_cost", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "context_length": { "name": "context_length", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "max_cost_per_million": { "name": "max_cost_per_million", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "allow_user_selection": { "name": "allow_user_selection", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 1 }, "updated_by": { "name": "updated_by", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "agent_config_updated_by_users_id_fk": { "name": "agent_config_updated_by_users_id_fk", "tableFrom": "agent_config", "tableTo": "users", "columnsFrom": [ "updated_by" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "agent_usage": { "name": "agent_usage", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "conversation_id": { "name": "conversation_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "model_id": { "name": "model_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "prompt_tokens": { "name": "prompt_tokens", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "completion_tokens": { "name": "completion_tokens", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "total_tokens": { "name": "total_tokens", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "estimated_cost": { "name": "estimated_cost", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "agent_usage_conversation_id_agent_conversations_id_fk": { "name": "agent_usage_conversation_id_agent_conversations_id_fk", "tableFrom": "agent_usage", "tableTo": "agent_conversations", "columnsFrom": [ "conversation_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "agent_usage_user_id_users_id_fk": { "name": "agent_usage_user_id_users_id_fk", "tableFrom": "agent_usage", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "user_model_preference": { "name": "user_model_preference", "columns": { "user_id": { "name": "user_id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "model_id": { "name": "model_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "prompt_cost": { "name": "prompt_cost", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "completion_cost": { "name": "completion_cost", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "user_model_preference_user_id_users_id_fk": { "name": "user_model_preference_user_id_users_id_fk", "tableFrom": "user_model_preference", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "user_provider_config": { "name": "user_provider_config", "columns": { "user_id": { "name": "user_id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "provider_type": { "name": "provider_type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "api_key": { "name": "api_key", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "base_url": { "name": "base_url", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "model_overrides": { "name": "model_overrides", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "is_active": { "name": "is_active", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 1 }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "user_provider_config_user_id_users_id_fk": { "name": "user_provider_config_user_id_users_id_fk", "tableFrom": "user_provider_config", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "custom_themes": { "name": "custom_themes", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "''" }, "theme_data": { "name": "theme_data", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "custom_themes_user_id_users_id_fk": { "name": "custom_themes_user_id_users_id_fk", "tableFrom": "custom_themes", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "user_theme_preference": { "name": "user_theme_preference", "columns": { "user_id": { "name": "user_id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "active_theme_id": { "name": "active_theme_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "user_theme_preference_user_id_users_id_fk": { "name": "user_theme_preference_user_id_users_id_fk", "tableFrom": "user_theme_preference", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "google_auth": { "name": "google_auth", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "service_account_key_encrypted": { "name": "service_account_key_encrypted", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "workspace_domain": { "name": "workspace_domain", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "shared_drive_id": { "name": "shared_drive_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "shared_drive_name": { "name": "shared_drive_name", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "connected_by": { "name": "connected_by", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "google_auth_organization_id_organizations_id_fk": { "name": "google_auth_organization_id_organizations_id_fk", "tableFrom": "google_auth", "tableTo": "organizations", "columnsFrom": [ "organization_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "google_auth_connected_by_users_id_fk": { "name": "google_auth_connected_by_users_id_fk", "tableFrom": "google_auth", "tableTo": "users", "columnsFrom": [ "connected_by" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "google_starred_files": { "name": "google_starred_files", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "google_file_id": { "name": "google_file_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "google_starred_files_user_id_users_id_fk": { "name": "google_starred_files_user_id_users_id_fk", "tableFrom": "google_starred_files", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "custom_dashboards": { "name": "custom_dashboards", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "''" }, "spec_data": { "name": "spec_data", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "queries": { "name": "queries", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "render_prompt": { "name": "render_prompt", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "custom_dashboards_user_id_users_id_fk": { "name": "custom_dashboards_user_id_users_id_fk", "tableFrom": "custom_dashboards", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "mcp_api_keys": { "name": "mcp_api_keys", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "key_prefix": { "name": "key_prefix", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "key_hash": { "name": "key_hash", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "scopes": { "name": "scopes", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "last_used_at": { "name": "last_used_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "expires_at": { "name": "expires_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "is_active": { "name": "is_active", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": true } }, "indexes": {}, "foreignKeys": { "mcp_api_keys_user_id_users_id_fk": { "name": "mcp_api_keys_user_id_users_id_fk", "tableFrom": "mcp_api_keys", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "mcp_servers": { "name": "mcp_servers", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "org_id": { "name": "org_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "slug": { "name": "slug", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "transport": { "name": "transport", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "command": { "name": "command", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "args": { "name": "args", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "env": { "name": "env", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "url": { "name": "url", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "headers": { "name": "headers", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "is_enabled": { "name": "is_enabled", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": true }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "mcp_servers_org_id_organizations_id_fk": { "name": "mcp_servers_org_id_organizations_id_fk", "tableFrom": "mcp_servers", "tableTo": "organizations", "columnsFrom": [ "org_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "mcp_servers_created_by_users_id_fk": { "name": "mcp_servers_created_by_users_id_fk", "tableFrom": "mcp_servers", "tableTo": "users", "columnsFrom": [ "created_by" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "mcp_usage": { "name": "mcp_usage", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "api_key_id": { "name": "api_key_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "tool_name": { "name": "tool_name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "success": { "name": "success", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "error_message": { "name": "error_message", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "duration_ms": { "name": "duration_ms", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "mcp_usage_api_key_id_mcp_api_keys_id_fk": { "name": "mcp_usage_api_key_id_mcp_api_keys_id_fk", "tableFrom": "mcp_usage", "tableTo": "mcp_api_keys", "columnsFrom": [ "api_key_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "mcp_usage_user_id_users_id_fk": { "name": "mcp_usage_user_id_users_id_fk", "tableFrom": "mcp_usage", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "channel_categories": { "name": "channel_categories", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "position": { "name": "position", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "collapsed_by_default": { "name": "collapsed_by_default", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false, "default": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "channel_categories_organization_id_organizations_id_fk": { "name": "channel_categories_organization_id_organizations_id_fk", "tableFrom": "channel_categories", "tableTo": "organizations", "columnsFrom": [ "organization_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "channel_members": { "name": "channel_members", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "channel_id": { "name": "channel_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "role": { "name": "role", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'member'" }, "notify_level": { "name": "notify_level", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'all'" }, "joined_at": { "name": "joined_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "channel_members_channel_id_channels_id_fk": { "name": "channel_members_channel_id_channels_id_fk", "tableFrom": "channel_members", "tableTo": "channels", "columnsFrom": [ "channel_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "channel_members_user_id_users_id_fk": { "name": "channel_members_user_id_users_id_fk", "tableFrom": "channel_members", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "channel_read_state": { "name": "channel_read_state", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "channel_id": { "name": "channel_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "last_read_message_id": { "name": "last_read_message_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "last_read_at": { "name": "last_read_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "unread_count": { "name": "unread_count", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 } }, "indexes": {}, "foreignKeys": { "channel_read_state_user_id_users_id_fk": { "name": "channel_read_state_user_id_users_id_fk", "tableFrom": "channel_read_state", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "channel_read_state_channel_id_channels_id_fk": { "name": "channel_read_state_channel_id_channels_id_fk", "tableFrom": "channel_read_state", "tableTo": "channels", "columnsFrom": [ "channel_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "channels": { "name": "channels", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "name": { "name": "name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "type": { "name": "type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'text'" }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "organization_id": { "name": "organization_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "project_id": { "name": "project_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "category_id": { "name": "category_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "is_private": { "name": "is_private", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false }, "created_by": { "name": "created_by", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "sort_order": { "name": "sort_order", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "archived_at": { "name": "archived_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "channels_organization_id_organizations_id_fk": { "name": "channels_organization_id_organizations_id_fk", "tableFrom": "channels", "tableTo": "organizations", "columnsFrom": [ "organization_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "channels_project_id_projects_id_fk": { "name": "channels_project_id_projects_id_fk", "tableFrom": "channels", "tableTo": "projects", "columnsFrom": [ "project_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "channels_category_id_channel_categories_id_fk": { "name": "channels_category_id_channel_categories_id_fk", "tableFrom": "channels", "tableTo": "channel_categories", "columnsFrom": [ "category_id" ], "columnsTo": [ "id" ], "onDelete": "set null", "onUpdate": "no action" }, "channels_created_by_users_id_fk": { "name": "channels_created_by_users_id_fk", "tableFrom": "channels", "tableTo": "users", "columnsFrom": [ "created_by" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "message_attachments": { "name": "message_attachments", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "message_id": { "name": "message_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "file_name": { "name": "file_name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "mime_type": { "name": "mime_type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "file_size": { "name": "file_size", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false }, "r2_path": { "name": "r2_path", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "width": { "name": "width", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "height": { "name": "height", "type": "integer", "primaryKey": false, "notNull": false, "autoincrement": false }, "uploaded_at": { "name": "uploaded_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "message_attachments_message_id_messages_id_fk": { "name": "message_attachments_message_id_messages_id_fk", "tableFrom": "message_attachments", "tableTo": "messages", "columnsFrom": [ "message_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "message_mentions": { "name": "message_mentions", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "message_id": { "name": "message_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "mention_type": { "name": "mention_type", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "target_id": { "name": "target_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "message_mentions_message_id_messages_id_fk": { "name": "message_mentions_message_id_messages_id_fk", "tableFrom": "message_mentions", "tableTo": "messages", "columnsFrom": [ "message_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "message_reactions": { "name": "message_reactions", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "message_id": { "name": "message_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "emoji": { "name": "emoji", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "message_reactions_message_id_messages_id_fk": { "name": "message_reactions_message_id_messages_id_fk", "tableFrom": "message_reactions", "tableTo": "messages", "columnsFrom": [ "message_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "message_reactions_user_id_users_id_fk": { "name": "message_reactions_user_id_users_id_fk", "tableFrom": "message_reactions", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "messages": { "name": "messages", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "channel_id": { "name": "channel_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "thread_id": { "name": "thread_id", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "content": { "name": "content", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "content_html": { "name": "content_html", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "edited_at": { "name": "edited_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "deleted_at": { "name": "deleted_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "deleted_by": { "name": "deleted_by", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "is_pinned": { "name": "is_pinned", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false }, "reply_count": { "name": "reply_count", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "last_reply_at": { "name": "last_reply_at", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "messages_channel_id_channels_id_fk": { "name": "messages_channel_id_channels_id_fk", "tableFrom": "messages", "tableTo": "channels", "columnsFrom": [ "channel_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "messages_user_id_users_id_fk": { "name": "messages_user_id_users_id_fk", "tableFrom": "messages", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" }, "messages_deleted_by_users_id_fk": { "name": "messages_deleted_by_users_id_fk", "tableFrom": "messages", "tableTo": "users", "columnsFrom": [ "deleted_by" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "typing_sessions": { "name": "typing_sessions", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "channel_id": { "name": "channel_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "started_at": { "name": "started_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "expires_at": { "name": "expires_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "typing_sessions_channel_id_channels_id_fk": { "name": "typing_sessions_channel_id_channels_id_fk", "tableFrom": "typing_sessions", "tableTo": "channels", "columnsFrom": [ "channel_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "typing_sessions_user_id_users_id_fk": { "name": "typing_sessions_user_id_users_id_fk", "tableFrom": "typing_sessions", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "user_presence": { "name": "user_presence", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "user_id": { "name": "user_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'offline'" }, "status_message": { "name": "status_message", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "last_seen_at": { "name": "last_seen_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "updated_at": { "name": "updated_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": {}, "foreignKeys": { "user_presence_user_id_users_id_fk": { "name": "user_presence_user_id_users_id_fk", "tableFrom": "user_presence", "tableTo": "users", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "local_sync_metadata": { "name": "local_sync_metadata", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "table_name": { "name": "table_name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "record_id": { "name": "record_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "vector_clock": { "name": "vector_clock", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "last_modified_at": { "name": "last_modified_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "sync_status": { "name": "sync_status", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'pending_sync'" }, "conflict_data": { "name": "conflict_data", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": { "local_sync_metadata_table_record_idx": { "name": "local_sync_metadata_table_record_idx", "columns": [ "table_name", "record_id" ], "isUnique": false } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "mutation_queue": { "name": "mutation_queue", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "operation": { "name": "operation", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "table_name": { "name": "table_name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "record_id": { "name": "record_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "payload": { "name": "payload", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "vector_clock": { "name": "vector_clock", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "status": { "name": "status", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false, "default": "'pending'" }, "retry_count": { "name": "retry_count", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": 0 }, "error_message": { "name": "error_message", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "created_at": { "name": "created_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "process_after": { "name": "process_after", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false } }, "indexes": { "mutation_queue_status_created_idx": { "name": "mutation_queue_status_created_idx", "columns": [ "status", "created_at" ], "isUnique": false } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "sync_checkpoint": { "name": "sync_checkpoint", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "table_name": { "name": "table_name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "last_sync_cursor": { "name": "last_sync_cursor", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "local_vector_clock": { "name": "local_vector_clock", "type": "text", "primaryKey": false, "notNull": false, "autoincrement": false }, "synced_at": { "name": "synced_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false } }, "indexes": { "sync_checkpoint_table_name_unique": { "name": "sync_checkpoint_table_name_unique", "columns": [ "table_name" ], "isUnique": true }, "sync_checkpoint_table_name_idx": { "name": "sync_checkpoint_table_name_idx", "columns": [ "table_name" ], "isUnique": false } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} }, "sync_tombstone": { "name": "sync_tombstone", "columns": { "id": { "name": "id", "type": "text", "primaryKey": true, "notNull": true, "autoincrement": false }, "table_name": { "name": "table_name", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "record_id": { "name": "record_id", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "vector_clock": { "name": "vector_clock", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "deleted_at": { "name": "deleted_at", "type": "text", "primaryKey": false, "notNull": true, "autoincrement": false }, "synced": { "name": "synced", "type": "integer", "primaryKey": false, "notNull": true, "autoincrement": false, "default": false } }, "indexes": { "sync_tombstone_table_record_idx": { "name": "sync_tombstone_table_record_idx", "columns": [ "table_name", "record_id" ], "isUnique": false }, "sync_tombstone_synced_idx": { "name": "sync_tombstone_synced_idx", "columns": [ "synced" ], "isUnique": false } }, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "checkConstraints": {} } }, "views": {}, "enums": {}, "_meta": { "schemas": {}, "tables": {}, "columns": {} }, "internal": { "indexes": {} } }