UNIT 01
trusty-search
Hybrid code search
- BM25, vector, and knowledge-graph retrieval fused with Reciprocal Rank Fusion
- One machine-wide daemon, unlimited named project indexes
- Query-intent routing across definition, usage, conceptual, and bug/debt lookups
- Branch-aware ranking and caller/callee chain expansion
What’s new
0.44.0· 2026-08-10
- Added Reindex now reports a per-stage wall-clock breakdown — hash-cache load, corpus carryover copy, batch pipeline, prune, HNSW commit, corpus commit, KG, and an explicit unattributed remainder — in the reindex phase timings log line and in the complete SSE event's timings object. This replaces the derived model_load_approx_ms residual, which folded five distinct stages into one number computed by subtraction, leaving the cost of a corpus carryover copy unmeasurable. Adds tests/reindex_stage_profile.rs, an #[ignore]d harness that prints cold and warm breakdowns against a throwaway temp corpus (#5024).
- Fixed Updated doc comments, Cargo.toml, and CLAUDE.md that still named open-mpm as a consumer/orchestrator to say trusty-agents (renamed in #831), and removed an orphaned .open-mpm/agents/ fixture directory (2 stray .toml files, unreferenced by any code) that was left behind in the crate tree.
- Fixed cargo test -p trusty-search compiles again. #5345 gave index_status and chunks a JSON body, changing their error type from StatusCode to (StatusCode, Json<Value>), but two assert_eq! calls in deleted_cold_parked_index_is_404_not_a_permanent_503 still compared the whole tuple against a bare StatusCode, so the lib-test target failed to build and took every gate on main with it. The three guards that test pins now destructure the response and assert both the 404 and the unknown index: <id> body, so a regression that returns 404 while still advertising restore_via is caught rather than passing on the code alone.