TL;DR

vti (Вячеслав Тихановский) eventually accepted the pull request for distinguishing “unmatched” and “excluded” in Text::Gitignore.

Which puts an end to the saga that started in this post about Text::Gitignore, was elevated to a stand-alone topic in Unmatched is not Excluded and eventually landed on a pull request as described in Unmatched is not Excluded - Pull Request is out.

The simplest solution in the pull request eventually got through: use of two different variants of Perl false - undef and something false but defined - much like what happens with wantarray. This makes me happy because it’s backwards compatible, to the point and not over-engineered.