Repository navigation
Fix what the review of search and the away summary found - #73
Merged
Merged
Conversation
Search (⌘K):
- What the core found in messages, and tickets or automations matched by their description, stay while typing
(cmdk reads keywords only when an item mounts: they are keyed by the search).
- Chats matching here and chats the core found in their messages show together; results of an earlier search
never stand in for the new one; the core matches word by word ("invoice march" finds "March invoice review").
- Items with the same text stay apart (no stuck keyboard); "#12" puts #12 first.
- Matching ignores accents and folds case for every script; Chinese, Japanese and Korean words match anywhere.
While you were away:
- Covers the time until the human came back, not up to now; at most 31 days.
- Found through new indexes on when runs ended and on ticket events (migration 58) instead of reading every run.
- Shows up after the click is released, so it never moves what the click was meant for.
- Lists only chats still unread (read on the phone or elsewhere = not news); totals and per-agent costs agree;
automations with the same name stay apart; a delivered ticket names who delivered it.
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.
Follow-up to #68 (search) and #69 (while you were away), fixing every finding of their review.
Search: major
keywordsonly when its value changes, so automations, tickets and core-found chats lost their match after the next keystroke. Those items are now keyed by the search, so they register again (${id}:${q}).Search: minor
keepPreviousDataresults from an earlier query are never shown for the new one (isPlaceholderData, anddeferred === q).text + U+2063 + id, never searched), so same-named automations, agents, chats or waiting items no longer highlight together or freeze ArrowDown.#12sorts by number, so Import passwords from Chrome, 1Password and other password managers #12 comes before #120.wordFilterfolds accents and case for every script (NFKD; "cafe" finds "Café", "istanbul" finds "İstanbul"). Words in Chinese, Japanese, Korean and Thai match anywhere.While you were away: major
{ since, until }(until = the moment you came back), the API takesuntil, and every query is bounded by it. The header shows the time away, not the time since.idx_runs_finished(partial) andtask_events(kind, created_at). The query keeps SQLite on that index (+r.status), and a test asserts the plan uses it. Counts are done in SQL, highlight candidates are limited to 300, and the window is capped at 31 days.While you were away: minor
pointerup/keyup, so the card can't appear mid-click.Checks:
away.test.tsnow also covers the end of the window, unread-only chats, the index in the query plan anduntilvalidation.