That is practically achievable by providing a SafeMigration concern that users could include in their migrations.
It will:
- provide updated helpers
- set lock and statement timeouts
- disable DDL transaction
This approach would still allow having migrations that have DDL transaction turned on.