You're not on a different version of ZFS. The version of ZFS hasn't changed in forever. You're adding new feature flags. Some of those flags will break compatibility when you upgrade the pool. That's why it's a manual process.
High availability is the default expectation for a database. Your local dev box is the exception. When you have large postgres servers (multiple TB), you need logical replications to your new replica set, promotion and failover. Postgres's core data model is not at all like a file system version feature flag update.
It's not some "enterprise" feature. I've done it on clusters as small as 4 nodes. It's what happens behind the scenes on those fancy "cloud" instances.