@adcp/sdk 6.8.0 → 6.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1060) hide show
  1. package/ADCP_VERSION +1 -1
  2. package/bin/adcp.js +285 -5
  3. package/compliance/cache/3.0.6/domains/brand/index.yaml +163 -0
  4. package/compliance/cache/3.0.6/domains/creative/index.yaml +412 -0
  5. package/compliance/cache/3.0.6/domains/governance/index.yaml +683 -0
  6. package/compliance/cache/3.0.6/domains/media-buy/creative-reception.yaml +247 -0
  7. package/compliance/cache/3.0.6/domains/media-buy/index.yaml +769 -0
  8. package/compliance/cache/3.0.6/domains/media-buy/scenarios/create_media_buy_async.yaml +232 -0
  9. package/compliance/cache/3.0.6/domains/media-buy/scenarios/creative_fate_after_cancellation.yaml +414 -0
  10. package/compliance/cache/3.0.6/domains/media-buy/scenarios/delivery_reporting.yaml +205 -0
  11. package/compliance/cache/3.0.6/domains/media-buy/scenarios/governance_approved.yaml +211 -0
  12. package/compliance/cache/3.0.6/domains/media-buy/scenarios/governance_conditions.yaml +196 -0
  13. package/compliance/cache/3.0.6/domains/media-buy/scenarios/governance_denied.yaml +192 -0
  14. package/compliance/cache/3.0.6/domains/media-buy/scenarios/governance_denied_recovery.yaml +244 -0
  15. package/compliance/cache/3.0.6/domains/media-buy/scenarios/invalid_transitions.yaml +284 -0
  16. package/compliance/cache/3.0.6/domains/media-buy/scenarios/inventory_list_no_match.yaml +143 -0
  17. package/compliance/cache/3.0.6/domains/media-buy/scenarios/inventory_list_targeting.yaml +271 -0
  18. package/compliance/cache/3.0.6/domains/media-buy/scenarios/measurement_terms_rejected.yaml +195 -0
  19. package/compliance/cache/3.0.6/domains/media-buy/scenarios/pending_creatives_to_start.yaml +250 -0
  20. package/compliance/cache/3.0.6/domains/media-buy/scenarios/proposal_finalize.yaml +243 -0
  21. package/compliance/cache/3.0.6/domains/media-buy/scenarios/refine_products.yaml +148 -0
  22. package/compliance/cache/3.0.6/domains/media-buy/state-machine.yaml +442 -0
  23. package/compliance/cache/3.0.6/domains/signals/index.yaml +266 -0
  24. package/compliance/cache/3.0.6/domains/sponsored-intelligence/index.yaml +256 -0
  25. package/compliance/cache/3.0.6/index.json +324 -0
  26. package/compliance/cache/3.0.6/protocols/brand/index.yaml +163 -0
  27. package/compliance/cache/3.0.6/protocols/creative/index.yaml +412 -0
  28. package/compliance/cache/3.0.6/protocols/governance/index.yaml +683 -0
  29. package/compliance/cache/3.0.6/protocols/media-buy/creative-reception.yaml +247 -0
  30. package/compliance/cache/3.0.6/protocols/media-buy/index.yaml +769 -0
  31. package/compliance/cache/3.0.6/protocols/media-buy/scenarios/create_media_buy_async.yaml +232 -0
  32. package/compliance/cache/3.0.6/protocols/media-buy/scenarios/creative_fate_after_cancellation.yaml +414 -0
  33. package/compliance/cache/3.0.6/protocols/media-buy/scenarios/delivery_reporting.yaml +205 -0
  34. package/compliance/cache/3.0.6/protocols/media-buy/scenarios/governance_approved.yaml +211 -0
  35. package/compliance/cache/3.0.6/protocols/media-buy/scenarios/governance_conditions.yaml +196 -0
  36. package/compliance/cache/3.0.6/protocols/media-buy/scenarios/governance_denied.yaml +192 -0
  37. package/compliance/cache/3.0.6/protocols/media-buy/scenarios/governance_denied_recovery.yaml +244 -0
  38. package/compliance/cache/3.0.6/protocols/media-buy/scenarios/invalid_transitions.yaml +284 -0
  39. package/compliance/cache/3.0.6/protocols/media-buy/scenarios/inventory_list_no_match.yaml +143 -0
  40. package/compliance/cache/3.0.6/protocols/media-buy/scenarios/inventory_list_targeting.yaml +271 -0
  41. package/compliance/cache/3.0.6/protocols/media-buy/scenarios/measurement_terms_rejected.yaml +195 -0
  42. package/compliance/cache/3.0.6/protocols/media-buy/scenarios/pending_creatives_to_start.yaml +250 -0
  43. package/compliance/cache/3.0.6/protocols/media-buy/scenarios/proposal_finalize.yaml +243 -0
  44. package/compliance/cache/3.0.6/protocols/media-buy/scenarios/refine_products.yaml +148 -0
  45. package/compliance/cache/3.0.6/protocols/media-buy/state-machine.yaml +442 -0
  46. package/compliance/cache/3.0.6/protocols/signals/index.yaml +266 -0
  47. package/compliance/cache/3.0.6/protocols/sponsored-intelligence/index.yaml +256 -0
  48. package/compliance/cache/3.0.6/specialisms/audience-sync/index.yaml +280 -0
  49. package/compliance/cache/3.0.6/specialisms/brand-rights/index.yaml +350 -0
  50. package/compliance/cache/3.0.6/specialisms/brand-rights/scenarios/governance_denied.yaml +204 -0
  51. package/compliance/cache/3.0.6/specialisms/collection-lists/index.yaml +359 -0
  52. package/compliance/cache/3.0.6/specialisms/content-standards/index.yaml +572 -0
  53. package/compliance/cache/3.0.6/specialisms/creative-ad-server/index.yaml +383 -0
  54. package/compliance/cache/3.0.6/specialisms/creative-generative/generative-seller.yaml +758 -0
  55. package/compliance/cache/3.0.6/specialisms/creative-generative/index.yaml +746 -0
  56. package/compliance/cache/3.0.6/specialisms/creative-template/index.yaml +413 -0
  57. package/compliance/cache/3.0.6/specialisms/governance-aware-seller/index.yaml +136 -0
  58. package/compliance/cache/3.0.6/specialisms/governance-delivery-monitor/index.yaml +441 -0
  59. package/compliance/cache/3.0.6/specialisms/governance-spend-authority/denied.yaml +221 -0
  60. package/compliance/cache/3.0.6/specialisms/governance-spend-authority/index.yaml +330 -0
  61. package/compliance/cache/3.0.6/specialisms/property-lists/index.yaml +482 -0
  62. package/compliance/cache/3.0.6/specialisms/sales-broadcast-tv/index.yaml +689 -0
  63. package/compliance/cache/3.0.6/specialisms/sales-catalog-driven/index.yaml +779 -0
  64. package/compliance/cache/3.0.6/specialisms/sales-guaranteed/index.yaml +504 -0
  65. package/compliance/cache/3.0.6/specialisms/sales-non-guaranteed/index.yaml +428 -0
  66. package/compliance/cache/3.0.6/specialisms/sales-proposal-mode/index.yaml +520 -0
  67. package/compliance/cache/3.0.6/specialisms/sales-social/index.yaml +584 -0
  68. package/compliance/cache/3.0.6/specialisms/signal-marketplace/index.yaml +415 -0
  69. package/compliance/cache/3.0.6/specialisms/signal-marketplace/scenarios/governance_denied.yaml +207 -0
  70. package/compliance/cache/3.0.6/specialisms/signal-owned/index.yaml +316 -0
  71. package/compliance/cache/3.0.6/test-kits/acme-outdoor.yaml +210 -0
  72. package/compliance/cache/3.0.6/test-kits/bistro-oranje.yaml +126 -0
  73. package/compliance/cache/3.0.6/test-kits/nova-motors.yaml +262 -0
  74. package/compliance/cache/3.0.6/test-kits/osei-natural.yaml +126 -0
  75. package/compliance/cache/3.0.6/test-kits/signed-requests-runner.yaml +155 -0
  76. package/compliance/cache/3.0.6/test-kits/substitution-observer-runner.yaml +690 -0
  77. package/compliance/cache/3.0.6/test-kits/summit-foods.yaml +125 -0
  78. package/compliance/cache/3.0.6/test-kits/webhook-receiver-runner.yaml +265 -0
  79. package/compliance/cache/3.0.6/test-vectors/plan-hash/001-minimal-plan.json +43 -0
  80. package/compliance/cache/3.0.6/test-vectors/plan-hash/002-full-plan.json +217 -0
  81. package/compliance/cache/3.0.6/test-vectors/plan-hash/003-bookkeeping-stripped.json +60 -0
  82. package/compliance/cache/3.0.6/test-vectors/plan-hash/004a-human-review-omitted.json +43 -0
  83. package/compliance/cache/3.0.6/test-vectors/plan-hash/004b-human-review-explicit-null.json +49 -0
  84. package/compliance/cache/3.0.6/test-vectors/plan-hash/005a-policy-categories-order-1.json +53 -0
  85. package/compliance/cache/3.0.6/test-vectors/plan-hash/005b-policy-categories-order-2.json +57 -0
  86. package/compliance/cache/3.0.6/test-vectors/plan-hash/006a-ext-trace-v1.json +49 -0
  87. package/compliance/cache/3.0.6/test-vectors/plan-hash/006b-ext-trace-v2.json +53 -0
  88. package/compliance/cache/3.0.6/test-vectors/plan-hash/007-unicode-objectives.json +43 -0
  89. package/compliance/cache/3.0.6/test-vectors/plan-hash/008-numeric-canonicalization.json +65 -0
  90. package/compliance/cache/3.0.6/test-vectors/request-signing/README.md +219 -0
  91. package/compliance/cache/3.0.6/test-vectors/request-signing/canonicalization.json +241 -0
  92. package/compliance/cache/3.0.6/test-vectors/request-signing/keys.json +60 -0
  93. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/001-no-signature-header.json +24 -0
  94. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/002-wrong-tag.json +26 -0
  95. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/003-expired-signature.json +26 -0
  96. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/004-window-too-long.json +26 -0
  97. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/005-alg-not-allowed.json +26 -0
  98. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/006-missing-covered-component.json +26 -0
  99. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/007-missing-content-digest.json +26 -0
  100. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/008-unknown-keyid.json +26 -0
  101. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/009-key-ops-missing-verify.json +27 -0
  102. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/010-content-digest-mismatch.json +33 -0
  103. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/011-malformed-header.json +27 -0
  104. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/012-missing-expires-param.json +26 -0
  105. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/013-expires-le-created.json +27 -0
  106. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/014-missing-nonce-param.json +27 -0
  107. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/015-signature-invalid.json +28 -0
  108. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/016-replayed-nonce.json +35 -0
  109. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/017-key-revoked.json +38 -0
  110. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/018-digest-covered-when-forbidden.json +28 -0
  111. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/019-signature-without-signature-input.json +26 -0
  112. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/020-rate-abuse.json +34 -0
  113. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/021-duplicate-signature-input-label.json +31 -0
  114. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/022-multi-valued-content-type.json +31 -0
  115. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/023-multi-valued-content-digest.json +32 -0
  116. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/024-unquoted-string-param.json +31 -0
  117. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/025-jwk-alg-crv-mismatch.json +43 -0
  118. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/026-non-ascii-host.json +31 -0
  119. package/compliance/cache/3.0.6/test-vectors/request-signing/negative/027-webhook-registration-authentication-unsigned.json +25 -0
  120. package/compliance/cache/3.0.6/test-vectors/request-signing/positive/001-basic-post.json +30 -0
  121. package/compliance/cache/3.0.6/test-vectors/request-signing/positive/002-post-with-content-digest.json +31 -0
  122. package/compliance/cache/3.0.6/test-vectors/request-signing/positive/003-es256-post.json +30 -0
  123. package/compliance/cache/3.0.6/test-vectors/request-signing/positive/004-multiple-signature-labels.json +26 -0
  124. package/compliance/cache/3.0.6/test-vectors/request-signing/positive/005-default-port-stripped.json +30 -0
  125. package/compliance/cache/3.0.6/test-vectors/request-signing/positive/006-dot-segment-path.json +30 -0
  126. package/compliance/cache/3.0.6/test-vectors/request-signing/positive/007-query-byte-preserved.json +30 -0
  127. package/compliance/cache/3.0.6/test-vectors/request-signing/positive/008-percent-encoded-path.json +30 -0
  128. package/compliance/cache/3.0.6/test-vectors/request-signing/positive/009-percent-encoded-unreserved-decoded.json +30 -0
  129. package/compliance/cache/3.0.6/test-vectors/request-signing/positive/010-percent-encoded-slash-preserved.json +30 -0
  130. package/compliance/cache/3.0.6/test-vectors/request-signing/positive/011-ipv6-authority.json +30 -0
  131. package/compliance/cache/3.0.6/test-vectors/request-signing/positive/012-ipv6-authority-default-port-stripped.json +30 -0
  132. package/compliance/cache/3.0.6/test-vectors/webhook-signing/README.md +211 -0
  133. package/compliance/cache/3.0.6/test-vectors/webhook-signing/keys.json +61 -0
  134. package/compliance/cache/3.0.6/test-vectors/webhook-signing/negative/001-wrong-tag.json +26 -0
  135. package/compliance/cache/3.0.6/test-vectors/webhook-signing/negative/002-expired-signature.json +26 -0
  136. package/compliance/cache/3.0.6/test-vectors/webhook-signing/negative/003-window-too-long.json +26 -0
  137. package/compliance/cache/3.0.6/test-vectors/webhook-signing/negative/004-alg-not-allowed.json +26 -0
  138. package/compliance/cache/3.0.6/test-vectors/webhook-signing/negative/005-missing-authority-component.json +26 -0
  139. package/compliance/cache/3.0.6/test-vectors/webhook-signing/negative/006-missing-content-digest.json +25 -0
  140. package/compliance/cache/3.0.6/test-vectors/webhook-signing/negative/007-unknown-keyid.json +26 -0
  141. package/compliance/cache/3.0.6/test-vectors/webhook-signing/negative/008-wrong-adcp-use.json +26 -0
  142. package/compliance/cache/3.0.6/test-vectors/webhook-signing/negative/009-content-digest-mismatch.json +26 -0
  143. package/compliance/cache/3.0.6/test-vectors/webhook-signing/negative/010-malformed-signature-input.json +26 -0
  144. package/compliance/cache/3.0.6/test-vectors/webhook-signing/negative/011-signature-without-input.json +25 -0
  145. package/compliance/cache/3.0.6/test-vectors/webhook-signing/negative/012-missing-expires-param.json +26 -0
  146. package/compliance/cache/3.0.6/test-vectors/webhook-signing/negative/013-expires-le-created.json +26 -0
  147. package/compliance/cache/3.0.6/test-vectors/webhook-signing/negative/014-missing-nonce-param.json +26 -0
  148. package/compliance/cache/3.0.6/test-vectors/webhook-signing/negative/015-signature-invalid.json +26 -0
  149. package/compliance/cache/3.0.6/test-vectors/webhook-signing/negative/016-replayed-nonce.json +37 -0
  150. package/compliance/cache/3.0.6/test-vectors/webhook-signing/negative/017-key-revoked.json +32 -0
  151. package/compliance/cache/3.0.6/test-vectors/webhook-signing/negative/018-rate-abuse.json +33 -0
  152. package/compliance/cache/3.0.6/test-vectors/webhook-signing/negative/019-revocation-stale.json +32 -0
  153. package/compliance/cache/3.0.6/test-vectors/webhook-signing/negative/020-key-ops-missing-verify.json +41 -0
  154. package/compliance/cache/3.0.6/test-vectors/webhook-signing/negative/021-base64-alphabet-mixing.json +26 -0
  155. package/compliance/cache/3.0.6/test-vectors/webhook-signing/positive/001-basic-post.json +24 -0
  156. package/compliance/cache/3.0.6/test-vectors/webhook-signing/positive/002-es256-post.json +24 -0
  157. package/compliance/cache/3.0.6/test-vectors/webhook-signing/positive/003-multiple-signature-labels.json +24 -0
  158. package/compliance/cache/3.0.6/test-vectors/webhook-signing/positive/004-default-port-stripped.json +24 -0
  159. package/compliance/cache/3.0.6/test-vectors/webhook-signing/positive/005-percent-encoded-path.json +24 -0
  160. package/compliance/cache/3.0.6/test-vectors/webhook-signing/positive/006-query-byte-preserved.json +24 -0
  161. package/compliance/cache/3.0.6/test-vectors/webhook-signing/positive/007-body-without-idempotency-key.json +25 -0
  162. package/compliance/cache/3.0.6/universal/capability-discovery.yaml +125 -0
  163. package/compliance/cache/3.0.6/universal/collection-lists-pagination-integrity.yaml +306 -0
  164. package/compliance/cache/3.0.6/universal/content-standards-pagination-integrity.yaml +326 -0
  165. package/compliance/cache/3.0.6/universal/deterministic-testing.yaml +1343 -0
  166. package/compliance/cache/3.0.6/universal/error-compliance.yaml +474 -0
  167. package/compliance/cache/3.0.6/universal/fictional-entities.yaml +307 -0
  168. package/compliance/cache/3.0.6/universal/get-media-buys-pagination-integrity.yaml +160 -0
  169. package/compliance/cache/3.0.6/universal/get-signals-pagination-integrity.yaml +211 -0
  170. package/compliance/cache/3.0.6/universal/idempotency.yaml +593 -0
  171. package/compliance/cache/3.0.6/universal/pagination-integrity-creative-formats.yaml +258 -0
  172. package/compliance/cache/3.0.6/universal/pagination-integrity-list-accounts.yaml +262 -0
  173. package/compliance/cache/3.0.6/universal/pagination-integrity.yaml +263 -0
  174. package/compliance/cache/3.0.6/universal/property-lists-pagination-integrity.yaml +307 -0
  175. package/compliance/cache/3.0.6/universal/runner-output-contract.yaml +358 -0
  176. package/compliance/cache/3.0.6/universal/schema-validation.yaml +526 -0
  177. package/compliance/cache/3.0.6/universal/security.yaml +431 -0
  178. package/compliance/cache/3.0.6/universal/signed-requests.yaml +205 -0
  179. package/compliance/cache/3.0.6/universal/storyboard-schema.yaml +1176 -0
  180. package/compliance/cache/3.0.6/universal/v3-envelope-integrity.yaml +106 -0
  181. package/compliance/cache/3.0.6/universal/webhook-emission.yaml +337 -0
  182. package/compliance/cache/{3.0.5 → 3.0.6.previous}/domains/media-buy/scenarios/inventory_list_targeting.yaml +5 -0
  183. package/compliance/cache/{3.0.5 → 3.0.6.previous}/index.json +2 -2
  184. package/compliance/cache/{3.0.5 → 3.0.6.previous}/protocols/media-buy/scenarios/inventory_list_targeting.yaml +5 -0
  185. package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/sales-guaranteed/index.yaml +1 -1
  186. package/compliance/cache/{3.0.5 → 3.0.6.previous}/universal/storyboard-schema.yaml +15 -0
  187. package/dist/lib/core/AgentClient.d.ts.map +1 -1
  188. package/dist/lib/core/AgentClient.js +20 -0
  189. package/dist/lib/core/AgentClient.js.map +1 -1
  190. package/dist/lib/mock-server/creative-template/seed-data.d.ts +1 -1
  191. package/dist/lib/mock-server/creative-template/seed-data.d.ts.map +1 -1
  192. package/dist/lib/mock-server/creative-template/seed-data.js +53 -0
  193. package/dist/lib/mock-server/creative-template/seed-data.js.map +1 -1
  194. package/dist/lib/mock-server/creative-template/server.d.ts.map +1 -1
  195. package/dist/lib/mock-server/creative-template/server.js +12 -0
  196. package/dist/lib/mock-server/creative-template/server.js.map +1 -1
  197. package/dist/lib/schemas-data/3.0/a2ui/bound-value.json +1 -1
  198. package/dist/lib/schemas-data/3.0/a2ui/component.json +1 -1
  199. package/dist/lib/schemas-data/3.0/a2ui/si-catalog.json +25 -25
  200. package/dist/lib/schemas-data/3.0/a2ui/surface.json +2 -2
  201. package/dist/lib/schemas-data/3.0/a2ui/user-action.json +1 -1
  202. package/dist/lib/schemas-data/3.0/account/get-account-financials-request.json +5 -5
  203. package/dist/lib/schemas-data/3.0/account/get-account-financials-response.json +10 -10
  204. package/dist/lib/schemas-data/3.0/account/list-accounts-request.json +4 -4
  205. package/dist/lib/schemas-data/3.0/account/list-accounts-response.json +6 -6
  206. package/dist/lib/schemas-data/3.0/account/report-usage-request.json +5 -5
  207. package/dist/lib/schemas-data/3.0/account/report-usage-response.json +4 -4
  208. package/dist/lib/schemas-data/3.0/account/sync-accounts-request.json +9 -9
  209. package/dist/lib/schemas-data/3.0/account/sync-accounts-response.json +12 -12
  210. package/dist/lib/schemas-data/3.0/account/sync-governance-request.json +5 -5
  211. package/dist/lib/schemas-data/3.0/account/sync-governance-response.json +8 -8
  212. package/dist/lib/schemas-data/3.0/adagents.json +32 -32
  213. package/dist/lib/schemas-data/3.0/brand/acquire-rights-request.json +8 -8
  214. package/dist/lib/schemas-data/3.0/brand/acquire-rights-response.json +14 -14
  215. package/dist/lib/schemas-data/3.0/brand/creative-approval-request.json +4 -4
  216. package/dist/lib/schemas-data/3.0/brand/creative-approval-response.json +10 -10
  217. package/dist/lib/schemas-data/3.0/brand/get-brand-identity-request.json +3 -3
  218. package/dist/lib/schemas-data/3.0/brand/get-brand-identity-response.json +8 -8
  219. package/dist/lib/schemas-data/3.0/brand/get-rights-request.json +7 -7
  220. package/dist/lib/schemas-data/3.0/brand/get-rights-response.json +9 -9
  221. package/dist/lib/schemas-data/3.0/brand/revocation-notification.json +4 -4
  222. package/dist/lib/schemas-data/3.0/brand/rights-pricing-option.json +5 -5
  223. package/dist/lib/schemas-data/3.0/brand/rights-terms.json +3 -3
  224. package/dist/lib/schemas-data/3.0/brand/update-rights-request.json +4 -4
  225. package/dist/lib/schemas-data/3.0/brand/update-rights-response.json +9 -9
  226. package/dist/lib/schemas-data/3.0/brand.json +14 -14
  227. package/dist/lib/schemas-data/3.0/bundled/content-standards/calibrate-content-request.json +2 -2
  228. package/dist/lib/schemas-data/3.0/bundled/content-standards/calibrate-content-response.json +2 -2
  229. package/dist/lib/schemas-data/3.0/bundled/content-standards/create-content-standards-request.json +2 -2
  230. package/dist/lib/schemas-data/3.0/bundled/content-standards/create-content-standards-response.json +2 -2
  231. package/dist/lib/schemas-data/3.0/bundled/content-standards/get-content-standards-request.json +2 -2
  232. package/dist/lib/schemas-data/3.0/bundled/content-standards/get-content-standards-response.json +2 -2
  233. package/dist/lib/schemas-data/3.0/bundled/content-standards/get-media-buy-artifacts-request.json +2 -2
  234. package/dist/lib/schemas-data/3.0/bundled/content-standards/get-media-buy-artifacts-response.json +2 -2
  235. package/dist/lib/schemas-data/3.0/bundled/content-standards/list-content-standards-request.json +2 -2
  236. package/dist/lib/schemas-data/3.0/bundled/content-standards/list-content-standards-response.json +2 -2
  237. package/dist/lib/schemas-data/3.0/bundled/content-standards/update-content-standards-request.json +2 -2
  238. package/dist/lib/schemas-data/3.0/bundled/content-standards/update-content-standards-response.json +2 -2
  239. package/dist/lib/schemas-data/3.0/bundled/content-standards/validate-content-delivery-request.json +2 -2
  240. package/dist/lib/schemas-data/3.0/bundled/content-standards/validate-content-delivery-response.json +2 -2
  241. package/dist/lib/schemas-data/3.0/bundled/core/tasks-get-request.json +2 -2
  242. package/dist/lib/schemas-data/3.0/bundled/core/tasks-get-response.json +2 -2
  243. package/dist/lib/schemas-data/3.0/bundled/core/tasks-list-request.json +2 -2
  244. package/dist/lib/schemas-data/3.0/bundled/core/tasks-list-response.json +2 -2
  245. package/dist/lib/schemas-data/3.0/bundled/creative/get-creative-delivery-request.json +2 -2
  246. package/dist/lib/schemas-data/3.0/bundled/creative/get-creative-delivery-response.json +2 -2
  247. package/dist/lib/schemas-data/3.0/bundled/creative/get-creative-features-request.json +2 -2
  248. package/dist/lib/schemas-data/3.0/bundled/creative/get-creative-features-response.json +2 -2
  249. package/dist/lib/schemas-data/3.0/bundled/creative/list-creative-formats-request.json +2 -2
  250. package/dist/lib/schemas-data/3.0/bundled/creative/list-creative-formats-response.json +2 -2
  251. package/dist/lib/schemas-data/3.0/bundled/creative/list-creatives-request.json +2 -2
  252. package/dist/lib/schemas-data/3.0/bundled/creative/list-creatives-response.json +2 -2
  253. package/dist/lib/schemas-data/3.0/bundled/creative/preview-creative-request.json +2 -2
  254. package/dist/lib/schemas-data/3.0/bundled/creative/preview-creative-response.json +2 -2
  255. package/dist/lib/schemas-data/3.0/bundled/creative/sync-creatives-request.json +2 -2
  256. package/dist/lib/schemas-data/3.0/bundled/creative/sync-creatives-response.json +2 -2
  257. package/dist/lib/schemas-data/3.0/bundled/media-buy/build-creative-request.json +2 -2
  258. package/dist/lib/schemas-data/3.0/bundled/media-buy/build-creative-response.json +2 -2
  259. package/dist/lib/schemas-data/3.0/bundled/media-buy/create-media-buy-request.json +2 -2
  260. package/dist/lib/schemas-data/3.0/bundled/media-buy/create-media-buy-response.json +2 -2
  261. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-media-buy-delivery-request.json +2 -2
  262. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-media-buy-delivery-response.json +2 -2
  263. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-media-buys-request.json +2 -2
  264. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-media-buys-response.json +2 -2
  265. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-products-request.json +2 -2
  266. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-products-response.json +2 -2
  267. package/dist/lib/schemas-data/3.0/bundled/media-buy/list-creative-formats-request.json +2 -2
  268. package/dist/lib/schemas-data/3.0/bundled/media-buy/list-creative-formats-response.json +2 -2
  269. package/dist/lib/schemas-data/3.0/bundled/media-buy/log-event-request.json +2 -2
  270. package/dist/lib/schemas-data/3.0/bundled/media-buy/log-event-response.json +2 -2
  271. package/dist/lib/schemas-data/3.0/bundled/media-buy/package-request.json +2 -2
  272. package/dist/lib/schemas-data/3.0/bundled/media-buy/provide-performance-feedback-request.json +2 -2
  273. package/dist/lib/schemas-data/3.0/bundled/media-buy/provide-performance-feedback-response.json +2 -2
  274. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-audiences-request.json +2 -2
  275. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-audiences-response.json +2 -2
  276. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-catalogs-request.json +2 -2
  277. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-catalogs-response.json +2 -2
  278. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-event-sources-request.json +2 -2
  279. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-event-sources-response.json +2 -2
  280. package/dist/lib/schemas-data/3.0/bundled/media-buy/update-media-buy-request.json +2 -2
  281. package/dist/lib/schemas-data/3.0/bundled/media-buy/update-media-buy-response.json +2 -2
  282. package/dist/lib/schemas-data/3.0/bundled/property/create-property-list-request.json +2 -2
  283. package/dist/lib/schemas-data/3.0/bundled/property/create-property-list-response.json +2 -2
  284. package/dist/lib/schemas-data/3.0/bundled/property/delete-property-list-request.json +2 -2
  285. package/dist/lib/schemas-data/3.0/bundled/property/delete-property-list-response.json +2 -2
  286. package/dist/lib/schemas-data/3.0/bundled/property/get-property-list-request.json +2 -2
  287. package/dist/lib/schemas-data/3.0/bundled/property/get-property-list-response.json +2 -2
  288. package/dist/lib/schemas-data/3.0/bundled/property/list-property-lists-request.json +2 -2
  289. package/dist/lib/schemas-data/3.0/bundled/property/list-property-lists-response.json +2 -2
  290. package/dist/lib/schemas-data/3.0/bundled/property/update-property-list-request.json +2 -2
  291. package/dist/lib/schemas-data/3.0/bundled/property/update-property-list-response.json +2 -2
  292. package/dist/lib/schemas-data/3.0/bundled/property/validate-property-delivery-request.json +2 -2
  293. package/dist/lib/schemas-data/3.0/bundled/property/validate-property-delivery-response.json +2 -2
  294. package/dist/lib/schemas-data/3.0/bundled/protocol/get-adcp-capabilities-request.json +2 -2
  295. package/dist/lib/schemas-data/3.0/bundled/protocol/get-adcp-capabilities-response.json +2 -2
  296. package/dist/lib/schemas-data/3.0/bundled/signals/activate-signal-request.json +2 -2
  297. package/dist/lib/schemas-data/3.0/bundled/signals/activate-signal-response.json +2 -2
  298. package/dist/lib/schemas-data/3.0/bundled/signals/get-signals-request.json +2 -2
  299. package/dist/lib/schemas-data/3.0/bundled/signals/get-signals-response.json +2 -2
  300. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-get-offering-request.json +2 -2
  301. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-get-offering-response.json +2 -2
  302. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-initiate-session-request.json +2 -2
  303. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-initiate-session-response.json +2 -2
  304. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-send-message-request.json +2 -2
  305. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-send-message-response.json +2 -2
  306. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-terminate-session-request.json +2 -2
  307. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-terminate-session-response.json +2 -2
  308. package/dist/lib/schemas-data/3.0/collection/base-collection-source.json +3 -3
  309. package/dist/lib/schemas-data/3.0/collection/collection-list-changed-webhook.json +2 -2
  310. package/dist/lib/schemas-data/3.0/collection/collection-list-filters.json +7 -7
  311. package/dist/lib/schemas-data/3.0/collection/collection-list.json +5 -5
  312. package/dist/lib/schemas-data/3.0/collection/create-collection-list-request.json +7 -7
  313. package/dist/lib/schemas-data/3.0/collection/create-collection-list-response.json +4 -4
  314. package/dist/lib/schemas-data/3.0/collection/delete-collection-list-request.json +4 -4
  315. package/dist/lib/schemas-data/3.0/collection/delete-collection-list-response.json +3 -3
  316. package/dist/lib/schemas-data/3.0/collection/get-collection-list-request.json +4 -4
  317. package/dist/lib/schemas-data/3.0/collection/get-collection-list-response.json +10 -10
  318. package/dist/lib/schemas-data/3.0/collection/list-collection-lists-request.json +5 -5
  319. package/dist/lib/schemas-data/3.0/collection/list-collection-lists-response.json +5 -5
  320. package/dist/lib/schemas-data/3.0/collection/update-collection-list-request.json +7 -7
  321. package/dist/lib/schemas-data/3.0/collection/update-collection-list-response.json +4 -4
  322. package/dist/lib/schemas-data/3.0/content-standards/artifact-webhook-payload.json +3 -3
  323. package/dist/lib/schemas-data/3.0/content-standards/artifact.json +7 -7
  324. package/dist/lib/schemas-data/3.0/content-standards/calibrate-content-request.json +4 -4
  325. package/dist/lib/schemas-data/3.0/content-standards/calibrate-content-response.json +8 -8
  326. package/dist/lib/schemas-data/3.0/content-standards/content-standards.json +7 -7
  327. package/dist/lib/schemas-data/3.0/content-standards/create-content-standards-request.json +7 -7
  328. package/dist/lib/schemas-data/3.0/content-standards/create-content-standards-response.json +6 -6
  329. package/dist/lib/schemas-data/3.0/content-standards/get-content-standards-request.json +3 -3
  330. package/dist/lib/schemas-data/3.0/content-standards/get-content-standards-response.json +7 -7
  331. package/dist/lib/schemas-data/3.0/content-standards/get-media-buy-artifacts-request.json +4 -4
  332. package/dist/lib/schemas-data/3.0/content-standards/get-media-buy-artifacts-response.json +8 -8
  333. package/dist/lib/schemas-data/3.0/content-standards/list-content-standards-request.json +5 -5
  334. package/dist/lib/schemas-data/3.0/content-standards/list-content-standards-response.json +8 -8
  335. package/dist/lib/schemas-data/3.0/content-standards/update-content-standards-request.json +7 -7
  336. package/dist/lib/schemas-data/3.0/content-standards/update-content-standards-response.json +6 -6
  337. package/dist/lib/schemas-data/3.0/content-standards/validate-content-delivery-request.json +4 -4
  338. package/dist/lib/schemas-data/3.0/content-standards/validate-content-delivery-response.json +8 -8
  339. package/dist/lib/schemas-data/3.0/core/account-ref.json +2 -2
  340. package/dist/lib/schemas-data/3.0/core/account.json +9 -9
  341. package/dist/lib/schemas-data/3.0/core/activation-key.json +1 -1
  342. package/dist/lib/schemas-data/3.0/core/ad-inventory-config.json +1 -1
  343. package/dist/lib/schemas-data/3.0/core/agent-encryption-key.json +1 -1
  344. package/dist/lib/schemas-data/3.0/core/agent-signing-key.json +1 -1
  345. package/dist/lib/schemas-data/3.0/core/app-item.json +4 -4
  346. package/dist/lib/schemas-data/3.0/core/assets/asset-union.json +15 -15
  347. package/dist/lib/schemas-data/3.0/core/assets/audio-asset.json +3 -3
  348. package/dist/lib/schemas-data/3.0/core/assets/brief-asset.json +2 -2
  349. package/dist/lib/schemas-data/3.0/core/assets/catalog-asset.json +2 -2
  350. package/dist/lib/schemas-data/3.0/core/assets/css-asset.json +2 -2
  351. package/dist/lib/schemas-data/3.0/core/assets/daast-asset.json +4 -4
  352. package/dist/lib/schemas-data/3.0/core/assets/html-asset.json +2 -2
  353. package/dist/lib/schemas-data/3.0/core/assets/image-asset.json +2 -2
  354. package/dist/lib/schemas-data/3.0/core/assets/javascript-asset.json +3 -3
  355. package/dist/lib/schemas-data/3.0/core/assets/markdown-asset.json +2 -2
  356. package/dist/lib/schemas-data/3.0/core/assets/text-asset.json +2 -2
  357. package/dist/lib/schemas-data/3.0/core/assets/url-asset.json +3 -3
  358. package/dist/lib/schemas-data/3.0/core/assets/vast-asset.json +4 -4
  359. package/dist/lib/schemas-data/3.0/core/assets/video-asset.json +7 -7
  360. package/dist/lib/schemas-data/3.0/core/assets/webhook-asset.json +7 -7
  361. package/dist/lib/schemas-data/3.0/core/async-response-data.json +25 -25
  362. package/dist/lib/schemas-data/3.0/core/attribution-window.json +4 -4
  363. package/dist/lib/schemas-data/3.0/core/audience-member.json +3 -3
  364. package/dist/lib/schemas-data/3.0/core/audience-selector.json +4 -4
  365. package/dist/lib/schemas-data/3.0/core/brand-id.json +1 -1
  366. package/dist/lib/schemas-data/3.0/core/brand-ref.json +2 -2
  367. package/dist/lib/schemas-data/3.0/core/business-entity.json +2 -2
  368. package/dist/lib/schemas-data/3.0/core/cancellation-policy.json +2 -2
  369. package/dist/lib/schemas-data/3.0/core/catalog-field-mapping.json +2 -2
  370. package/dist/lib/schemas-data/3.0/core/catalog.json +7 -7
  371. package/dist/lib/schemas-data/3.0/core/catchment.json +5 -5
  372. package/dist/lib/schemas-data/3.0/core/collection-distribution.json +2 -2
  373. package/dist/lib/schemas-data/3.0/core/collection-list-ref.json +1 -1
  374. package/dist/lib/schemas-data/3.0/core/collection-selector.json +1 -1
  375. package/dist/lib/schemas-data/3.0/core/collection.json +13 -13
  376. package/dist/lib/schemas-data/3.0/core/content-rating.json +2 -2
  377. package/dist/lib/schemas-data/3.0/core/context.json +1 -1
  378. package/dist/lib/schemas-data/3.0/core/creative-asset.json +6 -6
  379. package/dist/lib/schemas-data/3.0/core/creative-assignment.json +1 -1
  380. package/dist/lib/schemas-data/3.0/core/creative-brief.json +4 -4
  381. package/dist/lib/schemas-data/3.0/core/creative-consumption.json +1 -1
  382. package/dist/lib/schemas-data/3.0/core/creative-filters.json +4 -4
  383. package/dist/lib/schemas-data/3.0/core/creative-item.json +1 -1
  384. package/dist/lib/schemas-data/3.0/core/creative-manifest.json +7 -7
  385. package/dist/lib/schemas-data/3.0/core/creative-policy.json +3 -3
  386. package/dist/lib/schemas-data/3.0/core/creative-variable.json +1 -1
  387. package/dist/lib/schemas-data/3.0/core/creative-variant.json +5 -5
  388. package/dist/lib/schemas-data/3.0/core/data-provider-signal-selector.json +1 -1
  389. package/dist/lib/schemas-data/3.0/core/date-range.json +1 -1
  390. package/dist/lib/schemas-data/3.0/core/datetime-range.json +1 -1
  391. package/dist/lib/schemas-data/3.0/core/daypart-target.json +2 -2
  392. package/dist/lib/schemas-data/3.0/core/deadline-policy.json +1 -1
  393. package/dist/lib/schemas-data/3.0/core/delivery-forecast.json +7 -7
  394. package/dist/lib/schemas-data/3.0/core/delivery-metrics.json +5 -5
  395. package/dist/lib/schemas-data/3.0/core/deployment.json +3 -3
  396. package/dist/lib/schemas-data/3.0/core/destination-item.json +4 -4
  397. package/dist/lib/schemas-data/3.0/core/destination.json +1 -1
  398. package/dist/lib/schemas-data/3.0/core/diagnostic-issue.json +1 -1
  399. package/dist/lib/schemas-data/3.0/core/duration.json +1 -1
  400. package/dist/lib/schemas-data/3.0/core/education-item.json +4 -4
  401. package/dist/lib/schemas-data/3.0/core/error.json +1 -1
  402. package/dist/lib/schemas-data/3.0/core/event-custom-data.json +2 -2
  403. package/dist/lib/schemas-data/3.0/core/event-source-health.json +3 -3
  404. package/dist/lib/schemas-data/3.0/core/event.json +6 -6
  405. package/dist/lib/schemas-data/3.0/core/ext.json +1 -1
  406. package/dist/lib/schemas-data/3.0/core/feature-requirement.json +1 -1
  407. package/dist/lib/schemas-data/3.0/core/flight-item.json +4 -4
  408. package/dist/lib/schemas-data/3.0/core/forecast-point.json +18 -18
  409. package/dist/lib/schemas-data/3.0/core/forecast-range.json +1 -1
  410. package/dist/lib/schemas-data/3.0/core/format-id.json +1 -1
  411. package/dist/lib/schemas-data/3.0/core/format.json +42 -42
  412. package/dist/lib/schemas-data/3.0/core/frequency-cap.json +4 -4
  413. package/dist/lib/schemas-data/3.0/core/generation-credential.json +3 -3
  414. package/dist/lib/schemas-data/3.0/core/geo-breakdown-support.json +3 -3
  415. package/dist/lib/schemas-data/3.0/core/hotel-item.json +4 -4
  416. package/dist/lib/schemas-data/3.0/core/identifier.json +2 -2
  417. package/dist/lib/schemas-data/3.0/core/industry-identifier.json +2 -2
  418. package/dist/lib/schemas-data/3.0/core/insertion-order.json +1 -1
  419. package/dist/lib/schemas-data/3.0/core/installment-deadlines.json +2 -2
  420. package/dist/lib/schemas-data/3.0/core/installment.json +9 -9
  421. package/dist/lib/schemas-data/3.0/core/job-item.json +3 -3
  422. package/dist/lib/schemas-data/3.0/core/limited-series.json +1 -1
  423. package/dist/lib/schemas-data/3.0/core/material-deadline.json +1 -1
  424. package/dist/lib/schemas-data/3.0/core/mcp-webhook-payload.json +5 -5
  425. package/dist/lib/schemas-data/3.0/core/measurement-readiness.json +5 -5
  426. package/dist/lib/schemas-data/3.0/core/measurement-terms.json +3 -3
  427. package/dist/lib/schemas-data/3.0/core/measurement-window.json +1 -1
  428. package/dist/lib/schemas-data/3.0/core/media-buy-features.json +1 -1
  429. package/dist/lib/schemas-data/3.0/core/media-buy.json +7 -7
  430. package/dist/lib/schemas-data/3.0/core/offering-asset-group.json +15 -15
  431. package/dist/lib/schemas-data/3.0/core/offering.json +5 -5
  432. package/dist/lib/schemas-data/3.0/core/optimization-goal.json +6 -6
  433. package/dist/lib/schemas-data/3.0/core/outcome-measurement.json +2 -2
  434. package/dist/lib/schemas-data/3.0/core/overlay.json +1 -1
  435. package/dist/lib/schemas-data/3.0/core/package.json +14 -14
  436. package/dist/lib/schemas-data/3.0/core/pagination-request.json +1 -1
  437. package/dist/lib/schemas-data/3.0/core/pagination-response.json +1 -1
  438. package/dist/lib/schemas-data/3.0/core/performance-feedback.json +3 -3
  439. package/dist/lib/schemas-data/3.0/core/performance-standard.json +4 -4
  440. package/dist/lib/schemas-data/3.0/core/placement-definition.json +5 -5
  441. package/dist/lib/schemas-data/3.0/core/placement.json +2 -2
  442. package/dist/lib/schemas-data/3.0/core/planned-delivery.json +5 -5
  443. package/dist/lib/schemas-data/3.0/core/price.json +1 -1
  444. package/dist/lib/schemas-data/3.0/core/pricing-option.json +10 -10
  445. package/dist/lib/schemas-data/3.0/core/product-allocation.json +4 -4
  446. package/dist/lib/schemas-data/3.0/core/product-filters.json +16 -16
  447. package/dist/lib/schemas-data/3.0/core/product.json +28 -28
  448. package/dist/lib/schemas-data/3.0/core/property-id.json +1 -1
  449. package/dist/lib/schemas-data/3.0/core/property-list-ref.json +1 -1
  450. package/dist/lib/schemas-data/3.0/core/property-tag.json +1 -1
  451. package/dist/lib/schemas-data/3.0/core/property.json +6 -6
  452. package/dist/lib/schemas-data/3.0/core/proposal.json +6 -6
  453. package/dist/lib/schemas-data/3.0/core/protocol-envelope.json +3 -3
  454. package/dist/lib/schemas-data/3.0/core/provenance.json +6 -6
  455. package/dist/lib/schemas-data/3.0/core/publisher-property-selector.json +3 -3
  456. package/dist/lib/schemas-data/3.0/core/push-notification-config.json +2 -2
  457. package/dist/lib/schemas-data/3.0/core/real-estate-item.json +4 -4
  458. package/dist/lib/schemas-data/3.0/core/reference-asset.json +1 -1
  459. package/dist/lib/schemas-data/3.0/core/reporting-capabilities.json +5 -5
  460. package/dist/lib/schemas-data/3.0/core/reporting-webhook.json +3 -3
  461. package/dist/lib/schemas-data/3.0/core/requirements/asset-requirements.json +13 -13
  462. package/dist/lib/schemas-data/3.0/core/requirements/audio-asset-requirements.json +1 -1
  463. package/dist/lib/schemas-data/3.0/core/requirements/catalog-field-binding.json +4 -4
  464. package/dist/lib/schemas-data/3.0/core/requirements/catalog-requirements.json +5 -5
  465. package/dist/lib/schemas-data/3.0/core/requirements/css-asset-requirements.json +1 -1
  466. package/dist/lib/schemas-data/3.0/core/requirements/daast-asset-requirements.json +1 -1
  467. package/dist/lib/schemas-data/3.0/core/requirements/html-asset-requirements.json +1 -1
  468. package/dist/lib/schemas-data/3.0/core/requirements/image-asset-requirements.json +2 -2
  469. package/dist/lib/schemas-data/3.0/core/requirements/javascript-asset-requirements.json +1 -1
  470. package/dist/lib/schemas-data/3.0/core/requirements/markdown-asset-requirements.json +1 -1
  471. package/dist/lib/schemas-data/3.0/core/requirements/offering-asset-constraint.json +4 -4
  472. package/dist/lib/schemas-data/3.0/core/requirements/text-asset-requirements.json +1 -1
  473. package/dist/lib/schemas-data/3.0/core/requirements/url-asset-requirements.json +1 -1
  474. package/dist/lib/schemas-data/3.0/core/requirements/vast-asset-requirements.json +1 -1
  475. package/dist/lib/schemas-data/3.0/core/requirements/video-asset-requirements.json +6 -6
  476. package/dist/lib/schemas-data/3.0/core/requirements/webhook-asset-requirements.json +1 -1
  477. package/dist/lib/schemas-data/3.0/core/response.json +1 -1
  478. package/dist/lib/schemas-data/3.0/core/rights-constraint.json +4 -4
  479. package/dist/lib/schemas-data/3.0/core/seller-agent-ref.json +1 -1
  480. package/dist/lib/schemas-data/3.0/core/signal-definition.json +3 -3
  481. package/dist/lib/schemas-data/3.0/core/signal-filters.json +2 -2
  482. package/dist/lib/schemas-data/3.0/core/signal-id.json +1 -1
  483. package/dist/lib/schemas-data/3.0/core/signal-pricing-option.json +2 -2
  484. package/dist/lib/schemas-data/3.0/core/signal-pricing.json +6 -6
  485. package/dist/lib/schemas-data/3.0/core/signal-targeting.json +4 -4
  486. package/dist/lib/schemas-data/3.0/core/special.json +2 -2
  487. package/dist/lib/schemas-data/3.0/core/start-timing.json +1 -1
  488. package/dist/lib/schemas-data/3.0/core/store-item.json +3 -3
  489. package/dist/lib/schemas-data/3.0/core/talent.json +2 -2
  490. package/dist/lib/schemas-data/3.0/core/targeting.json +20 -20
  491. package/dist/lib/schemas-data/3.0/core/tasks-get-request.json +3 -3
  492. package/dist/lib/schemas-data/3.0/core/tasks-get-response.json +7 -7
  493. package/dist/lib/schemas-data/3.0/core/tasks-list-request.json +11 -11
  494. package/dist/lib/schemas-data/3.0/core/tasks-list-response.json +6 -6
  495. package/dist/lib/schemas-data/3.0/core/user-match.json +3 -3
  496. package/dist/lib/schemas-data/3.0/core/vehicle-item.json +4 -4
  497. package/dist/lib/schemas-data/3.0/core/vendor-pricing-option.json +2 -2
  498. package/dist/lib/schemas-data/3.0/core/x-entity-types.json +1 -1
  499. package/dist/lib/schemas-data/3.0/creative/asset-types/index.json +5 -5
  500. package/dist/lib/schemas-data/3.0/creative/creative-feature-result.json +2 -2
  501. package/dist/lib/schemas-data/3.0/creative/get-creative-delivery-request.json +5 -5
  502. package/dist/lib/schemas-data/3.0/creative/get-creative-delivery-response.json +7 -7
  503. package/dist/lib/schemas-data/3.0/creative/get-creative-features-request.json +5 -5
  504. package/dist/lib/schemas-data/3.0/creative/get-creative-features-response.json +8 -8
  505. package/dist/lib/schemas-data/3.0/creative/list-creative-formats-request.json +11 -11
  506. package/dist/lib/schemas-data/3.0/creative/list-creative-formats-response.json +7 -7
  507. package/dist/lib/schemas-data/3.0/creative/list-creatives-request.json +8 -8
  508. package/dist/lib/schemas-data/3.0/creative/list-creatives-response.json +14 -14
  509. package/dist/lib/schemas-data/3.0/creative/preview-creative-request.json +11 -11
  510. package/dist/lib/schemas-data/3.0/creative/preview-creative-response.json +12 -12
  511. package/dist/lib/schemas-data/3.0/creative/preview-render.json +1 -1
  512. package/dist/lib/schemas-data/3.0/creative/sync-creatives-async-response-input-required.json +3 -3
  513. package/dist/lib/schemas-data/3.0/creative/sync-creatives-async-response-submitted.json +3 -3
  514. package/dist/lib/schemas-data/3.0/creative/sync-creatives-async-response-working.json +3 -3
  515. package/dist/lib/schemas-data/3.0/creative/sync-creatives-request.json +7 -7
  516. package/dist/lib/schemas-data/3.0/creative/sync-creatives-response.json +13 -13
  517. package/dist/lib/schemas-data/3.0/enums/account-scope.json +1 -1
  518. package/dist/lib/schemas-data/3.0/enums/account-status.json +1 -1
  519. package/dist/lib/schemas-data/3.0/enums/action-source.json +1 -1
  520. package/dist/lib/schemas-data/3.0/enums/adcp-protocol.json +1 -1
  521. package/dist/lib/schemas-data/3.0/enums/adjustment-kind.json +1 -1
  522. package/dist/lib/schemas-data/3.0/enums/advertiser-industry.json +1 -1
  523. package/dist/lib/schemas-data/3.0/enums/age-verification-method.json +1 -1
  524. package/dist/lib/schemas-data/3.0/enums/assessment-status.json +1 -1
  525. package/dist/lib/schemas-data/3.0/enums/asset-content-type.json +1 -1
  526. package/dist/lib/schemas-data/3.0/enums/attribution-model.json +1 -1
  527. package/dist/lib/schemas-data/3.0/enums/audience-source.json +1 -1
  528. package/dist/lib/schemas-data/3.0/enums/audience-status.json +1 -1
  529. package/dist/lib/schemas-data/3.0/enums/audio-channel-layout.json +1 -1
  530. package/dist/lib/schemas-data/3.0/enums/auth-scheme.json +1 -1
  531. package/dist/lib/schemas-data/3.0/enums/available-metric.json +1 -1
  532. package/dist/lib/schemas-data/3.0/enums/billing-party.json +1 -1
  533. package/dist/lib/schemas-data/3.0/enums/binary-verdict.json +1 -1
  534. package/dist/lib/schemas-data/3.0/enums/brand-agent-type.json +1 -1
  535. package/dist/lib/schemas-data/3.0/enums/canceled-by.json +1 -1
  536. package/dist/lib/schemas-data/3.0/enums/catalog-action.json +1 -1
  537. package/dist/lib/schemas-data/3.0/enums/catalog-item-status.json +1 -1
  538. package/dist/lib/schemas-data/3.0/enums/catalog-type.json +1 -1
  539. package/dist/lib/schemas-data/3.0/enums/channels.json +1 -1
  540. package/dist/lib/schemas-data/3.0/enums/cloud-storage-protocol.json +1 -1
  541. package/dist/lib/schemas-data/3.0/enums/co-branding-requirement.json +1 -1
  542. package/dist/lib/schemas-data/3.0/enums/collection-cadence.json +1 -1
  543. package/dist/lib/schemas-data/3.0/enums/collection-kind.json +1 -1
  544. package/dist/lib/schemas-data/3.0/enums/collection-relationship.json +1 -1
  545. package/dist/lib/schemas-data/3.0/enums/collection-status.json +1 -1
  546. package/dist/lib/schemas-data/3.0/enums/consent-basis.json +1 -1
  547. package/dist/lib/schemas-data/3.0/enums/content-id-type.json +1 -1
  548. package/dist/lib/schemas-data/3.0/enums/content-rating-system.json +1 -1
  549. package/dist/lib/schemas-data/3.0/enums/creative-action.json +1 -1
  550. package/dist/lib/schemas-data/3.0/enums/creative-agent-capability.json +1 -1
  551. package/dist/lib/schemas-data/3.0/enums/creative-approval-status.json +1 -1
  552. package/dist/lib/schemas-data/3.0/enums/creative-identifier-type.json +1 -1
  553. package/dist/lib/schemas-data/3.0/enums/creative-quality.json +1 -1
  554. package/dist/lib/schemas-data/3.0/enums/creative-sort-field.json +1 -1
  555. package/dist/lib/schemas-data/3.0/enums/creative-status.json +1 -1
  556. package/dist/lib/schemas-data/3.0/enums/daast-tracking-event.json +1 -1
  557. package/dist/lib/schemas-data/3.0/enums/daast-version.json +1 -1
  558. package/dist/lib/schemas-data/3.0/enums/day-of-week.json +1 -1
  559. package/dist/lib/schemas-data/3.0/enums/delegation-authority.json +1 -1
  560. package/dist/lib/schemas-data/3.0/enums/delivery-type.json +1 -1
  561. package/dist/lib/schemas-data/3.0/enums/demographic-system.json +1 -1
  562. package/dist/lib/schemas-data/3.0/enums/derivative-type.json +1 -1
  563. package/dist/lib/schemas-data/3.0/enums/device-platform.json +1 -1
  564. package/dist/lib/schemas-data/3.0/enums/device-type.json +1 -1
  565. package/dist/lib/schemas-data/3.0/enums/digital-source-type.json +1 -1
  566. package/dist/lib/schemas-data/3.0/enums/dimension-unit.json +1 -1
  567. package/dist/lib/schemas-data/3.0/enums/disclosure-persistence.json +1 -1
  568. package/dist/lib/schemas-data/3.0/enums/disclosure-position.json +1 -1
  569. package/dist/lib/schemas-data/3.0/enums/distance-unit.json +1 -1
  570. package/dist/lib/schemas-data/3.0/enums/distribution-identifier-type.json +1 -1
  571. package/dist/lib/schemas-data/3.0/enums/error-code.json +3 -3
  572. package/dist/lib/schemas-data/3.0/enums/escalation-severity.json +1 -1
  573. package/dist/lib/schemas-data/3.0/enums/event-type.json +1 -1
  574. package/dist/lib/schemas-data/3.0/enums/exclusivity.json +1 -1
  575. package/dist/lib/schemas-data/3.0/enums/feature-check-status.json +1 -1
  576. package/dist/lib/schemas-data/3.0/enums/feed-format.json +1 -1
  577. package/dist/lib/schemas-data/3.0/enums/feedback-source.json +1 -1
  578. package/dist/lib/schemas-data/3.0/enums/forecast-method.json +1 -1
  579. package/dist/lib/schemas-data/3.0/enums/forecast-range-unit.json +1 -1
  580. package/dist/lib/schemas-data/3.0/enums/forecastable-metric.json +1 -1
  581. package/dist/lib/schemas-data/3.0/enums/format-id-parameter.json +1 -1
  582. package/dist/lib/schemas-data/3.0/enums/frame-rate-type.json +1 -1
  583. package/dist/lib/schemas-data/3.0/enums/frequency-cap-scope.json +1 -1
  584. package/dist/lib/schemas-data/3.0/enums/genre-taxonomy.json +1 -1
  585. package/dist/lib/schemas-data/3.0/enums/geo-level.json +1 -1
  586. package/dist/lib/schemas-data/3.0/enums/gop-type.json +1 -1
  587. package/dist/lib/schemas-data/3.0/enums/governance-decision.json +1 -1
  588. package/dist/lib/schemas-data/3.0/enums/governance-domain.json +1 -1
  589. package/dist/lib/schemas-data/3.0/enums/governance-mode.json +1 -1
  590. package/dist/lib/schemas-data/3.0/enums/governance-phase.json +1 -1
  591. package/dist/lib/schemas-data/3.0/enums/history-entry-type.json +1 -1
  592. package/dist/lib/schemas-data/3.0/enums/http-method.json +1 -1
  593. package/dist/lib/schemas-data/3.0/enums/identifier-types.json +1 -1
  594. package/dist/lib/schemas-data/3.0/enums/installment-status.json +1 -1
  595. package/dist/lib/schemas-data/3.0/enums/javascript-module-type.json +1 -1
  596. package/dist/lib/schemas-data/3.0/enums/landing-page-requirement.json +1 -1
  597. package/dist/lib/schemas-data/3.0/enums/makegood-remedy.json +1 -1
  598. package/dist/lib/schemas-data/3.0/enums/markdown-flavor.json +1 -1
  599. package/dist/lib/schemas-data/3.0/enums/match-id-type.json +1 -1
  600. package/dist/lib/schemas-data/3.0/enums/match-type.json +1 -1
  601. package/dist/lib/schemas-data/3.0/enums/media-buy-status.json +1 -1
  602. package/dist/lib/schemas-data/3.0/enums/media-buy-valid-action.json +1 -1
  603. package/dist/lib/schemas-data/3.0/enums/metric-type.json +1 -1
  604. package/dist/lib/schemas-data/3.0/enums/metro-system.json +1 -1
  605. package/dist/lib/schemas-data/3.0/enums/moov-atom-position.json +1 -1
  606. package/dist/lib/schemas-data/3.0/enums/notification-type.json +1 -1
  607. package/dist/lib/schemas-data/3.0/enums/outcome-type.json +1 -1
  608. package/dist/lib/schemas-data/3.0/enums/pacing.json +1 -1
  609. package/dist/lib/schemas-data/3.0/enums/payment-terms.json +1 -1
  610. package/dist/lib/schemas-data/3.0/enums/performance-standard-metric.json +1 -1
  611. package/dist/lib/schemas-data/3.0/enums/policy-category.json +1 -1
  612. package/dist/lib/schemas-data/3.0/enums/policy-enforcement.json +1 -1
  613. package/dist/lib/schemas-data/3.0/enums/postal-system.json +1 -1
  614. package/dist/lib/schemas-data/3.0/enums/preview-output-format.json +1 -1
  615. package/dist/lib/schemas-data/3.0/enums/pricing-model.json +1 -1
  616. package/dist/lib/schemas-data/3.0/enums/production-quality.json +1 -1
  617. package/dist/lib/schemas-data/3.0/enums/property-type.json +1 -1
  618. package/dist/lib/schemas-data/3.0/enums/proposal-status.json +1 -1
  619. package/dist/lib/schemas-data/3.0/enums/publisher-identifier-types.json +1 -1
  620. package/dist/lib/schemas-data/3.0/enums/purchase-type.json +1 -1
  621. package/dist/lib/schemas-data/3.0/enums/reach-unit.json +1 -1
  622. package/dist/lib/schemas-data/3.0/enums/reporting-frequency.json +1 -1
  623. package/dist/lib/schemas-data/3.0/enums/response-type.json +1 -1
  624. package/dist/lib/schemas-data/3.0/enums/restricted-attribute.json +1 -1
  625. package/dist/lib/schemas-data/3.0/enums/right-type.json +1 -1
  626. package/dist/lib/schemas-data/3.0/enums/right-use.json +1 -1
  627. package/dist/lib/schemas-data/3.0/enums/rights-billing-period.json +1 -1
  628. package/dist/lib/schemas-data/3.0/enums/scan-type.json +1 -1
  629. package/dist/lib/schemas-data/3.0/enums/si-session-status.json +1 -1
  630. package/dist/lib/schemas-data/3.0/enums/signal-catalog-type.json +1 -1
  631. package/dist/lib/schemas-data/3.0/enums/signal-source.json +1 -1
  632. package/dist/lib/schemas-data/3.0/enums/signal-value-type.json +1 -1
  633. package/dist/lib/schemas-data/3.0/enums/snapshot-unavailable-reason.json +1 -1
  634. package/dist/lib/schemas-data/3.0/enums/sort-direction.json +1 -1
  635. package/dist/lib/schemas-data/3.0/enums/sort-metric.json +1 -1
  636. package/dist/lib/schemas-data/3.0/enums/special-category.json +1 -1
  637. package/dist/lib/schemas-data/3.0/enums/specialism.json +1 -1
  638. package/dist/lib/schemas-data/3.0/enums/talent-role.json +1 -1
  639. package/dist/lib/schemas-data/3.0/enums/task-status.json +1 -1
  640. package/dist/lib/schemas-data/3.0/enums/task-type.json +1 -1
  641. package/dist/lib/schemas-data/3.0/enums/transport-mode.json +1 -1
  642. package/dist/lib/schemas-data/3.0/enums/travel-time-unit.json +1 -1
  643. package/dist/lib/schemas-data/3.0/enums/uid-type.json +1 -1
  644. package/dist/lib/schemas-data/3.0/enums/universal-macro.json +1 -1
  645. package/dist/lib/schemas-data/3.0/enums/update-frequency.json +1 -1
  646. package/dist/lib/schemas-data/3.0/enums/url-asset-type.json +1 -1
  647. package/dist/lib/schemas-data/3.0/enums/validation-mode.json +1 -1
  648. package/dist/lib/schemas-data/3.0/enums/vast-tracking-event.json +1 -1
  649. package/dist/lib/schemas-data/3.0/enums/vast-version.json +1 -1
  650. package/dist/lib/schemas-data/3.0/enums/viewability-standard.json +1 -1
  651. package/dist/lib/schemas-data/3.0/enums/wcag-level.json +1 -1
  652. package/dist/lib/schemas-data/3.0/enums/webhook-response-type.json +1 -1
  653. package/dist/lib/schemas-data/3.0/enums/webhook-security-method.json +1 -1
  654. package/dist/lib/schemas-data/3.0/error-details/account-setup-required.json +1 -1
  655. package/dist/lib/schemas-data/3.0/error-details/audience-too-small.json +1 -1
  656. package/dist/lib/schemas-data/3.0/error-details/budget-too-low.json +1 -1
  657. package/dist/lib/schemas-data/3.0/error-details/conflict.json +1 -1
  658. package/dist/lib/schemas-data/3.0/error-details/creative-rejected.json +1 -1
  659. package/dist/lib/schemas-data/3.0/error-details/policy-violation.json +1 -1
  660. package/dist/lib/schemas-data/3.0/error-details/rate-limited.json +1 -1
  661. package/dist/lib/schemas-data/3.0/error-details/vendor-error-codes.json +1 -1
  662. package/dist/lib/schemas-data/3.0/extensions/extension-meta.json +1 -1
  663. package/dist/lib/schemas-data/3.0/extensions/index.json +2 -2
  664. package/dist/lib/schemas-data/3.0/governance/attribute-definition.json +1 -1
  665. package/dist/lib/schemas-data/3.0/governance/audience-constraints.json +3 -3
  666. package/dist/lib/schemas-data/3.0/governance/check-governance-request.json +7 -7
  667. package/dist/lib/schemas-data/3.0/governance/check-governance-response.json +6 -6
  668. package/dist/lib/schemas-data/3.0/governance/get-plan-audit-logs-request.json +4 -4
  669. package/dist/lib/schemas-data/3.0/governance/get-plan-audit-logs-response.json +9 -9
  670. package/dist/lib/schemas-data/3.0/governance/policy-category-definition.json +2 -2
  671. package/dist/lib/schemas-data/3.0/governance/policy-entry.json +6 -6
  672. package/dist/lib/schemas-data/3.0/governance/policy-ref.json +1 -1
  673. package/dist/lib/schemas-data/3.0/governance/report-plan-outcome-request.json +6 -6
  674. package/dist/lib/schemas-data/3.0/governance/report-plan-outcome-response.json +4 -4
  675. package/dist/lib/schemas-data/3.0/governance/sync-plans-request.json +13 -13
  676. package/dist/lib/schemas-data/3.0/governance/sync-plans-response.json +4 -4
  677. package/dist/lib/schemas-data/3.0/index.json +364 -364
  678. package/dist/lib/schemas-data/3.0/manifest.json +5 -5
  679. package/dist/lib/schemas-data/3.0/manifest.schema.json +1 -1
  680. package/dist/lib/schemas-data/3.0/media-buy/build-creative-async-response-input-required.json +4 -4
  681. package/dist/lib/schemas-data/3.0/media-buy/build-creative-async-response-submitted.json +3 -3
  682. package/dist/lib/schemas-data/3.0/media-buy/build-creative-async-response-working.json +3 -3
  683. package/dist/lib/schemas-data/3.0/media-buy/build-creative-request.json +11 -11
  684. package/dist/lib/schemas-data/3.0/media-buy/build-creative-response.json +17 -17
  685. package/dist/lib/schemas-data/3.0/media-buy/create-media-buy-async-response-input-required.json +4 -4
  686. package/dist/lib/schemas-data/3.0/media-buy/create-media-buy-async-response-submitted.json +3 -3
  687. package/dist/lib/schemas-data/3.0/media-buy/create-media-buy-async-response-working.json +3 -3
  688. package/dist/lib/schemas-data/3.0/media-buy/create-media-buy-request.json +12 -12
  689. package/dist/lib/schemas-data/3.0/media-buy/create-media-buy-response.json +15 -15
  690. package/dist/lib/schemas-data/3.0/media-buy/get-media-buy-delivery-request.json +17 -17
  691. package/dist/lib/schemas-data/3.0/media-buy/get-media-buy-delivery-response.json +24 -24
  692. package/dist/lib/schemas-data/3.0/media-buy/get-media-buys-request.json +7 -7
  693. package/dist/lib/schemas-data/3.0/media-buy/get-media-buys-response.json +19 -19
  694. package/dist/lib/schemas-data/3.0/media-buy/get-products-async-response-input-required.json +4 -4
  695. package/dist/lib/schemas-data/3.0/media-buy/get-products-async-response-submitted.json +3 -3
  696. package/dist/lib/schemas-data/3.0/media-buy/get-products-async-response-working.json +3 -3
  697. package/dist/lib/schemas-data/3.0/media-buy/get-products-request.json +11 -11
  698. package/dist/lib/schemas-data/3.0/media-buy/get-products-response.json +8 -8
  699. package/dist/lib/schemas-data/3.0/media-buy/list-creative-formats-request.json +11 -11
  700. package/dist/lib/schemas-data/3.0/media-buy/list-creative-formats-response.json +7 -7
  701. package/dist/lib/schemas-data/3.0/media-buy/log-event-request.json +4 -4
  702. package/dist/lib/schemas-data/3.0/media-buy/log-event-response.json +6 -6
  703. package/dist/lib/schemas-data/3.0/media-buy/package-request.json +12 -12
  704. package/dist/lib/schemas-data/3.0/media-buy/package-update.json +13 -13
  705. package/dist/lib/schemas-data/3.0/media-buy/provide-performance-feedback-request.json +6 -6
  706. package/dist/lib/schemas-data/3.0/media-buy/provide-performance-feedback-response.json +6 -6
  707. package/dist/lib/schemas-data/3.0/media-buy/sync-audiences-request.json +7 -7
  708. package/dist/lib/schemas-data/3.0/media-buy/sync-audiences-response.json +9 -9
  709. package/dist/lib/schemas-data/3.0/media-buy/sync-catalogs-async-response-input-required.json +3 -3
  710. package/dist/lib/schemas-data/3.0/media-buy/sync-catalogs-async-response-submitted.json +3 -3
  711. package/dist/lib/schemas-data/3.0/media-buy/sync-catalogs-async-response-working.json +3 -3
  712. package/dist/lib/schemas-data/3.0/media-buy/sync-catalogs-request.json +7 -7
  713. package/dist/lib/schemas-data/3.0/media-buy/sync-catalogs-response.json +9 -9
  714. package/dist/lib/schemas-data/3.0/media-buy/sync-event-sources-request.json +5 -5
  715. package/dist/lib/schemas-data/3.0/media-buy/sync-event-sources-response.json +10 -10
  716. package/dist/lib/schemas-data/3.0/media-buy/update-media-buy-async-response-input-required.json +3 -3
  717. package/dist/lib/schemas-data/3.0/media-buy/update-media-buy-async-response-submitted.json +3 -3
  718. package/dist/lib/schemas-data/3.0/media-buy/update-media-buy-async-response-working.json +3 -3
  719. package/dist/lib/schemas-data/3.0/media-buy/update-media-buy-request.json +10 -10
  720. package/dist/lib/schemas-data/3.0/media-buy/update-media-buy-response.json +10 -10
  721. package/dist/lib/schemas-data/3.0/pricing-options/cpa-option.json +4 -4
  722. package/dist/lib/schemas-data/3.0/pricing-options/cpc-option.json +4 -4
  723. package/dist/lib/schemas-data/3.0/pricing-options/cpcv-option.json +4 -4
  724. package/dist/lib/schemas-data/3.0/pricing-options/cpm-option.json +4 -4
  725. package/dist/lib/schemas-data/3.0/pricing-options/cpp-option.json +5 -5
  726. package/dist/lib/schemas-data/3.0/pricing-options/cpv-option.json +4 -4
  727. package/dist/lib/schemas-data/3.0/pricing-options/flat-rate-option.json +4 -4
  728. package/dist/lib/schemas-data/3.0/pricing-options/price-breakdown.json +2 -2
  729. package/dist/lib/schemas-data/3.0/pricing-options/price-guidance.json +1 -1
  730. package/dist/lib/schemas-data/3.0/pricing-options/time-option.json +4 -4
  731. package/dist/lib/schemas-data/3.0/pricing-options/vcpm-option.json +4 -4
  732. package/dist/lib/schemas-data/3.0/property/authorization-result.json +1 -1
  733. package/dist/lib/schemas-data/3.0/property/base-property-source.json +4 -4
  734. package/dist/lib/schemas-data/3.0/property/create-property-list-request.json +7 -7
  735. package/dist/lib/schemas-data/3.0/property/create-property-list-response.json +4 -4
  736. package/dist/lib/schemas-data/3.0/property/delete-property-list-request.json +4 -4
  737. package/dist/lib/schemas-data/3.0/property/delete-property-list-response.json +3 -3
  738. package/dist/lib/schemas-data/3.0/property/delivery-record.json +3 -3
  739. package/dist/lib/schemas-data/3.0/property/get-property-list-request.json +4 -4
  740. package/dist/lib/schemas-data/3.0/property/get-property-list-response.json +7 -7
  741. package/dist/lib/schemas-data/3.0/property/list-property-lists-request.json +5 -5
  742. package/dist/lib/schemas-data/3.0/property/list-property-lists-response.json +5 -5
  743. package/dist/lib/schemas-data/3.0/property/property-error.json +2 -2
  744. package/dist/lib/schemas-data/3.0/property/property-feature-definition.json +2 -2
  745. package/dist/lib/schemas-data/3.0/property/property-feature-result.json +4 -4
  746. package/dist/lib/schemas-data/3.0/property/property-feature-value.json +2 -2
  747. package/dist/lib/schemas-data/3.0/property/property-feature.json +1 -1
  748. package/dist/lib/schemas-data/3.0/property/property-list-changed-webhook.json +2 -2
  749. package/dist/lib/schemas-data/3.0/property/property-list-filters.json +5 -5
  750. package/dist/lib/schemas-data/3.0/property/property-list.json +6 -6
  751. package/dist/lib/schemas-data/3.0/property/update-property-list-request.json +7 -7
  752. package/dist/lib/schemas-data/3.0/property/update-property-list-response.json +4 -4
  753. package/dist/lib/schemas-data/3.0/property/validate-property-delivery-request.json +5 -5
  754. package/dist/lib/schemas-data/3.0/property/validate-property-delivery-response.json +4 -4
  755. package/dist/lib/schemas-data/3.0/property/validation-result.json +5 -5
  756. package/dist/lib/schemas-data/3.0/protocol/get-adcp-capabilities-request.json +3 -3
  757. package/dist/lib/schemas-data/3.0/protocol/get-adcp-capabilities-response.json +25 -25
  758. package/dist/lib/schemas-data/3.0/signals/activate-signal-request.json +5 -5
  759. package/dist/lib/schemas-data/3.0/signals/activate-signal-response.json +7 -7
  760. package/dist/lib/schemas-data/3.0/signals/get-signals-request.json +8 -8
  761. package/dist/lib/schemas-data/3.0/signals/get-signals-response.json +10 -10
  762. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-capabilities.json +1 -1
  763. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-get-offering-request.json +3 -3
  764. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-get-offering-response.json +4 -4
  765. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-identity.json +1 -1
  766. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-initiate-session-request.json +5 -5
  767. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-initiate-session-response.json +7 -7
  768. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-send-message-request.json +3 -3
  769. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-send-message-response.json +7 -7
  770. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-terminate-session-request.json +3 -3
  771. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-terminate-session-response.json +5 -5
  772. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-ui-element.json +1 -1
  773. package/dist/lib/schemas-data/v2.5/_provenance.json +1 -1
  774. package/dist/lib/server/create-adcp-server.d.ts +33 -0
  775. package/dist/lib/server/create-adcp-server.d.ts.map +1 -1
  776. package/dist/lib/server/create-adcp-server.js +127 -1
  777. package/dist/lib/server/create-adcp-server.js.map +1 -1
  778. package/dist/lib/server/credential-policy.d.ts +221 -0
  779. package/dist/lib/server/credential-policy.d.ts.map +1 -0
  780. package/dist/lib/server/credential-policy.js +260 -0
  781. package/dist/lib/server/credential-policy.js.map +1 -0
  782. package/dist/lib/server/decisioning/account.d.ts +14 -0
  783. package/dist/lib/server/decisioning/account.d.ts.map +1 -1
  784. package/dist/lib/server/decisioning/account.js.map +1 -1
  785. package/dist/lib/server/decisioning/runtime/entity-hydration.generated.js +1 -1
  786. package/dist/lib/server/decisioning/runtime/from-platform.d.ts.map +1 -1
  787. package/dist/lib/server/decisioning/runtime/from-platform.js +36 -11
  788. package/dist/lib/server/decisioning/runtime/from-platform.js.map +1 -1
  789. package/dist/lib/server/dynamic-registry.d.ts +219 -0
  790. package/dist/lib/server/dynamic-registry.d.ts.map +1 -0
  791. package/dist/lib/server/dynamic-registry.js +245 -0
  792. package/dist/lib/server/dynamic-registry.js.map +1 -0
  793. package/dist/lib/server/index.d.ts +9 -0
  794. package/dist/lib/server/index.d.ts.map +1 -1
  795. package/dist/lib/server/index.js +21 -4
  796. package/dist/lib/server/index.js.map +1 -1
  797. package/dist/lib/server/operational-platform.d.ts +239 -0
  798. package/dist/lib/server/operational-platform.d.ts.map +1 -0
  799. package/dist/lib/server/operational-platform.js +94 -0
  800. package/dist/lib/server/operational-platform.js.map +1 -0
  801. package/dist/lib/server/socket-mode/conformance-client.d.ts +83 -0
  802. package/dist/lib/server/socket-mode/conformance-client.d.ts.map +1 -0
  803. package/dist/lib/server/socket-mode/conformance-client.js +117 -0
  804. package/dist/lib/server/socket-mode/conformance-client.js.map +1 -0
  805. package/dist/lib/server/socket-mode/index.d.ts +15 -0
  806. package/dist/lib/server/socket-mode/index.d.ts.map +1 -0
  807. package/dist/lib/server/socket-mode/index.js +20 -0
  808. package/dist/lib/server/socket-mode/index.js.map +1 -0
  809. package/dist/lib/server/socket-mode/ws-transport.d.ts +26 -0
  810. package/dist/lib/server/socket-mode/ws-transport.d.ts.map +1 -0
  811. package/dist/lib/server/socket-mode/ws-transport.js +93 -0
  812. package/dist/lib/server/socket-mode/ws-transport.js.map +1 -0
  813. package/dist/lib/server/wire-safe.d.ts +211 -0
  814. package/dist/lib/server/wire-safe.d.ts.map +1 -0
  815. package/dist/lib/server/wire-safe.js +231 -0
  816. package/dist/lib/server/wire-safe.js.map +1 -0
  817. package/dist/lib/server/wire-spec-fields.generated.d.ts +168 -0
  818. package/dist/lib/server/wire-spec-fields.generated.d.ts.map +1 -0
  819. package/dist/lib/server/wire-spec-fields.generated.js +172 -0
  820. package/dist/lib/server/wire-spec-fields.generated.js.map +1 -0
  821. package/dist/lib/testing/compliance/index.d.ts +2 -0
  822. package/dist/lib/testing/compliance/index.d.ts.map +1 -1
  823. package/dist/lib/testing/compliance/index.js +6 -1
  824. package/dist/lib/testing/compliance/index.js.map +1 -1
  825. package/dist/lib/testing/compliance/summary.d.ts +77 -0
  826. package/dist/lib/testing/compliance/summary.d.ts.map +1 -0
  827. package/dist/lib/testing/compliance/summary.js +176 -0
  828. package/dist/lib/testing/compliance/summary.js.map +1 -0
  829. package/dist/lib/testing/comply-controller.d.ts +42 -1
  830. package/dist/lib/testing/comply-controller.d.ts.map +1 -1
  831. package/dist/lib/testing/comply-controller.js +13 -1
  832. package/dist/lib/testing/comply-controller.js.map +1 -1
  833. package/dist/lib/testing/storyboard/compliance.d.ts +26 -0
  834. package/dist/lib/testing/storyboard/compliance.d.ts.map +1 -1
  835. package/dist/lib/testing/storyboard/compliance.js +51 -0
  836. package/dist/lib/testing/storyboard/compliance.js.map +1 -1
  837. package/dist/lib/testing/storyboard/index.d.ts +2 -2
  838. package/dist/lib/testing/storyboard/index.d.ts.map +1 -1
  839. package/dist/lib/testing/storyboard/index.js +4 -2
  840. package/dist/lib/testing/storyboard/index.js.map +1 -1
  841. package/dist/lib/testing/storyboard/request-builder.d.ts.map +1 -1
  842. package/dist/lib/testing/storyboard/request-builder.js +63 -40
  843. package/dist/lib/testing/storyboard/request-builder.js.map +1 -1
  844. package/dist/lib/testing/storyboard/runner.d.ts.map +1 -1
  845. package/dist/lib/testing/storyboard/runner.js +58 -5
  846. package/dist/lib/testing/storyboard/runner.js.map +1 -1
  847. package/dist/lib/types/core.generated.d.ts +54 -14
  848. package/dist/lib/types/core.generated.d.ts.map +1 -1
  849. package/dist/lib/types/core.generated.js +2 -2
  850. package/dist/lib/types/error-codes.d.ts +2 -2
  851. package/dist/lib/types/index.d.ts +1 -1
  852. package/dist/lib/types/index.d.ts.map +1 -1
  853. package/dist/lib/types/index.js.map +1 -1
  854. package/dist/lib/types/manifest.generated.d.ts +5 -5
  855. package/dist/lib/types/manifest.generated.js +3 -3
  856. package/dist/lib/types/manifest.generated.js.map +1 -1
  857. package/dist/lib/types/schemas.generated.d.ts +465 -381
  858. package/dist/lib/types/schemas.generated.d.ts.map +1 -1
  859. package/dist/lib/types/schemas.generated.js +171 -143
  860. package/dist/lib/types/schemas.generated.js.map +1 -1
  861. package/dist/lib/types/tools.generated.d.ts +42 -14
  862. package/dist/lib/types/tools.generated.d.ts.map +1 -1
  863. package/dist/lib/version.d.ts +7 -7
  864. package/dist/lib/version.d.ts.map +1 -1
  865. package/dist/lib/version.js +6 -5
  866. package/dist/lib/version.js.map +1 -1
  867. package/docs/llms.txt +4 -3
  868. package/examples/hello_creative_adapter_ad_server.ts +22 -3
  869. package/examples/hello_creative_adapter_template.ts +61 -6
  870. package/examples/hello_seller_adapter_guaranteed.ts +85 -10
  871. package/examples/hello_seller_adapter_multi_tenant.ts +39 -5
  872. package/examples/hello_seller_adapter_non_guaranteed.ts +54 -3
  873. package/examples/hello_seller_adapter_social.ts +1 -1
  874. package/examples/hello_signals_adapter_marketplace.ts +34 -29
  875. package/package.json +6 -5
  876. package/skills/SHAPE-GOTCHAS.md +18 -0
  877. package/skills/build-brand-rights-agent/SKILL.md +61 -597
  878. package/skills/build-creative-agent/SKILL.md +69 -750
  879. package/skills/build-generative-seller-agent/SKILL.md +43 -583
  880. package/skills/build-governance-agent/SKILL.md +63 -959
  881. package/skills/build-holdco-agent/SKILL.md +8 -0
  882. package/skills/build-retail-media-agent/SKILL.md +46 -480
  883. package/skills/build-seller-agent/SKILL.md +53 -1797
  884. package/skills/build-si-agent/SKILL.md +50 -368
  885. package/skills/build-signals-agent/SKILL.md +49 -539
  886. package/skills/cross-cutting.md +84 -0
  887. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/domains/brand/index.yaml +0 -0
  888. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/domains/creative/index.yaml +0 -0
  889. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/domains/governance/index.yaml +0 -0
  890. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/domains/media-buy/creative-reception.yaml +0 -0
  891. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/domains/media-buy/index.yaml +0 -0
  892. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/domains/media-buy/scenarios/create_media_buy_async.yaml +0 -0
  893. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/domains/media-buy/scenarios/creative_fate_after_cancellation.yaml +0 -0
  894. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/domains/media-buy/scenarios/delivery_reporting.yaml +0 -0
  895. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/domains/media-buy/scenarios/governance_approved.yaml +0 -0
  896. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/domains/media-buy/scenarios/governance_conditions.yaml +0 -0
  897. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/domains/media-buy/scenarios/governance_denied.yaml +0 -0
  898. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/domains/media-buy/scenarios/governance_denied_recovery.yaml +0 -0
  899. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/domains/media-buy/scenarios/invalid_transitions.yaml +0 -0
  900. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/domains/media-buy/scenarios/inventory_list_no_match.yaml +0 -0
  901. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/domains/media-buy/scenarios/measurement_terms_rejected.yaml +0 -0
  902. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/domains/media-buy/scenarios/pending_creatives_to_start.yaml +0 -0
  903. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/domains/media-buy/scenarios/proposal_finalize.yaml +0 -0
  904. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/domains/media-buy/scenarios/refine_products.yaml +0 -0
  905. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/domains/media-buy/state-machine.yaml +0 -0
  906. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/domains/signals/index.yaml +0 -0
  907. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/domains/sponsored-intelligence/index.yaml +0 -0
  908. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/protocols/brand/index.yaml +0 -0
  909. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/protocols/creative/index.yaml +0 -0
  910. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/protocols/governance/index.yaml +0 -0
  911. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/protocols/media-buy/creative-reception.yaml +0 -0
  912. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/protocols/media-buy/index.yaml +0 -0
  913. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/protocols/media-buy/scenarios/create_media_buy_async.yaml +0 -0
  914. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/protocols/media-buy/scenarios/creative_fate_after_cancellation.yaml +0 -0
  915. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/protocols/media-buy/scenarios/delivery_reporting.yaml +0 -0
  916. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/protocols/media-buy/scenarios/governance_approved.yaml +0 -0
  917. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/protocols/media-buy/scenarios/governance_conditions.yaml +0 -0
  918. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/protocols/media-buy/scenarios/governance_denied.yaml +0 -0
  919. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/protocols/media-buy/scenarios/governance_denied_recovery.yaml +0 -0
  920. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/protocols/media-buy/scenarios/invalid_transitions.yaml +0 -0
  921. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/protocols/media-buy/scenarios/inventory_list_no_match.yaml +0 -0
  922. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/protocols/media-buy/scenarios/measurement_terms_rejected.yaml +0 -0
  923. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/protocols/media-buy/scenarios/pending_creatives_to_start.yaml +0 -0
  924. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/protocols/media-buy/scenarios/proposal_finalize.yaml +0 -0
  925. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/protocols/media-buy/scenarios/refine_products.yaml +0 -0
  926. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/protocols/media-buy/state-machine.yaml +0 -0
  927. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/protocols/signals/index.yaml +0 -0
  928. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/protocols/sponsored-intelligence/index.yaml +0 -0
  929. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/audience-sync/index.yaml +0 -0
  930. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/brand-rights/index.yaml +0 -0
  931. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/brand-rights/scenarios/governance_denied.yaml +0 -0
  932. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/collection-lists/index.yaml +0 -0
  933. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/content-standards/index.yaml +0 -0
  934. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/creative-ad-server/index.yaml +0 -0
  935. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/creative-generative/generative-seller.yaml +0 -0
  936. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/creative-generative/index.yaml +0 -0
  937. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/creative-template/index.yaml +0 -0
  938. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/governance-aware-seller/index.yaml +0 -0
  939. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/governance-delivery-monitor/index.yaml +0 -0
  940. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/governance-spend-authority/denied.yaml +0 -0
  941. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/governance-spend-authority/index.yaml +0 -0
  942. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/property-lists/index.yaml +0 -0
  943. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/sales-broadcast-tv/index.yaml +0 -0
  944. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/sales-catalog-driven/index.yaml +0 -0
  945. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/sales-non-guaranteed/index.yaml +0 -0
  946. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/sales-proposal-mode/index.yaml +0 -0
  947. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/sales-social/index.yaml +0 -0
  948. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/signal-marketplace/index.yaml +0 -0
  949. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/signal-marketplace/scenarios/governance_denied.yaml +0 -0
  950. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/specialisms/signal-owned/index.yaml +0 -0
  951. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-kits/acme-outdoor.yaml +0 -0
  952. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-kits/bistro-oranje.yaml +0 -0
  953. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-kits/nova-motors.yaml +0 -0
  954. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-kits/osei-natural.yaml +0 -0
  955. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-kits/signed-requests-runner.yaml +0 -0
  956. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-kits/substitution-observer-runner.yaml +0 -0
  957. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-kits/summit-foods.yaml +0 -0
  958. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-kits/webhook-receiver-runner.yaml +0 -0
  959. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/plan-hash/001-minimal-plan.json +0 -0
  960. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/plan-hash/002-full-plan.json +0 -0
  961. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/plan-hash/003-bookkeeping-stripped.json +0 -0
  962. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/plan-hash/004a-human-review-omitted.json +0 -0
  963. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/plan-hash/004b-human-review-explicit-null.json +0 -0
  964. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/plan-hash/005a-policy-categories-order-1.json +0 -0
  965. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/plan-hash/005b-policy-categories-order-2.json +0 -0
  966. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/plan-hash/006a-ext-trace-v1.json +0 -0
  967. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/plan-hash/006b-ext-trace-v2.json +0 -0
  968. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/plan-hash/007-unicode-objectives.json +0 -0
  969. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/plan-hash/008-numeric-canonicalization.json +0 -0
  970. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/README.md +0 -0
  971. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/canonicalization.json +0 -0
  972. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/keys.json +0 -0
  973. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/001-no-signature-header.json +0 -0
  974. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/002-wrong-tag.json +0 -0
  975. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/003-expired-signature.json +0 -0
  976. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/004-window-too-long.json +0 -0
  977. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/005-alg-not-allowed.json +0 -0
  978. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/006-missing-covered-component.json +0 -0
  979. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/007-missing-content-digest.json +0 -0
  980. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/008-unknown-keyid.json +0 -0
  981. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/009-key-ops-missing-verify.json +0 -0
  982. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/010-content-digest-mismatch.json +0 -0
  983. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/011-malformed-header.json +0 -0
  984. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/012-missing-expires-param.json +0 -0
  985. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/013-expires-le-created.json +0 -0
  986. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/014-missing-nonce-param.json +0 -0
  987. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/015-signature-invalid.json +0 -0
  988. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/016-replayed-nonce.json +0 -0
  989. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/017-key-revoked.json +0 -0
  990. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/018-digest-covered-when-forbidden.json +0 -0
  991. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/019-signature-without-signature-input.json +0 -0
  992. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/020-rate-abuse.json +0 -0
  993. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/021-duplicate-signature-input-label.json +0 -0
  994. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/022-multi-valued-content-type.json +0 -0
  995. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/023-multi-valued-content-digest.json +0 -0
  996. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/024-unquoted-string-param.json +0 -0
  997. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/025-jwk-alg-crv-mismatch.json +0 -0
  998. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/026-non-ascii-host.json +0 -0
  999. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/negative/027-webhook-registration-authentication-unsigned.json +0 -0
  1000. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/positive/001-basic-post.json +0 -0
  1001. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/positive/002-post-with-content-digest.json +0 -0
  1002. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/positive/003-es256-post.json +0 -0
  1003. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/positive/004-multiple-signature-labels.json +0 -0
  1004. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/positive/005-default-port-stripped.json +0 -0
  1005. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/positive/006-dot-segment-path.json +0 -0
  1006. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/positive/007-query-byte-preserved.json +0 -0
  1007. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/positive/008-percent-encoded-path.json +0 -0
  1008. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/positive/009-percent-encoded-unreserved-decoded.json +0 -0
  1009. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/positive/010-percent-encoded-slash-preserved.json +0 -0
  1010. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/positive/011-ipv6-authority.json +0 -0
  1011. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/request-signing/positive/012-ipv6-authority-default-port-stripped.json +0 -0
  1012. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/README.md +0 -0
  1013. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/keys.json +0 -0
  1014. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/negative/001-wrong-tag.json +0 -0
  1015. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/negative/002-expired-signature.json +0 -0
  1016. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/negative/003-window-too-long.json +0 -0
  1017. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/negative/004-alg-not-allowed.json +0 -0
  1018. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/negative/005-missing-authority-component.json +0 -0
  1019. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/negative/006-missing-content-digest.json +0 -0
  1020. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/negative/007-unknown-keyid.json +0 -0
  1021. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/negative/008-wrong-adcp-use.json +0 -0
  1022. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/negative/009-content-digest-mismatch.json +0 -0
  1023. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/negative/010-malformed-signature-input.json +0 -0
  1024. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/negative/011-signature-without-input.json +0 -0
  1025. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/negative/012-missing-expires-param.json +0 -0
  1026. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/negative/013-expires-le-created.json +0 -0
  1027. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/negative/014-missing-nonce-param.json +0 -0
  1028. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/negative/015-signature-invalid.json +0 -0
  1029. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/negative/016-replayed-nonce.json +0 -0
  1030. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/negative/017-key-revoked.json +0 -0
  1031. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/negative/018-rate-abuse.json +0 -0
  1032. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/negative/019-revocation-stale.json +0 -0
  1033. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/negative/020-key-ops-missing-verify.json +0 -0
  1034. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/negative/021-base64-alphabet-mixing.json +0 -0
  1035. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/positive/001-basic-post.json +0 -0
  1036. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/positive/002-es256-post.json +0 -0
  1037. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/positive/003-multiple-signature-labels.json +0 -0
  1038. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/positive/004-default-port-stripped.json +0 -0
  1039. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/positive/005-percent-encoded-path.json +0 -0
  1040. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/positive/006-query-byte-preserved.json +0 -0
  1041. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/test-vectors/webhook-signing/positive/007-body-without-idempotency-key.json +0 -0
  1042. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/universal/capability-discovery.yaml +0 -0
  1043. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/universal/collection-lists-pagination-integrity.yaml +0 -0
  1044. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/universal/content-standards-pagination-integrity.yaml +0 -0
  1045. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/universal/deterministic-testing.yaml +0 -0
  1046. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/universal/error-compliance.yaml +0 -0
  1047. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/universal/fictional-entities.yaml +0 -0
  1048. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/universal/get-media-buys-pagination-integrity.yaml +0 -0
  1049. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/universal/get-signals-pagination-integrity.yaml +0 -0
  1050. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/universal/idempotency.yaml +0 -0
  1051. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/universal/pagination-integrity-creative-formats.yaml +0 -0
  1052. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/universal/pagination-integrity-list-accounts.yaml +0 -0
  1053. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/universal/pagination-integrity.yaml +0 -0
  1054. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/universal/property-lists-pagination-integrity.yaml +0 -0
  1055. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/universal/runner-output-contract.yaml +0 -0
  1056. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/universal/schema-validation.yaml +0 -0
  1057. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/universal/security.yaml +0 -0
  1058. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/universal/signed-requests.yaml +0 -0
  1059. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/universal/v3-envelope-integrity.yaml +0 -0
  1060. /package/compliance/cache/{3.0.5 → 3.0.6.previous}/universal/webhook-emission.yaml +0 -0
