It's an "any", not an "all". The synopsis 3 for Perl 6 has this code :
when $_ is an Array, and X is a Hash, $_ ~~ X means X.{any @$_}:exists.
Note that the implementation is right already (and was right in 5.10).
Any CodeRef scalar sub truth $b->($a)
Hash Hash hash keys identical [sort keys %$a]~~[sort keys %$b]
- Array Hash hash slice existence @$a == grep $_ ~~ $b, @$a
+ Array Hash hash slice existence grep $_ ~~ $b, @$a
Regex Hash hash key grep grep /$a/, keys %$b
undef Hash always false (undef can't be a key)
Any Hash hash entry existence exists $b->{$a}