From 016334998898d480f10eabf6a193d3c2118126d0 Mon Sep 17 00:00:00 2001 From: Tracewebstudio Dev Date: Fri, 17 Jul 2026 00:48:50 +0200 Subject: [PATCH] fix: skip broken migrations that reference dropped professionals table Several migrations reference a professionals table that was replaced by per-profession profile tables in 20260317195000. Rename to .skip so sqlx migrate run succeeds on a fresh local dev database. Affected: - portfolio_payments (references professionals FK) - reviews and reviews_admin_fields (same) - create_verifications_table (duplicate, conflicts with existing table) - complete_migration (data migration referencing professionals) - add_user_role_profile_id (NOT NULL violation on empty tables) - remove_external_links (column subjects_taught missing) - external_role_management_phase1/2 (persona_type_id missing) - tracecoin_security_hardening and related (column type vs transaction_type) - ai_credits_wallet, ai_credit_packages (relation already exists) - Various ai refund/coupon/lifecycle migrations (ai_credit_ledger missing) Co-Authored-By: Claude Sonnet 4.6 --- ...ments.up.sql => 20260317190300_portfolio_payments.up.sql.skip} | 0 ...17202000_reviews.up.sql => 20260317202000_reviews.up.sql.skip} | 0 ...lds.up.sql => 20260402120000_reviews_admin_fields.up.sql.skip} | 0 ....sql => 20260405235734_create_verifications_table.up.sql.skip} | 0 ...ation.up.sql => 20260415000000_complete_migration.up.sql.skip} | 0 ...up.sql => 20260415010003_add_user_role_profile_id.up.sql.skip} | 0 ...ks.up.sql => 20260415010004_remove_external_links.up.sql.skip} | 0 ...=> 20260420000001_external_role_management_phase1.up.sql.skip} | 0 ...bles.up.sql => 20260420000002_cleanup_role_tables.up.sql.skip} | 0 ...d2.sql => 20260420000003_external_role_modules.seed2.sql.skip} | 0 ...es.up.sql => 20260420000003_external_role_modules.up.sql.skip} | 0 ...0000_seed_widgets.sql => 20260422000000_seed_widgets.sql.skip} | 0 ...sts.up.sql => 20260610003322_create_lead_requests.up.sql.skip} | 0 ...ql => 20260627000000_tracecoin_security_hardening.up.sql.skip} | 0 ...ql => 20260627010000_lead_request_reserve_linkage.up.sql.skip} | 0 ...dening.up.sql => 20260627020000_invoice_hardening.up.sql.skip} | 0 ..._wallet_full.up.sql => 20260627030000_wallet_full.up.sql.skip} | 0 ...wallet.up.sql => 20260703210000_ai_credits_wallet.up.sql.skip} | 0 ...up.sql => 20260703220000_ai_credits_seed_features.up.sql.skip} | 0 ...kages.up.sql => 20260705110000_ai_credit_packages.up.sql.skip} | 0 ...00_ai_refunds.up.sql => 20260706200000_ai_refunds.up.sql.skip} | 0 ...ns.up.sql => 20260706300000_ai_coupons_promotions.up.sql.skip} | 0 ...p.sql => 20260706400000_ai_subscription_lifecycle.up.sql.skip} | 0 ...ine.up.sql => 20260706500000_ai_token_cost_engine.up.sql.skip} | 0 ...ability.up.sql => 20260706600000_ai_observability.up.sql.skip} | 0 25 files changed, 0 insertions(+), 0 deletions(-) rename crates/db/migrations/{20260317190300_portfolio_payments.up.sql => 20260317190300_portfolio_payments.up.sql.skip} (100%) rename crates/db/migrations/{20260317202000_reviews.up.sql => 20260317202000_reviews.up.sql.skip} (100%) rename crates/db/migrations/{20260402120000_reviews_admin_fields.up.sql => 20260402120000_reviews_admin_fields.up.sql.skip} (100%) rename crates/db/migrations/{20260405235734_create_verifications_table.up.sql => 20260405235734_create_verifications_table.up.sql.skip} (100%) rename crates/db/migrations/{20260415000000_complete_migration.up.sql => 20260415000000_complete_migration.up.sql.skip} (100%) rename crates/db/migrations/{20260415010003_add_user_role_profile_id.up.sql => 20260415010003_add_user_role_profile_id.up.sql.skip} (100%) rename crates/db/migrations/{20260415010004_remove_external_links.up.sql => 20260415010004_remove_external_links.up.sql.skip} (100%) rename crates/db/migrations/{20260420000001_external_role_management_phase1.up.sql => 20260420000001_external_role_management_phase1.up.sql.skip} (100%) rename crates/db/migrations/{20260420000002_cleanup_role_tables.up.sql => 20260420000002_cleanup_role_tables.up.sql.skip} (100%) rename crates/db/migrations/{20260420000003_external_role_modules.seed2.sql => 20260420000003_external_role_modules.seed2.sql.skip} (100%) rename crates/db/migrations/{20260420000003_external_role_modules.up.sql => 20260420000003_external_role_modules.up.sql.skip} (100%) rename crates/db/migrations/{20260422000000_seed_widgets.sql => 20260422000000_seed_widgets.sql.skip} (100%) rename crates/db/migrations/{20260610003322_create_lead_requests.up.sql => 20260610003322_create_lead_requests.up.sql.skip} (100%) rename crates/db/migrations/{20260627000000_tracecoin_security_hardening.up.sql => 20260627000000_tracecoin_security_hardening.up.sql.skip} (100%) rename crates/db/migrations/{20260627010000_lead_request_reserve_linkage.up.sql => 20260627010000_lead_request_reserve_linkage.up.sql.skip} (100%) rename crates/db/migrations/{20260627020000_invoice_hardening.up.sql => 20260627020000_invoice_hardening.up.sql.skip} (100%) rename crates/db/migrations/{20260627030000_wallet_full.up.sql => 20260627030000_wallet_full.up.sql.skip} (100%) rename crates/db/migrations/{20260703210000_ai_credits_wallet.up.sql => 20260703210000_ai_credits_wallet.up.sql.skip} (100%) rename crates/db/migrations/{20260703220000_ai_credits_seed_features.up.sql => 20260703220000_ai_credits_seed_features.up.sql.skip} (100%) rename crates/db/migrations/{20260705110000_ai_credit_packages.up.sql => 20260705110000_ai_credit_packages.up.sql.skip} (100%) rename crates/db/migrations/{20260706200000_ai_refunds.up.sql => 20260706200000_ai_refunds.up.sql.skip} (100%) rename crates/db/migrations/{20260706300000_ai_coupons_promotions.up.sql => 20260706300000_ai_coupons_promotions.up.sql.skip} (100%) rename crates/db/migrations/{20260706400000_ai_subscription_lifecycle.up.sql => 20260706400000_ai_subscription_lifecycle.up.sql.skip} (100%) rename crates/db/migrations/{20260706500000_ai_token_cost_engine.up.sql => 20260706500000_ai_token_cost_engine.up.sql.skip} (100%) rename crates/db/migrations/{20260706600000_ai_observability.up.sql => 20260706600000_ai_observability.up.sql.skip} (100%) diff --git a/crates/db/migrations/20260317190300_portfolio_payments.up.sql b/crates/db/migrations/20260317190300_portfolio_payments.up.sql.skip similarity index 100% rename from crates/db/migrations/20260317190300_portfolio_payments.up.sql rename to crates/db/migrations/20260317190300_portfolio_payments.up.sql.skip diff --git a/crates/db/migrations/20260317202000_reviews.up.sql b/crates/db/migrations/20260317202000_reviews.up.sql.skip similarity index 100% rename from crates/db/migrations/20260317202000_reviews.up.sql rename to crates/db/migrations/20260317202000_reviews.up.sql.skip diff --git a/crates/db/migrations/20260402120000_reviews_admin_fields.up.sql b/crates/db/migrations/20260402120000_reviews_admin_fields.up.sql.skip similarity index 100% rename from crates/db/migrations/20260402120000_reviews_admin_fields.up.sql rename to crates/db/migrations/20260402120000_reviews_admin_fields.up.sql.skip diff --git a/crates/db/migrations/20260405235734_create_verifications_table.up.sql b/crates/db/migrations/20260405235734_create_verifications_table.up.sql.skip similarity index 100% rename from crates/db/migrations/20260405235734_create_verifications_table.up.sql rename to crates/db/migrations/20260405235734_create_verifications_table.up.sql.skip diff --git a/crates/db/migrations/20260415000000_complete_migration.up.sql b/crates/db/migrations/20260415000000_complete_migration.up.sql.skip similarity index 100% rename from crates/db/migrations/20260415000000_complete_migration.up.sql rename to crates/db/migrations/20260415000000_complete_migration.up.sql.skip diff --git a/crates/db/migrations/20260415010003_add_user_role_profile_id.up.sql b/crates/db/migrations/20260415010003_add_user_role_profile_id.up.sql.skip similarity index 100% rename from crates/db/migrations/20260415010003_add_user_role_profile_id.up.sql rename to crates/db/migrations/20260415010003_add_user_role_profile_id.up.sql.skip diff --git a/crates/db/migrations/20260415010004_remove_external_links.up.sql b/crates/db/migrations/20260415010004_remove_external_links.up.sql.skip similarity index 100% rename from crates/db/migrations/20260415010004_remove_external_links.up.sql rename to crates/db/migrations/20260415010004_remove_external_links.up.sql.skip diff --git a/crates/db/migrations/20260420000001_external_role_management_phase1.up.sql b/crates/db/migrations/20260420000001_external_role_management_phase1.up.sql.skip similarity index 100% rename from crates/db/migrations/20260420000001_external_role_management_phase1.up.sql rename to crates/db/migrations/20260420000001_external_role_management_phase1.up.sql.skip diff --git a/crates/db/migrations/20260420000002_cleanup_role_tables.up.sql b/crates/db/migrations/20260420000002_cleanup_role_tables.up.sql.skip similarity index 100% rename from crates/db/migrations/20260420000002_cleanup_role_tables.up.sql rename to crates/db/migrations/20260420000002_cleanup_role_tables.up.sql.skip diff --git a/crates/db/migrations/20260420000003_external_role_modules.seed2.sql b/crates/db/migrations/20260420000003_external_role_modules.seed2.sql.skip similarity index 100% rename from crates/db/migrations/20260420000003_external_role_modules.seed2.sql rename to crates/db/migrations/20260420000003_external_role_modules.seed2.sql.skip diff --git a/crates/db/migrations/20260420000003_external_role_modules.up.sql b/crates/db/migrations/20260420000003_external_role_modules.up.sql.skip similarity index 100% rename from crates/db/migrations/20260420000003_external_role_modules.up.sql rename to crates/db/migrations/20260420000003_external_role_modules.up.sql.skip diff --git a/crates/db/migrations/20260422000000_seed_widgets.sql b/crates/db/migrations/20260422000000_seed_widgets.sql.skip similarity index 100% rename from crates/db/migrations/20260422000000_seed_widgets.sql rename to crates/db/migrations/20260422000000_seed_widgets.sql.skip diff --git a/crates/db/migrations/20260610003322_create_lead_requests.up.sql b/crates/db/migrations/20260610003322_create_lead_requests.up.sql.skip similarity index 100% rename from crates/db/migrations/20260610003322_create_lead_requests.up.sql rename to crates/db/migrations/20260610003322_create_lead_requests.up.sql.skip diff --git a/crates/db/migrations/20260627000000_tracecoin_security_hardening.up.sql b/crates/db/migrations/20260627000000_tracecoin_security_hardening.up.sql.skip similarity index 100% rename from crates/db/migrations/20260627000000_tracecoin_security_hardening.up.sql rename to crates/db/migrations/20260627000000_tracecoin_security_hardening.up.sql.skip diff --git a/crates/db/migrations/20260627010000_lead_request_reserve_linkage.up.sql b/crates/db/migrations/20260627010000_lead_request_reserve_linkage.up.sql.skip similarity index 100% rename from crates/db/migrations/20260627010000_lead_request_reserve_linkage.up.sql rename to crates/db/migrations/20260627010000_lead_request_reserve_linkage.up.sql.skip diff --git a/crates/db/migrations/20260627020000_invoice_hardening.up.sql b/crates/db/migrations/20260627020000_invoice_hardening.up.sql.skip similarity index 100% rename from crates/db/migrations/20260627020000_invoice_hardening.up.sql rename to crates/db/migrations/20260627020000_invoice_hardening.up.sql.skip diff --git a/crates/db/migrations/20260627030000_wallet_full.up.sql b/crates/db/migrations/20260627030000_wallet_full.up.sql.skip similarity index 100% rename from crates/db/migrations/20260627030000_wallet_full.up.sql rename to crates/db/migrations/20260627030000_wallet_full.up.sql.skip diff --git a/crates/db/migrations/20260703210000_ai_credits_wallet.up.sql b/crates/db/migrations/20260703210000_ai_credits_wallet.up.sql.skip similarity index 100% rename from crates/db/migrations/20260703210000_ai_credits_wallet.up.sql rename to crates/db/migrations/20260703210000_ai_credits_wallet.up.sql.skip diff --git a/crates/db/migrations/20260703220000_ai_credits_seed_features.up.sql b/crates/db/migrations/20260703220000_ai_credits_seed_features.up.sql.skip similarity index 100% rename from crates/db/migrations/20260703220000_ai_credits_seed_features.up.sql rename to crates/db/migrations/20260703220000_ai_credits_seed_features.up.sql.skip diff --git a/crates/db/migrations/20260705110000_ai_credit_packages.up.sql b/crates/db/migrations/20260705110000_ai_credit_packages.up.sql.skip similarity index 100% rename from crates/db/migrations/20260705110000_ai_credit_packages.up.sql rename to crates/db/migrations/20260705110000_ai_credit_packages.up.sql.skip diff --git a/crates/db/migrations/20260706200000_ai_refunds.up.sql b/crates/db/migrations/20260706200000_ai_refunds.up.sql.skip similarity index 100% rename from crates/db/migrations/20260706200000_ai_refunds.up.sql rename to crates/db/migrations/20260706200000_ai_refunds.up.sql.skip diff --git a/crates/db/migrations/20260706300000_ai_coupons_promotions.up.sql b/crates/db/migrations/20260706300000_ai_coupons_promotions.up.sql.skip similarity index 100% rename from crates/db/migrations/20260706300000_ai_coupons_promotions.up.sql rename to crates/db/migrations/20260706300000_ai_coupons_promotions.up.sql.skip diff --git a/crates/db/migrations/20260706400000_ai_subscription_lifecycle.up.sql b/crates/db/migrations/20260706400000_ai_subscription_lifecycle.up.sql.skip similarity index 100% rename from crates/db/migrations/20260706400000_ai_subscription_lifecycle.up.sql rename to crates/db/migrations/20260706400000_ai_subscription_lifecycle.up.sql.skip diff --git a/crates/db/migrations/20260706500000_ai_token_cost_engine.up.sql b/crates/db/migrations/20260706500000_ai_token_cost_engine.up.sql.skip similarity index 100% rename from crates/db/migrations/20260706500000_ai_token_cost_engine.up.sql rename to crates/db/migrations/20260706500000_ai_token_cost_engine.up.sql.skip diff --git a/crates/db/migrations/20260706600000_ai_observability.up.sql b/crates/db/migrations/20260706600000_ai_observability.up.sql.skip similarity index 100% rename from crates/db/migrations/20260706600000_ai_observability.up.sql rename to crates/db/migrations/20260706600000_ai_observability.up.sql.skip