Drop Legacy Database Tables (WI-1)
Context
Remove ~15 legacy tables with no active code references. Originally planned as migrations 0105-0107, but challenge format work took those numbers. Actual migrations: 0111-0113.
Challenges
Challenge 1.1: Page Tracking Tables Dropped
Requirement: Migration removes page tracking tables. Acceptance Criteria:
-
supabase/migrations/0111_drop_page_tracking_tables.sqlexists - Drops: url_renders, video_renders, section_content_snapshots, page_diff_settings, user_folders, user_folder_pages, page_read_states, saved_items Evaluation: PASS
Challenge 1.2: Brand Auxiliary Tables Dropped
Requirement: Migration removes brand auxiliary tables. Acceptance Criteria:
-
supabase/migrations/0112_drop_brand_auxiliary_tables.sqlexists - Drops: brand_category_proposals, brand_review_queue, brand_sources, seeding_pages Evaluation: PASS
Challenge 1.3: Misc Legacy Tables Dropped
Requirement: Migration removes remaining legacy tables. Acceptance Criteria:
-
supabase/migrations/0113_drop_misc_legacy.sqlexists - Drops: correlation_groups, correlation_group_members, app_content Evaluation: PASS
Challenge 1.4: Drizzle Schema Cleanup
Requirement: Drizzle schema no longer defines dropped tables. Acceptance Criteria:
- 16 table definitions removed from
packages/db/src/drizzle/schema.ts - 11 relation blocks removed
- 13 query functions removed from
fact-engine-queries.ts - 5 orphaned enums removed
- Migrations index regenerated Evaluation: PASS
Evaluation Summary
| Challenge | Result |
|---|---|
| 1.1 Page Tracking Drop | PASS |
| 1.2 Brand Auxiliary Drop | PASS |
| 1.3 Misc Legacy Drop | PASS |
| 1.4 Drizzle Cleanup | PASS |
Score: 4/4 PASS