Roo-Code/src/services/code-index/interfaces
Roo Code b1b8bf3b92 feat: auto-detect embedding dimension during validation
This change addresses issue #10991 where users can configure incorrect
embedding dimensions, causing Qdrant to reject vector upserts with
dimension mismatches.

Changes:
- Updated IEmbedder interface to include optional detectedDimension in
  validation result
- All 8 embedders now return the detected dimension from their test
  embedding during validation
- Updated CodeIndexServiceFactory.createVectorStore() to accept and
  prioritize auto-detected dimension over profile-based and manual
  configuration
- Updated CodeIndexManager._recreateServices() to pass detected
  dimension from validation to vector store creation
- Added comprehensive tests for the new functionality

Priority order for dimension selection:
1. Auto-detected from test embedding (most reliable)
2. Profile-based from getModelDimension()
3. Manual configuration from modelDimension setting

Fixes #10991
2026-01-27 05:45:35 +00:00
..
cache.ts Codebase indexing (Clean history) (#3137) 2025-05-23 19:07:19 -06:00
config.ts feat: Add provider routing selection for OpenRouter embeddings (#9144) (#9693) 2025-12-02 22:59:55 -05:00
embedder.ts feat: auto-detect embedding dimension during validation 2026-01-27 05:45:35 +00:00
file-processor.ts fix: resolve DirectoryScanner memory leak and improve file limit handling (#5785) 2025-07-16 15:06:26 -04:00
index.ts Codebase indexing (Clean history) (#3137) 2025-05-23 19:07:19 -06:00
manager.ts Feature/bedrock embeddings support (#9475) 2025-11-26 08:58:58 -05:00
vector-store.ts Fix: Enhanced codebase index recovery and reuse ('Start Indexing' button now reuses existing Qdrant index) (#8588) 2025-10-30 15:59:51 -04:00