@adcp/sdk 7.11.0 → 7.11.2

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 (1007) hide show
  1. package/ADCP_VERSION +1 -1
  2. package/compliance/cache/{3.0.12 → 3.0.18}/domains/creative/index.yaml +2 -1
  3. package/compliance/cache/{3.0.12/protocols → 3.0.18/domains}/media-buy/creative-reception.yaml +1 -0
  4. package/compliance/cache/{3.0.12/protocols → 3.0.18/domains}/media-buy/scenarios/measurement_terms_rejected.yaml +19 -11
  5. package/compliance/cache/{3.0.12.previous → 3.0.18}/domains/media-buy/scenarios/proposal_finalize.yaml +6 -0
  6. package/compliance/cache/{3.0.12.previous/protocols → 3.0.18/domains}/media-buy/state-machine.yaml +82 -13
  7. package/compliance/cache/{3.0.12 → 3.0.18}/index.json +3 -2
  8. package/compliance/cache/{3.0.12 → 3.0.18}/protocols/creative/index.yaml +2 -1
  9. package/compliance/cache/{3.0.12.previous/domains → 3.0.18/protocols}/media-buy/creative-reception.yaml +1 -0
  10. package/compliance/cache/{3.0.12.previous → 3.0.18}/protocols/media-buy/scenarios/measurement_terms_rejected.yaml +19 -11
  11. package/compliance/cache/{3.0.12 → 3.0.18}/protocols/media-buy/scenarios/proposal_finalize.yaml +6 -0
  12. package/compliance/cache/{3.0.12 → 3.0.18}/protocols/media-buy/state-machine.yaml +82 -13
  13. package/compliance/cache/{3.0.12.previous → 3.0.18}/specialisms/creative-template/index.yaml +1 -0
  14. package/compliance/cache/{3.0.12 → 3.0.18}/test-kits/webhook-receiver-runner.yaml +9 -9
  15. package/compliance/cache/{3.0.12.previous → 3.0.18}/universal/idempotency.yaml +327 -124
  16. package/compliance/cache/{3.0.12 → 3.0.18}/universal/schema-validation.yaml +52 -13
  17. package/compliance/cache/{3.0.12.previous → 3.0.18}/universal/security.yaml +170 -61
  18. package/compliance/cache/{3.0.12 → 3.0.18}/universal/storyboard-schema.yaml +43 -23
  19. package/compliance/cache/{3.0.12 → 3.0.18}/universal/v3-envelope-integrity.yaml +20 -1
  20. package/compliance/cache/3.0.18/universal/webhook-emission.yaml +751 -0
  21. package/compliance/cache/{3.0.12.previous/protocols → 3.0.18.previous/domains}/creative/index.yaml +2 -1
  22. package/compliance/cache/{3.0.12.previous/protocols → 3.0.18.previous/domains}/media-buy/creative-reception.yaml +1 -0
  23. package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/domains/media-buy/scenarios/measurement_terms_rejected.yaml +19 -11
  24. package/compliance/cache/{3.0.12.previous/protocols → 3.0.18.previous/domains}/media-buy/scenarios/proposal_finalize.yaml +6 -0
  25. package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/domains/media-buy/state-machine.yaml +82 -13
  26. package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/index.json +3 -2
  27. package/compliance/cache/{3.0.12.previous/domains → 3.0.18.previous/protocols}/creative/index.yaml +2 -1
  28. package/compliance/cache/{3.0.12/domains → 3.0.18.previous/protocols}/media-buy/creative-reception.yaml +1 -0
  29. package/compliance/cache/{3.0.12/domains → 3.0.18.previous/protocols}/media-buy/scenarios/measurement_terms_rejected.yaml +19 -11
  30. package/compliance/cache/{3.0.12/domains → 3.0.18.previous/protocols}/media-buy/scenarios/proposal_finalize.yaml +6 -0
  31. package/compliance/cache/{3.0.12/domains → 3.0.18.previous/protocols}/media-buy/state-machine.yaml +82 -13
  32. package/compliance/cache/{3.0.12 → 3.0.18.previous}/specialisms/creative-template/index.yaml +1 -0
  33. package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-kits/webhook-receiver-runner.yaml +9 -9
  34. package/compliance/cache/{3.0.12 → 3.0.18.previous}/universal/idempotency.yaml +327 -124
  35. package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/universal/schema-validation.yaml +52 -13
  36. package/compliance/cache/{3.0.12 → 3.0.18.previous}/universal/security.yaml +170 -61
  37. package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/universal/storyboard-schema.yaml +43 -23
  38. package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/universal/v3-envelope-integrity.yaml +20 -1
  39. package/compliance/cache/3.0.18.previous/universal/webhook-emission.yaml +751 -0
  40. package/dist/lib/core/AgentClient.d.ts +1 -1
  41. package/dist/lib/core/AgentClient.d.ts.map +1 -1
  42. package/dist/lib/core/AgentClient.js.map +1 -1
  43. package/dist/lib/core/ResponseValidator.d.ts +2 -0
  44. package/dist/lib/core/ResponseValidator.d.ts.map +1 -1
  45. package/dist/lib/core/ResponseValidator.js +3 -3
  46. package/dist/lib/core/ResponseValidator.js.map +1 -1
  47. package/dist/lib/core/SingleAgentClient.d.ts +6 -0
  48. package/dist/lib/core/SingleAgentClient.d.ts.map +1 -1
  49. package/dist/lib/core/SingleAgentClient.js +1 -0
  50. package/dist/lib/core/SingleAgentClient.js.map +1 -1
  51. package/dist/lib/core/TaskExecutor.d.ts +6 -0
  52. package/dist/lib/core/TaskExecutor.d.ts.map +1 -1
  53. package/dist/lib/core/TaskExecutor.js +15 -1
  54. package/dist/lib/core/TaskExecutor.js.map +1 -1
  55. package/dist/lib/protocols/index.d.ts +10 -2
  56. package/dist/lib/protocols/index.d.ts.map +1 -1
  57. package/dist/lib/protocols/index.js +14 -6
  58. package/dist/lib/protocols/index.js.map +1 -1
  59. package/dist/lib/schemas-data/3.0/a2ui/bound-value.json +1 -1
  60. package/dist/lib/schemas-data/3.0/a2ui/component.json +1 -1
  61. package/dist/lib/schemas-data/3.0/a2ui/si-catalog.json +25 -25
  62. package/dist/lib/schemas-data/3.0/a2ui/surface.json +2 -2
  63. package/dist/lib/schemas-data/3.0/a2ui/user-action.json +1 -1
  64. package/dist/lib/schemas-data/3.0/account/get-account-financials-request.json +5 -5
  65. package/dist/lib/schemas-data/3.0/account/get-account-financials-response.json +10 -10
  66. package/dist/lib/schemas-data/3.0/account/list-accounts-request.json +4 -4
  67. package/dist/lib/schemas-data/3.0/account/list-accounts-response.json +6 -6
  68. package/dist/lib/schemas-data/3.0/account/report-usage-request.json +5 -5
  69. package/dist/lib/schemas-data/3.0/account/report-usage-response.json +4 -4
  70. package/dist/lib/schemas-data/3.0/account/sync-accounts-request.json +9 -9
  71. package/dist/lib/schemas-data/3.0/account/sync-accounts-response.json +12 -12
  72. package/dist/lib/schemas-data/3.0/account/sync-governance-request.json +5 -5
  73. package/dist/lib/schemas-data/3.0/account/sync-governance-response.json +8 -8
  74. package/dist/lib/schemas-data/3.0/adagents.json +32 -32
  75. package/dist/lib/schemas-data/3.0/brand/acquire-rights-request.json +8 -8
  76. package/dist/lib/schemas-data/3.0/brand/acquire-rights-response.json +14 -14
  77. package/dist/lib/schemas-data/3.0/brand/creative-approval-request.json +4 -4
  78. package/dist/lib/schemas-data/3.0/brand/creative-approval-response.json +10 -10
  79. package/dist/lib/schemas-data/3.0/brand/get-brand-identity-request.json +3 -3
  80. package/dist/lib/schemas-data/3.0/brand/get-brand-identity-response.json +8 -8
  81. package/dist/lib/schemas-data/3.0/brand/get-rights-request.json +7 -7
  82. package/dist/lib/schemas-data/3.0/brand/get-rights-response.json +9 -9
  83. package/dist/lib/schemas-data/3.0/brand/revocation-notification.json +4 -4
  84. package/dist/lib/schemas-data/3.0/brand/rights-pricing-option.json +5 -5
  85. package/dist/lib/schemas-data/3.0/brand/rights-terms.json +3 -3
  86. package/dist/lib/schemas-data/3.0/brand/update-rights-request.json +4 -4
  87. package/dist/lib/schemas-data/3.0/brand/update-rights-response.json +9 -9
  88. package/dist/lib/schemas-data/3.0/brand.json +14 -14
  89. package/dist/lib/schemas-data/3.0/bundled/content-standards/calibrate-content-request.json +2 -2
  90. package/dist/lib/schemas-data/3.0/bundled/content-standards/calibrate-content-response.json +2 -2
  91. package/dist/lib/schemas-data/3.0/bundled/content-standards/create-content-standards-request.json +2 -2
  92. package/dist/lib/schemas-data/3.0/bundled/content-standards/create-content-standards-response.json +2 -2
  93. package/dist/lib/schemas-data/3.0/bundled/content-standards/get-content-standards-request.json +2 -2
  94. package/dist/lib/schemas-data/3.0/bundled/content-standards/get-content-standards-response.json +2 -2
  95. package/dist/lib/schemas-data/3.0/bundled/content-standards/get-media-buy-artifacts-request.json +2 -2
  96. package/dist/lib/schemas-data/3.0/bundled/content-standards/get-media-buy-artifacts-response.json +2 -2
  97. package/dist/lib/schemas-data/3.0/bundled/content-standards/list-content-standards-request.json +2 -2
  98. package/dist/lib/schemas-data/3.0/bundled/content-standards/list-content-standards-response.json +2 -2
  99. package/dist/lib/schemas-data/3.0/bundled/content-standards/update-content-standards-request.json +2 -2
  100. package/dist/lib/schemas-data/3.0/bundled/content-standards/update-content-standards-response.json +2 -2
  101. package/dist/lib/schemas-data/3.0/bundled/content-standards/validate-content-delivery-request.json +2 -2
  102. package/dist/lib/schemas-data/3.0/bundled/content-standards/validate-content-delivery-response.json +2 -2
  103. package/dist/lib/schemas-data/3.0/bundled/core/tasks-get-request.json +2 -2
  104. package/dist/lib/schemas-data/3.0/bundled/core/tasks-get-response.json +2 -2
  105. package/dist/lib/schemas-data/3.0/bundled/core/tasks-list-request.json +2 -2
  106. package/dist/lib/schemas-data/3.0/bundled/core/tasks-list-response.json +2 -2
  107. package/dist/lib/schemas-data/3.0/bundled/creative/get-creative-delivery-request.json +2 -2
  108. package/dist/lib/schemas-data/3.0/bundled/creative/get-creative-delivery-response.json +2 -2
  109. package/dist/lib/schemas-data/3.0/bundled/creative/get-creative-features-request.json +2 -2
  110. package/dist/lib/schemas-data/3.0/bundled/creative/get-creative-features-response.json +2 -2
  111. package/dist/lib/schemas-data/3.0/bundled/creative/list-creative-formats-request.json +2 -2
  112. package/dist/lib/schemas-data/3.0/bundled/creative/list-creative-formats-response.json +2 -2
  113. package/dist/lib/schemas-data/3.0/bundled/creative/list-creatives-request.json +2 -2
  114. package/dist/lib/schemas-data/3.0/bundled/creative/list-creatives-response.json +2 -2
  115. package/dist/lib/schemas-data/3.0/bundled/creative/preview-creative-request.json +2 -2
  116. package/dist/lib/schemas-data/3.0/bundled/creative/preview-creative-response.json +2 -2
  117. package/dist/lib/schemas-data/3.0/bundled/creative/sync-creatives-request.json +2 -2
  118. package/dist/lib/schemas-data/3.0/bundled/creative/sync-creatives-response.json +2 -2
  119. package/dist/lib/schemas-data/3.0/bundled/media-buy/build-creative-request.json +2 -2
  120. package/dist/lib/schemas-data/3.0/bundled/media-buy/build-creative-response.json +2 -2
  121. package/dist/lib/schemas-data/3.0/bundled/media-buy/create-media-buy-request.json +2 -2
  122. package/dist/lib/schemas-data/3.0/bundled/media-buy/create-media-buy-response.json +2 -2
  123. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-media-buy-delivery-request.json +2 -2
  124. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-media-buy-delivery-response.json +2 -2
  125. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-media-buys-request.json +2 -2
  126. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-media-buys-response.json +2 -2
  127. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-products-request.json +2 -2
  128. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-products-response.json +2 -2
  129. package/dist/lib/schemas-data/3.0/bundled/media-buy/list-creative-formats-request.json +2 -2
  130. package/dist/lib/schemas-data/3.0/bundled/media-buy/list-creative-formats-response.json +2 -2
  131. package/dist/lib/schemas-data/3.0/bundled/media-buy/log-event-request.json +2 -2
  132. package/dist/lib/schemas-data/3.0/bundled/media-buy/log-event-response.json +2 -2
  133. package/dist/lib/schemas-data/3.0/bundled/media-buy/package-request.json +2 -2
  134. package/dist/lib/schemas-data/3.0/bundled/media-buy/provide-performance-feedback-request.json +2 -2
  135. package/dist/lib/schemas-data/3.0/bundled/media-buy/provide-performance-feedback-response.json +2 -2
  136. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-audiences-request.json +2 -2
  137. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-audiences-response.json +2 -2
  138. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-catalogs-request.json +2 -2
  139. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-catalogs-response.json +2 -2
  140. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-event-sources-request.json +2 -2
  141. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-event-sources-response.json +2 -2
  142. package/dist/lib/schemas-data/3.0/bundled/media-buy/update-media-buy-request.json +2 -2
  143. package/dist/lib/schemas-data/3.0/bundled/media-buy/update-media-buy-response.json +2 -2
  144. package/dist/lib/schemas-data/3.0/bundled/property/create-property-list-request.json +2 -2
  145. package/dist/lib/schemas-data/3.0/bundled/property/create-property-list-response.json +2 -2
  146. package/dist/lib/schemas-data/3.0/bundled/property/delete-property-list-request.json +2 -2
  147. package/dist/lib/schemas-data/3.0/bundled/property/delete-property-list-response.json +2 -2
  148. package/dist/lib/schemas-data/3.0/bundled/property/get-property-list-request.json +2 -2
  149. package/dist/lib/schemas-data/3.0/bundled/property/get-property-list-response.json +2 -2
  150. package/dist/lib/schemas-data/3.0/bundled/property/list-property-lists-request.json +2 -2
  151. package/dist/lib/schemas-data/3.0/bundled/property/list-property-lists-response.json +2 -2
  152. package/dist/lib/schemas-data/3.0/bundled/property/update-property-list-request.json +2 -2
  153. package/dist/lib/schemas-data/3.0/bundled/property/update-property-list-response.json +2 -2
  154. package/dist/lib/schemas-data/3.0/bundled/property/validate-property-delivery-request.json +2 -2
  155. package/dist/lib/schemas-data/3.0/bundled/property/validate-property-delivery-response.json +2 -2
  156. package/dist/lib/schemas-data/3.0/bundled/protocol/get-adcp-capabilities-request.json +2 -2
  157. package/dist/lib/schemas-data/3.0/bundled/protocol/get-adcp-capabilities-response.json +2 -2
  158. package/dist/lib/schemas-data/3.0/bundled/signals/activate-signal-request.json +2 -2
  159. package/dist/lib/schemas-data/3.0/bundled/signals/activate-signal-response.json +2 -2
  160. package/dist/lib/schemas-data/3.0/bundled/signals/get-signals-request.json +2 -2
  161. package/dist/lib/schemas-data/3.0/bundled/signals/get-signals-response.json +2 -2
  162. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-get-offering-request.json +2 -2
  163. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-get-offering-response.json +2 -2
  164. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-initiate-session-request.json +2 -2
  165. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-initiate-session-response.json +2 -2
  166. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-send-message-request.json +2 -2
  167. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-send-message-response.json +2 -2
  168. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-terminate-session-request.json +2 -2
  169. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-terminate-session-response.json +2 -2
  170. package/dist/lib/schemas-data/3.0/collection/base-collection-source.json +3 -3
  171. package/dist/lib/schemas-data/3.0/collection/collection-list-changed-webhook.json +2 -2
  172. package/dist/lib/schemas-data/3.0/collection/collection-list-filters.json +7 -7
  173. package/dist/lib/schemas-data/3.0/collection/collection-list.json +5 -5
  174. package/dist/lib/schemas-data/3.0/collection/create-collection-list-request.json +7 -7
  175. package/dist/lib/schemas-data/3.0/collection/create-collection-list-response.json +4 -4
  176. package/dist/lib/schemas-data/3.0/collection/delete-collection-list-request.json +4 -4
  177. package/dist/lib/schemas-data/3.0/collection/delete-collection-list-response.json +3 -3
  178. package/dist/lib/schemas-data/3.0/collection/get-collection-list-request.json +4 -4
  179. package/dist/lib/schemas-data/3.0/collection/get-collection-list-response.json +10 -10
  180. package/dist/lib/schemas-data/3.0/collection/list-collection-lists-request.json +5 -5
  181. package/dist/lib/schemas-data/3.0/collection/list-collection-lists-response.json +5 -5
  182. package/dist/lib/schemas-data/3.0/collection/update-collection-list-request.json +7 -7
  183. package/dist/lib/schemas-data/3.0/collection/update-collection-list-response.json +4 -4
  184. package/dist/lib/schemas-data/3.0/content-standards/artifact-webhook-payload.json +3 -3
  185. package/dist/lib/schemas-data/3.0/content-standards/artifact.json +7 -7
  186. package/dist/lib/schemas-data/3.0/content-standards/calibrate-content-request.json +4 -4
  187. package/dist/lib/schemas-data/3.0/content-standards/calibrate-content-response.json +8 -8
  188. package/dist/lib/schemas-data/3.0/content-standards/content-standards.json +7 -7
  189. package/dist/lib/schemas-data/3.0/content-standards/create-content-standards-request.json +7 -7
  190. package/dist/lib/schemas-data/3.0/content-standards/create-content-standards-response.json +6 -6
  191. package/dist/lib/schemas-data/3.0/content-standards/get-content-standards-request.json +3 -3
  192. package/dist/lib/schemas-data/3.0/content-standards/get-content-standards-response.json +7 -7
  193. package/dist/lib/schemas-data/3.0/content-standards/get-media-buy-artifacts-request.json +4 -4
  194. package/dist/lib/schemas-data/3.0/content-standards/get-media-buy-artifacts-response.json +8 -8
  195. package/dist/lib/schemas-data/3.0/content-standards/list-content-standards-request.json +5 -5
  196. package/dist/lib/schemas-data/3.0/content-standards/list-content-standards-response.json +8 -8
  197. package/dist/lib/schemas-data/3.0/content-standards/update-content-standards-request.json +7 -7
  198. package/dist/lib/schemas-data/3.0/content-standards/update-content-standards-response.json +6 -6
  199. package/dist/lib/schemas-data/3.0/content-standards/validate-content-delivery-request.json +4 -4
  200. package/dist/lib/schemas-data/3.0/content-standards/validate-content-delivery-response.json +8 -8
  201. package/dist/lib/schemas-data/3.0/core/account-ref.json +2 -2
  202. package/dist/lib/schemas-data/3.0/core/account.json +9 -9
  203. package/dist/lib/schemas-data/3.0/core/activation-key.json +1 -1
  204. package/dist/lib/schemas-data/3.0/core/ad-inventory-config.json +1 -1
  205. package/dist/lib/schemas-data/3.0/core/agent-encryption-key.json +1 -1
  206. package/dist/lib/schemas-data/3.0/core/agent-signing-key.json +1 -1
  207. package/dist/lib/schemas-data/3.0/core/app-item.json +4 -4
  208. package/dist/lib/schemas-data/3.0/core/assets/asset-union.json +15 -15
  209. package/dist/lib/schemas-data/3.0/core/assets/audio-asset.json +3 -3
  210. package/dist/lib/schemas-data/3.0/core/assets/brief-asset.json +2 -2
  211. package/dist/lib/schemas-data/3.0/core/assets/catalog-asset.json +2 -2
  212. package/dist/lib/schemas-data/3.0/core/assets/css-asset.json +2 -2
  213. package/dist/lib/schemas-data/3.0/core/assets/daast-asset.json +4 -4
  214. package/dist/lib/schemas-data/3.0/core/assets/html-asset.json +2 -2
  215. package/dist/lib/schemas-data/3.0/core/assets/image-asset.json +2 -2
  216. package/dist/lib/schemas-data/3.0/core/assets/javascript-asset.json +3 -3
  217. package/dist/lib/schemas-data/3.0/core/assets/markdown-asset.json +2 -2
  218. package/dist/lib/schemas-data/3.0/core/assets/text-asset.json +2 -2
  219. package/dist/lib/schemas-data/3.0/core/assets/url-asset.json +3 -3
  220. package/dist/lib/schemas-data/3.0/core/assets/vast-asset.json +4 -4
  221. package/dist/lib/schemas-data/3.0/core/assets/video-asset.json +7 -7
  222. package/dist/lib/schemas-data/3.0/core/assets/webhook-asset.json +7 -7
  223. package/dist/lib/schemas-data/3.0/core/async-response-data.json +25 -25
  224. package/dist/lib/schemas-data/3.0/core/attribution-window.json +4 -4
  225. package/dist/lib/schemas-data/3.0/core/audience-member.json +3 -3
  226. package/dist/lib/schemas-data/3.0/core/audience-selector.json +4 -4
  227. package/dist/lib/schemas-data/3.0/core/brand-id.json +1 -1
  228. package/dist/lib/schemas-data/3.0/core/brand-ref.json +2 -2
  229. package/dist/lib/schemas-data/3.0/core/business-entity.json +2 -2
  230. package/dist/lib/schemas-data/3.0/core/cancellation-policy.json +2 -2
  231. package/dist/lib/schemas-data/3.0/core/catalog-field-mapping.json +2 -2
  232. package/dist/lib/schemas-data/3.0/core/catalog.json +7 -7
  233. package/dist/lib/schemas-data/3.0/core/catchment.json +5 -5
  234. package/dist/lib/schemas-data/3.0/core/collection-distribution.json +2 -2
  235. package/dist/lib/schemas-data/3.0/core/collection-list-ref.json +1 -1
  236. package/dist/lib/schemas-data/3.0/core/collection-selector.json +1 -1
  237. package/dist/lib/schemas-data/3.0/core/collection.json +13 -13
  238. package/dist/lib/schemas-data/3.0/core/content-rating.json +2 -2
  239. package/dist/lib/schemas-data/3.0/core/context.json +1 -1
  240. package/dist/lib/schemas-data/3.0/core/creative-asset.json +6 -6
  241. package/dist/lib/schemas-data/3.0/core/creative-assignment.json +1 -1
  242. package/dist/lib/schemas-data/3.0/core/creative-brief.json +4 -4
  243. package/dist/lib/schemas-data/3.0/core/creative-consumption.json +1 -1
  244. package/dist/lib/schemas-data/3.0/core/creative-filters.json +4 -4
  245. package/dist/lib/schemas-data/3.0/core/creative-item.json +1 -1
  246. package/dist/lib/schemas-data/3.0/core/creative-manifest.json +7 -7
  247. package/dist/lib/schemas-data/3.0/core/creative-policy.json +3 -3
  248. package/dist/lib/schemas-data/3.0/core/creative-variable.json +1 -1
  249. package/dist/lib/schemas-data/3.0/core/creative-variant.json +5 -5
  250. package/dist/lib/schemas-data/3.0/core/data-provider-signal-selector.json +1 -1
  251. package/dist/lib/schemas-data/3.0/core/date-range.json +1 -1
  252. package/dist/lib/schemas-data/3.0/core/datetime-range.json +1 -1
  253. package/dist/lib/schemas-data/3.0/core/daypart-target.json +2 -2
  254. package/dist/lib/schemas-data/3.0/core/deadline-policy.json +1 -1
  255. package/dist/lib/schemas-data/3.0/core/delivery-forecast.json +7 -7
  256. package/dist/lib/schemas-data/3.0/core/delivery-metrics.json +5 -5
  257. package/dist/lib/schemas-data/3.0/core/deployment.json +3 -3
  258. package/dist/lib/schemas-data/3.0/core/destination-item.json +4 -4
  259. package/dist/lib/schemas-data/3.0/core/destination.json +1 -1
  260. package/dist/lib/schemas-data/3.0/core/diagnostic-issue.json +1 -1
  261. package/dist/lib/schemas-data/3.0/core/duration.json +1 -1
  262. package/dist/lib/schemas-data/3.0/core/education-item.json +4 -4
  263. package/dist/lib/schemas-data/3.0/core/error.json +1 -1
  264. package/dist/lib/schemas-data/3.0/core/event-custom-data.json +2 -2
  265. package/dist/lib/schemas-data/3.0/core/event-source-health.json +3 -3
  266. package/dist/lib/schemas-data/3.0/core/event.json +6 -6
  267. package/dist/lib/schemas-data/3.0/core/ext.json +1 -1
  268. package/dist/lib/schemas-data/3.0/core/feature-requirement.json +1 -1
  269. package/dist/lib/schemas-data/3.0/core/flight-item.json +4 -4
  270. package/dist/lib/schemas-data/3.0/core/forecast-point.json +18 -18
  271. package/dist/lib/schemas-data/3.0/core/forecast-range.json +1 -1
  272. package/dist/lib/schemas-data/3.0/core/format-id.json +1 -1
  273. package/dist/lib/schemas-data/3.0/core/format.json +42 -42
  274. package/dist/lib/schemas-data/3.0/core/frequency-cap.json +4 -4
  275. package/dist/lib/schemas-data/3.0/core/generation-credential.json +3 -3
  276. package/dist/lib/schemas-data/3.0/core/geo-breakdown-support.json +3 -3
  277. package/dist/lib/schemas-data/3.0/core/hotel-item.json +4 -4
  278. package/dist/lib/schemas-data/3.0/core/identifier.json +2 -2
  279. package/dist/lib/schemas-data/3.0/core/industry-identifier.json +2 -2
  280. package/dist/lib/schemas-data/3.0/core/insertion-order.json +1 -1
  281. package/dist/lib/schemas-data/3.0/core/installment-deadlines.json +2 -2
  282. package/dist/lib/schemas-data/3.0/core/installment.json +9 -9
  283. package/dist/lib/schemas-data/3.0/core/job-item.json +3 -3
  284. package/dist/lib/schemas-data/3.0/core/limited-series.json +1 -1
  285. package/dist/lib/schemas-data/3.0/core/material-deadline.json +1 -1
  286. package/dist/lib/schemas-data/3.0/core/mcp-webhook-payload.json +5 -5
  287. package/dist/lib/schemas-data/3.0/core/measurement-readiness.json +5 -5
  288. package/dist/lib/schemas-data/3.0/core/measurement-terms.json +3 -3
  289. package/dist/lib/schemas-data/3.0/core/measurement-window.json +1 -1
  290. package/dist/lib/schemas-data/3.0/core/media-buy-features.json +1 -1
  291. package/dist/lib/schemas-data/3.0/core/media-buy.json +7 -7
  292. package/dist/lib/schemas-data/3.0/core/offering-asset-group.json +15 -15
  293. package/dist/lib/schemas-data/3.0/core/offering.json +5 -5
  294. package/dist/lib/schemas-data/3.0/core/optimization-goal.json +6 -6
  295. package/dist/lib/schemas-data/3.0/core/outcome-measurement.json +2 -2
  296. package/dist/lib/schemas-data/3.0/core/overlay.json +1 -1
  297. package/dist/lib/schemas-data/3.0/core/package.json +14 -14
  298. package/dist/lib/schemas-data/3.0/core/pagination-request.json +1 -1
  299. package/dist/lib/schemas-data/3.0/core/pagination-response.json +1 -1
  300. package/dist/lib/schemas-data/3.0/core/performance-feedback.json +3 -3
  301. package/dist/lib/schemas-data/3.0/core/performance-standard.json +4 -4
  302. package/dist/lib/schemas-data/3.0/core/placement-definition.json +5 -5
  303. package/dist/lib/schemas-data/3.0/core/placement.json +2 -2
  304. package/dist/lib/schemas-data/3.0/core/planned-delivery.json +5 -5
  305. package/dist/lib/schemas-data/3.0/core/price.json +1 -1
  306. package/dist/lib/schemas-data/3.0/core/pricing-option.json +10 -10
  307. package/dist/lib/schemas-data/3.0/core/product-allocation.json +4 -4
  308. package/dist/lib/schemas-data/3.0/core/product-filters.json +16 -16
  309. package/dist/lib/schemas-data/3.0/core/product.json +28 -28
  310. package/dist/lib/schemas-data/3.0/core/property-id.json +1 -1
  311. package/dist/lib/schemas-data/3.0/core/property-list-ref.json +1 -1
  312. package/dist/lib/schemas-data/3.0/core/property-tag.json +1 -1
  313. package/dist/lib/schemas-data/3.0/core/property.json +6 -6
  314. package/dist/lib/schemas-data/3.0/core/proposal.json +6 -6
  315. package/dist/lib/schemas-data/3.0/core/protocol-envelope.json +3 -3
  316. package/dist/lib/schemas-data/3.0/core/provenance.json +6 -6
  317. package/dist/lib/schemas-data/3.0/core/publisher-property-selector.json +3 -3
  318. package/dist/lib/schemas-data/3.0/core/push-notification-config.json +2 -2
  319. package/dist/lib/schemas-data/3.0/core/real-estate-item.json +4 -4
  320. package/dist/lib/schemas-data/3.0/core/reference-asset.json +1 -1
  321. package/dist/lib/schemas-data/3.0/core/reporting-capabilities.json +5 -5
  322. package/dist/lib/schemas-data/3.0/core/reporting-webhook.json +3 -3
  323. package/dist/lib/schemas-data/3.0/core/requirements/asset-requirements.json +13 -13
  324. package/dist/lib/schemas-data/3.0/core/requirements/audio-asset-requirements.json +1 -1
  325. package/dist/lib/schemas-data/3.0/core/requirements/catalog-field-binding.json +4 -4
  326. package/dist/lib/schemas-data/3.0/core/requirements/catalog-requirements.json +5 -5
  327. package/dist/lib/schemas-data/3.0/core/requirements/css-asset-requirements.json +1 -1
  328. package/dist/lib/schemas-data/3.0/core/requirements/daast-asset-requirements.json +1 -1
  329. package/dist/lib/schemas-data/3.0/core/requirements/html-asset-requirements.json +1 -1
  330. package/dist/lib/schemas-data/3.0/core/requirements/image-asset-requirements.json +2 -2
  331. package/dist/lib/schemas-data/3.0/core/requirements/javascript-asset-requirements.json +1 -1
  332. package/dist/lib/schemas-data/3.0/core/requirements/markdown-asset-requirements.json +1 -1
  333. package/dist/lib/schemas-data/3.0/core/requirements/offering-asset-constraint.json +4 -4
  334. package/dist/lib/schemas-data/3.0/core/requirements/text-asset-requirements.json +1 -1
  335. package/dist/lib/schemas-data/3.0/core/requirements/url-asset-requirements.json +1 -1
  336. package/dist/lib/schemas-data/3.0/core/requirements/vast-asset-requirements.json +1 -1
  337. package/dist/lib/schemas-data/3.0/core/requirements/video-asset-requirements.json +6 -6
  338. package/dist/lib/schemas-data/3.0/core/requirements/webhook-asset-requirements.json +1 -1
  339. package/dist/lib/schemas-data/3.0/core/response.json +1 -1
  340. package/dist/lib/schemas-data/3.0/core/rights-constraint.json +4 -4
  341. package/dist/lib/schemas-data/3.0/core/seller-agent-ref.json +1 -1
  342. package/dist/lib/schemas-data/3.0/core/signal-definition.json +3 -3
  343. package/dist/lib/schemas-data/3.0/core/signal-filters.json +2 -2
  344. package/dist/lib/schemas-data/3.0/core/signal-id.json +1 -1
  345. package/dist/lib/schemas-data/3.0/core/signal-pricing-option.json +2 -2
  346. package/dist/lib/schemas-data/3.0/core/signal-pricing.json +6 -6
  347. package/dist/lib/schemas-data/3.0/core/signal-targeting.json +4 -4
  348. package/dist/lib/schemas-data/3.0/core/special.json +2 -2
  349. package/dist/lib/schemas-data/3.0/core/start-timing.json +1 -1
  350. package/dist/lib/schemas-data/3.0/core/store-item.json +3 -3
  351. package/dist/lib/schemas-data/3.0/core/talent.json +2 -2
  352. package/dist/lib/schemas-data/3.0/core/targeting.json +20 -20
  353. package/dist/lib/schemas-data/3.0/core/tasks-get-request.json +3 -3
  354. package/dist/lib/schemas-data/3.0/core/tasks-get-response.json +7 -7
  355. package/dist/lib/schemas-data/3.0/core/tasks-list-request.json +11 -11
  356. package/dist/lib/schemas-data/3.0/core/tasks-list-response.json +6 -6
  357. package/dist/lib/schemas-data/3.0/core/user-match.json +3 -3
  358. package/dist/lib/schemas-data/3.0/core/vehicle-item.json +4 -4
  359. package/dist/lib/schemas-data/3.0/core/vendor-pricing-option.json +2 -2
  360. package/dist/lib/schemas-data/3.0/core/x-entity-types.json +1 -1
  361. package/dist/lib/schemas-data/3.0/creative/asset-types/index.json +5 -5
  362. package/dist/lib/schemas-data/3.0/creative/creative-feature-result.json +2 -2
  363. package/dist/lib/schemas-data/3.0/creative/get-creative-delivery-request.json +5 -5
  364. package/dist/lib/schemas-data/3.0/creative/get-creative-delivery-response.json +7 -7
  365. package/dist/lib/schemas-data/3.0/creative/get-creative-features-request.json +5 -5
  366. package/dist/lib/schemas-data/3.0/creative/get-creative-features-response.json +8 -8
  367. package/dist/lib/schemas-data/3.0/creative/list-creative-formats-request.json +11 -11
  368. package/dist/lib/schemas-data/3.0/creative/list-creative-formats-response.json +7 -7
  369. package/dist/lib/schemas-data/3.0/creative/list-creatives-request.json +8 -8
  370. package/dist/lib/schemas-data/3.0/creative/list-creatives-response.json +14 -14
  371. package/dist/lib/schemas-data/3.0/creative/preview-creative-request.json +11 -11
  372. package/dist/lib/schemas-data/3.0/creative/preview-creative-response.json +12 -12
  373. package/dist/lib/schemas-data/3.0/creative/preview-render.json +1 -1
  374. package/dist/lib/schemas-data/3.0/creative/sync-creatives-async-response-input-required.json +3 -3
  375. package/dist/lib/schemas-data/3.0/creative/sync-creatives-async-response-submitted.json +3 -3
  376. package/dist/lib/schemas-data/3.0/creative/sync-creatives-async-response-working.json +3 -3
  377. package/dist/lib/schemas-data/3.0/creative/sync-creatives-request.json +7 -7
  378. package/dist/lib/schemas-data/3.0/creative/sync-creatives-response.json +13 -13
  379. package/dist/lib/schemas-data/3.0/enums/account-scope.json +1 -1
  380. package/dist/lib/schemas-data/3.0/enums/account-status.json +1 -1
  381. package/dist/lib/schemas-data/3.0/enums/action-source.json +1 -1
  382. package/dist/lib/schemas-data/3.0/enums/adcp-protocol.json +1 -1
  383. package/dist/lib/schemas-data/3.0/enums/adjustment-kind.json +1 -1
  384. package/dist/lib/schemas-data/3.0/enums/advertiser-industry.json +1 -1
  385. package/dist/lib/schemas-data/3.0/enums/age-verification-method.json +1 -1
  386. package/dist/lib/schemas-data/3.0/enums/assessment-status.json +1 -1
  387. package/dist/lib/schemas-data/3.0/enums/asset-content-type.json +1 -1
  388. package/dist/lib/schemas-data/3.0/enums/attribution-model.json +1 -1
  389. package/dist/lib/schemas-data/3.0/enums/audience-source.json +1 -1
  390. package/dist/lib/schemas-data/3.0/enums/audience-status.json +1 -1
  391. package/dist/lib/schemas-data/3.0/enums/audio-channel-layout.json +1 -1
  392. package/dist/lib/schemas-data/3.0/enums/auth-scheme.json +1 -1
  393. package/dist/lib/schemas-data/3.0/enums/available-metric.json +1 -1
  394. package/dist/lib/schemas-data/3.0/enums/billing-party.json +1 -1
  395. package/dist/lib/schemas-data/3.0/enums/binary-verdict.json +1 -1
  396. package/dist/lib/schemas-data/3.0/enums/brand-agent-type.json +1 -1
  397. package/dist/lib/schemas-data/3.0/enums/canceled-by.json +1 -1
  398. package/dist/lib/schemas-data/3.0/enums/catalog-action.json +1 -1
  399. package/dist/lib/schemas-data/3.0/enums/catalog-item-status.json +1 -1
  400. package/dist/lib/schemas-data/3.0/enums/catalog-type.json +1 -1
  401. package/dist/lib/schemas-data/3.0/enums/channels.json +1 -1
  402. package/dist/lib/schemas-data/3.0/enums/cloud-storage-protocol.json +1 -1
  403. package/dist/lib/schemas-data/3.0/enums/co-branding-requirement.json +1 -1
  404. package/dist/lib/schemas-data/3.0/enums/collection-cadence.json +1 -1
  405. package/dist/lib/schemas-data/3.0/enums/collection-kind.json +1 -1
  406. package/dist/lib/schemas-data/3.0/enums/collection-relationship.json +1 -1
  407. package/dist/lib/schemas-data/3.0/enums/collection-status.json +1 -1
  408. package/dist/lib/schemas-data/3.0/enums/consent-basis.json +1 -1
  409. package/dist/lib/schemas-data/3.0/enums/content-id-type.json +1 -1
  410. package/dist/lib/schemas-data/3.0/enums/content-rating-system.json +1 -1
  411. package/dist/lib/schemas-data/3.0/enums/creative-action.json +1 -1
  412. package/dist/lib/schemas-data/3.0/enums/creative-agent-capability.json +1 -1
  413. package/dist/lib/schemas-data/3.0/enums/creative-approval-status.json +1 -1
  414. package/dist/lib/schemas-data/3.0/enums/creative-identifier-type.json +1 -1
  415. package/dist/lib/schemas-data/3.0/enums/creative-quality.json +1 -1
  416. package/dist/lib/schemas-data/3.0/enums/creative-sort-field.json +1 -1
  417. package/dist/lib/schemas-data/3.0/enums/creative-status.json +1 -1
  418. package/dist/lib/schemas-data/3.0/enums/daast-tracking-event.json +1 -1
  419. package/dist/lib/schemas-data/3.0/enums/daast-version.json +1 -1
  420. package/dist/lib/schemas-data/3.0/enums/day-of-week.json +1 -1
  421. package/dist/lib/schemas-data/3.0/enums/delegation-authority.json +1 -1
  422. package/dist/lib/schemas-data/3.0/enums/delivery-type.json +1 -1
  423. package/dist/lib/schemas-data/3.0/enums/demographic-system.json +1 -1
  424. package/dist/lib/schemas-data/3.0/enums/derivative-type.json +1 -1
  425. package/dist/lib/schemas-data/3.0/enums/device-platform.json +1 -1
  426. package/dist/lib/schemas-data/3.0/enums/device-type.json +1 -1
  427. package/dist/lib/schemas-data/3.0/enums/digital-source-type.json +1 -1
  428. package/dist/lib/schemas-data/3.0/enums/dimension-unit.json +1 -1
  429. package/dist/lib/schemas-data/3.0/enums/disclosure-persistence.json +1 -1
  430. package/dist/lib/schemas-data/3.0/enums/disclosure-position.json +1 -1
  431. package/dist/lib/schemas-data/3.0/enums/distance-unit.json +1 -1
  432. package/dist/lib/schemas-data/3.0/enums/distribution-identifier-type.json +1 -1
  433. package/dist/lib/schemas-data/3.0/enums/error-code.json +1 -1
  434. package/dist/lib/schemas-data/3.0/enums/escalation-severity.json +1 -1
  435. package/dist/lib/schemas-data/3.0/enums/event-type.json +1 -1
  436. package/dist/lib/schemas-data/3.0/enums/exclusivity.json +1 -1
  437. package/dist/lib/schemas-data/3.0/enums/feature-check-status.json +1 -1
  438. package/dist/lib/schemas-data/3.0/enums/feed-format.json +1 -1
  439. package/dist/lib/schemas-data/3.0/enums/feedback-source.json +1 -1
  440. package/dist/lib/schemas-data/3.0/enums/forecast-method.json +1 -1
  441. package/dist/lib/schemas-data/3.0/enums/forecast-range-unit.json +1 -1
  442. package/dist/lib/schemas-data/3.0/enums/forecastable-metric.json +1 -1
  443. package/dist/lib/schemas-data/3.0/enums/format-id-parameter.json +1 -1
  444. package/dist/lib/schemas-data/3.0/enums/frame-rate-type.json +1 -1
  445. package/dist/lib/schemas-data/3.0/enums/frequency-cap-scope.json +1 -1
  446. package/dist/lib/schemas-data/3.0/enums/genre-taxonomy.json +1 -1
  447. package/dist/lib/schemas-data/3.0/enums/geo-level.json +1 -1
  448. package/dist/lib/schemas-data/3.0/enums/gop-type.json +1 -1
  449. package/dist/lib/schemas-data/3.0/enums/governance-decision.json +1 -1
  450. package/dist/lib/schemas-data/3.0/enums/governance-domain.json +1 -1
  451. package/dist/lib/schemas-data/3.0/enums/governance-mode.json +1 -1
  452. package/dist/lib/schemas-data/3.0/enums/governance-phase.json +1 -1
  453. package/dist/lib/schemas-data/3.0/enums/history-entry-type.json +1 -1
  454. package/dist/lib/schemas-data/3.0/enums/http-method.json +1 -1
  455. package/dist/lib/schemas-data/3.0/enums/identifier-types.json +1 -1
  456. package/dist/lib/schemas-data/3.0/enums/installment-status.json +1 -1
  457. package/dist/lib/schemas-data/3.0/enums/javascript-module-type.json +1 -1
  458. package/dist/lib/schemas-data/3.0/enums/landing-page-requirement.json +1 -1
  459. package/dist/lib/schemas-data/3.0/enums/makegood-remedy.json +1 -1
  460. package/dist/lib/schemas-data/3.0/enums/markdown-flavor.json +1 -1
  461. package/dist/lib/schemas-data/3.0/enums/match-id-type.json +1 -1
  462. package/dist/lib/schemas-data/3.0/enums/match-type.json +1 -1
  463. package/dist/lib/schemas-data/3.0/enums/media-buy-status.json +1 -1
  464. package/dist/lib/schemas-data/3.0/enums/media-buy-valid-action.json +1 -1
  465. package/dist/lib/schemas-data/3.0/enums/metric-type.json +1 -1
  466. package/dist/lib/schemas-data/3.0/enums/metro-system.json +1 -1
  467. package/dist/lib/schemas-data/3.0/enums/moov-atom-position.json +1 -1
  468. package/dist/lib/schemas-data/3.0/enums/notification-type.json +1 -1
  469. package/dist/lib/schemas-data/3.0/enums/outcome-type.json +1 -1
  470. package/dist/lib/schemas-data/3.0/enums/pacing.json +1 -1
  471. package/dist/lib/schemas-data/3.0/enums/payment-terms.json +1 -1
  472. package/dist/lib/schemas-data/3.0/enums/performance-standard-metric.json +1 -1
  473. package/dist/lib/schemas-data/3.0/enums/policy-category.json +1 -1
  474. package/dist/lib/schemas-data/3.0/enums/policy-enforcement.json +1 -1
  475. package/dist/lib/schemas-data/3.0/enums/postal-system.json +1 -1
  476. package/dist/lib/schemas-data/3.0/enums/preview-output-format.json +1 -1
  477. package/dist/lib/schemas-data/3.0/enums/pricing-model.json +1 -1
  478. package/dist/lib/schemas-data/3.0/enums/production-quality.json +1 -1
  479. package/dist/lib/schemas-data/3.0/enums/property-type.json +1 -1
  480. package/dist/lib/schemas-data/3.0/enums/proposal-status.json +1 -1
  481. package/dist/lib/schemas-data/3.0/enums/publisher-identifier-types.json +1 -1
  482. package/dist/lib/schemas-data/3.0/enums/purchase-type.json +1 -1
  483. package/dist/lib/schemas-data/3.0/enums/reach-unit.json +1 -1
  484. package/dist/lib/schemas-data/3.0/enums/reporting-frequency.json +1 -1
  485. package/dist/lib/schemas-data/3.0/enums/response-type.json +1 -1
  486. package/dist/lib/schemas-data/3.0/enums/restricted-attribute.json +1 -1
  487. package/dist/lib/schemas-data/3.0/enums/right-type.json +1 -1
  488. package/dist/lib/schemas-data/3.0/enums/right-use.json +1 -1
  489. package/dist/lib/schemas-data/3.0/enums/rights-billing-period.json +1 -1
  490. package/dist/lib/schemas-data/3.0/enums/scan-type.json +1 -1
  491. package/dist/lib/schemas-data/3.0/enums/si-session-status.json +1 -1
  492. package/dist/lib/schemas-data/3.0/enums/signal-catalog-type.json +1 -1
  493. package/dist/lib/schemas-data/3.0/enums/signal-source.json +1 -1
  494. package/dist/lib/schemas-data/3.0/enums/signal-value-type.json +1 -1
  495. package/dist/lib/schemas-data/3.0/enums/snapshot-unavailable-reason.json +1 -1
  496. package/dist/lib/schemas-data/3.0/enums/sort-direction.json +1 -1
  497. package/dist/lib/schemas-data/3.0/enums/sort-metric.json +1 -1
  498. package/dist/lib/schemas-data/3.0/enums/special-category.json +1 -1
  499. package/dist/lib/schemas-data/3.0/enums/specialism.json +1 -1
  500. package/dist/lib/schemas-data/3.0/enums/talent-role.json +1 -1
  501. package/dist/lib/schemas-data/3.0/enums/task-status.json +1 -1
  502. package/dist/lib/schemas-data/3.0/enums/task-type.json +1 -1
  503. package/dist/lib/schemas-data/3.0/enums/transport-mode.json +1 -1
  504. package/dist/lib/schemas-data/3.0/enums/travel-time-unit.json +1 -1
  505. package/dist/lib/schemas-data/3.0/enums/uid-type.json +1 -1
  506. package/dist/lib/schemas-data/3.0/enums/universal-macro.json +1 -1
  507. package/dist/lib/schemas-data/3.0/enums/update-frequency.json +1 -1
  508. package/dist/lib/schemas-data/3.0/enums/url-asset-type.json +1 -1
  509. package/dist/lib/schemas-data/3.0/enums/validation-mode.json +1 -1
  510. package/dist/lib/schemas-data/3.0/enums/vast-tracking-event.json +1 -1
  511. package/dist/lib/schemas-data/3.0/enums/vast-version.json +1 -1
  512. package/dist/lib/schemas-data/3.0/enums/viewability-standard.json +1 -1
  513. package/dist/lib/schemas-data/3.0/enums/wcag-level.json +1 -1
  514. package/dist/lib/schemas-data/3.0/enums/webhook-response-type.json +1 -1
  515. package/dist/lib/schemas-data/3.0/enums/webhook-security-method.json +1 -1
  516. package/dist/lib/schemas-data/3.0/error-details/account-setup-required.json +1 -1
  517. package/dist/lib/schemas-data/3.0/error-details/audience-too-small.json +1 -1
  518. package/dist/lib/schemas-data/3.0/error-details/budget-too-low.json +1 -1
  519. package/dist/lib/schemas-data/3.0/error-details/conflict.json +1 -1
  520. package/dist/lib/schemas-data/3.0/error-details/creative-rejected.json +1 -1
  521. package/dist/lib/schemas-data/3.0/error-details/policy-violation.json +1 -1
  522. package/dist/lib/schemas-data/3.0/error-details/rate-limited.json +1 -1
  523. package/dist/lib/schemas-data/3.0/error-details/vendor-error-codes.json +1 -1
  524. package/dist/lib/schemas-data/3.0/extensions/extension-meta.json +1 -1
  525. package/dist/lib/schemas-data/3.0/extensions/index.json +2 -2
  526. package/dist/lib/schemas-data/3.0/governance/attribute-definition.json +1 -1
  527. package/dist/lib/schemas-data/3.0/governance/audience-constraints.json +3 -3
  528. package/dist/lib/schemas-data/3.0/governance/check-governance-request.json +7 -7
  529. package/dist/lib/schemas-data/3.0/governance/check-governance-response.json +6 -6
  530. package/dist/lib/schemas-data/3.0/governance/get-plan-audit-logs-request.json +4 -4
  531. package/dist/lib/schemas-data/3.0/governance/get-plan-audit-logs-response.json +9 -9
  532. package/dist/lib/schemas-data/3.0/governance/policy-category-definition.json +2 -2
  533. package/dist/lib/schemas-data/3.0/governance/policy-entry.json +6 -6
  534. package/dist/lib/schemas-data/3.0/governance/policy-ref.json +1 -1
  535. package/dist/lib/schemas-data/3.0/governance/report-plan-outcome-request.json +6 -6
  536. package/dist/lib/schemas-data/3.0/governance/report-plan-outcome-response.json +4 -4
  537. package/dist/lib/schemas-data/3.0/governance/sync-plans-request.json +13 -13
  538. package/dist/lib/schemas-data/3.0/governance/sync-plans-response.json +4 -4
  539. package/dist/lib/schemas-data/3.0/index.json +366 -365
  540. package/dist/lib/schemas-data/3.0/manifest.json +5 -9
  541. package/dist/lib/schemas-data/3.0/manifest.schema.json +1 -1
  542. package/dist/lib/schemas-data/3.0/media-buy/build-creative-async-response-input-required.json +4 -4
  543. package/dist/lib/schemas-data/3.0/media-buy/build-creative-async-response-submitted.json +3 -3
  544. package/dist/lib/schemas-data/3.0/media-buy/build-creative-async-response-working.json +3 -3
  545. package/dist/lib/schemas-data/3.0/media-buy/build-creative-request.json +11 -11
  546. package/dist/lib/schemas-data/3.0/media-buy/build-creative-response.json +17 -17
  547. package/dist/lib/schemas-data/3.0/media-buy/create-media-buy-async-response-input-required.json +4 -4
  548. package/dist/lib/schemas-data/3.0/media-buy/create-media-buy-async-response-submitted.json +3 -3
  549. package/dist/lib/schemas-data/3.0/media-buy/create-media-buy-async-response-working.json +3 -3
  550. package/dist/lib/schemas-data/3.0/media-buy/create-media-buy-request.json +12 -12
  551. package/dist/lib/schemas-data/3.0/media-buy/create-media-buy-response.json +15 -15
  552. package/dist/lib/schemas-data/3.0/media-buy/get-media-buy-delivery-request.json +17 -17
  553. package/dist/lib/schemas-data/3.0/media-buy/get-media-buy-delivery-response.json +24 -24
  554. package/dist/lib/schemas-data/3.0/media-buy/get-media-buys-request.json +7 -7
  555. package/dist/lib/schemas-data/3.0/media-buy/get-media-buys-response.json +19 -19
  556. package/dist/lib/schemas-data/3.0/media-buy/get-products-async-response-input-required.json +4 -4
  557. package/dist/lib/schemas-data/3.0/media-buy/get-products-async-response-submitted.json +3 -3
  558. package/dist/lib/schemas-data/3.0/media-buy/get-products-async-response-working.json +3 -3
  559. package/dist/lib/schemas-data/3.0/media-buy/get-products-request.json +11 -11
  560. package/dist/lib/schemas-data/3.0/media-buy/get-products-response.json +8 -8
  561. package/dist/lib/schemas-data/3.0/media-buy/list-creative-formats-request.json +11 -11
  562. package/dist/lib/schemas-data/3.0/media-buy/list-creative-formats-response.json +7 -7
  563. package/dist/lib/schemas-data/3.0/media-buy/log-event-request.json +4 -4
  564. package/dist/lib/schemas-data/3.0/media-buy/log-event-response.json +6 -6
  565. package/dist/lib/schemas-data/3.0/media-buy/package-request.json +12 -12
  566. package/dist/lib/schemas-data/3.0/media-buy/package-update.json +13 -13
  567. package/dist/lib/schemas-data/3.0/media-buy/provide-performance-feedback-request.json +6 -6
  568. package/dist/lib/schemas-data/3.0/media-buy/provide-performance-feedback-response.json +6 -6
  569. package/dist/lib/schemas-data/3.0/media-buy/sync-audiences-request.json +7 -7
  570. package/dist/lib/schemas-data/3.0/media-buy/sync-audiences-response.json +9 -9
  571. package/dist/lib/schemas-data/3.0/media-buy/sync-catalogs-async-response-input-required.json +3 -3
  572. package/dist/lib/schemas-data/3.0/media-buy/sync-catalogs-async-response-submitted.json +3 -3
  573. package/dist/lib/schemas-data/3.0/media-buy/sync-catalogs-async-response-working.json +3 -3
  574. package/dist/lib/schemas-data/3.0/media-buy/sync-catalogs-request.json +7 -7
  575. package/dist/lib/schemas-data/3.0/media-buy/sync-catalogs-response.json +9 -9
  576. package/dist/lib/schemas-data/3.0/media-buy/sync-event-sources-request.json +5 -5
  577. package/dist/lib/schemas-data/3.0/media-buy/sync-event-sources-response.json +10 -10
  578. package/dist/lib/schemas-data/3.0/media-buy/update-media-buy-async-response-input-required.json +3 -3
  579. package/dist/lib/schemas-data/3.0/media-buy/update-media-buy-async-response-submitted.json +3 -3
  580. package/dist/lib/schemas-data/3.0/media-buy/update-media-buy-async-response-working.json +3 -3
  581. package/dist/lib/schemas-data/3.0/media-buy/update-media-buy-request.json +10 -10
  582. package/dist/lib/schemas-data/3.0/media-buy/update-media-buy-response.json +10 -10
  583. package/dist/lib/schemas-data/3.0/pricing-options/cpa-option.json +4 -4
  584. package/dist/lib/schemas-data/3.0/pricing-options/cpc-option.json +4 -4
  585. package/dist/lib/schemas-data/3.0/pricing-options/cpcv-option.json +4 -4
  586. package/dist/lib/schemas-data/3.0/pricing-options/cpm-option.json +4 -4
  587. package/dist/lib/schemas-data/3.0/pricing-options/cpp-option.json +5 -5
  588. package/dist/lib/schemas-data/3.0/pricing-options/cpv-option.json +4 -4
  589. package/dist/lib/schemas-data/3.0/pricing-options/flat-rate-option.json +4 -4
  590. package/dist/lib/schemas-data/3.0/pricing-options/price-breakdown.json +2 -2
  591. package/dist/lib/schemas-data/3.0/pricing-options/price-guidance.json +1 -1
  592. package/dist/lib/schemas-data/3.0/pricing-options/time-option.json +4 -4
  593. package/dist/lib/schemas-data/3.0/pricing-options/vcpm-option.json +4 -4
  594. package/dist/lib/schemas-data/3.0/property/authorization-result.json +1 -1
  595. package/dist/lib/schemas-data/3.0/property/base-property-source.json +4 -4
  596. package/dist/lib/schemas-data/3.0/property/create-property-list-request.json +7 -7
  597. package/dist/lib/schemas-data/3.0/property/create-property-list-response.json +4 -4
  598. package/dist/lib/schemas-data/3.0/property/delete-property-list-request.json +4 -4
  599. package/dist/lib/schemas-data/3.0/property/delete-property-list-response.json +3 -3
  600. package/dist/lib/schemas-data/3.0/property/delivery-record.json +3 -3
  601. package/dist/lib/schemas-data/3.0/property/get-property-list-request.json +4 -4
  602. package/dist/lib/schemas-data/3.0/property/get-property-list-response.json +7 -7
  603. package/dist/lib/schemas-data/3.0/property/list-property-lists-request.json +5 -5
  604. package/dist/lib/schemas-data/3.0/property/list-property-lists-response.json +5 -5
  605. package/dist/lib/schemas-data/3.0/property/property-error.json +2 -2
  606. package/dist/lib/schemas-data/3.0/property/property-feature-definition.json +2 -2
  607. package/dist/lib/schemas-data/3.0/property/property-feature-result.json +4 -4
  608. package/dist/lib/schemas-data/3.0/property/property-feature-value.json +2 -2
  609. package/dist/lib/schemas-data/3.0/property/property-feature.json +1 -1
  610. package/dist/lib/schemas-data/3.0/property/property-list-changed-webhook.json +2 -2
  611. package/dist/lib/schemas-data/3.0/property/property-list-filters.json +5 -5
  612. package/dist/lib/schemas-data/3.0/property/property-list.json +6 -6
  613. package/dist/lib/schemas-data/3.0/property/update-property-list-request.json +7 -7
  614. package/dist/lib/schemas-data/3.0/property/update-property-list-response.json +4 -4
  615. package/dist/lib/schemas-data/3.0/property/validate-property-delivery-request.json +5 -5
  616. package/dist/lib/schemas-data/3.0/property/validate-property-delivery-response.json +4 -4
  617. package/dist/lib/schemas-data/3.0/property/validation-result.json +5 -5
  618. package/dist/lib/schemas-data/3.0/protocol/get-adcp-capabilities-request.json +3 -3
  619. package/dist/lib/schemas-data/3.0/protocol/get-adcp-capabilities-response.json +25 -25
  620. package/dist/lib/schemas-data/3.0/signals/activate-signal-request.json +5 -5
  621. package/dist/lib/schemas-data/3.0/signals/activate-signal-response.json +7 -7
  622. package/dist/lib/schemas-data/3.0/signals/get-signals-request.json +8 -8
  623. package/dist/lib/schemas-data/3.0/signals/get-signals-response.json +10 -10
  624. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-capabilities.json +1 -1
  625. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-get-offering-request.json +3 -3
  626. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-get-offering-response.json +4 -4
  627. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-identity.json +1 -1
  628. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-initiate-session-request.json +5 -5
  629. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-initiate-session-response.json +7 -7
  630. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-send-message-request.json +3 -3
  631. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-send-message-response.json +7 -7
  632. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-terminate-session-request.json +3 -3
  633. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-terminate-session-response.json +5 -5
  634. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-ui-element.json +1 -1
  635. package/dist/lib/schemas-data/v2.5/_provenance.json +1 -1
  636. package/dist/lib/server/decisioning/runtime/entity-hydration.generated.js +1 -1
  637. package/dist/lib/server/wire-spec-fields.generated.d.ts +29 -29
  638. package/dist/lib/server/wire-spec-fields.generated.js +31 -31
  639. package/dist/lib/testing/client.d.ts +1 -1
  640. package/dist/lib/testing/client.d.ts.map +1 -1
  641. package/dist/lib/testing/client.js +9 -2
  642. package/dist/lib/testing/client.js.map +1 -1
  643. package/dist/lib/testing/compliance/comply.d.ts +6 -0
  644. package/dist/lib/testing/compliance/comply.d.ts.map +1 -1
  645. package/dist/lib/testing/compliance/comply.js +110 -4
  646. package/dist/lib/testing/compliance/comply.js.map +1 -1
  647. package/dist/lib/testing/storyboard/default-invariants.js +23 -0
  648. package/dist/lib/testing/storyboard/default-invariants.js.map +1 -1
  649. package/dist/lib/testing/storyboard/runner.d.ts +2 -0
  650. package/dist/lib/testing/storyboard/runner.d.ts.map +1 -1
  651. package/dist/lib/testing/storyboard/runner.js +112 -21
  652. package/dist/lib/testing/storyboard/runner.js.map +1 -1
  653. package/dist/lib/testing/storyboard/types.d.ts +23 -0
  654. package/dist/lib/testing/storyboard/types.d.ts.map +1 -1
  655. package/dist/lib/testing/storyboard/types.js.map +1 -1
  656. package/dist/lib/testing/storyboard/validations.d.ts +4 -0
  657. package/dist/lib/testing/storyboard/validations.d.ts.map +1 -1
  658. package/dist/lib/testing/storyboard/validations.js +13 -4
  659. package/dist/lib/testing/storyboard/validations.js.map +1 -1
  660. package/dist/lib/testing/types.d.ts +32 -0
  661. package/dist/lib/testing/types.d.ts.map +1 -1
  662. package/dist/lib/types/core.generated.js +2 -2
  663. package/dist/lib/types/manifest.generated.d.ts +3 -3
  664. package/dist/lib/types/manifest.generated.js +1 -1
  665. package/dist/lib/utils/adcp-version-config.d.ts +1 -0
  666. package/dist/lib/utils/adcp-version-config.d.ts.map +1 -1
  667. package/dist/lib/utils/adcp-version-config.js +21 -0
  668. package/dist/lib/utils/adcp-version-config.js.map +1 -1
  669. package/dist/lib/utils/response-schemas.d.ts +1 -0
  670. package/dist/lib/utils/response-schemas.d.ts.map +1 -1
  671. package/dist/lib/utils/response-schemas.js +14 -0
  672. package/dist/lib/utils/response-schemas.js.map +1 -1
  673. package/dist/lib/utils/response-unwrapper.d.ts +2 -1
  674. package/dist/lib/utils/response-unwrapper.d.ts.map +1 -1
  675. package/dist/lib/utils/response-unwrapper.js +15 -5
  676. package/dist/lib/utils/response-unwrapper.js.map +1 -1
  677. package/dist/lib/version.d.ts +7 -7
  678. package/dist/lib/version.d.ts.map +1 -1
  679. package/dist/lib/version.js +11 -5
  680. package/dist/lib/version.js.map +1 -1
  681. package/package.json +2 -2
  682. package/compliance/cache/3.0.12/universal/webhook-emission.yaml +0 -337
  683. package/compliance/cache/3.0.12.previous/universal/webhook-emission.yaml +0 -337
  684. /package/compliance/cache/{3.0.12 → 3.0.18}/domains/brand/index.yaml +0 -0
  685. /package/compliance/cache/{3.0.12 → 3.0.18}/domains/governance/index.yaml +0 -0
  686. /package/compliance/cache/{3.0.12 → 3.0.18}/domains/media-buy/index.yaml +0 -0
  687. /package/compliance/cache/{3.0.12 → 3.0.18}/domains/media-buy/scenarios/create_media_buy_async.yaml +0 -0
  688. /package/compliance/cache/{3.0.12 → 3.0.18}/domains/media-buy/scenarios/creative_fate_after_cancellation.yaml +0 -0
  689. /package/compliance/cache/{3.0.12 → 3.0.18}/domains/media-buy/scenarios/delivery_reporting.yaml +0 -0
  690. /package/compliance/cache/{3.0.12 → 3.0.18}/domains/media-buy/scenarios/governance_approved.yaml +0 -0
  691. /package/compliance/cache/{3.0.12 → 3.0.18}/domains/media-buy/scenarios/governance_conditions.yaml +0 -0
  692. /package/compliance/cache/{3.0.12 → 3.0.18}/domains/media-buy/scenarios/governance_denied.yaml +0 -0
  693. /package/compliance/cache/{3.0.12 → 3.0.18}/domains/media-buy/scenarios/governance_denied_recovery.yaml +0 -0
  694. /package/compliance/cache/{3.0.12 → 3.0.18}/domains/media-buy/scenarios/invalid_transitions.yaml +0 -0
  695. /package/compliance/cache/{3.0.12 → 3.0.18}/domains/media-buy/scenarios/inventory_list_no_match.yaml +0 -0
  696. /package/compliance/cache/{3.0.12 → 3.0.18}/domains/media-buy/scenarios/inventory_list_targeting.yaml +0 -0
  697. /package/compliance/cache/{3.0.12 → 3.0.18}/domains/media-buy/scenarios/pending_creatives_to_start.yaml +0 -0
  698. /package/compliance/cache/{3.0.12 → 3.0.18}/domains/media-buy/scenarios/refine_products.yaml +0 -0
  699. /package/compliance/cache/{3.0.12 → 3.0.18}/domains/signals/index.yaml +0 -0
  700. /package/compliance/cache/{3.0.12 → 3.0.18}/domains/sponsored-intelligence/index.yaml +0 -0
  701. /package/compliance/cache/{3.0.12 → 3.0.18}/protocols/brand/index.yaml +0 -0
  702. /package/compliance/cache/{3.0.12 → 3.0.18}/protocols/governance/index.yaml +0 -0
  703. /package/compliance/cache/{3.0.12 → 3.0.18}/protocols/media-buy/index.yaml +0 -0
  704. /package/compliance/cache/{3.0.12 → 3.0.18}/protocols/media-buy/scenarios/create_media_buy_async.yaml +0 -0
  705. /package/compliance/cache/{3.0.12 → 3.0.18}/protocols/media-buy/scenarios/creative_fate_after_cancellation.yaml +0 -0
  706. /package/compliance/cache/{3.0.12 → 3.0.18}/protocols/media-buy/scenarios/delivery_reporting.yaml +0 -0
  707. /package/compliance/cache/{3.0.12 → 3.0.18}/protocols/media-buy/scenarios/governance_approved.yaml +0 -0
  708. /package/compliance/cache/{3.0.12 → 3.0.18}/protocols/media-buy/scenarios/governance_conditions.yaml +0 -0
  709. /package/compliance/cache/{3.0.12 → 3.0.18}/protocols/media-buy/scenarios/governance_denied.yaml +0 -0
  710. /package/compliance/cache/{3.0.12 → 3.0.18}/protocols/media-buy/scenarios/governance_denied_recovery.yaml +0 -0
  711. /package/compliance/cache/{3.0.12 → 3.0.18}/protocols/media-buy/scenarios/invalid_transitions.yaml +0 -0
  712. /package/compliance/cache/{3.0.12 → 3.0.18}/protocols/media-buy/scenarios/inventory_list_no_match.yaml +0 -0
  713. /package/compliance/cache/{3.0.12 → 3.0.18}/protocols/media-buy/scenarios/inventory_list_targeting.yaml +0 -0
  714. /package/compliance/cache/{3.0.12 → 3.0.18}/protocols/media-buy/scenarios/pending_creatives_to_start.yaml +0 -0
  715. /package/compliance/cache/{3.0.12 → 3.0.18}/protocols/media-buy/scenarios/refine_products.yaml +0 -0
  716. /package/compliance/cache/{3.0.12 → 3.0.18}/protocols/signals/index.yaml +0 -0
  717. /package/compliance/cache/{3.0.12 → 3.0.18}/protocols/sponsored-intelligence/index.yaml +0 -0
  718. /package/compliance/cache/{3.0.12 → 3.0.18}/specialisms/audience-sync/index.yaml +0 -0
  719. /package/compliance/cache/{3.0.12 → 3.0.18}/specialisms/brand-rights/index.yaml +0 -0
  720. /package/compliance/cache/{3.0.12 → 3.0.18}/specialisms/brand-rights/scenarios/governance_denied.yaml +0 -0
  721. /package/compliance/cache/{3.0.12 → 3.0.18}/specialisms/collection-lists/index.yaml +0 -0
  722. /package/compliance/cache/{3.0.12 → 3.0.18}/specialisms/content-standards/index.yaml +0 -0
  723. /package/compliance/cache/{3.0.12 → 3.0.18}/specialisms/creative-ad-server/index.yaml +0 -0
  724. /package/compliance/cache/{3.0.12 → 3.0.18}/specialisms/creative-generative/generative-seller.yaml +0 -0
  725. /package/compliance/cache/{3.0.12 → 3.0.18}/specialisms/creative-generative/index.yaml +0 -0
  726. /package/compliance/cache/{3.0.12 → 3.0.18}/specialisms/governance-aware-seller/index.yaml +0 -0
  727. /package/compliance/cache/{3.0.12 → 3.0.18}/specialisms/governance-delivery-monitor/index.yaml +0 -0
  728. /package/compliance/cache/{3.0.12 → 3.0.18}/specialisms/governance-spend-authority/denied.yaml +0 -0
  729. /package/compliance/cache/{3.0.12 → 3.0.18}/specialisms/governance-spend-authority/index.yaml +0 -0
  730. /package/compliance/cache/{3.0.12 → 3.0.18}/specialisms/property-lists/index.yaml +0 -0
  731. /package/compliance/cache/{3.0.12 → 3.0.18}/specialisms/sales-broadcast-tv/index.yaml +0 -0
  732. /package/compliance/cache/{3.0.12 → 3.0.18}/specialisms/sales-catalog-driven/index.yaml +0 -0
  733. /package/compliance/cache/{3.0.12 → 3.0.18}/specialisms/sales-guaranteed/index.yaml +0 -0
  734. /package/compliance/cache/{3.0.12 → 3.0.18}/specialisms/sales-non-guaranteed/index.yaml +0 -0
  735. /package/compliance/cache/{3.0.12 → 3.0.18}/specialisms/sales-proposal-mode/index.yaml +0 -0
  736. /package/compliance/cache/{3.0.12 → 3.0.18}/specialisms/sales-social/index.yaml +0 -0
  737. /package/compliance/cache/{3.0.12 → 3.0.18}/specialisms/signal-marketplace/index.yaml +0 -0
  738. /package/compliance/cache/{3.0.12 → 3.0.18}/specialisms/signal-marketplace/scenarios/governance_denied.yaml +0 -0
  739. /package/compliance/cache/{3.0.12 → 3.0.18}/specialisms/signal-owned/index.yaml +0 -0
  740. /package/compliance/cache/{3.0.12 → 3.0.18}/test-kits/acme-outdoor-live.yaml +0 -0
  741. /package/compliance/cache/{3.0.12 → 3.0.18}/test-kits/acme-outdoor.yaml +0 -0
  742. /package/compliance/cache/{3.0.12 → 3.0.18}/test-kits/bistro-oranje.yaml +0 -0
  743. /package/compliance/cache/{3.0.12 → 3.0.18}/test-kits/nova-motors.yaml +0 -0
  744. /package/compliance/cache/{3.0.12 → 3.0.18}/test-kits/osei-natural.yaml +0 -0
  745. /package/compliance/cache/{3.0.12 → 3.0.18}/test-kits/signed-requests-runner.yaml +0 -0
  746. /package/compliance/cache/{3.0.12 → 3.0.18}/test-kits/substitution-observer-runner.yaml +0 -0
  747. /package/compliance/cache/{3.0.12 → 3.0.18}/test-kits/summit-foods.yaml +0 -0
  748. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/plan-hash/001-minimal-plan.json +0 -0
  749. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/plan-hash/002-full-plan.json +0 -0
  750. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/plan-hash/003-bookkeeping-stripped.json +0 -0
  751. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/plan-hash/004a-human-review-omitted.json +0 -0
  752. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/plan-hash/004b-human-review-explicit-null.json +0 -0
  753. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/plan-hash/005a-policy-categories-order-1.json +0 -0
  754. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/plan-hash/005b-policy-categories-order-2.json +0 -0
  755. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/plan-hash/006a-ext-trace-v1.json +0 -0
  756. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/plan-hash/006b-ext-trace-v2.json +0 -0
  757. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/plan-hash/007-unicode-objectives.json +0 -0
  758. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/plan-hash/008-numeric-canonicalization.json +0 -0
  759. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/README.md +0 -0
  760. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/canonicalization.json +0 -0
  761. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/keys.json +0 -0
  762. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/001-no-signature-header.json +0 -0
  763. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/002-wrong-tag.json +0 -0
  764. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/003-expired-signature.json +0 -0
  765. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/004-window-too-long.json +0 -0
  766. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/005-alg-not-allowed.json +0 -0
  767. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/006-missing-covered-component.json +0 -0
  768. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/007-missing-content-digest.json +0 -0
  769. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/008-unknown-keyid.json +0 -0
  770. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/009-key-ops-missing-verify.json +0 -0
  771. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/010-content-digest-mismatch.json +0 -0
  772. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/011-malformed-header.json +0 -0
  773. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/012-missing-expires-param.json +0 -0
  774. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/013-expires-le-created.json +0 -0
  775. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/014-missing-nonce-param.json +0 -0
  776. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/015-signature-invalid.json +0 -0
  777. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/016-replayed-nonce.json +0 -0
  778. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/017-key-revoked.json +0 -0
  779. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/018-digest-covered-when-forbidden.json +0 -0
  780. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/019-signature-without-signature-input.json +0 -0
  781. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/020-rate-abuse.json +0 -0
  782. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/021-duplicate-signature-input-label.json +0 -0
  783. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/022-multi-valued-content-type.json +0 -0
  784. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/023-multi-valued-content-digest.json +0 -0
  785. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/024-unquoted-string-param.json +0 -0
  786. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/025-jwk-alg-crv-mismatch.json +0 -0
  787. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/026-non-ascii-host.json +0 -0
  788. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/negative/027-webhook-registration-authentication-unsigned.json +0 -0
  789. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/positive/001-basic-post.json +0 -0
  790. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/positive/002-post-with-content-digest.json +0 -0
  791. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/positive/003-es256-post.json +0 -0
  792. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/positive/004-multiple-signature-labels.json +0 -0
  793. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/positive/005-default-port-stripped.json +0 -0
  794. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/positive/006-dot-segment-path.json +0 -0
  795. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/positive/007-query-byte-preserved.json +0 -0
  796. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/positive/008-percent-encoded-path.json +0 -0
  797. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/positive/009-percent-encoded-unreserved-decoded.json +0 -0
  798. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/positive/010-percent-encoded-slash-preserved.json +0 -0
  799. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/positive/011-ipv6-authority.json +0 -0
  800. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/request-signing/positive/012-ipv6-authority-default-port-stripped.json +0 -0
  801. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/README.md +0 -0
  802. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/keys.json +0 -0
  803. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/negative/001-wrong-tag.json +0 -0
  804. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/negative/002-expired-signature.json +0 -0
  805. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/negative/003-window-too-long.json +0 -0
  806. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/negative/004-alg-not-allowed.json +0 -0
  807. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/negative/005-missing-authority-component.json +0 -0
  808. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/negative/006-missing-content-digest.json +0 -0
  809. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/negative/007-unknown-keyid.json +0 -0
  810. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/negative/008-wrong-adcp-use.json +0 -0
  811. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/negative/009-content-digest-mismatch.json +0 -0
  812. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/negative/010-malformed-signature-input.json +0 -0
  813. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/negative/011-signature-without-input.json +0 -0
  814. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/negative/012-missing-expires-param.json +0 -0
  815. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/negative/013-expires-le-created.json +0 -0
  816. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/negative/014-missing-nonce-param.json +0 -0
  817. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/negative/015-signature-invalid.json +0 -0
  818. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/negative/016-replayed-nonce.json +0 -0
  819. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/negative/017-key-revoked.json +0 -0
  820. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/negative/018-rate-abuse.json +0 -0
  821. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/negative/019-revocation-stale.json +0 -0
  822. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/negative/020-key-ops-missing-verify.json +0 -0
  823. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/negative/021-base64-alphabet-mixing.json +0 -0
  824. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/positive/001-basic-post.json +0 -0
  825. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/positive/002-es256-post.json +0 -0
  826. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/positive/003-multiple-signature-labels.json +0 -0
  827. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/positive/004-default-port-stripped.json +0 -0
  828. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/positive/005-percent-encoded-path.json +0 -0
  829. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/positive/006-query-byte-preserved.json +0 -0
  830. /package/compliance/cache/{3.0.12 → 3.0.18}/test-vectors/webhook-signing/positive/007-body-without-idempotency-key.json +0 -0
  831. /package/compliance/cache/{3.0.12 → 3.0.18}/universal/capability-discovery.yaml +0 -0
  832. /package/compliance/cache/{3.0.12 → 3.0.18}/universal/collection-lists-pagination-integrity.yaml +0 -0
  833. /package/compliance/cache/{3.0.12 → 3.0.18}/universal/comply-controller-mode-gate.yaml +0 -0
  834. /package/compliance/cache/{3.0.12 → 3.0.18}/universal/content-standards-pagination-integrity.yaml +0 -0
  835. /package/compliance/cache/{3.0.12 → 3.0.18}/universal/deterministic-testing.yaml +0 -0
  836. /package/compliance/cache/{3.0.12 → 3.0.18}/universal/error-compliance.yaml +0 -0
  837. /package/compliance/cache/{3.0.12 → 3.0.18}/universal/fictional-entities.yaml +0 -0
  838. /package/compliance/cache/{3.0.12 → 3.0.18}/universal/get-media-buys-pagination-integrity.yaml +0 -0
  839. /package/compliance/cache/{3.0.12 → 3.0.18}/universal/get-signals-pagination-integrity.yaml +0 -0
  840. /package/compliance/cache/{3.0.12 → 3.0.18}/universal/pagination-integrity-creative-formats.yaml +0 -0
  841. /package/compliance/cache/{3.0.12 → 3.0.18}/universal/pagination-integrity-list-accounts.yaml +0 -0
  842. /package/compliance/cache/{3.0.12 → 3.0.18}/universal/pagination-integrity.yaml +0 -0
  843. /package/compliance/cache/{3.0.12 → 3.0.18}/universal/property-lists-pagination-integrity.yaml +0 -0
  844. /package/compliance/cache/{3.0.12 → 3.0.18}/universal/runner-output-contract.yaml +0 -0
  845. /package/compliance/cache/{3.0.12 → 3.0.18}/universal/signed-requests.yaml +0 -0
  846. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/domains/brand/index.yaml +0 -0
  847. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/domains/governance/index.yaml +0 -0
  848. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/domains/media-buy/index.yaml +0 -0
  849. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/domains/media-buy/scenarios/create_media_buy_async.yaml +0 -0
  850. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/domains/media-buy/scenarios/creative_fate_after_cancellation.yaml +0 -0
  851. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/domains/media-buy/scenarios/delivery_reporting.yaml +0 -0
  852. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/domains/media-buy/scenarios/governance_approved.yaml +0 -0
  853. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/domains/media-buy/scenarios/governance_conditions.yaml +0 -0
  854. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/domains/media-buy/scenarios/governance_denied.yaml +0 -0
  855. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/domains/media-buy/scenarios/governance_denied_recovery.yaml +0 -0
  856. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/domains/media-buy/scenarios/invalid_transitions.yaml +0 -0
  857. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/domains/media-buy/scenarios/inventory_list_no_match.yaml +0 -0
  858. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/domains/media-buy/scenarios/inventory_list_targeting.yaml +0 -0
  859. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/domains/media-buy/scenarios/pending_creatives_to_start.yaml +0 -0
  860. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/domains/media-buy/scenarios/refine_products.yaml +0 -0
  861. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/domains/signals/index.yaml +0 -0
  862. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/domains/sponsored-intelligence/index.yaml +0 -0
  863. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/protocols/brand/index.yaml +0 -0
  864. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/protocols/governance/index.yaml +0 -0
  865. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/protocols/media-buy/index.yaml +0 -0
  866. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/protocols/media-buy/scenarios/create_media_buy_async.yaml +0 -0
  867. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/protocols/media-buy/scenarios/creative_fate_after_cancellation.yaml +0 -0
  868. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/protocols/media-buy/scenarios/delivery_reporting.yaml +0 -0
  869. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/protocols/media-buy/scenarios/governance_approved.yaml +0 -0
  870. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/protocols/media-buy/scenarios/governance_conditions.yaml +0 -0
  871. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/protocols/media-buy/scenarios/governance_denied.yaml +0 -0
  872. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/protocols/media-buy/scenarios/governance_denied_recovery.yaml +0 -0
  873. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/protocols/media-buy/scenarios/invalid_transitions.yaml +0 -0
  874. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/protocols/media-buy/scenarios/inventory_list_no_match.yaml +0 -0
  875. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/protocols/media-buy/scenarios/inventory_list_targeting.yaml +0 -0
  876. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/protocols/media-buy/scenarios/pending_creatives_to_start.yaml +0 -0
  877. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/protocols/media-buy/scenarios/refine_products.yaml +0 -0
  878. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/protocols/signals/index.yaml +0 -0
  879. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/protocols/sponsored-intelligence/index.yaml +0 -0
  880. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/specialisms/audience-sync/index.yaml +0 -0
  881. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/specialisms/brand-rights/index.yaml +0 -0
  882. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/specialisms/brand-rights/scenarios/governance_denied.yaml +0 -0
  883. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/specialisms/collection-lists/index.yaml +0 -0
  884. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/specialisms/content-standards/index.yaml +0 -0
  885. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/specialisms/creative-ad-server/index.yaml +0 -0
  886. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/specialisms/creative-generative/generative-seller.yaml +0 -0
  887. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/specialisms/creative-generative/index.yaml +0 -0
  888. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/specialisms/governance-aware-seller/index.yaml +0 -0
  889. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/specialisms/governance-delivery-monitor/index.yaml +0 -0
  890. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/specialisms/governance-spend-authority/denied.yaml +0 -0
  891. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/specialisms/governance-spend-authority/index.yaml +0 -0
  892. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/specialisms/property-lists/index.yaml +0 -0
  893. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/specialisms/sales-broadcast-tv/index.yaml +0 -0
  894. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/specialisms/sales-catalog-driven/index.yaml +0 -0
  895. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/specialisms/sales-guaranteed/index.yaml +0 -0
  896. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/specialisms/sales-non-guaranteed/index.yaml +0 -0
  897. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/specialisms/sales-proposal-mode/index.yaml +0 -0
  898. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/specialisms/sales-social/index.yaml +0 -0
  899. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/specialisms/signal-marketplace/index.yaml +0 -0
  900. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/specialisms/signal-marketplace/scenarios/governance_denied.yaml +0 -0
  901. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/specialisms/signal-owned/index.yaml +0 -0
  902. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-kits/acme-outdoor-live.yaml +0 -0
  903. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-kits/acme-outdoor.yaml +0 -0
  904. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-kits/bistro-oranje.yaml +0 -0
  905. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-kits/nova-motors.yaml +0 -0
  906. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-kits/osei-natural.yaml +0 -0
  907. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-kits/signed-requests-runner.yaml +0 -0
  908. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-kits/substitution-observer-runner.yaml +0 -0
  909. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-kits/summit-foods.yaml +0 -0
  910. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/plan-hash/001-minimal-plan.json +0 -0
  911. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/plan-hash/002-full-plan.json +0 -0
  912. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/plan-hash/003-bookkeeping-stripped.json +0 -0
  913. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/plan-hash/004a-human-review-omitted.json +0 -0
  914. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/plan-hash/004b-human-review-explicit-null.json +0 -0
  915. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/plan-hash/005a-policy-categories-order-1.json +0 -0
  916. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/plan-hash/005b-policy-categories-order-2.json +0 -0
  917. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/plan-hash/006a-ext-trace-v1.json +0 -0
  918. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/plan-hash/006b-ext-trace-v2.json +0 -0
  919. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/plan-hash/007-unicode-objectives.json +0 -0
  920. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/plan-hash/008-numeric-canonicalization.json +0 -0
  921. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/README.md +0 -0
  922. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/canonicalization.json +0 -0
  923. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/keys.json +0 -0
  924. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/001-no-signature-header.json +0 -0
  925. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/002-wrong-tag.json +0 -0
  926. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/003-expired-signature.json +0 -0
  927. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/004-window-too-long.json +0 -0
  928. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/005-alg-not-allowed.json +0 -0
  929. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/006-missing-covered-component.json +0 -0
  930. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/007-missing-content-digest.json +0 -0
  931. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/008-unknown-keyid.json +0 -0
  932. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/009-key-ops-missing-verify.json +0 -0
  933. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/010-content-digest-mismatch.json +0 -0
  934. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/011-malformed-header.json +0 -0
  935. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/012-missing-expires-param.json +0 -0
  936. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/013-expires-le-created.json +0 -0
  937. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/014-missing-nonce-param.json +0 -0
  938. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/015-signature-invalid.json +0 -0
  939. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/016-replayed-nonce.json +0 -0
  940. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/017-key-revoked.json +0 -0
  941. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/018-digest-covered-when-forbidden.json +0 -0
  942. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/019-signature-without-signature-input.json +0 -0
  943. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/020-rate-abuse.json +0 -0
  944. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/021-duplicate-signature-input-label.json +0 -0
  945. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/022-multi-valued-content-type.json +0 -0
  946. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/023-multi-valued-content-digest.json +0 -0
  947. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/024-unquoted-string-param.json +0 -0
  948. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/025-jwk-alg-crv-mismatch.json +0 -0
  949. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/026-non-ascii-host.json +0 -0
  950. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/negative/027-webhook-registration-authentication-unsigned.json +0 -0
  951. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/positive/001-basic-post.json +0 -0
  952. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/positive/002-post-with-content-digest.json +0 -0
  953. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/positive/003-es256-post.json +0 -0
  954. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/positive/004-multiple-signature-labels.json +0 -0
  955. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/positive/005-default-port-stripped.json +0 -0
  956. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/positive/006-dot-segment-path.json +0 -0
  957. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/positive/007-query-byte-preserved.json +0 -0
  958. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/positive/008-percent-encoded-path.json +0 -0
  959. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/positive/009-percent-encoded-unreserved-decoded.json +0 -0
  960. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/positive/010-percent-encoded-slash-preserved.json +0 -0
  961. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/positive/011-ipv6-authority.json +0 -0
  962. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/request-signing/positive/012-ipv6-authority-default-port-stripped.json +0 -0
  963. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/README.md +0 -0
  964. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/keys.json +0 -0
  965. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/negative/001-wrong-tag.json +0 -0
  966. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/negative/002-expired-signature.json +0 -0
  967. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/negative/003-window-too-long.json +0 -0
  968. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/negative/004-alg-not-allowed.json +0 -0
  969. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/negative/005-missing-authority-component.json +0 -0
  970. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/negative/006-missing-content-digest.json +0 -0
  971. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/negative/007-unknown-keyid.json +0 -0
  972. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/negative/008-wrong-adcp-use.json +0 -0
  973. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/negative/009-content-digest-mismatch.json +0 -0
  974. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/negative/010-malformed-signature-input.json +0 -0
  975. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/negative/011-signature-without-input.json +0 -0
  976. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/negative/012-missing-expires-param.json +0 -0
  977. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/negative/013-expires-le-created.json +0 -0
  978. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/negative/014-missing-nonce-param.json +0 -0
  979. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/negative/015-signature-invalid.json +0 -0
  980. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/negative/016-replayed-nonce.json +0 -0
  981. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/negative/017-key-revoked.json +0 -0
  982. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/negative/018-rate-abuse.json +0 -0
  983. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/negative/019-revocation-stale.json +0 -0
  984. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/negative/020-key-ops-missing-verify.json +0 -0
  985. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/negative/021-base64-alphabet-mixing.json +0 -0
  986. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/positive/001-basic-post.json +0 -0
  987. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/positive/002-es256-post.json +0 -0
  988. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/positive/003-multiple-signature-labels.json +0 -0
  989. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/positive/004-default-port-stripped.json +0 -0
  990. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/positive/005-percent-encoded-path.json +0 -0
  991. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/positive/006-query-byte-preserved.json +0 -0
  992. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/test-vectors/webhook-signing/positive/007-body-without-idempotency-key.json +0 -0
  993. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/universal/capability-discovery.yaml +0 -0
  994. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/universal/collection-lists-pagination-integrity.yaml +0 -0
  995. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/universal/comply-controller-mode-gate.yaml +0 -0
  996. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/universal/content-standards-pagination-integrity.yaml +0 -0
  997. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/universal/deterministic-testing.yaml +0 -0
  998. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/universal/error-compliance.yaml +0 -0
  999. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/universal/fictional-entities.yaml +0 -0
  1000. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/universal/get-media-buys-pagination-integrity.yaml +0 -0
  1001. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/universal/get-signals-pagination-integrity.yaml +0 -0
  1002. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/universal/pagination-integrity-creative-formats.yaml +0 -0
  1003. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/universal/pagination-integrity-list-accounts.yaml +0 -0
  1004. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/universal/pagination-integrity.yaml +0 -0
  1005. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/universal/property-lists-pagination-integrity.yaml +0 -0
  1006. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/universal/runner-output-contract.yaml +0 -0
  1007. /package/compliance/cache/{3.0.12.previous → 3.0.18.previous}/universal/signed-requests.yaml +0 -0
@@ -2,7 +2,7 @@ id: idempotency
2
2
  version: "1.0.0"
3
3
  title: "Idempotency enforcement"
4
4
  category: core
5
- summary: "Validates that mutating requests enforce idempotency_key — replays return cached responses, key reuse with a different payload returns IDEMPOTENCY_CONFLICT, and fresh keys create new resources."
5
+ summary: "Validates that mutating requests enforce idempotency_key — replays return cached responses, key reuse with a different payload returns IDEMPOTENCY_CONFLICT, fresh keys create new resources, and concurrent retries with the same key produce exactly one resource (first-insert-wins under rule 9)."
6
6
  track: core
7
7
 
8
8
  # Cross-step assertions (adcontextprotocol/adcp#2639). These convert two
@@ -33,12 +33,12 @@ invariants:
33
33
 
34
34
  narrative: |
35
35
  Every mutating request in AdCP carries an idempotency_key so buyers can safely retry
36
- after network errors without double-booking. This storyboard walks through the four
36
+ after network errors without double-booking. This storyboard walks through the
37
37
  observable behaviors a seller MUST implement:
38
38
 
39
39
  1. First call with a fresh key is processed normally and returns the canonical response.
40
40
  2. Replay with the same key and an equivalent payload returns the cached response
41
- without re-executing side effects (same media_buy_id, no new webhooks fired).
41
+ without re-executing resource mutations (same media_buy_id).
42
42
  3. Replay with the same key but a materially different payload is rejected with
