Coverage report: 30%

Files Functions Classes

coverage.py v7.10.1, created at 2026-01-10 00:20 -0500

File function statements missing excluded coverage
mcp_bridge/tools/__init__.py (no function) 9 0 0 100%
mcp_bridge/tools/agent_manager.py get_agent_emoji 2 0 0 100%
mcp_bridge/tools/agent_manager.py get_model_emoji 1 1 0 0%
mcp_bridge/tools/agent_manager.py colorize_agent_spawn_message 3 0 0 100%
mcp_bridge/tools/agent_manager.py AgentManager.__init__ 12 2 0 83%
mcp_bridge/tools/agent_manager.py AgentManager._load_tasks 8 1 0 88%
mcp_bridge/tools/agent_manager.py AgentManager._save_tasks 2 0 0 100%
mcp_bridge/tools/agent_manager.py AgentManager._update_task 5 0 0 100%
mcp_bridge/tools/agent_manager.py AgentManager.get_task 2 0 0 100%
mcp_bridge/tools/agent_manager.py AgentManager.list_tasks 5 1 0 80%
mcp_bridge/tools/agent_manager.py AgentManager.spawn 9 0 0 100%
mcp_bridge/tools/agent_manager.py AgentManager._execute_agent 3 0 0 100%
mcp_bridge/tools/agent_manager.py AgentManager._execute_agent.run_agent 53 16 0 70%
mcp_bridge/tools/agent_manager.py AgentManager._notify_completion 9 6 0 33%
mcp_bridge/tools/agent_manager.py AgentManager.get_pending_notifications 2 2 0 0%
mcp_bridge/tools/agent_manager.py AgentManager.cancel 18 10 0 44%
mcp_bridge/tools/agent_manager.py AgentManager.stop_all 13 1 0 92%
mcp_bridge/tools/agent_manager.py AgentManager.get_output 28 16 0 43%
mcp_bridge/tools/agent_manager.py AgentManager.get_progress 47 44 0 6%
mcp_bridge/tools/agent_manager.py get_manager 5 0 0 100%
mcp_bridge/tools/agent_manager.py agent_spawn 13 0 1 100%
mcp_bridge/tools/agent_manager.py agent_output 2 0 0 100%
mcp_bridge/tools/agent_manager.py agent_retry 9 5 0 44%
mcp_bridge/tools/agent_manager.py agent_cancel 8 2 0 75%
mcp_bridge/tools/agent_manager.py agent_list 14 1 0 93%
mcp_bridge/tools/agent_manager.py agent_progress 2 0 0 100%
mcp_bridge/tools/agent_manager.py (no function) 88 0 0 100%
mcp_bridge/tools/background_tasks.py BackgroundManager.__init__ 9 9 0 0%
mcp_bridge/tools/background_tasks.py BackgroundManager._load_tasks 5 5 0 0%
mcp_bridge/tools/background_tasks.py BackgroundManager._save_tasks 2 2 0 0%
mcp_bridge/tools/background_tasks.py BackgroundManager.create_task 7 7 0 0%
mcp_bridge/tools/background_tasks.py BackgroundManager.update_task 4 4 0 0%
mcp_bridge/tools/background_tasks.py BackgroundManager.get_task 2 2 0 0%
mcp_bridge/tools/background_tasks.py BackgroundManager.list_tasks 2 2 0 0%
mcp_bridge/tools/background_tasks.py BackgroundManager.spawn 10 10 0 0%
mcp_bridge/tools/background_tasks.py task_spawn 4 4 0 0%
mcp_bridge/tools/background_tasks.py task_status 10 10 0 0%
mcp_bridge/tools/background_tasks.py task_list 8 8 0 0%
mcp_bridge/tools/background_tasks.py (no function) 31 0 0 100%
mcp_bridge/tools/code_search.py lsp_diagnostics 26 26 0 0%
mcp_bridge/tools/code_search.py check_ai_comment_patterns 21 21 0 0%
mcp_bridge/tools/code_search.py ast_grep_search 30 30 0 0%
mcp_bridge/tools/code_search.py grep_search 22 22 0 0%
mcp_bridge/tools/code_search.py glob_files 19 19 0 0%
mcp_bridge/tools/code_search.py ast_grep_replace 43 43 0 0%
mcp_bridge/tools/code_search.py (no function) 9 0 0 100%
mcp_bridge/tools/continuous_loop.py enable_ralph_loop 14 14 0 0%
mcp_bridge/tools/continuous_loop.py disable_ralph_loop 13 13 0 0%
mcp_bridge/tools/continuous_loop.py (no function) 6 0 0 100%
mcp_bridge/tools/init.py bootstrap_repo 20 20 0 0%
mcp_bridge/tools/init.py (no function) 5 5 0 0%
mcp_bridge/tools/lsp/__init__.py (no function) 3 3 0 0%
mcp_bridge/tools/lsp/manager.py LSPManager.__new__ 3 3 0 0%
mcp_bridge/tools/lsp/manager.py LSPManager.__init__ 8 8 0 0%
mcp_bridge/tools/lsp/manager.py LSPManager._register_servers 2 2 0 0%
mcp_bridge/tools/lsp/manager.py LSPManager.get_server 23 23 0 0%
mcp_bridge/tools/lsp/manager.py LSPManager._start_server 37 37 0 0%
mcp_bridge/tools/lsp/manager.py LSPManager._restart_with_backoff 14 14 0 0%
mcp_bridge/tools/lsp/manager.py LSPManager._health_check_server 13 13 0 0%
mcp_bridge/tools/lsp/manager.py LSPManager._shutdown_single_server 28 28 0 0%
mcp_bridge/tools/lsp/manager.py LSPManager._background_health_monitor 27 27 0 0%
mcp_bridge/tools/lsp/manager.py LSPManager.get_status 7 7 0 0%
mcp_bridge/tools/lsp/manager.py LSPManager.shutdown 12 12 0 0%
mcp_bridge/tools/lsp/manager.py get_lsp_manager 5 5 0 0%
mcp_bridge/tools/lsp/manager.py (no function) 36 36 0 0%
mcp_bridge/tools/lsp/tools.py _get_language_for_file 3 3 0 0%
mcp_bridge/tools/lsp/tools.py _get_client_and_params 17 17 0 0%
mcp_bridge/tools/lsp/tools.py lsp_hover 35 35 0 0%
mcp_bridge/tools/lsp/tools.py lsp_goto_definition 42 42 0 0%
mcp_bridge/tools/lsp/tools.py lsp_find_references 37 37 0 0%
mcp_bridge/tools/lsp/tools.py lsp_document_symbols 36 36 0 0%
mcp_bridge/tools/lsp/tools.py lsp_document_symbols.process_symbols 11 11 0 0%
mcp_bridge/tools/lsp/tools.py lsp_workspace_symbols 41 41 0 0%
mcp_bridge/tools/lsp/tools.py lsp_prepare_rename 24 24 0 0%
mcp_bridge/tools/lsp/tools.py lsp_rename 41 41 0 0%
mcp_bridge/tools/lsp/tools.py _apply_workspace_edit 18 18 0 0%
mcp_bridge/tools/lsp/tools.py lsp_code_actions 43 43 0 0%
mcp_bridge/tools/lsp/tools.py lsp_code_action_resolve 21 21 0 0%
mcp_bridge/tools/lsp/tools.py lsp_extract_refactor 20 20 0 0%
mcp_bridge/tools/lsp/tools.py lsp_servers 13 13 0 0%
mcp_bridge/tools/lsp/tools.py lsp_health 14 14 0 0%
mcp_bridge/tools/lsp/tools.py (no function) 29 29 0 0%
mcp_bridge/tools/model_invoke.py _summarize_prompt 6 2 0 67%
mcp_bridge/tools/model_invoke.py _fetch_codex_instructions 16 16 0 0%
mcp_bridge/tools/model_invoke.py resolve_gemini_model 1 0 0 100%
mcp_bridge/tools/model_invoke.py _get_gemini_rate_limit 3 0 0 100%
mcp_bridge/tools/model_invoke.py _get_gemini_semaphore 5 0 0 100%
mcp_bridge/tools/model_invoke.py _get_session_id 5 0 0 100%
mcp_bridge/tools/model_invoke.py clear_session_cache 1 1 0 0%
mcp_bridge/tools/model_invoke.py _get_http_client 3 0 0 100%
mcp_bridge/tools/model_invoke.py _extract_gemini_response 23 23 0 0%
mcp_bridge/tools/model_invoke.py _ensure_valid_token 18 14 0 22%
mcp_bridge/tools/model_invoke.py is_retryable_exception 3 0 0 100%
mcp_bridge/tools/model_invoke.py _invoke_gemini_with_api_key 31 17 0 45%
mcp_bridge/tools/model_invoke.py invoke_gemini 105 48 0 54%
mcp_bridge/tools/model_invoke.py _execute_tool 34 34 0 0%
mcp_bridge/tools/model_invoke.py _invoke_gemini_agentic_with_api_key 45 45 0 0%
mcp_bridge/tools/model_invoke.py invoke_gemini_agentic 68 68 0 0%
mcp_bridge/tools/model_invoke.py invoke_openai 77 77 0 0%
mcp_bridge/tools/model_invoke.py (no function) 42 0 0 100%
mcp_bridge/tools/project_context.py get_project_context 39 39 0 0%
mcp_bridge/tools/project_context.py get_system_health 22 22 0 0%
mcp_bridge/tools/project_context.py (no function) 8 8 0 0%
mcp_bridge/tools/query_classifier.py classify_query 60 3 0 95%
mcp_bridge/tools/query_classifier.py (no function) 24 0 0 100%
mcp_bridge/tools/semantic_search.py get_watchdog 7 0 0 100%
mcp_bridge/tools/semantic_search.py get_filelock 6 0 0 100%
mcp_bridge/tools/semantic_search.py get_chromadb 12 5 0 58%
mcp_bridge/tools/semantic_search.py get_ollama 6 6 0 0%
mcp_bridge/tools/semantic_search.py get_httpx 6 6 0 0%
mcp_bridge/tools/semantic_search.py get_pathspec 6 6 0 0%
mcp_bridge/tools/semantic_search.py GitIgnoreManager.get_instance 6 6 0 0%
mcp_bridge/tools/semantic_search.py GitIgnoreManager.clear_cache 5 5 0 0%
mcp_bridge/tools/semantic_search.py GitIgnoreManager.__init__ 5 5 0 0%
mcp_bridge/tools/semantic_search.py GitIgnoreManager._get_file_mtime 4 4 0 0%
mcp_bridge/tools/semantic_search.py GitIgnoreManager._needs_reload 11 11 0 0%
mcp_bridge/tools/semantic_search.py GitIgnoreManager._load_patterns 27 27 0 0%
mcp_bridge/tools/semantic_search.py GitIgnoreManager.spec 4 4 0 0%
mcp_bridge/tools/semantic_search.py GitIgnoreManager.is_ignored 11 11 0 0%
mcp_bridge/tools/semantic_search.py GitIgnoreManager.filter_paths 1 1 0 0%
mcp_bridge/tools/semantic_search.py BaseEmbeddingProvider.get_embedding 1 1 0 0%
mcp_bridge/tools/semantic_search.py BaseEmbeddingProvider.check_available 1 1 0 0%
mcp_bridge/tools/semantic_search.py BaseEmbeddingProvider.dimension 1 1 0 0%
mcp_bridge/tools/semantic_search.py BaseEmbeddingProvider.name 1 1 0 0%
mcp_bridge/tools/semantic_search.py OllamaProvider.__init__ 1 0 0 100%
mcp_bridge/tools/semantic_search.py OllamaProvider.dimension 1 1 0 0%
mcp_bridge/tools/semantic_search.py OllamaProvider.name 1 1 0 0%
mcp_bridge/tools/semantic_search.py OllamaProvider.check_available 16 16 0 0%
mcp_bridge/tools/semantic_search.py OllamaProvider.get_embedding 4 4 0 0%
mcp_bridge/tools/semantic_search.py GeminiProvider.__init__ 2 2 0 0%
mcp_bridge/tools/semantic_search.py GeminiProvider._get_token_store 4 4 0 0%
mcp_bridge/tools/semantic_search.py GeminiProvider.dimension 1 1 0 0%
mcp_bridge/tools/semantic_search.py GeminiProvider.name 1 1 0 0%
mcp_bridge/tools/semantic_search.py GeminiProvider.check_available 15 15 0 0%
mcp_bridge/tools/semantic_search.py GeminiProvider.get_embedding 33 33 0 0%
mcp_bridge/tools/semantic_search.py OpenAIProvider.__init__ 2 2 0 0%
mcp_bridge/tools/semantic_search.py OpenAIProvider._get_token_store 4 4 0 0%
mcp_bridge/tools/semantic_search.py OpenAIProvider.dimension 1 1 0 0%
mcp_bridge/tools/semantic_search.py OpenAIProvider.name 1 1 0 0%
mcp_bridge/tools/semantic_search.py OpenAIProvider.check_available 15 15 0 0%
mcp_bridge/tools/semantic_search.py OpenAIProvider.get_embedding 18 18 0 0%
mcp_bridge/tools/semantic_search.py MxbaiProvider.__init__ 1 0 0 100%
mcp_bridge/tools/semantic_search.py MxbaiProvider.dimension 1 1 0 0%
mcp_bridge/tools/semantic_search.py MxbaiProvider.name 1 1 0 0%
mcp_bridge/tools/semantic_search.py MxbaiProvider.check_available 16 16 0 0%
mcp_bridge/tools/semantic_search.py MxbaiProvider.get_embedding 4 4 0 0%
mcp_bridge/tools/semantic_search.py HuggingFaceProvider.__init__ 4 4 0 0%
mcp_bridge/tools/semantic_search.py HuggingFaceProvider.dimension 1 1 0 0%
mcp_bridge/tools/semantic_search.py HuggingFaceProvider.name 1 1 0 0%
mcp_bridge/tools/semantic_search.py HuggingFaceProvider._get_hf_token 12 12 0 0%
mcp_bridge/tools/semantic_search.py HuggingFaceProvider.check_available 14 14 0 0%
mcp_bridge/tools/semantic_search.py HuggingFaceProvider.get_embedding 29 29 0 0%
mcp_bridge/tools/semantic_search.py HuggingFaceProvider.embed_batch 20 20 0 0%
mcp_bridge/tools/semantic_search.py get_embedding_provider 8 1 0 88%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore._normalize_project_path 11 5 0 55%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore.__init__ 14 0 0 100%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore.file_lock 4 0 0 100%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore.client 19 11 0 42%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore.collection 3 0 0 100%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore.check_embedding_service 1 0 0 100%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore.get_embedding 1 0 0 100%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore.get_embeddings_batch 9 1 0 89%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore.get_embeddings_batch.get_with_semaphore 3 0 0 100%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore._chunk_file 14 2 0 86%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore._chunk_python_ast 33 0 0 100%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore._chunk_python_ast.get_docstring 6 0 0 100%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore._chunk_python_ast.get_decorators 12 9 0 25%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore._chunk_python_ast.get_base_classes 8 5 0 38%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore._chunk_python_ast.get_return_type 3 1 0 67%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore._chunk_python_ast.get_parameters 7 1 0 86%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore._chunk_python_ast.add_chunk 15 0 0 100%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore._chunk_by_lines 12 1 0 92%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore._load_whitelist 29 26 0 10%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore._get_files_to_index 33 8 0 76%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore.request_cancel_indexing 3 3 0 0%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore.clear_cancel_flag 2 0 0 100%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore.is_cancellation_requested 2 0 0 100%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore.index_codebase 89 29 0 67%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore.search 52 39 0 25%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore.get_stats 5 2 0 60%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore.start_watching 8 8 0 0%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore.stop_watching 6 6 0 0%
mcp_bridge/tools/semantic_search.py CodebaseVectorStore.is_watching 4 4 0 0%
mcp_bridge/tools/semantic_search.py _cleanup_watchers 7 7 0 0%
mcp_bridge/tools/semantic_search.py get_store 7 0 0 100%
mcp_bridge/tools/semantic_search.py semantic_search 13 13 0 0%
mcp_bridge/tools/semantic_search.py hybrid_search 37 37 0 0%
mcp_bridge/tools/semantic_search.py index_codebase 7 7 0 0%
mcp_bridge/tools/semantic_search.py cancel_indexing 6 6 0 0%
mcp_bridge/tools/semantic_search.py semantic_stats 5 5 0 0%
mcp_bridge/tools/semantic_search.py delete_index 44 44 0 0%
mcp_bridge/tools/semantic_search.py semantic_health 13 13 0 0%
mcp_bridge/tools/semantic_search.py start_file_watcher 22 22 0 0%
mcp_bridge/tools/semantic_search.py stop_file_watcher 8 4 0 50%
mcp_bridge/tools/semantic_search.py get_file_watcher 6 1 0 83%
mcp_bridge/tools/semantic_search.py list_file_watchers 5 1 0 80%
mcp_bridge/tools/semantic_search.py _expand_query_with_llm 10 10 0 0%
mcp_bridge/tools/semantic_search.py _decompose_query_with_llm 9 9 0 0%
mcp_bridge/tools/semantic_search.py _aggregate_results 21 21 0 0%
mcp_bridge/tools/semantic_search.py multi_query_search 23 23 0 0%
mcp_bridge/tools/semantic_search.py multi_query_search.search_single 1 1 0 0%
mcp_bridge/tools/semantic_search.py decomposed_search 29 29 0 0%
mcp_bridge/tools/semantic_search.py decomposed_search.search_sub 2 2 0 0%
mcp_bridge/tools/semantic_search.py enhanced_search 30 30 0 0%
mcp_bridge/tools/semantic_search.py DedicatedIndexingWorker.__init__ 7 0 0 100%
mcp_bridge/tools/semantic_search.py DedicatedIndexingWorker.start 7 2 0 71%
mcp_bridge/tools/semantic_search.py DedicatedIndexingWorker._log_error 14 4 0 71%
mcp_bridge/tools/semantic_search.py DedicatedIndexingWorker._run_worker 19 10 0 47%
mcp_bridge/tools/semantic_search.py DedicatedIndexingWorker._do_reindex 5 5 0 0%
mcp_bridge/tools/semantic_search.py DedicatedIndexingWorker._do_reindex._indexed 1 1 0 0%
mcp_bridge/tools/semantic_search.py DedicatedIndexingWorker.request_reindex 6 6 0 0%
mcp_bridge/tools/semantic_search.py DedicatedIndexingWorker.shutdown 9 2 0 78%
mcp_bridge/tools/semantic_search.py CodebaseFileWatcher.__init__ 11 0 0 100%
mcp_bridge/tools/semantic_search.py CodebaseFileWatcher.start 21 5 0 76%
mcp_bridge/tools/semantic_search.py CodebaseFileWatcher.stop 12 0 0 100%
mcp_bridge/tools/semantic_search.py CodebaseFileWatcher.is_running 2 0 0 100%
mcp_bridge/tools/semantic_search.py CodebaseFileWatcher._on_file_changed 6 0 0 100%
mcp_bridge/tools/semantic_search.py CodebaseFileWatcher._create_debounce_timer 1 0 0 100%
mcp_bridge/tools/semantic_search.py CodebaseFileWatcher._trigger_reindex 8 8 0 0%
mcp_bridge/tools/semantic_search.py _create_file_change_handler_class 10 0 0 100%
mcp_bridge/tools/semantic_search.py _create_file_change_handler_class._FileChangeHandler.__init__ 3 0 0 100%
mcp_bridge/tools/semantic_search.py _create_file_change_handler_class._FileChangeHandler.on_created 3 0 0 100%
mcp_bridge/tools/semantic_search.py _create_file_change_handler_class._FileChangeHandler.on_modified 3 0 0 100%
mcp_bridge/tools/semantic_search.py _create_file_change_handler_class._FileChangeHandler.on_deleted 3 3 0 0%
mcp_bridge/tools/semantic_search.py _create_file_change_handler_class._FileChangeHandler.on_moved 7 7 0 0%
mcp_bridge/tools/semantic_search.py _create_file_change_handler_class._FileChangeHandler._should_index_file 15 3 0 80%
mcp_bridge/tools/semantic_search.py _is_process_alive 16 16 0 0%
mcp_bridge/tools/semantic_search.py cleanup_stale_chromadb_locks 26 26 0 0%
mcp_bridge/tools/semantic_search.py (no function) 188 0 0 100%
mcp_bridge/tools/session_manager.py get_sessions_directory 1 1 0 0%
mcp_bridge/tools/session_manager.py list_sessions 32 32 0 0%
mcp_bridge/tools/session_manager.py read_session 41 41 0 0%
mcp_bridge/tools/session_manager.py search_sessions 39 39 0 0%
mcp_bridge/tools/session_manager.py get_session_info 34 34 0 0%
mcp_bridge/tools/session_manager.py (no function) 8 0 0 100%
mcp_bridge/tools/skill_loader.py parse_frontmatter 15 15 0 0%
mcp_bridge/tools/skill_loader.py discover_skills 18 18 0 0%
mcp_bridge/tools/skill_loader.py list_skills 10 10 0 0%
mcp_bridge/tools/skill_loader.py get_skill 17 17 0 0%
mcp_bridge/tools/skill_loader.py create_skill 15 15 0 0%
mcp_bridge/tools/skill_loader.py (no function) 8 0 0 100%
mcp_bridge/tools/task_runner.py run_task 50 50 0 0%
mcp_bridge/tools/task_runner.py (no function) 16 16 0 0%
mcp_bridge/tools/templates.py (no function) 10 10 0 0%
Total   3779 2630 1 30%

No items found using the specified filter.