unique_web_search 2026.22.0.dev4__tar.gz → 2026.22.0.dev5__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 (118) hide show
  1. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/PKG-INFO +2 -2
  2. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/pyproject.toml +2 -2
  3. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/config.py +6 -6
  4. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/service.py +1 -1
  5. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/crawlers/tavily.py +0 -13
  6. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/base_executor.py +0 -10
  7. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v1/executor.py +1 -1
  8. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v2/executor.py +1 -1
  9. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v3/executor.py +1 -1
  10. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/query_elicitation.py +1 -1
  11. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/README.md +0 -0
  12. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/__init__.py +0 -0
  13. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/client_settings.py +0 -0
  14. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/metrics.py +0 -0
  15. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/prompts.py +0 -0
  16. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/schema.py +0 -0
  17. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/argument_screening/__init__.py +0 -0
  18. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/argument_screening/config.py +0 -0
  19. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/argument_screening/exceptions.py +0 -0
  20. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/argument_screening/prompts/__init__.py +0 -0
  21. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/argument_screening/prompts/guidelines.j2 +0 -0
  22. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/argument_screening/prompts/rejection_response.j2 +0 -0
  23. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/argument_screening/prompts/system_prompt.j2 +0 -0
  24. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/argument_screening/prompts/user_prompt.j2 +0 -0
  25. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/argument_screening/service.py +0 -0
  26. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/client/proxy_config.py +0 -0
  27. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/__init__.py +0 -0
  28. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/cleaning/__init__.py +0 -0
  29. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/cleaning/character_sanitize.py +0 -0
  30. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/cleaning/clean.py +0 -0
  31. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/cleaning/config.py +0 -0
  32. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/config.py +0 -0
  33. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/base.py +0 -0
  34. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/config.py +0 -0
  35. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/llm_guard_judge.py +0 -0
  36. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/llm_keyword_redact.py +0 -0
  37. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/llm_process.py +0 -0
  38. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/prompts/__init__.py +0 -0
  39. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/prompts/judge_and_sanitize_prompt.j2 +0 -0
  40. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/prompts/judge_prompt.j2 +0 -0
  41. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/prompts/keyword_extract_prompt.j2 +0 -0
  42. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/prompts/page_context.j2 +0 -0
  43. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/prompts/sanitize_rules.j2 +0 -0
  44. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/prompts/system_prompt.j2 +0 -0
  45. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/prompts/user_prompt.j2 +0 -0
  46. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/schema.py +0 -0
  47. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/settings.py +0 -0
  48. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/processing_strategies/truncate.py +0 -0
  49. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/content_processing/service.py +0 -0
  50. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/crawlers/README.md +0 -0
  51. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/crawlers/__init__.py +0 -0
  52. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/crawlers/base.py +0 -0
  53. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/crawlers/basic.py +0 -0
  54. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/crawlers/crawl4ai.py +0 -0
  55. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/crawlers/firecrawl.py +0 -0
  56. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/crawlers/jina.py +0 -0
  57. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/crawlers/utils.py +0 -0
  58. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/README.md +0 -0
  59. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/__init__.py +0 -0
  60. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/base_config.py +0 -0
  61. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/context.py +0 -0
  62. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v1/__init__.py +0 -0
  63. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v1/config.py +0 -0
  64. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v1/prompts/__init__.py +0 -0
  65. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v1/prompts/refine_query_system_prompt.j2 +0 -0
  66. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v1/prompts/restrict_date_description.j2 +0 -0
  67. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v1/prompts/tool_description.j2 +0 -0
  68. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v1/prompts/tool_description_for_system_prompt.j2 +0 -0
  69. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v1/schema.py +0 -0
  70. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v2/__init__.py +0 -0
  71. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v2/config.py +0 -0
  72. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v2/prompts/__init__.py +0 -0
  73. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v2/prompts/step_query_description.j2 +0 -0
  74. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v2/prompts/tool_description.j2 +0 -0
  75. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v2/prompts/tool_description_for_system_prompt.j2 +0 -0
  76. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v2/schema.py +0 -0
  77. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v3/__init__.py +0 -0
  78. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v3/config.py +0 -0
  79. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v3/prompts/__init__.py +0 -0
  80. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v3/prompts/tool_description.j2 +0 -0
  81. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v3/prompts/tool_description_for_system_prompt.j2 +0 -0
  82. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/executors/v3/schema.py +0 -0
  83. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/helpers.py +0 -0
  84. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/message_log.py +0 -0
  85. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/README.md +0 -0
  86. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/__init__.py +0 -0
  87. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/base.py +0 -0
  88. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/bing.py +0 -0
  89. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/brave.py +0 -0
  90. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/custom_api.py +0 -0
  91. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/firecrawl.py +0 -0
  92. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/google.py +0 -0
  93. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/jina.py +0 -0
  94. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/schema.py +0 -0
  95. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/tavily.py +0 -0
  96. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/google/schema.py +0 -0
  97. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/__init__.py +0 -0
  98. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/bing/__init__.py +0 -0
  99. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/bing/client.py +0 -0
  100. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/bing/models.py +0 -0
  101. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/bing/runner.py +0 -0
  102. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/models.py +0 -0
  103. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/response_parsing.py +0 -0
  104. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/vertexai/__init__.py +0 -0
  105. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/vertexai/client.py +0 -0
  106. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/vertexai/exceptions.py +0 -0
  107. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/vertexai/gemini.py +0 -0
  108. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/utils/grounding/vertexai/response_handler.py +0 -0
  109. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/search_engine/vertexai.py +0 -0
  110. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/snippet_judge/__init__.py +0 -0
  111. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/snippet_judge/prompts.py +0 -0
  112. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/snippet_judge/schema.py +0 -0
  113. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/snippet_judge/service.py +0 -0
  114. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/structured_llm.py +0 -0
  115. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/services/url_safety.py +0 -0
  116. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/settings.py +0 -0
  117. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/skills/web-search-v3.md +0 -0
  118. {unique_web_search-2026.22.0.dev4 → unique_web_search-2026.22.0.dev5}/src/unique_web_search/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: unique-web-search
