* feat: enhance coverage reporting and improve tool configuration - Added support for JSON coverage reports in pyproject.toml. - Updated .gitignore to include coverage.json and task files for better management. - Introduced a new Type Safety Audit Report to document findings and recommendations for type safety improvements. - Created a comprehensive coverage configuration guide to assist in understanding coverage reporting setup. - Refactored tools configuration to utilize environment variables for concurrent scraping settings. These changes improve the project's testing and reporting capabilities while enhancing overall code quality and maintainability. * feat: enhance configuration handling and improve error logging - Introduced a new utility function `_get_env_int` for robust environment variable integer retrieval with validation. - Updated `WebToolsConfig` and `ToolsConfigModel` to utilize the new utility for environment variable defaults. - Enhanced logging in `CircuitBreaker` to provide detailed state transition information. - Improved URL handling in `url_analyzer.py` for better file extension extraction and normalization. - Added type validation and logging in `SecureInputMixin` to ensure input sanitization and validation consistency. These changes improve the reliability and maintainability of configuration management and error handling across the codebase. * refactor: update imports and enhance .gitignore for improved organization - Updated import paths in various example scripts to reflect the new structure under `biz_bud`. - Enhanced .gitignore to include clearer formatting for task files. - Removed obsolete function calls and improved error handling in several scripts. - Added public alias for backward compatibility in `upload_r2r.py`. These changes improve code organization, maintainability, and compatibility across the project. * refactor: update graph paths in langgraph.json for improved organization - Changed paths for research, catalog, paperless, and url_to_r2r graphs to reflect new directory structure. - Added new entries for analysis and scraping graphs to enhance functionality. These changes improve the organization and maintainability of the graph configurations. * fix: enhance validation and error handling in date range and scraping functions - Updated date validation in UserFiltersModel to ensure date values are strings. - Improved error messages in create_scraped_content_dict to clarify conditions for success and failure. - Enhanced test coverage for date validation and scraping content creation to ensure robustness. These changes improve input validation and error handling across the application, enhancing overall reliability. * refactor: streamline graph creation and enhance type annotations in examples - Simplified graph creation in `catalog_ingredient_research_example.py` and `catalog_tech_components_example.py` by directly compiling the graph. - Updated type annotations in `catalog_intel_with_config.py` for improved clarity and consistency. - Enhanced error handling in catalog data processing to ensure robustness against unexpected data types. These changes improve code readability, maintainability, and error resilience across example scripts. * Update src/biz_bud/nodes/extraction/extractors.py Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Update src/biz_bud/core/validation/pydantic_models.py Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * refactor: migrate Jina and Tavily clients to use ServiceFactory dependency injection * refactor: migrate URL processing to provider-based architecture with improved error handling * feat: add FirecrawlApp compatibility classes and mock implementations * fix: add thread-safe locking to LazyLoader factory management * feat: implement service restart and refactor cache decorator helpers * refactor: move r2r_direct_api_call to tools.clients.r2r_utils and improve HTTP service error handling * chore: update Sonar task IDs in report configuration --------- Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
149 lines
2.7 KiB
INI
149 lines
2.7 KiB
INI
[mypy]
|
|
python_version = 3.12
|
|
strict = True
|
|
warn_return_any = True
|
|
warn_unused_configs = True
|
|
disallow_any_generics = True
|
|
disallow_subclassing_any = True
|
|
disallow_untyped_calls = True
|
|
disallow_untyped_defs = True
|
|
disallow_incomplete_defs = True
|
|
check_untyped_defs = True
|
|
disallow_any_explicit = True
|
|
warn_redundant_casts = True
|
|
warn_unused_ignores = True
|
|
warn_unreachable = True
|
|
strict_equality = True
|
|
extra_checks = True
|
|
mypy_path = src
|
|
|
|
[mypy-r2r.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-firecrawl.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-selenium.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-zendriver.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-requests.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-httpx.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-beautifulsoup4.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-bs4.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-lxml.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-defusedxml.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-json_repair.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-playwright.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-langgraph.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-langchain.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-langchain_core.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-langchain_openai.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-langchain_anthropic.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-langchain_google_vertexai.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-langchain_google_genai.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-langchain_fireworks.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-langchain_mistralai.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-langchain_cohere.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-langchain_gigachat.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-langchain_together.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-langchain_ollama.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-langchain_huggingface.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-langchain_nomic.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-langchain_aws.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-langchain_voyageai.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-langchain_community.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-langchain_tavily.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-arxiv.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-docling.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-qdrant_client.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-redis.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-aioredis.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-nltk.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-tiktoken.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-openai.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-anthropic.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-voyageai.*]
|
|
ignore_missing_imports = True
|
|
|
|
[mypy-graphviz.*]
|
|
ignore_missing_imports = True
|
|
|
|
# Allow explicit Any for legitimate JSON processing use cases
|
|
[mypy-biz_bud.core.validation.*]
|
|
disallow_any_explicit = False
|