29 lines
1.3 KiB
Python
29 lines
1.3 KiB
Python
"""Enrichment re-evaluation + visible per-product status (no silent failures).
|
|
|
|
Revision ID: 0031_enrichment_reevaluate
|
|
Revises: 0030_kb_evidence_model
|
|
"""
|
|
from alembic import op
|
|
import sqlalchemy as sa
|
|
|
|
revision = "0031_enrichment_reevaluate"
|
|
down_revision = "0030_kb_evidence_model"
|
|
branch_labels = None
|
|
depends_on = None
|
|
|
|
|
|
def upgrade():
|
|
op.add_column("product_enrichments", sa.Column("reevaluate", sa.Boolean(), nullable=False, server_default=sa.text("false")))
|
|
op.add_column("product_enrichments", sa.Column("last_attempt_at", sa.DateTime(timezone=True), nullable=True))
|
|
op.add_column("product_enrichments", sa.Column("ui_status", sa.String(32), nullable=True))
|
|
op.add_column("product_enrichments", sa.Column("reason_code", sa.String(48), nullable=True))
|
|
op.create_index("ix_product_enrichments_reevaluate", "product_enrichments", ["reevaluate"])
|
|
op.create_index("ix_product_enrichments_ui_status", "product_enrichments", ["ui_status"])
|
|
|
|
|
|
def downgrade():
|
|
op.drop_index("ix_product_enrichments_ui_status", table_name="product_enrichments")
|
|
op.drop_index("ix_product_enrichments_reevaluate", table_name="product_enrichments")
|
|
for name in ("reason_code", "ui_status", "last_attempt_at", "reevaluate"):
|
|
op.drop_column("product_enrichments", name)
|