Repository navigation
schemas: withdraw signing_profile and metric_id, restore evaluator as deprecated (#8501 entries 2, 3, 6, 26) - #8854
Conversation
… deprecated Entries 2, 3, 6 and 26 of the adcontextprotocol#8501 disposition table. - notification-config and agent-notification-config: withdraw signing_profile, which 3.3 beta added to closed schemas. Deliveries without an authentication block are signed with adcp/webhook-signing/v1. - performance standards: withdraw metric_id and restore the 3.2.8 schemas. A 4.0 registry entry, performance_standard_metric_id_required_in_4_0, keeps the design for the major. - x-entity-types: restore evaluator as a deprecated value, with its 3.2.8 definition.
Preview approval requiredThis pull request comes from a fork, so Mintlify won't build a preview until someone with write access approves commit |
|
@KonstantinMirin, a check against the Nov 9 decision to open the 3.x schemas that were closed by accident (re-triage posted on #8501):
Was there a reason beyond closure for withdrawing |
|
Hi Brian, no, there was no signed-meaning or security concern. I'll drop entries 2 and 3 and keep 6 and 26. The description's other point, that a per-registration profile matters only until 4.0 removes the RFC 9421 profile, is a reason to keep the field, not to withdraw it. During 3.x, I'll rebase on main now that #8866 has landed. |
Summary
This PR does entries 2, 3, 6 and 26 of the disposition table on #8501, the ones I said I'd take. A 3.3 minor release shouldn't add a property to a schema that 3.2 published closed, or remove an enum value 3.2 published (DR-0036). Neither field is in 3.2.8 or 3.2.9; both shipped only in 3.3 betas, so no stable release breaks.
Part of #8501.
signing_profileoncore/notification-config.jsonandcore/agent-notification-config.jsonext, so DR-0019 lets them stay closed, and a per-registration profile matters only until 4.0 removes the RFC 9421 profile.push_notification_config,reporting_webhookandartifact_webhookkeep it.metric_idoncore/canonical-performance-standard.json, plus the two deprecated-task rows:core/performance-standard.jsonandrequired_performance_standardsincore/product-offer-filters.jsonevaluatorincore/x-entity-types.jsonevaluator_idremoval (#8045) stands.Changes
Entries 2 and 3.
signing_profileand thenot: { required: [authentication, signing_profile] }rule leave both notification configs. Theirauthenticationdescriptions go back to saying that without the block the seller signs withadcp/webhook-signing/v1. Thewebhook_signing.profilesdescription inget_adcp_capabilitiesnow lists only the registrations that still carry the field. The field shipped in3.3.0-beta.0through3.3.0-beta.5(#7894).Entry 6.
metric_idand itsviewability/completion_rateguard leave all three schemas.canonical-performance-standard.json,performance-standard.jsonand theperformance-standard-metricenum are byte-for-byte their 3.2.8 versions again; inproduct-offer-filters.jsononly the one line goes, andrequired_vendor_metrics[].metric_id, which 3.2 published, stays. The docs that #8436 added (pricing models, accountability, measurement taxonomy, thecreate_media_buyandget_productstables, the attention example in optimization reporting) go back to their 3.2 meaning. The field shipped in3.3.0-beta.1through3.3.0-beta.5(#8436).The 4.0 compatibility registry gets
performance_standard_metric_id_required_in_4_0(issue #8394,observed_by: none), and the 4.0 page gets a matching section that keeps the design and points at commit43447c15b, which has the schemas, the test and the judging rules.Entry 26.
evaluatoris back in the enum and inx-entity-definitions, listed inx-deprecated-enum-valueswith a note that no 3.3 field carries it. No schema hasx-entity: evaluator, andevaluator-spec.jsonstill has noevaluator_id. The migration guide's evaluator section no longer says the value was removed.Baseline.
scripts/lint-additive-minor-baseline.jsondrops the four rows for these entries, from 38 to 34. None of them needs a corrections-register entry: after this PR the three schemas don't differ from 3.2.8 at these locations.Docs. The migration guide, What's new, the release notes and the 3.3 beta page say what to remove:
metric_idunder "Withdrawn from 3.3, planned for 4.0", andsigning_profilein the webhook signing section of the migration guide and a short "Withdrawn after beta.5" table on the beta page. The Web Bot Auth profile page, experimental status and the release notes' experimental table now name the registrations that carrysigning_profile.Tests.
tests/performance-standard-metric-id.test.cjsis replaced intest:schemasbytests/closed-schema-additions-withdrawn.test.cjs. It checks that both fields are gone, that the closed schemas reject them, that the live webhook configs keepsigning_profile, that the registry has the 4.0 entry, and thatevaluatoris back and deprecated. 12 of its 16 cases fail onmain; the other four check what must stay.tests/x-added-in-3-3-sweep.test.cjsandtests/wba-profile-vectors.test.cjsdrop the withdrawn sites.The training agent doesn't read either field, so it doesn't change.
Expected conflicts
webhook_signing.profilesdescription and the same line ofwba-profile.mdxto dropartifact_webhook. Merged together, the list ispush_notification_configandreporting_webhook. It also touchescreate_media_buy.mdx,get_products.mdx,optimization-reporting.mdx,pricing-models.mdxandtaxonomy.mdxnear themetric_idlines.canonical_price_adjustments_required_in_4_0registry entry and 4.0 page section at the same place as mine. Both stay.Each is a short manual merge, and I'll rebase on whichever lands first.
Testing
npm run build:schemas: pass.npm run test:schemas: pass, including the new test.npm run typecheck: pass.node --test tests/lint-additive-minor.test.cjsandnpm run test:additive-minor: pass. The lint reports 34 recorded changes and 0 new against 3.2.8.node scripts/lint-v4-compatibility-registry.cjsandnpm run test:v4-compatibility-registry: pass.npm run test:wba-profile-vectors,tests/schema-deprecation-metadata,tests/lint-storyboard-context-entity,tests/mcp-schema-projection,tests/mcp-schema-analysis: pass.npm run build:compliance -- --check,test:docs-nav,check:owned-links,lint:schema-links,test:addie-tools, andnode scripts/check-changeset-protocol-scope.cjs origin/main: pass.tests/ipr-check-and-record.test.mjs, which passes on its own). I didn't run the storyboard matrix locally; CI's run is the one to read.Merge timing
Merges after the #8501 consent window closes on Fri 2026-11-13.