Skip to content

Expand omni search to include notes and todos#912

Merged
multiplex55 merged 1 commit intomasterfrom
codex/implement-source-aggregated-omni-pipeline
Feb 28, 2026
Merged

Expand omni search to include notes and todos#912
multiplex55 merged 1 commit intomasterfrom
codex/implement-source-aggregated-omni-pipeline

Conversation

@multiplex55
Copy link
Owner

Motivation

  • Aggregate results from notes and todos into the omni (o / o list) pipeline so users see folders, bookmarks, apps, notes and todos in one combined search.
  • Separate per-source collection so each source (folders/bookmarks/apps/notes/todos) can preserve its own query semantics and be extended independently.
  • Deduplicate combined results to avoid duplicate UX noise while preserving a deterministic result order.
  • Preserve the existing apps fast path (FST index with linear fallback) and keep command prefixes unchanged for backward compatibility.

Description

  • Added note: NotePlugin and todo: TodoPlugin fields to OmniSearchPlugin and initialized them in OmniSearchPlugin::new(...) alongside folders and bookmarks.
  • Refactored search_all to call per-source collectors: collect_folder_results, collect_bookmark_results, collect_app_results, collect_note_results, and collect_todo_results so each source uses its native query form (empty rest → note list / todo list, non-empty rest → note {rest} / todo {rest}).
  • Moved app lookup into collect_app_results and preserved the existing FST subsequence search plus the linear fallback when index building fails.
  • Added dedup_actions to remove duplicates by a stable key composed of the action string and a normalized, lowercased label while preserving first-seen ordering, and updated description() to reflect the expanded scope.

Testing

  • Ran cargo fmt --all, which completed successfully.
  • Ran cargo check and cargo check --lib, both of which were blocked by an environment/system dependency error from alsa-sys (missing alsa.pc / pkg-config), so a full build and automated test run could not be completed in this environment.
  • No additional automated unit/integration tests were executed due to the build blockage by the missing system pkg-config data.

Codex Task

@multiplex55 multiplex55 merged commit 0abdacf into master Feb 28, 2026
1 check failed
@multiplex55 multiplex55 deleted the codex/implement-source-aggregated-omni-pipeline branch February 28, 2026 19:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant