Skip to content

BM25 sparse text omits high-signal metadata #77

Description

@GoodbyePlanet

Impact: Medium (search quality)

`server/indexer/pipeline.py:111-118` (`_build_bm25_text`) builds the sparse text from signature + docstring + source only. Annotations (e.g. `@RestController`), HTTP routes, package/module, and the symbol name are excluded — even though they are present in the payload and the dense embedding text.

Consequence: a keyword search for an annotation name or route string gets no sparse (BM25) matches.

Recommended change

Fold annotations, HTTP route, package, and symbol name into `_build_bm25_text`.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions