fix(engines): surface the official site for brand/navigational queries#87
Merged
Conversation
The lexical relevance signal scored a result zero when the query was a brand
typed without its separator ("threejs") but the title used the separator
("three.js" -> tokens three + js), demoting the official site below
single-engine forum posts that contained the bare word. Two changes fix it:
- Bridge adjacent tokens in the lexical match so "threejs" meets a "three.js"
title (concatenations are stemmed symmetrically with the query side).
- Add a bounded, exact-match navigational boost: when the squished query names
a result's registrable domain label (threejs -> threejs.org), lift it to the
top past the demotion-only blend. Short-query, exact-match only, so a
descriptive query never triggers it.
Live check: "threejs" moved threejs.org from #17 to #1.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
For a brand typed without its separator (e.g.
threejs), the lexical relevance signal scored the official site zero: its titlethree.jstokenizes tothree+js, neither equal tothreejs. The demotion-only blend then sank it below single-engine forum posts that contained the literal word. Live,threejsputthreejs.orgat #17 despite two engines agreeing on it.Fix
threejsmeets athree.jstitle.threejs→ threejs.org), it is lifted to the top past the demotion-only blend. Short-query and exact-match only, so a descriptive query never triggers it. Pure on-device string work; no new requests.Verification
threejsmoved threejs.org test: exhaustive CLI, GUI-interaction, and full-pipeline coverage #17 → chore(deps): Bump the github-actions group with 2 updates #1.🤖 Generated with Claude Code