Coverage report: 48%

Files Functions Classes

coverage.py v7.12.0, created at 2026-01-11 07:37 +0000

    Statements   Branches   Total
File   coverage statements missing excluded   coverage branches partial   coverage
src / local_deep_research / __init__.py   100% 6 0 0   100% 0 0   100%
src / local_deep_research / __version__.py   100% 1 0 0   100% 0 0   100%
src / local_deep_research / advanced_search_system / __init__.py   100% 1 0 0   100% 0 0   100%
src / local_deep_research / advanced_search_system / candidate_exploration / __init__.py   100% 7 0 0   100% 0 0   100%
src / local_deep_research / advanced_search_system / candidate_exploration / adaptive_explorer.py   17% 127 105 0   0% 38 0   13%
src / local_deep_research / advanced_search_system / candidate_exploration / base_explorer.py   60% 137 55 0   38% 42 6   55%
src / local_deep_research / advanced_search_system / candidate_exploration / constraint_guided_explorer.py   16% 140 118 0   0% 60 0   11%
src / local_deep_research / advanced_search_system / candidate_exploration / diversity_explorer.py   11% 186 165 0   0% 88 0   8%
src / local_deep_research / advanced_search_system / candidate_exploration / parallel_explorer.py   16% 89 75 0   0% 24 0   12%
src / local_deep_research / advanced_search_system / candidate_exploration / progressive_explorer.py   18% 119 97 0   0% 64 0   12%
src / local_deep_research / advanced_search_system / candidates / __init__.py   100% 2 0 0   100% 0 0   100%
src / local_deep_research / advanced_search_system / candidates / base_candidate.py   38% 37 23 0   0% 14 0   27%
src / local_deep_research / advanced_search_system / constraint_checking / __init__.py   100% 8 0 0   100% 0 0   100%
src / local_deep_research / advanced_search_system / constraint_checking / base_constraint_checker.py   65% 37 13 0   0% 4 0   59%
src / local_deep_research / advanced_search_system / constraint_checking / constraint_checker.py   80% 60 12 0   60% 10 4   77%
src / local_deep_research / advanced_search_system / constraint_checking / dual_confidence_checker.py   13% 116 101 0   0% 34 0   10%
src / local_deep_research / advanced_search_system / constraint_checking / evidence_analyzer.py   62% 61 23 0   38% 8 1   59%
src / local_deep_research / advanced_search_system / constraint_checking / intelligent_constraint_relaxer.py   62% 167 63 0   46% 84 9   57%
src / local_deep_research / advanced_search_system / constraint_checking / rejection_engine.py   86% 35 5 0   60% 10 2   80%
src / local_deep_research / advanced_search_system / constraint_checking / strict_checker.py   14% 78 67 0   0% 28 0   10%
src / local_deep_research / advanced_search_system / constraint_checking / threshold_checker.py   17% 59 49 0   0% 16 0   13%
src / local_deep_research / advanced_search_system / constraints / __init__.py   100% 3 0 0   100% 0 0   100%
src / local_deep_research / advanced_search_system / constraints / base_constraint.py   68% 37 12 0   8% 12 1   53%
src / local_deep_research / advanced_search_system / constraints / constraint_analyzer.py   24% 46 35 0   0% 18 0   17%
src / local_deep_research / advanced_search_system / evidence / __init__.py   100% 4 0 0   100% 0 0   100%
src / local_deep_research / advanced_search_system / evidence / base_evidence.py   87% 30 4 0   0% 2 0   81%
src / local_deep_research / advanced_search_system / evidence / evaluator.py   24% 50 38 0   0% 14 0   19%
src / local_deep_research / advanced_search_system / evidence / requirements.py   64% 11 4 0   100% 0 0   64%
src / local_deep_research / advanced_search_system / filters / __init__.py   100% 2 0 0   100% 0 0   100%
src / local_deep_research / advanced_search_system / filters / base_filter.py   89% 9 1 0   100% 0 0   89%
src / local_deep_research / advanced_search_system / filters / cross_engine_filter.py   98% 94 2 0   81% 54 10   92%
src / local_deep_research / advanced_search_system / filters / followup_relevance_filter.py   14% 51 44 0   0% 14 0   11%
src / local_deep_research / advanced_search_system / filters / journal_reputation_filter.py   26% 111 82 0   0% 22 0   22%
src / local_deep_research / advanced_search_system / findings / base_findings.py   79% 19 4 0   100% 0 0   79%
src / local_deep_research / advanced_search_system / findings / repository.py   17% 189 156 0   1% 72 1   13%
src / local_deep_research / advanced_search_system / knowledge / __init__.py   100% 0 0 0   100% 0 0   100%
src / local_deep_research / advanced_search_system / knowledge / base_knowledge.py   54% 37 17 0   0% 6 0   47%
src / local_deep_research / advanced_search_system / knowledge / followup_context_manager.py   16% 109 92 0   0% 44 0   11%
src / local_deep_research / advanced_search_system / knowledge / standard_knowledge.py   23% 44 34 0   0% 6 0   20%
src / local_deep_research / advanced_search_system / questions / __init__.py   100% 8 0 0   100% 0 0   100%
src / local_deep_research / advanced_search_system / questions / atomic_fact_question.py   16% 44 37 0   0% 24 0   10%
src / local_deep_research / advanced_search_system / questions / base_question.py   53% 15 7 0   0% 4 0   42%
src / local_deep_research / advanced_search_system / questions / browsecomp_question.py   9% 151 138 0   0% 106 0   5%
src / local_deep_research / advanced_search_system / questions / decomposition_question.py   6% 133 125 0   0% 88 0   4%
src / local_deep_research / advanced_search_system / questions / entity_aware_question.py   14% 49 42 0   0% 16 0   11%
src / local_deep_research / advanced_search_system / questions / flexible_browsecomp_question.py   0% 26 26 0   0% 14 0   0%
src / local_deep_research / advanced_search_system / questions / followup / __init__.py   100% 3 0 0   100% 0 0   100%
src / local_deep_research / advanced_search_system / questions / followup / base_followup_question.py   64% 14 5 0   100% 0 0   64%
src / local_deep_research / advanced_search_system / questions / followup / llm_followup_question.py   0% 11 11 0   100% 0 0   0%
src / local_deep_research / advanced_search_system / questions / followup / simple_followup_question.py   57% 7 3 0   100% 0 0   57%
src / local_deep_research / advanced_search_system / questions / news_question.py   46% 13 7 0   0% 2 0   40%
src / local_deep_research / advanced_search_system / questions / standard_question.py   49% 41 21 0   17% 12 2   42%
src / local_deep_research / advanced_search_system / repositories / __init__.py   0% 2 2 0   100% 0 0   0%
src / local_deep_research / advanced_search_system / tools / __init__.py   100% 0 0 0   100% 0 0   100%
src / local_deep_research / advanced_search_system / tools / base_tool.py   97% 36 1 0   92% 12 1   96%
src / local_deep_research / advanced_search_system / tools / knowledge_tools / __init__.py   100% 0 0 0   100% 0 0   100%
src / local_deep_research / advanced_search_system / tools / question_tools / __init__.py   100% 0 0 0   100% 0 0   100%
src / local_deep_research / advanced_search_system / tools / search_tools / __init__.py   100% 0 0 0   100% 0 0   100%
src / local_deep_research / api / __init__.py   100% 5 0 0   100% 0 0   100%
src / local_deep_research / api / benchmark_functions.py   0% 83 83 0   0% 30 0   0%
src / local_deep_research / api / client.py   15% 130 110 0   0% 50 0   11%
src / local_deep_research / api / research_functions.py   66% 182 61 0   63% 82 12   66%
src / local_deep_research / api / settings_utils.py   78% 139 31 0   72% 72 8   76%
src / local_deep_research / benchmarks / __init__.py   100% 6 0 0   100% 0 0   100%
src / local_deep_research / benchmarks / benchmark_functions.py   0% 131 131 0   0% 78 0   0%
src / local_deep_research / benchmarks / comparison / __init__.py   100% 3 0 0   100% 0 0   100%
src / local_deep_research / benchmarks / comparison / evaluator.py   7% 301 280 0   0% 82 0   5%
src / local_deep_research / benchmarks / comparison / results.py   29% 28 20 0   0% 6 0   24%
src / local_deep_research / benchmarks / datasets.py   0% 2 2 0   100% 0 0   0%
src / local_deep_research / benchmarks / datasets / __init__.py   83% 12 2 0   100% 0 0   83%
src / local_deep_research / benchmarks / datasets / base.py   39% 97 59 0   5% 20 1   33%
src / local_deep_research / benchmarks / datasets / browsecomp.py   27% 51 37 0   0% 14 0   22%
src / local_deep_research / benchmarks / datasets / custom_dataset_template.py   0% 25 25 0   0% 6 0   0%
src / local_deep_research / benchmarks / datasets / simpleqa.py   52% 25 12 0   0% 6 0   42%
src / local_deep_research / benchmarks / datasets / utils.py   62% 63 24 0   62% 16 2   62%
src / local_deep_research / benchmarks / datasets / xbench_deepsearch.py   17% 99 82 0   0% 22 0   14%
src / local_deep_research / benchmarks / efficiency / __init__.py   100% 3 0 0   100% 0 0   100%
src / local_deep_research / benchmarks / efficiency / resource_monitor.py   16% 133 112 0   0% 38 0   12%
src / local_deep_research / benchmarks / efficiency / speed_profiler.py   19% 85 69 0   0% 30 0   14%
src / local_deep_research / benchmarks / evaluators / __init__.py   100% 5 0 0   100% 0 0   100%
src / local_deep_research / benchmarks / evaluators / base.py   60% 15 6 0   100% 0 0   60%
src / local_deep_research / benchmarks / evaluators / browsecomp.py   39% 18 11 0   100% 0 0   39%
src / local_deep_research / benchmarks / evaluators / composite.py   23% 31 24 0   0% 6 0   19%
src / local_deep_research / benchmarks / evaluators / simpleqa.py   19% 69 56 0   0% 4 0   18%
src / local_deep_research / benchmarks / graders.py   39% 193 118 0   23% 62 4   35%
src / local_deep_research / benchmarks / metrics.py   0% 3 3 0   100% 0 0   0%
src / local_deep_research / benchmarks / metrics / __init__.py   100% 3 0 0   100% 0 0   100%
src / local_deep_research / benchmarks / metrics / calculation.py   63% 126 46 0   79% 38 2   67%
src / local_deep_research / benchmarks / metrics / reporting.py   100% 54 0 0   96% 26 1   99%
src / local_deep_research / benchmarks / models / __init__.py   0% 2 2 0   100% 0 0   0%
src / local_deep_research / benchmarks / optimization / __init__.py   100% 4 0 0   100% 0 0   100%
src / local_deep_research / benchmarks / optimization / api.py   44% 18 10 0   100% 0 0   44%
src / local_deep_research / benchmarks / optimization / metrics.py   100% 2 0 0   100% 0 0   100%
src / local_deep_research / benchmarks / optimization / optuna_optimizer.py   11% 346 309 0   0% 78 0   9%
src / local_deep_research / benchmarks / runners.py   14% 122 105 0   0% 42 0   10%
src / local_deep_research / benchmarks / templates.py   100% 3 0 0   100% 0 0   100%
src / local_deep_research / benchmarks / ui / __init__.py   100% 0 0 0   100% 0 0   100%
src / local_deep_research / benchmarks / web_api / __init__.py   100% 3 0 0   100% 0 0   100%
src / local_deep_research / benchmarks / web_api / benchmark_routes.py   32% 336 229 0   10% 88 9   27%
src / local_deep_research / benchmarks / web_api / benchmark_service.py   11% 484 430 0   0% 134 0   9%
src / local_deep_research / citation_handler.py   100% 35 0 0   100% 10 0   100%
src / local_deep_research / citation_handlers / __init__.py   100% 5 0 0   100% 0 0   100%
src / local_deep_research / citation_handlers / base_citation_handler.py   95% 43 2 0   94% 16 1   95%
src / local_deep_research / citation_handlers / forced_answer_citation_handler.py   100% 52 0 0   100% 16 0   100%
src / local_deep_research / citation_handlers / precision_extraction_handler.py   90% 204 21 0   76% 84 20   86%
src / local_deep_research / citation_handlers / standard_citation_handler.py   100% 26 0 0   100% 4 0   100%
src / local_deep_research / config / __init__.py   100% 0 0 0   100% 0 0   100%
src / local_deep_research / config / llm_config.py   59% 377 155 0   53% 140 28   57%
src / local_deep_research / config / paths.py   83% 60 10 0   100% 2 0   84%
src / local_deep_research / config / search_config.py   100% 27 0 0   90% 10 1   97%
src / local_deep_research / config / thread_settings.py   100% 43 0 0   100% 26 0   100%
src / local_deep_research / constants.py   100% 3 0 0   100% 0 0   100%
src / local_deep_research / database / auth_db.py   96% 27 1 0   75% 4 1   94%
src / local_deep_research / database / credential_store_base.py   95% 41 2 0   90% 10 1   94%
src / local_deep_research / database / encrypted_db.py   78% 259 58 0   67% 54 14   76%
src / local_deep_research / database / initialize.py   71% 80 23 0   72% 18 3   71%
src / local_deep_research / database / library_init.py   67% 63 21 0   75% 8 0   68%
src / local_deep_research / database / models / __init__.py   100% 21 0 0   100% 0 0   100%
src / local_deep_research / database / models / active_research.py   94% 17 1 0   100% 0 0   94%
src / local_deep_research / database / models / auth.py   100% 18 0 0   100% 0 0   100%
src / local_deep_research / database / models / base.py   100% 2 0 0   100% 0 0   100%
src / local_deep_research / database / models / benchmark.py   100% 101 0 0   100% 0 0   100%
src / local_deep_research / database / models / cache.py   92% 49 4 0   75% 4 1   91%
src / local_deep_research / database / models / download_tracker.py   89% 47 5 0   100% 0 0   89%
src / local_deep_research / database / models / file_integrity.py   95% 39 2 0   100% 0 0   95%
src / local_deep_research / database / models / library.py   95% 306 15 0   100% 0 0   95%
src / local_deep_research / database / models / logs.py   92% 24 2 0   100% 0 0   92%
src / local_deep_research / database / models / metrics.py   96% 96 4 0   100% 0 0   96%
src / local_deep_research / database / models / news.py   99% 111 1 0   100% 0 0   99%
src / local_deep_research / database / models / providers.py   93% 14 1 0   100% 0 0   93%
src / local_deep_research / database / models / queue.py   100% 27 0 0   100% 0 0   100%
src / local_deep_research / database / models / queued_research.py   94% 16 1 0   100% 0 0   94%
src / local_deep_research / database / models / rate_limiting.py   93% 30 2 0   100% 0 0   93%
src / local_deep_research / database / models / reports.py   96% 53 2 0   100% 0 0   96%
src / local_deep_research / database / models / research.py   95% 133 6 0   100% 0 0   95%
src / local_deep_research / database / models / settings.py   95% 56 3 0   100% 0 0   95%
src / local_deep_research / database / models / user_news_search_history.py   86% 14 2 0   100% 0 0   86%
src / local_deep_research / database / queue_service.py   31% 70 48 0   12% 16 2   28%
src / local_deep_research / database / session_context.py   56% 97 43 0   61% 36 4   57%
src / local_deep_research / database / session_passwords.py   91% 23 2 0   100% 0 0   91%
src / local_deep_research / database / sqlcipher_compat.py   67% 6 2 0   100% 0 0   67%
src / local_deep_research / database / sqlcipher_utils.py   73% 73 20 0   50% 6 1   71%
src / local_deep_research / database / temp_auth.py   92% 24 2 0   100% 2 0   92%
src / local_deep_research / database / thread_local_session.py   66% 77 26 0   38% 16 2   61%
src / local_deep_research / database / thread_metrics.py   82% 49 9 0   81% 16 3   82%
src / local_deep_research / defaults / __init__.py   37% 19 12 0   0% 8 0   26%
src / local_deep_research / domain_classifier / __init__.py   89% 9 1 0   75% 4 1   85%
src / local_deep_research / domain_classifier / classifier.py   48% 158 82 0   30% 44 5   44%
src / local_deep_research / domain_classifier / models.py   94% 18 1 0   100% 0 0   94%
src / local_deep_research / embeddings / __init__.py   100% 2 0 0   100% 0 0   100%
src / local_deep_research / embeddings / embeddings_config.py   67% 49 16 0   38% 16 4   60%
src / local_deep_research / embeddings / providers / __init__.py   100% 2 0 0   100% 0 0   100%
src / local_deep_research / embeddings / providers / base.py   94% 31 2 0   100% 2 0   94%
src / local_deep_research / embeddings / providers / implementations / __init__.py   100% 4 0 0   100% 0 0   100%
src / local_deep_research / embeddings / providers / implementations / ollama.py   93% 41 3 0   100% 4 0   93%
src / local_deep_research / embeddings / providers / implementations / openai.py   28% 61 44 0   0% 20 0   21%
src / local_deep_research / embeddings / providers / implementations / sentence_transformers.py   86% 28 4 0   50% 4 2   81%
src / local_deep_research / embeddings / splitters / __init__.py   100% 2 0 0   100% 0 0   100%
src / local_deep_research / embeddings / splitters / text_splitter_registry.py   18% 38 31 0   0% 16 0   13%
src / local_deep_research / error_handling / __init__.py   100% 3 0 0   100% 0 0   100%
src / local_deep_research / error_handling / error_reporter.py   91% 81 7 0   83% 24 2   90%
src / local_deep_research / error_handling / report_generator.py   100% 106 0 0   91% 54 5   97%
src / local_deep_research / followup_research / __init__.py   100% 3 0 0   100% 0 0   100%
src / local_deep_research / followup_research / models.py   95% 22 1 0   100% 0 0   95%
src / local_deep_research / followup_research / routes.py   13% 92 80 0   0% 16 0   11%
src / local_deep_research / followup_research / service.py   56% 50 22 0   30% 10 3   52%
src / local_deep_research / library / download_management / __init__.py   100% 5 0 0   100% 0 0   100%
src / local_deep_research / library / download_management / failure_classifier.py   68% 75 24 0   41% 32 5   60%
src / local_deep_research / library / download_management / filters / __init__.py   100% 2 0 0   100% 0 0   100%
src / local_deep_research / library / download_management / filters / resource_filter.py   34% 32 21 0   0% 6 0   29%
src / local_deep_research / library / download_management / models / __init__.py   97% 37 1 0   100% 0 0   97%
src / local_deep_research / library / download_management / retry_manager.py   46% 99 53 0   21% 24 1   41%
src / local_deep_research / library / download_management / status_tracker.py   13% 119 104 0   0% 42 0   9%
src / local_deep_research / llm / __init__.py   100% 2 0 0   100% 0 0   100%
src / local_deep_research / llm / llm_registry.py   100% 49 0 0   100% 4 0   100%
src / local_deep_research / llm / providers / __init__.py   100% 5 0 0   100% 0 0   100%
src / local_deep_research / llm / providers / auto_discovery.py   92% 107 9 0   87% 38 5   90%
src / local_deep_research / llm / providers / implementations / anthropic.py   52% 50 24 0   0% 6 0   46%
src / local_deep_research / llm / providers / implementations / custom_openai_endpoint.py   91% 35 3 0   100% 0 0   91%
src / local_deep_research / llm / providers / implementations / google.py   53% 51 24 0   10% 10 1   46%
src / local_deep_research / llm / providers / implementations / ionos.py   92% 25 2 0   100% 0 0   92%
src / local_deep_research / llm / providers / implementations / lmstudio.py   62% 45 17 0   100% 0 0   62%
src / local_deep_research / llm / providers / implementations / ollama.py   90% 122 12 0   78% 32 7   88%
src / local_deep_research / llm / providers / implementations / openai.py   32% 80 54 0   0% 16 0   27%
src / local_deep_research / llm / providers / implementations / openrouter.py   92% 24 2 0   100% 0 0   92%
src / local_deep_research / llm / providers / implementations / xai.py   92% 24 2 0   100% 0 0   92%
src / local_deep_research / llm / providers / openai_base.py   84% 121 19 0   78% 36 4   83%
src / local_deep_research / metrics / __init__.py   100% 4 0 0   100% 0 0   100%
src / local_deep_research / metrics / database.py   100% 33 0 0   100% 8 0   100%
src / local_deep_research / metrics / pricing / __init__.py   100% 4 0 0   100% 0 0   100%
src / local_deep_research / metrics / pricing / cost_calculator.py   96% 79 3 0   92% 24 2   95%
src / local_deep_research / metrics / pricing / pricing_cache.py   96% 51 2 0   100% 16 0   97%
src / local_deep_research / metrics / pricing / pricing_fetcher.py   72% 106 30 0   67% 48 6   70%
src / local_deep_research / metrics / query_utils.py   100% 22 0 0   100% 14 0   100%
src / local_deep_research / metrics / search_tracker.py   91% 123 11 0   81% 32 6   89%
src / local_deep_research / metrics / token_counter.py   64% 506 184 0   49% 204 50   59%
src / local_deep_research / news / __init__.py   100% 6 0 0   100% 0 0   100%
src / local_deep_research / news / api.py   24% 417 318 0   4% 140 4   19%
src / local_deep_research / news / core / __init__.py   100% 0 0 0   100% 0 0   100%
src / local_deep_research / news / core / base_card.py   62% 147 56 0   0% 10 0   58%
src / local_deep_research / news / core / card_factory.py   33% 102 68 0   9% 22 2   29%
src / local_deep_research / news / core / card_storage.py   20% 108 86 0   0% 26 0   16%
src / local_deep_research / news / core / news_analyzer.py   29% 161 114 0   21% 56 4   27%
src / local_deep_research / news / core / relevance_service.py   98% 52 1 0   83% 30 5   93%
src / local_deep_research / news / core / search_integration.py   40% 52 31 0   33% 6 2   40%
src / local_deep_research / news / core / storage.py   69% 121 37 0   100% 0 0   69%
src / local_deep_research / news / core / storage_manager.py   0% 180 180 0   0% 48 0   0%
src / local_deep_research / news / core / utils.py   29% 35 25 0   0% 8 0   23%
src / local_deep_research / news / exceptions.py   98% 55 1 0   83% 6 1   97%
src / local_deep_research / news / flask_api.py   18% 642 529 0   0% 134 0   15%
src / local_deep_research / news / folder_manager.py   18% 82 67 0   0% 26 0   14%
src / local_deep_research / news / preference_manager / __init__.py   100% 0 0 0   100% 0 0   100%
src / local_deep_research / news / preference_manager / base_preference.py   31% 70 48 0   0% 14 0   26%
src / local_deep_research / news / preference_manager / storage.py   0% 98 98 0   0% 32 0   0%
src / local_deep_research / news / rating_system / __init__.py   100% 0 0 0   100% 0 0   100%
src / local_deep_research / news / rating_system / base_rater.py   48% 77 40 0   0% 14 0   41%
src / local_deep_research / news / rating_system / storage.py   0% 92 92 0   0% 32 0   0%
src / local_deep_research / news / recommender / __init__.py   100% 0 0 0   100% 0 0   100%
src / local_deep_research / news / recommender / base_recommender.py   29% 63 45 0   0% 20 0   22%
src / local_deep_research / news / recommender / topic_based.py   16% 94 79 0   0% 28 0   12%
src / local_deep_research / news / subscription_manager / __init__.py   100% 5 0 0   100% 0 0   100%
src / local_deep_research / news / subscription_manager / base_subscription.py   29% 86 61 0   0% 10 0   26%
src / local_deep_research / news / subscription_manager / scheduler.py   27% 586 429 0   15% 144 13   24%
src / local_deep_research / news / subscription_manager / search_subscription.py   31% 62 43 0   0% 12 0   26%
src / local_deep_research / news / subscription_manager / storage.py   18% 122 100 0   0% 36 0   14%
src / local_deep_research / news / subscription_manager / topic_subscription.py   28% 75 54 0   0% 16 0   23%
src / local_deep_research / news / utils / __init__.py   100% 0 0 0   100% 0 0   100%
src / local_deep_research / news / utils / headline_generator.py   100% 26 0 0   100% 6 0   100%
src / local_deep_research / news / utils / topic_generator.py   100% 61 0 0   89% 28 3   97%
src / local_deep_research / news / web.py   32% 72 49 0   0% 8 0   29%
src / local_deep_research / notifications / __init__.py   100% 8 0 0   100% 0 0   100%
src / local_deep_research / notifications / exceptions.py   100% 8 0 0   100% 0 0   100%
src / local_deep_research / notifications / manager.py   94% 149 9 0   86% 36 5   92%
src / local_deep_research / notifications / queue_helpers.py   14% 99 85 0   0% 18 0   12%
src / local_deep_research / notifications / service.py   84% 86 14 0   58% 24 6   78%
src / local_deep_research / notifications / templates.py   53% 85 40 0   38% 16 4   50%
src / local_deep_research / notifications / url_builder.py   89% 27 3 0   88% 8 1   89%
src / local_deep_research / report_generator.py   82% 120 21 0   65% 48 9   77%
src / local_deep_research / research_library / __init__.py   100% 7 0 0   100% 0 0   100%
src / local_deep_research / research_library / deletion / __init__.py   100% 4 0 0   100% 0 0   100%
src / local_deep_research / research_library / deletion / routes / __init__.py   100% 2 0 0   100% 0 0   100%
src / local_deep_research / research_library / deletion / routes / delete_routes.py   25% 157 117 0   0% 30 0   21%
src / local_deep_research / research_library / deletion / services / __init__.py   100% 4 0 0   100% 0 0   100%
src / local_deep_research / research_library / deletion / services / bulk_deletion.py   94% 67 4 0   86% 22 3   92%
src / local_deep_research / research_library / deletion / services / collection_deletion.py   95% 77 4 0   92% 12 1   94%
src / local_deep_research / research_library / deletion / services / document_deletion.py   71% 119 35 0   65% 26 3   70%
src / local_deep_research / research_library / deletion / utils / __init__.py   100% 2 0 0   100% 0 0   100%
src / local_deep_research / research_library / deletion / utils / cascade_helper.py   86% 126 18 0   81% 32 2   85%
src / local_deep_research / research_library / downloaders / __init__.py   100% 9 0 0   100% 0 0   100%
src / local_deep_research / research_library / downloaders / arxiv.py   77% 107 25 0   54% 50 11   69%
src / local_deep_research / research_library / downloaders / base.py   86% 121 17 0   85% 26 2   86%
src / local_deep_research / research_library / downloaders / biorxiv.py   60% 94 38 0   40% 40 12   54%
src / local_deep_research / research_library / downloaders / direct_pdf.py   56% 59 26 0   36% 28 6   49%
src / local_deep_research / research_library / downloaders / generic.py   82% 85 15 0   75% 36 5   80%
src / local_deep_research / research_library / downloaders / openalex.py   66% 88 30 0   54% 26 8   63%
src / local_deep_research / research_library / downloaders / pubmed.py   52% 269 130 0   35% 130 19   46%
src / local_deep_research / research_library / downloaders / semantic_scholar.py   70% 71 21 0   55% 20 5   67%
src / local_deep_research / research_library / routes / __init__.py   100% 0 0 0   100% 0 0   100%
src / local_deep_research / research_library / routes / library_routes.py   18% 562 462 0   0% 142 0   14%
src / local_deep_research / research_library / routes / rag_routes.py   17% 1017 847 0   6% 252 2   15%
src / local_deep_research / research_library / services / __init__.py   100% 0 0 0   100% 0 0   100%
src / local_deep_research / research_library / services / download_service.py   24% 613 467 0   17% 190 7   22%
src / local_deep_research / research_library / services / library_rag_service.py   30% 431 302 2   17% 130 12   27%
src / local_deep_research / research_library / services / library_service.py   34% 242 160 0   16% 74 4   30%
src / local_deep_research / research_library / services / pdf_storage_manager.py   84% 171 28 0   74% 62 10   81%
src / local_deep_research / research_library / utils / __init__.py   28% 58 42 0   0% 12 0   23%
src / local_deep_research / research_scheduler / document_scheduler.py   100% 28 0 0   100% 4 0   100%
src / local_deep_research / research_scheduler / routes.py   100% 32 0 0   100% 6 0   100%
src / local_deep_research / search_system.py   86% 98 14 0   57% 30 11   79%
src / local_deep_research / search_system_factory.py   13% 144 125 0   12% 82 8   13%
src / local_deep_research / security / __init__.py   61% 28 11 0   100% 0 0   61%
src / local_deep_research / security / data_sanitizer.py   100% 27 0 0   100% 12 0   100%
src / local_deep_research / security / file_integrity / __init__.py   100% 5 0 0   100% 0 0   100%
src / local_deep_research / security / file_integrity / base_verifier.py   65% 26 9 0   0% 2 0   61%
src / local_deep_research / security / file_integrity / integrity_manager.py   14% 201 172 0   0% 66 0   11%
src / local_deep_research / security / file_integrity / verifiers / __init__.py   100% 2 0 0   100% 0 0   100%
src / local_deep_research / security / file_integrity / verifiers / faiss_verifier.py   67% 9 3 0   100% 0 0   67%
src / local_deep_research / security / file_upload_validator.py   100% 62 0 0   100% 24 0   100%
src / local_deep_research / security / file_write_verifier.py   44% 41 23 0   14% 14 2   36%
src / local_deep_research / security / network_utils.py   100% 11 0 0   100% 4 0   100%
src / local_deep_research / security / notification_validator.py   95% 62 3 0   96% 26 1   95%
src / local_deep_research / security / path_validator.py   66% 131 44 0   56% 72 12   63%
src / local_deep_research / security / rate_limiter.py   84% 37 6 0   75% 8 0   82%
src / local_deep_research / security / safe_requests.py   100% 63 0 0   83% 24 4   95%
src / local_deep_research / security / security_headers.py   87% 75 10 0   55% 22 6   79%
src / local_deep_research / security / ssrf_validator.py   76% 79 19 0   80% 30 2   77%
src / local_deep_research / security / url_builder.py   52% 66 32 0   38% 24 1   48%
src / local_deep_research / security / url_validator.py   90% 120 12 0   93% 60 4   91%
src / local_deep_research / settings / __init__.py   100% 3 0 0   100% 0 0   100%
src / local_deep_research / settings / base.py   71% 24 7 0   100% 0 0   71%
src / local_deep_research / settings / env_definitions / __init__.py   100% 7 0 0   100% 0 0   100%
src / local_deep_research / settings / env_definitions / bootstrap.py   100% 2 0 0   100% 0 0   100%
src / local_deep_research / settings / env_definitions / db_config.py   100% 2 0 0   100% 0 0   100%
src / local_deep_research / settings / env_definitions / news_scheduler.py   100% 2 0 0   100% 0 0   100%
src / local_deep_research / settings / env_definitions / security.py   100% 4 0 0   100% 0 0   100%
src / local_deep_research / settings / env_definitions / testing.py   100% 6 0 0   100% 0 0   100%
src / local_deep_research / settings / env_registry.py   87% 31 4 0   75% 4 1   86%
src / local_deep_research / settings / env_settings.py   88% 145 18 0   62% 34 9   83%
src / local_deep_research / settings / logger.py   25% 53 40 0   7% 30 2   18%
src / local_deep_research / settings / manager.py   56% 343 150 0   49% 144 20   54%
src / local_deep_research / storage / __init__.py   100% 5 0 0   100% 0 0   100%
src / local_deep_research / storage / base.py   72% 18 5 0   100% 0 0   72%
src / local_deep_research / storage / database.py   95% 63 3 0   100% 12 0   96%
src / local_deep_research / storage / database_with_file_backup.py   98% 40 1 0   100% 8 0   98%
src / local_deep_research / storage / factory.py   100% 23 0 0   100% 4 0   100%
src / local_deep_research / storage / file.py   96% 67 3 0   100% 12 0   96%
src / local_deep_research / text_optimization / __init__.py   100% 2 0 0   100% 0 0   100%
src / local_deep_research / text_optimization / citation_formatter.py   94% 433 25 0   89% 166 15   93%
src / local_deep_research / text_processing / __init__.py   100% 2 0 0   100% 0 0   100%
src / local_deep_research / text_processing / text_cleaner.py   67% 9 3 0   100% 2 0   73%
src / local_deep_research / utilities / __init__.py   100% 0 0 0   100% 0 0   100%
src / local_deep_research / utilities / db_utils.py   91% 78 7 0   82% 22 2   89%
src / local_deep_research / utilities / enums.py   100% 9 0 0   100% 0 0   100%
src / local_deep_research / utilities / es_utils.py   88% 122 15 0   87% 30 0   88%
src / local_deep_research / utilities / llm_utils.py   81% 109 21 0   97% 36 1   85%
src / local_deep_research / utilities / log_utils.py   85% 124 19 0   69% 26 2   82%
src / local_deep_research / utilities / search_cache.py   83% 221 38 0   78% 40 7   82%
src / local_deep_research / utilities / search_utilities.py   94% 138 8 0   93% 56 4   94%
src / local_deep_research / utilities / setup_utils.py   0% 3 3 0   100% 0 0   0%
src / local_deep_research / utilities / thread_context.py   74% 34 9 0   75% 8 0   74%
src / local_deep_research / utilities / threading_utils.py   100% 42 0 0   100% 8 0   100%
src / local_deep_research / utilities / url_utils.py   100% 19 0 0   100% 10 0   100%
src / local_deep_research / web / __init__.py   100% 0 0 0   100% 0 0   100%
src / local_deep_research / web / api.py   55% 161 72 0   39% 36 8   52%
src / local_deep_research / web / app.py   21% 38 30 0   17% 6 1   20%
src / local_deep_research / web / app_factory.py   87% 343 45 0   72% 46 11   85%
src / local_deep_research / web / auth / __init__.py   100% 3 0 0   100% 0 0   100%
src / local_deep_research / web / auth / cleanup_middleware.py   65% 34 12 0   100% 10 0   73%
src / local_deep_research / web / auth / database_middleware.py   90% 40 4 0   75% 24 6   84%
src / local_deep_research / web / auth / decorators.py   82% 45 8 0   78% 18 2   81%
src / local_deep_research / web / auth / middleware_optimizer.py   92% 25 2 0   88% 16 2   90%
src / local_deep_research / web / auth / queue_middleware.py   90% 20 2 0   75% 8 2   86%
src / local_deep_research / web / auth / queue_middleware_v2.py   79% 19 4 0   75% 8 2   78%
src / local_deep_research / web / auth / routes.py   85% 243 37 0   65% 84 21   80%
src / local_deep_research / web / auth / session_cleanup.py   45% 20 11 0   30% 10 1   40%
src / local_deep_research / web / auth / session_manager.py   100% 54 0 0   100% 18 0   100%
src / local_deep_research / web / models / database.py   48% 79 41 0   50% 14 7   48%
src / local_deep_research / web / models / settings.py   82% 57 10 0   12% 8 1   74%
src / local_deep_research / web / queue / __init__.py   100% 3 0 0   100% 0 0   100%
src / local_deep_research / web / queue / manager.py   19% 79 64 0   0% 16 0   16%
src / local_deep_research / web / queue / processor_v2.py   52% 281 136 0   47% 66 11   51%
src / local_deep_research / web / routes / api_routes.py   77% 211 49 0   77% 30 7   77%
src / local_deep_research / web / routes / context_overflow_api.py   14% 101 87 0   0% 38 0   10%
src / local_deep_research / web / routes / globals.py   100% 5 0 0   100% 0 0   100%
src / local_deep_research / web / routes / history_routes.py   45% 199 109 0   21% 38 8   41%
src / local_deep_research / web / routes / metrics_routes.py   52% 687 332 0   30% 182 43   47%
src / local_deep_research / web / routes / news_routes.py   20% 154 123 0   0% 4 0   20%
src / local_deep_research / web / routes / research_routes.py   48% 677 352 0   33% 190 43   45%
src / local_deep_research / web / routes / settings_routes.py   41% 913 537 0   19% 326 27   35%
src / local_deep_research / web / server_config.py   83% 48 8 0   50% 18 9   74%
src / local_deep_research / web / services / pdf_extraction_service.py   100% 44 0 0   100% 12 0   100%
src / local_deep_research / web / services / pdf_service.py   100% 45 0 0   100% 10 0   100%
src / local_deep_research / web / services / research_service.py   50% 676 335 0   40% 192 41   48%
src / local_deep_research / web / services / research_sources_service.py   87% 91 12 0   91% 22 2   88%
src / local_deep_research / web / services / resource_service.py   100% 52 0 0   100% 6 0   100%
src / local_deep_research / web / services / settings_manager.py   62% 289 111 0   47% 114 18   58%
src / local_deep_research / web / services / settings_service.py   35% 31 20 0   0% 6 0   30%
src / local_deep_research / web / services / socket_service.py   88% 108 13 0   86% 28 2   88%
src / local_deep_research / web / utils / __init__.py   100% 0 0 0   100% 0 0   100%
src / local_deep_research / web / utils / formatters.py   87% 23 3 0   100% 4 0   89%
src / local_deep_research / web / utils / rate_limiter.py   95% 20 1 0   75% 4 1   92%
src / local_deep_research / web / utils / templates.py   100% 7 0 0   100% 0 0   100%
src / local_deep_research / web / utils / vite_helper.py   67% 46 15 0   33% 18 6   58%
src / local_deep_research / web_search_engines / __init__.py   100% 0 0 0   100% 0 0   100%
src / local_deep_research / web_search_engines / default_search_engines.py   0% 4 4 0   100% 0 0   0%
src / local_deep_research / web_search_engines / engines / __init__.py   100% 0 0 0   100% 0 0   100%
src / local_deep_research / web_search_engines / engines / full_search.py   37% 73 46 0   0% 16 0   30%
src / local_deep_research / web_search_engines / engines / meta_search_engine.py   8% 193 177 0   0% 90 0   6%
src / local_deep_research / web_search_engines / engines / parallel_search_engine.py   22% 292 228 0   7% 126 5   17%
src / local_deep_research / web_search_engines / engines / search_engine_arxiv.py   37% 157 99 0   13% 38 3   32%
src / local_deep_research / web_search_engines / engines / search_engine_brave.py   70% 92 28 0   56% 34 5   66%
src / local_deep_research / web_search_engines / engines / search_engine_collection.py   16% 91 76 0   0% 20 0   14%
src / local_deep_research / web_search_engines / engines / search_engine_ddg.py   0% 46 46 0   0% 14 0   0%
src / local_deep_research / web_search_engines / engines / search_engine_elasticsearch.py   75% 114 28 0   74% 34 3   75%
src / local_deep_research / web_search_engines / engines / search_engine_github.py   12% 320 280 0   2% 108 0   10%
src / local_deep_research / web_search_engines / engines / search_engine_google_pse.py   74% 128 33 0   76% 34 4   75%
src / local_deep_research / web_search_engines / engines / search_engine_guardian.py   47% 243 128 0   33% 82 13   44%
src / local_deep_research / web_search_engines / engines / search_engine_library.py   14% 126 108 0   0% 38 0   11%
src / local_deep_research / web_search_engines / engines / search_engine_local.py   34% 553 363 0   17% 206 26   30%
src / local_deep_research / web_search_engines / engines / search_engine_local_all.py   17% 63 52 0   0% 22 0   13%
src / local_deep_research / web_search_engines / engines / search_engine_nasa_ads.py   87% 130 17 0   77% 44 8   84%
src / local_deep_research / web_search_engines / engines / search_engine_openalex.py   86% 157 22 0   72% 58 12   82%
src / local_deep_research / web_search_engines / engines / search_engine_paperless.py   83% 295 49 0   73% 98 18   81%
src / local_deep_research / web_search_engines / engines / search_engine_pubmed.py   14% 707 606 0   2% 354 1   10%
src / local_deep_research / web_search_engines / engines / search_engine_retriever.py   100% 57 0 0   100% 12 0   100%
src / local_deep_research / web_search_engines / engines / search_engine_scaleserp.py   66% 137 47 0   52% 60 13   61%
src / local_deep_research / web_search_engines / engines / search_engine_searxng.py   88% 204 24 0   78% 60 11   86%
src / local_deep_research / web_search_engines / engines / search_engine_semantic_scholar.py   47% 240 128 0   24% 92 12   40%
src / local_deep_research / web_search_engines / engines / search_engine_serpapi.py   73% 79 21 0   63% 30 5   71%
src / local_deep_research / web_search_engines / engines / search_engine_serper.py   75% 138 35 0   66% 58 12   72%
src / local_deep_research / web_search_engines / engines / search_engine_tavily.py   76% 108 26 0   61% 38 7   72%
src / local_deep_research / web_search_engines / engines / search_engine_wayback.py   85% 199 29 0   80% 54 7   84%
src / local_deep_research / web_search_engines / engines / search_engine_wikinews.py   61% 163 64 0   45% 42 3   58%
src / local_deep_research / web_search_engines / engines / search_engine_wikipedia.py   97% 115 3 0   91% 22 2   96%
src / local_deep_research / web_search_engines / rate_limiting / __init__.py   100% 3 0 0   100% 0 0   100%
src / local_deep_research / web_search_engines / rate_limiting / __main__.py   0% 3 3 0   0% 2 0   0%
src / local_deep_research / web_search_engines / rate_limiting / exceptions.py   100% 6 0 0   100% 0 0   100%
src / local_deep_research / web_search_engines / rate_limiting / llm / __init__.py   100% 3 0 0   100% 0 0   100%
src / local_deep_research / web_search_engines / rate_limiting / llm / detection.py   72% 43 12 0   62% 24 5   69%
src / local_deep_research / web_search_engines / rate_limiting / llm / wrapper.py   50% 94 47 0   17% 30 5   42%
src / local_deep_research / web_search_engines / rate_limiting / tracker.py   72% 288 81 0   60% 100 22   69%
src / local_deep_research / web_search_engines / retriever_registry.py   100% 37 0 0   75% 4 1   98%
src / local_deep_research / web_search_engines / search_engine_base.py   91% 257 22 0   89% 70 6   91%
src / local_deep_research / web_search_engines / search_engine_factory.py   52% 222 107 0   39% 134 24   47%
src / local_deep_research / web_search_engines / search_engines_config.py   78% 95 21 0   82% 34 6   79%
Total   51% 36775 17931 2   36% 10884 1073   48%

No items found using the specified filter.