[enh] indexer: add facets, MatchAll, and user-scoped lookup#364
[enh] indexer: add facets, MatchAll, and user-scoped lookup#364asciimoo merged 3 commits intoasciimoo:masterfrom
Conversation
|
Nice idea!
How do you imagine displaying these information? Adding an extra sidebar doesn't make the search UI too dense?
This is a bug indeed, but you don't actually provide a solution for it, only tools that can solve the issue. |
This PR is only the backend groundwork so the frontend has something to call But I was thinking:
I lean toward the chip-bar for the density reason you mentioned, it keeps the main column unchanged when no filter is active, but I think this is for another PR
Ah, right I'll fix it |
Callers pass the request's UserID so URL lookups can't return another user's copy of the same page The local file indexer passes 0 (no user context), and the semantic-hit branch strips the uid prefix from docID since the vector search is already scoped to q.UserID
Lays the groundwork for filter sidebars and smarter autocomplete on search
Search results can now come back with aggregate counts: which domains show up
most in your history, which languages, and how results break down by recency
(last 24h, 7 days, 30 days, year, older). That's what a sidebar needs to show
"GitHub (42), Wikipedia (17), ..." next to the results, or to power a recency
filter without a second round-trip
Autocomplete and filter UIs can also ask for these counts on their own, without
running a text search, so pulling the list of domains a user has visited is
cheap
Fixes a cross-user bug in URL lookup: in multi-user mode, looking up a URL could
return another user's copy of the same page. Callers can now scope the lookup to
the current user