- Enhance context isolation in specialized_exceptions.py to prevent shared state mutations and ensure safe metadata updates.
- Improve execution timeout handling in security.py with backward-compatible fallback mechanisms.
- Streamline price extraction logic in c_intel.py to handle various input types more effectively.
- Update fallback messaging in paperless agent to preserve context and provide clearer error status during LLM access failures.
- Clean up import statements in test configuration files for better organization.
- Update error categorization in formatter.py to treat certain runtime errors as unknown to avoid masking programming issues.
- Enhance context isolation in specialized_exceptions.py by utilizing deep copy for context management, ensuring safe metadata updates.
- Improve fallback messaging in paperless agent to provide clearer error status during LLM access failures.
- Streamline price extraction logic in receipt.py by refining regex patterns and normalizing price values for better accuracy.
- Refactor error handling in paperless agent to provide more informative fallback messages during LLM invocation failures and context length issues.
- Update receipt.py to refine price pattern matching, ensuring proper handling of unit-annotated numbers and improving overall extraction accuracy.
- Introduce add-git-lab-cert.sh to automate the installation of the git.lab certificate into system stores for Ubuntu, CentOS, and Alpine Linux.
- Add git.lab.crt certificate file for secure connections.
- Enhance error handling in paperless agent to provide user-friendly fallback messages during LLM access issues.
- Improve receipt.py to refine price pattern matching and avoid treating unit-annotated numbers as prices.
- Strengthen error categorization in formatter.py to include system error indicators.
- Improve context isolation in specialized_exceptions.py to prevent shared state mutations and ensure safe metadata updates.
- Refine state size calculation in security.py with enhanced JSON coercion and fallback mechanisms.
- Update receipt.py to improve price pattern matching for more accurate extraction of structured line item data.
- Strengthen error categorization in formatter.py to require more specific validation phrasing.
- Improve context isolation in specialized_exceptions.py to prevent shared state mutations.
- Update metadata handling in URLProcessingError to ensure safe updates and limit string lengths.
- Refine JsonParsingError to include json_length in metadata and ensure response previews are properly truncated.
- Simplify state size calculation in security.py with improved exception handling and fallback mechanisms.
- Adjust receipt.py to enforce word boundaries in price pattern matching for more accurate extraction.
- Introduce CanonicalProduct type for improved type safety in receipt item validation.
- Refactor validation logic to handle exceptions more gracefully and ensure proper type annotations.
- Update async validation tasks to maintain concurrency limits while processing receipt items.
- Improve error messaging for validation failures and unexpected result formats.
- Introduce centralized JSON coercion utility in json_helpers.py to streamline JSON-compatible value conversion.
- Replace inline coercion logic in specialized_exceptions.py, security.py, and c_intel.py with the new utility for improved consistency and maintainability.
- Update error handling to utilize the centralized coercion method, enhancing type safety across the application.
- Comment out the USER vscode switch to avoid permission conflicts during npm global installs.
- Comment out the npm install command for task-master-ai, repomix, and claude-code to prevent installation as vscode user.
- Add support for mounting the Codex CLI config directory in the Docker Compose file.
- Ensure the creation of necessary CLI config directories for Claude and Codex in the post-create script.
- Install additional developer CLI tooling including task-master, repomix, claude-code, and @openai/codex during the post-create process.
- Delete .claude.yaml, .codespellignore, .pyreflyignore, and other obsolete configuration files.
- Clean up test_tmp.txt and .idx/dev.nix to streamline the repository structure.
- Update typing in error handling and validation nodes to improve type safety.
- Refactor cache decorators for async compatibility and cleanup functionality.
- Enhance URL processing and validation logic with improved type checks.
- Centralize error handling and recovery mechanisms in nodes.
- Simplify and standardize function signatures across multiple modules for consistency.
- Resolve linting issues and ensure compliance with type safety standards.
- Fix Pydantic Field constraints using Annotated pattern
- Fix database access to use asyncpg pool directly
- Fix LLM client max_tokens parameter usage
- Add type safety checks for dict operations
- Fix Discord.py type annotations and overrides
- Add pyrefly ignore comments for false positives
- Fix bot.user null checks in event handlers
- Ensure all Discord services pass type checking
* feat: implement async factory functions and optimize blocking I/O operations
* refactor: improve thread safety and error handling in graph factory caching system
* Update src/biz_bud/agents/buddy_agent.py
Co-authored-by: qodo-merge-pro[bot] <151058649+qodo-merge-pro[bot]@users.noreply.github.com>
* Update src/biz_bud/services/factory/service_factory.py
Co-authored-by: qodo-merge-pro[bot] <151058649+qodo-merge-pro[bot]@users.noreply.github.com>
* Update src/biz_bud/core/edge_helpers/error_handling.py
Co-authored-by: qodo-merge-pro[bot] <151058649+qodo-merge-pro[bot]@users.noreply.github.com>
* refactor: extract validation helpers and improve code organization in workflow modules
* refactor: extract shared code into helper methods and reuse across modules
* fix: prevent task cancellation leaks and improve async handling across core services
* refactor: replace async methods with sync in URL processing and error handling
* refactor: replace emoji and unsafe regex with plain text and secure regex operations
* refactor: consolidate timeout handling and regex safety checks with cross-platform support
* refactor: consolidate async detection and error normalization utilities across core modules
* Update src/biz_bud/core/utils/url_analyzer.py
Co-authored-by: qodo-merge-pro[bot] <151058649+qodo-merge-pro[bot]@users.noreply.github.com>
* fix: prevent config override in LLM kwargs to maintain custom parameters
* refactor: centralize regex security and async context handling with improved error handling
* Update scripts/checks/audit_core_dependencies.py
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
* Update scripts/checks/audit_core_dependencies.py
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
* Update scripts/checks/audit_core_dependencies.py
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
* Update scripts/checks/audit_core_dependencies.py
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
* fix: correct regex pattern for alternation in repeated groups by removing escaped bracket
* fix: resolve pre-commit hooks configuration and update dependencies
- Clean and reinstall pre-commit hooks to fix corrupted cache
- Update isort to v6.0.1 to resolve deprecation warnings
- Fix pytest PT012 error by separating pytest.raises from context managers
- Fix pytest PT011 errors by using GraphInterrupt instead of generic Exception
- Fix formatting and trailing whitespace issues automatically applied by hooks
* chore: remove deprecated files and clean up project structure
* fix: use safe regex utilities in json_extractor validation
- Replace unsafe re.search() calls with SafeRegexCompiler in _validate_input_security
- Use already imported _compiler instance for pattern compilation
- Add timeout protection (0.5s) for security pattern checks
- Properly handle exceptions during pattern compilation
- This prevents the security validation itself from being vulnerable to ReDoS attacks
* chore: remove deprecated files and clean up project structure
* feat: enhance metric tracking and memory management utilities
- Introduced new functions for initializing and updating metrics in the langgraph module.
- Added memory usage and concurrency management functions in async_utils.
- Refactored extractors and orchestrator to utilize new memory management functions for dynamic concurrency scaling.
- Removed deprecated memory management code from extractors and orchestrator.
* refactor: enhance graph construction with new configuration approach
- Updated graph.py and subgraphs.py to utilize GraphBuilderConfig for defining nodes and edges.
- Removed deprecated StateGraph usage in favor of a more modular graph construction method.
- Improved readability and maintainability of graph creation functions across various modules.
* fix: improve error handling in async cleanup and shutdown processes
- Enhanced the cleanup method in the cache decorator to preserve CancelledError during cleanup.
- Updated the service lifecycle manager to better handle CancelledError during shutdown and service cleanup.
- Ensured that all exceptions are properly logged and handled, maintaining robustness in async operations.
* refactor: standardize return type annotations for CompiledStateGraph
- Updated function signatures across multiple modules to use a consistent return type annotation for CompiledStateGraph.
- Improved code clarity and maintainability by removing specific type parameters in favor of a more general annotation.
---------
Co-authored-by: qodo-merge-pro[bot] <151058649+qodo-merge-pro[bot]@users.noreply.github.com>
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com>
- Updated function signatures across multiple modules to use a consistent return type annotation for CompiledStateGraph.
- Improved code clarity and maintainability by removing specific type parameters in favor of a more general annotation.
- Enhanced the cleanup method in the cache decorator to preserve CancelledError during cleanup.
- Updated the service lifecycle manager to better handle CancelledError during shutdown and service cleanup.
- Ensured that all exceptions are properly logged and handled, maintaining robustness in async operations.
- Updated graph.py and subgraphs.py to utilize GraphBuilderConfig for defining nodes and edges.
- Removed deprecated StateGraph usage in favor of a more modular graph construction method.
- Improved readability and maintainability of graph creation functions across various modules.
- Introduced new functions for initializing and updating metrics in the langgraph module.
- Added memory usage and concurrency management functions in async_utils.
- Refactored extractors and orchestrator to utilize new memory management functions for dynamic concurrency scaling.
- Removed deprecated memory management code from extractors and orchestrator.
- Replace unsafe re.search() calls with SafeRegexCompiler in _validate_input_security
- Use already imported _compiler instance for pattern compilation
- Add timeout protection (0.5s) for security pattern checks
- Properly handle exceptions during pattern compilation
- This prevents the security validation itself from being vulnerable to ReDoS attacks
- Clean and reinstall pre-commit hooks to fix corrupted cache
- Update isort to v6.0.1 to resolve deprecation warnings
- Fix pytest PT012 error by separating pytest.raises from context managers
- Fix pytest PT011 errors by using GraphInterrupt instead of generic Exception
- Fix formatting and trailing whitespace issues automatically applied by hooks
- Resolved conflicts in src/biz_bud/graphs/graph.py:
- Unified create_initial_state functions to use main branch implementation
- Maintained optimized async/sync patterns from main
- Preserved performance improvements and caching logic
- Resolved conflicts in tests/integration_tests/graphs/test_main_graph_integration.py:
- Fixed test assertions to use consistent state access patterns
- Removed deprecated .get() calls in favor of direct dictionary access
- Maintained test compatibility with resolved state structure
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>