I have filed a bug on this behaviour, but I'd like to double post here, in case anyone is able to spot some error on my part.
I have this test inside my Emmy library, which is currently passing.
The correct (stronger) assertion would be
check(a is EuclideanRing)
For some reason, adding this line makes the test fail (which is a problem, but not the reason of the issue) but also makes the following test fail.
If I change the assertion to
check(a is Ring)
which is of intermediate strength, the test passes, but the test after it still fails.
I cannot understand what is happening at all.