- Shipped
- October 21, 2026 at 2:13 AM UTC
- Author
- Kamo
- Commit
- 75c392b
MultiInstancePhoneMigration runs on every KamoInitializer start. Its conversation step deleted each voip_conversations row without an instance (and that thread's messages) and then re-applied SET NOT NULL on instance_id. That reversed VOIPService's 2026-09-06 migration, which made the column nullable so an organization that texts through a carrier and runs no phone server can hold threads. Production still had NOT NULL on 2026-10-20, so such an org's inbound text failed at the insert. The step is now a logged no-op, and a test pins that no statement deletes, updates or NOT-NULLs voip_conversations.
