Therefore, Consistency guarantees are based on implementing application-specific partitioning (correctly)?
If you have serializable on each shard and you chop transactions so you have no cross shard transactions, the application is technically still serializable, it just behaves like two independent deployments of the application for different shards