From ecf81dd15ca54b72aa57498c993381f6c31c9ff9 Mon Sep 17 00:00:00 2001 From: Vishal Katyal Date: Thu, 27 Aug 2026 13:26:02 -0400 Subject: [PATCH 1/2] fix(rest/python): bound ucp-sdk below 0.5 until the server targets v2026-08-25 The server implements UCP 2026-04-08 and declares ucp-sdk with no version bound, so every fresh uv sync resolves the newest release. ucp-sdk 0.5.0, published 2026-08-27T16:10Z, regenerates the models for spec v2026-08-25 and relocates the payment schemas out of shopping/, so a fresh clone now fails at import: ModuleNotFoundError for ucp_sdk.models.schemas.shopping.payment_create_request via generated_routes/ucp_routes.py. Bounding to >=0.4.6,<0.5 keeps fresh resolutions on the 0.4.x line this server is generated against; the bound lifts when the server migrates to the new release. --- rest/python/server/pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rest/python/server/pyproject.toml b/rest/python/server/pyproject.toml index 6341629..4759a5d 100644 --- a/rest/python/server/pyproject.toml +++ b/rest/python/server/pyproject.toml @@ -17,7 +17,7 @@ dependencies = [ "greenlet>=3.0.0", "fastapi-code-generator>=0.5.4", "click==8.1.7", - "ucp-sdk", + "ucp-sdk>=0.4.6,<0.5", "shortuuid", "httpx>=0.26.0", "cryptography>=42", From 064f4be3ba473a5cff44e326a4f9895b37dab0c1 Mon Sep 17 00:00:00 2001 From: damaz91 Date: Mon, 7 Sep 2026 15:25:06 +0000 Subject: [PATCH 2/2] fix(rest/python): bound client ucp-sdk and update test fixture for 0.4.6 - Bound ucp-sdk in rest/python/client/flower_shop/pyproject.toml to >=0.4.6,<0.5 to keep dependencies aligned with the server. - Update _create_checkout_payload in rest/python/server/integration_test.py to construct ShippingDestinationCreateRequest so destinations match FulfillmentMethodCreateRequest validation under ucp-sdk 0.4.6. --- rest/python/client/flower_shop/pyproject.toml | 2 +- rest/python/server/integration_test.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/rest/python/client/flower_shop/pyproject.toml b/rest/python/client/flower_shop/pyproject.toml index c93378f..785860d 100644 --- a/rest/python/client/flower_shop/pyproject.toml +++ b/rest/python/client/flower_shop/pyproject.toml @@ -10,7 +10,7 @@ authors = [ dependencies = [ "cryptography>=42", "pydantic>=2.12.0", - "ucp-sdk", + "ucp-sdk>=0.4.6,<0.5", ] [dependency-groups] diff --git a/rest/python/server/integration_test.py b/rest/python/server/integration_test.py index 55b0ba6..1e55400 100644 --- a/rest/python/server/integration_test.py +++ b/rest/python/server/integration_test.py @@ -81,7 +81,7 @@ line_item_create_request as line_item_create_req, ) from ucp_sdk.models.schemas.shopping.types import ( - shipping_destination as shipping_destination_req, + shipping_destination_create_request as shipping_destination_req, ) FLAGS = flags.FLAGS @@ -250,7 +250,7 @@ def _create_checkout_payload( payment = payment_create_req.PaymentCreateRequest(instruments=[]) # Hierarchical Fulfillment Construction - destination = shipping_destination_req.ShippingDestination( + destination = shipping_destination_req.ShippingDestinationCreateRequest( id="dest_1", address_country="US" ) group = fulfillment_group_create_req.FulfillmentGroupCreateRequest(