"""0006 alerts Revision ID: 0006 Revises: 0005 Create Date: 2026-04-07 """ from alembic import op import sqlalchemy as sa revision = "0006" down_revision = "0005" branch_labels = None depends_on = None def upgrade() -> None: op.create_table( "alerts", sa.Column("id", sa.Integer(), autoincrement=True, nullable=False), sa.Column( "device_id", sa.Integer(), sa.ForeignKey("devices.id", ondelete="CASCADE"), nullable=False, ), sa.Column("status", sa.String(20), nullable=False, server_default="open"), sa.Column("message", sa.Text(), nullable=False), sa.Column("created_at", sa.DateTime(timezone=True), nullable=False), sa.Column("acknowledged_at", sa.DateTime(timezone=True), nullable=True), sa.Column( "acknowledged_by", sa.Integer(), sa.ForeignKey("users.id", ondelete="SET NULL"), nullable=True, ), sa.Column("resolved_at", sa.DateTime(timezone=True), nullable=True), sa.PrimaryKeyConstraint("id"), ) op.create_index("ix_alerts_device_status", "alerts", ["device_id", "status"]) op.create_index("ix_alerts_status_created", "alerts", ["status", "created_at"]) def downgrade() -> None: op.drop_index("ix_alerts_status_created", table_name="alerts") op.drop_index("ix_alerts_device_status", table_name="alerts") op.drop_table("alerts")