local-deep-research 0.5.6__tar.gz → 0.5.9__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (339) hide show
  1. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/PKG-INFO +1 -1
  2. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/pyproject.toml +1 -1
  3. local_deep_research-0.5.9/src/local_deep_research/__version__.py +1 -0
  4. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/focused_iteration_strategy.py +2 -1
  5. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/defaults/default_settings.json +1 -1
  6. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/report_generator.py +3 -2
  7. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/js/components/research.js +62 -87
  8. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/js/components/settings.js +1 -1
  9. local_deep_research-0.5.6/src/local_deep_research/__version__.py +0 -1
  10. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/LICENSE +0 -0
  11. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/README.md +0 -0
  12. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/__init__.py +0 -0
  13. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/__init__.py +0 -0
  14. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/answer_decoding/__init__.py +0 -0
  15. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/answer_decoding/browsecomp_answer_decoder.py +0 -0
  16. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/candidate_exploration/README.md +0 -0
  17. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/candidate_exploration/__init__.py +0 -0
  18. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/candidate_exploration/adaptive_explorer.py +0 -0
  19. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/candidate_exploration/base_explorer.py +0 -0
  20. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/candidate_exploration/constraint_guided_explorer.py +0 -0
  21. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/candidate_exploration/diversity_explorer.py +0 -0
  22. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/candidate_exploration/parallel_explorer.py +0 -0
  23. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/candidate_exploration/progressive_explorer.py +0 -0
  24. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/candidates/__init__.py +0 -0
  25. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/candidates/base_candidate.py +0 -0
  26. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/constraint_checking/README.md +0 -0
  27. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/constraint_checking/__init__.py +0 -0
  28. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/constraint_checking/base_constraint_checker.py +0 -0
  29. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/constraint_checking/constraint_checker.py +0 -0
  30. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/constraint_checking/constraint_satisfaction_tracker.py +0 -0
  31. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/constraint_checking/dual_confidence_checker.py +0 -0
  32. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/constraint_checking/evidence_analyzer.py +0 -0
  33. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/constraint_checking/intelligent_constraint_relaxer.py +0 -0
  34. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/constraint_checking/rejection_engine.py +0 -0
  35. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/constraint_checking/strict_checker.py +0 -0
  36. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/constraint_checking/threshold_checker.py +0 -0
  37. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/constraints/__init__.py +0 -0
  38. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/constraints/base_constraint.py +0 -0
  39. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/constraints/constraint_analyzer.py +0 -0
  40. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/evidence/__init__.py +0 -0
  41. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/evidence/base_evidence.py +0 -0
  42. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/evidence/evaluator.py +0 -0
  43. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/evidence/requirements.py +0 -0
  44. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/filters/__init__.py +0 -0
  45. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/filters/base_filter.py +0 -0
  46. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/filters/cross_engine_filter.py +0 -0
  47. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/filters/journal_reputation_filter.py +0 -0
  48. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/findings/base_findings.py +0 -0
  49. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/findings/repository.py +0 -0
  50. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/knowledge/__init__.py +0 -0
  51. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/knowledge/base_knowledge.py +0 -0
  52. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/knowledge/standard_knowledge.py +0 -0
  53. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/query_generation/adaptive_query_generator.py +0 -0
  54. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/questions/__init__.py +0 -0
  55. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/questions/atomic_fact_question.py +0 -0
  56. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/questions/base_question.py +0 -0
  57. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/questions/browsecomp_question.py +0 -0
  58. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/questions/decomposition_question.py +0 -0
  59. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/questions/entity_aware_question.py +0 -0
  60. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/questions/standard_question.py +0 -0
  61. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/repositories/__init__.py +0 -0
  62. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/search_optimization/cross_constraint_manager.py +0 -0
  63. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/source_management/diversity_manager.py +0 -0
  64. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/__init__.py +0 -0
  65. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/adaptive_decomposition_strategy.py +0 -0
  66. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/base_strategy.py +0 -0
  67. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/browsecomp_entity_strategy.py +0 -0
  68. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/browsecomp_optimized_strategy.py +0 -0
  69. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/concurrent_dual_confidence_strategy.py +0 -0
  70. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/constrained_search_strategy.py +0 -0
  71. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/constraint_parallel_strategy.py +0 -0
  72. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/direct_search_strategy.py +0 -0
  73. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/dual_confidence_strategy.py +0 -0
  74. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/dual_confidence_with_rejection.py +0 -0
  75. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/early_stop_constrained_strategy.py +0 -0
  76. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/entity_aware_source_strategy.py +0 -0
  77. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/evidence_based_strategy.py +0 -0
  78. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/evidence_based_strategy_v2.py +0 -0
  79. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/improved_evidence_based_strategy.py +0 -0
  80. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/iterative_reasoning_strategy.py +0 -0
  81. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/iterdrag_strategy.py +0 -0
  82. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/llm_driven_modular_strategy.py +0 -0
  83. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/modular_strategy.py +0 -0
  84. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/parallel_constrained_strategy.py +0 -0
  85. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/parallel_search_strategy.py +0 -0
  86. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/rapid_search_strategy.py +0 -0
  87. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/recursive_decomposition_strategy.py +0 -0
  88. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/smart_decomposition_strategy.py +0 -0
  89. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/smart_query_strategy.py +0 -0
  90. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/source_based_strategy.py +0 -0
  91. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/strategies/standard_strategy.py +0 -0
  92. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/tools/__init__.py +0 -0
  93. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/tools/base_tool.py +0 -0
  94. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/tools/knowledge_tools/__init__.py +0 -0
  95. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/tools/question_tools/__init__.py +0 -0
  96. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/advanced_search_system/tools/search_tools/__init__.py +0 -0
  97. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/api/__init__.py +0 -0
  98. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/api/benchmark_functions.py +0 -0
  99. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/api/research_functions.py +0 -0
  100. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/README.md +0 -0
  101. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/__init__.py +0 -0
  102. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/benchmark_functions.py +0 -0
  103. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/cli/__init__.py +0 -0
  104. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/cli/benchmark_commands.py +0 -0
  105. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/cli.py +0 -0
  106. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/comparison/__init__.py +0 -0
  107. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/comparison/evaluator.py +0 -0
  108. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/datasets/__init__.py +0 -0
  109. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/datasets/base.py +0 -0
  110. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/datasets/browsecomp.py +0 -0
  111. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/datasets/custom_dataset_template.py +0 -0
  112. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/datasets/simpleqa.py +0 -0
  113. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/datasets/utils.py +0 -0
  114. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/datasets.py +0 -0
  115. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/efficiency/__init__.py +0 -0
  116. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/efficiency/resource_monitor.py +0 -0
  117. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/efficiency/speed_profiler.py +0 -0
  118. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/evaluators/__init__.py +0 -0
  119. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/evaluators/base.py +0 -0
  120. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/evaluators/browsecomp.py +0 -0
  121. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/evaluators/composite.py +0 -0
  122. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/evaluators/simpleqa.py +0 -0
  123. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/graders.py +0 -0
  124. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/metrics/README.md +0 -0
  125. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/metrics/__init__.py +0 -0
  126. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/metrics/calculation.py +0 -0
  127. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/metrics/reporting.py +0 -0
  128. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/metrics/visualization.py +0 -0
  129. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/metrics.py +0 -0
  130. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/optimization/__init__.py +0 -0
  131. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/optimization/api.py +0 -0
  132. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/optimization/metrics.py +0 -0
  133. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/optimization/optuna_optimizer.py +0 -0
  134. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/runners.py +0 -0
  135. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/benchmarks/templates.py +0 -0
  136. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/citation_handler.py +0 -0
  137. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/citation_handlers/__init__.py +0 -0
  138. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/citation_handlers/base_citation_handler.py +0 -0
  139. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/citation_handlers/forced_answer_citation_handler.py +0 -0
  140. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/citation_handlers/precision_extraction_handler.py +0 -0
  141. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/citation_handlers/standard_citation_handler.py +0 -0
  142. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/config/__init__.py +0 -0
  143. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/config/llm_config.py +0 -0
  144. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/config/search_config.py +0 -0
  145. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/defaults/.env.template +0 -0
  146. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/defaults/__init__.py +0 -0
  147. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/error_handling/__init__.py +0 -0
  148. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/error_handling/error_reporter.py +0 -0
  149. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/error_handling/report_generator.py +0 -0
  150. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/metrics/__init__.py +0 -0
  151. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/metrics/database.py +0 -0
  152. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/metrics/db_models.py +0 -0
  153. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/metrics/migrate_add_provider_to_token_usage.py +0 -0
  154. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/metrics/migrate_call_stack_tracking.py +0 -0
  155. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/metrics/migrate_enhanced_tracking.py +0 -0
  156. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/metrics/migrate_research_ratings.py +0 -0
  157. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/metrics/models.py +0 -0
  158. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/metrics/pricing/__init__.py +0 -0
  159. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/metrics/pricing/cost_calculator.py +0 -0
  160. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/metrics/pricing/pricing_cache.py +0 -0
  161. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/metrics/pricing/pricing_fetcher.py +0 -0
  162. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/metrics/query_utils.py +0 -0
  163. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/metrics/search_tracker.py +0 -0
  164. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/metrics/token_counter.py +0 -0
  165. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/migrate_db.py +0 -0
  166. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/search_system.py +0 -0
  167. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/setup_data_dir.py +0 -0
  168. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/utilities/__init__.py +0 -0
  169. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/utilities/db_utils.py +0 -0
  170. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/utilities/enums.py +0 -0
  171. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/utilities/es_utils.py +0 -0
  172. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/utilities/llm_utils.py +0 -0
  173. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/utilities/log_utils.py +0 -0
  174. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/utilities/search_cache.py +0 -0
  175. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/utilities/search_utilities.py +0 -0
  176. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/utilities/setup_utils.py +0 -0
  177. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/utilities/threading_utils.py +0 -0
  178. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/utilities/url_utils.py +0 -0
  179. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/__init__.py +0 -0
  180. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/api.py +0 -0
  181. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/app.py +0 -0
  182. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/app_factory.py +0 -0
  183. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/database/README.md +0 -0
  184. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/database/migrate_to_ldr_db.py +0 -0
  185. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/database/migrations.py +0 -0
  186. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/database/models.py +0 -0
  187. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/database/schema_upgrade.py +0 -0
  188. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/models/database.py +0 -0
  189. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/models/settings.py +0 -0
  190. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/routes/api_routes.py +0 -0
  191. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/routes/benchmark_routes.py +0 -0
  192. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/routes/globals.py +0 -0
  193. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/routes/history_routes.py +0 -0
  194. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/routes/metrics_routes.py +0 -0
  195. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/routes/research_routes.py +0 -0
  196. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/routes/settings_routes.py +0 -0
  197. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/services/research_service.py +0 -0
  198. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/services/resource_service.py +0 -0
  199. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/services/settings_manager.py +0 -0
  200. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/services/settings_service.py +0 -0
  201. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/services/socket_service.py +0 -0
  202. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/css/custom_dropdown.css +0 -0
  203. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/css/settings.css +0 -0
  204. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/css/styles.css +0 -0
  205. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/js/components/custom_dropdown.js +0 -0
  206. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/js/components/detail.js +0 -0
  207. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/js/components/details.js +0 -0
  208. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/js/components/fallback/formatting.js +0 -0
  209. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/js/components/fallback/ui.js +0 -0
  210. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/js/components/history.js +0 -0
  211. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/js/components/logpanel.js +0 -0
  212. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/js/components/progress.js +0 -0
  213. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/js/components/results.js +0 -0
  214. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/js/components/settings_sync.js +0 -0
  215. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/js/main.js +0 -0
  216. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/js/research_form.js +0 -0
  217. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/js/services/api.js +0 -0
  218. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/js/services/audio.js +0 -0
  219. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/js/services/formatting.js +0 -0
  220. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/js/services/keyboard.js +0 -0
  221. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/js/services/pdf.js +0 -0
  222. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/js/services/socket.js +0 -0
  223. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/js/services/ui.js +0 -0
  224. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/sounds/README.md +0 -0
  225. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/sounds/error.mp3 +0 -0
  226. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/static/sounds/success.mp3 +0 -0
  227. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/templates/base.html +0 -0
  228. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/templates/components/custom_dropdown.html +0 -0
  229. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/templates/components/log_panel.html +0 -0
  230. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/templates/components/mobile_nav.html +0 -0
  231. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/templates/components/settings_form.html +0 -0
  232. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/templates/components/sidebar.html +0 -0
  233. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/templates/pages/cost_analytics.html +0 -0
  234. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/templates/pages/details.html +0 -0
  235. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/templates/pages/history.html +0 -0
  236. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/templates/pages/metrics.html +0 -0
  237. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/templates/pages/progress.html +0 -0
  238. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/templates/pages/research.html +0 -0
  239. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/templates/pages/results.html +0 -0
  240. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/templates/pages/star_reviews.html +0 -0
  241. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/templates/settings_dashboard.html +0 -0
  242. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/utils/__init__.py +0 -0
  243. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/utils/formatters.py +0 -0
  244. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web/utils/templates.py +0 -0
  245. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/__init__.py +0 -0
  246. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/default_search_engines.py +0 -0
  247. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/engines/__init__.py +0 -0
  248. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/engines/full_search.py +0 -0
  249. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/engines/meta_search_engine.py +0 -0
  250. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/engines/search_engine_arxiv.py +0 -0
  251. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/engines/search_engine_brave.py +0 -0
  252. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/engines/search_engine_ddg.py +0 -0
  253. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/engines/search_engine_elasticsearch.py +0 -0
  254. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/engines/search_engine_github.py +0 -0
  255. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/engines/search_engine_google_pse.py +0 -0
  256. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/engines/search_engine_guardian.py +0 -0
  257. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/engines/search_engine_local.py +0 -0
  258. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/engines/search_engine_local_all.py +0 -0
  259. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/engines/search_engine_pubmed.py +0 -0
  260. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/engines/search_engine_searxng.py +0 -0
  261. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/engines/search_engine_semantic_scholar.py +0 -0
  262. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/engines/search_engine_serpapi.py +0 -0
  263. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/engines/search_engine_wayback.py +0 -0
  264. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/engines/search_engine_wikipedia.py +0 -0
  265. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/search_engine_base.py +0 -0
  266. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/search_engine_factory.py +0 -0
  267. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/src/local_deep_research/web_search_engines/search_engines_config.py +0 -0
  268. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/CI_INTEGRATION.md +0 -0
  269. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/README.md +0 -0
  270. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/TESTING_COMPARISON.md +0 -0
  271. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/TESTING_PROPOSAL.md +0 -0
  272. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/__init__.py +0 -0
  273. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/accessibility_tests/README.md +0 -0
  274. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/accessibility_tests/__init__.py +0 -0
  275. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/accessibility_tests/test_accessibility.js +0 -0
  276. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/accessibility_tests/test_accessibility_backend.py +0 -0
  277. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/api_tests/README.md +0 -0
  278. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/api_tests/__init__.py +0 -0
  279. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/api_tests/test_api_basic.py +0 -0
  280. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/api_tests/test_api_pytest.py +0 -0
  281. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/api_tests/test_rest_api.py +0 -0
  282. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/api_tests/test_rest_api_simple.py +0 -0
  283. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/conftest.py +0 -0
  284. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/debug_url_utils.py +0 -0
  285. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/download_stuff_for_local.py +0 -0
  286. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/feature_tests/IMPLEMENTATION_GUIDE_241.md +0 -0
  287. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/feature_tests/README.md +0 -0
  288. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/feature_tests/__init__.py +0 -0
  289. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/feature_tests/test_custom_context.py +0 -0
  290. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/fix_tests/README.md +0 -0
  291. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/fix_tests/test_duplicate_links_fix.py +0 -0
  292. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/fixtures/README.md +0 -0
  293. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/fixtures/search_engine_mocks.py +0 -0
  294. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/health_check/README.md +0 -0
  295. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/health_check/run_quick_health_check.py +0 -0
  296. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/health_check/test_endpoints_health.py +0 -0
  297. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/health_check/test_endpoints_health.sh +0 -0
  298. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/mock_fixtures.py +0 -0
  299. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/mock_llm_config.py +0 -0
  300. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/mock_modules.py +0 -0
  301. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/run_all_tests.py +0 -0
  302. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/search_engines/test_wikipedia_search.py +0 -0
  303. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/searxng/__init__.py +0 -0
  304. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/searxng/test_searxng.py +0 -0
  305. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/strategies/__init__.py +0 -0
  306. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/strategies/compare_strategies_visual.py +0 -0
  307. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/strategies/test_adaptive_strategy.py +0 -0
  308. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/strategies/test_iterative_reasoning.py +0 -0
  309. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/strategies/test_search_system_iterative.py +0 -0
  310. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/test_ci_config.py +0 -0
  311. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/test_citation_handler.py +0 -0
  312. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/test_google_pse.py +0 -0
  313. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/test_report_generator.py +0 -0
  314. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/test_research_strategy_orm.py +0 -0
  315. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/test_search_engines_enhanced.py +0 -0
  316. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/test_search_system.py +0 -0
  317. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/test_settings_manager.py +0 -0
  318. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/test_url_utils.py +0 -0
  319. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/test_url_utils_simple.py +0 -0
  320. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/test_utils.py +0 -0
  321. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/test_wikipedia_url_security.py +0 -0
  322. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/ui_tests/README.md +0 -0
  323. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/ui_tests/__init__.py +0 -0
  324. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/ui_tests/run_all_tests.js +0 -0
  325. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/ui_tests/test_charts.js +0 -0
  326. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/ui_tests/test_cost_analytics.js +0 -0
  327. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/ui_tests/test_metrics.js +0 -0
  328. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/ui_tests/test_metrics_browser.js +0 -0
  329. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/ui_tests/test_metrics_chart.js +0 -0
  330. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/ui_tests/test_metrics_charts.js +0 -0
  331. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/ui_tests/test_metrics_only.js +0 -0
  332. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/ui_tests/test_network_requests.js +0 -0
  333. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/ui_tests/test_pages_browser.js +0 -0
  334. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/ui_tests/test_research_results.js +0 -0
  335. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/ui_tests/test_settings_errors.js +0 -0
  336. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/ui_tests/test_settings_page.js +0 -0
  337. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/ui_tests/test_settings_save.js +0 -0
  338. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/ui_tests/test_star_reviews.js +0 -0
  339. {local_deep_research-0.5.6 → local_deep_research-0.5.9}/tests/ui_tests/test_star_reviews_debug.js +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: local-deep-research
