Repository navigation
fix(schema): accept and declare the adcp_version echo on every task response (#8518) #8523
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| --- | ||
| "adcontextprotocol": patch | ||
| --- | ||
|
|
||
| Every task response schema now accepts and declares the `adcp_version` echo that `versioning.mdx` requires on every response (#8518). Closed responses that rejected it now declare `adcp_version` as a `$ref` to `core/version-envelope.json#/properties/adcp_version`: `control_media_buy`, `decline_proposals`, `get_media_buy_issue`, `report_media_buy_issue`, `list_collections`, `list_proposals`, and `media-buy-commitment-response.json`, which covers `buy_products` and `accept_proposal`. Open status payloads that tolerated it without declaring it now compose `core/version-envelope.json` via root `allOf`: `core/compact-task-working.json`, `core/compact-task-input-required.json`, and the non-compact `*-async-response-{submitted,working,input-required}` payloads. The `list_products` echo drops its `x-added-in: 3.3.0` marker because the echo is backported to 3.2.x. A conforming seller already emits the echo, so no seller becomes non-conformant; a malformed echo (for example `"3.3.0"`) now fails validation where these schemas declare it. `tests/response-version-echo.test.cjs` enumerates every tool's response and async status schemas from the tool registry and fails when one rejects the echo, leaves it undeclared, or declares it with a different shape. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -19,6 +19,7 @@ | |
| } | ||
| ], | ||
| "properties": { | ||
| "adcp_version": { "$ref": "/schemas/core/version-envelope.json#/properties/adcp_version" }, | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. MUST FIX: This root is |
||
| "results": { | ||
| "type": "array", | ||
| "minItems": 0, | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -21,6 +21,7 @@ | |
| } | ||
| }, | ||
| "properties": { | ||
| "adcp_version": { "$ref": "/schemas/core/version-envelope.json#/properties/adcp_version" }, | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. MUST FIX: |
||
| "status": { "type": "string", "const": "completed" }, | ||
| "media_buy_id": { | ||
| "type": "string", | ||
|
|
@@ -126,6 +127,7 @@ | |
| "title": "Commitment Error", | ||
| "type": "object", | ||
| "properties": { | ||
| "adcp_version": { "$ref": "/schemas/core/version-envelope.json#/properties/adcp_version" }, | ||
| "status": { "type": "string", "const": "failed" }, | ||
| "errors": { | ||
| "type": "array", | ||
|
|
@@ -144,6 +146,7 @@ | |
| "title": "Commitment Submitted", | ||
| "type": "object", | ||
| "properties": { | ||
| "adcp_version": { "$ref": "/schemas/core/version-envelope.json#/properties/adcp_version" }, | ||
| "status": { "type": "string", "const": "submitted" }, | ||
| "task_id": { "type": "string", "minLength": 1, "x-entity": "task" }, | ||
| "message": { "type": "string", "maxLength": 2000 }, | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
MUST FIX:
adcp_versionis added to all threeoneOfarms here, but each arm isadditionalProperties: falsein 3.2.7 (dist/schemas/3.2.7/media-buy/control-media-buy-response.json) and stays closed in this PR.scripts/lint-additive-minor-corrections.jsonis empty and the baseline carries no entry for these, so the DR-0036 additive-minor lint reportsproperty-added-to-closedforadcp_versionon/oneOf/0,/oneOf/1,/oneOf/2. "Build and static checks" is red. DR-0036's own design requires either reopening these roots (correction (a), property*) or recording theadcp_versioncorrection (b) incorrections.jsonplus the DR-0036 table — the correction entries #8523 was meant to add are missing. Same gap ondecline-proposals-response.jsonandmedia-buy-commitment-response.json.