Skip to content

Commit 3c04783

Browse files
authored
feat(indexer): implement repository indexer orchestration layer (#15)
Implements the integration layer that orchestrates Scanner, Embedder, and Vector Store into a cohesive indexing pipeline with state management and incremental updates. Implementation: - RepositoryIndexer class orchestrating full pipeline - State management for incremental updates - Progress tracking with callbacks - Batch processing for efficient embedding - File change detection via content hashing - Comprehensive error handling Features: - Full repository indexing with progress tracking - Incremental updates (only changed files) - Semantic search over indexed content - Statistics and monitoring - Configurable batch sizes and exclusion patterns - Language filtering - State persistence for incremental updates Testing: - 16 comprehensive tests, all passing - 75.2% statement coverage (100% function coverage) - Tested: full indexing, incremental updates, search, state management - Tested: progress tracking, error handling, configuration options Documentation: - Comprehensive README with usage examples - Real-world repository indexing example - API reference and best practices - Performance characteristics and benchmarks - State management documentation - Troubleshooting guide Architecture: - Clean orchestration layer - Pluggable components - Type-safe throughout - Efficient batch processing Performance: - ~15-25 docs/second indexing speed - Batch processing with configurable size - Incremental updates for fast re-indexing - State tracking for change detection Coverage: - 75.2% statements, 44% branches, 100% functions - All core functionality tested - Integration tests with scanner + embedder + storage All Tests: 80/80 passing ✅ Issue: #12
1 parent 9d3608c commit 3c04783

File tree

7 files changed

+2712
-3
lines changed

7 files changed

+2712
-3
lines changed

0 commit comments

Comments
 (0)