agent_ui: Match project name in archive-view search - #58214
Merged
danilo-leal merged 2 commits intoJun 13, 2026
Conversation
The archive ("Search all threads") view's filter matched only the
thread title, so typing a project name (e.g. "sync-wave-studio") never
surfaced that project's threads even though the project label is shown
right under each title. The filter now also tries matching the basename
of each of the thread's worktree paths, mirroring the sidebar's
project-name match.
5 tasks
danilo-leal
enabled auto-merge
June 13, 2026 16:28
This was referenced Jun 18, 2026
Closed
This was referenced Jul 1, 2026
This was referenced Jul 10, 2026
jolutz
pushed a commit
to jolutz/zed
that referenced
this pull request
Aug 8, 2026
…8214) Summary: When you have a lot of projects open, finding a thread from a specific project in the archive ("Search all threads") view is slower than it should be — the filter only matches the thread title, so you have to remember or scan titles to find what belongs to which project. Folder names are a quicker mental handle than thread titles, especially across many projects. This PR makes the archive filter also try matching the basename of each of the thread's worktree paths. Title matches still take precedence and get the highlight positions; project-name matches just include the row. Same `fuzzy_match_positions` contiguous substring matcher already used for titles, so the matching feel is consistent. Example: typing `my-laravel-project` now surfaces every thread that lives under a project named `my-laravel-project`, regardless of title. Self-Review Checklist: - [x] I've reviewed my own diff for quality, security, and reliability - [x] Unsafe blocks (if any) have justifying comments — N/A - [x] The content is consistent with the [UI/UX checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist) - [x] Tests cover the new/changed behavior — small extension to an existing filter branch; manually verified. - [x] Performance impact has been considered and is acceptable — per-row path-basename check only runs when the title didn't match. Release Notes: - Improved the archive "Search all threads" view so you can filter by project name, not just by thread title — handy when many projects are open. --------- Co-authored-by: Danilo Leal <daniloleal09@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary:
When you have a lot of projects open, finding a thread from a specific
project in the archive ("Search all threads") view is slower than it
should be — the filter only matches the thread title, so you have to
remember or scan titles to find what belongs to which project. Folder
names are a quicker mental handle than thread titles, especially across
many projects.
This PR makes the archive filter also try matching the basename of each
of the thread's worktree paths. Title matches still take precedence and
get the highlight positions; project-name matches just include the row.
Same
fuzzy_match_positionscontiguous substring matcher already usedfor titles, so the matching feel is consistent.
Example: typing
my-laravel-projectnow surfaces every thread that livesunder a project named
my-laravel-project, regardless of title.Self-Review Checklist:
Release Notes: