in reply to hash ref is empty inside subroutine

For what it's worth I seem to recall having experienced something similar. Try replacing your Dumper bit with something else that forces Perl to peek inside the hash. Something like this perhaps:

do { my @tmp = keys(%$hashref) };
use Moops; class Cow :rw { has name => (default => 'Ermintrude') }; say Cow->new->name