mirror of
https://github.com/hwchase17/langchain.git
synced 2026-01-13 20:06:24 +00:00
Fixes #32042 ## Summary Fixes a critical bug in JSON Schema reference resolution that prevented correctly dereferencing numeric components in JSON pointer paths, specifically for list indices in `anyOf`, `oneOf`, and `allOf` arrays. ## Changes - Fixed `_retrieve_ref` function in `libs/core/langchain_core/utils/json_schema.py` to properly handle numeric components - Added comprehensive test function `test_dereference_refs_list_index()` in `libs/core/tests/unit_tests/utils/test_json_schema.py` - Resolved line length formatting issues - Improved type checking and index validation for list and dictionary references ## Key Improvements - Correctly handles list index references in JSON pointer paths - Maintains backward compatibility with existing dictionary numeric key functionality - Adds robust error handling for out-of-bounds and invalid indices - Passes all test cases covering various reference scenarios ## Test Coverage - Verified fix for `#/properties/payload/anyOf/1/properties/startDate` reference - Tested edge cases including out-of-bounds and negative indices - Ensured no regression in existing reference resolution functionality Resolves the reported issue with JSON Schema reference dereferencing for list indices. --------- Co-authored-by: open-swe-dev[bot] <open-swe-dev@users.noreply.github.com> Co-authored-by: Mason Daugherty <github@mdrxy.com> Co-authored-by: Mason Daugherty <mason@langchain.dev>