BillTracker/db
null 7f2faeaede refactor(db): extract subscription-catalog seed data out of database.js (IMP-CODE-02)
db/database.js was 4,174 lines. The largest self-contained block was ~315
lines of static subscription_catalog seed rows (SUBSCRIPTION_CATALOG_ROWS +
SUBSCRIPTION_CATALOG_V2_ROWS) — pure data, no logic. Moved it to
db/subscriptionCatalogSeed.js and imported it; database.js is now 3,859 lines
and the seed data lives in a cohesive, obvious module.

Behavior-preserving: a fresh DB still seeds 291 catalog rows; full server
suite (122) passes — migrations and the catalog seed run on every fresh test DB.

The migrations array (~2,700 lines) is the other big block but is the DB core;
splitting it safely needs a dedicated pass (tracked in the backlog), not a blind
move — a mistake there corrupts every DB on boot.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-03 13:05:16 -05:00
..
database.js refactor(db): extract subscription-catalog seed data out of database.js (IMP-CODE-02) 2026-07-03 13:05:16 -05:00
schema.sql feat(money): cents migration stage 2 — schema flip to integer cents (batch 0.38.4) 2026-06-11 20:12:31 -05:00
subscriptionCatalogSeed.js refactor(db): extract subscription-catalog seed data out of database.js (IMP-CODE-02) 2026-07-03 13:05:16 -05:00