From 20f98146b2e65388aa40442d106dae1c7aa2f489 Mon Sep 17 00:00:00 2001 From: damaz91 Date: Tue, 11 Aug 2026 12:32:21 +0000 Subject: [PATCH 1/3] docs: fix broken links in draft specification by adding ucp_version macros --- docs/specification/identity-linking.md | 14 +++++++------- docs/specification/order-mcp.md | 2 +- docs/specification/permalink.md | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/docs/specification/identity-linking.md b/docs/specification/identity-linking.md index 5cd3d3a66..812886f5f 100644 --- a/docs/specification/identity-linking.md +++ b/docs/specification/identity-linking.md @@ -17,7 +17,7 @@ # Identity Linking Capability * **Capability Name:** `dev.ucp.common.identity_linking` -* **Schema:** `https://ucp.dev/schemas/common/identity_linking.json` +* **Schema:** `https://ucp.dev/{{ ucp_version }}/schemas/common/identity_linking.json` ## Overview @@ -481,8 +481,8 @@ direct OAuth flows (always available via discovery): "capabilities": { "dev.ucp.common.identity_linking": [{ "version": "{{ ucp_version }}", - "spec": "https://ucp.dev/specification/identity-linking", - "schema": "https://ucp.dev/schemas/common/identity_linking.json", + "spec": "https://ucp.dev/{{ ucp_version }}/specification/identity-linking", + "schema": "https://ucp.dev/{{ ucp_version }}/schemas/common/identity_linking.json", "config": { "providers": { "app.example.login": [ @@ -1123,8 +1123,8 @@ operations gated: "capabilities": { "dev.ucp.common.identity_linking": [{ "version": "{{ ucp_version }}", - "spec": "https://ucp.dev/specification/identity-linking", - "schema": "https://ucp.dev/schemas/common/identity_linking.json", + "spec": "https://ucp.dev/{{ ucp_version }}/specification/identity-linking", + "schema": "https://ucp.dev/{{ ucp_version }}/schemas/common/identity_linking.json", "config": { "scopes": { "dev.ucp.shopping.order:read": {}, @@ -1161,8 +1161,8 @@ No guest checkout — every transaction requires an authenticated user: "capabilities": { "dev.ucp.common.identity_linking": [{ "version": "{{ ucp_version }}", - "spec": "https://ucp.dev/specification/identity-linking", - "schema": "https://ucp.dev/schemas/common/identity_linking.json", + "spec": "https://ucp.dev/{{ ucp_version }}/specification/identity-linking", + "schema": "https://ucp.dev/{{ ucp_version }}/schemas/common/identity_linking.json", "config": { "scopes": { "dev.ucp.shopping.checkout:manage": {}, diff --git a/docs/specification/order-mcp.md b/docs/specification/order-mcp.md index 34041e0e0..05b6335f0 100644 --- a/docs/specification/order-mcp.md +++ b/docs/specification/order-mcp.md @@ -297,7 +297,7 @@ Platforms implementing the MCP binding: Businesses implementing the MCP binding: * **MUST** implement the `get_order` tool per the - [OpenRPC schema](https://ucp.dev/services/shopping/mcp.openrpc.json) + [OpenRPC schema](https://ucp.dev/{{ ucp_version }}/services/shopping/mcp.openrpc.json) See [Order Capability - Guidelines](order.md#operations-guidelines) for capability-level requirements that apply across all transports. diff --git a/docs/specification/permalink.md b/docs/specification/permalink.md index 8b7e25245..cce4b9976 100644 --- a/docs/specification/permalink.md +++ b/docs/specification/permalink.md @@ -17,7 +17,7 @@ # Permalink Capability * **Capability Name:** `dev.ucp.shopping.permalink` -* **Schema:** `https://ucp.dev/schemas/shopping/permalink.json` +* **Schema:** `https://ucp.dev/{{ ucp_version }}/schemas/shopping/permalink.json` ## Overview From f8bf9908eede06d49900b6669157406e49d94000 Mon Sep 17 00:00:00 2001 From: damaz91 Date: Tue, 11 Aug 2026 12:39:56 +0000 Subject: [PATCH 2/3] style: fix markdownlint MD034 error in order-mcp.md --- docs/specification/order-mcp.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/specification/order-mcp.md b/docs/specification/order-mcp.md index 05b6335f0..5d1772c21 100644 --- a/docs/specification/order-mcp.md +++ b/docs/specification/order-mcp.md @@ -297,7 +297,7 @@ Platforms implementing the MCP binding: Businesses implementing the MCP binding: * **MUST** implement the `get_order` tool per the - [OpenRPC schema](https://ucp.dev/{{ ucp_version }}/services/shopping/mcp.openrpc.json) + [OpenRPC schema](https://ucp.dev/{{ucp_version}}/services/shopping/mcp.openrpc.json) See [Order Capability - Guidelines](order.md#operations-guidelines) for capability-level requirements that apply across all transports. From c6900f77624e17421ba23389e5f257ad73bc8fbd Mon Sep 17 00:00:00 2001 From: damaz91 Date: Wed, 12 Aug 2026 09:04:36 +0000 Subject: [PATCH 3/3] docs: replace hardcoded version references with ucp_version macro --- docs/documentation/core-concepts.md | 26 +++++++++++++------------- docs/specification/checkout-mcp.md | 4 ++-- docs/specification/checkout-rest.md | 4 ++-- docs/specification/checkout.md | 2 +- docs/specification/overview.md | 4 ++-- docs/specification/split-payments.md | 2 +- 6 files changed, 21 insertions(+), 21 deletions(-) diff --git a/docs/documentation/core-concepts.md b/docs/documentation/core-concepts.md index a8fbec62b..f3d28a6a8 100644 --- a/docs/documentation/core-concepts.md +++ b/docs/documentation/core-concepts.md @@ -165,10 +165,10 @@ core capabilities. { "dev.ucp.shopping.fulfillment": [ { - "version": "2026-04-08", + "version": "{{ ucp_version }}", "extends": "dev.ucp.shopping.checkout", - "spec": "https://ucp.dev/2026-04-08/specification/fulfillment", - "schema": "https://ucp.dev/2026-04-08/schemas/shopping/fulfillment.json" + "spec": "https://ucp.dev/{{ ucp_version }}/specification/fulfillment", + "schema": "https://ucp.dev/{{ ucp_version }}/schemas/shopping/fulfillment.json" } ] } @@ -270,28 +270,28 @@ authentication are resolved together. ```json { "ucp": { - "version": "2026-04-08", + "version": "{{ ucp_version }}", "services": { "dev.ucp.shopping": [ { - "version": "2026-04-08", - "spec": "https://ucp.dev/2026-04-08/specification/overview", + "version": "{{ ucp_version }}", + "spec": "https://ucp.dev/{{ ucp_version }}/specification/overview", "transport": "rest", - "schema": "https://ucp.dev/2026-04-08/services/shopping/rest.openapi.json", + "schema": "https://ucp.dev/{{ ucp_version }}/services/shopping/rest.openapi.json", "endpoint": "https://business.example.com/ucp/v1" } ] }, "capabilities": { "dev.ucp.shopping.checkout": [{ - "version": "2026-04-08", - "spec": "https://ucp.dev/2026-04-08/specification/checkout", - "schema": "https://ucp.dev/2026-04-08/schemas/shopping/checkout.json" + "version": "{{ ucp_version }}", + "spec": "https://ucp.dev/{{ ucp_version }}/specification/checkout", + "schema": "https://ucp.dev/{{ ucp_version }}/schemas/shopping/checkout.json" }], "dev.ucp.shopping.fulfillment": [{ - "version": "2026-04-08", - "spec": "https://ucp.dev/2026-04-08/specification/fulfillment", - "schema": "https://ucp.dev/2026-04-08/schemas/shopping/fulfillment.json", + "version": "{{ ucp_version }}", + "spec": "https://ucp.dev/{{ ucp_version }}/specification/fulfillment", + "schema": "https://ucp.dev/{{ ucp_version }}/schemas/shopping/fulfillment.json", "extends": "dev.ucp.shopping.checkout" }] }, diff --git a/docs/specification/checkout-mcp.md b/docs/specification/checkout-mcp.md index 9477c0cd8..e2e4f2d94 100644 --- a/docs/specification/checkout-mcp.md +++ b/docs/specification/checkout-mcp.md @@ -354,7 +354,7 @@ Maps to the [Create Checkout](checkout.md#create-checkout) operation. "id": 1, "result": { "structuredContent": { - "ucp": { "version": "2026-01-11", "status": "error" }, + "ucp": { "version": "{{ ucp_version }}", "status": "error" }, "messages": [ { "type": "error", @@ -711,7 +711,7 @@ JSON-RPC `result` with `structuredContent` containing the UCP envelope and `mess "id": 1, "result": { "structuredContent": { - "ucp": { "version": "2026-01-11", "status": "error" }, + "ucp": { "version": "{{ ucp_version }}", "status": "error" }, "messages": [ { "type": "error", diff --git a/docs/specification/checkout-rest.md b/docs/specification/checkout-rest.md index 653851c97..05d23607c 100644 --- a/docs/specification/checkout-rest.md +++ b/docs/specification/checkout-rest.md @@ -213,7 +213,7 @@ All REST endpoints **MUST** be served over HTTPS with minimum TLS version Content-Type: application/json { - "ucp": { "version": "2026-01-11", "status": "error" }, + "ucp": { "version": "{{ ucp_version }}", "status": "error" }, "messages": [ { "type": "error", @@ -1391,7 +1391,7 @@ HTTP 200 and the UCP envelope containing `messages` ```json { - "ucp": { "version": "2026-01-11", "status": "error" }, + "ucp": { "version": "{{ ucp_version }}", "status": "error" }, "messages": [ { "type": "error", diff --git a/docs/specification/checkout.md b/docs/specification/checkout.md index 4222e17bf..4c1099260 100644 --- a/docs/specification/checkout.md +++ b/docs/specification/checkout.md @@ -255,7 +255,7 @@ items are unavailable: ```json { - "ucp": { "version": "2026-01-11", "status": "error" }, + "ucp": { "version": "{{ ucp_version }}", "status": "error" }, "messages": [ { "type": "error", diff --git a/docs/specification/overview.md b/docs/specification/overview.md index dd3e17a5c..03d8ad449 100644 --- a/docs/specification/overview.md +++ b/docs/specification/overview.md @@ -2799,11 +2799,11 @@ Version unsupported error — no resource is created: ```json { - "ucp": { "version": "2026-01-11", "status": "error" }, + "ucp": { "version": "{{ ucp_version }}", "status": "error" }, "messages": [{ "type": "error", "code": "version_unsupported", - "content": "Version 2026-01-12 is not supported. This business implements version 2026-01-11.", + "content": "Version 2026-01-12 is not supported. This business implements version {{ ucp_version }}.", "severity": "unrecoverable" }], "continue_url": "https://merchant.com/" diff --git a/docs/specification/split-payments.md b/docs/specification/split-payments.md index 86e948139..ff968d7ae 100644 --- a/docs/specification/split-payments.md +++ b/docs/specification/split-payments.md @@ -113,7 +113,7 @@ gift cards alone, and (c) two credit cards: "capabilities": [{ "dev.ucp.shopping.split_payments": [ { - "version": "2026-01-23", + "version": "{{ ucp_version }}", "config": { "allowed_combinations": [ [