Remove any "if" from your comment and it seems like you understood what would fail! There's more ways to make misunderstanding grant vs default privileges will create issues as well.
I think you probably don’t want the application user to inherit from the superuser you may use for migrations since some migrations require a superuser.
Doing ALTER DEFAULT PRIVILEGES could be another future footgun of it's own.