"""三界作用域与消息版本谱系 Revision ID: 8f48659a83f6 Revises: 5cf6d328c10a Create Date: 2026-09-10 13:22:56.404702 """ from collections.abc import Sequence import sqlalchemy as sa from alembic import op # revision identifiers, used by Alembic. revision: str = '8f48659a83f6' down_revision: str | Sequence[str] | None = '5cf6d328c10a' branch_labels: str | Sequence[str] | None = None depends_on: str | Sequence[str] | None = None def upgrade() -> None: """Upgrade schema.""" # ### commands auto generated by Alembic - please adjust! ### op.add_column('conversation', sa.Column('realm', sa.String(), nullable=False)) op.add_column('message', sa.Column('realm', sa.String(), nullable=False)) op.add_column('message', sa.Column('canonized_at', sa.DateTime(timezone=True), nullable=True)) op.add_column('message', sa.Column('parent_message_id', sa.String(), nullable=True)) op.add_column('message', sa.Column('variant_kind', sa.String(), nullable=False)) op.create_foreign_key(op.f('fk_message_message'), 'message', 'message', ['parent_message_id'], ['id'], ondelete='set null') # ### end Alembic commands ### def downgrade() -> None: """Downgrade schema.""" # ### commands auto generated by Alembic - please adjust! ### op.drop_constraint(op.f('fk_message_message'), 'message', type_='foreignkey') op.drop_column('message', 'variant_kind') op.drop_column('message', 'parent_message_id') op.drop_column('message', 'canonized_at') op.drop_column('message', 'realm') op.drop_column('conversation', 'realm') # ### end Alembic commands ###