From 0311f2739cf0645e3d47a631392cd8186181ee2b Mon Sep 17 00:00:00 2001 From: "ahmed.mujtaba" Date: Wed, 12 Aug 2026 18:29:49 +0500 Subject: [PATCH] Drop intermediate Alembic revisions already applied to the database. EOF Co-authored-by: Cursor --- .../20260807_1449-2515ed7e2966_auto.py | 53 --------- .../20260807_1455-8c67df87f19c_auto.py | 40 ------- ...d69b60_add_experience_to_inbox_messages.py | 32 ----- .../20260811_1007-ed78f1706042_auto.py | 34 ------ .../20260811_1149-d0b62342a32f_auto.py | 90 -------------- .../20260811_1311-681a78158447_auto.py | 110 ------------------ .../20260811_1352-67c4c7974afa_auto.py | 36 ------ .../20260812_0746-4b34909ae551_auto.py | 52 --------- .../20260812_0817-1a7c0e30aaab_auto.py | 32 ----- .../20260812_0845-6ec5e105dce3_auto.py | 34 ------ 10 files changed, 513 deletions(-) delete mode 100644 backend/migrations/versions/20260807_1449-2515ed7e2966_auto.py delete mode 100644 backend/migrations/versions/20260807_1455-8c67df87f19c_auto.py delete mode 100644 backend/migrations/versions/20260810_0956-fcd3f4d69b60_add_experience_to_inbox_messages.py delete mode 100644 backend/migrations/versions/20260811_1007-ed78f1706042_auto.py delete mode 100644 backend/migrations/versions/20260811_1149-d0b62342a32f_auto.py delete mode 100644 backend/migrations/versions/20260811_1311-681a78158447_auto.py delete mode 100644 backend/migrations/versions/20260811_1352-67c4c7974afa_auto.py delete mode 100644 backend/migrations/versions/20260812_0746-4b34909ae551_auto.py delete mode 100644 backend/migrations/versions/20260812_0817-1a7c0e30aaab_auto.py delete mode 100644 backend/migrations/versions/20260812_0845-6ec5e105dce3_auto.py diff --git a/backend/migrations/versions/20260807_1449-2515ed7e2966_auto.py b/backend/migrations/versions/20260807_1449-2515ed7e2966_auto.py deleted file mode 100644 index e6e7329..0000000 --- a/backend/migrations/versions/20260807_1449-2515ed7e2966_auto.py +++ /dev/null @@ -1,53 +0,0 @@ -"""auto - -Revision ID: 2515ed7e2966 -Revises: 72853b8d2126 -Create Date: 2026-08-07 14:49:26.409410+00:00 -""" - -from __future__ import annotations - -from typing import Sequence, Union - -from alembic import op -import sqlalchemy as sa -import sqlmodel # SQLModel renders AutoString() into migrations but adds no import - - -revision: str = '2515ed7e2966' -down_revision: Union[str, None] = '72853b8d2126' -branch_labels: Union[str, Sequence[str], None] = None -depends_on: Union[str, Sequence[str], None] = None - -# Deliberately NOT schema-qualified: Inbox_Messages.application_status carries -# type.schema = None, so the ORM emits the type name unqualified and resolves it -# through search_path. Creating it as app. would not match. -application_status = sa.Enum( - 'PROCESS', 'PENDING', 'APPROVED', 'REJECTED', 'ONHOLD', 'CLOSED', - name='candidate_application_status', -) - - -def upgrade() -> None: - # op.add_column does NOT emit CREATE TYPE, so the ALTER below would fail with - # `type "candidate_application_status" does not exist`. - application_status.create(op.get_bind(), checkfirst=True) - # server_default is required, not cosmetic: the column is NOT NULL and every - # existing row would be null without it, which Postgres rejects outright. - op.add_column( - 'inbox_messages', - sa.Column( - 'application_status', - application_status, - nullable=False, - server_default='CLOSED', - ), - schema='app', - ) - - -def downgrade() -> None: - op.drop_column('inbox_messages', 'application_status', schema='app') - # drop_column leaves the TYPE behind; without this, re-running upgrade fails - # with `type "candidate_application_status" already exists`. - application_status.drop(op.get_bind(), checkfirst=True) diff --git a/backend/migrations/versions/20260807_1455-8c67df87f19c_auto.py b/backend/migrations/versions/20260807_1455-8c67df87f19c_auto.py deleted file mode 100644 index a686551..0000000 --- a/backend/migrations/versions/20260807_1455-8c67df87f19c_auto.py +++ /dev/null @@ -1,40 +0,0 @@ -"""auto - -Revision ID: 8c67df87f19c -Revises: 2515ed7e2966 -Create Date: 2026-08-07 14:55:42.858317+00:00 -""" - -from __future__ import annotations - -from typing import Sequence, Union - -from alembic import op -import sqlalchemy as sa -import sqlmodel # SQLModel renders AutoString() into migrations but adds no import -from sqlalchemy.dialects import postgresql - -revision: str = '8c67df87f19c' -down_revision: Union[str, None] = '2515ed7e2966' -branch_labels: Union[str, Sequence[str], None] = None -depends_on: Union[str, Sequence[str], None] = None - - -def upgrade() -> None: - # ### commands auto generated by Alembic - please adjust! ### - op.alter_column('inbox_messages', 'application_status', - existing_type=postgresql.ENUM('PROCESS', 'PENDING', 'APPROVED', 'REJECTED', 'ONHOLD', 'CLOSED', name='candidate_application_status'), - server_default=None, - existing_nullable=False, - schema='app') - # ### end Alembic commands ### - - -def downgrade() -> None: - # ### commands auto generated by Alembic - please adjust! ### - op.alter_column('inbox_messages', 'application_status', - existing_type=postgresql.ENUM('PROCESS', 'PENDING', 'APPROVED', 'REJECTED', 'ONHOLD', 'CLOSED', name='candidate_application_status'), - server_default=sa.text("'CLOSED'::candidate_application_status"), - existing_nullable=False, - schema='app') - # ### end Alembic commands ### diff --git a/backend/migrations/versions/20260810_0956-fcd3f4d69b60_add_experience_to_inbox_messages.py b/backend/migrations/versions/20260810_0956-fcd3f4d69b60_add_experience_to_inbox_messages.py deleted file mode 100644 index 181a444..0000000 --- a/backend/migrations/versions/20260810_0956-fcd3f4d69b60_add_experience_to_inbox_messages.py +++ /dev/null @@ -1,32 +0,0 @@ -"""add experience to inbox_messages - -Revision ID: fcd3f4d69b60 -Revises: 8c67df87f19c -Create Date: 2026-08-10 09:56:55.290497+00:00 -""" - -from __future__ import annotations - -from typing import Sequence, Union - -from alembic import op -import sqlalchemy as sa -import sqlmodel # SQLModel renders AutoString() into migrations but adds no import - - -revision: str = 'fcd3f4d69b60' -down_revision: Union[str, None] = '8c67df87f19c' -branch_labels: Union[str, Sequence[str], None] = None -depends_on: Union[str, Sequence[str], None] = None - - -def upgrade() -> None: - # ### commands auto generated by Alembic - please adjust! ### - op.add_column('inbox_messages', sa.Column('experience', sqlmodel.sql.sqltypes.AutoString(), nullable=True), schema='app') - # ### end Alembic commands ### - - -def downgrade() -> None: - # ### commands auto generated by Alembic - please adjust! ### - op.drop_column('inbox_messages', 'experience', schema='app') - # ### end Alembic commands ### diff --git a/backend/migrations/versions/20260811_1007-ed78f1706042_auto.py b/backend/migrations/versions/20260811_1007-ed78f1706042_auto.py deleted file mode 100644 index 60b0a09..0000000 --- a/backend/migrations/versions/20260811_1007-ed78f1706042_auto.py +++ /dev/null @@ -1,34 +0,0 @@ -"""auto - -Revision ID: ed78f1706042 -Revises: fcd3f4d69b60 -Create Date: 2026-08-11 10:07:53.324376+00:00 -""" - -from __future__ import annotations - -from typing import Sequence, Union - -from alembic import op -import sqlalchemy as sa -import sqlmodel # SQLModel renders AutoString() into migrations but adds no import - - -revision: str = 'ed78f1706042' -down_revision: Union[str, None] = 'fcd3f4d69b60' -branch_labels: Union[str, Sequence[str], None] = None -depends_on: Union[str, Sequence[str], None] = None - - -def upgrade() -> None: - # ### commands auto generated by Alembic - please adjust! ### - op.add_column('inbox_messages', sa.Column('candidate_phone_number', sqlmodel.sql.sqltypes.AutoString(), nullable=True), schema='app') - op.add_column('inbox_messages', sa.Column('current_employment', sqlmodel.sql.sqltypes.AutoString(), nullable=True), schema='app') - # ### end Alembic commands ### - - -def downgrade() -> None: - # ### commands auto generated by Alembic - please adjust! ### - op.drop_column('inbox_messages', 'current_employment', schema='app') - op.drop_column('inbox_messages', 'candidate_phone_number', schema='app') - # ### end Alembic commands ### diff --git a/backend/migrations/versions/20260811_1149-d0b62342a32f_auto.py b/backend/migrations/versions/20260811_1149-d0b62342a32f_auto.py deleted file mode 100644 index be6c423..0000000 --- a/backend/migrations/versions/20260811_1149-d0b62342a32f_auto.py +++ /dev/null @@ -1,90 +0,0 @@ -"""auto - -Revision ID: d0b62342a32f -Revises: ed78f1706042 -Create Date: 2026-08-11 11:49:25.965217+00:00 -""" - -from __future__ import annotations - -from typing import Sequence, Union - -from alembic import op -import sqlalchemy as sa -import sqlmodel # SQLModel renders AutoString() into migrations but adds no import - - -revision: str = 'd0b62342a32f' -down_revision: Union[str, None] = 'ed78f1706042' -branch_labels: Union[str, Sequence[str], None] = None -depends_on: Union[str, Sequence[str], None] = None - - -def upgrade() -> None: - # ### commands auto generated by Alembic - please adjust! ### - op.create_table('notes', - sa.Column('id', sa.Uuid(), nullable=False), - sa.Column('note', sqlmodel.sql.sqltypes.AutoString(), nullable=False), - sa.Column('created_at', sa.DateTime(), nullable=False), - sa.Column('updated_at', sa.DateTime(), nullable=False), - sa.Column('user_id', sa.Uuid(), nullable=True), - sa.Column('created_by', sa.Uuid(), nullable=True), - sa.ForeignKeyConstraint(['created_by'], ['app.users.id'], name=op.f('fk_notes_created_by_users')), - sa.ForeignKeyConstraint(['user_id'], ['app.users.id'], name=op.f('fk_notes_user_id_users')), - sa.PrimaryKeyConstraint('id', name=op.f('pk_notes')), - schema='app' - ) - op.create_table('activity', - sa.Column('id', sa.Uuid(), nullable=False), - sa.Column('activity_type', sqlmodel.sql.sqltypes.AutoString(), nullable=False), - sa.Column('activity_date', sa.DateTime(), nullable=False), - sa.Column('activity_time', sa.DateTime(), nullable=False), - sa.Column('activity_status', sqlmodel.sql.sqltypes.AutoString(), nullable=False), - sa.Column('description', sqlmodel.sql.sqltypes.AutoString(), nullable=True), - sa.Column('inbox_id', sa.Integer(), nullable=True), - sa.ForeignKeyConstraint(['inbox_id'], ['app.inbox.id'], name=op.f('fk_activity_inbox_id_inbox')), - sa.PrimaryKeyConstraint('id', name=op.f('pk_activity')), - schema='app' - ) - op.create_table('feedback', - sa.Column('id', sa.Uuid(), nullable=False), - sa.Column('review', sqlmodel.sql.sqltypes.AutoString(), nullable=False), - sa.Column('financial_status', sqlmodel.sql.sqltypes.AutoString(), nullable=False), - sa.Column('score', sa.Float(), nullable=False), - sa.Column('note', sqlmodel.sql.sqltypes.AutoString(), nullable=True), - sa.Column('created_at', sa.DateTime(), nullable=False), - sa.Column('updated_at', sa.DateTime(), nullable=False), - sa.Column('reviewed_by', sa.Uuid(), nullable=True), - sa.Column('inbox_id', sa.Integer(), nullable=True), - sa.ForeignKeyConstraint(['inbox_id'], ['app.inbox.id'], name=op.f('fk_feedback_inbox_id_inbox')), - sa.ForeignKeyConstraint(['reviewed_by'], ['app.users.id'], name=op.f('fk_feedback_reviewed_by_users')), - sa.PrimaryKeyConstraint('id', name=op.f('pk_feedback')), - schema='app' - ) - op.create_table('interviews', - sa.Column('id', sa.Uuid(), nullable=False), - sa.Column('interview_date', sa.DateTime(), nullable=False), - sa.Column('interview_time', sa.DateTime(), nullable=False), - sa.Column('interview_type', sqlmodel.sql.sqltypes.AutoString(), nullable=False), - sa.Column('interview_status', sqlmodel.sql.sqltypes.AutoString(), nullable=False), - sa.Column('inbox_id', sa.Integer(), nullable=True), - sa.ForeignKeyConstraint(['inbox_id'], ['app.inbox.id'], name=op.f('fk_interviews_inbox_id_inbox')), - sa.PrimaryKeyConstraint('id', name=op.f('pk_interviews')), - schema='app' - ) - op.add_column('inbox', sa.Column('favorite', sa.Boolean(), nullable=True), schema='app') - op.add_column('inbox', sa.Column('rating', sa.Float(), nullable=True), schema='app') - op.add_column('inbox_messages', sa.Column('candidate_education', sqlmodel.sql.sqltypes.AutoString(), nullable=True), schema='app') - # ### end Alembic commands ### - - -def downgrade() -> None: - # ### commands auto generated by Alembic - please adjust! ### - op.drop_column('inbox_messages', 'candidate_education', schema='app') - op.drop_column('inbox', 'rating', schema='app') - op.drop_column('inbox', 'favorite', schema='app') - op.drop_table('interviews', schema='app') - op.drop_table('feedback', schema='app') - op.drop_table('activity', schema='app') - op.drop_table('notes', schema='app') - # ### end Alembic commands ### diff --git a/backend/migrations/versions/20260811_1311-681a78158447_auto.py b/backend/migrations/versions/20260811_1311-681a78158447_auto.py deleted file mode 100644 index a9627c0..0000000 --- a/backend/migrations/versions/20260811_1311-681a78158447_auto.py +++ /dev/null @@ -1,110 +0,0 @@ -"""auto - -Revision ID: 681a78158447 -Revises: d0b62342a32f -Create Date: 2026-08-11 13:11:58.032282+00:00 -""" - -from __future__ import annotations - -from typing import Sequence, Union - -from alembic import op -import sqlalchemy as sa -import sqlmodel # SQLModel renders AutoString() into migrations but adds no import -from sqlalchemy.dialects import postgresql - -revision: str = '681a78158447' -down_revision: Union[str, None] = 'd0b62342a32f' -branch_labels: Union[str, Sequence[str], None] = None -depends_on: Union[str, Sequence[str], None] = None - - -def upgrade() -> None: - # ### commands auto generated by Alembic - please adjust! ### - op.alter_column('activity', 'activity_date', - existing_type=postgresql.TIMESTAMP(), - type_=sa.DateTime(timezone=True), - existing_nullable=False, - schema='app') - op.alter_column('activity', 'activity_time', - existing_type=postgresql.TIMESTAMP(), - type_=sa.DateTime(timezone=True), - existing_nullable=False, - schema='app') - op.alter_column('feedback', 'created_at', - existing_type=postgresql.TIMESTAMP(), - type_=sa.DateTime(timezone=True), - existing_nullable=False, - schema='app') - op.alter_column('feedback', 'updated_at', - existing_type=postgresql.TIMESTAMP(), - type_=sa.DateTime(timezone=True), - existing_nullable=False, - schema='app') - op.alter_column('interviews', 'interview_date', - existing_type=postgresql.TIMESTAMP(), - type_=sa.DateTime(timezone=True), - existing_nullable=False, - schema='app') - op.alter_column('interviews', 'interview_time', - existing_type=postgresql.TIMESTAMP(), - type_=sa.DateTime(timezone=True), - existing_nullable=False, - schema='app') - op.alter_column('notes', 'created_at', - existing_type=postgresql.TIMESTAMP(), - type_=sa.DateTime(timezone=True), - existing_nullable=False, - schema='app') - op.alter_column('notes', 'updated_at', - existing_type=postgresql.TIMESTAMP(), - type_=sa.DateTime(timezone=True), - existing_nullable=False, - schema='app') - # ### end Alembic commands ### - - -def downgrade() -> None: - # ### commands auto generated by Alembic - please adjust! ### - op.alter_column('notes', 'updated_at', - existing_type=sa.DateTime(timezone=True), - type_=postgresql.TIMESTAMP(), - existing_nullable=False, - schema='app') - op.alter_column('notes', 'created_at', - existing_type=sa.DateTime(timezone=True), - type_=postgresql.TIMESTAMP(), - existing_nullable=False, - schema='app') - op.alter_column('interviews', 'interview_time', - existing_type=sa.DateTime(timezone=True), - type_=postgresql.TIMESTAMP(), - existing_nullable=False, - schema='app') - op.alter_column('interviews', 'interview_date', - existing_type=sa.DateTime(timezone=True), - type_=postgresql.TIMESTAMP(), - existing_nullable=False, - schema='app') - op.alter_column('feedback', 'updated_at', - existing_type=sa.DateTime(timezone=True), - type_=postgresql.TIMESTAMP(), - existing_nullable=False, - schema='app') - op.alter_column('feedback', 'created_at', - existing_type=sa.DateTime(timezone=True), - type_=postgresql.TIMESTAMP(), - existing_nullable=False, - schema='app') - op.alter_column('activity', 'activity_time', - existing_type=sa.DateTime(timezone=True), - type_=postgresql.TIMESTAMP(), - existing_nullable=False, - schema='app') - op.alter_column('activity', 'activity_date', - existing_type=sa.DateTime(timezone=True), - type_=postgresql.TIMESTAMP(), - existing_nullable=False, - schema='app') - # ### end Alembic commands ### diff --git a/backend/migrations/versions/20260811_1352-67c4c7974afa_auto.py b/backend/migrations/versions/20260811_1352-67c4c7974afa_auto.py deleted file mode 100644 index b01e160..0000000 --- a/backend/migrations/versions/20260811_1352-67c4c7974afa_auto.py +++ /dev/null @@ -1,36 +0,0 @@ -"""auto - -Revision ID: 67c4c7974afa -Revises: 681a78158447 -Create Date: 2026-08-11 13:52:11.674108+00:00 -""" - -from __future__ import annotations - -from typing import Sequence, Union - -from alembic import op -import sqlalchemy as sa -import sqlmodel # SQLModel renders AutoString() into migrations but adds no import - - -revision: str = '67c4c7974afa' -down_revision: Union[str, None] = '681a78158447' -branch_labels: Union[str, Sequence[str], None] = None -depends_on: Union[str, Sequence[str], None] = None - - -def upgrade() -> None: - # ### commands auto generated by Alembic - please adjust! ### - op.add_column('inbox_messages', sa.Column('assigned_job_post_id', sa.Uuid(), nullable=True), schema='app') - op.create_index(op.f('ix_inbox_messages_assigned_job_post_id'), 'inbox_messages', ['assigned_job_post_id'], unique=False, schema='app') - op.create_foreign_key(op.f('fk_inbox_messages_assigned_job_post_id_job_posts'), 'inbox_messages', 'job_posts', ['assigned_job_post_id'], ['id'], source_schema='app', referent_schema='app') - # ### end Alembic commands ### - - -def downgrade() -> None: - # ### commands auto generated by Alembic - please adjust! ### - op.drop_constraint(op.f('fk_inbox_messages_assigned_job_post_id_job_posts'), 'inbox_messages', schema='app', type_='foreignkey') - op.drop_index(op.f('ix_inbox_messages_assigned_job_post_id'), table_name='inbox_messages', schema='app') - op.drop_column('inbox_messages', 'assigned_job_post_id', schema='app') - # ### end Alembic commands ### diff --git a/backend/migrations/versions/20260812_0746-4b34909ae551_auto.py b/backend/migrations/versions/20260812_0746-4b34909ae551_auto.py deleted file mode 100644 index 07758e6..0000000 --- a/backend/migrations/versions/20260812_0746-4b34909ae551_auto.py +++ /dev/null @@ -1,52 +0,0 @@ -"""auto - -Revision ID: 4b34909ae551 -Revises: 67c4c7974afa -Create Date: 2026-08-12 07:46:38.028948+00:00 -""" - -from __future__ import annotations - -from typing import Sequence, Union - -from alembic import op -import sqlalchemy as sa -import sqlmodel # SQLModel renders AutoString() into migrations but adds no import - - -revision: str = '4b34909ae551' -down_revision: Union[str, None] = '67c4c7974afa' -branch_labels: Union[str, Sequence[str], None] = None -depends_on: Union[str, Sequence[str], None] = None - - -def upgrade() -> None: - # ### commands auto generated by Alembic - please adjust! ### - op.create_table('manual_upload_candidate', - sa.Column('id', sa.Uuid(), nullable=False), - sa.Column('candidate_email', sqlmodel.sql.sqltypes.AutoString(), nullable=False), - sa.Column('candidate_name', sqlmodel.sql.sqltypes.AutoString(), nullable=False), - sa.Column('candidate_phone', sqlmodel.sql.sqltypes.AutoString(), nullable=False), - sa.Column('job_post_id', sa.Uuid(), nullable=True), - sa.Column('full_text', sqlmodel.sql.sqltypes.AutoString(), nullable=False), - sa.Column('current_company', sqlmodel.sql.sqltypes.AutoString(), nullable=False), - sa.Column('user_id', sa.Uuid(), nullable=True), - sa.Column('platform', sqlmodel.sql.sqltypes.AutoString(), nullable=False), - sa.Column('created_by', sa.Uuid(), nullable=True), - sa.Column('experience', sqlmodel.sql.sqltypes.AutoString(), nullable=False), - sa.Column('status', sqlmodel.sql.sqltypes.AutoString(), nullable=False), - sa.Column('created_at', sa.DateTime(timezone=True), nullable=False), - sa.Column('updated_at', sa.DateTime(timezone=True), nullable=False), - sa.ForeignKeyConstraint(['created_by'], ['app.users.id'], name=op.f('fk_manual_upload_candidate_created_by_users')), - sa.ForeignKeyConstraint(['job_post_id'], ['app.job_posts.id'], name=op.f('fk_manual_upload_candidate_job_post_id_job_posts')), - sa.ForeignKeyConstraint(['user_id'], ['app.users.id'], name=op.f('fk_manual_upload_candidate_user_id_users')), - sa.PrimaryKeyConstraint('id', name=op.f('pk_manual_upload_candidate')), - schema='app' - ) - # ### end Alembic commands ### - - -def downgrade() -> None: - # ### commands auto generated by Alembic - please adjust! ### - op.drop_table('manual_upload_candidate', schema='app') - # ### end Alembic commands ### diff --git a/backend/migrations/versions/20260812_0817-1a7c0e30aaab_auto.py b/backend/migrations/versions/20260812_0817-1a7c0e30aaab_auto.py deleted file mode 100644 index f6648ca..0000000 --- a/backend/migrations/versions/20260812_0817-1a7c0e30aaab_auto.py +++ /dev/null @@ -1,32 +0,0 @@ -"""auto - -Revision ID: 1a7c0e30aaab -Revises: 4b34909ae551 -Create Date: 2026-08-12 08:17:21.212665+00:00 -""" - -from __future__ import annotations - -from typing import Sequence, Union - -from alembic import op -import sqlalchemy as sa -import sqlmodel # SQLModel renders AutoString() into migrations but adds no import - - -revision: str = '1a7c0e30aaab' -down_revision: Union[str, None] = '4b34909ae551' -branch_labels: Union[str, Sequence[str], None] = None -depends_on: Union[str, Sequence[str], None] = None - - -def upgrade() -> None: - # ### commands auto generated by Alembic - please adjust! ### - op.add_column('manual_upload_candidate', sa.Column('referral_by', sqlmodel.sql.sqltypes.AutoString(), server_default='', nullable=False), schema='app') - # ### end Alembic commands ### - - -def downgrade() -> None: - # ### commands auto generated by Alembic - please adjust! ### - op.drop_column('manual_upload_candidate', 'referral_by', schema='app') - # ### end Alembic commands ### diff --git a/backend/migrations/versions/20260812_0845-6ec5e105dce3_auto.py b/backend/migrations/versions/20260812_0845-6ec5e105dce3_auto.py deleted file mode 100644 index 9bb115b..0000000 --- a/backend/migrations/versions/20260812_0845-6ec5e105dce3_auto.py +++ /dev/null @@ -1,34 +0,0 @@ -"""auto - -Revision ID: 6ec5e105dce3 -Revises: 1a7c0e30aaab -Create Date: 2026-08-12 08:45:01.957310+00:00 -""" - -from __future__ import annotations - -from typing import Sequence, Union - -from alembic import op -import sqlalchemy as sa -import sqlmodel # SQLModel renders AutoString() into migrations but adds no import - - -revision: str = '6ec5e105dce3' -down_revision: Union[str, None] = '1a7c0e30aaab' -branch_labels: Union[str, Sequence[str], None] = None -depends_on: Union[str, Sequence[str], None] = None - - -def upgrade() -> None: - # ### commands auto generated by Alembic - please adjust! ### - op.add_column('manual_upload_candidate', sa.Column('file_name', sqlmodel.sql.sqltypes.AutoString(), server_default='', nullable=False), schema='app') - op.add_column('manual_upload_candidate', sa.Column('file_path', sqlmodel.sql.sqltypes.AutoString(), server_default='', nullable=False), schema='app') - # ### end Alembic commands ### - - -def downgrade() -> None: - # ### commands auto generated by Alembic - please adjust! ### - op.drop_column('manual_upload_candidate', 'file_path', schema='app') - op.drop_column('manual_upload_candidate', 'file_name', schema='app') - # ### end Alembic commands ###