"""Add expiring claims for governed-rule cleanup workers.""" from alembic import op revision = "20260723_190" down_revision = "20260723_180" branch_labels = None depends_on = None def upgrade() -> None: op.execute( """ ALTER TABLE public.rule_violation_samples ADD COLUMN cleanup_claim_expires_at TIMESTAMPTZ; CREATE INDEX idx_rule_violation_sample_cleanup_lease ON public.rule_violation_samples( cleanup_claim_expires_at, expires_at, id ); ALTER TABLE public.rule_sql_staging_receipts ADD COLUMN cleanup_claim_expires_at TIMESTAMPTZ; CREATE INDEX idx_rule_sql_receipt_cleanup_lease ON public.rule_sql_staging_receipts( cleanup_claim_expires_at, expires_at, id ); """ ) def downgrade() -> None: raise RuntimeError("rule cleanup leases are forward-only")