KevinPayravi / indie-wiki-buddy

Browser extension that automatically notifies and redirects you to independent wikis.
https://getindie.wiki
MIT License
291 stars 79 forks source link

Moving indie wikis to the top matches indie wiki pages incorrectly #683

Closed SnorlaxMonster closed 5 months ago

SnorlaxMonster commented 5 months ago

The feature "On Google, move indie wiki results to the top of the page" seems to incorrectly match non-indie results to presumed indie results, causing there to be no link to the intended search result.

For example, when I search "Yugi Muto wiki" on Google with the feature disabled, the top result is https://yugioh.fandom.com/wiki/Yugi_Muto , with child links to several other pages, including https://yugioh.fandom.com/wiki/Yugi_Mutou_(manga) . Further down the page, there is a Yugipedia result for https://yugipedia.com/wiki/Yugi_Mutou_(manga) .

If I enable the feature, the top result is https://yugipedia.com/wiki/Yugi_Mutou_(manga) . There is no longer any link on the search result page to https://yugipedia.com/wiki/Yugi_Muto , the page that I probably actually want.

I assume the issue here is that the function sees that the "Yugi Muto" result contains a child link to "Yugi Mutou (manga)", so assumes the two results are the same, resulting in it hiding the "Yugi Muto" result and promoting the "Yugi Mutou (manga)" result.

KevinPayravi commented 5 months ago

I believe the root cause is that, during re-ordering, our check for matching articles does a partial match. So with your example, any Yu-Gi-Oh! Fandom result that starts with "Yugi Muto" will end up being hidden.

I've pushed up a commit (https://github.com/KevinPayravi/indie-wiki-buddy/commit/713278d791fdd5984e418d5e15eb37926df02f11) that adds an "end of line" check to the regex, so it looks for an exact match.

LexiTehGallade commented 5 months ago

Can replicate. Here's a great example of this messing with generic results: "Lightning rod" I was looking for, as in the actual real life thing. Indiewikibuddy inserted bulbapedia and stardew valley wiki above wikipedia. Suffice to say this should not happen.

KevinPayravi commented 5 months ago

Can replicate. Here's a great example of this messing with generic results: "Lightning rod" I was looking for, as in the actual real life thing. Indiewikibuddy inserted bulbapedia and stardew valley wiki above wikipedia. Suffice to say this should not happen.

Good example, thanks for sharing this. I don't think that's quite the same issue being described in this ticket (as this ticket is about IWB hiding the wrong Fandom results when re-ordering), but that's certainly an issue all the same!

I think we could resolve this by doing something like only re-ordering when a Fandom or indie wiki is in the top-3 results, since we can then assume the user is actually seeking something that an indie wiki provides. Alternative, we can move indie results to be right above the first Fandom result, so that we keep the same prominence that Google intended.

KevinPayravi commented 5 months ago

With the release of v3.8.0, article title matching is now exact and should resolve this bug.

Indie results are now also moved above the first non-indie (Fandom, Fextra, Neoseeker) result. If no non-indie results exist, no re-ordering happens.