Alert users when the embedding model isn't installed - #60
Conversation
On a fresh install with no model, opening a vault runs the model-free projection pass (keyword index + graph) and then silently stops before embedding: semantic ranking and similar-note discovery are off, with almost no visible sign beyond the small search caveat most users miss. This surfaces that state prominently and closes the download loop. - New pure, tested predicate (embedreminder.ts) gates a dismissible banner under the top bar, shown only when a vault with notes is open, the model is genuinely absent, no download is running, and the user hasn't opted out. - The banner offers Open Settings (the in-app Download), a ✕ that hides it for this session (it returns next launch — a gentle nag), and a "Don't remind me again" checkbox that persists the opt-out in localStorage for users who only want keyword search. - In-app Download now closes the loop: after provisioning, re-read vault_info so the banner and search caveat clear, then auto-embed the vault (#25) so semantic search actually turns on — instead of waiting behind a manual Reindex the user is unlikely to find. Frontend-only; ui test suite, tsc --noEmit, and vite build all green. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EG1R4y2x1WWJ9dyxvzpteq
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (7)
📝 WalkthroughWalkthroughAdds a semantic-search install reminder with tested gating, persistent and session dismissal, banner rendering and styling, delegated controls, and automatic indexing after model download. ChangesEmbedding install reminder
Estimated code review effort: 3 (Moderate) | ~20 minutes Sequence Diagram(s)sequenceDiagram
participant App
participant Banner
participant User
participant ModelProvisioning
participant Indexing
App->>Banner: render gated reminder
Banner-->>User: show install action
User->>ModelProvisioning: open Settings and download model
ModelProvisioning->>Indexing: start automatic indexing
User->>App: dismiss for session or permanently
Possibly related PRs
Suggested reviewers: Poem
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
On a fresh install with no model, opening a vault runs the model-free
projection pass (keyword index + graph) and then silently stops before
embedding: semantic ranking and similar-note discovery are off, with
almost no visible sign beyond the small search caveat most users miss.
This surfaces that state prominently and closes the download loop.
banner under the top bar, shown only when a vault with notes is open,
the model is genuinely absent, no download is running, and the user
hasn't opted out.
it for this session (it returns next launch — a gentle nag), and a
"Don't remind me again" checkbox that persists the opt-out in
localStorage for users who only want keyword search.
vault_info so the banner and search caveat clear, then auto-embed the
vault (Desktop: auto-index a vault on open (project immediately, embed in background) #25) so semantic search actually turns on — instead of waiting
behind a manual Reindex the user is unlikely to find.
Frontend-only; ui test suite, tsc --noEmit, and vite build all green.
Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01EG1R4y2x1WWJ9dyxvzpteq
Summary by CodeRabbit
New Features
Bug Fixes
Tests