main ← fix-room-user-deletion-fks
merged 05:08PM - 03 Aug 26 UTC
Previously, deleting a room with any session history raised `PG::ForeignKeyViola…tion` (500 in the admin panel), and deleting a user either failed the same way or silently destroyed every room they created through `dependent: :destroy`.
This change drops the sessions/memberships/co-presences/creator foreign keys (post-deploy, matching core's no-FK convention) and moves integrity to application logic: a deleted user's rooms are reassigned to the system user, their memberships and co-presences are removed, and sessions are kept as analytics history — with the admin dashboard rendering `(deleted room)` / `(deleted user)` for dangling references. Also guards the default room seeder against running before pending migrations, which previously made `rake db:migrate` itself crash on a database that was behind.