Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 1079f1c024
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| if (!open) { | ||
| debouncedSearch = ''; | ||
| return; |
There was a problem hiding this comment.
Clear the search text when closing the tag picker
When a user types a query and closes the picker, this branch clears only debouncedSearch; the bound search state retains the query. Reopening the picker therefore immediately filters the suggestions by the previous text and may launch another remote lookup instead of showing the full tag list as it did previously. Reset search when open becomes false.
Useful? React with 👍 / 👎.
Tag autocomplete now shows up to 250 organization-wide suggestions and searches beyond the initial set without discarding selected tags. Complete collections filter locally; incomplete collections use literal searches after 300 ms and two characters through the existing count endpoint. The five-minute cache is isolated by organization, session, and search and is independent of dashboard filters and event notifications.
The picker resets search on close for both tags and existing multiselect consumers. Requests use the feature's standard request shape and query-key factory. Authorization, retention, premium checks, and public API contracts are unchanged.
Validation:
npm run validatepassed with zero errors or warnings.Limits: letter-pair matching handles ordinary mixed case but does not implement full Unicode case folding. A direct local Elasticsearch benchmark with 100,000 synthetic documents, 100,002 distinct tags, three shards, and request caching disabled returned warm median wall times of 4.51 ms for initial suggestions, 4.63 ms for a rare literal match, and 6.80 ms for a broad match (five warm samples each). First requests took 14–24 ms. This isolates aggregation cost; it does not prove API latency or production capacity. Hosted CI is reported separately.
No breaking changes.