I see no mention of foreign keys, or any other constraints, across shards. If, as I suspect, they're not implemented, it would still be useful but at the level of Spanner 10 years ago.
Cross shard transactions are “coming soon”. So, this is just like having multiple postgres clusters.
Cross shard transactions are “coming soon”. So, this is just like having multiple postgres clusters.