bmersereau tightens the bolts on Mike's user table
A schema cleanup turns loose text IDs into real foreign keys - and quietly decides what happens to shared work when a user walks away.
Under the hood, Mike has been storing user IDs as plain text across nine tables - projects, documents, chats, tabular reviews, workflows and more. bmersereau's migration converts those columns to proper UUIDs and wires them to the authentication table with foreign key constraints, so the database itself enforces that every row points at a real user. The whole change lands in one transaction, with a pre-flight check, a rollback script and a small test harness guarding the migration file.
The judgment call worth noting is on workflows. Most tables follow the owner - delete the user, delete their data. Workflows don't: when an owner's account goes away, the shared workflow stays. That's a small decision with a clear stance - once something is collaborative, it shouldn't disappear with the person who started it.
Spotted something wrong? Or know the PR text has fresher detail than the writeup above?