Got a curiosity question about this statement in your PR.
Phoenix's migrations are designed to be safe under concurrent execution — if two pods race, one will fail with a transient error, retry, find the database already at head, and exit cleanly.
Is this because Phoenix takes a Postgres application level lock?