You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
find gains explicit --fuzzy (subsequence match on document title and key) and --lexical (BM25 full-text scoring over title and body) query flags; supplying both fuses the two result sets with Reciprocal Rank Fusion. Set the stemming language for lexical search with [search] language in .iwe/config.toml.
find --lexical prints a warning when the query reduces to only stop words after stemming, so an empty result set is explained instead of looking like an empty index.
Fixed
find and retrieve truncation warning now suggests only the limits that actually apply (--limit, --max-tokens, --max-document-tokens) instead of always naming --max-tokens, which does nothing for a metadata-only index bounded by --limit.
Deprecated
find's bare positional query defaults to fuzzy matching and now prints a warning on stderr; it will be removed in a future release. Use --fuzzy or --lexical instead.
iwes
Changed
Workspace-symbol search fuses fuzzy matching with BM25 full-text relevance (over document title and body) using Reciprocal Rank Fusion, so a query term in a document's body can lift it above an equally-fuzzy result.
iwec
Changed
iwe_find replaces its query parameter with explicit fuzzy (match on document title and key) and lexical (BM25 full-text over title and body) parameters; supplying both fuses the results with Reciprocal Rank Fusion. Set the stemming language for lexical search with [search] language in the configuration.
liwe
Added
search::Bm25Index plus Graph::search and Graph::search_scores provide BM25 full-text ranking over document title and body; the index is built and kept in sync by the ingestion pipeline (insert_document / update_document / remove_document).
Graph::to_plain_text renders a document to plain text (markup stripped, link display text kept, code and table cells included); Node::plain_text now also covers table cells.
[search] configuration table with a language field (one of 17 stemming languages, default english), exposed through Configuration::search_language.
search::rrf_weight and search::RRF_K for Reciprocal Rank Fusion of ranked result lists.
Graph::lexical_query_has_terms (backed by Bm25Index::has_query_terms) reports whether a lexical query keeps any searchable terms after stop-word removal and stemming.
Changed
Graph::from_state and Graph::from_path take an extra Option<Language> argument that enables search indexing when set (None skips it); Graph::import is unchanged and keeps indexing off.
FindOptions carries separate fuzzy and lexical query fields (was a single query); when both are set the finder fuses the two rankings with Reciprocal Rank Fusion.