3
- Version: 2026.22.0.dev4
3
+ Version: 2026.22.0.dev5
4
4
  Summary:
5
5
  Author: Andreas Hauri, Gustav Hartz, Rami Azouz
6
6
  Author-email: Andreas Hauri <andreas@unique.ch>, Gustav Hartz <gustav.hartz.ext@unique.ch>, Rami Azouz <rami.ext@unique.ch>
@@ -17,7 +17,7 @@ Requires-Dist: tavily-python>=0.7.11,<1
17
17
  Requires-Dist: unidecode>=1.4.0,<2
18
18
  Requires-Dist: azure-ai-projects>=1.0.0,<2
19
19
  Requires-Dist: azure-identity>=1.25.0,<2
20
- Requires-Dist: unique-toolkit[monitoring]>=2026.22.0.dev5,<2026.22.0rc0
20
+ Requires-Dist: unique-toolkit[monitoring]>=2026.22.0.dev12,<2026.22.0rc0
21
21
  Requires-Dist: azure-core>=1.36.0,<2
22
22
  Requires-Dist: google-cloud-aiplatform>=1.128.0,<2
23
23
  Requires-Dist: google-auth>=2.43.0,<3
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "unique_web_search"
3
- version = "2026.22.0.dev4"
3
+ version = "2026.22.0.dev5"
4
4
  description = ""
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.12,<4.0"
@@ -23,7 +23,7 @@ dependencies = [
23
23
  "unidecode>=1.4.0,<2",
24
24
  "azure-ai-projects>=1.0.0,<2",
25
25
  "azure-identity>=1.25.0,<2",
26
- "unique-toolkit[monitoring]>=2026.22.0.dev5,<2026.22.0rc0",
26
+ "unique-toolkit[monitoring]>=2026.22.0.dev12,<2026.22.0rc0",
27
27
  "azure-core>=1.36.0,<2",
28
28
  "google-cloud-aiplatform>=1.128.0,<2",
29
29
  "google-auth>=2.43.0,<3",
@@ -105,11 +105,6 @@ class AnswerGenerationConfig(BaseModel):
105
105
 
106
106
 
107
107
  class ExperimentalFeatures(FeatureExtendedSourceSerialization):
108
- query_elicitation_config: QueryElicitationConfig = Field(
109
- default_factory=QueryElicitationConfig,
110
- title="Query Review",
111
- description="Allow users to review and modify search queries before execution.",
112
- )
113
108
  tool_response_system_reminder: ToolResponseSystemReminderConfig = Field(
114
109
  default_factory=ToolResponseSystemReminderConfig,
115
110
  title="Tool Response System Reminder",
@@ -168,7 +163,12 @@ class WebSearchConfig(BaseToolConfig):
168
163
  description="Settings for the agent-driven search mode (V3): the model itself chains snippet-only `search` calls with on-demand full-page `read_urls` calls per task.",
169
164
  )
170
165
 
171
- # Todo [UN-17655] RJSF Tags don't function properly when using union + dscriminator
166
+ query_elicitation_config: QueryElicitationConfig = Field(
167
+ default_factory=QueryElicitationConfig,
168
+ title="Query Elicitation",
169
+ description="Allow users to review and modify search queries before execution.",
170
+ )
171
+
172
172
  search_engine_config: ActivatedSearchEngine = Field( # type: ignore (This type is computed at runtime so pyright is not able to infer it)
173
173
  default_factory=DefaultSearchEngine, # type: ignore (This type is computed at runtime so pyright is not able to infer it)
174
174
  title="Search Engine",
@@ -297,7 +297,7 @@ class WebSearchTool(Tool[WebSearchConfig]):
297
297
  elicitation_service = QueryElicitationService(
298
298
  chat_service=self._chat_service,
299
299
  display_name=self.display_name(),
300
- config=self.config.experimental_features.query_elicitation_config,
300
+ config=self.config.query_elicitation_config,
301
301
  )
302
302
 
303
303
  # Build context objects
@@ -55,19 +55,6 @@ class TavilyCrawler(BaseCrawler[TavilyCrawlerConfig]):
55
55
  response["results"].extend(result.get("results", []))
56
56
  response["failed_results"].extend(result.get("failed_results", []))
57
57
 
58
- for i in range(0, len(urls), batch_size):
59
- batch_urls = urls[i : i + batch_size]
60
- batch_response = await client.extract(
61
- urls=batch_urls,
62
- format="markdown",
63
- include_images=False,
64
- extract_depth=self.config.depth,
65
- timeout=self.config.timeout,
66
- include_favicon=False,
67
- )
68
- response["results"].extend(batch_response.get("results", []))
69
- response["failed_results"].extend(batch_response.get("failed_results", []))
70
-
71
58
  # Create a mapping from URL to content
72
59
  url_to_content = {}
73
60
 
@@ -4,7 +4,6 @@ from time import time
4
4
  from typing import Generic, TypeVar
5
5
 
6
6
  from pydantic import BaseModel
7
- from unique_toolkit.agentic.feature_flags import feature_flags
8
7
  from unique_toolkit.agentic.tools.tool_progress_reporter import (
9
8
  ProgressState,
10
9
  )
@@ -151,12 +150,3 @@ class BaseWebSearchExecutor(ABC, Generic[T]):
151
150
  return sorted_chunks.content_chunks
152
151
  else:
153
152
  return content
154
-
155
- async def _ff_elicitate_queries(self, queries: list[str]) -> list[str]:
156
- if not feature_flags.enable_elicitation_un_15809.is_enabled(self.company_id):
157
- return queries
158
-
159
- # Create a query elicitation
160
- elicitation = await self.query_elicitation(queries)
161
-
162
- return elicitation
@@ -175,7 +175,7 @@ class WebSearchV1Executor(BaseWebSearchExecutor[WebSearchToolParameters]):
175
175
  )
176
176
  refined_queries, objective = await self._refine_query(query)
177
177
 
178
- elicitated_queries = await self._ff_elicitate_queries(refined_queries)
178
+ elicitated_queries = await self.query_elicitation(refined_queries)
179
179
 
180
180
  web_search_results = []
181
181
 
@@ -274,7 +274,7 @@ class WebSearchV2Executor(BaseWebSearchExecutor[WebSearchPlan]):
274
274
  return read_url_steps
275
275
 
276
276
  search_queries = [step.query_or_url for step in search_steps]
277
- elicited_queries = await self._ff_elicitate_queries(search_queries)
277
+ elicited_queries = await self.query_elicitation(search_queries)
278
278
 
279
279
  elicited_search_steps = [
280
280
  Step(step_type=StepType.SEARCH, query_or_url=query, objective="")
@@ -79,7 +79,7 @@ class WebSearchV3Executor(BaseWebSearchExecutor[WebSearchV3ToolParameters]):
79
79
  self.notify_message = objective
80
80
  await self.notify_callback()
81
81
 
82
- elicited = await self._ff_elicitate_queries([query])
82
+ elicited = await self.query_elicitation([query])
83
83
  query = elicited[0]
84
84
 
85
85
  self.debug_info.steps.append(
@@ -29,7 +29,7 @@ class QueryElicitationConfig(BaseModel):
29
29
  enable_elicitation: bool = Field(
30
30
  default=False,
31
31
  title="Enable Query Review",
32
- description="When enabled, users can review and modify proposed search queries before they are executed. Requires the associated feature flag to be active.",
32
+ description="When enabled, users can review and modify proposed search queries before they are executed.",
33
33
  )
34
34
  timeout_seconds: int = Field(
35
35
  default=60,