"""allow manual pipeline runs without a deadline Revision ID: 20260727_02 Revises: 20260727_01 Create Date: 2026-07-27 """ from __future__ import annotations from collections.abc import Sequence import sqlalchemy as sa from alembic import op revision: str = "20260727_02" down_revision: str | None = "20260727_01" branch_labels: str | Sequence[str] | None = None depends_on: str | Sequence[str] | None = None def upgrade() -> None: op.alter_column( "pipeline_run", "deadline_at", existing_type=sa.DateTime(), nullable=True, ) op.execute( sa.text( "UPDATE pipeline_run " "SET deadline_at = NULL " "WHERE trigger_type NOT IN ('cron', 'reconcile')" ) ) def downgrade() -> None: op.execute( sa.text( "UPDATE pipeline_run " "SET deadline_at = UTC_TIMESTAMP() " "WHERE deadline_at IS NULL" ) ) op.alter_column( "pipeline_run", "deadline_at", existing_type=sa.DateTime(), nullable=False, )