"""add_settings_table Revision ID: c1148f55dcd9 Revises: 277d91f6540f Create Date: 2025-12-29 00:46:10.442689+00:00 """ from typing import Sequence, Union from alembic import op import sqlalchemy as sa from sqlalchemy.dialects import postgresql # revision identifiers, used by Alembic. revision: str = 'c1148f55dcd9' down_revision: Union[str, None] = '277d91f6540f' branch_labels: Union[str, Sequence[str], None] = None depends_on: Union[str, Sequence[str], None] = None def upgrade() -> None: # Create settings table op.create_table( 'settings', sa.Column('id', sa.Integer(), nullable=False), sa.Column('key', sa.String(length=255), nullable=False), sa.Column('value', postgresql.JSON(astext_type=sa.Text()), nullable=False), sa.Column('updated_at', sa.DateTime(), nullable=True), sa.PrimaryKeyConstraint('id'), sa.UniqueConstraint('key') ) # Insert default auto_registration setting (enabled by default) op.execute( """ INSERT INTO settings (key, value, updated_at) VALUES ('auto_registration', '{"enabled": true}', NOW()) """ ) def downgrade() -> None: op.drop_table('settings')