mirror of
https://github.com/ruvnet/ruflo.git
synced 2026-11-09 22:13:39 +09:00
* dream(intelligence): #3301 findSimilar() confidence/similarity conflation LocalReasoningBank.findSimilar() overwrote every returned pattern's confidence (learned reliability) with the per-query cosine similarity score, instead of returning the score under the already-declared PatternMatch.similarity field. This silently broke distillLearning()'s "only distill from high-confidence matches" gate (it tested query-similarity, not reliability) and forced findSimilarPatterns()'s public API into an unsafe type-cast fallback that made confidence and similarity numerically identical for every caller. Fix: findSimilar() now preserves the real stored confidence and returns the cosine score as a distinct similarity field; findSimilarPatterns() reads the real field instead of casting; memory-bridge.ts's search- ranking consumer (which wants query-relevance, not reliability) is migrated to prefer similarity, falling back to confidence. Evaluated: baseline-fails/candidate-passes via git-stash isolation (4 new discriminating tests), full @claude-flow/cli suite identical 90-vs-91-failed-file sets (only delta is the new test file; all other failures are pre-existing unbuilt-sibling-package issues), tsc --noEmit byte-identical. Independent adversarial critique: CONFIRMED, no blocking caveats. Darwin: skipped (binary correctness fix, no fitness gradient). Security: not sensitive, in-process bookkeeping only. Co-Authored-By: RuFlo <ruv@ruv.net> Claude-Session: https://claude.ai/code/session_013LQSLa9h1uLdYsQBP5r36z * dream(intelligence): #3301 update ledger with issue #3301 / PR #3302 Records tonight's finding, verified GitHub fates for the trailing 7 nights (including a newly-discovered merge conflict on #3232), and the evaluation verdict. Co-Authored-By: RuFlo <ruv@ruv.net> Claude-Session: https://claude.ai/code/session_013LQSLa9h1uLdYsQBP5r36z * dream(intelligence): #3301 make findSimilarPatterns() test CI-deterministic CI's "Test Suite (ubuntu-latest)" job (root-level ci-test-ratchet.mjs) flagged this new test file as an unexpected failure: the "confidence and similarity differ for a partial match" case called the real findSimilarPatterns(), which tries a live ONNX embedding (falling back to a hash) before it can compare fields. In the CI runner that path silently returned [] (no cached model / restricted network), so `hit` was undefined. Mock both embedding sources (memory-bridge.js's bridgeGenerateEmbedding, memory-initializer.js's generateEmbedding) to a fixed deterministic vector. This matches the evaluation's own stated claim ("fully deterministic, $0 evaluation cost") that this one test wasn't actually honoring. Reproduced the exact CI invocation locally (root-level vitest, not the cli package's own scoped config) — all 4 tests now pass; local package-scoped suite unaffected (7/7 across this file and the adjacent hooks-intelligence-learning.test.ts). Co-Authored-By: RuFlo <ruv@ruv.net> Claude-Session: https://claude.ai/code/session_013LQSLa9h1uLdYsQBP5r36z --------- Co-authored-by: Claude <noreply@anthropic.com>