Python a2ui_agent: Support custom cuttable keys configuration#1581
Python a2ui_agent: Support custom cuttable keys configuration#1581nan-yu wants to merge 4 commits into
Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces support for custom cuttable keys in both the Kotlin and Python SDKs, allowing users to configure which keys can be safely auto-closed when fragmented in a stream. The changes include updates to the conformance schema, suites, catalog configurations, and streaming parsers. The review feedback highlights critical regressions in both Kotlin and Python where the parser defaults to an empty set of cuttable keys instead of the default set when no catalog is provided. Additionally, several improvements are suggested to simplify redundant conditional logic when instantiating catalogs and configurations.
|
/gemini summary |
…iCatalog and streaming parser
…ingParser to use dynamic values
Summary of ChangesThis pull request enables configurable cuttable keys for the A2UI streaming parser, moving away from a hard-coded set. This change allows users to define custom keys that can be safely auto-healed during stream processing, improving robustness for varied data structures. The implementation spans the core catalog configuration, SDK logic in both Kotlin and Python, and updated conformance tests to ensure consistent behavior. Highlights
Activity
|
6c36fb9 to
76c322f
Compare
It follows up internal discussion in https://chat.google.com/room/AAQAA_wnJC4/s8Cir-DWpYA/s8Cir-DWpYA?cls=10.
Instead of using a hard-coded set of cuttable keys for auto-healing during stream parsing process, it allows configuring a set of custom configuration keys.
Summary of Changes
This pull request enables configurable cuttable keys for the A2UI streaming parser, moving away from a hard-coded set. This change allows users to define custom keys that can be safely auto-healed during stream processing, improving robustness for varied data structures. The implementation spans the core catalog configuration, SDK logic in both Kotlin and Python, and updated conformance tests to ensure consistent behavior.
Highlights
Activity