Spaces:
Running
Running
Joseph Pollack
commited on
Commit
·
bbe57dd
1
Parent(s):
0854ced
randomly adds a logger to gradio because no time to refactor
Browse files- REPORT_WRITING_AGENTS_ANALYSIS.md +1 -0
- SERPER_WEBSEARCH_IMPLEMENTATION_PLAN.md +1 -0
- docs/api/agents.md +1 -0
- docs/api/models.md +1 -0
- docs/api/orchestrators.md +1 -0
- docs/api/services.md +1 -0
- docs/api/tools.md +1 -0
- docs/architecture/agents.md +1 -0
- docs/architecture/middleware.md +1 -0
- docs/architecture/services.md +1 -0
- docs/architecture/tools.md +1 -0
- docs/contributing/code-quality.md +1 -0
- docs/contributing/code-style.md +1 -0
- docs/contributing/error-handling.md +1 -0
- docs/contributing/implementation-patterns.md +1 -0
- docs/contributing/index.md +1 -0
- docs/contributing/prompt-engineering.md +1 -0
- docs/contributing/testing.md +1 -0
- docs/getting-started/examples.md +1 -0
- docs/getting-started/installation.md +1 -0
- docs/getting-started/mcp-integration.md +1 -0
- docs/getting-started/quick-start.md +1 -0
- docs/implementation/IMPLEMENTATION_SUMMARY.md +1 -0
- docs/implementation/TTS_MODAL_IMPLEMENTATION.md +1 -0
- docs/license.md +1 -0
- docs/overview/architecture.md +1 -0
- docs/overview/features.md +1 -0
- docs/team.md +1 -0
- new_env.txt +1 -0
- src/agent_factory/judges.py +1 -0
- src/middleware/state_machine.py +1 -0
- src/services/image_ocr.py +1 -0
- src/tools/crawl_adapter.py +1 -0
- src/tools/searchxng_web_search.py +1 -0
- src/tools/serper_web_search.py +1 -0
- src/tools/vendored/__init__.py +1 -0
- src/tools/vendored/searchxng_client.py +1 -0
- src/tools/vendored/serper_client.py +1 -0
- src/tools/vendored/web_search_core.py +1 -0
- src/tools/web_search_factory.py +1 -0
- tests/unit/middleware/__init__.py +1 -0
- tests/unit/middleware/test_budget_tracker_phase7.py +1 -0
- tests/unit/middleware/test_state_machine.py +1 -0
- tests/unit/middleware/test_workflow_manager.py +1 -0
- tests/unit/orchestrator/__init__.py +1 -0
REPORT_WRITING_AGENTS_ANALYSIS.md
CHANGED
|
@@ -180,3 +180,4 @@ return {
|
|
| 180 |
|
| 181 |
The infrastructure to handle file outputs in Gradio is in place, but the agents themselves do not yet write files. They would need to be enhanced or wrapped to add file writing capability.
|
| 182 |
|
|
|
|
|
|
| 180 |
|
| 181 |
The infrastructure to handle file outputs in Gradio is in place, but the agents themselves do not yet write files. They would need to be enhanced or wrapped to add file writing capability.
|
| 182 |
|
| 183 |
+
|
SERPER_WEBSEARCH_IMPLEMENTATION_PLAN.md
CHANGED
|
@@ -394,3 +394,4 @@ This plan details the implementation of SERPER-based web search by vendoring cod
|
|
| 394 |
- Query preprocessing may need web-specific adjustments (less aggressive than PubMed)
|
| 395 |
- Consider adding relevance scoring in the future
|
| 396 |
|
|
|
|
|
|
| 394 |
- Query preprocessing may need web-specific adjustments (less aggressive than PubMed)
|
| 395 |
- Consider adding relevance scoring in the future
|
| 396 |
|
| 397 |
+
|
docs/api/agents.md
CHANGED
|
@@ -271,3 +271,4 @@ def create_input_parser_agent(model: Any | None = None) -> InputParserAgent
|
|
| 271 |
|
| 272 |
|
| 273 |
|
|
|
|
|
|
| 271 |
|
| 272 |
|
| 273 |
|
| 274 |
+
|
docs/api/models.md
CHANGED
|
@@ -249,3 +249,4 @@ class BudgetStatus(BaseModel):
|
|
| 249 |
|
| 250 |
|
| 251 |
|
|
|
|
|
|
| 249 |
|
| 250 |
|
| 251 |
|
| 252 |
+
|
docs/api/orchestrators.md
CHANGED
|
@@ -196,3 +196,4 @@ Runs Magentic orchestration.
|
|
| 196 |
|
| 197 |
|
| 198 |
|
|
|
|
|
|
| 196 |
|
| 197 |
|
| 198 |
|
| 199 |
+
|
docs/api/services.md
CHANGED
|
@@ -202,3 +202,4 @@ Analyzes a hypothesis using statistical methods.
|
|
| 202 |
|
| 203 |
|
| 204 |
|
|
|
|
|
|
| 202 |
|
| 203 |
|
| 204 |
|
| 205 |
+
|
docs/api/tools.md
CHANGED
|
@@ -236,3 +236,4 @@ Searches multiple tools in parallel.
|
|
| 236 |
|
| 237 |
|
| 238 |
|
|
|
|
|
|
| 236 |
|
| 237 |
|
| 238 |
|
| 239 |
+
|
docs/architecture/agents.md
CHANGED
|
@@ -193,3 +193,4 @@ Factory functions:
|
|
| 193 |
|
| 194 |
|
| 195 |
|
|
|
|
|
|
| 193 |
|
| 194 |
|
| 195 |
|
| 196 |
+
|
docs/architecture/middleware.md
CHANGED
|
@@ -143,3 +143,4 @@ All middleware components use `ContextVar` for thread-safe isolation:
|
|
| 143 |
|
| 144 |
|
| 145 |
|
|
|
|
|
|
| 143 |
|
| 144 |
|
| 145 |
|
| 146 |
+
|
docs/architecture/services.md
CHANGED
|
@@ -143,3 +143,4 @@ if settings.has_openai_key:
|
|
| 143 |
|
| 144 |
|
| 145 |
|
|
|
|
|
|
| 143 |
|
| 144 |
|
| 145 |
|
| 146 |
+
|
docs/architecture/tools.md
CHANGED
|
@@ -176,3 +176,4 @@ search_handler = SearchHandler(
|
|
| 176 |
|
| 177 |
|
| 178 |
|
|
|
|
|
|
| 176 |
|
| 177 |
|
| 178 |
|
| 179 |
+
|
docs/contributing/code-quality.md
CHANGED
|
@@ -82,3 +82,4 @@ async def search(self, query: str, max_results: int = 10) -> list[Evidence]:
|
|
| 82 |
|
| 83 |
|
| 84 |
|
|
|
|
|
|
| 82 |
|
| 83 |
|
| 84 |
|
| 85 |
+
|
docs/contributing/code-style.md
CHANGED
|
@@ -62,3 +62,4 @@ result = await loop.run_in_executor(None, cpu_bound_function, args)
|
|
| 62 |
|
| 63 |
|
| 64 |
|
|
|
|
|
|
| 62 |
|
| 63 |
|
| 64 |
|
| 65 |
+
|
docs/contributing/error-handling.md
CHANGED
|
@@ -70,3 +70,4 @@ except httpx.HTTPError as e:
|
|
| 70 |
|
| 71 |
|
| 72 |
|
|
|
|
|
|
| 70 |
|
| 71 |
|
| 72 |
|
| 73 |
+
|
docs/contributing/implementation-patterns.md
CHANGED
|
@@ -85,3 +85,4 @@ def get_embedding_service() -> EmbeddingService:
|
|
| 85 |
|
| 86 |
|
| 87 |
|
|
|
|
|
|
| 85 |
|
| 86 |
|
| 87 |
|
| 88 |
+
|
docs/contributing/index.md
CHANGED
|
@@ -164,3 +164,4 @@ Thank you for contributing to DeepCritical!
|
|
| 164 |
|
| 165 |
|
| 166 |
|
|
|
|
|
|
| 164 |
|
| 165 |
|
| 166 |
|
| 167 |
+
|
docs/contributing/prompt-engineering.md
CHANGED
|
@@ -70,3 +70,4 @@ This document outlines prompt engineering guidelines and citation validation rul
|
|
| 70 |
|
| 71 |
|
| 72 |
|
|
|
|
|
|
| 70 |
|
| 71 |
|
| 72 |
|
| 73 |
+
|
docs/contributing/testing.md
CHANGED
|
@@ -66,3 +66,4 @@ async def test_real_pubmed_search():
|
|
| 66 |
|
| 67 |
|
| 68 |
|
|
|
|
|
|
| 66 |
|
| 67 |
|
| 68 |
|
| 69 |
+
|
docs/getting-started/examples.md
CHANGED
|
@@ -210,3 +210,4 @@ USE_GRAPH_EXECUTION=true
|
|
| 210 |
|
| 211 |
|
| 212 |
|
|
|
|
|
|
| 210 |
|
| 211 |
|
| 212 |
|
| 213 |
+
|
docs/getting-started/installation.md
CHANGED
|
@@ -149,3 +149,4 @@ uv run pre-commit install
|
|
| 149 |
|
| 150 |
|
| 151 |
|
|
|
|
|
|
| 149 |
|
| 150 |
|
| 151 |
|
| 152 |
+
|
docs/getting-started/mcp-integration.md
CHANGED
|
@@ -216,3 +216,4 @@ You can configure multiple DeepCritical instances:
|
|
| 216 |
|
| 217 |
|
| 218 |
|
|
|
|
|
|
| 216 |
|
| 217 |
|
| 218 |
|
| 219 |
+
|
docs/getting-started/quick-start.md
CHANGED
|
@@ -120,3 +120,4 @@ What are the active clinical trials investigating Alzheimer's disease treatments
|
|
| 120 |
|
| 121 |
|
| 122 |
|
|
|
|
|
|
| 120 |
|
| 121 |
|
| 122 |
|
| 123 |
+
|
docs/implementation/IMPLEMENTATION_SUMMARY.md
CHANGED
|
@@ -179,3 +179,4 @@ Located in `src/app.py` lines 667-712:
|
|
| 179 |
|
| 180 |
|
| 181 |
|
|
|
|
|
|
| 179 |
|
| 180 |
|
| 181 |
|
| 182 |
+
|
docs/implementation/TTS_MODAL_IMPLEMENTATION.md
CHANGED
|
@@ -133,3 +133,4 @@ To test TTS:
|
|
| 133 |
|
| 134 |
|
| 135 |
|
|
|
|
|
|
| 133 |
|
| 134 |
|
| 135 |
|
| 136 |
+
|
docs/license.md
CHANGED
|
@@ -40,3 +40,4 @@ SOFTWARE.
|
|
| 40 |
|
| 41 |
|
| 42 |
|
|
|
|
|
|
| 40 |
|
| 41 |
|
| 42 |
|
| 43 |
+
|
docs/overview/architecture.md
CHANGED
|
@@ -197,3 +197,4 @@ The system supports complex research workflows through:
|
|
| 197 |
|
| 198 |
|
| 199 |
|
|
|
|
|
|
| 197 |
|
| 198 |
|
| 199 |
|
| 200 |
+
|
docs/overview/features.md
CHANGED
|
@@ -149,3 +149,4 @@ DeepCritical provides a comprehensive set of features for AI-assisted research:
|
|
| 149 |
|
| 150 |
|
| 151 |
|
|
|
|
|
|
| 149 |
|
| 150 |
|
| 151 |
|
| 152 |
+
|
docs/team.md
CHANGED
|
@@ -45,3 +45,4 @@ We welcome contributions! See the [Contributing Guide](contributing/index.md) fo
|
|
| 45 |
|
| 46 |
|
| 47 |
|
|
|
|
|
|
| 45 |
|
| 46 |
|
| 47 |
|
| 48 |
+
|
new_env.txt
CHANGED
|
@@ -95,3 +95,4 @@ MODAL_TOKEN_SECRET=your_modal_token_secret_here
|
|
| 95 |
|
| 96 |
|
| 97 |
|
|
|
|
|
|
| 95 |
|
| 96 |
|
| 97 |
|
| 98 |
+
|
src/agent_factory/judges.py
CHANGED
|
@@ -21,6 +21,7 @@ from src.prompts.judge import (
|
|
| 21 |
format_user_prompt,
|
| 22 |
)
|
| 23 |
from src.utils.config import settings
|
|
|
|
| 24 |
from src.utils.models import AssessmentDetails, Evidence, JudgeAssessment
|
| 25 |
|
| 26 |
logger = structlog.get_logger()
|
|
|
|
| 21 |
format_user_prompt,
|
| 22 |
)
|
| 23 |
from src.utils.config import settings
|
| 24 |
+
from src.utils.exceptions import ConfigurationError
|
| 25 |
from src.utils.models import AssessmentDetails, Evidence, JudgeAssessment
|
| 26 |
|
| 27 |
logger = structlog.get_logger()
|
src/middleware/state_machine.py
CHANGED
|
@@ -134,3 +134,4 @@ def get_workflow_state() -> WorkflowState:
|
|
| 134 |
|
| 135 |
|
| 136 |
|
|
|
|
|
|
| 134 |
|
| 135 |
|
| 136 |
|
| 137 |
+
|
src/services/image_ocr.py
CHANGED
|
@@ -242,3 +242,4 @@ def get_image_ocr_service() -> ImageOCRService:
|
|
| 242 |
|
| 243 |
|
| 244 |
|
|
|
|
|
|
| 242 |
|
| 243 |
|
| 244 |
|
| 245 |
+
|
src/tools/crawl_adapter.py
CHANGED
|
@@ -63,3 +63,4 @@ async def crawl_website(starting_url: str) -> str:
|
|
| 63 |
|
| 64 |
|
| 65 |
|
|
|
|
|
|
| 63 |
|
| 64 |
|
| 65 |
|
| 66 |
+
|
src/tools/searchxng_web_search.py
CHANGED
|
@@ -117,3 +117,4 @@ class SearchXNGWebSearchTool:
|
|
| 117 |
logger.error("Unexpected error in SearchXNG search", error=str(e), query=final_query)
|
| 118 |
raise SearchError(f"SearchXNG search failed: {e}") from e
|
| 119 |
|
|
|
|
|
|
| 117 |
logger.error("Unexpected error in SearchXNG search", error=str(e), query=final_query)
|
| 118 |
raise SearchError(f"SearchXNG search failed: {e}") from e
|
| 119 |
|
| 120 |
+
|
src/tools/serper_web_search.py
CHANGED
|
@@ -117,3 +117,4 @@ class SerperWebSearchTool:
|
|
| 117 |
logger.error("Unexpected error in Serper search", error=str(e), query=final_query)
|
| 118 |
raise SearchError(f"Serper search failed: {e}") from e
|
| 119 |
|
|
|
|
|
|
| 117 |
logger.error("Unexpected error in Serper search", error=str(e), query=final_query)
|
| 118 |
raise SearchError(f"Serper search failed: {e}") from e
|
| 119 |
|
| 120 |
+
|
src/tools/vendored/__init__.py
CHANGED
|
@@ -24,3 +24,4 @@ __all__ = [
|
|
| 24 |
"is_valid_url",
|
| 25 |
]
|
| 26 |
|
|
|
|
|
|
| 24 |
"is_valid_url",
|
| 25 |
]
|
| 26 |
|
| 27 |
+
|
src/tools/vendored/searchxng_client.py
CHANGED
|
@@ -96,3 +96,4 @@ class SearchXNGClient:
|
|
| 96 |
logger.error("Unexpected error in SearchXNG search", error=str(e), query=query)
|
| 97 |
raise SearchError(f"SearchXNG search failed: {e}") from e
|
| 98 |
|
|
|
|
|
|
| 96 |
logger.error("Unexpected error in SearchXNG search", error=str(e), query=query)
|
| 97 |
raise SearchError(f"SearchXNG search failed: {e}") from e
|
| 98 |
|
| 99 |
+
|
src/tools/vendored/serper_client.py
CHANGED
|
@@ -92,3 +92,4 @@ class SerperClient:
|
|
| 92 |
logger.error("Unexpected error in Serper search", error=str(e), query=query)
|
| 93 |
raise SearchError(f"Serper search failed: {e}") from e
|
| 94 |
|
|
|
|
|
|
| 92 |
logger.error("Unexpected error in Serper search", error=str(e), query=query)
|
| 93 |
raise SearchError(f"Serper search failed: {e}") from e
|
| 94 |
|
| 95 |
+
|
src/tools/vendored/web_search_core.py
CHANGED
|
@@ -203,3 +203,4 @@ def is_valid_url(url: str) -> bool:
|
|
| 203 |
return False
|
| 204 |
return True
|
| 205 |
|
|
|
|
|
|
| 203 |
return False
|
| 204 |
return True
|
| 205 |
|
| 206 |
+
|
src/tools/web_search_factory.py
CHANGED
|
@@ -71,3 +71,4 @@ def create_web_search_tool() -> SearchTool | None:
|
|
| 71 |
)
|
| 72 |
return None
|
| 73 |
|
|
|
|
|
|
| 71 |
)
|
| 72 |
return None
|
| 73 |
|
| 74 |
+
|
tests/unit/middleware/__init__.py
CHANGED
|
@@ -18,5 +18,6 @@
|
|
| 18 |
|
| 19 |
|
| 20 |
|
|
|
|
| 21 |
|
| 22 |
|
|
|
|
| 18 |
|
| 19 |
|
| 20 |
|
| 21 |
+
|
| 22 |
|
| 23 |
|
tests/unit/middleware/test_budget_tracker_phase7.py
CHANGED
|
@@ -176,5 +176,6 @@ class TestIterationTokenTracking:
|
|
| 176 |
|
| 177 |
|
| 178 |
|
|
|
|
| 179 |
|
| 180 |
|
|
|
|
| 176 |
|
| 177 |
|
| 178 |
|
| 179 |
+
|
| 180 |
|
| 181 |
|
tests/unit/middleware/test_state_machine.py
CHANGED
|
@@ -373,5 +373,6 @@ class TestContextVarIsolation:
|
|
| 373 |
|
| 374 |
|
| 375 |
|
|
|
|
| 376 |
|
| 377 |
|
|
|
|
| 373 |
|
| 374 |
|
| 375 |
|
| 376 |
+
|
| 377 |
|
| 378 |
|
tests/unit/middleware/test_workflow_manager.py
CHANGED
|
@@ -303,5 +303,6 @@ class TestWorkflowManager:
|
|
| 303 |
|
| 304 |
|
| 305 |
|
|
|
|
| 306 |
|
| 307 |
|
|
|
|
| 303 |
|
| 304 |
|
| 305 |
|
| 306 |
+
|
| 307 |
|
| 308 |
|
tests/unit/orchestrator/__init__.py
CHANGED
|
@@ -18,5 +18,6 @@
|
|
| 18 |
|
| 19 |
|
| 20 |
|
|
|
|
| 21 |
|
| 22 |
|
|
|
|
| 18 |
|
| 19 |
|
| 20 |
|
| 21 |
+
|
| 22 |
|
| 23 |
|