Breaking Changes

  • Provider Architecture - LLMProvider and EmbeddingsProvider no longer create drivers directly. Custom implementations using these classes must be updated to work with the new configuration-only pattern
  • Interface Requirements - Components relying on driver creation methods in providers need to implement new typed interfaces (HasExplicitInferenceDriver, HasExplicitEmbeddingsDriver)

Architecture Refactoring

  • Configuration Provider Pattern - Complete transformation of LLMProvider and EmbeddingsProvider into pure configuration resolvers, removing driver creation responsibilities for cleaner separation of concerns
  • HTTP Client Initialization - Enhanced HTTP client handling with fallback creation in HandlesInvocation trait for improved reliability
  • Type-Safe Interfaces - Added new typed interfaces: CanResolveLLMConfig, CanResolveEmbeddingsConfig, HasExplicitInferenceDriver, HasExplicitEmbeddingsDriver for better type safety

Core Improvements

  • Immutable Data Structures - Enhanced message handling with immutable data structures for better thread safety and predictability
  • Configuration Resolution - Improved configuration provider resolution in EmbeddingsProvider with proper events and error handling
  • PHP 8.4 Support - Better support for PHP 8.4 with updated dependencies

Bug Fixes

  • LLMProviderConfigTest - Fixed test configuration issues for improved reliability
  • Import Statements - Corrected import statements and ensured consistent use of qualified class names
  • Property Assignment - Fixed property assignment typo in HandlesFluentMethods trait
  • Config Resolver Events - Added proper config resolution events and error handling throughout the system

Development Tools & Documentation

  • Documentation Cleanup - Removed extensive outdated cookbook documentation, examples, and legacy configuration files for cleaner codebase maintenance
  • Documentation Restructure - Reorganized package documentation files with consistent naming conventions (OVERVIEW.mdCHEATSHEET.md, INTERNALS.md)
  • Configuration Files - Cleaned up deprecated httpClientPreset parameters from configuration presets

Full Changelog: v1.4.2…v1.5.0