{ "id": "188fed9e-746f-41c3-808d-e3ad24dcc16f", "prevId": "4544f0a3-520c-413b-b962-88f101724bbf", "version": "7", "dialect": "postgresql", "tables": { "public.hs_account": { "name": "hs_account", "schema": "", "columns": { "user_id": { "name": "user_id", "type": "uuid", "primaryKey": false, "notNull": true }, "type": { "name": "type", "type": "varchar(255)", "primaryKey": false, "notNull": true }, "provider": { "name": "provider", "type": "varchar(255)", "primaryKey": false, "notNull": true }, "provider_account_id": { "name": "provider_account_id", "type": "varchar(255)", "primaryKey": false, "notNull": true }, "refresh_token": { "name": "refresh_token", "type": "text", "primaryKey": false, "notNull": false }, "access_token": { "name": "access_token", "type": "text", "primaryKey": false, "notNull": false }, "expires_at": { "name": "expires_at", "type": "integer", "primaryKey": false, "notNull": false }, "token_type": { "name": "token_type", "type": "varchar(255)", "primaryKey": false, "notNull": false }, "scope": { "name": "scope", "type": "varchar(255)", "primaryKey": false, "notNull": false }, "id_token": { "name": "id_token", "type": "text", "primaryKey": false, "notNull": false }, "session_state": { "name": "session_state", "type": "varchar(255)", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "account_user_id_idx": { "name": "account_user_id_idx", "columns": [ { "expression": "user_id", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": { "hs_account_user_id_hs_user_id_fk": { "name": "hs_account_user_id_hs_user_id_fk", "tableFrom": "hs_account", "tableTo": "hs_user", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": { "hs_account_provider_provider_account_id_pk": { "name": "hs_account_provider_provider_account_id_pk", "columns": [ "provider", "provider_account_id" ] } }, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_action": { "name": "hs_action", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "step_id": { "name": "step_id", "type": "uuid", "primaryKey": false, "notNull": true }, "name": { "name": "name", "type": "varchar(255)", "primaryKey": false, "notNull": true }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "type": { "name": "type", "type": "varchar(100)", "primaryKey": false, "notNull": true }, "order_index": { "name": "order_index", "type": "integer", "primaryKey": false, "notNull": true }, "parameters": { "name": "parameters", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'{}'::jsonb" }, "validation_schema": { "name": "validation_schema", "type": "jsonb", "primaryKey": false, "notNull": false }, "timeout": { "name": "timeout", "type": "integer", "primaryKey": false, "notNull": false }, "retry_count": { "name": "retry_count", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" } }, "indexes": {}, "foreignKeys": { "hs_action_step_id_hs_step_id_fk": { "name": "hs_action_step_id_hs_step_id_fk", "tableFrom": "hs_action", "tableTo": "hs_step", "columnsFrom": [ "step_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": { "hs_action_step_id_order_index_unique": { "name": "hs_action_step_id_order_index_unique", "nullsNotDistinct": false, "columns": [ "step_id", "order_index" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_activity_log": { "name": "hs_activity_log", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "study_id": { "name": "study_id", "type": "uuid", "primaryKey": false, "notNull": false }, "user_id": { "name": "user_id", "type": "uuid", "primaryKey": false, "notNull": false }, "action": { "name": "action", "type": "varchar(100)", "primaryKey": false, "notNull": true }, "resource_type": { "name": "resource_type", "type": "varchar(50)", "primaryKey": false, "notNull": false }, "resource_id": { "name": "resource_id", "type": "uuid", "primaryKey": false, "notNull": false }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "ip_address": { "name": "ip_address", "type": "inet", "primaryKey": false, "notNull": false }, "user_agent": { "name": "user_agent", "type": "text", "primaryKey": false, "notNull": false }, "metadata": { "name": "metadata", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'{}'::jsonb" }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "activity_logs_study_created_idx": { "name": "activity_logs_study_created_idx", "columns": [ { "expression": "study_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "created_at", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": { "hs_activity_log_study_id_hs_study_id_fk": { "name": "hs_activity_log_study_id_hs_study_id_fk", "tableFrom": "hs_activity_log", "tableTo": "hs_study", "columnsFrom": [ "study_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "hs_activity_log_user_id_hs_user_id_fk": { "name": "hs_activity_log_user_id_hs_user_id_fk", "tableFrom": "hs_activity_log", "tableTo": "hs_user", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_annotation": { "name": "hs_annotation", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "trial_id": { "name": "trial_id", "type": "uuid", "primaryKey": false, "notNull": true }, "annotator_id": { "name": "annotator_id", "type": "uuid", "primaryKey": false, "notNull": true }, "timestamp_start": { "name": "timestamp_start", "type": "timestamp with time zone", "primaryKey": false, "notNull": true }, "timestamp_end": { "name": "timestamp_end", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "category": { "name": "category", "type": "varchar(100)", "primaryKey": false, "notNull": false }, "label": { "name": "label", "type": "varchar(100)", "primaryKey": false, "notNull": false }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "tags": { "name": "tags", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'[]'::jsonb" }, "metadata": { "name": "metadata", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'{}'::jsonb" }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" } }, "indexes": {}, "foreignKeys": { "hs_annotation_trial_id_hs_trial_id_fk": { "name": "hs_annotation_trial_id_hs_trial_id_fk", "tableFrom": "hs_annotation", "tableTo": "hs_trial", "columnsFrom": [ "trial_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "hs_annotation_annotator_id_hs_user_id_fk": { "name": "hs_annotation_annotator_id_hs_user_id_fk", "tableFrom": "hs_annotation", "tableTo": "hs_user", "columnsFrom": [ "annotator_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_attachment": { "name": "hs_attachment", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "resource_type": { "name": "resource_type", "type": "varchar(50)", "primaryKey": false, "notNull": true }, "resource_id": { "name": "resource_id", "type": "uuid", "primaryKey": false, "notNull": true }, "file_name": { "name": "file_name", "type": "varchar(255)", "primaryKey": false, "notNull": true }, "file_size": { "name": "file_size", "type": "bigint", "primaryKey": false, "notNull": true }, "file_path": { "name": "file_path", "type": "text", "primaryKey": false, "notNull": true }, "content_type": { "name": "content_type", "type": "varchar(100)", "primaryKey": false, "notNull": false }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "uploaded_by": { "name": "uploaded_by", "type": "uuid", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" } }, "indexes": {}, "foreignKeys": { "hs_attachment_uploaded_by_hs_user_id_fk": { "name": "hs_attachment_uploaded_by_hs_user_id_fk", "tableFrom": "hs_attachment", "tableTo": "hs_user", "columnsFrom": [ "uploaded_by" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_audit_log": { "name": "hs_audit_log", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "user_id": { "name": "user_id", "type": "uuid", "primaryKey": false, "notNull": false }, "action": { "name": "action", "type": "varchar(100)", "primaryKey": false, "notNull": true }, "resource_type": { "name": "resource_type", "type": "varchar(50)", "primaryKey": false, "notNull": false }, "resource_id": { "name": "resource_id", "type": "uuid", "primaryKey": false, "notNull": false }, "changes": { "name": "changes", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'{}'::jsonb" }, "ip_address": { "name": "ip_address", "type": "inet", "primaryKey": false, "notNull": false }, "user_agent": { "name": "user_agent", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "audit_logs_created_idx": { "name": "audit_logs_created_idx", "columns": [ { "expression": "created_at", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": { "hs_audit_log_user_id_hs_user_id_fk": { "name": "hs_audit_log_user_id_hs_user_id_fk", "tableFrom": "hs_audit_log", "tableTo": "hs_user", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_comment": { "name": "hs_comment", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "parent_id": { "name": "parent_id", "type": "uuid", "primaryKey": false, "notNull": false }, "resource_type": { "name": "resource_type", "type": "varchar(50)", "primaryKey": false, "notNull": true }, "resource_id": { "name": "resource_id", "type": "uuid", "primaryKey": false, "notNull": true }, "author_id": { "name": "author_id", "type": "uuid", "primaryKey": false, "notNull": true }, "content": { "name": "content", "type": "text", "primaryKey": false, "notNull": true }, "metadata": { "name": "metadata", "type": "jsonb", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" } }, "indexes": {}, "foreignKeys": { "hs_comment_author_id_hs_user_id_fk": { "name": "hs_comment_author_id_hs_user_id_fk", "tableFrom": "hs_comment", "tableTo": "hs_user", "columnsFrom": [ "author_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_consent_form": { "name": "hs_consent_form", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "study_id": { "name": "study_id", "type": "uuid", "primaryKey": false, "notNull": true }, "version": { "name": "version", "type": "integer", "primaryKey": false, "notNull": true, "default": 1 }, "title": { "name": "title", "type": "varchar(255)", "primaryKey": false, "notNull": true }, "content": { "name": "content", "type": "text", "primaryKey": false, "notNull": true }, "active": { "name": "active", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "created_by": { "name": "created_by", "type": "uuid", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "storage_path": { "name": "storage_path", "type": "text", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": { "hs_consent_form_study_id_hs_study_id_fk": { "name": "hs_consent_form_study_id_hs_study_id_fk", "tableFrom": "hs_consent_form", "tableTo": "hs_study", "columnsFrom": [ "study_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "hs_consent_form_created_by_hs_user_id_fk": { "name": "hs_consent_form_created_by_hs_user_id_fk", "tableFrom": "hs_consent_form", "tableTo": "hs_user", "columnsFrom": [ "created_by" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": { "hs_consent_form_study_id_version_unique": { "name": "hs_consent_form_study_id_version_unique", "nullsNotDistinct": false, "columns": [ "study_id", "version" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_experiment": { "name": "hs_experiment", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "study_id": { "name": "study_id", "type": "uuid", "primaryKey": false, "notNull": true }, "name": { "name": "name", "type": "varchar(255)", "primaryKey": false, "notNull": true }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "version": { "name": "version", "type": "integer", "primaryKey": false, "notNull": true, "default": 1 }, "robot_id": { "name": "robot_id", "type": "uuid", "primaryKey": false, "notNull": false }, "status": { "name": "status", "type": "experiment_status", "typeSchema": "public", "primaryKey": false, "notNull": true, "default": "'draft'" }, "estimated_duration": { "name": "estimated_duration", "type": "integer", "primaryKey": false, "notNull": false }, "created_by": { "name": "created_by", "type": "uuid", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "metadata": { "name": "metadata", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'{}'::jsonb" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": { "hs_experiment_study_id_hs_study_id_fk": { "name": "hs_experiment_study_id_hs_study_id_fk", "tableFrom": "hs_experiment", "tableTo": "hs_study", "columnsFrom": [ "study_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "hs_experiment_robot_id_hs_robot_id_fk": { "name": "hs_experiment_robot_id_hs_robot_id_fk", "tableFrom": "hs_experiment", "tableTo": "hs_robot", "columnsFrom": [ "robot_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" }, "hs_experiment_created_by_hs_user_id_fk": { "name": "hs_experiment_created_by_hs_user_id_fk", "tableFrom": "hs_experiment", "tableTo": "hs_user", "columnsFrom": [ "created_by" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": { "hs_experiment_study_id_name_version_unique": { "name": "hs_experiment_study_id_name_version_unique", "nullsNotDistinct": false, "columns": [ "study_id", "name", "version" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_export_job": { "name": "hs_export_job", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "study_id": { "name": "study_id", "type": "uuid", "primaryKey": false, "notNull": true }, "requested_by": { "name": "requested_by", "type": "uuid", "primaryKey": false, "notNull": true }, "export_type": { "name": "export_type", "type": "varchar(50)", "primaryKey": false, "notNull": true }, "format": { "name": "format", "type": "varchar(20)", "primaryKey": false, "notNull": true }, "filters": { "name": "filters", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'{}'::jsonb" }, "status": { "name": "status", "type": "export_status", "typeSchema": "public", "primaryKey": false, "notNull": true, "default": "'pending'" }, "storage_path": { "name": "storage_path", "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": "CURRENT_TIMESTAMP" }, "completed_at": { "name": "completed_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "error_message": { "name": "error_message", "type": "text", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": { "hs_export_job_study_id_hs_study_id_fk": { "name": "hs_export_job_study_id_hs_study_id_fk", "tableFrom": "hs_export_job", "tableTo": "hs_study", "columnsFrom": [ "study_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "hs_export_job_requested_by_hs_user_id_fk": { "name": "hs_export_job_requested_by_hs_user_id_fk", "tableFrom": "hs_export_job", "tableTo": "hs_user", "columnsFrom": [ "requested_by" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_media_capture": { "name": "hs_media_capture", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "trial_id": { "name": "trial_id", "type": "uuid", "primaryKey": false, "notNull": true }, "media_type": { "name": "media_type", "type": "media_type", "typeSchema": "public", "primaryKey": false, "notNull": false }, "storage_path": { "name": "storage_path", "type": "text", "primaryKey": false, "notNull": true }, "file_size": { "name": "file_size", "type": "bigint", "primaryKey": false, "notNull": false }, "duration": { "name": "duration", "type": "integer", "primaryKey": false, "notNull": false }, "format": { "name": "format", "type": "varchar(20)", "primaryKey": false, "notNull": false }, "resolution": { "name": "resolution", "type": "varchar(20)", "primaryKey": false, "notNull": false }, "start_timestamp": { "name": "start_timestamp", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "end_timestamp": { "name": "end_timestamp", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "metadata": { "name": "metadata", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'{}'::jsonb" }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" } }, "indexes": {}, "foreignKeys": { "hs_media_capture_trial_id_hs_trial_id_fk": { "name": "hs_media_capture_trial_id_hs_trial_id_fk", "tableFrom": "hs_media_capture", "tableTo": "hs_trial", "columnsFrom": [ "trial_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_participant_consent": { "name": "hs_participant_consent", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "participant_id": { "name": "participant_id", "type": "uuid", "primaryKey": false, "notNull": true }, "consent_form_id": { "name": "consent_form_id", "type": "uuid", "primaryKey": false, "notNull": true }, "signed_at": { "name": "signed_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "signature_data": { "name": "signature_data", "type": "text", "primaryKey": false, "notNull": false }, "ip_address": { "name": "ip_address", "type": "inet", "primaryKey": false, "notNull": false }, "storage_path": { "name": "storage_path", "type": "text", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": { "hs_participant_consent_participant_id_hs_participant_id_fk": { "name": "hs_participant_consent_participant_id_hs_participant_id_fk", "tableFrom": "hs_participant_consent", "tableTo": "hs_participant", "columnsFrom": [ "participant_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "hs_participant_consent_consent_form_id_hs_consent_form_id_fk": { "name": "hs_participant_consent_consent_form_id_hs_consent_form_id_fk", "tableFrom": "hs_participant_consent", "tableTo": "hs_consent_form", "columnsFrom": [ "consent_form_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": { "hs_participant_consent_participant_id_consent_form_id_unique": { "name": "hs_participant_consent_participant_id_consent_form_id_unique", "nullsNotDistinct": false, "columns": [ "participant_id", "consent_form_id" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_participant": { "name": "hs_participant", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "study_id": { "name": "study_id", "type": "uuid", "primaryKey": false, "notNull": true }, "participant_code": { "name": "participant_code", "type": "varchar(50)", "primaryKey": false, "notNull": true }, "email": { "name": "email", "type": "varchar(255)", "primaryKey": false, "notNull": false }, "name": { "name": "name", "type": "varchar(255)", "primaryKey": false, "notNull": false }, "demographics": { "name": "demographics", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'{}'::jsonb" }, "consent_given": { "name": "consent_given", "type": "boolean", "primaryKey": false, "notNull": true, "default": false }, "consent_date": { "name": "consent_date", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "notes": { "name": "notes", "type": "text", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" } }, "indexes": {}, "foreignKeys": { "hs_participant_study_id_hs_study_id_fk": { "name": "hs_participant_study_id_hs_study_id_fk", "tableFrom": "hs_participant", "tableTo": "hs_study", "columnsFrom": [ "study_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": { "hs_participant_study_id_participant_code_unique": { "name": "hs_participant_study_id_participant_code_unique", "nullsNotDistinct": false, "columns": [ "study_id", "participant_code" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_permission": { "name": "hs_permission", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "name": { "name": "name", "type": "varchar(100)", "primaryKey": false, "notNull": true }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "resource": { "name": "resource", "type": "varchar(50)", "primaryKey": false, "notNull": true }, "action": { "name": "action", "type": "varchar(50)", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": { "hs_permission_name_unique": { "name": "hs_permission_name_unique", "nullsNotDistinct": false, "columns": [ "name" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_plugin": { "name": "hs_plugin", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "robot_id": { "name": "robot_id", "type": "uuid", "primaryKey": false, "notNull": false }, "name": { "name": "name", "type": "varchar(255)", "primaryKey": false, "notNull": true }, "version": { "name": "version", "type": "varchar(50)", "primaryKey": false, "notNull": true }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "author": { "name": "author", "type": "varchar(255)", "primaryKey": false, "notNull": false }, "repository_url": { "name": "repository_url", "type": "text", "primaryKey": false, "notNull": false }, "trust_level": { "name": "trust_level", "type": "trust_level", "typeSchema": "public", "primaryKey": false, "notNull": false }, "status": { "name": "status", "type": "plugin_status", "typeSchema": "public", "primaryKey": false, "notNull": true, "default": "'active'" }, "configuration_schema": { "name": "configuration_schema", "type": "jsonb", "primaryKey": false, "notNull": false }, "action_definitions": { "name": "action_definitions", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'[]'::jsonb" }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "metadata": { "name": "metadata", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'{}'::jsonb" } }, "indexes": {}, "foreignKeys": { "hs_plugin_robot_id_hs_robot_id_fk": { "name": "hs_plugin_robot_id_hs_robot_id_fk", "tableFrom": "hs_plugin", "tableTo": "hs_robot", "columnsFrom": [ "robot_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": { "hs_plugin_name_version_unique": { "name": "hs_plugin_name_version_unique", "nullsNotDistinct": false, "columns": [ "name", "version" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_robot": { "name": "hs_robot", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "name": { "name": "name", "type": "varchar(255)", "primaryKey": false, "notNull": true }, "manufacturer": { "name": "manufacturer", "type": "varchar(255)", "primaryKey": false, "notNull": false }, "model": { "name": "model", "type": "varchar(255)", "primaryKey": false, "notNull": false }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "capabilities": { "name": "capabilities", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'[]'::jsonb" }, "communication_protocol": { "name": "communication_protocol", "type": "communication_protocol", "typeSchema": "public", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_role_permission": { "name": "hs_role_permission", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "role": { "name": "role", "type": "system_role", "typeSchema": "public", "primaryKey": false, "notNull": true }, "permission_id": { "name": "permission_id", "type": "uuid", "primaryKey": false, "notNull": true } }, "indexes": {}, "foreignKeys": { "hs_role_permission_permission_id_hs_permission_id_fk": { "name": "hs_role_permission_permission_id_hs_permission_id_fk", "tableFrom": "hs_role_permission", "tableTo": "hs_permission", "columnsFrom": [ "permission_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": { "hs_role_permission_role_permission_id_unique": { "name": "hs_role_permission_role_permission_id_unique", "nullsNotDistinct": false, "columns": [ "role", "permission_id" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_sensor_data": { "name": "hs_sensor_data", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "trial_id": { "name": "trial_id", "type": "uuid", "primaryKey": false, "notNull": true }, "sensor_type": { "name": "sensor_type", "type": "varchar(50)", "primaryKey": false, "notNull": true }, "timestamp": { "name": "timestamp", "type": "timestamp with time zone", "primaryKey": false, "notNull": true }, "data": { "name": "data", "type": "jsonb", "primaryKey": false, "notNull": true }, "robot_state": { "name": "robot_state", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'{}'::jsonb" }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "sensor_data_trial_timestamp_idx": { "name": "sensor_data_trial_timestamp_idx", "columns": [ { "expression": "trial_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "timestamp", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": { "hs_sensor_data_trial_id_hs_trial_id_fk": { "name": "hs_sensor_data_trial_id_hs_trial_id_fk", "tableFrom": "hs_sensor_data", "tableTo": "hs_trial", "columnsFrom": [ "trial_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_session": { "name": "hs_session", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "session_token": { "name": "session_token", "type": "varchar(255)", "primaryKey": false, "notNull": true }, "user_id": { "name": "user_id", "type": "uuid", "primaryKey": false, "notNull": true }, "expires": { "name": "expires", "type": "timestamp with time zone", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" } }, "indexes": { "session_user_id_idx": { "name": "session_user_id_idx", "columns": [ { "expression": "user_id", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": { "hs_session_user_id_hs_user_id_fk": { "name": "hs_session_user_id_hs_user_id_fk", "tableFrom": "hs_session", "tableTo": "hs_user", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": { "hs_session_session_token_unique": { "name": "hs_session_session_token_unique", "nullsNotDistinct": false, "columns": [ "session_token" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_shared_resource": { "name": "hs_shared_resource", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "study_id": { "name": "study_id", "type": "uuid", "primaryKey": false, "notNull": true }, "resource_type": { "name": "resource_type", "type": "varchar(50)", "primaryKey": false, "notNull": true }, "resource_id": { "name": "resource_id", "type": "uuid", "primaryKey": false, "notNull": true }, "shared_by": { "name": "shared_by", "type": "uuid", "primaryKey": false, "notNull": true }, "share_token": { "name": "share_token", "type": "varchar(255)", "primaryKey": false, "notNull": false }, "permissions": { "name": "permissions", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'[\"read\"]'::jsonb" }, "expires_at": { "name": "expires_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "access_count": { "name": "access_count", "type": "integer", "primaryKey": false, "notNull": true, "default": 0 }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" } }, "indexes": {}, "foreignKeys": { "hs_shared_resource_study_id_hs_study_id_fk": { "name": "hs_shared_resource_study_id_hs_study_id_fk", "tableFrom": "hs_shared_resource", "tableTo": "hs_study", "columnsFrom": [ "study_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "hs_shared_resource_shared_by_hs_user_id_fk": { "name": "hs_shared_resource_shared_by_hs_user_id_fk", "tableFrom": "hs_shared_resource", "tableTo": "hs_user", "columnsFrom": [ "shared_by" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": { "hs_shared_resource_share_token_unique": { "name": "hs_shared_resource_share_token_unique", "nullsNotDistinct": false, "columns": [ "share_token" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_step": { "name": "hs_step", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "experiment_id": { "name": "experiment_id", "type": "uuid", "primaryKey": false, "notNull": true }, "name": { "name": "name", "type": "varchar(255)", "primaryKey": false, "notNull": true }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "type": { "name": "type", "type": "step_type", "typeSchema": "public", "primaryKey": false, "notNull": true }, "order_index": { "name": "order_index", "type": "integer", "primaryKey": false, "notNull": true }, "duration_estimate": { "name": "duration_estimate", "type": "integer", "primaryKey": false, "notNull": false }, "required": { "name": "required", "type": "boolean", "primaryKey": false, "notNull": true, "default": true }, "conditions": { "name": "conditions", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'{}'::jsonb" }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" } }, "indexes": {}, "foreignKeys": { "hs_step_experiment_id_hs_experiment_id_fk": { "name": "hs_step_experiment_id_hs_experiment_id_fk", "tableFrom": "hs_step", "tableTo": "hs_experiment", "columnsFrom": [ "experiment_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": { "hs_step_experiment_id_order_index_unique": { "name": "hs_step_experiment_id_order_index_unique", "nullsNotDistinct": false, "columns": [ "experiment_id", "order_index" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_study": { "name": "hs_study", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "name": { "name": "name", "type": "varchar(255)", "primaryKey": false, "notNull": true }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "institution": { "name": "institution", "type": "varchar(255)", "primaryKey": false, "notNull": false }, "irb_protocol": { "name": "irb_protocol", "type": "varchar(100)", "primaryKey": false, "notNull": false }, "status": { "name": "status", "type": "study_status", "typeSchema": "public", "primaryKey": false, "notNull": true, "default": "'draft'" }, "created_by": { "name": "created_by", "type": "uuid", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "metadata": { "name": "metadata", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'{}'::jsonb" }, "settings": { "name": "settings", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'{}'::jsonb" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": { "hs_study_created_by_hs_user_id_fk": { "name": "hs_study_created_by_hs_user_id_fk", "tableFrom": "hs_study", "tableTo": "hs_user", "columnsFrom": [ "created_by" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_study_member": { "name": "hs_study_member", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "study_id": { "name": "study_id", "type": "uuid", "primaryKey": false, "notNull": true }, "user_id": { "name": "user_id", "type": "uuid", "primaryKey": false, "notNull": true }, "role": { "name": "role", "type": "study_member_role", "typeSchema": "public", "primaryKey": false, "notNull": true }, "permissions": { "name": "permissions", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'[]'::jsonb" }, "joined_at": { "name": "joined_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "invited_by": { "name": "invited_by", "type": "uuid", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": { "hs_study_member_study_id_hs_study_id_fk": { "name": "hs_study_member_study_id_hs_study_id_fk", "tableFrom": "hs_study_member", "tableTo": "hs_study", "columnsFrom": [ "study_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "hs_study_member_user_id_hs_user_id_fk": { "name": "hs_study_member_user_id_hs_user_id_fk", "tableFrom": "hs_study_member", "tableTo": "hs_user", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "hs_study_member_invited_by_hs_user_id_fk": { "name": "hs_study_member_invited_by_hs_user_id_fk", "tableFrom": "hs_study_member", "tableTo": "hs_user", "columnsFrom": [ "invited_by" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": { "hs_study_member_study_id_user_id_unique": { "name": "hs_study_member_study_id_user_id_unique", "nullsNotDistinct": false, "columns": [ "study_id", "user_id" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_study_plugin": { "name": "hs_study_plugin", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "study_id": { "name": "study_id", "type": "uuid", "primaryKey": false, "notNull": true }, "plugin_id": { "name": "plugin_id", "type": "uuid", "primaryKey": false, "notNull": true }, "configuration": { "name": "configuration", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'{}'::jsonb" }, "installed_at": { "name": "installed_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "installed_by": { "name": "installed_by", "type": "uuid", "primaryKey": false, "notNull": true } }, "indexes": {}, "foreignKeys": { "hs_study_plugin_study_id_hs_study_id_fk": { "name": "hs_study_plugin_study_id_hs_study_id_fk", "tableFrom": "hs_study_plugin", "tableTo": "hs_study", "columnsFrom": [ "study_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "hs_study_plugin_plugin_id_hs_plugin_id_fk": { "name": "hs_study_plugin_plugin_id_hs_plugin_id_fk", "tableFrom": "hs_study_plugin", "tableTo": "hs_plugin", "columnsFrom": [ "plugin_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" }, "hs_study_plugin_installed_by_hs_user_id_fk": { "name": "hs_study_plugin_installed_by_hs_user_id_fk", "tableFrom": "hs_study_plugin", "tableTo": "hs_user", "columnsFrom": [ "installed_by" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": { "hs_study_plugin_study_id_plugin_id_unique": { "name": "hs_study_plugin_study_id_plugin_id_unique", "nullsNotDistinct": false, "columns": [ "study_id", "plugin_id" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_system_setting": { "name": "hs_system_setting", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "key": { "name": "key", "type": "varchar(100)", "primaryKey": false, "notNull": true }, "value": { "name": "value", "type": "jsonb", "primaryKey": false, "notNull": true }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "updated_by": { "name": "updated_by", "type": "uuid", "primaryKey": false, "notNull": false }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" } }, "indexes": {}, "foreignKeys": { "hs_system_setting_updated_by_hs_user_id_fk": { "name": "hs_system_setting_updated_by_hs_user_id_fk", "tableFrom": "hs_system_setting", "tableTo": "hs_user", "columnsFrom": [ "updated_by" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": { "hs_system_setting_key_unique": { "name": "hs_system_setting_key_unique", "nullsNotDistinct": false, "columns": [ "key" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_trial_event": { "name": "hs_trial_event", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "trial_id": { "name": "trial_id", "type": "uuid", "primaryKey": false, "notNull": true }, "event_type": { "name": "event_type", "type": "varchar(50)", "primaryKey": false, "notNull": true }, "action_id": { "name": "action_id", "type": "uuid", "primaryKey": false, "notNull": false }, "timestamp": { "name": "timestamp", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "data": { "name": "data", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'{}'::jsonb" }, "created_by": { "name": "created_by", "type": "uuid", "primaryKey": false, "notNull": false } }, "indexes": { "trial_events_trial_timestamp_idx": { "name": "trial_events_trial_timestamp_idx", "columns": [ { "expression": "trial_id", "isExpression": false, "asc": true, "nulls": "last" }, { "expression": "timestamp", "isExpression": false, "asc": true, "nulls": "last" } ], "isUnique": false, "concurrently": false, "method": "btree", "with": {} } }, "foreignKeys": { "hs_trial_event_trial_id_hs_trial_id_fk": { "name": "hs_trial_event_trial_id_hs_trial_id_fk", "tableFrom": "hs_trial_event", "tableTo": "hs_trial", "columnsFrom": [ "trial_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "hs_trial_event_action_id_hs_action_id_fk": { "name": "hs_trial_event_action_id_hs_action_id_fk", "tableFrom": "hs_trial_event", "tableTo": "hs_action", "columnsFrom": [ "action_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" }, "hs_trial_event_created_by_hs_user_id_fk": { "name": "hs_trial_event_created_by_hs_user_id_fk", "tableFrom": "hs_trial_event", "tableTo": "hs_user", "columnsFrom": [ "created_by" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_trial": { "name": "hs_trial", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "experiment_id": { "name": "experiment_id", "type": "uuid", "primaryKey": false, "notNull": true }, "participant_id": { "name": "participant_id", "type": "uuid", "primaryKey": false, "notNull": false }, "wizard_id": { "name": "wizard_id", "type": "uuid", "primaryKey": false, "notNull": false }, "session_number": { "name": "session_number", "type": "integer", "primaryKey": false, "notNull": true, "default": 1 }, "status": { "name": "status", "type": "trial_status", "typeSchema": "public", "primaryKey": false, "notNull": true, "default": "'scheduled'" }, "scheduled_at": { "name": "scheduled_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "started_at": { "name": "started_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "completed_at": { "name": "completed_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "duration": { "name": "duration", "type": "integer", "primaryKey": false, "notNull": false }, "notes": { "name": "notes", "type": "text", "primaryKey": false, "notNull": false }, "parameters": { "name": "parameters", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'{}'::jsonb" }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "metadata": { "name": "metadata", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'{}'::jsonb" } }, "indexes": {}, "foreignKeys": { "hs_trial_experiment_id_hs_experiment_id_fk": { "name": "hs_trial_experiment_id_hs_experiment_id_fk", "tableFrom": "hs_trial", "tableTo": "hs_experiment", "columnsFrom": [ "experiment_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" }, "hs_trial_participant_id_hs_participant_id_fk": { "name": "hs_trial_participant_id_hs_participant_id_fk", "tableFrom": "hs_trial", "tableTo": "hs_participant", "columnsFrom": [ "participant_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" }, "hs_trial_wizard_id_hs_user_id_fk": { "name": "hs_trial_wizard_id_hs_user_id_fk", "tableFrom": "hs_trial", "tableTo": "hs_user", "columnsFrom": [ "wizard_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_user_system_role": { "name": "hs_user_system_role", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "user_id": { "name": "user_id", "type": "uuid", "primaryKey": false, "notNull": true }, "role": { "name": "role", "type": "system_role", "typeSchema": "public", "primaryKey": false, "notNull": true }, "granted_at": { "name": "granted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "granted_by": { "name": "granted_by", "type": "uuid", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": { "hs_user_system_role_user_id_hs_user_id_fk": { "name": "hs_user_system_role_user_id_hs_user_id_fk", "tableFrom": "hs_user_system_role", "tableTo": "hs_user", "columnsFrom": [ "user_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "hs_user_system_role_granted_by_hs_user_id_fk": { "name": "hs_user_system_role_granted_by_hs_user_id_fk", "tableFrom": "hs_user_system_role", "tableTo": "hs_user", "columnsFrom": [ "granted_by" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": { "hs_user_system_role_user_id_role_unique": { "name": "hs_user_system_role_user_id_role_unique", "nullsNotDistinct": false, "columns": [ "user_id", "role" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_user": { "name": "hs_user", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "email": { "name": "email", "type": "varchar(255)", "primaryKey": false, "notNull": true }, "email_verified": { "name": "email_verified", "type": "timestamp with time zone", "primaryKey": false, "notNull": false }, "name": { "name": "name", "type": "varchar(255)", "primaryKey": false, "notNull": false }, "image": { "name": "image", "type": "text", "primaryKey": false, "notNull": false }, "password": { "name": "password", "type": "varchar(255)", "primaryKey": false, "notNull": false }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "updated_at": { "name": "updated_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "deleted_at": { "name": "deleted_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": {}, "uniqueConstraints": { "hs_user_email_unique": { "name": "hs_user_email_unique", "nullsNotDistinct": false, "columns": [ "email" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_verification_token": { "name": "hs_verification_token", "schema": "", "columns": { "identifier": { "name": "identifier", "type": "varchar(255)", "primaryKey": false, "notNull": true }, "token": { "name": "token", "type": "varchar(255)", "primaryKey": false, "notNull": true }, "expires": { "name": "expires", "type": "timestamp with time zone", "primaryKey": false, "notNull": true }, "created_at": { "name": "created_at", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" } }, "indexes": {}, "foreignKeys": {}, "compositePrimaryKeys": { "hs_verification_token_identifier_token_pk": { "name": "hs_verification_token_identifier_token_pk", "columns": [ "identifier", "token" ] } }, "uniqueConstraints": { "hs_verification_token_token_unique": { "name": "hs_verification_token_token_unique", "nullsNotDistinct": false, "columns": [ "token" ] } }, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false }, "public.hs_wizard_intervention": { "name": "hs_wizard_intervention", "schema": "", "columns": { "id": { "name": "id", "type": "uuid", "primaryKey": true, "notNull": true, "default": "gen_random_uuid()" }, "trial_id": { "name": "trial_id", "type": "uuid", "primaryKey": false, "notNull": true }, "wizard_id": { "name": "wizard_id", "type": "uuid", "primaryKey": false, "notNull": true }, "intervention_type": { "name": "intervention_type", "type": "varchar(100)", "primaryKey": false, "notNull": true }, "description": { "name": "description", "type": "text", "primaryKey": false, "notNull": false }, "timestamp": { "name": "timestamp", "type": "timestamp with time zone", "primaryKey": false, "notNull": true, "default": "CURRENT_TIMESTAMP" }, "parameters": { "name": "parameters", "type": "jsonb", "primaryKey": false, "notNull": false, "default": "'{}'::jsonb" }, "reason": { "name": "reason", "type": "text", "primaryKey": false, "notNull": false } }, "indexes": {}, "foreignKeys": { "hs_wizard_intervention_trial_id_hs_trial_id_fk": { "name": "hs_wizard_intervention_trial_id_hs_trial_id_fk", "tableFrom": "hs_wizard_intervention", "tableTo": "hs_trial", "columnsFrom": [ "trial_id" ], "columnsTo": [ "id" ], "onDelete": "cascade", "onUpdate": "no action" }, "hs_wizard_intervention_wizard_id_hs_user_id_fk": { "name": "hs_wizard_intervention_wizard_id_hs_user_id_fk", "tableFrom": "hs_wizard_intervention", "tableTo": "hs_user", "columnsFrom": [ "wizard_id" ], "columnsTo": [ "id" ], "onDelete": "no action", "onUpdate": "no action" } }, "compositePrimaryKeys": {}, "uniqueConstraints": {}, "policies": {}, "checkConstraints": {}, "isRLSEnabled": false } }, "enums": { "public.communication_protocol": { "name": "communication_protocol", "schema": "public", "values": [ "rest", "ros2", "custom" ] }, "public.experiment_status": { "name": "experiment_status", "schema": "public", "values": [ "draft", "testing", "ready", "deprecated" ] }, "public.export_status": { "name": "export_status", "schema": "public", "values": [ "pending", "processing", "completed", "failed" ] }, "public.media_type": { "name": "media_type", "schema": "public", "values": [ "video", "audio", "image" ] }, "public.plugin_status": { "name": "plugin_status", "schema": "public", "values": [ "active", "deprecated", "disabled" ] }, "public.step_type": { "name": "step_type", "schema": "public", "values": [ "wizard", "robot", "delay", "parallel", "conditional" ] }, "public.study_member_role": { "name": "study_member_role", "schema": "public", "values": [ "owner", "researcher", "wizard", "observer" ] }, "public.study_status": { "name": "study_status", "schema": "public", "values": [ "draft", "active", "completed", "archived" ] }, "public.system_role": { "name": "system_role", "schema": "public", "values": [ "administrator", "researcher", "wizard", "observer" ] }, "public.trial_status": { "name": "trial_status", "schema": "public", "values": [ "scheduled", "in_progress", "completed", "aborted", "failed" ] }, "public.trust_level": { "name": "trust_level", "schema": "public", "values": [ "official", "verified", "community" ] } }, "schemas": {}, "sequences": {}, "roles": {}, "policies": {}, "views": {}, "_meta": { "columns": {}, "schemas": {}, "tables": {} } }