Coverage report: 80%

Files Functions Classes

coverage.py v7.15.0, created at 2026-07-20 10:15 +0000

File   statements missing excluded   coverage
src/qdrant_loader_mcp_server/__init__.py   0 0 0   100%
src/qdrant_loader_mcp_server/__main__.py   3 0 0   100%
src/qdrant_loader_mcp_server/cli.py   80 17 0   79%
src/qdrant_loader_mcp_server/config.py   141 33 0   77%
src/qdrant_loader_mcp_server/config_loader.py   145 25 0   83%
src/qdrant_loader_mcp_server/config_reranking.py   7 0 0   100%
src/qdrant_loader_mcp_server/fastmcp_app.py   51 27 0   47%
src/qdrant_loader_mcp_server/fastmcp_tools/__init__.py   11 0 0   100%
src/qdrant_loader_mcp_server/fastmcp_tools/_common.py   11 6 0   45%
src/qdrant_loader_mcp_server/fastmcp_tools/expand.py   21 9 0   57%
src/qdrant_loader_mcp_server/fastmcp_tools/graph.py   11 3 0   73%
src/qdrant_loader_mcp_server/fastmcp_tools/intelligence.py   33 15 0   55%
src/qdrant_loader_mcp_server/fastmcp_tools/search.py   51 25 0   51%
src/qdrant_loader_mcp_server/main.py   5 1 0   80%
src/qdrant_loader_mcp_server/mcp/__init__.py   2 0 0   100%
src/qdrant_loader_mcp_server/mcp/formatters.py   2 0 0   100%
src/qdrant_loader_mcp_server/mcp/formatters/__init__.py   43 0 0   100%
src/qdrant_loader_mcp_server/mcp/formatters/basic.py   67 3 0   96%
src/qdrant_loader_mcp_server/mcp/formatters/intelligence.py   306 101 0   67%
src/qdrant_loader_mcp_server/mcp/formatters/lightweight.py   63 0 0   100%
src/qdrant_loader_mcp_server/mcp/formatters/structured.py   92 47 0   49%
src/qdrant_loader_mcp_server/mcp/formatters/utils.py   226 83 0   63%
src/qdrant_loader_mcp_server/mcp/graph_handler.py   27 1 0   96%
src/qdrant_loader_mcp_server/mcp/handlers/intelligence/__init__.py   3 0 0   100%
src/qdrant_loader_mcp_server/mcp/handlers/intelligence/relationships.py   103 21 0   80%
src/qdrant_loader_mcp_server/mcp/handlers/intelligence/utils.py   52 23 0   56%
src/qdrant_loader_mcp_server/mcp/handlers/search/__init__.py   4 0 0   100%
src/qdrant_loader_mcp_server/mcp/handlers/search/filters.py   101 8 0   92%
src/qdrant_loader_mcp_server/mcp/handlers/search/formatting.py   39 2 0   95%
src/qdrant_loader_mcp_server/mcp/handlers/search/organize.py   29 0 0   100%
src/qdrant_loader_mcp_server/mcp/intelligence_handler.py   303 101 0   67%
src/qdrant_loader_mcp_server/mcp/protocol.py   66 5 0   92%
src/qdrant_loader_mcp_server/mcp/search_handler.py   241 17 0   93%
src/qdrant_loader_mcp_server/search/__init__.py   0 0 0   100%
src/qdrant_loader_mcp_server/search/components/__init__.py   8 0 0   100%
src/qdrant_loader_mcp_server/search/components/combining/__init__.py   4 0 0   100%
src/qdrant_loader_mcp_server/search/components/combining/filters.py   34 9 0   74%
src/qdrant_loader_mcp_server/search/components/combining/flatten.py   75 30 0   60%
src/qdrant_loader_mcp_server/search/components/combining/scoring_boosts.py   139 12 0   91%
src/qdrant_loader_mcp_server/search/components/field_query_parser.py   87 2 2   98%
src/qdrant_loader_mcp_server/search/components/keyword_search_service.py   106 7 2   93%
src/qdrant_loader_mcp_server/search/components/metadata_extractor.py   161 44 0   73%
src/qdrant_loader_mcp_server/search/components/models/__init__.py   13 0 0   100%
src/qdrant_loader_mcp_server/search/components/models/attachment.py   13 0 0   100%
src/qdrant_loader_mcp_server/search/components/models/base.py   16 0 0   100%
src/qdrant_loader_mcp_server/search/components/models/chunking.py   7 0 0   100%
src/qdrant_loader_mcp_server/search/components/models/content.py   12 0 0   100%
src/qdrant_loader_mcp_server/search/components/models/conversion.py   8 0 0   100%
src/qdrant_loader_mcp_server/search/components/models/cross_reference.py   7 0 0   100%
src/qdrant_loader_mcp_server/search/components/models/hierarchy.py   10 0 0   100%
src/qdrant_loader_mcp_server/search/components/models/hybrid.py   382 76 15   80%
src/qdrant_loader_mcp_server/search/components/models/navigation.py   9 0 0   100%
src/qdrant_loader_mcp_server/search/components/models/project.py   8 0 0   100%
src/qdrant_loader_mcp_server/search/components/models/section.py   10 0 0   100%
src/qdrant_loader_mcp_server/search/components/models/semantic.py   8 0 0   100%
src/qdrant_loader_mcp_server/search/components/query_processor.py   95 30 0   68%
src/qdrant_loader_mcp_server/search/components/result_combiner.py   175 19 0   89%
src/qdrant_loader_mcp_server/search/components/search_result_models.py   2 0 0   100%
src/qdrant_loader_mcp_server/search/components/vector_search_service.py   183 13 3   93%
src/qdrant_loader_mcp_server/search/engine.py   5 0 0   100%
src/qdrant_loader_mcp_server/search/engine/__init__.py   12 1 3   92%
src/qdrant_loader_mcp_server/search/engine/core.py   324 58 7   82%
src/qdrant_loader_mcp_server/search/engine/faceted.py   110 40 2   64%
src/qdrant_loader_mcp_server/search/engine/intelligence.py   216 102 2   53%
src/qdrant_loader_mcp_server/search/engine/search.py   20 1 2   95%
src/qdrant_loader_mcp_server/search/engine/strategies.py   79 16 2   80%
src/qdrant_loader_mcp_server/search/engine/topic_chain.py   104 22 2   79%
src/qdrant_loader_mcp_server/search/enhanced/__init__.py   7 0 0   100%
src/qdrant_loader_mcp_server/search/enhanced/cdi/__init__.py   2 0 0   100%
src/qdrant_loader_mcp_server/search/enhanced/cdi/analyzers.py   314 52 0   83%
src/qdrant_loader_mcp_server/search/enhanced/cdi/calculators.py   95 7 0   93%
src/qdrant_loader_mcp_server/search/enhanced/cdi/citations.py   91 30 0   67%
src/qdrant_loader_mcp_server/search/enhanced/cdi/conflict_pairing.py   101 55 9   46%
src/qdrant_loader_mcp_server/search/enhanced/cdi/conflict_resolution.py   54 21 0   61%
src/qdrant_loader_mcp_server/search/enhanced/cdi/conflict_scoring.py   86 31 6   64%
src/qdrant_loader_mcp_server/search/enhanced/cdi/detectors.py   254 81 2   68%
src/qdrant_loader_mcp_server/search/enhanced/cdi/engine.py   201 91 2   55%
src/qdrant_loader_mcp_server/search/enhanced/cdi/extractors/__init__.py   0 0 0   100%
src/qdrant_loader_mcp_server/search/enhanced/cdi/extractors/clustering.py   14 2 0   86%
src/qdrant_loader_mcp_server/search/enhanced/cdi/extractors/conflicts.py   10 0 0   100%
src/qdrant_loader_mcp_server/search/enhanced/cdi/extractors/graph.py   14 6 0   57%
src/qdrant_loader_mcp_server/search/enhanced/cdi/extractors/recommendation.py   10 0 0   100%
src/qdrant_loader_mcp_server/search/enhanced/cdi/extractors/similarity.py   14 1 0   93%
src/qdrant_loader_mcp_server/search/enhanced/cdi/extractors/similarity_helpers.py   175 59 0   66%
src/qdrant_loader_mcp_server/search/enhanced/cdi/finders.py   271 13 2   95%
src/qdrant_loader_mcp_server/search/enhanced/cdi/graph/__init__.py   0 0 0   100%
src/qdrant_loader_mcp_server/search/enhanced/cdi/interfaces.py   14 0 33   100%
src/qdrant_loader_mcp_server/search/enhanced/cdi/legacy_adapters.py   69 23 0   67%
src/qdrant_loader_mcp_server/search/enhanced/cdi/llm_validation.py   127 56 9   56%
src/qdrant_loader_mcp_server/search/enhanced/cdi/models.py   126 1 0   99%
src/qdrant_loader_mcp_server/search/enhanced/cdi/pipeline.py   52 29 0   44%
src/qdrant_loader_mcp_server/search/enhanced/cdi/rankers/__init__.py   0 0 0   100%
src/qdrant_loader_mcp_server/search/enhanced/cdi/rankers/default.py   6 1 0   83%
src/qdrant_loader_mcp_server/search/enhanced/cdi/utils.py   119 28 0   76%
src/qdrant_loader_mcp_server/search/enhanced/cross_document_intelligence.py   12 2 0   83%
src/qdrant_loader_mcp_server/search/enhanced/faceted_search.py   336 54 0   84%
src/qdrant_loader_mcp_server/search/enhanced/intent/__init__.py   4 0 0   100%
src/qdrant_loader_mcp_server/search/enhanced/intent/classifier.py   211 19 6   91%
src/qdrant_loader_mcp_server/search/enhanced/intent/models.py   58 3 2   95%
src/qdrant_loader_mcp_server/search/enhanced/intent/strategy.py   108 9 3   92%
src/qdrant_loader_mcp_server/search/enhanced/intent_classifier.py   2 0 0   100%
src/qdrant_loader_mcp_server/search/enhanced/kg/__init__.py   6 0 0   100%
src/qdrant_loader_mcp_server/search/enhanced/kg/builder.py   182 18 3   90%
src/qdrant_loader_mcp_server/search/enhanced/kg/document_graph.py   137 59 3   57%
src/qdrant_loader_mcp_server/search/enhanced/kg/extractors.py   52 1 0   98%
src/qdrant_loader_mcp_server/search/enhanced/kg/graph.py   122 39 0   68%
src/qdrant_loader_mcp_server/search/enhanced/kg/models.py   73 4 0   95%
src/qdrant_loader_mcp_server/search/enhanced/kg/traverser.py   131 7 3   95%
src/qdrant_loader_mcp_server/search/enhanced/kg/utils.py   64 17 0   73%
src/qdrant_loader_mcp_server/search/enhanced/knowledge_graph.py   2 0 0   100%
src/qdrant_loader_mcp_server/search/enhanced/topic_search_chain.py   299 9 0   97%
src/qdrant_loader_mcp_server/search/hybrid/__init__.py   1 0 0   100%
src/qdrant_loader_mcp_server/search/hybrid/adapters.py   36 11 0   69%
src/qdrant_loader_mcp_server/search/hybrid/api.py   202 47 5   77%
src/qdrant_loader_mcp_server/search/hybrid/components/__init__.py   7 0 0   100%
src/qdrant_loader_mcp_server/search/hybrid/components/boosting.py   23 5 0   78%
src/qdrant_loader_mcp_server/search/hybrid/components/builder.py   199 63 0   68%
src/qdrant_loader_mcp_server/search/hybrid/components/cluster_quality.py   81 3 0   96%
src/qdrant_loader_mcp_server/search/hybrid/components/combining.py   9 0 0   100%
src/qdrant_loader_mcp_server/search/hybrid/components/cross_encoder_reranker.py   85 10 2   88%
src/qdrant_loader_mcp_server/search/hybrid/components/deduplication.py   29 8 0   72%
src/qdrant_loader_mcp_server/search/hybrid/components/diversity.py   38 6 0   84%
src/qdrant_loader_mcp_server/search/hybrid/components/document_lookup.py   87 28 0   68%
src/qdrant_loader_mcp_server/search/hybrid/components/facets.py   18 5 2   72%
src/qdrant_loader_mcp_server/search/hybrid/components/helpers.py   25 1 0   96%
src/qdrant_loader_mcp_server/search/hybrid/components/metadata.py   62 16 0   74%
src/qdrant_loader_mcp_server/search/hybrid/components/normalization.py   12 0 0   100%
src/qdrant_loader_mcp_server/search/hybrid/components/relationships.py   94 18 0   81%
src/qdrant_loader_mcp_server/search/hybrid/components/reranking.py   23 5 0   78%
src/qdrant_loader_mcp_server/search/hybrid/components/scoring.py   23 2 0   91%
src/qdrant_loader_mcp_server/search/hybrid/engine.py   46 8 0   83%
src/qdrant_loader_mcp_server/search/hybrid/interfaces.py   11 0 11   100%
src/qdrant_loader_mcp_server/search/hybrid/models.py   23 0 0   100%
src/qdrant_loader_mcp_server/search/hybrid/orchestration/__init__.py   3 0 0   100%
src/qdrant_loader_mcp_server/search/hybrid/orchestration/cdi.py   42 4 0   90%
src/qdrant_loader_mcp_server/search/hybrid/orchestration/clustering.py   49 9 0   82%
src/qdrant_loader_mcp_server/search/hybrid/orchestration/facets.py   14 0 0   100%
src/qdrant_loader_mcp_server/search/hybrid/orchestration/orchestrator.py   5 0 0   100%
src/qdrant_loader_mcp_server/search/hybrid/orchestration/planner.py   9 0 0   100%
src/qdrant_loader_mcp_server/search/hybrid/orchestration/relationships.py   49 5 0   90%
src/qdrant_loader_mcp_server/search/hybrid/orchestration/search.py   52 0 0   100%
src/qdrant_loader_mcp_server/search/hybrid/orchestration/topic_chain.py   42 7 0   83%
src/qdrant_loader_mcp_server/search/hybrid/pipeline.py   51 4 0   92%
src/qdrant_loader_mcp_server/search/hybrid_search.py   6 0 0   100%
src/qdrant_loader_mcp_server/search/models.py   196 12 0   94%
src/qdrant_loader_mcp_server/search/nlp/__init__.py   4 0 0   100%
src/qdrant_loader_mcp_server/search/nlp/linguistic_preprocessor.py   128 9 0   93%
src/qdrant_loader_mcp_server/search/nlp/semantic_expander.py   167 25 0   85%
src/qdrant_loader_mcp_server/search/nlp/spacy_analyzer.py   183 12 0   93%
src/qdrant_loader_mcp_server/search/processor.py   94 24 0   74%
src/qdrant_loader_mcp_server/search/sparse_config.py   27 13 0   52%
src/qdrant_loader_mcp_server/utils/__init__.py   3 0 0   100%
src/qdrant_loader_mcp_server/utils/logging.py   77 27 2   65%
src/qdrant_loader_mcp_server/utils/version.py   22 7 0   68%
Total   11163 2277 147   80%

No items found using the specified filter.