Add rake task to display Semantic Code Search status
## Problem Operators and developers working with Semantic Code Search need a quick way to check the status of the system, similar to the existing `gitlab:elastic:info` and `gitlab:zoekt:info` rake tasks. Currently, there's no standardized command to view: - Whether indexing is enabled and active - Vector store connection status - Repository indexing statistics - Embedding queue sizes ## Proposal Add a `gitlab:semantic_search:code:info` rake task that displays: 1. **Indexing Status** - Indexing enabled (config setting) - Indexing active (checks embedding models are configured) 2. **Connection Information** - Connection name - Adapter type (Elasticsearch/OpenSearch/PostgreSQL) - Active status 3. **Repository Statistics** - Total repositories - Ready, pending, indexing (code/embedding), and failed counts 4. **Embedding Queue Metrics** - Code queue size, shard count, and limit - Backfill queue size, shard count, and limit - Retry queue size - Dead queue size ## Implementation Follow the same pattern as existing search rake tasks: - `ee/lib/tasks/gitlab/semantic_search.rake` - Rake task definition - `ee/lib/search/rake_task/semantic_search.rb` - Module with logger setup - `ee/app/services/search/semantic_search/rake_task_executor_service.rb` - Service implementing the info task Use Rainbow for colored output (green for yes, red for errors, yellow for section headers) to match the Elasticsearch and Zoekt tasks. ## Example Output ``` Semantic Code Search Indexing enabled: yes Indexing active: no Connection: Name: postgres Adapter: ActiveContext::Databases::Postgresql::Adapter Active: yes Repositories Total: 1 Ready: 1 Pending: 0 Code indexing in progress: 0 Embedding indexing in progress: 0 Failed: 0 Embedding Queues Code queue: 5 Shard count: 1 Shard limit: 1000 Backfill queue: 0 Shard count: 1 Shard limit: 1000 Retry queue: 0 Dead queue: 10 ```
issue