"""Add created_by and source to materials Revision ID: 008 Revises: 007 Create Date: 2026-03-01 """ from typing import Sequence, Union from alembic import op import sqlalchemy as sa from sqlalchemy.dialects.postgresql import UUID revision: str = "008" down_revision: Union[str, None] = "007" branch_labels: Union[str, Sequence[str], None] = None depends_on: Union[str, Sequence[str], None] = None def upgrade() -> None: op.execute( "ALTER TABLE materials " "ADD COLUMN IF NOT EXISTS created_by UUID REFERENCES users(id) ON DELETE SET NULL, " "ADD COLUMN IF NOT EXISTS source VARCHAR(20) NOT NULL DEFAULT 'manual'" ) def downgrade() -> None: op.execute( "ALTER TABLE materials " "DROP COLUMN IF EXISTS created_by, " "DROP COLUMN IF EXISTS source" )