[AIGTWY-4573] Parse the managed coding-agent config - #590
Merged
Merged
Conversation
This was referenced Sep 13, 2026
david-siqi-liu
force-pushed
the
david/AIGTWY-4573-parse
branch
from
September 13, 2026 12:25
e053578 to
8d59f7e
Compare
david-siqi-liu
added this pull request to stack #595
September 13, 2026 12:37
david-siqi-liu
force-pushed
the
david/AIGTWY-4573-parse
branch
from
September 13, 2026 12:50
8d59f7e to
3f9c619
Compare
david-siqi-liu
removed this pull request from stack #595
September 13, 2026 18:20
david-siqi-liu
added this pull request to stack #598
September 13, 2026 18:20
david-siqi-liu
force-pushed
the
david/AIGTWY-4573-parse
branch
from
September 13, 2026 23:29
3f9c619 to
c6b9538
Compare
lilly-luo
reviewed
Sep 14, 2026
lilly-luo
reviewed
Sep 14, 2026
lilly-luo
reviewed
Sep 14, 2026
lilly-luo
reviewed
Sep 14, 2026
lilly-luo
reviewed
Sep 14, 2026
lilly-luo
reviewed
Sep 14, 2026
lilly-luo
reviewed
Sep 14, 2026
lilly-luo
reviewed
Sep 14, 2026
lilly-luo
reviewed
Sep 14, 2026
lilly-luo
reviewed
Sep 14, 2026
lilly-luo
reviewed
Sep 14, 2026
lilly-luo
reviewed
Sep 14, 2026
lilly-luo
reviewed
Sep 14, 2026
lilly-luo
reviewed
Sep 14, 2026
lilly-luo
left a comment
Collaborator
There was a problem hiding this comment.
could you add a @DataClass that represents the overall API? it's difficult to grok the shape right now. the dataclass will also help with request / response validation, it's easy to make an error and use the wrong interface
lilly-luo
reviewed
Sep 14, 2026
david-siqi-liu
force-pushed
the
david/AIGTWY-4573-parse
branch
5 times, most recently
from
September 14, 2026 21:16
209bbb6 to
d12daa2
Compare
lilly-luo
reviewed
Sep 14, 2026
lilly-luo
approved these changes
Sep 14, 2026
david-siqi-liu
force-pushed
the
david/AIGTWY-4573-parse
branch
from
September 14, 2026 22:44
d12daa2 to
0d8169e
Compare
Land the CodingAgentConfig parsing and the version and watermark helpers on their own, ahead of any change to launch or configure behavior, so the data-shape change is reviewable in isolation. Nothing here runs on the launch path yet; the stacked launch-apply PR wires it in. - managed_config: model the wire CodingAgentConfig as frozen dataclasses (CodingAgentConfig, EnabledAgent/AgentConfig, AgentModels, the NamesOrLocation selector, SpendTiers) parsed via from_wire and projected to the internal shape via to_internal, so the interface shape is legible instead of scattered dict reads. The model source is the server's oneof: exactly one of model_provider_service / unity_catalog_location / model_services. Add managed_config_is_newer and managed_update_time, a spec_version forward-compat gate (a newer or malformed spec_version keeps the last-known-good cache), and the UCODE_MANAGED_CONFIG_STUB local-file read for pre-server testing. - mcp_servers and skills each parse to a names-or-location selector: an absolute names list of UC FQNs, or a unity_catalog_location (a catalog.schema) whose contents are discovered, exactly one. - Greenfield, so no back-compat: the deprecated wire fields the proto reserves are not read (custom_headers, the model_config oneof, tracing_config, tags) and neither are the reserved top-level display_name or the removed tracing table. - state: add get/set_applied_managed_update_time, the applied-version watermark the launch gate reads. - managed_setup: serialize and validate the same shape (names are 3-part FQNs, location a 2-part catalog.schema, exactly one set), so serialize then normalize round-trips. spec_version is server-owned on export. - databricks: set the managed-config update mask to the mutable, non-reserved paths (default_agent, enabled_agents, mcp_servers, skills, spend_tiers); rename the user-facing "Unity AI Gateway" strings to "Unity Gateway". Co-authored-by: Isaac <no-reply@databricks.com>
david-siqi-liu
force-pushed
the
david/AIGTWY-4573-parse
branch
from
September 14, 2026 23:27
0d8169e to
8a807f7
Compare
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.
Parse the managed
CodingAgentConfigand add the version and watermark helpers on their own, ahead of any launch or configure change, so the data-shape change reviews in isolation. Nothing here runs on the launch path yet; the child PR wires it in.Changes:
CodingAgentConfigas frozen dataclasses (CodingAgentConfig,EnabledAgent/AgentConfig,AgentModels, theNamesOrLocationselector,SpendTiers) parsed viafrom_wireand projected to the internal shape viato_internal, so the interface shape is legible instead of scattered dict reads. The model source is the server's oneof: exactly one ofmodel_provider_service/unity_catalog_location/model_services.mcp_serversandskillseach parse to a names-or-location selector: an absolutenameslist of UC FQNs, or aunity_catalog_location(acatalog.schema) whose contents are discovered, exactly one.custom_headers, themodel_configoneof,tracing_config,tags), and neither are the reserved top-leveldisplay_nameor the removed tracing table.managed_config: addmanaged_config_is_newer/managed_update_time, aspec_versionforward-compat gate (a newer or malformedspec_versionkeeps the last-known-good cache), and theUCODE_MANAGED_CONFIG_STUBlocal-file read for pre-server testing.state: add the applied-version watermark (get/set_applied_managed_update_time) the launch gate reads.managed_setup: serialize and validate the same shape (names are 3-part FQNs, location a 2-partcatalog.schema, exactly one set), so serialize then normalize round-trips.databricks: the managed-config update mask sends the mutable, non-reserved paths (default_agent,enabled_agents,mcp_servers,skills,spend_tiers); rename the user-facing "Unity AI Gateway" strings to "Unity Gateway".This pull request and its description were written by Isaac.