feat(memory-core): expose vectorScore and textScore in hybrid search results#68286
Conversation
Greptile SummaryExposes Confidence Score: 5/5Safe to merge — purely additive, backward compatible, no scoring logic changed. All remaining feedback is P2 (a doc/comment suggestion about temporal decay semantics). The implementation is correct: component scores flow through both post-processing stages and are typed consistently across the two SDK type files. No data loss, no ranking regressions. No files require special attention.
|
|
Related work from PRtags group Title: Open PR duplicate: [Feature]: expose vectorScore and textScore in hybrid search results
|
…results mergeHybridResults computes both component scores per result but drops them when building the return object. This carries them through so callers can see the score breakdown. Closes openclaw#68166
e507814 to
2ca5fe4
Compare
|
Maintainer update before landing:
Local verification:
Waiting for fresh GitHub checks before merge. |
Three external-contributor commits from the last day landed without CHANGELOG entries: - Alex Fries (#68286, @ajfonthemove): hybrid memory search component scores. Added under Unreleased > Changes (feat). - Charles Dusek (#51267, @cgdusek): malformed tool-result text-block guard. Added under Unreleased > Fixes. - Jerome Benoit (#59935, @jerome-benoit): Nix Home Manager daemon PATH support. Added under Unreleased > Fixes. Also drop a duplicate raw-subject changelog line for #66884 that restated alexlomt's already-formatted entry one line above.
Three external-contributor commits from the last day landed without CHANGELOG entries: - Alex Fries (openclaw#68286, @ajfonthemove): hybrid memory search component scores. Added under Unreleased > Changes (feat). - Charles Dusek (openclaw#51267, @cgdusek): malformed tool-result text-block guard. Added under Unreleased > Fixes. - Jerome Benoit (openclaw#59935, @jerome-benoit): Nix Home Manager daemon PATH support. Added under Unreleased > Fixes. Also drop a duplicate raw-subject changelog line for openclaw#66884 that restated alexlomt's already-formatted entry one line above.
Three external-contributor commits from the last day landed without CHANGELOG entries: - Alex Fries (openclaw#68286, @ajfonthemove): hybrid memory search component scores. Added under Unreleased > Changes (feat). - Charles Dusek (openclaw#51267, @cgdusek): malformed tool-result text-block guard. Added under Unreleased > Fixes. - Jerome Benoit (openclaw#59935, @jerome-benoit): Nix Home Manager daemon PATH support. Added under Unreleased > Fixes. Also drop a duplicate raw-subject changelog line for openclaw#66884 that restated alexlomt's already-formatted entry one line above.
Three external-contributor commits from the last day landed without CHANGELOG entries: - Alex Fries (openclaw#68286, @ajfonthemove): hybrid memory search component scores. Added under Unreleased > Changes (feat). - Charles Dusek (openclaw#51267, @cgdusek): malformed tool-result text-block guard. Added under Unreleased > Fixes. - Jerome Benoit (openclaw#59935, @jerome-benoit): Nix Home Manager daemon PATH support. Added under Unreleased > Fixes. Also drop a duplicate raw-subject changelog line for openclaw#66884 that restated alexlomt's already-formatted entry one line above.
Three external-contributor commits from the last day landed without CHANGELOG entries: - Alex Fries (openclaw#68286, @ajfonthemove): hybrid memory search component scores. Added under Unreleased > Changes (feat). - Charles Dusek (openclaw#51267, @cgdusek): malformed tool-result text-block guard. Added under Unreleased > Fixes. - Jerome Benoit (openclaw#59935, @jerome-benoit): Nix Home Manager daemon PATH support. Added under Unreleased > Fixes. Also drop a duplicate raw-subject changelog line for openclaw#66884 that restated alexlomt's already-formatted entry one line above.
Three external-contributor commits from the last day landed without CHANGELOG entries: - Alex Fries (openclaw#68286, @ajfonthemove): hybrid memory search component scores. Added under Unreleased > Changes (feat). - Charles Dusek (openclaw#51267, @cgdusek): malformed tool-result text-block guard. Added under Unreleased > Fixes. - Jerome Benoit (openclaw#59935, @jerome-benoit): Nix Home Manager daemon PATH support. Added under Unreleased > Fixes. Also drop a duplicate raw-subject changelog line for openclaw#66884 that restated alexlomt's already-formatted entry one line above.
Summary
result but drops them when building the return object. Only the
weighted combined score survives.
retrieval quality across embedding models and weight configs. The
combined score hides which component drove the ranking.
the merge result in hybrid.ts. MemorySearchResult in memory-host-sdk
adds them as optional fields.
minScore filtering. The combined score field stays the primary
ranking signal.
Change Type
Scope
Linked Issue/PR
Root Cause
N/A
Regression Test Plan
and textScore on each result. Disjoint ids (one component is 0)
and overlapping ids (both contribute).
the full branch space; no live gateway required.
combined score; six new assertions extend those same tests.
User-visible / Behavior Changes
is active. Consumers that don't read these fields see no difference.
Diagram
N/A
Security Impact
Repro + Verification
Environment
Steps
Expected
hybrid.test.ts passes with vectorScore/textScore assertions.
Actual
46 passed, 1 pre-existing failure (dreaming-phases fixture paths,
unrelated, same on main).
Evidence
Human Verification
Review Conversations
Compatibility / Migration
Disclosure
Claude Code helped me straighten out my word salad for this PR.