Choose between change/0 and explicit up/down migrations for irreversible Ecto schema changes
Goal: ensure that a failed Ecto upgrade can be recovered safely when a migration contains irreversible operations such as raw SQL or data transforms. Constraint: the change/0 callback can auto‑reverse only a limited set of commands; any irreversible step raises on rollback, while explicit up/0/down/0 pairs give full control but require more code and duplicat