3
- Version: 0.5.6
3
+ Version: 0.5.9
4
4
  Summary: AI-powered research assistant with deep, iterative analysis using LLMs and web searches
5
5
  Author-Email: LearningCircuit <185559241+LearningCircuit@users.noreply.github.com>, HashedViking <6432677+HashedViking@users.noreply.github.com>
6
6
  License: MIT License
@@ -67,7 +67,7 @@ dependencies = [
67
67
  "kaleido==0.2.1",
68
68
  "aiohttp>=3.9.0",
69
69
  ]
70
- version = "0.5.6"
70
+ version = "0.5.9"
71
71
 
72
72
  [project.license]
73
73
  file = "LICENSE"
@@ -0,0 +1 @@
1
+ __version__ = "0.5.9"
@@ -55,7 +55,7 @@ class FocusedIterationStrategy(BaseSearchStrategy):
55
55
  all_links_of_system=None,
56
56
  max_iterations: int = 8, # OPTIMAL FOR SIMPLEQA: 96.51% accuracy achieved
57
57
  questions_per_iteration: int = 5, # OPTIMAL FOR SIMPLEQA: proven config
58
- use_browsecomp_optimization: bool = False, # Can be False for pure SimpleQA
58
+ use_browsecomp_optimization: bool = True, # Can be False for pure SimpleQA
59
59
  ):