43
43
  IDEMPOTENCY_CONFLICT. The buyer has clearly reused a key by mistake.
44
44
  4. A request with a different key is treated as a new request, even if the payload
@@ -55,6 +55,12 @@ narrative: |
55
55
  key_reuse_conflict. An end-to-end phase that drives a deterministic terminal
56
56
  error and replays the key is deferred pending a generic force-error controller
57
57
  verb (see adcontextprotocol/adcp#2760).
58
+ 6. Concurrent retries with the same key produce exactly one resource. The seller
59
+ MAY wait-and-replay or return IDEMPOTENCY_IN_FLIGHT — both are conformant under
60
+ security.mdx#idempotency rule 9 (first-insert-wins) as long as the resolved
61
+ response set converges on a single media_buy_id. Graded via the
62
+ parallel_dispatch_runner contract; runners without parallel-dispatch skip
63
+ this phase with a stable not_applicable marker.
58
64
 
59
65
  Missing idempotency_key on any mutating request MUST be rejected with INVALID_REQUEST.
60
66
  Sellers MUST declare adcp.idempotency on get_adcp_capabilities — either
@@ -63,16 +69,28 @@ narrative: |
63
69
  validates the supported: true behavior; sellers declaring supported: false
64
70
  MUST skip this storyboard (they have no replay window to test).
65
71
 
66
- **Cache-growth defense (MUST, not yet runtime-graded).** Per
72
+ **Cache-growth defense (partial runtime grading).** Per
67
73
  security.mdx bullet 8 on the idempotency section, sellers MUST apply per-agent
68
74
  rate limits on idempotency-cache inserts and MUST return RATE_LIMITED when the
69
75
  per-agent insert rate exceeds the configured ceiling. The recommended
70
76
  first-deployment ceiling is 60 inserts/sec sustained per agent (3,600/min)
71
77
  with burst allowance to 300/sec over rolling 10-second windows. This storyboard
72
- does not yet drive the high-volume burst that would exercise the ceiling —
73
- runtime grading is tracked as a follow-up once a burst-runner test-kit
74
- contract is defined. Sellers SHOULD self-attest to this requirement until the
75
- runtime phase lands.
78
+ does NOT attest the threshold itself burst-volume measurement is
79
+ structurally non-deterministic in CI (runner CPU, network jitter, agent
80
+ cold-start) and better evaluated via operator-side load testing. What it
81
+ DOES attest, via the `rate_limit_replay_invariant` phase below, is the
82
+ invariant that matters most for client safety: a `RATE_LIMITED` response on
83
+ insert MUST NOT be cached as the canonical idempotency replay for that
84
+ key. Otherwise a client retrying past `retry_after` receives the cached
85
+ rate-limit error forever, defeating the point of `retry_after`. The
86
+ threshold (60/300 req/sec) remains seller self-attestation pending
87
+ operator-side tooling.
88
+
89
+ **Webhook side effects are graded separately.** A replay MUST NOT duplicate
90
+ outbound webhook fires, but observing that side effect requires a runner-hosted
91
+ webhook receiver. The webhook-specific replay assertion lives in
92
+ universal/webhook-emission.yaml so this core idempotency storyboard remains
93
+ runnable by agents and runners that do not host receiver URLs.
76
94
 
77
95
  agent:
78
96
  interaction_model: media_buy_seller
@@ -87,10 +105,26 @@ caller:
87
105
 
88
106
  prerequisites:
89
107
  description: |
90
- No special prerequisites. The storyboard uses create_media_buy as the canonical
91
- mutating request. Sellers that do not support create_media_buy SHOULD still pass
92
- idempotency compliance on whichever mutating task they do implement.
108
+ The runner seeds the product and pricing option referenced by the
109
+ create_media_buy payloads below. The storyboard uses create_media_buy as the
110
+ canonical mutating request. Sellers that do not support create_media_buy SHOULD
111
+ still pass idempotency compliance on whichever mutating task they do implement.
93
112
  test_kit: "test-kits/acme-outdoor.yaml"
113
+ controller_seeding: true
114
+
115
+ fixtures:
116
+ products:
117
+ - product_id: "test-product"
118
+ delivery_type: "non_guaranteed"
119
+ channels: ["display"]
120
+ format_ids:
121
+ - id: "display_300x250"
122
+ pricing_options:
123
+ - product_id: "test-product"
124
+ pricing_option_id: "test-pricing"
125
+ pricing_model: "cpm"
126
+ currency: "USD"
127
+ floor_price: 1.0
94
128
 
95
129
  phases:
96
130
  - id: capability_discovery
@@ -106,8 +140,11 @@ phases:
106
140
  Call get_adcp_capabilities and verify adcp.idempotency is declared with
107
141
  supported: true and a replay_ttl_seconds value. The block is REQUIRED —
108
142
  clients MUST NOT fall back to an assumed default, and a seller that omits
109
- it is non-compliant. Sellers running this storyboard must declare
110
- supported: true; supported: false sellers skip this storyboard entirely.
143
+ it is non-compliant. Sellers running this storyboard should declare
144
+ supported: true; sellers declaring supported: false pass this step with
145
+ advisory findings and cascade-skip the remaining idempotency phases (they
146
+ have no replay window to test). The full storyboard-level skip gate is
147
+ pending runner support for a precondition mechanism (adcontextprotocol/adcp#3919).
111
148
  task: get_adcp_capabilities
112
149
  schema_ref: "protocol/get-adcp-capabilities-request.json"
113
150
  response_schema_ref: "protocol/get-adcp-capabilities-response.json"
@@ -130,9 +167,15 @@ phases:
130
167
  - check: field_value
131
168
  path: "adcp.idempotency.supported"
132
169
  value: true
170
+ severity: advisory
171
+ permanent_advisory:
172
+ reason: "supported: false is a valid declaration meaning the agent does not deduplicate retries; these agents are not applicable for this storyboard and must not be failed. The check is advisory so capability_discovery passes cleanly for supported: false agents and downstream phases cascade-skip via missing_tool (not_applicable) rather than prerequisite_failed. Full storyboard-level skip (for agents that implement create_media_buy but declare supported: false) requires runner support for a precondition gate (see adcontextprotocol/adcp#3919)."
133
173
  description: "Agent declares supported: true for this storyboard (supported: false sellers skip)"
134
174
  - check: field_present
135
175
  path: "adcp.idempotency.replay_ttl_seconds"
176
+ severity: advisory
177
+ permanent_advisory:
178
+ reason: "replay_ttl_seconds is only required when adcp.idempotency.supported: true; supported: false agents correctly omit this field and must not be penalised for its absence."
136
179
  description: "Agent declares replay window TTL (required when supported: true)"
137
180
 
138
181
  - check: field_present
@@ -142,6 +185,13 @@ phases:
142
185
  path: "context.correlation_id"
143
186
  value: "idempotency--get_capabilities"
144
187
  description: "Context correlation_id returned unchanged"
188
+ context_outputs:
189
+ - name: idempotency_supported
190
+ path: "adcp.idempotency.supported"
191
+ - name: replay_key
192
+ generate: uuid_v4
193
+ - name: fresh_key
194
+ generate: uuid_v4
145
195
 
146
196
  - id: missing_key
147
197
  title: "Reject requests without idempotency_key"
@@ -188,8 +238,8 @@ phases:
188
238
  operator: "pinnacle-agency.example"
189
239
  brand:
190
240
  domain: "acmeoutdoor.example"
191
- start_time: "2026-05-01T00:00:00Z"
192
- end_time: "2026-05-31T23:59:59Z"
241
+ start_time: "asap"
242
+ end_time: "2099-09-30T23:59:59Z"
193
243
  packages:
194
244
  - product_id: "test-product"
195
245
  budget: 5000
@@ -227,12 +277,9 @@ phases:
227
277
  payload would break the at-most-once guarantee; silently returning the old
228
278
  response would hide a real bug in the buyer's retry logic.
229
279
 
230
- Both branches share a single `$generate:uuid_v4#replay_key` placeholder. They
231
- live in the same phase so the alias resolves to one UUID across all four steps
232
- the seller sees one cached idempotency entry that the conflict step probes
233
- with a different body. Splitting these into separate phases would reset the
234
- alias cache at the phase boundary (adcp-client#1657) and mint a fresh UUID for
235
- the conflict step, defeating the test.
280
+ Both branches share the generated `$context.replay_key` value captured
281
+ during capability discovery. The seller sees one cached idempotency entry
282
+ that the conflict step probes with a different body.
236
283
 
237
284
  steps:
238
285
  - id: create_media_buy_initial
@@ -249,36 +296,24 @@ phases:
249
296
  context_outputs:
250
297
  - name: initial_media_buy_id
251
298
  path: "media_buy_id"
252
- - name: idempotency_key_a
253
- path: "idempotency_key"
254
299
  expected: |
255
300
  Create a new media buy and return a media_buy_id. This establishes the
256
301
  canonical response that subsequent replays must match.
257
302
 
258
303
  sample_request:
259
- idempotency_key: "$generate:uuid_v4#replay_key"
304
+ idempotency_key: "$context.replay_key"
260
305
  account:
261
306
  brand:
262
307
  domain: "acmeoutdoor.example"
263
308
  operator: "pinnacle-agency.example"
264
309
  brand:
265
310
  domain: "acmeoutdoor.example"
266
- start_time: "2026-06-01T00:00:00Z"
267
- end_time: "2026-06-30T23:59:59Z"
311
+ start_time: "asap"
312
+ end_time: "2099-07-31T23:59:59Z"
268
313
  packages:
269
314
  - product_id: "test-product"
270
315
  budget: 5000
271
316
  pricing_option_id: "test-pricing"
272
- # Both the initial call and the replay below use the SAME webhook URL
273
- # so the canonical payload hash matches across the two calls. A
274
- # different URL between the two requests would hash differently and
275
- # trip IDEMPOTENCY_CONFLICT instead of exercising replay. The URL
276
- # template resolves against the runner's ephemeral webhook receiver
277
- # (webhook_receiver_runner contract); runners without a receiver
278
- # grade `no_duplicate_webhooks_on_replay` as not_applicable.
279
- push_notification_config:
280
- url: "{{runner.webhook_url:create_media_buy_initial}}"
281
-
282
317
  context:
283
318
  correlation_id: "idempotency--create_media_buy_initial"
284
319
  validations:
@@ -312,8 +347,8 @@ phases:
312
347
  narrative: |
313
348
  Re-send the exact same create_media_buy request — same idempotency_key,
314
349
  same payload, same everything. The seller MUST return the same media_buy_id
315
- from the prior step. It MUST NOT create a second media buy or fire a
316
- second set of webhooks. This is the whole point of idempotency_key.
350
+ from the prior step. It MUST NOT create a second media buy. This is
351
+ the whole point of idempotency_key.
317
352
  task: create_media_buy
318
353
  schema_ref: "media-buy/create-media-buy-request.json"
319
354
  response_schema_ref: "media-buy/create-media-buy-response.json"
@@ -323,36 +358,22 @@ phases:
323
358
  expected: |
324
359
  Return the cached response from the initial request:
325
360
  - media_buy_id: same as $context.initial_media_buy_id
326
- - No new side effects (no duplicate webhooks, no new audit log entry)
327
-
328
- Programmatic verification of "no duplicate webhooks" runs in the next step
329
- (no_duplicate_webhooks_on_replay) when the storyboard is driven by a runner
330
- that implements the webhook_receiver_runner contract. Runners without a
331
- webhook receiver grade that step as not_applicable — agents MAY still claim
332
- idempotency compliance, but the replay-side-effect invariant is only
333
- programmatically graded when the webhook_callbacks specialism is also in
334
- scope.
361
+ - No new side effects (no duplicate audit log entry or resource mutation)
335
362
 
336
363
  sample_request:
337
- idempotency_key: "$generate:uuid_v4#replay_key"
364
+ idempotency_key: "$context.replay_key"
338
365
  account:
339
366
  brand:
340
367
  domain: "acmeoutdoor.example"
341
368
  operator: "pinnacle-agency.example"
342
369
  brand:
343
370
  domain: "acmeoutdoor.example"
344
- start_time: "2026-06-01T00:00:00Z"
345
- end_time: "2026-06-30T23:59:59Z"
371
+ start_time: "asap"
372
+ end_time: "2099-07-31T23:59:59Z"
346
373
  packages:
347
374
  - product_id: "test-product"
348
375
  budget: 5000
349
376
  pricing_option_id: "test-pricing"
350
- # Byte-identical to the initial call above — same URL, same step id
351
- # token — so the canonical payload hash matches and the request
352
- # lands on the replay branch rather than IDEMPOTENCY_CONFLICT.
353
- push_notification_config:
354
- url: "{{runner.webhook_url:create_media_buy_initial}}"
355
-
356
377
  context:
357
378
  correlation_id: "idempotency--create_media_buy_replay"
358
379
  validations:
@@ -378,53 +399,6 @@ phases:
378
399
  value: "idempotency--create_media_buy_replay"
379
400
  description: "Context correlation_id returned unchanged"
380
401
 
381
- - id: no_duplicate_webhooks_on_replay
382
- title: "No duplicate webhooks fired across initial + replay"
383
- narrative: |
384
- The central invariant of idempotency: replaying with the same key MUST
385
- NOT produce duplicate side effects. Webhook emission is the observable
386
- side effect most likely to leak if the seller re-executes on replay
387
- instead of returning cached state.
388
-
389
- This step requires the storyboard runner to implement the
390
- `webhook_receiver_runner` contract at
391
- `test-kits/webhook-receiver-runner.yaml`. Runners without a webhook
392
- receiver skip this step with a stable not_applicable marker; the
393
- replay-side-effect invariant then relies on the next phase's cached-
394
- response assertions plus manual audit of the seller's webhook
395
- delivery history.
396
-
397
- When the receiver IS in scope, the runner counts webhooks arriving at
398
- {{runner.webhook_url:create_media_buy_initial}} across the initial
399
- call's window AND the replay call's window. A conformant seller emits
400
- webhooks only on the first execution; a non-conformant seller that
401
- re-executes on replay emits a second set, catchable only by live
402
- observation.
403
- task: expect_webhook
404
- # `triggered_by` points at the initial call (not the replay) because the
405
- # default filter resolves `step_id` + `operation_id` from `stepOperationIds`
406
- # for that step — which is populated when the initial sample_request's
407
- # `push_notification_config.url` expanded `{{runner.webhook_url:create_media_buy_initial}}`
408
- # above. The execution-order wait still spans the replay window: this
409
- # step runs after `create_media_buy_replay` in YAML order and `wait_all`
410
- # drains the full `timeout_seconds` so any webhook re-fired by the
411
- # replay is captured and counted against the cap below. A non-conformant
412
- # seller that re-executes on replay would deliver a second webhook with
413
- # a fresh idempotency_key and trip `duplicate_webhook_on_replay`.
414
- triggered_by: create_media_buy_initial
415
- timeout_seconds: 30
416
- expect_max_deliveries_per_logical_event: 1
417
- requires_contract: webhook_receiver_runner
418
- stateful: true
419
- expected: |
420
- At most one logical webhook event delivered for the create_media_buy
421
- operation across both the initial and replay windows. If the runner
422
- observes a second webhook delivery tagged with a distinct
423
- idempotency_key but the same media_buy_id/operation_id, the seller is
424
- re-executing on replay and the step fails with
425
- duplicate_webhook_on_replay. Not_applicable when the runner does not
426
- host a webhook receiver.
427
-
428
402
  - id: create_media_buy_conflict
429
403
  title: "Same key, different payload returns IDEMPOTENCY_CONFLICT"
430
404
  narrative: |
@@ -434,12 +408,8 @@ phases:
434
408
  IDEMPOTENCY_CONFLICT. CONFLICT is accepted as a fallback for sellers
435
409
  that haven't adopted the new error code yet.
436
410
 
437
- This step shares the `$generate:uuid_v4#replay_key` alias with the
438
- initial and replay steps above, so the runner injects the same UUID
439
- on the wire. Lives in the same phase as those steps because the
440
- runner's alias cache resets at phase boundaries (adcp-client#1657);
441
- a separate phase would mint a fresh UUID and the seller would treat
442
- the call as a new request rather than a conflicting key reuse.
411
+ This step shares `$context.replay_key` with the initial and replay
412
+ steps above, so the runner injects the same UUID on the wire.
443
413
  task: create_media_buy
444
414
  schema_ref: "media-buy/create-media-buy-request.json"
445
415
  response_schema_ref: "media-buy/create-media-buy-response.json"
@@ -454,15 +424,15 @@ phases:
454
424
  - recovery: correctable (buyer should use a fresh UUID v4)
455
425
 
456
426
  sample_request:
457
- idempotency_key: "$generate:uuid_v4#replay_key"
427
+ idempotency_key: "$context.replay_key"
458
428
  account:
459
429
  brand:
460
430
  domain: "acmeoutdoor.example"
461
431
  operator: "pinnacle-agency.example"
462
432
  brand:
463
433
  domain: "acmeoutdoor.example"
464
- start_time: "2026-06-01T00:00:00Z"
465
- end_time: "2026-09-30T23:59:59Z"
434
+ start_time: "asap"
435
+ end_time: "2099-09-30T23:59:59Z"
466
436
  packages:
467
437
  - product_id: "test-product"
468
438
  budget: 25000
@@ -517,15 +487,15 @@ phases:
517
487
  This confirms the seller treats the fresh key as a new request.
518
488
 
519
489
  sample_request:
520
- idempotency_key: "$generate:uuid_v4#fresh_key"
490
+ idempotency_key: "$context.fresh_key"
521
491
  account:
522
492
  brand:
523
493
  domain: "acmeoutdoor.example"
524
494
  operator: "pinnacle-agency.example"
525
495
  brand:
526
496
  domain: "acmeoutdoor.example"
527
- start_time: "2026-06-01T00:00:00Z"
528
- end_time: "2026-06-30T23:59:59Z"
497
+ start_time: "asap"
498
+ end_time: "2099-07-31T23:59:59Z"
529
499
  packages:
530
500
  - product_id: "test-product"
531
501
  budget: 5000
@@ -555,21 +525,139 @@ phases:
555
525
  value: "idempotency--create_media_buy_fresh_key"
556
526
  description: "Context correlation_id returned unchanged"
557
527
 
528
+ - id: concurrent_retry
529
+ title: "Concurrent retries with the same key produce exactly one resource"
530
+ narrative: |
531
+ A buyer's transport timeout fires before the seller's downstream call
532
+ returns; the buyer retries with the same idempotency_key while the
533
+ first request is still executing. Per L1/security.mdx#idempotency
534
+ rule 9 (first-insert-wins), the seller MUST resolve the race
535
+ deterministically — exactly one resource is created, and both buyer
536
+ requests converge on the same media_buy_id.
537
+
538
+ The seller picks one of two policies and MUST behave consistently:
539
+
540
+ - **Wait-and-replay**: the second request blocks until the first
541
+ completes, then returns the cached response with `replayed: true`.
542
+ - **Reject-and-redirect**: the second request returns
543
+ `IDEMPOTENCY_IN_FLIGHT` immediately with
544
+ `error.details.retry_after`. The buyer retries with the same key
545
+ after the hint elapses and receives the cached response.
546
+
547
+ This phase exercises both policies via the parallel_dispatch_runner
548
+ contract: it fires two requests with the same fresh idempotency_key
549
+ and the same canonical payload, and asserts that the resolved
550
+ response set contains exactly one distinct media_buy_id. The runner
551
+ transparently resolves IDEMPOTENCY_IN_FLIGHT responses by retrying
552
+ with the same key after `retry_after` elapses, so the cross-response
553
+ check operates on the resolved set regardless of which policy the
554
+ seller adopted.
555
+
556
+ Runners without parallel-dispatch support skip this phase with a
557
+ stable not_applicable marker. The phase does not regress the
558
+ sequential idempotency contract — sellers that fail this phase due
559
+ to runner absence are still gradeable on the rest of the storyboard.
560
+
561
+ steps:
562
+ - id: create_media_buy_concurrent
563
+ title: "Two parallel create_media_buy calls with same key converge on one resource"
564
+ narrative: |
565
+ Fire two create_media_buy requests with the same fresh UUID v4
566
+ idempotency_key and byte-identical canonical payloads. The
567
+ runner dispatches them via its parallel-dispatch primitive (SDK
568
+ batch-call or distributed barrier), observes both responses,
569
+ resolves any IDEMPOTENCY_IN_FLIGHT to its eventual cached
570
+ response, and applies the cross-response checks below.
571
+
572
+ Programmatic verification of "exactly one resource created" runs
573
+ via `cross_response_count_distinct` on `media_buy_id`. A seller
574
+ that ignored rule 9 (re-executed both, two media buys created)
575
+ would produce cardinality 2 here and fail; a seller that
576
+ correctly serializes via first-insert-wins produces cardinality
577
+ 1 regardless of which policy (wait-and-replay or
578
+ reject-and-redirect) it adopted.
579
+
580
+ The accompanying `cross_response_field_equal` check is redundant
581
+ when cardinality is 1, but documents the equivalence intent
582
+ directly: every dispatch's resolved response carries the same
583
+ media_buy_id.
584
+ task: create_media_buy
585
+ schema_ref: "media-buy/create-media-buy-request.json"
586
+ response_schema_ref: "media-buy/create-media-buy-response.json"
587
+ doc_ref: "/media-buy/task-reference/create_media_buy"
588
+ comply_scenario: idempotency_concurrent
589
+ stateful: true
590
+ requires_contract: parallel_dispatch_runner
591
+ parallel_dispatch:
592
+ count: 2
593
+ same_idempotency_key: true
594
+ barrier_timeout_ms: 5000
595
+ expected: |
596
+ After resolving any IDEMPOTENCY_IN_FLIGHT responses to their
597
+ eventual cached response, both dispatches' responses carry the
598
+ same media_buy_id. Exactly one media buy was created. The
599
+ resolved-response set has cardinality 1 on media_buy_id.
600
+
601
+ A seller adopting wait-and-replay returns the same response on
602
+ both dispatches directly. A seller adopting reject-and-redirect
603
+ returns the cached response on one dispatch and
604
+ IDEMPOTENCY_IN_FLIGHT on the other; the runner resolves the
605
+ latter by retrying with the same key after `retry_after` and
606
+ observes the cached response. Either path is conformant.
607
+
608
+ sample_request:
609
+ idempotency_key: "$generate:uuid_v4#concurrent_key"
610
+ account:
611
+ brand:
612
+ domain: "acmeoutdoor.example"
613
+ operator: "pinnacle-agency.example"
614
+ brand:
615
+ domain: "acmeoutdoor.example"
616
+ start_time: "asap"
617
+ end_time: "2099-07-31T23:59:59Z"
618
+ packages:
619
+ - product_id: "test-product"
620
+ budget: 5000
621
+ pricing_option_id: "test-pricing"
622
+
623
+ context:
624
+ correlation_id: "idempotency--create_media_buy_concurrent"
625
+ validations:
626
+ - check: cross_response_count_distinct
627
+ path: "media_buy_id"
628
+ allowed_values: [1]
629
+ description: "Concurrent retries produced exactly one distinct media_buy_id across both dispatches (rule 9: first-insert-wins)"
630
+ - check: cross_response_field_equal
631
+ path: "media_buy_id"
632
+ description: "Both dispatches' resolved responses carry the same media_buy_id"
633
+
634
+ reviewer_checks:
635
+ - "Confirm the seller's claim-row / unique-constraint implementation backs the observed first-insert-wins behavior, rather than a happy-path race the test happened to avoid (review code or runbook describing the INSERT … ON CONFLICT pattern on the scope tuple)."
636
+ - "If the seller returned IDEMPOTENCY_IN_FLIGHT on the second dispatch, confirm `error.details.retry_after` was populated with a plausible value (seconds, integer, > 0) and that the cached response was available within the hint window. A seller that consistently overshoots retry_after produces brittle retry timing for buyers."
637
+ - "Confirm the seller's in-flight detection does NOT leak across (authenticated_agent, account_id) scope boundaries — probe with a stolen key from a different scope and verify the response shape and timing match the never-seen-key path."
638
+
558
639
  - id: verify_media_buy_count
559
640
  title: "Verify dedup actually happened"
560
641
  narrative: |
561
- Call get_media_buys to confirm that only TWO media buys were created across
562
- all prior steps one for the initial + replay pair (same key, deduplicated)
563
- and one for the fresh-key request. If the seller ignored the idempotency_key,
564
- there would be three or more.
642
+ Call get_media_buys to confirm the two captured media_buy_ids both exist
643
+ and are distinct. `initial_media_buy_id` was created on the first
644
+ `create_media_buy` call and reused on the replay (same key, deduplicated);
645
+ `fresh_key_media_buy_id` was created on the fresh-key request. The
646
+ `concurrent_retry` phase (when graded) also exercises first-insert-wins
647
+ but its resource is not queried here — that phase has its own
648
+ cross-response cardinality check. If the seller ignored the idempotency_key
649
+ on the replay branch, `initial_media_buy_id` would not match across the
650
+ replay step's response.
565
651
 
566
652
  steps:
567
653
  - id: get_media_buys_dedup_check
568
- title: "Confirm dedup via get_media_buys"
654
+ title: "Confirm captured media_buy_ids exist and are distinct"
569
655
  narrative: |
570
- Query the two media_buy_ids captured from prior steps. Both should exist
571
- and be distinct. This is an end-to-end verification that the replay did
572
- not create a duplicate row.
656
+ Query the two captured media_buy_ids from prior steps. Both should
657
+ exist (proving fresh-key and initial calls each created a real
658
+ resource) and be distinct (proving the fresh-key call was treated as
659
+ a new request, not deduplicated against the initial). This is an
660
+ end-to-end verification that the replay did not create a duplicate row.
573
661
  task: get_media_buys
574
662
  schema_ref: "media-buy/get-media-buys-request.json"
575
663
  response_schema_ref: "media-buy/get-media-buys-response.json"
@@ -577,7 +665,7 @@ phases:
577
665
  comply_scenario: idempotency_verify
578
666
  stateful: true
579
667
  expected: |
580
- Return exactly two media buys with the two captured IDs. Not three.
668
+ Return both captured media buys with the two captured IDs, distinct.
581
669
 
582
670
  sample_request:
583
671
  account:
@@ -604,3 +692,118 @@ phases:
604
692
  path: "context.correlation_id"
605
693
  value: "idempotency--get_media_buys_dedup_check"
606
694
  description: "Context correlation_id returned unchanged"
695
+
696
+ - id: rate_limit_replay_invariant
697
+ title: "RATE_LIMITED responses are not cached as idempotency replays"
698
+ narrative: |
699
+ Per L1/security.mdx#idempotency rule 3 ("Only successful responses
700
+ are cached") and bullet 8 (insert-rate ceiling): when the seller's
701
+ idempotency-cache insert-rate limiter trips and a request receives
702
+ `RATE_LIMITED`, the response MUST NOT be cached as the canonical
703
+ replay for that idempotency_key. A buyer retrying with the same key
704
+ after `error.details.retry_after` elapses MUST observe the real
705
+ handler result (success or a state-dependent error) — not a cached
706
+ rate-limit response that would persist for the entire replay TTL.
707
+
708
+ Without this invariant, `retry_after` is a meaningless signal: a
709
+ buyer who hits the limiter once would receive the cached
710
+ `RATE_LIMITED` on every subsequent retry until the replay window
711
+ expires, regardless of when the limiter actually cleared. The
712
+ invariant collapses a real client-safety regression into a
713
+ cross-response check.
714
+
715
+ This phase runs the `expect_rate_limit_not_replayed` task via the
716
+ `rate_limit_trip_runner` contract. The runner drives a sequential
717
+ fresh-key burst against `create_media_buy` until one request receives
718
+ `RATE_LIMITED`, captures that request's `idempotency_key`, waits the
719
+ response's `retry_after` seconds, then re-submits the captured key
720
+ with the same payload. The cross-response check
721
+ `replay_not_cached_rate_limit` fails if the replay response carries
722
+ `error.code = RATE_LIMITED` (i.e., the cached rate-limit was served
723
+ as the replay).
724
+
725
+ Runners without `rate_limit_trip_runner` skip this phase with a
726
+ stable `not_applicable` marker. Runners with the contract that
727
+ exhaust `max_attempts` without observing `RATE_LIMITED` also grade
728
+ `not_applicable` (reason: `rate_limit_not_triggered`) — a sandbox
729
+ limiter sitting above the contract's burst ceiling is not a seller
730
+ conformance fault, only a configuration choice that prevents the
731
+ invariant from being verified end-to-end.
732
+
733
+ The 60/300 req/sec ceiling itself is NOT attested here. Burst-volume
734
+ measurement is structurally non-deterministic in CI environments and
735
+ remains seller self-attestation per the cache-growth-defense note
736
+ above.
737
+
738
+ steps:
739
+ - id: expect_rate_limit_not_replayed
740
+ title: "Trip the limiter, replay the key after retry_after, assert the cached response is not RATE_LIMITED"
741
+ narrative: |
742
+ The runner fires up to `max_attempts` sequential `create_media_buy`
743
+ requests with fresh UUID v4 idempotency_keys and otherwise-identical
744
+ canonical payloads. On the first response with envelope error_code
745
+ = `RATE_LIMITED`, the runner captures the request's
746
+ `idempotency_key` and the response's `error.details.retry_after`,
747
+ waits that long (capped by `replay_max_wait_seconds`), and
748
+ re-submits the captured key with the same payload but a distinct
749
+ `context.correlation_id` for traceability.
750
+
751
+ The cross-response `replay_not_cached_rate_limit` check compares
752
+ `trip_response.error.code` against `replay_response.error.code`
753
+ (when the replay carries an error envelope) or against the absence
754
+ of error (when the replay carries a success envelope). The check
755
+ fails iff both responses carry `error.code = RATE_LIMITED` — that
756
+ is the cached-replay regression. Any other replay response shape
757
+ passes the invariant: either the handler succeeded (the seller
758
+ correctly re-executed against the cleared budget), or the handler
759
+ returned a different error (the seller correctly re-executed and
760
+ a state-dependent error fired).
761
+
762
+ The `trip_target_sample_request` below intentionally uses a
763
+ minimal `create_media_buy` payload — the goal of the burst is to
764
+ generate insert-rate pressure on the idempotency cache, not to
765
+ exercise the create flow itself. The replay payload is byte-
766
+ identical to the trip request to keep the canonical hash stable.
767
+ task: expect_rate_limit_not_replayed
768
+ requires_contract: rate_limit_trip_runner
769
+ rate_limit_trip:
770
+ trip_target_task: create_media_buy
771
+ max_attempts: 200
772
+ replay_max_wait_seconds: 30
773
+ trip_target_sample_request:
774
+ account:
775
+ brand:
776
+ domain: "acmeoutdoor.example"
777
+ operator: "pinnacle-agency.example"
778
+ brand:
779
+ domain: "acmeoutdoor.example"
780
+ start_time: "asap"
781
+ end_time: "2099-07-31T23:59:59Z"
782
+ packages:
783
+ - product_id: "test-product"
784
+ budget: 5000
785
+ pricing_option_id: "test-pricing"
786
+ context:
787
+ correlation_id: "idempotency--rate_limit_trip_request"
788
+ expected: |
789
+ One of two outcomes:
790
+
791
+ - At least one burst request returns `RATE_LIMITED`. The runner
792
+ captures the request's idempotency_key, waits the response's
793
+ retry_after, replays the captured key, and the replay response
794
+ does NOT carry `error.code = RATE_LIMITED`. The
795
+ `replay_not_cached_rate_limit` check passes.
796
+
797
+ - All `max_attempts` requests complete without producing
798
+ `RATE_LIMITED`. The step grades `not_applicable` with reason
799
+ `rate_limit_not_triggered`. The rest of the storyboard is
800
+ unaffected.
801
+
802
+ validations:
803
+ - check: replay_not_cached_rate_limit
804
+ description: "RATE_LIMITED response on rate-limit trip was not cached as the idempotency replay for the same key"
805
+
806
+ reviewer_checks:
807
+ - "Confirm the seller's idempotency-cache implementation explicitly excludes RATE_LIMITED (and other transient-error) responses from the cached-replay path. Review the storage layer or runbook describing which response classes are persisted under idempotency_key."
808
+ - "Confirm the seller's RATE_LIMITED response carries a usable retry_after value (seconds, integer, > 0, ≤ a documented ceiling). A seller that returns retry_after values larger than buyers' realistic retry windows produces unusable rate-limit signaling."
809
+ - "Confirm the seller's rate-limit budget is scoped per (authenticated_agent, account) tuple — not shared across all agents or accounts globally — so one agent's burst cannot exhaust another's budget."