Search: bump debounce from 200ms to 400ms across every site#35
Open
sysread wants to merge 1 commit into
Open
Conversation
200ms is right on the edge of a typical inter-keystroke interval (~150-250ms for a moderate typist), so the old window was firing mid-burst and queueing one Venice embed per character. 400ms is the conventional "wait for typing to settle" window - long enough to skip mid-burst, short enough that an intentional pause still feels responsive. Updated the six matching constants together (Chat, WikiList, JournalList, RecipeList, MemoryList, Memories) so the four drawer searches plus the memory-relation picker all share the same window. Updated the comments to spell out the typing-cadence reasoning rather than just "matches the old value" so the next session can adjust without re-deriving 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.
SYNOPSIS
Bump
SEARCH_DEBOUNCE_MSfrom 200ms to 400ms acrossevery search site so a typing burst fires one Venice embed
instead of one-per-character.
PURPOSE
200ms sits inside a typical inter-keystroke interval (~150-250ms
for a moderate typist), so the previous debounce window was firing
mid-burst and queueing one Venice
/embeddingscall percharacter. Bad because it generates pointless embedding load and
flashes the Scanner repeatedly while the user is still typing.
DESCRIPTION
Six sites, all with the same constant
SEARCH_DEBOUNCE_MS = 200:Chat.svelte(thread search)WikiList.svelte,JournalList.svelte,RecipeList.svelte(drawer searches added in Drawer search: loading feedback + relevance ordering everywhere #33)MemoryList.svelte(drawer memory search)Memories.svelte(relation-picker search)All bump to 400ms and the comments now spell out the
typing-cadence reasoning ("moderate typist ~200ms inter-keystroke
interval") rather than just citing the prior value, so the next
session can adjust without re-deriving it.
400ms is the conventional "wait for typing to settle" window -
long enough to skip mid-burst, short enough that an intentional
pause still feels responsive.
Notes:
literals isn't worth the indirection, and the comments make the
shared intent explicit
the old in-modal search used" - that history is no longer the
relevant constraint, replaced with the typing-cadence rationale
Test plan
Scanner cycle / one Venice embed call per burst rather than one
per character
responsive (~400ms to first scan)
mise run checkgreenGenerated by Claude Code