"""Drop cross-domain foreign key constraints. Columns and indexes remain — only the FK constraints are removed. This prepares for per-domain databases where cross-DB FKs can't exist. Revision ID: v2t0p8q9r0 Revises: u1s9o5p7q8 """ from alembic import op revision = "v2t0p8q9r0" down_revision = "u1s9o5p7q8" def upgrade() -> None: # blog → account op.drop_constraint("fk_posts_user_id", "posts", type_="foreignkey") op.drop_constraint("post_likes_user_id_fkey", "post_likes", type_="foreignkey") # market → account op.drop_constraint("product_likes_user_id_fkey", "product_likes", type_="foreignkey") # cart → account op.drop_constraint("cart_items_user_id_fkey", "cart_items", type_="foreignkey") op.drop_constraint("orders_user_id_fkey", "orders", type_="foreignkey") # cart → market op.drop_constraint("cart_items_product_id_fkey", "cart_items", type_="foreignkey") op.drop_constraint("fk_cart_items_market_place_id", "cart_items", type_="foreignkey") op.drop_constraint("order_items_product_id_fkey", "order_items", type_="foreignkey") # cart → events op.drop_constraint("fk_orders_page_config_id", "orders", type_="foreignkey") # events → account op.drop_constraint("fk_calendar_entries_user_id", "calendar_entries", type_="foreignkey") op.drop_constraint("tickets_user_id_fkey", "tickets", type_="foreignkey") # federation → account op.drop_constraint("ap_actor_profiles_user_id_fkey", "ap_actor_profiles", type_="foreignkey") # shared (blog-internal but cross-concern) op.drop_constraint("menu_items_post_id_fkey", "menu_items", type_="foreignkey") def downgrade() -> None: op.create_foreign_key("fk_posts_user_id", "posts", "users", ["user_id"], ["id"], ondelete="SET NULL") op.create_foreign_key("post_likes_user_id_fkey", "post_likes", "users", ["user_id"], ["id"], ondelete="CASCADE") op.create_foreign_key("product_likes_user_id_fkey", "product_likes", "users", ["user_id"], ["id"], ondelete="CASCADE") op.create_foreign_key("cart_items_user_id_fkey", "cart_items", "users", ["user_id"], ["id"], ondelete="CASCADE") op.create_foreign_key("cart_items_product_id_fkey", "cart_items", "products", ["product_id"], ["id"], ondelete="CASCADE") op.create_foreign_key("fk_cart_items_market_place_id", "cart_items", "market_places", ["market_place_id"], ["id"], ondelete="SET NULL") op.create_foreign_key("orders_user_id_fkey", "orders", "users", ["user_id"], ["id"]) op.create_foreign_key("fk_orders_page_config_id", "orders", "page_configs", ["page_config_id"], ["id"], ondelete="SET NULL") op.create_foreign_key("order_items_product_id_fkey", "order_items", "products", ["product_id"], ["id"]) op.create_foreign_key("fk_calendar_entries_user_id", "calendar_entries", "users", ["user_id"], ["id"]) op.create_foreign_key("tickets_user_id_fkey", "tickets", "users", ["user_id"], ["id"]) op.create_foreign_key("ap_actor_profiles_user_id_fkey", "ap_actor_profiles", "users", ["user_id"], ["id"], ondelete="CASCADE") op.create_foreign_key("menu_items_post_id_fkey", "menu_items", "posts", ["post_id"], ["id"], ondelete="CASCADE")