Skip to content

feat(absence): BM25-fed did-you-mean in absence_diagnosis (with MRR eval) #434

Description

@HumanBean17

Tracks deferred work from #431 (fork B). Design ref: docs/superpowers/specs/active/2026-07-12-hybrid-bm25-rrf-design.md.

Why

absence_diagnosis today uses vocabulary q-gram similarity + difflib did-you-mean. LadybugDB BM25 — now available on every search as a first-class signal after #431 — beats both for exact-identifier / typo cases (DistributionChunkService, processClientMessage).

Scope

Why deferred from #431

Kept rank-only in #431 so the ranking eval (recall/precision @k) stays cleanly attributable. Did-you-mean quality is a different metric needing its own harness.

🤖 Generated with Claude Code

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