Skip to content

fix: macOS dock/UI branding and RAG chat retrieval quality#13

Closed
iLevyTate wants to merge 19 commits intomainfrom
PostDevSeshBugFixes
Closed

fix: macOS dock/UI branding and RAG chat retrieval quality#13
iLevyTate wants to merge 19 commits intomainfrom
PostDevSeshBugFixes

Conversation

@iLevyTate
Copy link
Owner

@iLevyTate iLevyTate commented Feb 14, 2026

Summary

Post-dev-session bug fixes addressing macOS UI issues and RAG/chat retrieval quality.

Fixes #10, Fixes #11

macOS UI (Fixes #10, #11)

  • Dock label & icon: Added productName to package.json, set app.name early in main process, set dock icon via app.dock.setIcon(), and added a postinstall script (patch-electron-mac.js) that patches the Electron binary's Info.plist so macOS shows "StratoSort Core" instead of "Electron"
  • Traffic light overlap: Added left margin to the nav brand on macOS so it clears the close/minimize/maximize buttons; refined phase navigation tab styling with platform-aware CSS (.platform-darwin rules)

RAG / Chat Retrieval Quality

  • Vector fallback: OramaVectorService now always attempts in-memory cosine similarity fallback when primary Orama vector search returns zero results
  • Diagnostics: Added getFileVectorDiagnostics() and throttled zero-vector logging in SearchService for visibility into why retrieval fails
  • Re-ranking: Injected llamaService into SearchService via ServiceIntegration so the re-ranker is available
  • Chunk embeddings: Changed autoChunkOnAnalysis default to true for better out-of-the-box chat depth

How to test

macOS (Issues #10 & #11)

  1. Pull this branch
  2. Run npm install (triggers the Info.plist patch)
  3. Run npm run dev
  4. Verify:
    • Dock label says "StratoSort Core" (not "Electron")
    • Dock icon is the StratoSort logo (not the atom)
    • Traffic light buttons don't overlap the navigation bar
    • Application menu (top-left) says "StratoSort Core"

Chat / RAG

  1. Enable "Auto chunk on analysis" in Settings (if not already on)
  2. Run a "Rebuild Files" to generate chunk embeddings
  3. Use "Chat with your documents" and verify results are relevant
  4. Check logs for [SearchService] Vector DB returned entries — should show non-zero results

…s for vector retrieval

- Improved the fallback mechanism in OramaVectorService to utilize in-memory sidecar vectors for faster retrieval, with a more robust scoring system.
- Introduced a new method, getFileVectorDiagnostics, to diagnose eligibility for primary vector search and provide insights into vector retrieval issues.
- Added logging for zero vector results in SearchService to capture diagnostics and prevent silent failures.
- Updated default settings to enable auto-generating chunk embeddings during file analysis for improved retrieval depth.
Fixes #10, Fixes #11

- Add productName to package.json and set app.name early in main process
- Set macOS dock icon programmatically via app.dock.setIcon
- Add postinstall script to patch Electron.app Info.plist on macOS
- Add left margin on macOS nav bar to avoid traffic light button overlap
- Refine phase navigation tab styling with platform-aware CSS
@iLevyTate iLevyTate changed the title fix(macos): dock name, traffic light overlap, and RAG retrieval improvements fix: macOS dock/UI branding and RAG chat retrieval quality Feb 14, 2026
@iLevyTate iLevyTate assigned iLevyTate and unassigned iLevyTate Feb 14, 2026
- Add Export (Redacted) option to remove file paths and analysis
  content before upload; keeps filenames and error context
- Redacted export excludes crash dumps; full export unchanged
- New logRedaction utility with JSONL and path/analysis redaction
- Document Export (Redacted) vs Export Full for bug reports
- Step-by-step: export from Settings, attach to GitHub issues
- Clarify when to use redacted (default) vs full logs
Initial save uses fallback description; LLM enhancement runs
in background via setImmediate. Update expectations accordingly.
- Save folder immediately with fallback description; enhance via setImmediate
- Reduces ADD latency; user sees folder right away
- Remove obsolete llmEnhanced notification from SetupPhase
- extractDroppedFiles accepts getFilePath option (webUtils for sandbox)
- useDragAndDrop, useFileDrop, UnifiedSearchModal pass getPathForFile
- Fixes empty paths when File.path is unavailable in Electron sandbox
- Use capture phase for keydown so Settings wins over other handlers
- Click outside: don't close panel when Analysis History sub-modal open
- stopImmediatePropagation prevents cascade to Modal/shortcuts
- Replace skip-link with sr-only + focus-visible styles
- Fixed position, high z-index when focused for keyboard users
- Remove obsolete: CODE_QUALITY_STANDARDS, DEPENDENCY_BOUNDARIES,
  DI_PATTERNS, LEARNING_GUIDE, docs/README, migration-audit, assets READMEs
- Update links and references in README, CLAUDE, CONTRIBUTING, etc.
- Add USER_GUIDE.md
- Add Export (Redacted) option to remove file paths and analysis
  content before upload; keeps filenames and error context
- Redacted export excludes crash dumps; full export unchanged
- New logRedaction utility with JSONL and path/analysis redaction
- Document Export (Redacted) vs Export Full for bug reports
- Step-by-step: export from Settings, attach to GitHub issues
- Clarify when to use redacted (default) vs full logs
Initial save uses fallback description; LLM enhancement runs
in background via setImmediate. Update expectations accordingly.
- Save folder immediately with fallback description; enhance via setImmediate
- Reduces ADD latency; user sees folder right away
- Remove obsolete llmEnhanced notification from SetupPhase
- extractDroppedFiles accepts getFilePath option (webUtils for sandbox)
- useDragAndDrop, useFileDrop, UnifiedSearchModal pass getPathForFile
- Fixes empty paths when File.path is unavailable in Electron sandbox
- Use capture phase for keydown so Settings wins over other handlers
- Click outside: don't close panel when Analysis History sub-modal open
- stopImmediatePropagation prevents cascade to Modal/shortcuts
- Replace skip-link with sr-only + focus-visible styles
- Fixed position, high z-index when focused for keyboard users
- Remove obsolete: CODE_QUALITY_STANDARDS, DEPENDENCY_BOUNDARIES,
  DI_PATTERNS, LEARNING_GUIDE, docs/README, migration-audit, assets READMEs
- Update links and references in README, CLAUDE, CONTRIBUTING, etc.
- Add USER_GUIDE.md
iLevyTate added a commit that referenced this pull request Feb 15, 2026
- Add productName and set app.name early; set dock icon via app.dock.setIcon
- Patch Electron Info.plist on macOS via postinstall
- Add left margin on nav bar to avoid traffic light button overlap
- Refine phase navigation tab styling with platform-aware CSS
@iLevyTate iLevyTate closed this in ae80d11 Feb 15, 2026
@iLevyTate iLevyTate deleted the PostDevSeshBugFixes branch February 15, 2026 03:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

on Mac, app name is showing as Electron on Mac, minimize, close, maximize buttons are out of place

1 participant