| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166 | """empty messageRevision ID: eacc2313d69cRevises:Create Date: 2023-12-13 15:09:59.056426"""from typing import Sequence, Unionfrom alembic import opimport sqlalchemy as saimport sqlmodel# revision identifiers, used by Alembic.revision: str = "eacc2313d69c"down_revision: Union[str, None] = Nonebranch_labels: Union[str, Sequence[str], None] = Nonedepends_on: Union[str, Sequence[str], None] = Nonedef upgrade() -> None:    # ### commands auto generated by Alembic - please adjust! ###    op.create_table(        "assistant",        sa.Column("created_at", sa.DateTime(), server_default=sa.text("CURRENT_TIMESTAMP"), nullable=False),        sa.Column("updated_at", sa.DateTime(), server_default=sa.text("null"), nullable=True),        sa.Column("id", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("model", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("object", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("description", sqlmodel.sql.sqltypes.AutoString(), nullable=True),        sa.Column("file_ids", sa.JSON(), nullable=True),        sa.Column("instructions", sqlmodel.sql.sqltypes.AutoString(), nullable=True),        sa.Column("metadata", sa.JSON(), nullable=True),        sa.Column("name", sqlmodel.sql.sqltypes.AutoString(), nullable=True),        sa.Column("tools", sa.JSON(), nullable=True),        sa.PrimaryKeyConstraint("id"),    )    op.create_table(        "assistant_file",        sa.Column("created_at", sa.DateTime(), server_default=sa.text("CURRENT_TIMESTAMP"), nullable=False),        sa.Column("updated_at", sa.DateTime(), server_default=sa.text("null"), nullable=True),        sa.Column("id", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("assistant_id", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("object", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.PrimaryKeyConstraint("id"),    )    op.create_index("assistant_file_assistant_id_id_idx", "assistant_file", ["assistant_id", "id"], unique=False)    op.create_table(        "file",        sa.Column("created_at", sa.DateTime(), server_default=sa.text("CURRENT_TIMESTAMP"), nullable=False),        sa.Column("updated_at", sa.DateTime(), server_default=sa.text("null"), nullable=True),        sa.Column("id", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("bytes", sa.Integer(), nullable=False),        sa.Column("filename", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("purpose", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("object", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("key", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("status", sa.Enum("error", "processed", "uploaded"), nullable=True),        sa.Column("status_details", sqlmodel.sql.sqltypes.AutoString(), nullable=True),        sa.PrimaryKeyConstraint("id"),    )    op.create_index("file_purpose_idx", "file", ["purpose"], unique=False)    op.create_table(        "message",        sa.Column("id", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("created_at", sa.DateTime(), server_default=sa.text("CURRENT_TIMESTAMP"), nullable=False),        sa.Column("updated_at", sa.DateTime(), server_default=sa.text("null"), nullable=True),        sa.Column("role", sa.Enum("assistant", "user", "system", "function", "tool"), nullable=False),        sa.Column("thread_id", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("object", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("content", sa.JSON(), nullable=True),        sa.Column("file_ids", sa.JSON(), nullable=True),        sa.Column("metadata", sa.JSON(), nullable=True),        sa.Column("assistant_id", sqlmodel.sql.sqltypes.AutoString(), nullable=True),        sa.Column("run_id", sqlmodel.sql.sqltypes.AutoString(), nullable=True),        sa.PrimaryKeyConstraint("id"),    )    op.create_table(        "message_file",        sa.Column("created_at", sa.DateTime(), server_default=sa.text("CURRENT_TIMESTAMP"), nullable=False),        sa.Column("updated_at", sa.DateTime(), server_default=sa.text("null"), nullable=True),        sa.Column("id", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("message_id", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("object", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.PrimaryKeyConstraint("id"),    )    op.create_table(        "run",        sa.Column("created_at", sa.DateTime(), server_default=sa.text("CURRENT_TIMESTAMP"), nullable=False),        sa.Column("updated_at", sa.DateTime(), server_default=sa.text("null"), nullable=True),        sa.Column("id", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("instructions", sqlmodel.sql.sqltypes.AutoString(), nullable=True),        sa.Column("model", sqlmodel.sql.sqltypes.AutoString(), nullable=True),        sa.Column(            "status",            sa.Enum(                "cancelled", "cancelling", "completed", "expired", "failed", "in_progress", "queued", "requires_action"            ),            nullable=True,        ),        sa.Column("assistant_id", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("thread_id", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("object", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("file_ids", sa.JSON(), nullable=True),        sa.Column("metadata", sa.JSON(), nullable=True),        sa.Column("last_error", sa.JSON(), nullable=True),        sa.Column("required_action", sa.JSON(), nullable=True),        sa.Column("tools", sa.JSON(), nullable=True),        sa.Column("started_at", sa.DateTime(), nullable=True),        sa.Column("completed_at", sa.DateTime(), nullable=True),        sa.Column("cancelled_at", sa.DateTime(), nullable=True),        sa.Column("expires_at", sa.DateTime(), nullable=True),        sa.Column("failed_at", sa.DateTime(), nullable=True),        sa.PrimaryKeyConstraint("id"),    )    op.create_table(        "run_step",        sa.Column("created_at", sa.DateTime(), server_default=sa.text("CURRENT_TIMESTAMP"), nullable=False),        sa.Column("updated_at", sa.DateTime(), server_default=sa.text("null"), nullable=True),        sa.Column("id", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("status", sa.Enum("cancelled", "completed", "expired", "failed", "in_progress"), nullable=False),        sa.Column("type", sa.Enum("message_creation", "tool_calls"), nullable=False),        sa.Column("assistant_id", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("thread_id", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("run_id", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("object", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("metadata", sa.JSON(), nullable=True),        sa.Column("last_error", sa.JSON(), nullable=True),        sa.Column("step_details", sa.JSON(), nullable=True),        sa.Column("completed_at", sa.DateTime(), nullable=True),        sa.Column("cancelled_at", sa.DateTime(), nullable=True),        sa.Column("expires_at", sa.DateTime(), nullable=True),        sa.Column("failed_at", sa.DateTime(), nullable=True),        sa.Column("message_id", sqlmodel.sql.sqltypes.AutoString(), nullable=True),        sa.PrimaryKeyConstraint("id"),    )    op.create_index("run_step_run_id_idx", "run_step", ["run_id"], unique=False)    op.create_index("run_step_run_id_type_idx", "run_step", ["run_id", "type"], unique=False)    op.create_table(        "thread",        sa.Column("created_at", sa.DateTime(), server_default=sa.text("CURRENT_TIMESTAMP"), nullable=False),        sa.Column("updated_at", sa.DateTime(), server_default=sa.text("null"), nullable=True),        sa.Column("id", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("object", sqlmodel.sql.sqltypes.AutoString(), nullable=False),        sa.Column("metadata", sa.JSON(), nullable=True),        sa.PrimaryKeyConstraint("id"),    )    # ### end Alembic commands ###def downgrade() -> None:    # ### commands auto generated by Alembic - please adjust! ###    op.drop_table("thread")    op.drop_index("run_step_run_id_type_idx", table_name="run_step")    op.drop_index("run_step_run_id_idx", table_name="run_step")    op.drop_table("run_step")    op.drop_table("run")    op.drop_table("message_file")    op.drop_table("message")    op.drop_index("file_purpose_idx", table_name="file")    op.drop_table("file")    op.drop_index("assistant_file_assistant_id_id_idx", table_name="assistant_file")    op.drop_table("assistant_file")    op.drop_table("assistant")    # ### end Alembic commands ###
 |