"""Add display_name to user table

Revision ID: e2f3a4b5c6d7
Revises: d1e2f3a4b5c6
Create Date: 2026-04-03 00:00:00.000000

"""
from typing import Sequence, Union

from alembic import op
import sqlalchemy as sa


revision: str = 'e2f3a4b5c6d7'
down_revision: Union[str, Sequence[str], None] = 'd1e2f3a4b5c6'
branch_labels: Union[str, Sequence[str], None] = None
depends_on: Union[str, Sequence[str], None] = None


def upgrade() -> None:
    op.add_column('user', sa.Column('display_name', sa.String(), nullable=True))
    # Backfill existing users: use username as display_name
    op.execute("UPDATE user SET display_name = username WHERE display_name IS NULL")


def downgrade() -> None:
    op.drop_column('user', 'display_name')
