Does Postgres regional failover happen automatically?

The Postgres Flex implementation is the current default setup, assuming you’re running a recent flyctl version.

This post should provide some context:

Also, is there somewhere we can learn more on how these work during failures (both hardware and regional failures).

How this implementation responds during hardware and regional failures is going to depend heavily on your setup.

How we handle fencing can be found here, which may or may not answer some of your questions: https://github.com/fly-apps/postgres-flex/blob/master/docs/fencing.md

If you have any specific scenarios in mind, let me know.