> ## Documentation Index
> Fetch the complete documentation index at: https://docs.instructorphp.com/llms.txt
> Use this file to discover all available pages before exploring further.

# V1.5.0

### 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.md` → `CHEATSHEET.md`, `INTERNALS.md`)
* **Configuration Files** - Cleaned up deprecated `httpClientPreset` parameters from configuration presets

***

**Full Changelog**: [v1.4.2...v1.5.0](https://github.com/cognesy/instructor-php/compare/v1.4.2...v1.5.0)
