Core Changes

  • Migration to Pipeline - Library code migrated to use new Pipeline replacing legacy RawChain and ResultChain
  • Response Generation - Enhanced ResponseGenerator with improved error handling using CanCarryState interface
  • Partial Response Validation - Updated validation flow to use new state interface
  • Type Safety Improvements - Better type annotations and interface compliance across pipeline components

Breaking Changes

  • JsonSchema factory methods - Parameter order changed in factory methods:
    • Old: JsonSchema::string($name, $nullable, $description)
    • New: JsonSchema::string($name, $description, $title, $nullable)
  • Pipeline interfaces - Introduction of CanCarryState interface may affect custom pipeline processors (update type hints from ProcessingState to CanCarryState)

JsonSchema Package

  • Fixed parameter ordering - Corrected JsonSchema factory method parameter order for consistent API across string(), integer(), number(), boolean(), enum(), array(), and collection() methods
  • Enhanced nullable handling - Fixed bug where nullable property was incorrectly set when description was passed as second parameter

Pipeline Package

  • CanCarryState Interface - Introduced new CanCarryState interface for improved state management abstraction
  • ProcessingState Optimizations - Slimmed down ProcessingState class for cleaner API
  • Enhanced Error Handling - Improved error extraction and processing with better type safety

Bug Fixes

  • JsonSchema nullable property - Fixed critical bug where nullable: true was incorrectly set in JSON schema output when description was passed as nullable parameter
  • Parameter type coercion - Resolved issue where string descriptions were being cast to boolean for nullable property

Documentation

  • Pipeline Documentation - New CHEATSHEET.md and OVERVIEW.md with current API patterns

Full Changelog: v1.3.0…v1.4.0