Yes. We did months of internal tests, and 2.1 passes Jepsen tests. We'd love for Kyle to do his own analysis once he gets some free time. In the meantime there is a bit more info on this in the blog post under "testing" headline.
Am I correct in understanding that the tests only pass in the "safe-but-slow" configuration that timmaxw described (https://news.ycombinator.com/item?id=10043746) and not in the default "fast-but-unsafe" configuration?
AFAIK the tests account for that and test different scenarios (i.e. not all unsafe modes are created equal; a product can still fail the relevant test cases in fast-but-unsafe mode). We pass the fast-but-unsafe tests (i.e. we fulfill the guarantees you'd expect in that mode), and also pass the stricter guarantees in the slow-but-safe mode.
However you're right that we don't pass stricter guarantees in fast-but-unsafe mode (but I'm not aware of any products in the space that do).
Good to know. The test code in that pull request only tests the case where read_mode="majority", so I'm looking forward to seeing the other scenarios when they become available.
We only submitted the configuration that passed all scenarios, but tested some of the others internally. You generally don't get guaranteed linearizability of operations under network partitions in any of the faster configurations.