Version: graphifyy 0.9.11 (uv tool install), macOS. Same behavior on 0.9.9 and 0.9.11 (post-#1602).
Symptom: on a Next.js repo (~2.3k nodes, ~250 communities), a natural-language query about one specific endpoint seeds on four different GET() nodes from unrelated route files (every Next.js route handler is a function literally named GET; the query contained the word "get"), plus one stray lexical match on an unrelated infra node (the query contained "endpoint"). BFS depth-2 then returns 252 nodes, ~90% unrelated — the genuinely relevant community IS found via the other, specific seeds, but it's buried.
This is adjacent to #1303 (tied _EXACT_MATCH_BONUS scores aren't degree/community-diversified) and survives the #1602 fix — the difference here is many distinct nodes sharing one generic name, which is the norm for convention-named exports (GET/POST/default/handler/index).
Suggested direction:
- Penalize (or dedupe to one representative) seed candidates whose label is shared by many nodes — high label-multiplicity signals a framework convention, not a discriminator.
- Qualify generic-name seeds by co-occurrence (path/community affinity with the other seeds) before committing their BFS neighborhoods.
- A per-seed cap or relevance-ranked output would bound the blast radius of one bad seed.
Version: graphifyy 0.9.11 (uv tool install), macOS. Same behavior on 0.9.9 and 0.9.11 (post-#1602).
Symptom: on a Next.js repo (~2.3k nodes, ~250 communities), a natural-language query about one specific endpoint seeds on four different
GET()nodes from unrelated route files (every Next.js route handler is a function literally namedGET; the query contained the word "get"), plus one stray lexical match on an unrelated infra node (the query contained "endpoint"). BFS depth-2 then returns 252 nodes, ~90% unrelated — the genuinely relevant community IS found via the other, specific seeds, but it's buried.This is adjacent to #1303 (tied _EXACT_MATCH_BONUS scores aren't degree/community-diversified) and survives the #1602 fix — the difference here is many distinct nodes sharing one generic name, which is the norm for convention-named exports (GET/POST/default/handler/index).
Suggested direction: