Add fuzzy search to issue and project list queries #115
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.
The
-qflag performs exact substring matching server-side, failing on typos. Users typing quickly or without visual aids get zero results for minor misspellings.Changes
Client-side fuzzy matching: Query flag now applies
sahilm/fuzzyto filter fetched results instead of server-side substring matching. Handles typos, partial matches, and fuzzy abbreviations with ranked results.Modified files:
internal/cmd/issue/list.go: Apply fuzzy search to issue subjectsinternal/cmd/project/list.go: Apply fuzzy search to project namesExamples:
Trade-off: Searches within pagination window (default 25 for issues, 1000 for projects). Users needing broader search can increase
--limit.Dependency: Added
github.com/sahilm/fuzzy@v0.1.1(1.4k stars, zero external dependencies, designed for VSCode-style search).Warning
Firewall rules blocked me from connecting to one or more addresses (expand for details)
I tried to connect to the following addresses, but was blocked by firewall rules:
go.googlesource.com/update-job-proxy /update-job-proxy tcp -m conntrack --ctstate INVALID,NEW -j DROP -errorsas -ifaceassert -nilfunc /opt/hostedtoolcache/go/1.24.11/x64/pkg/tool/linux_amd64/compile -V=f�� cac04d5b:docs/red-cli_config_editor.md -tests ux_amd64/covdata(dns block)/update-job-proxy /update-job-proxy conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT /usr/bin/unpigz /bin/test -c la/UCA_Extended_cat-file e test -e mSign_Root_CA_-_G1.pem bash ps --root /var/run/docker/--wait e ps(dns block)go.mongodb.org/update-job-proxy /update-job-proxy tcp -m conntrack --ctstate INVALID,NEW -j DROP -errorsas -ifaceassert -nilfunc /opt/hostedtoolcache/go/1.24.11/x64/pkg/tool/linux_amd64/compile -V=f�� cac04d5b:docs/red-cli_config_editor.md -tests ux_amd64/covdata(dns block)/update-job-proxy /update-job-proxy conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT /usr/bin/unpigz /bin/test -c la/UCA_Extended_cat-file e test -e mSign_Root_CA_-_G1.pem bash ps --root /var/run/docker/--wait e ps(dns block)go.yaml.in/update-job-proxy /update-job-proxy tcp -m conntrack --ctstate INVALID,NEW -j DROP -errorsas -ifaceassert -nilfunc /opt/hostedtoolcache/go/1.24.11/x64/pkg/tool/linux_amd64/compile -V=f�� cac04d5b:docs/red-cli_config_editor.md -tests ux_amd64/covdata(dns block)/update-job-proxy /update-job-proxy conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT /usr/bin/unpigz /bin/test -c la/UCA_Extended_cat-file e test -e mSign_Root_CA_-_G1.pem bash ps --root /var/run/docker/--wait e ps(dns block)gopkg.in/update-job-proxy /update-job-proxy tcp -m conntrack --ctstate INVALID,NEW -j DROP -errorsas -ifaceassert -nilfunc /opt/hostedtoolcache/go/1.24.11/x64/pkg/tool/linux_amd64/compile -V=f�� cac04d5b:docs/red-cli_config_editor.md -tests ux_amd64/covdata(dns block)/update-job-proxy /update-job-proxy conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT /usr/bin/unpigz /bin/test -c la/UCA_Extended_cat-file e test -e mSign_Root_CA_-_G1.pem bash ps --root /var/run/docker/--wait e ps(dns block)If you need me to access, download, or install something from one of these locations, you can either:
Original prompt
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.