60
60
  """Initialize with components optimized for focused iteration."""
61
61
  super().__init__(all_links_of_system)
@@ -247,6 +247,7 @@ class FocusedIterationStrategy(BaseSearchStrategy):
247
247
 
248
248
  # Accumulate all results (no filtering!)
249
249
  self.all_search_results.extend(iteration_results)
250
+ self.all_links_of_system.extend(iteration_results)
250
251
 
251
252
  # Update progress
252
253
  self._update_progress(
@@ -184,7 +184,7 @@
184
184
  "category": "llm_parameters",
185
185
  "description": "Maximum number of tokens in model responses",
186
186
  "editable": true,
187
- "max_value": 4096.0,
187
+ "max_value": 100000,
188
188
  "min_value": 100.0,
189
189
  "name": "Max Tokens",
190
190
  "options": null,
@@ -1,5 +1,6 @@
1
1
  import importlib
2
2
  from typing import Dict, List
3
+ from loguru import logger
3
4
 
4
5
  from langchain_core.language_models import BaseChatModel
5
6
 
@@ -125,7 +126,7 @@ class IntegratedReportGenerator:
125
126
  sections = {}
126
127
 
127
128
  for section in structure:
128
- print(f"Processing section: {section['name']}")
129
+ logger.info(f"Processing section: {section['name']}")
129
130
  section_content = []
130
131
  section_content.append(f"# {section['name']}\n")
131
132
 
@@ -138,7 +139,7 @@ class IntegratedReportGenerator:
138
139
  # Generate a specific search query for this subsection
139
140
  subsection_query = f"{query} {section['name']} {subsection['name']} {subsection['purpose']}"
140
141
 
141
- print(
142
+ logger.info(
142
143
  f"Researching subsection: {subsection['name']} with query: {subsection_query}"
143
144
  )
144
145
 
@@ -975,6 +975,12 @@
975
975
  * @param {string} lastSelectedModel - The last selected model from localStorage or database
976
976
  */
977
977
  function selectModelBasedOnProvider(resetSelectedModel, lastSelectedModel) {
978
+ if (modelInput && modelInput.disabled) {
979
+ // Don't change the model automatically if we've disabled model
980
+ // selection. Then the user won't be able to change it back.
981
+ return;
982
+ }
983
+
978
984
  if (resetSelectedModel) {
979
985
  if (modelInput) {
980
986
  // Try to select last used model first if it's available
@@ -1178,10 +1184,10 @@
1178
1184
  // Load settings from the database
1179
1185
  function loadSettings() {
1180
1186
  console.log('Loading settings from database...');
1181
- let numApiCallsPending = 2;
1187
+ let numApiCallsPending = 1;
1182
1188
 
1183
1189
  // Fetch the current settings from the settings API
1184
- fetch('/research/settings/api/llm', {
1190
+ fetch('/research/settings/api', {
1185
1191
  method: 'GET',
1186
1192
  headers: {
1187
1193
  'Content-Type': 'application/json'
@@ -1199,13 +1205,13 @@
1199
1205
  // If we have a settings object in the response
1200
1206
  if (data && data.settings) {
1201
1207
  // Find the provider and model settings
1202
- const providerSetting = data.settings.value["provider"];
1203
- const modelSetting = data.settings.value["model"];
1204
- const customEndpointUrl = data.settings.value["openai_endpoint.url"];
1208
+ const providerSetting = data.settings["llm.provider"];
1209
+ const modelSetting = data.settings["llm.model"];
1210
+ const customEndpointUrlSetting = data.settings["llm.openai_endpoint.url"];
1205
1211
 
1206
1212
  // Update provider dropdown if we have a valid provider
1207
1213
  if (providerSetting && modelProviderSelect) {
1208
- const providerValue = providerSetting.toUpperCase();
1214
+ const providerValue = providerSetting.value.toUpperCase();
1209
1215
  console.log('Setting provider to:', providerValue);
1210
1216
 
1211
1217
  // Find the matching option in the dropdown
@@ -1234,6 +1240,7 @@
1234
1240
  console.warn(`No matching provider option found for '${providerValue}'`);
1235
1241
  }
1236
1242
  }
1243
+ modelProviderSelect.disabled = !providerSetting.editable;
1237
1244
 
1238
1245
  // Display endpoint container if using custom endpoint
1239
1246
  if (endpointContainer) {
@@ -1243,9 +1250,11 @@
1243
1250
  }
1244
1251
 
1245
1252
  // Update the custom endpoint URl if we have one.
1246
- if (customEndpointUrl && customEndpointInput) {
1247
- console.log('Setting endpoint URL to:', customEndpointUrl);
1248
- customEndpointInput.value = customEndpointUrl;
1253
+ if (customEndpointUrlSetting && customEndpointInput) {
1254
+ const customEndpointUrlValue = customEndpointUrlSetting.value;
1255
+ console.log('Current endpoint URL:', customEndpointUrlValue);
1256
+ customEndpointInput.value = customEndpointUrlValue;
1257
+ customEndpointInput.disabled = !customEndpointUrlSetting.editable;
1249
1258
  }
1250
1259
 
1251
1260
  // Load model options based on the current provider
@@ -1253,7 +1262,7 @@
1253
1262
  updateModelOptionsForProvider(currentProvider, false).then(() => {
1254
1263
  // Update model selection if we have a valid model
1255
1264
  if (modelSetting && modelInput) {
1256
- const modelValue = modelSetting;
1265
+ const modelValue = modelSetting.value;
1257
1266
  console.log('Setting model to:', modelValue);
1258
1267
 
1259
1268
  // Save to localStorage
@@ -1288,9 +1297,52 @@
1288
1297
  hiddenInput.value = modelValue;
1289
1298
  }
1290
1299
  }
1300
+ modelInput.disabled = !modelSetting.editable;
1291
1301
  }
1292
1302
  });
1293
1303
 
1304
+ // Update search engine if we have a valid value
1305
+ const searchEngineSetting = data.settings["search.tool"];
1306
+ if (searchEngineSetting && searchEngineSetting.value && searchEngineInput) {
1307
+ const engineValue = searchEngineSetting.value;
1308
+ console.log('Setting search engine to:', engineValue);
1309
+
1310
+ // Save to localStorage
1311
+ localStorage.setItem('lastUsedSearchEngine', engineValue);
1312
+
1313
+ // Find the engine in our loaded options
1314
+ const matchingEngine = searchEngineOptions.find(e =>
1315
+ e.value === engineValue || e.id === engineValue
1316
+ );
1317
+
1318
+ if (matchingEngine) {
1319
+ console.log('Found matching search engine in options:', matchingEngine);
1320
+
1321
+ // Set the input field value
1322
+ searchEngineInput.value = matchingEngine.label || engineValue;
1323
+ selectedSearchEngineValue = engineValue;
1324
+
1325
+ // Also update hidden input if it exists
1326
+ const hiddenInput = document.getElementById('search_engine_hidden');
1327
+ if (hiddenInput) {
1328
+ hiddenInput.value = engineValue;
1329
+ }
1330
+ } else {
1331
+ // If no matching engine found, just set the raw value
1332
+ console.warn(`No matching search engine found for '${engineValue}'`);
1333
+ searchEngineInput.value = engineValue;
1334
+ selectedSearchEngineValue = engineValue;
1335
+
1336
+ // Also update hidden input if it exists
1337
+ const hiddenInput = document.getElementById('search_engine_hidden');
1338
+ if (hiddenInput) {
1339
+ hiddenInput.value = engineValue;
1340
+ }
1341
+ }
1342
+
1343
+ searchEngineInput.disabled = !searchEngineSetting.editable;
1344
+ }
1345
+
1294
1346
 
1295
1347
  }
1296
1348
 
@@ -1309,83 +1361,6 @@
1309
1361
  numApiCallsPending--;
1310
1362
  isInitializing = (numApiCallsPending === 0);
1311
1363
  });
1312
-
1313
- fetch('/research/settings/api/search.tool', {
1314
- method: 'GET',
1315
- headers: {
1316
- 'Content-Type': 'application/json'
1317
- }
1318
- })
1319
- .then(response => {
1320
- if (!response.ok) {
1321
- throw new Error(`API error: ${response.status}`);
1322
- }
1323
- return response.json();
1324
- })
1325
- .then(data => {
1326
- console.log('Loaded settings from database:', data);
1327
-
1328
- // If we have a settings object in the response
1329
- if (data && data.settings) {
1330
- // Find the provider and model settings
1331
- const searchEngineSetting = data.settings;
1332
-
1333
- // Update search engine if we have a valid value
1334
- if (searchEngineSetting && searchEngineSetting.value && searchEngineInput) {
1335
- const engineValue = searchEngineSetting.value;
1336
- console.log('Setting search engine to:', engineValue);
1337
-
1338
- // Save to localStorage
1339
- localStorage.setItem('lastUsedSearchEngine', engineValue);
1340
-
1341
- // Find the engine in our loaded options
1342
- const matchingEngine = searchEngineOptions.find(e =>
1343
- e.value === engineValue || e.id === engineValue
1344
- );
1345
-
1346
- if (matchingEngine) {
1347
- console.log('Found matching search engine in options:', matchingEngine);
1348
-
1349
- // Set the input field value
1350
- searchEngineInput.value = matchingEngine.label || engineValue;
1351
- selectedSearchEngineValue = engineValue;
1352
-
1353
- // Also update hidden input if it exists
1354
- const hiddenInput = document.getElementById('search_engine_hidden');
1355
- if (hiddenInput) {
1356
- hiddenInput.value = engineValue;
1357
- }
1358
- } else {
1359
- // If no matching engine found, just set the raw value
1360
- console.warn(`No matching search engine found for '${engineValue}'`);
1361
- searchEngineInput.value = engineValue;
1362
- selectedSearchEngineValue = engineValue;
1363
-
1364
- // Also update hidden input if it exists
1365
- const hiddenInput = document.getElementById('search_engine_hidden');
1366
- if (hiddenInput) {
1367
- hiddenInput.value = engineValue;
1368
- }
1369
- }
1370
- }
1371
- }
1372
-
1373
- // If all the calls to the settings API are finished, we're no
1374
- // longer initializing.
1375
- numApiCallsPending--;
1376
- isInitializing = (numApiCallsPending === 0);
1377
-
1378
- })
1379
- .catch(error => {
1380
- console.error('Error loading settings:', error);
1381
-
1382
- // Fallback to localStorage if database fetch fails
1383
- fallbackToLocalStorageSettings();
1384
-
1385
- // Even if there's an error, we're done initializing
1386
- numApiCallsPending--;
1387
- isInitializing = (numApiCallsPending === 0);
1388
- });
1389
1364
  }
1390
1365
 
1391
1366
  // Add a fallback function to use localStorage settings
@@ -2875,7 +2875,7 @@
2875
2875
  console.log(`Models loaded, available options: ${modelOptions.length}`);
2876
2876
 
2877
2877
  // Get current settings from hidden inputs
2878
- const currentProvider = providerHiddenInput.value || 'ollama';
2878
+ const currentProvider = providerHiddenInput.value.toUpperCase() || 'OLLAMA'
2879
2879
  const currentModel = modelHiddenInput.value || 'gemma3:12b';
2880
2880
 
2881
2881
  console.log('Current settings:', { provider: currentProvider, model: currentModel });
@@ -1 +0,0 @@
1
- __version__ = "0.5.6"