"""localization: users.lang + strategic_log_translations. Revision ID: 0022 Revises: 0021 Create Date: 2026-05-27 """ from typing import Sequence, Union import sqlalchemy as sa from alembic import op revision: str = "0022" down_revision: Union[str, None] = "0021" branch_labels: Union[str, Sequence[str], None] = None depends_on: Union[str, Sequence[str], None] = None def upgrade() -> None: op.add_column( "users", sa.Column( "lang", sa.String(length=8), nullable=False, server_default="en", ), ) op.create_table( "strategic_log_translations", sa.Column("id", sa.BigInteger(), primary_key=True, autoincrement=True), sa.Column("log_id", sa.BigInteger(), nullable=False), sa.Column("lang", sa.String(length=8), nullable=False), sa.Column("content_md", sa.Text(), nullable=False), sa.Column("generated_at", sa.DateTime(timezone=True), nullable=False), sa.Column("llm_model", sa.String(length=64), nullable=True), sa.Column("llm_cost_usd", sa.Float(), nullable=True), sa.ForeignKeyConstraint( ["log_id"], ["strategic_logs.id"], ondelete="CASCADE", name="fk_slt_log", ), sa.UniqueConstraint("log_id", "lang", name="uq_slt_log_lang"), ) def downgrade() -> None: op.drop_table("strategic_log_translations") op.drop_column("users", "lang")