I believe I have found a bug with the wildcard expansion in tag search. Examples in Stack Overflow but are likely applicable on other sites:
Working: Searching for [python-2.7] -[python*] shows no results. That is correct - I'm searching for anything tagged python-2.7 but excluding python* which also excludes python-2.7. Thus nothing remains.
Working: Searching for [python-3.10] -[python*] shows 158 results.
This is because the search term [python*] only expands to (formatted as list for better readability):
The expansion does not include [python-3.10], nor [python-3.9]. I am not sure if [python*] is missing other tags. Nor do I know if other tags have a similar problem - as can be seen, searching cannot be relied upon to find tags with such problems.
The same happens when using regular search, rather than tag search: some text -[python*] still does not expand to cover [python-3.10] or [python-3.9]
Note that this is not a problem with limited search string space. Using two tags with wildcards, for example:
both expand fully to the search term:
[python] -[python] -[python-3.x] -[python-2.7] -[python-requests] -[python-imaging-library] -[python-asyncio] -[python-3.6] -[python-import] -[python-multiprocessing] -[python-3.7] -[python-multithreading] -[python-sphinx] -[python-3.5] -[python-unittest] -[python-2.x] -[python-3.4] -[python-decorators] -[python-3.8] -[python-module] -[python-xarray] -[python-datetime] -[ruby-on-rails] -[ruby] -[ruby-on-rails-3] -[ruby-on-rails-4] -[rubygems] -[ruby-on-rails-5] -[ruby-on-rails-3.2] -[ruby-on-rails-3.1] -[ruby-on-rails-6] -[rubymine] -[ruby-on-rails-2] -[ruby-on-rails-plugins] -[ruby-on-rails-4.2] -[rubymotion] -[ruby-on-rails-5.2] -[ruby-1.9.3] -[ruby-2.0] -[ruby-on-rails-4.1] -[ruby-1.9] -[ruby-on-rails-7]
which means it is not a problem with limited search space.
This seems to be a that the wildcard expansion itself has a limit of 20 items. Searching for "python" on the /tags page shows there are at least 27 results:
The list of tags that start with the word "python" are:
The results still do not include [python-3.10] nor [python-3.9] but that is because they show the top matching tags and those two have less questions associated with them.
Also of note: the first 20 tags from the list match exactly with the 20 tags [python*] expands to. This suggests that the tag expansion is based on the order by popularity.
Please fix wildcards for tags to match all variations. The very reason I (at least) use wildcards is in order to watch out for newer tags created which happens often when the versions are included in the tag name itself. This means that I only need to define few rules or custom filters. This issue can show up in many sites which use some sort of namespacing of tags. For example, on Role-playing Games there are the [dnd*] tags which are not 20 yet (only 14 so far) but would probably eventually reach that. Arquade might also have a similar problems with series and spinoffs. I am not sure but I suspect Science Fiction & Fantasy and/or Physics and/or Biology and/or Mathematics, among others might also have a lot of tags that start with the same or similar text.