- Add @pytest.mark.integration marker per coding guidelines
- Use pydantic_ai.models.test.TestModel instead of string "test"
for proper deterministic, schema-driven test responses
refactor(tests): Strengthen assertions for professional test quality
Claude
Unverified signature
83ee934
- test_graph_execution_flow: Replace weak catch-all assertion with
explicit verification of node execution sequence and output structure
- Use next(iter(e.keys())) per Ruff RUF015 best practice
Tests now explicitly verify:
- Minimum event count (>= 3)
- All critical nodes executed (supervisor, search, synthesize)
- Final event is synthesis node
- Synthesis produces messages output
fix(tests): Correct test assertions for CI/CD environment
Claude
Unverified signature
b93f9a0
- test_termination_on_timeout: Accept "timeout_synthesis_failed" reason
since unit tests run without API keys, causing synthesis to fail
- test_graph_execution_flow: Mock get_model() to return "test" provider
since pydantic-ai needs a valid model string during Agent init
Both fixes address test failures in environments without LLM API keys.
feat: Enhance research workflow with embedding service integration
- Updated graph nodes to accept an optional EmbeddingService for improved evidence handling and deduplication.
- Refactored search, judge, resolve, and synthesize nodes to utilize the embedding service for enhanced functionality.
- Modified the research graph creation to bind the embedding service to worker nodes, ensuring seamless integration.
- Added logging for better traceability during node execution.
- Expanded unit and integration tests to cover new embedding service interactions and ensure robust functionality.
feat: Integrate LangGraph for enhanced research orchestration
- Added LangGraph dependencies to pyproject.toml and uv.lock for improved state management and orchestration capabilities.
- Implemented LangGraph-based orchestrator in src/orchestrators/langgraph_orchestrator.py, enabling structured research workflows.
- Developed graph nodes and state management in src/agents/graph, including search, judge, and synthesis functionalities.
- Updated app.py to support new "god" mode for advanced orchestration.
- Enhanced documentation for active bugs and architectural gaps related to LangGraph integration.
- Added unit and integration tests to ensure functionality and reliability of the new features.