it looks like sub test is pulling in want from
push @{$self->{want}} => sort grep { $self->{j}{db}{$_} } keys %{$self->{prereq}};
which can some times be the name of the module we're checking. So you need to de-dupe this later.
- foreach my $m (@w }) {
+ foreach my $m (do { my %seen; grep { !$seen{$_}++ } @w }) {