"""drop file_uploads session_id foreign key constraint

Revision ID: b8d2f4a6c091
Revises: a7c9e3b1f402
Create Date: 2026-03-20 00:00:00.000000

The session_id column on file_uploads previously referenced ai_sessions.id.
Removing the FK allows the column to reference either AI sessions or regular
sessions without a constraint violation, while keeping the index for query
performance.
"""
from typing import Sequence, Union

from alembic import op


# revision identifiers, used by Alembic.
revision: str = 'b8d2f4a6c091'
down_revision: Union[str, None] = 'a7c9e3b1f402'
branch_labels: Union[str, Sequence[str], None] = None
depends_on: Union[str, Sequence[str], None] = None


def upgrade() -> None:
    op.drop_constraint('file_uploads_session_id_fkey', 'file_uploads', type_='foreignkey')


def downgrade() -> None:
    op.create_foreign_key(
        'file_uploads_session_id_fkey',
        'file_uploads', 'ai_sessions',
        ['session_id'], ['id'],
        ondelete='SET NULL',
    )
