Merged
Conversation
Contributor
There was a problem hiding this comment.
Code Review
This pull request replaces hardcoded schema block delimiters with constants and introduces a normalization step in the payload fixer to handle smart quotes, improving parsing reliability. It also updates the generate_system_prompt signature to use client_ui_capabilities instead of supported_catalog_ids and refactors internal validation logic by removing an unused parameter. I have no feedback to provide.
1. Introduce some constants instead of hard-coding strings.
2. Removing unused parameter
3. Gemini has fixed a discrepency in the `client_ui_capabilities`.
It found a technical mismatch within the Python SDK itself between
the interface and its implementation.
Specifically:
- The Interface (inference_strategy.py) defined
generate_system_prompt with the parameter:
supported_catalog_ids: List[str] = []
- The Implementation (core/schema/manager.py) actually overrode it
using:
client_ui_capabilities: Optional[dict[str, Any]] = None
and relied heavily on that dictionary to prune and select
catalogs.
4. Working on the Kotlin SDK, the LLM decided to use "smart quotes".
Add support for fixing this in case it happens again.
4380520 to
2e61085
Compare
jonsharkey
approved these changes
Mar 27, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Introduce some constants instead of hard-coding strings.
Removing unused parameter
Gemini has fixed a discrepency in the
client_ui_capabilities. It found a technical mismatch within the Python SDK itself between the interface and its implementation.Specifically: - The Interface (inference_strategy.py) defined generate_system_prompt with the parameter: supported_catalog_ids: List[str] = [] - The Implementation (core/schema/manager.py) actually overrode it using: client_ui_capabilities: Optional[dict[str, Any]] = None and relied heavily on that dictionary to prune and select catalogs.
Working on the Kotlin SDK, the LLM decided to use "smart quotes". Add support for fixing this in case it happens again.
Pre-launch Checklist
If you need help, consider asking for advice on the discussion board.