@@ -0,0 +1,211 @@
1
+ # AdCP Webhook Signing Conformance Vectors
2
+
3
+ Test vectors for the AdCP RFC 9421 webhook-signing profile. These fixtures drive cross-implementation conformance testing so a signer written in one SDK and a verifier written in another agree on the wire format of outbound push-notification webhooks.
4
+
5
+ Specification: [Webhook callbacks](https://adcontextprotocol.org/docs/building/implementation/security#webhook-callbacks) in `docs/building/implementation/security.mdx`.
6
+
7
+ **Canonical URLs.** These vectors are served at `https://adcontextprotocol.org/compliance/{version}/test-vectors/webhook-signing/`, with `{version}` being either a specific release (e.g. `3.0.0`) or `latest` (tracks the most recent GA). Tree preserved — `keys.json`, `negative/*.json`, `positive/*.json` all resolvable. SDKs SHOULD fetch from the versioned CDN path and record the version under test rather than requiring a checkout of the spec repo. Example: `https://adcontextprotocol.org/compliance/latest/test-vectors/webhook-signing/positive/001-basic-post.json`.
8
+
9
+ ## ⚠️ Security — test keys are public
10
+
11
+ `keys.json` publishes the full private key material for every test keypair in the `_private_d_for_test_only` field so SDKs can exercise both signer and verifier roles against the same material. **Any production verifier that adds `test-ed25519-webhook-2026`, `test-es256-webhook-2026`, `test-wrong-purpose-2026`, or `test-revoked-webhook-2026` to its trust store is exploitable** — anyone who downloads `keys.json` can forge signatures under those kids. These keys are valid ONLY for grading against this conformance suite. Production signers MUST mint and publish their own keypairs under their own `jwks_uri`; production verifiers MUST NOT treat the test kids as trusted in any deployment exposed to live traffic.
12
+
13
+ ## Scope
14
+
15
+ These vectors exercise the [webhook verifier checklist](https://adcontextprotocol.org/docs/building/implementation/security#verifier-checklist-for-webhooks) and the RFC 9421 profile constraints specific to webhooks: required covered components (content-digest is REQUIRED, no policy branch), the distinct `tag="adcp/webhook-signing/v1"`, the `adcp_use: "webhook-signing"` key-purpose discriminator, and the `webhook_signature_*` error taxonomy. They do not exercise live JWKS fetch, brand.json discovery, or revocation-list polling — those require live endpoints and belong in integration suites.
16
+
17
+ Vectors cover the receiver side (buyer verifying inbound webhooks). Sender-side grading — does the agent-under-test emit conformant signatures on live traffic — is handled by the [`webhook-emission` universal](https://adcontextprotocol.org/compliance/latest/universal/webhook-emission) via a runner that hosts a receiver during storyboard execution.
18
+
19
+ ## Relationship to the request-signing vectors
20
+
21
+ Webhook signing reuses most of the RFC 9421 profile from request signing:
22
+
23
+ - **`@target-uri` canonicalization** is identical. The canonicalization cases live in [`test-vectors/request-signing/canonicalization.json`](../request-signing/canonicalization.json) and are not duplicated here — every rule an SDK verifies for request signing applies byte-for-byte to webhook signing.
24
+ - **Signature parameters** (`created`, `expires`, `nonce`, `keyid`, `alg`) share semantics with request signing. The only divergence is `tag`: webhooks MUST use `adcp/webhook-signing/v1`.
25
+ - **Binary value encoding** (`Signature`, `Content-Digest`) uses the same base64url-no-padding override as request signing.
26
+
27
+ The distinct surface is the purpose-discriminator chain: `adcp_use` MUST be `"webhook-signing"` on the verifying JWK, `tag` MUST be `"adcp/webhook-signing/v1"`, and `content-digest` MUST be covered (no `covers_content_digest: "forbidden"` opt-out — the body is the event).
28
+
29
+ ## File layout
30
+
31
+ ```
32
+ test-vectors/webhook-signing/
33
+ ├── README.md this file
34
+ ├── keys.json test keypairs (Ed25519 + ES256) with adcp_use: "webhook-signing",
35
+ │ plus a wrong-purpose key (adcp_use: "request-signing") for vector 008
36
+ │ and a revoked key for vector 017
37
+ ├── negative/ vectors that MUST fail verification
38
+ │ ├── 001-wrong-tag.json → webhook_signature_tag_invalid (step 3; uses request-signing tag)
39
+ │ ├── 002-expired-signature.json → webhook_signature_window_invalid (step 5; expired)
40
+ │ ├── 003-window-too-long.json → webhook_signature_window_invalid (step 5; window > 300s)
41
+ │ ├── 004-alg-not-allowed.json → webhook_signature_alg_not_allowed (step 4)
42
+ │ ├── 005-missing-authority-component.json → webhook_signature_components_incomplete (step 6; @authority missing)
43
+ │ ├── 006-missing-content-digest.json → webhook_signature_components_incomplete (step 6; REQUIRED on webhooks)
44
+ │ ├── 007-unknown-keyid.json → webhook_signature_key_unknown (step 7)
45
+ │ ├── 008-wrong-adcp-use.json → webhook_signature_key_purpose_invalid (step 8; adcp_use=request-signing)
46
+ │ ├── 009-content-digest-mismatch.json → webhook_signature_digest_mismatch (step 11)
47
+ │ ├── 010-malformed-signature-input.json → webhook_signature_header_malformed (step 1)
48
+ │ ├── 011-signature-without-input.json → webhook_signature_header_malformed (step 1; bound pair broken, one header without the other)
49
+ │ ├── 012-missing-expires-param.json → webhook_signature_params_incomplete (step 2)
50
+ │ ├── 013-expires-le-created.json → webhook_signature_window_invalid (step 5; expires ≤ created)
51
+ │ ├── 014-missing-nonce-param.json → webhook_signature_params_incomplete (step 2)
52
+ │ ├── 015-signature-invalid.json → webhook_signature_invalid (step 10; signature bytes corrupted)
53
+ │ ├── 016-replayed-nonce.json → webhook_signature_replayed (step 12; requires runner state)
54
+ │ ├── 017-key-revoked.json → webhook_signature_key_revoked (step 9; requires runner state)
55
+ │ ├── 018-rate-abuse.json → webhook_signature_rate_abuse (step 9a; requires runner state)
56
+ │ ├── 019-revocation-stale.json → webhook_signature_revocation_stale (step 9; requires runner state)
57
+ │ ├── 020-key-ops-missing-verify.json → webhook_signature_key_purpose_invalid (step 8; key_ops lacks "verify")
58
+ │ └── 021-base64-alphabet-mixing.json → webhook_signature_header_malformed (step 1; Signature token mixes base64url and standard-base64 chars)
59
+ └── positive/ vectors that MUST verify successfully
60
+ ├── 001-basic-post.json Ed25519, all five required components covered
61
+ ├── 002-es256-post.json ES256, all five required components covered
62
+ ├── 003-multiple-signature-labels.json Two Signature-Input labels; verifier processes the label named `sig1`
63
+ ├── 004-default-port-stripped.json URL has :443; canonical strips it before signing
64
+ ├── 005-percent-encoded-path.json Path has lowercase %xx; canonical uppercases
65
+ ├── 006-query-byte-preserved.json Query b=2&a=1&c=3 — preserved byte-for-byte, not alphabetized
66
+ └── 007-body-without-idempotency-key.json Body omits idempotency_key; signature still verifies (schema vs. signature separation)
67
+ ```
68
+
69
+ ## Vector shape
70
+
71
+ Each vector is a JSON object with these fields:
72
+
73
+ ```json
74
+ {
75
+ "name": "human-readable summary",
76
+ "spec_reference": "#section-anchor in security.mdx",
77
+ "reference_now": 1776520800,
78
+ "request": {
79
+ "method": "POST",
80
+ "url": "https://buyer.example.com/adcp/webhook/...",
81
+ "headers": {
82
+ "Content-Type": "application/json",
83
+ "Content-Digest": "sha-256=:...:",
84
+ "Signature-Input": "sig1=(...);created=...;expires=...;nonce=...;keyid=...;alg=...;tag=\"adcp/webhook-signing/v1\"",
85
+ "Signature": "sig1=:<base64url-unpadded>:"
86
+ },
87
+ "body": "{\"idempotency_key\":\"...\",\"task_id\":\"...\",\"status\":\"completed\"}"
88
+ },
89
+ "jwks_ref": ["test-ed25519-webhook-2026"],
90
+ "expected_signature_base": "...\\n@signature-params: ...",
91
+ "expected_outcome": { "success": true }
92
+ // Negative vectors instead carry:
93
+ // "expected_outcome": { "success": false, "error_code": "webhook_signature_<...>", "failed_step": <n> }
94
+ }
95
+ ```
96
+
97
+ ### `reference_now`
98
+
99
+ Fixed Unix-seconds timestamp representing "now" at vector construction time (2026-04-18T10:00:00Z). Verifiers running the vectors SHOULD stub their clock to this value so `window_invalid` checks are deterministic across time zones and machines.
100
+
101
+ **Units**: Unix **seconds**, not milliseconds. Verifiers whose internal clocks are in milliseconds MUST divide by 1000 before comparing to `created`/`expires` sig-params. Using a millisecond value directly would make every signature appear ~1000× in the past and trip `window_invalid`.
102
+
103
+ ### `jwks_ref`
104
+
105
+ Array of `kid` values the vector expects in the signer JWKS. Verifiers load `keys.json`, filter to the listed `kid`s, and present that subset to their verifier under test. Not all keys in `keys.json` are in every vector's JWKS — for example, vector 008 references only `test-wrong-purpose-2026`, which causes step 8 to reject.
106
+
107
+ ### `expected_signature_base`
108
+
109
+ The RFC 9421 §2.5 canonical signature base the signer produced. Verifiers computing their own base from the `request` fields and `Signature-Input` parameters MUST produce a byte-identical string. This is the fastest divergence signal for canonicalization bugs — if the base differs, the signature won't verify even if the crypto is correct.
110
+
111
+ ### `expected_outcome`
112
+
113
+ Positive vectors: `{"success": true}`. Verifiers MUST accept the signature.
114
+
115
+ Negative vectors: `{"success": false, "error_code": "webhook_signature_<...>", "failed_step": <n>, "sub_step": "<letter>"?}`. Verifiers MUST reject the signature with the exact `error_code` byte-for-byte. The `failed_step` and `sub_step` fields are informational — grading is on the stable error code only. An implementation that rejects with the correct error code at a different checklist step number is conformant; the step order in the spec is a scaffolding for correctness, not a grading target.
116
+
117
+ - `failed_step` is always an **integer** (1–13).
118
+ - `sub_step` is optional and, when present, is a **string** letter (e.g., `"a"` for step 9a's per-keyid cap check). Vectors without a sub-step omit the field entirely rather than setting it to null.
119
+
120
+ ### `test_harness_state`
121
+
122
+ Negative vectors that assert verifier state the vector cannot set from the outside (016, 017, 018, 019) carry `test_harness_state` describing the preconditions the runner MUST install before delivering the vector. Recognized shapes:
123
+
124
+ | Field | Type | Used by | Meaning |
125
+ |---|---|---|---|
126
+ | `replay_cache_entries` | `Array<{keyid, nonce}>` | 016-replayed-nonce | Entries the runner MUST preload into its (keyid, nonce) replay cache. Paired with `black_box_behavior: "deliver_twice"` for runners that provoke the replay by double-delivery instead. |
127
+ | `revoked_kids` | `string[]` | 017-key-revoked | Kids the runner MUST preload into the revocation list. |
128
+ | `per_keyid_cap_filled_for` | `string` | 018-rate-abuse | Kid whose per-keyid replay-cache cap the runner MUST fill to its grading target before delivering the vector. Paired with `black_box_behavior: "pre_fill_per_keyid_cap"`. |
129
+ | `revocation_list_stale_seconds` | `integer` | 019-revocation-stale | Simulated seconds since last successful revocation-list refresh. Runner MUST present this to the receiver as exceeding the `next_update + grace` window. Paired with `black_box_behavior: "simulate_stale_revocation_fetch"`. |
130
+
131
+ Runners that cannot install a declared harness-state primitive skip the affected vector as `not_applicable` — never as failed.
132
+
133
+ ### `black_box_behavior`
134
+
135
+ State-dependent vectors (016, 017, 018, 019) declare a `black_box_behavior` string describing the runner-side action that provokes the assertion without white-box state injection. AdCP Verified grading runs black-box only. White-box harnesses MAY inject state directly (per the `test_harness_state` shape above) and skip the black-box step.
136
+
137
+ ### `jwks_override` (vector 020 only)
138
+
139
+ Vector 020 tests that the verifier rejects JWKs whose `key_ops` lacks `"verify"`. The vector's signature itself is produced by a normally-configured key; the JWK presented to the verifier overrides `keys.json` with a mutated variant. Runners MUST substitute the keyid's entry with the `jwks_override[kid]` shape before resolving the signature. Field present only on vectors that need JWK mutation; most vectors present `keys.json` entries unchanged.
140
+
141
+ ### `jwks_ref` semantics (positive vector 003)
142
+
143
+ Vector 003 includes two `Signature-Input` labels: the vector's own `sig1` and a decorative `relay` label. Verifiers MUST process the label named `sig1` specifically — not "the first label in the header," not "any label." The spec at [`#adcp-rfc-9421-profile`](https://adcontextprotocol.org/docs/building/implementation/security#adcp-rfc-9421-profile) says signers name the label `sig1` by convention, and verifiers key off the name rather than position. If an implementation picks a different label, the vector will fail even if that label's signature is individually valid.
144
+
145
+ ### Signature validity vs. payload schema validation (positive vector 007)
146
+
147
+ Vector 007's body omits `idempotency_key`, which is required by the webhook payload schema per #2417. The 9421 signature still verifies cleanly because signature verification is a **transport-layer** check; payload schema validation is a **separate application-layer check** that fires after. A conformant receiver will:
148
+
149
+ 1. Verify the signature (steps 1–13 of the webhook verifier checklist) → accept.
150
+ 2. Validate the decoded payload against the webhook schema → reject for missing `idempotency_key`.
151
+
152
+ Step 2's rejection does NOT map to any `webhook_signature_*` code. Implementations that conflate the two and reject vector 007 at the signature layer are non-conformant. Implementations that accept vector 007 at the signature layer and separately reject the payload at schema validation are correctly splitting the concerns.
153
+
154
+ ### `requires_contract` and `test_harness_state` (negative vectors only, when applicable)
155
+
156
+ Three negative vectors (016-replayed-nonce, 017-key-revoked, 018-rate-abuse) assert verifier state the vector cannot set from the outside. They carry:
157
+
158
+ - `requires_contract: "webhook_receiver_runner"` — signals that grading requires the webhook receiver contract at [`test-kits/webhook-receiver-runner.yaml`](https://adcontextprotocol.org/compliance/latest/test-kits/webhook-receiver-runner).
159
+ - `test_harness_state` — declares the preconditions (replay cache entries, revoked kids, per-keyid cap exhaustion) that the runner MUST install before delivering the vector.
160
+ - `black_box_behavior` (016 only) — runner delivers the vector twice within the replay window; receiver MUST accept the first and reject the second.
161
+
162
+ White-box harnesses MAY inject state directly and skip the runner coordination. AdCP Verified grading runs black-box only; see the test-kit contract for details.
163
+
164
+ ## Using the vectors
165
+
166
+ ### Positive phase
167
+
168
+ For each vector in `positive/`:
169
+
170
+ 1. Load `keys.json` into your verifier's JWKS store, filtered to `vec.jwks_ref`.
171
+ 2. Stub your clock to `vec.reference_now`.
172
+ 3. Feed `vec.request` to your verifier as if the webhook had just arrived on the wire.
173
+ 4. Assert the verifier accepts with `success: true`.
174
+
175
+ Sanity checks (optional but recommended):
176
+
177
+ - Compute your own canonical signature base from `vec.request` and compare to `vec.expected_signature_base` byte-for-byte.
178
+ - Compute your own `Content-Digest` from `vec.request.body` and compare to the header value.
179
+
180
+ ### Negative phase
181
+
182
+ For each vector in `negative/`:
183
+
184
+ 1. Same setup as the positive phase.
185
+ 2. Apply any `test_harness_state` declared on the vector (revocation list entries, replay cache entries, per-keyid cap).
186
+ 3. Feed `vec.request` to your verifier.
187
+ 4. Assert the verifier rejects with `success: false` AND `error_code` equal to `vec.expected_outcome.error_code` byte-for-byte. The `failed_step` is not graded.
188
+
189
+ ### Integration with `@adcp/client`
190
+
191
+ Receiver libraries built on top of `@adcp/client` SHOULD run these vectors in CI against the library's 9421 webhook verifier. The `webhook-emission` universal's live E2E grading complements but does not replace this — live grading exercises positive paths; static negative vectors are the only reliable path to cover every `webhook_signature_*` error code deterministically.
192
+
193
+ ## Key material
194
+
195
+ All keys in `keys.json` are test-only. Private components ship publicly in the `_private_d_for_test_only` field so SDKs can run both signer and verifier roles against the same keypairs. Do not use these keys in production — production signers MUST generate and publish their own keypairs at their own `jwks_uri`.
196
+
197
+ The `test-revoked-webhook-2026` kid is a dedicated keypair for vector 017. Agents MUST NOT use this kid in production verifier revocation lists; it is scoped to grading runs via the runner contract.
198
+
199
+ ## Generating the vectors
200
+
201
+ Vectors are generated by a script at `.context/generate-webhook-vectors.mjs` in the spec repo (gitignored — the script is not shipped). The script produces new keypairs and computes fresh signatures on each run, so the committed vectors are snapshot at generation time. Re-running the script would produce different keys and therefore different signatures; vectors are frozen once committed.
202
+
203
+ A verification script at `.context/verify-webhook-vectors.mjs` checks that all positive vectors actually verify against the published keys. Run it before committing any regeneration.
204
+
205
+ ## Specification cross-reference
206
+
207
+ - Webhook callbacks profile: `docs/building/implementation/security.mdx#webhook-callbacks`
208
+ - Verifier checklist: `#verifier-checklist-for-webhooks`
209
+ - Error taxonomy: `#webhook-error-taxonomy`
210
+ - Replay dedup and sizing: `#webhook-replay-dedup-sizing`
211
+ - `@target-uri` canonicalization (shared with request signing): `#adcp-rfc-9421-profile`
@@ -0,0 +1,61 @@
1
+ {
2
+ "_WARNING": "PUBLIC TEST KEYS — DO NOT TRUST IN PRODUCTION. The _private_d_for_test_only field exposes the full private key on every entry so SDK signer/verifier roundtrips can be exercised against the same material. Any production verifier that adds one of these kids to its trust store can be forged against by anyone who downloads this file. These keys are valid ONLY for grading against the AdCP webhook-signing conformance vectors.",
3
+ "$comment": "Test keypairs for AdCP webhook-signing conformance. These keys are public and MUST NOT be used in production. See README.md.",
4
+ "keys": [
5
+ {
6
+ "kid": "test-ed25519-webhook-2026",
7
+ "kty": "OKP",
8
+ "crv": "Ed25519",
9
+ "alg": "EdDSA",
10
+ "use": "sig",
11
+ "key_ops": [
12
+ "verify"
13
+ ],
14
+ "adcp_use": "webhook-signing",
15
+ "x": "y7tTfeqazsFeTn3ccCzQlcJ4qFWuYsu-JkJAcfc9VoA",
16
+ "_private_d_for_test_only": "V0Z2ktvVfcWISjh4xmUlt-bSOJML9QBlzWzDkMFvgJw"
17
+ },
18
+ {
19
+ "kid": "test-es256-webhook-2026",
20
+ "kty": "EC",
21
+ "crv": "P-256",
22
+ "alg": "ES256",
23
+ "use": "sig",
24
+ "key_ops": [
25
+ "verify"
26
+ ],
27
+ "adcp_use": "webhook-signing",
28
+ "x": "0X7G_jryFpiX9XO3CKxIqUQs3DC8OhUkw6Rb5QOZd5M",
29
+ "y": "MwZN7qQJzLpTD5dyDJAoqOLZJ9r8-GCh4BnOYu6NE0c",
30
+ "_private_d_for_test_only": "xgSwq4Iq3RS8MFP2oXsDP--8uZLoq6Idip2PNM6pCZ4"
31
+ },
32
+ {
33
+ "$comment": "Request-signing key (adcp_use='request-signing'). Included so negative vector 008 can demonstrate cross-purpose rejection: the vector presents this key when verifying a webhook signature, and the verifier MUST reject at step 8 because adcp_use is not 'webhook-signing'.",
34
+ "kid": "test-wrong-purpose-2026",
35
+ "kty": "OKP",
36
+ "crv": "Ed25519",
37
+ "alg": "EdDSA",
38
+ "use": "sig",
39
+ "key_ops": [
40
+ "verify"
41
+ ],
42
+ "adcp_use": "request-signing",
43
+ "x": "VgpQd9JRrBf433BcMw6IUNW7tHnAAHAHegsQ5U9I53c",
44
+ "_private_d_for_test_only": "MdgOQLf-gC6G-vq2GGlDwbNE1Q40FY6SQ20yd3s33Cg"
45
+ },
46
+ {
47
+ "$comment": "Revoked webhook-signing key. Dedicated keypair for negative vector 017-key-revoked. adcp_use is 'webhook-signing' so that the verifier's purpose check (step 8) passes and the revocation check (step 9) fires. Runners pre-configure their revocation list to include this keyid before the negative phase runs; see test-kits/webhook-receiver-runner.yaml.",
48
+ "kid": "test-revoked-webhook-2026",
49
+ "kty": "OKP",
50
+ "crv": "Ed25519",
51
+ "alg": "EdDSA",
52
+ "use": "sig",
53
+ "key_ops": [
54
+ "verify"
55
+ ],
56
+ "adcp_use": "webhook-signing",
57
+ "x": "PbQhjfhr2rhLz5vLfN6jKQcjkia0Q9BJ77XpZ5hlspM",
58
+ "_private_d_for_test_only": "OrLTojJ_widzMiREZdxeVdtHW5aCh-CsEJlTztEvRiw"
59
+ }
60
+ ]
61
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "name": "Tag is adcp/request-signing/v1 on webhook route — must reject",
3
+ "spec_reference": "#webhook-callbacks (tag must be adcp/webhook-signing/v1)",
4
+ "reference_now": 1776520800,
5
+ "request": {
6
+ "method": "POST",
7
+ "url": "https://buyer.example.com/adcp/webhook/create_media_buy/agent_123/op_abc",
8
+ "headers": {
9
+ "Content-Type": "application/json",
10
+ "Content-Digest": "sha-256=:dJ2koiIMZIhdGE7tidErCHV13FFvOIowCcXDiwyG54I=:",
11
+ "Signature-Input": "sig1=(\"@method\" \"@target-uri\" \"@authority\" \"content-type\" \"content-digest\");created=1776520800;expires=1776521100;nonce=\"KXYnfEfJ0PBRZXQyVXfVQA\";keyid=\"test-ed25519-webhook-2026\";alg=\"ed25519\";tag=\"adcp/request-signing/v1\"",
12
+ "Signature": "sig1=:Zf91cu1JUHQHC2ewqzZc7XzPrwlGIY50rdBSYHtkaPOK84EQ_c7v9V4vaaPcVI6oWCgIitHjurEX5tOvgOT1AQ:"
13
+ },
14
+ "body": "{\"idempotency_key\":\"whk_01HW9D3H8FZP2N6R8T0V4X6Z9B\",\"task_id\":\"task_456\",\"operation_id\":\"op_abc\",\"status\":\"completed\",\"result\":{\"media_buy_id\":\"mb_001\"}}"
15
+ },
16
+ "jwks_ref": [
17
+ "test-ed25519-webhook-2026"
18
+ ],
19
+ "expected_signature_base": "\"@method\": POST\n\"@target-uri\": https://buyer.example.com/adcp/webhook/create_media_buy/agent_123/op_abc\n\"@authority\": buyer.example.com\n\"content-type\": application/json\n\"content-digest\": sha-256=:dJ2koiIMZIhdGE7tidErCHV13FFvOIowCcXDiwyG54I=:\n\"@signature-params\": (\"@method\" \"@target-uri\" \"@authority\" \"content-type\" \"content-digest\");created=1776520800;expires=1776521100;nonce=\"KXYnfEfJ0PBRZXQyVXfVQA\";keyid=\"test-ed25519-webhook-2026\";alg=\"ed25519\";tag=\"adcp/request-signing/v1\"",
20
+ "expected_outcome": {
21
+ "success": false,
22
+ "error_code": "webhook_signature_tag_invalid",
23
+ "failed_step": 3
24
+ },
25
+ "$comment": "Signature generated by .context/generate-webhook-vectors.mjs from expected_signature_base using the named private key in keys.json. Ed25519 is deterministic; ES256 uses IEEE P1363 (r||s) encoding per RFC 9421 §3.3.2."
26
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "name": "Signature expired (expires < now - 60s)",
3
+ "spec_reference": "#webhook-callbacks (window_invalid at step 5)",
4
+ "reference_now": 1776520800,
5
+ "request": {
6
+ "method": "POST",
7
+ "url": "https://buyer.example.com/adcp/webhook/create_media_buy/agent_123/op_abc",
8
+ "headers": {
9
+ "Content-Type": "application/json",
10
+ "Content-Digest": "sha-256=:dJ2koiIMZIhdGE7tidErCHV13FFvOIowCcXDiwyG54I=:",
11
+ "Signature-Input": "sig1=(\"@method\" \"@target-uri\" \"@authority\" \"content-type\" \"content-digest\");created=1776520400;expires=1776520700;nonce=\"KXYnfEfJ0PBRZXQyVXfVQA\";keyid=\"test-ed25519-webhook-2026\";alg=\"ed25519\";tag=\"adcp/webhook-signing/v1\"",
12
+ "Signature": "sig1=:sJEIxCjWPzvPbeNBncSZ8EdveRfq6uyLvNQ45DwZJVwXYHXcLBQbgsywaIJO9-ZahiIBD0MFroaMt7cQ3nkeAw:"
13
+ },
14
+ "body": "{\"idempotency_key\":\"whk_01HW9D3H8FZP2N6R8T0V4X6Z9B\",\"task_id\":\"task_456\",\"operation_id\":\"op_abc\",\"status\":\"completed\",\"result\":{\"media_buy_id\":\"mb_001\"}}"
15
+ },
16
+ "jwks_ref": [
17
+ "test-ed25519-webhook-2026"
18
+ ],
19
+ "expected_signature_base": "\"@method\": POST\n\"@target-uri\": https://buyer.example.com/adcp/webhook/create_media_buy/agent_123/op_abc\n\"@authority\": buyer.example.com\n\"content-type\": application/json\n\"content-digest\": sha-256=:dJ2koiIMZIhdGE7tidErCHV13FFvOIowCcXDiwyG54I=:\n\"@signature-params\": (\"@method\" \"@target-uri\" \"@authority\" \"content-type\" \"content-digest\");created=1776520400;expires=1776520700;nonce=\"KXYnfEfJ0PBRZXQyVXfVQA\";keyid=\"test-ed25519-webhook-2026\";alg=\"ed25519\";tag=\"adcp/webhook-signing/v1\"",
20
+ "expected_outcome": {
21
+ "success": false,
22
+ "error_code": "webhook_signature_window_invalid",
23
+ "failed_step": 5
24
+ },
25
+ "$comment": "Signature generated by .context/generate-webhook-vectors.mjs from expected_signature_base using the named private key in keys.json. Ed25519 is deterministic; ES256 uses IEEE P1363 (r||s) encoding per RFC 9421 §3.3.2."
26
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "name": "expires − created > 300 seconds",
3
+ "spec_reference": "#webhook-callbacks (window_invalid at step 5)",
4
+ "reference_now": 1776520800,
5
+ "request": {
6
+ "method": "POST",
7
+ "url": "https://buyer.example.com/adcp/webhook/create_media_buy/agent_123/op_abc",
8
+ "headers": {
9
+ "Content-Type": "application/json",
10
+ "Content-Digest": "sha-256=:dJ2koiIMZIhdGE7tidErCHV13FFvOIowCcXDiwyG54I=:",
11
+ "Signature-Input": "sig1=(\"@method\" \"@target-uri\" \"@authority\" \"content-type\" \"content-digest\");created=1776520800;expires=1776521400;nonce=\"KXYnfEfJ0PBRZXQyVXfVQA\";keyid=\"test-ed25519-webhook-2026\";alg=\"ed25519\";tag=\"adcp/webhook-signing/v1\"",
12
+ "Signature": "sig1=:8rFnbQpOPxBhNaoeQVco76uI1pN3OB4WzorLNya6vh3O8Id8XjlTZLafwLzfrR-W2nHp9cZR4l3dKQcS20cSDw:"
13
+ },
14
+ "body": "{\"idempotency_key\":\"whk_01HW9D3H8FZP2N6R8T0V4X6Z9B\",\"task_id\":\"task_456\",\"operation_id\":\"op_abc\",\"status\":\"completed\",\"result\":{\"media_buy_id\":\"mb_001\"}}"
15
+ },
16
+ "jwks_ref": [
17
+ "test-ed25519-webhook-2026"
18
+ ],
19
+ "expected_signature_base": "\"@method\": POST\n\"@target-uri\": https://buyer.example.com/adcp/webhook/create_media_buy/agent_123/op_abc\n\"@authority\": buyer.example.com\n\"content-type\": application/json\n\"content-digest\": sha-256=:dJ2koiIMZIhdGE7tidErCHV13FFvOIowCcXDiwyG54I=:\n\"@signature-params\": (\"@method\" \"@target-uri\" \"@authority\" \"content-type\" \"content-digest\");created=1776520800;expires=1776521400;nonce=\"KXYnfEfJ0PBRZXQyVXfVQA\";keyid=\"test-ed25519-webhook-2026\";alg=\"ed25519\";tag=\"adcp/webhook-signing/v1\"",
20
+ "expected_outcome": {
21
+ "success": false,
22
+ "error_code": "webhook_signature_window_invalid",
23
+ "failed_step": 5
24
+ },
25
+ "$comment": "Signature generated by .context/generate-webhook-vectors.mjs from expected_signature_base using the named private key in keys.json. Ed25519 is deterministic; ES256 uses IEEE P1363 (r||s) encoding per RFC 9421 §3.3.2."
26
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "name": "alg parameter is rsa-pss-sha512 — not in allowlist",
3
+ "spec_reference": "#webhook-callbacks (alg_not_allowed at step 4)",
4
+ "reference_now": 1776520800,
5
+ "request": {
6
+ "method": "POST",
7
+ "url": "https://buyer.example.com/adcp/webhook/create_media_buy/agent_123/op_abc",
8
+ "headers": {
9
+ "Content-Type": "application/json",
10
+ "Content-Digest": "sha-256=:dJ2koiIMZIhdGE7tidErCHV13FFvOIowCcXDiwyG54I=:",
11
+ "Signature-Input": "sig1=(\"@method\" \"@target-uri\" \"@authority\" \"content-type\" \"content-digest\");created=1776520800;expires=1776521100;nonce=\"KXYnfEfJ0PBRZXQyVXfVQA\";keyid=\"test-ed25519-webhook-2026\";alg=\"rsa-pss-sha512\";tag=\"adcp/webhook-signing/v1\"",
12
+ "Signature": "sig1=:KyEXwTz99uTM_9Kdt6HxG3HZ57wiYjfN-AN1qpeiUUmpKKJax2uvOki-GeV3gke6lYk57aZlW8NUXa_IxmrsDA:"
13
+ },
14
+ "body": "{\"idempotency_key\":\"whk_01HW9D3H8FZP2N6R8T0V4X6Z9B\",\"task_id\":\"task_456\",\"operation_id\":\"op_abc\",\"status\":\"completed\",\"result\":{\"media_buy_id\":\"mb_001\"}}"
15
+ },
16
+ "jwks_ref": [
17
+ "test-ed25519-webhook-2026"
18
+ ],
19
+ "expected_signature_base": "\"@method\": POST\n\"@target-uri\": https://buyer.example.com/adcp/webhook/create_media_buy/agent_123/op_abc\n\"@authority\": buyer.example.com\n\"content-type\": application/json\n\"content-digest\": sha-256=:dJ2koiIMZIhdGE7tidErCHV13FFvOIowCcXDiwyG54I=:\n\"@signature-params\": (\"@method\" \"@target-uri\" \"@authority\" \"content-type\" \"content-digest\");created=1776520800;expires=1776521100;nonce=\"KXYnfEfJ0PBRZXQyVXfVQA\";keyid=\"test-ed25519-webhook-2026\";alg=\"rsa-pss-sha512\";tag=\"adcp/webhook-signing/v1\"",
20
+ "expected_outcome": {
21
+ "success": false,
22
+ "error_code": "webhook_signature_alg_not_allowed",
23
+ "failed_step": 4
24
+ },
25
+ "$comment": "Signature generated by .context/generate-webhook-vectors.mjs from expected_signature_base using the named private key in keys.json. Ed25519 is deterministic; ES256 uses IEEE P1363 (r||s) encoding per RFC 9421 §3.3.2."
26
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "name": "Covered components missing @authority — required for webhooks",
3
+ "spec_reference": "#webhook-callbacks (components_incomplete at step 6)",
4
+ "reference_now": 1776520800,
5
+ "request": {
6
+ "method": "POST",
7
+ "url": "https://buyer.example.com/adcp/webhook/create_media_buy/agent_123/op_abc",
8
+ "headers": {
9
+ "Content-Type": "application/json",
10
+ "Content-Digest": "sha-256=:dJ2koiIMZIhdGE7tidErCHV13FFvOIowCcXDiwyG54I=:",
11
+ "Signature-Input": "sig1=(\"@method\" \"@target-uri\" \"content-type\" \"content-digest\");created=1776520800;expires=1776521100;nonce=\"KXYnfEfJ0PBRZXQyVXfVQA\";keyid=\"test-ed25519-webhook-2026\";alg=\"ed25519\";tag=\"adcp/webhook-signing/v1\"",
12
+ "Signature": "sig1=:m9WYTvzsgPgGF333wnEMA8dZ2PTGqdYciFxVE7O2vECwxxnCvmqFv7DpMW86WbWwq7-XnY_MwvEyA6G4E9kfDw:"
13
+ },
14
+ "body": "{\"idempotency_key\":\"whk_01HW9D3H8FZP2N6R8T0V4X6Z9B\",\"task_id\":\"task_456\",\"operation_id\":\"op_abc\",\"status\":\"completed\",\"result\":{\"media_buy_id\":\"mb_001\"}}"
15
+ },
16
+ "jwks_ref": [
17
+ "test-ed25519-webhook-2026"
18
+ ],
19
+ "expected_signature_base": "\"@method\": POST\n\"@target-uri\": https://buyer.example.com/adcp/webhook/create_media_buy/agent_123/op_abc\n\"content-type\": application/json\n\"content-digest\": sha-256=:dJ2koiIMZIhdGE7tidErCHV13FFvOIowCcXDiwyG54I=:\n\"@signature-params\": (\"@method\" \"@target-uri\" \"content-type\" \"content-digest\");created=1776520800;expires=1776521100;nonce=\"KXYnfEfJ0PBRZXQyVXfVQA\";keyid=\"test-ed25519-webhook-2026\";alg=\"ed25519\";tag=\"adcp/webhook-signing/v1\"",
20
+ "expected_outcome": {
21
+ "success": false,
22
+ "error_code": "webhook_signature_components_incomplete",
23
+ "failed_step": 6
24
+ },
25
+ "$comment": "Signature generated by .context/generate-webhook-vectors.mjs from expected_signature_base using the named private key in keys.json. Ed25519 is deterministic; ES256 uses IEEE P1363 (r||s) encoding per RFC 9421 §3.3.2."
26
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "name": "content-digest not covered — REQUIRED on webhooks (no forbidden policy branch)",
3
+ "spec_reference": "#webhook-callbacks (content-digest REQUIRED; components_incomplete at step 6)",
4
+ "reference_now": 1776520800,
5
+ "request": {
6
+ "method": "POST",
7
+ "url": "https://buyer.example.com/adcp/webhook/create_media_buy/agent_123/op_abc",
8
+ "headers": {
9
+ "Content-Type": "application/json",
10
+ "Signature-Input": "sig1=(\"@method\" \"@target-uri\" \"@authority\" \"content-type\");created=1776520800;expires=1776521100;nonce=\"KXYnfEfJ0PBRZXQyVXfVQA\";keyid=\"test-ed25519-webhook-2026\";alg=\"ed25519\";tag=\"adcp/webhook-signing/v1\"",
11
+ "Signature": "sig1=:F3wFMVfyghSt4sc5kf61Ih6DI3gntY3UdH9vwAbMZe9j40m1F2e-pQxF_JZLOU6YEV2sGQnAGJdG49_vXUlgAw:"
12
+ },
13
+ "body": "{\"idempotency_key\":\"whk_01HW9D3H8FZP2N6R8T0V4X6Z9B\",\"task_id\":\"task_456\",\"operation_id\":\"op_abc\",\"status\":\"completed\",\"result\":{\"media_buy_id\":\"mb_001\"}}"
14
+ },
15
+ "jwks_ref": [
16
+ "test-ed25519-webhook-2026"
17
+ ],
18
+ "expected_signature_base": "\"@method\": POST\n\"@target-uri\": https://buyer.example.com/adcp/webhook/create_media_buy/agent_123/op_abc\n\"@authority\": buyer.example.com\n\"content-type\": application/json\n\"@signature-params\": (\"@method\" \"@target-uri\" \"@authority\" \"content-type\");created=1776520800;expires=1776521100;nonce=\"KXYnfEfJ0PBRZXQyVXfVQA\";keyid=\"test-ed25519-webhook-2026\";alg=\"ed25519\";tag=\"adcp/webhook-signing/v1\"",
19
+ "expected_outcome": {
20
+ "success": false,
21
+ "error_code": "webhook_signature_components_incomplete",
22
+ "failed_step": 6
23
+ },
24
+ "$comment": "Signature generated by .context/generate-webhook-vectors.mjs from expected_signature_base using the named private key in keys.json. Ed25519 is deterministic; ES256 uses IEEE P1363 (r||s) encoding per RFC 9421 §3.3.2."
25
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "name": "keyid references a kid not in the signer JWKS after one refetch",
3
+ "spec_reference": "#webhook-callbacks (key_unknown at step 7)",
4
+ "reference_now": 1776520800,
5
+ "request": {
6
+ "method": "POST",
7
+ "url": "https://buyer.example.com/adcp/webhook/create_media_buy/agent_123/op_abc",
8
+ "headers": {
9
+ "Content-Type": "application/json",
10
+ "Content-Digest": "sha-256=:dJ2koiIMZIhdGE7tidErCHV13FFvOIowCcXDiwyG54I=:",
11
+ "Signature-Input": "sig1=(\"@method\" \"@target-uri\" \"@authority\" \"content-type\" \"content-digest\");created=1776520800;expires=1776521100;nonce=\"KXYnfEfJ0PBRZXQyVXfVQA\";keyid=\"test-unknown-keyid-2026\";alg=\"ed25519\";tag=\"adcp/webhook-signing/v1\"",
12
+ "Signature": "sig1=:IkauZs2ARgargjzGfu6MT9vvmXoN2kPkqSUapKvDXqza-KJUeEYuVHar91A3xFaywZ9FIGQdNQOp6O0LG1vACw:"
13
+ },
14
+ "body": "{\"idempotency_key\":\"whk_01HW9D3H8FZP2N6R8T0V4X6Z9B\",\"task_id\":\"task_456\",\"operation_id\":\"op_abc\",\"status\":\"completed\",\"result\":{\"media_buy_id\":\"mb_001\"}}"
15
+ },
16
+ "jwks_ref": [
17
+ "test-ed25519-webhook-2026"
18
+ ],
19
+ "expected_signature_base": "\"@method\": POST\n\"@target-uri\": https://buyer.example.com/adcp/webhook/create_media_buy/agent_123/op_abc\n\"@authority\": buyer.example.com\n\"content-type\": application/json\n\"content-digest\": sha-256=:dJ2koiIMZIhdGE7tidErCHV13FFvOIowCcXDiwyG54I=:\n\"@signature-params\": (\"@method\" \"@target-uri\" \"@authority\" \"content-type\" \"content-digest\");created=1776520800;expires=1776521100;nonce=\"KXYnfEfJ0PBRZXQyVXfVQA\";keyid=\"test-unknown-keyid-2026\";alg=\"ed25519\";tag=\"adcp/webhook-signing/v1\"",
20
+ "expected_outcome": {
21
+ "success": false,
22
+ "error_code": "webhook_signature_key_unknown",
23
+ "failed_step": 7
24
+ },
25
+ "$comment": "Signature generated by .context/generate-webhook-vectors.mjs from expected_signature_base using the named private key in keys.json. Ed25519 is deterministic; ES256 uses IEEE P1363 (r||s) encoding per RFC 9421 §3.3.2."
26
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "name": "Signing key has adcp_use=request-signing instead of webhook-signing",
3
+ "spec_reference": "#webhook-callbacks (key_purpose_invalid at step 8)",
4
+ "reference_now": 1776520800,
5
+ "request": {
6
+ "method": "POST",
7
+ "url": "https://buyer.example.com/adcp/webhook/create_media_buy/agent_123/op_abc",
8
+ "headers": {
9
+ "Content-Type": "application/json",
10
+ "Content-Digest": "sha-256=:dJ2koiIMZIhdGE7tidErCHV13FFvOIowCcXDiwyG54I=:",
11
+ "Signature-Input": "sig1=(\"@method\" \"@target-uri\" \"@authority\" \"content-type\" \"content-digest\");created=1776520800;expires=1776521100;nonce=\"KXYnfEfJ0PBRZXQyVXfVQA\";keyid=\"test-wrong-purpose-2026\";alg=\"ed25519\";tag=\"adcp/webhook-signing/v1\"",
12
+ "Signature": "sig1=:OT_F-yQsYJzp4h1LAigin35vbEOWWuMgOKSHLhzCQHVsTBg5Mx72F5xboy4HiETvUuMiWz8MrW55wSgrjkjwCw:"
13
+ },
14
+ "body": "{\"idempotency_key\":\"whk_01HW9D3H8FZP2N6R8T0V4X6Z9B\",\"task_id\":\"task_456\",\"operation_id\":\"op_abc\",\"status\":\"completed\",\"result\":{\"media_buy_id\":\"mb_001\"}}"
15
+ },
16
+ "jwks_ref": [
17
+ "test-wrong-purpose-2026"
18
+ ],
19
+ "expected_signature_base": "\"@method\": POST\n\"@target-uri\": https://buyer.example.com/adcp/webhook/create_media_buy/agent_123/op_abc\n\"@authority\": buyer.example.com\n\"content-type\": application/json\n\"content-digest\": sha-256=:dJ2koiIMZIhdGE7tidErCHV13FFvOIowCcXDiwyG54I=:\n\"@signature-params\": (\"@method\" \"@target-uri\" \"@authority\" \"content-type\" \"content-digest\");created=1776520800;expires=1776521100;nonce=\"KXYnfEfJ0PBRZXQyVXfVQA\";keyid=\"test-wrong-purpose-2026\";alg=\"ed25519\";tag=\"adcp/webhook-signing/v1\"",
20
+ "expected_outcome": {
21
+ "success": false,
22
+ "error_code": "webhook_signature_key_purpose_invalid",
23
+ "failed_step": 8
24
+ },
25
+ "$comment": "Signature generated by .context/generate-webhook-vectors.mjs from expected_signature_base using the named private key in keys.json. Ed25519 is deterministic; ES256 uses IEEE P1363 (r||s) encoding per RFC 9421 §3.3.2."
26
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "name": "content-digest header does not match the body bytes",
3
+ "spec_reference": "#webhook-callbacks (digest_mismatch at step 11)",
4
+ "reference_now": 1776520800,
5
+ "request": {
6
+ "method": "POST",
7
+ "url": "https://buyer.example.com/adcp/webhook/create_media_buy/agent_123/op_abc",
8
+ "headers": {
9
+ "Content-Type": "application/json",
10
+ "Content-Digest": "sha-256=:kjGoMmRx5B0gPhN3vpf97PXKXw/tv28l9/02UreSL1Q=:",
11
+ "Signature-Input": "sig1=(\"@method\" \"@target-uri\" \"@authority\" \"content-type\" \"content-digest\");created=1776520800;expires=1776521100;nonce=\"KXYnfEfJ0PBRZXQyVXfVQA\";keyid=\"test-ed25519-webhook-2026\";alg=\"ed25519\";tag=\"adcp/webhook-signing/v1\"",
12
+ "Signature": "sig1=:K-RLCW_fRohV6-zsyfxA8a7E4DMhPt845a0UJgsKQ78YBYQqOQJTF1gTYjppbS2omv1HLjCCIhpM0fFKTM95DA:"
13
+ },
14
+ "body": "{\"idempotency_key\":\"whk_01HW9D3H8FZP2N6R8T0V4X6Z9B\",\"task_id\":\"task_456\",\"operation_id\":\"op_abc\",\"status\":\"completed\",\"result\":{\"media_buy_id\":\"mb_001\"}}"
15
+ },
16
+ "jwks_ref": [
17
+ "test-ed25519-webhook-2026"
18
+ ],
19
+ "expected_signature_base": "\"@method\": POST\n\"@target-uri\": https://buyer.example.com/adcp/webhook/create_media_buy/agent_123/op_abc\n\"@authority\": buyer.example.com\n\"content-type\": application/json\n\"content-digest\": sha-256=:kjGoMmRx5B0gPhN3vpf97PXKXw/tv28l9/02UreSL1Q=:\n\"@signature-params\": (\"@method\" \"@target-uri\" \"@authority\" \"content-type\" \"content-digest\");created=1776520800;expires=1776521100;nonce=\"KXYnfEfJ0PBRZXQyVXfVQA\";keyid=\"test-ed25519-webhook-2026\";alg=\"ed25519\";tag=\"adcp/webhook-signing/v1\"",
20
+ "expected_outcome": {
21
+ "success": false,
22
+ "error_code": "webhook_signature_digest_mismatch",
23
+ "failed_step": 11
24
+ },
25
+ "$comment": "Signature generated by .context/generate-webhook-vectors.mjs from expected_signature_base using the named private key in keys.json. Ed25519 is deterministic; ES256 uses IEEE P1363 (r||s) encoding per RFC 9421 §3.3.2."
26
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "name": "Signature-Input header is syntactically malformed",
3
+ "spec_reference": "#webhook-callbacks (header_malformed at step 1)",
4
+ "reference_now": 1776520800,
5
+ "request": {
6
+ "method": "POST",
7
+ "url": "https://buyer.example.com/adcp/webhook/create_media_buy/agent_123/op_abc",
8
+ "headers": {
9
+ "Content-Type": "application/json",
10
+ "Content-Digest": "sha-256=:dJ2koiIMZIhdGE7tidErCHV13FFvOIowCcXDiwyG54I=:",
11
+ "Signature-Input": "sig1=this-is-not-valid-structured-fields",
12
+ "Signature": "sig1=:nqTKCpjlqf1OqZPuJyPeiF7HJ01G8KmPNSzzmad0PAJv7OUVKthI7ks_j4G-6x1H4mBpXDIISgX_iZQiYvG7Dg:"
13
+ },
14
+ "body": "{\"idempotency_key\":\"whk_01HW9D3H8FZP2N6R8T0V4X6Z9B\",\"task_id\":\"task_456\",\"operation_id\":\"op_abc\",\"status\":\"completed\",\"result\":{\"media_buy_id\":\"mb_001\"}}"
15
+ },
16
+ "jwks_ref": [
17
+ "test-ed25519-webhook-2026"
18
+ ],
19
+ "expected_signature_base": "\"@method\": POST\n\"@target-uri\": https://buyer.example.com/adcp/webhook/create_media_buy/agent_123/op_abc\n\"@authority\": buyer.example.com\n\"content-type\": application/json\n\"content-digest\": sha-256=:dJ2koiIMZIhdGE7tidErCHV13FFvOIowCcXDiwyG54I=:\n\"@signature-params\": (\"@method\" \"@target-uri\" \"@authority\" \"content-type\" \"content-digest\");created=1776520800;expires=1776521100;nonce=\"KXYnfEfJ0PBRZXQyVXfVQA\";keyid=\"test-ed25519-webhook-2026\";alg=\"ed25519\";tag=\"adcp/webhook-signing/v1\"",
20
+ "expected_outcome": {
21
+ "success": false,
22
+ "error_code": "webhook_signature_header_malformed",
23
+ "failed_step": 1
24
+ },
25
+ "$comment": "Signature generated by .context/generate-webhook-vectors.mjs from expected_signature_base using the named private key in keys.json. Ed25519 is deterministic; ES256 uses IEEE P1363 (r||s) encoding per RFC 9421 §3.3.2."
26
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "name": "Signature header present without Signature-Input — bound pair broken",
3
+ "spec_reference": "#webhook-callbacks (header_malformed pre-check; downgrade protection)",
4
+ "reference_now": 1776520800,
5
+ "request": {
6
+ "method": "POST",
7
+ "url": "https://buyer.example.com/adcp/webhook/create_media_buy/agent_123/op_abc",
8
+ "headers": {
9
+ "Content-Type": "application/json",
10
+ "Content-Digest": "sha-256=:dJ2koiIMZIhdGE7tidErCHV13FFvOIowCcXDiwyG54I=:",
11
+ "Signature": "sig1=:nqTKCpjlqf1OqZPuJyPeiF7HJ01G8KmPNSzzmad0PAJv7OUVKthI7ks_j4G-6x1H4mBpXDIISgX_iZQiYvG7Dg:"
12
+ },
13
+ "body": "{\"idempotency_key\":\"whk_01HW9D3H8FZP2N6R8T0V4X6Z9B\",\"task_id\":\"task_456\",\"operation_id\":\"op_abc\",\"status\":\"completed\",\"result\":{\"media_buy_id\":\"mb_001\"}}"
14
+ },
15
+ "jwks_ref": [
16
+ "test-ed25519-webhook-2026"
17
+ ],
18
+ "expected_signature_base": "\"@method\": POST\n\"@target-uri\": https://buyer.example.com/adcp/webhook/create_media_buy/agent_123/op_abc\n\"@authority\": buyer.example.com\n\"content-type\": application/json\n\"content-digest\": sha-256=:dJ2koiIMZIhdGE7tidErCHV13FFvOIowCcXDiwyG54I=:\n\"@signature-params\": (\"@method\" \"@target-uri\" \"@authority\" \"content-type\" \"content-digest\");created=1776520800;expires=1776521100;nonce=\"KXYnfEfJ0PBRZXQyVXfVQA\";keyid=\"test-ed25519-webhook-2026\";alg=\"ed25519\";tag=\"adcp/webhook-signing/v1\"",
19
+ "expected_outcome": {
20
+ "success": false,
21
+ "error_code": "webhook_signature_header_malformed",
22
+ "failed_step": 1
23
+ },
24
+ "$comment": "Signature generated by .context/generate-webhook-vectors.mjs from expected_signature_base using the named private key in keys.json. Ed25519 is deterministic; ES256 uses IEEE P1363 (r||s) encoding per RFC 9421 §3.3.2."
25
+ }