fix: return all notes when search query is empty
Previously, an empty query string to nc_notes_search_notes would return zero results due to an early return when no query tokens were present. This was counterintuitive - users expect an empty query to list all notes, not return nothing. Changes: - Modified NotesSearchController.search_notes() to return all notes when query is empty - Added documentation to clarify this behavior - Empty query results have _score: None (no relevance scoring) - Non-empty query results continue to have relevance scores Fixes behavior where listing all notes was impossible via the search tool. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -12,13 +12,24 @@ class NotesSearchController:
|
||||
"""
|
||||
Search notes using token-based matching with relevance ranking.
|
||||
Returns notes sorted by relevance score.
|
||||
If query is empty, returns all notes.
|
||||
"""
|
||||
search_results = []
|
||||
query_tokens = self._process_query(query)
|
||||
|
||||
# If empty query after processing, return empty results
|
||||
# If empty query after processing, return all notes
|
||||
if not query_tokens:
|
||||
return []
|
||||
async for note in notes:
|
||||
search_results.append(
|
||||
{
|
||||
"id": note.get("id"),
|
||||
"title": note.get("title"),
|
||||
"category": note.get("category"),
|
||||
"modified": note.get("modified"),
|
||||
"_score": None, # No score for unfiltered results
|
||||
}
|
||||
)
|
||||
return search_results
|
||||
|
||||
# Process and score each note
|
||||
async for note in notes:
|
||||
|
||||
Reference in New Issue
Block a user