@adcp/sdk 6.14.0 → 6.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1002) hide show
  1. package/ADCP_VERSION +1 -1
  2. package/compliance/cache/{3.0.7.previous/protocols → 3.0.8/domains}/media-buy/scenarios/creative_fate_after_cancellation.yaml +5 -5
  3. package/compliance/cache/{3.0.7.previous/protocols → 3.0.8/domains}/media-buy/scenarios/governance_approved.yaml +1 -1
  4. package/compliance/cache/{3.0.7/protocols → 3.0.8/domains}/media-buy/scenarios/governance_conditions.yaml +1 -1
  5. package/compliance/cache/{3.0.7/protocols → 3.0.8/domains}/media-buy/scenarios/governance_denied.yaml +1 -1
  6. package/compliance/cache/{3.0.7/protocols → 3.0.8/domains}/media-buy/scenarios/governance_denied_recovery.yaml +3 -3
  7. package/compliance/cache/{3.0.7.previous → 3.0.8}/domains/media-buy/scenarios/invalid_transitions.yaml +1 -1
  8. package/compliance/cache/{3.0.7.previous/protocols → 3.0.8/domains}/media-buy/scenarios/inventory_list_no_match.yaml +1 -1
  9. package/compliance/cache/{3.0.7 → 3.0.8}/domains/media-buy/scenarios/inventory_list_targeting.yaml +1 -1
  10. package/compliance/cache/{3.0.7/protocols → 3.0.8/domains}/media-buy/scenarios/pending_creatives_to_start.yaml +1 -1
  11. package/compliance/cache/{3.0.7 → 3.0.8}/index.json +2 -2
  12. package/compliance/cache/{3.0.7.previous/domains → 3.0.8/protocols}/media-buy/scenarios/creative_fate_after_cancellation.yaml +5 -5
  13. package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/scenarios/governance_approved.yaml +1 -1
  14. package/compliance/cache/{3.0.7.previous/domains → 3.0.8/protocols}/media-buy/scenarios/governance_conditions.yaml +1 -1
  15. package/compliance/cache/{3.0.7.previous → 3.0.8}/protocols/media-buy/scenarios/governance_denied.yaml +1 -1
  16. package/compliance/cache/{3.0.7.previous → 3.0.8}/protocols/media-buy/scenarios/governance_denied_recovery.yaml +3 -3
  17. package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/scenarios/invalid_transitions.yaml +1 -1
  18. package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/scenarios/inventory_list_no_match.yaml +1 -1
  19. package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/scenarios/inventory_list_targeting.yaml +1 -1
  20. package/compliance/cache/{3.0.7.previous → 3.0.8}/protocols/media-buy/scenarios/pending_creatives_to_start.yaml +1 -1
  21. package/compliance/cache/{3.0.7 → 3.0.8.previous}/domains/media-buy/scenarios/creative_fate_after_cancellation.yaml +5 -5
  22. package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/scenarios/governance_approved.yaml +1 -1
  23. package/compliance/cache/{3.0.7 → 3.0.8.previous}/domains/media-buy/scenarios/governance_conditions.yaml +1 -1
  24. package/compliance/cache/{3.0.7 → 3.0.8.previous}/domains/media-buy/scenarios/governance_denied.yaml +1 -1
  25. package/compliance/cache/{3.0.7 → 3.0.8.previous}/domains/media-buy/scenarios/governance_denied_recovery.yaml +3 -3
  26. package/compliance/cache/{3.0.7.previous/protocols → 3.0.8.previous/domains}/media-buy/scenarios/invalid_transitions.yaml +1 -1
  27. package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/scenarios/inventory_list_no_match.yaml +1 -1
  28. package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/scenarios/inventory_list_targeting.yaml +1 -1
  29. package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/scenarios/pending_creatives_to_start.yaml +1 -1
  30. package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/index.json +2 -2
  31. package/compliance/cache/{3.0.7 → 3.0.8.previous}/protocols/media-buy/scenarios/creative_fate_after_cancellation.yaml +5 -5
  32. package/compliance/cache/{3.0.7/domains → 3.0.8.previous/protocols}/media-buy/scenarios/governance_approved.yaml +1 -1
  33. package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/media-buy/scenarios/governance_conditions.yaml +1 -1
  34. package/compliance/cache/{3.0.7.previous/domains → 3.0.8.previous/protocols}/media-buy/scenarios/governance_denied.yaml +1 -1
  35. package/compliance/cache/{3.0.7.previous/domains → 3.0.8.previous/protocols}/media-buy/scenarios/governance_denied_recovery.yaml +3 -3
  36. package/compliance/cache/{3.0.7/domains → 3.0.8.previous/protocols}/media-buy/scenarios/invalid_transitions.yaml +1 -1
  37. package/compliance/cache/{3.0.7/domains → 3.0.8.previous/protocols}/media-buy/scenarios/inventory_list_no_match.yaml +1 -1
  38. package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/media-buy/scenarios/inventory_list_targeting.yaml +1 -1
  39. package/compliance/cache/{3.0.7/domains → 3.0.8.previous/protocols}/media-buy/scenarios/pending_creatives_to_start.yaml +1 -1
  40. package/dist/lib/core/TaskExecutor.d.ts.map +1 -1
  41. package/dist/lib/core/TaskExecutor.js +33 -1
  42. package/dist/lib/core/TaskExecutor.js.map +1 -1
  43. package/dist/lib/index.d.ts +5 -0
  44. package/dist/lib/index.d.ts.map +1 -1
  45. package/dist/lib/index.js +52 -4
  46. package/dist/lib/index.js.map +1 -1
  47. package/dist/lib/schemas-data/3.0/a2ui/bound-value.json +1 -1
  48. package/dist/lib/schemas-data/3.0/a2ui/component.json +1 -1
  49. package/dist/lib/schemas-data/3.0/a2ui/si-catalog.json +25 -25
  50. package/dist/lib/schemas-data/3.0/a2ui/surface.json +2 -2
  51. package/dist/lib/schemas-data/3.0/a2ui/user-action.json +1 -1
  52. package/dist/lib/schemas-data/3.0/account/get-account-financials-request.json +5 -5
  53. package/dist/lib/schemas-data/3.0/account/get-account-financials-response.json +10 -10
  54. package/dist/lib/schemas-data/3.0/account/list-accounts-request.json +4 -4
  55. package/dist/lib/schemas-data/3.0/account/list-accounts-response.json +6 -6
  56. package/dist/lib/schemas-data/3.0/account/report-usage-request.json +5 -5
  57. package/dist/lib/schemas-data/3.0/account/report-usage-response.json +4 -4
  58. package/dist/lib/schemas-data/3.0/account/sync-accounts-request.json +9 -9
  59. package/dist/lib/schemas-data/3.0/account/sync-accounts-response.json +12 -12
  60. package/dist/lib/schemas-data/3.0/account/sync-governance-request.json +5 -5
  61. package/dist/lib/schemas-data/3.0/account/sync-governance-response.json +8 -8
  62. package/dist/lib/schemas-data/3.0/adagents.json +32 -32
  63. package/dist/lib/schemas-data/3.0/brand/acquire-rights-request.json +8 -8
  64. package/dist/lib/schemas-data/3.0/brand/acquire-rights-response.json +14 -14
  65. package/dist/lib/schemas-data/3.0/brand/creative-approval-request.json +4 -4
  66. package/dist/lib/schemas-data/3.0/brand/creative-approval-response.json +10 -10
  67. package/dist/lib/schemas-data/3.0/brand/get-brand-identity-request.json +3 -3
  68. package/dist/lib/schemas-data/3.0/brand/get-brand-identity-response.json +8 -8
  69. package/dist/lib/schemas-data/3.0/brand/get-rights-request.json +7 -7
  70. package/dist/lib/schemas-data/3.0/brand/get-rights-response.json +9 -9
  71. package/dist/lib/schemas-data/3.0/brand/revocation-notification.json +4 -4
  72. package/dist/lib/schemas-data/3.0/brand/rights-pricing-option.json +5 -5
  73. package/dist/lib/schemas-data/3.0/brand/rights-terms.json +3 -3
  74. package/dist/lib/schemas-data/3.0/brand/update-rights-request.json +4 -4
  75. package/dist/lib/schemas-data/3.0/brand/update-rights-response.json +9 -9
  76. package/dist/lib/schemas-data/3.0/brand.json +14 -14
  77. package/dist/lib/schemas-data/3.0/bundled/content-standards/calibrate-content-request.json +2 -2
  78. package/dist/lib/schemas-data/3.0/bundled/content-standards/calibrate-content-response.json +2 -2
  79. package/dist/lib/schemas-data/3.0/bundled/content-standards/create-content-standards-request.json +2 -2
  80. package/dist/lib/schemas-data/3.0/bundled/content-standards/create-content-standards-response.json +2 -2
  81. package/dist/lib/schemas-data/3.0/bundled/content-standards/get-content-standards-request.json +2 -2
  82. package/dist/lib/schemas-data/3.0/bundled/content-standards/get-content-standards-response.json +2 -2
  83. package/dist/lib/schemas-data/3.0/bundled/content-standards/get-media-buy-artifacts-request.json +2 -2
  84. package/dist/lib/schemas-data/3.0/bundled/content-standards/get-media-buy-artifacts-response.json +2 -2
  85. package/dist/lib/schemas-data/3.0/bundled/content-standards/list-content-standards-request.json +2 -2
  86. package/dist/lib/schemas-data/3.0/bundled/content-standards/list-content-standards-response.json +2 -2
  87. package/dist/lib/schemas-data/3.0/bundled/content-standards/update-content-standards-request.json +2 -2
  88. package/dist/lib/schemas-data/3.0/bundled/content-standards/update-content-standards-response.json +2 -2
  89. package/dist/lib/schemas-data/3.0/bundled/content-standards/validate-content-delivery-request.json +2 -2
  90. package/dist/lib/schemas-data/3.0/bundled/content-standards/validate-content-delivery-response.json +2 -2
  91. package/dist/lib/schemas-data/3.0/bundled/core/tasks-get-request.json +2 -2
  92. package/dist/lib/schemas-data/3.0/bundled/core/tasks-get-response.json +2 -2
  93. package/dist/lib/schemas-data/3.0/bundled/core/tasks-list-request.json +2 -2
  94. package/dist/lib/schemas-data/3.0/bundled/core/tasks-list-response.json +2 -2
  95. package/dist/lib/schemas-data/3.0/bundled/creative/get-creative-delivery-request.json +2 -2
  96. package/dist/lib/schemas-data/3.0/bundled/creative/get-creative-delivery-response.json +2 -2
  97. package/dist/lib/schemas-data/3.0/bundled/creative/get-creative-features-request.json +2 -2
  98. package/dist/lib/schemas-data/3.0/bundled/creative/get-creative-features-response.json +2 -2
  99. package/dist/lib/schemas-data/3.0/bundled/creative/list-creative-formats-request.json +2 -2
  100. package/dist/lib/schemas-data/3.0/bundled/creative/list-creative-formats-response.json +2 -2
  101. package/dist/lib/schemas-data/3.0/bundled/creative/list-creatives-request.json +2 -2
  102. package/dist/lib/schemas-data/3.0/bundled/creative/list-creatives-response.json +2 -2
  103. package/dist/lib/schemas-data/3.0/bundled/creative/preview-creative-request.json +2 -2
  104. package/dist/lib/schemas-data/3.0/bundled/creative/preview-creative-response.json +2 -2
  105. package/dist/lib/schemas-data/3.0/bundled/creative/sync-creatives-request.json +2 -2
  106. package/dist/lib/schemas-data/3.0/bundled/creative/sync-creatives-response.json +2 -2
  107. package/dist/lib/schemas-data/3.0/bundled/media-buy/build-creative-request.json +2 -2
  108. package/dist/lib/schemas-data/3.0/bundled/media-buy/build-creative-response.json +2 -2
  109. package/dist/lib/schemas-data/3.0/bundled/media-buy/create-media-buy-request.json +2 -2
  110. package/dist/lib/schemas-data/3.0/bundled/media-buy/create-media-buy-response.json +2 -2
  111. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-media-buy-delivery-request.json +2 -2
  112. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-media-buy-delivery-response.json +2 -2
  113. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-media-buys-request.json +2 -2
  114. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-media-buys-response.json +2 -2
  115. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-products-request.json +2 -2
  116. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-products-response.json +2 -2
  117. package/dist/lib/schemas-data/3.0/bundled/media-buy/list-creative-formats-request.json +2 -2
  118. package/dist/lib/schemas-data/3.0/bundled/media-buy/list-creative-formats-response.json +2 -2
  119. package/dist/lib/schemas-data/3.0/bundled/media-buy/log-event-request.json +2 -2
  120. package/dist/lib/schemas-data/3.0/bundled/media-buy/log-event-response.json +2 -2
  121. package/dist/lib/schemas-data/3.0/bundled/media-buy/package-request.json +2 -2
  122. package/dist/lib/schemas-data/3.0/bundled/media-buy/provide-performance-feedback-request.json +2 -2
  123. package/dist/lib/schemas-data/3.0/bundled/media-buy/provide-performance-feedback-response.json +2 -2
  124. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-audiences-request.json +2 -2
  125. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-audiences-response.json +2 -2
  126. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-catalogs-request.json +2 -2
  127. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-catalogs-response.json +2 -2
  128. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-event-sources-request.json +2 -2
  129. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-event-sources-response.json +2 -2
  130. package/dist/lib/schemas-data/3.0/bundled/media-buy/update-media-buy-request.json +2 -2
  131. package/dist/lib/schemas-data/3.0/bundled/media-buy/update-media-buy-response.json +2 -2
  132. package/dist/lib/schemas-data/3.0/bundled/property/create-property-list-request.json +2 -2
  133. package/dist/lib/schemas-data/3.0/bundled/property/create-property-list-response.json +2 -2
  134. package/dist/lib/schemas-data/3.0/bundled/property/delete-property-list-request.json +2 -2
  135. package/dist/lib/schemas-data/3.0/bundled/property/delete-property-list-response.json +2 -2
  136. package/dist/lib/schemas-data/3.0/bundled/property/get-property-list-request.json +2 -2
  137. package/dist/lib/schemas-data/3.0/bundled/property/get-property-list-response.json +2 -2
  138. package/dist/lib/schemas-data/3.0/bundled/property/list-property-lists-request.json +2 -2
  139. package/dist/lib/schemas-data/3.0/bundled/property/list-property-lists-response.json +2 -2
  140. package/dist/lib/schemas-data/3.0/bundled/property/update-property-list-request.json +2 -2
  141. package/dist/lib/schemas-data/3.0/bundled/property/update-property-list-response.json +2 -2
  142. package/dist/lib/schemas-data/3.0/bundled/property/validate-property-delivery-request.json +2 -2
  143. package/dist/lib/schemas-data/3.0/bundled/property/validate-property-delivery-response.json +2 -2
  144. package/dist/lib/schemas-data/3.0/bundled/protocol/get-adcp-capabilities-request.json +2 -2
  145. package/dist/lib/schemas-data/3.0/bundled/protocol/get-adcp-capabilities-response.json +2 -2
  146. package/dist/lib/schemas-data/3.0/bundled/signals/activate-signal-request.json +2 -2
  147. package/dist/lib/schemas-data/3.0/bundled/signals/activate-signal-response.json +2 -2
  148. package/dist/lib/schemas-data/3.0/bundled/signals/get-signals-request.json +2 -2
  149. package/dist/lib/schemas-data/3.0/bundled/signals/get-signals-response.json +2 -2
  150. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-get-offering-request.json +2 -2
  151. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-get-offering-response.json +2 -2
  152. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-initiate-session-request.json +2 -2
  153. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-initiate-session-response.json +2 -2
  154. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-send-message-request.json +2 -2
  155. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-send-message-response.json +2 -2
  156. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-terminate-session-request.json +2 -2
  157. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-terminate-session-response.json +2 -2
  158. package/dist/lib/schemas-data/3.0/collection/base-collection-source.json +3 -3
  159. package/dist/lib/schemas-data/3.0/collection/collection-list-changed-webhook.json +2 -2
  160. package/dist/lib/schemas-data/3.0/collection/collection-list-filters.json +7 -7
  161. package/dist/lib/schemas-data/3.0/collection/collection-list.json +5 -5
  162. package/dist/lib/schemas-data/3.0/collection/create-collection-list-request.json +7 -7
  163. package/dist/lib/schemas-data/3.0/collection/create-collection-list-response.json +4 -4
  164. package/dist/lib/schemas-data/3.0/collection/delete-collection-list-request.json +4 -4
  165. package/dist/lib/schemas-data/3.0/collection/delete-collection-list-response.json +3 -3
  166. package/dist/lib/schemas-data/3.0/collection/get-collection-list-request.json +4 -4
  167. package/dist/lib/schemas-data/3.0/collection/get-collection-list-response.json +10 -10
  168. package/dist/lib/schemas-data/3.0/collection/list-collection-lists-request.json +5 -5
  169. package/dist/lib/schemas-data/3.0/collection/list-collection-lists-response.json +5 -5
  170. package/dist/lib/schemas-data/3.0/collection/update-collection-list-request.json +7 -7
  171. package/dist/lib/schemas-data/3.0/collection/update-collection-list-response.json +4 -4
  172. package/dist/lib/schemas-data/3.0/content-standards/artifact-webhook-payload.json +3 -3
  173. package/dist/lib/schemas-data/3.0/content-standards/artifact.json +7 -7
  174. package/dist/lib/schemas-data/3.0/content-standards/calibrate-content-request.json +4 -4
  175. package/dist/lib/schemas-data/3.0/content-standards/calibrate-content-response.json +8 -8
  176. package/dist/lib/schemas-data/3.0/content-standards/content-standards.json +7 -7
  177. package/dist/lib/schemas-data/3.0/content-standards/create-content-standards-request.json +7 -7
  178. package/dist/lib/schemas-data/3.0/content-standards/create-content-standards-response.json +6 -6
  179. package/dist/lib/schemas-data/3.0/content-standards/get-content-standards-request.json +3 -3
  180. package/dist/lib/schemas-data/3.0/content-standards/get-content-standards-response.json +7 -7
  181. package/dist/lib/schemas-data/3.0/content-standards/get-media-buy-artifacts-request.json +4 -4
  182. package/dist/lib/schemas-data/3.0/content-standards/get-media-buy-artifacts-response.json +8 -8
  183. package/dist/lib/schemas-data/3.0/content-standards/list-content-standards-request.json +5 -5
  184. package/dist/lib/schemas-data/3.0/content-standards/list-content-standards-response.json +8 -8
  185. package/dist/lib/schemas-data/3.0/content-standards/update-content-standards-request.json +7 -7
  186. package/dist/lib/schemas-data/3.0/content-standards/update-content-standards-response.json +6 -6
  187. package/dist/lib/schemas-data/3.0/content-standards/validate-content-delivery-request.json +4 -4
  188. package/dist/lib/schemas-data/3.0/content-standards/validate-content-delivery-response.json +8 -8
  189. package/dist/lib/schemas-data/3.0/core/account-ref.json +2 -2
  190. package/dist/lib/schemas-data/3.0/core/account.json +9 -9
  191. package/dist/lib/schemas-data/3.0/core/activation-key.json +1 -1
  192. package/dist/lib/schemas-data/3.0/core/ad-inventory-config.json +1 -1
  193. package/dist/lib/schemas-data/3.0/core/agent-encryption-key.json +1 -1
  194. package/dist/lib/schemas-data/3.0/core/agent-signing-key.json +1 -1
  195. package/dist/lib/schemas-data/3.0/core/app-item.json +4 -4
  196. package/dist/lib/schemas-data/3.0/core/assets/asset-union.json +15 -15
  197. package/dist/lib/schemas-data/3.0/core/assets/audio-asset.json +3 -3
  198. package/dist/lib/schemas-data/3.0/core/assets/brief-asset.json +2 -2
  199. package/dist/lib/schemas-data/3.0/core/assets/catalog-asset.json +2 -2
  200. package/dist/lib/schemas-data/3.0/core/assets/css-asset.json +2 -2
  201. package/dist/lib/schemas-data/3.0/core/assets/daast-asset.json +4 -4
  202. package/dist/lib/schemas-data/3.0/core/assets/html-asset.json +2 -2
  203. package/dist/lib/schemas-data/3.0/core/assets/image-asset.json +2 -2
  204. package/dist/lib/schemas-data/3.0/core/assets/javascript-asset.json +3 -3
  205. package/dist/lib/schemas-data/3.0/core/assets/markdown-asset.json +2 -2
  206. package/dist/lib/schemas-data/3.0/core/assets/text-asset.json +2 -2
  207. package/dist/lib/schemas-data/3.0/core/assets/url-asset.json +3 -3
  208. package/dist/lib/schemas-data/3.0/core/assets/vast-asset.json +4 -4
  209. package/dist/lib/schemas-data/3.0/core/assets/video-asset.json +7 -7
  210. package/dist/lib/schemas-data/3.0/core/assets/webhook-asset.json +7 -7
  211. package/dist/lib/schemas-data/3.0/core/async-response-data.json +25 -25
  212. package/dist/lib/schemas-data/3.0/core/attribution-window.json +4 -4
  213. package/dist/lib/schemas-data/3.0/core/audience-member.json +3 -3
  214. package/dist/lib/schemas-data/3.0/core/audience-selector.json +4 -4
  215. package/dist/lib/schemas-data/3.0/core/brand-id.json +1 -1
  216. package/dist/lib/schemas-data/3.0/core/brand-ref.json +2 -2
  217. package/dist/lib/schemas-data/3.0/core/business-entity.json +2 -2
  218. package/dist/lib/schemas-data/3.0/core/cancellation-policy.json +2 -2
  219. package/dist/lib/schemas-data/3.0/core/catalog-field-mapping.json +2 -2
  220. package/dist/lib/schemas-data/3.0/core/catalog.json +7 -7
  221. package/dist/lib/schemas-data/3.0/core/catchment.json +5 -5
  222. package/dist/lib/schemas-data/3.0/core/collection-distribution.json +2 -2
  223. package/dist/lib/schemas-data/3.0/core/collection-list-ref.json +1 -1
  224. package/dist/lib/schemas-data/3.0/core/collection-selector.json +1 -1
  225. package/dist/lib/schemas-data/3.0/core/collection.json +13 -13
  226. package/dist/lib/schemas-data/3.0/core/content-rating.json +2 -2
  227. package/dist/lib/schemas-data/3.0/core/context.json +1 -1
  228. package/dist/lib/schemas-data/3.0/core/creative-asset.json +6 -6
  229. package/dist/lib/schemas-data/3.0/core/creative-assignment.json +1 -1
  230. package/dist/lib/schemas-data/3.0/core/creative-brief.json +4 -4
  231. package/dist/lib/schemas-data/3.0/core/creative-consumption.json +1 -1
  232. package/dist/lib/schemas-data/3.0/core/creative-filters.json +4 -4
  233. package/dist/lib/schemas-data/3.0/core/creative-item.json +1 -1
  234. package/dist/lib/schemas-data/3.0/core/creative-manifest.json +7 -7
  235. package/dist/lib/schemas-data/3.0/core/creative-policy.json +3 -3
  236. package/dist/lib/schemas-data/3.0/core/creative-variable.json +1 -1
  237. package/dist/lib/schemas-data/3.0/core/creative-variant.json +5 -5
  238. package/dist/lib/schemas-data/3.0/core/data-provider-signal-selector.json +1 -1
  239. package/dist/lib/schemas-data/3.0/core/date-range.json +1 -1
  240. package/dist/lib/schemas-data/3.0/core/datetime-range.json +1 -1
  241. package/dist/lib/schemas-data/3.0/core/daypart-target.json +2 -2
  242. package/dist/lib/schemas-data/3.0/core/deadline-policy.json +1 -1
  243. package/dist/lib/schemas-data/3.0/core/delivery-forecast.json +7 -7
  244. package/dist/lib/schemas-data/3.0/core/delivery-metrics.json +5 -5
  245. package/dist/lib/schemas-data/3.0/core/deployment.json +3 -3
  246. package/dist/lib/schemas-data/3.0/core/destination-item.json +4 -4
  247. package/dist/lib/schemas-data/3.0/core/destination.json +1 -1
  248. package/dist/lib/schemas-data/3.0/core/diagnostic-issue.json +1 -1
  249. package/dist/lib/schemas-data/3.0/core/duration.json +1 -1
  250. package/dist/lib/schemas-data/3.0/core/education-item.json +4 -4
  251. package/dist/lib/schemas-data/3.0/core/error.json +1 -1
  252. package/dist/lib/schemas-data/3.0/core/event-custom-data.json +2 -2
  253. package/dist/lib/schemas-data/3.0/core/event-source-health.json +3 -3
  254. package/dist/lib/schemas-data/3.0/core/event.json +6 -6
  255. package/dist/lib/schemas-data/3.0/core/ext.json +1 -1
  256. package/dist/lib/schemas-data/3.0/core/feature-requirement.json +1 -1
  257. package/dist/lib/schemas-data/3.0/core/flight-item.json +4 -4
  258. package/dist/lib/schemas-data/3.0/core/forecast-point.json +18 -18
  259. package/dist/lib/schemas-data/3.0/core/forecast-range.json +1 -1
  260. package/dist/lib/schemas-data/3.0/core/format-id.json +1 -1
  261. package/dist/lib/schemas-data/3.0/core/format.json +42 -42
  262. package/dist/lib/schemas-data/3.0/core/frequency-cap.json +4 -4
  263. package/dist/lib/schemas-data/3.0/core/generation-credential.json +3 -3
  264. package/dist/lib/schemas-data/3.0/core/geo-breakdown-support.json +3 -3
  265. package/dist/lib/schemas-data/3.0/core/hotel-item.json +4 -4
  266. package/dist/lib/schemas-data/3.0/core/identifier.json +2 -2
  267. package/dist/lib/schemas-data/3.0/core/industry-identifier.json +2 -2
  268. package/dist/lib/schemas-data/3.0/core/insertion-order.json +1 -1
  269. package/dist/lib/schemas-data/3.0/core/installment-deadlines.json +2 -2
  270. package/dist/lib/schemas-data/3.0/core/installment.json +9 -9
  271. package/dist/lib/schemas-data/3.0/core/job-item.json +3 -3
  272. package/dist/lib/schemas-data/3.0/core/limited-series.json +1 -1
  273. package/dist/lib/schemas-data/3.0/core/material-deadline.json +1 -1
  274. package/dist/lib/schemas-data/3.0/core/mcp-webhook-payload.json +5 -5
  275. package/dist/lib/schemas-data/3.0/core/measurement-readiness.json +5 -5
  276. package/dist/lib/schemas-data/3.0/core/measurement-terms.json +3 -3
  277. package/dist/lib/schemas-data/3.0/core/measurement-window.json +1 -1
  278. package/dist/lib/schemas-data/3.0/core/media-buy-features.json +1 -1
  279. package/dist/lib/schemas-data/3.0/core/media-buy.json +7 -7
  280. package/dist/lib/schemas-data/3.0/core/offering-asset-group.json +15 -15
  281. package/dist/lib/schemas-data/3.0/core/offering.json +5 -5
  282. package/dist/lib/schemas-data/3.0/core/optimization-goal.json +6 -6
  283. package/dist/lib/schemas-data/3.0/core/outcome-measurement.json +2 -2
  284. package/dist/lib/schemas-data/3.0/core/overlay.json +1 -1
  285. package/dist/lib/schemas-data/3.0/core/package.json +14 -14
  286. package/dist/lib/schemas-data/3.0/core/pagination-request.json +1 -1
  287. package/dist/lib/schemas-data/3.0/core/pagination-response.json +1 -1
  288. package/dist/lib/schemas-data/3.0/core/performance-feedback.json +3 -3
  289. package/dist/lib/schemas-data/3.0/core/performance-standard.json +4 -4
  290. package/dist/lib/schemas-data/3.0/core/placement-definition.json +5 -5
  291. package/dist/lib/schemas-data/3.0/core/placement.json +2 -2
  292. package/dist/lib/schemas-data/3.0/core/planned-delivery.json +5 -5
  293. package/dist/lib/schemas-data/3.0/core/price.json +1 -1
  294. package/dist/lib/schemas-data/3.0/core/pricing-option.json +10 -10
  295. package/dist/lib/schemas-data/3.0/core/product-allocation.json +4 -4
  296. package/dist/lib/schemas-data/3.0/core/product-filters.json +16 -16
  297. package/dist/lib/schemas-data/3.0/core/product.json +28 -28
  298. package/dist/lib/schemas-data/3.0/core/property-id.json +1 -1
  299. package/dist/lib/schemas-data/3.0/core/property-list-ref.json +1 -1
  300. package/dist/lib/schemas-data/3.0/core/property-tag.json +1 -1
  301. package/dist/lib/schemas-data/3.0/core/property.json +6 -6
  302. package/dist/lib/schemas-data/3.0/core/proposal.json +6 -6
  303. package/dist/lib/schemas-data/3.0/core/protocol-envelope.json +3 -3
  304. package/dist/lib/schemas-data/3.0/core/provenance.json +6 -6
  305. package/dist/lib/schemas-data/3.0/core/publisher-property-selector.json +3 -3
  306. package/dist/lib/schemas-data/3.0/core/push-notification-config.json +2 -2
  307. package/dist/lib/schemas-data/3.0/core/real-estate-item.json +4 -4
  308. package/dist/lib/schemas-data/3.0/core/reference-asset.json +1 -1
  309. package/dist/lib/schemas-data/3.0/core/reporting-capabilities.json +5 -5
  310. package/dist/lib/schemas-data/3.0/core/reporting-webhook.json +3 -3
  311. package/dist/lib/schemas-data/3.0/core/requirements/asset-requirements.json +13 -13
  312. package/dist/lib/schemas-data/3.0/core/requirements/audio-asset-requirements.json +1 -1
  313. package/dist/lib/schemas-data/3.0/core/requirements/catalog-field-binding.json +4 -4
  314. package/dist/lib/schemas-data/3.0/core/requirements/catalog-requirements.json +5 -5
  315. package/dist/lib/schemas-data/3.0/core/requirements/css-asset-requirements.json +1 -1
  316. package/dist/lib/schemas-data/3.0/core/requirements/daast-asset-requirements.json +1 -1
  317. package/dist/lib/schemas-data/3.0/core/requirements/html-asset-requirements.json +1 -1
  318. package/dist/lib/schemas-data/3.0/core/requirements/image-asset-requirements.json +2 -2
  319. package/dist/lib/schemas-data/3.0/core/requirements/javascript-asset-requirements.json +1 -1
  320. package/dist/lib/schemas-data/3.0/core/requirements/markdown-asset-requirements.json +1 -1
  321. package/dist/lib/schemas-data/3.0/core/requirements/offering-asset-constraint.json +4 -4
  322. package/dist/lib/schemas-data/3.0/core/requirements/text-asset-requirements.json +1 -1
  323. package/dist/lib/schemas-data/3.0/core/requirements/url-asset-requirements.json +1 -1
  324. package/dist/lib/schemas-data/3.0/core/requirements/vast-asset-requirements.json +1 -1
  325. package/dist/lib/schemas-data/3.0/core/requirements/video-asset-requirements.json +6 -6
  326. package/dist/lib/schemas-data/3.0/core/requirements/webhook-asset-requirements.json +1 -1
  327. package/dist/lib/schemas-data/3.0/core/response.json +1 -1
  328. package/dist/lib/schemas-data/3.0/core/rights-constraint.json +4 -4
  329. package/dist/lib/schemas-data/3.0/core/seller-agent-ref.json +1 -1
  330. package/dist/lib/schemas-data/3.0/core/signal-definition.json +3 -3
  331. package/dist/lib/schemas-data/3.0/core/signal-filters.json +2 -2
  332. package/dist/lib/schemas-data/3.0/core/signal-id.json +1 -1
  333. package/dist/lib/schemas-data/3.0/core/signal-pricing-option.json +2 -2
  334. package/dist/lib/schemas-data/3.0/core/signal-pricing.json +6 -6
  335. package/dist/lib/schemas-data/3.0/core/signal-targeting.json +4 -4
  336. package/dist/lib/schemas-data/3.0/core/special.json +2 -2
  337. package/dist/lib/schemas-data/3.0/core/start-timing.json +1 -1
  338. package/dist/lib/schemas-data/3.0/core/store-item.json +3 -3
  339. package/dist/lib/schemas-data/3.0/core/talent.json +2 -2
  340. package/dist/lib/schemas-data/3.0/core/targeting.json +20 -20
  341. package/dist/lib/schemas-data/3.0/core/tasks-get-request.json +3 -3
  342. package/dist/lib/schemas-data/3.0/core/tasks-get-response.json +7 -7
  343. package/dist/lib/schemas-data/3.0/core/tasks-list-request.json +11 -11
  344. package/dist/lib/schemas-data/3.0/core/tasks-list-response.json +6 -6
  345. package/dist/lib/schemas-data/3.0/core/user-match.json +3 -3
  346. package/dist/lib/schemas-data/3.0/core/vehicle-item.json +4 -4
  347. package/dist/lib/schemas-data/3.0/core/vendor-pricing-option.json +2 -2
  348. package/dist/lib/schemas-data/3.0/core/x-entity-types.json +1 -1
  349. package/dist/lib/schemas-data/3.0/creative/asset-types/index.json +4 -4
  350. package/dist/lib/schemas-data/3.0/creative/creative-feature-result.json +2 -2
  351. package/dist/lib/schemas-data/3.0/creative/get-creative-delivery-request.json +5 -5
  352. package/dist/lib/schemas-data/3.0/creative/get-creative-delivery-response.json +7 -7
  353. package/dist/lib/schemas-data/3.0/creative/get-creative-features-request.json +5 -5
  354. package/dist/lib/schemas-data/3.0/creative/get-creative-features-response.json +8 -8
  355. package/dist/lib/schemas-data/3.0/creative/list-creative-formats-request.json +11 -11
  356. package/dist/lib/schemas-data/3.0/creative/list-creative-formats-response.json +7 -7
  357. package/dist/lib/schemas-data/3.0/creative/list-creatives-request.json +8 -8
  358. package/dist/lib/schemas-data/3.0/creative/list-creatives-response.json +14 -14
  359. package/dist/lib/schemas-data/3.0/creative/preview-creative-request.json +11 -11
  360. package/dist/lib/schemas-data/3.0/creative/preview-creative-response.json +12 -12
  361. package/dist/lib/schemas-data/3.0/creative/preview-render.json +1 -1
  362. package/dist/lib/schemas-data/3.0/creative/sync-creatives-async-response-input-required.json +3 -3
  363. package/dist/lib/schemas-data/3.0/creative/sync-creatives-async-response-submitted.json +3 -3
  364. package/dist/lib/schemas-data/3.0/creative/sync-creatives-async-response-working.json +3 -3
  365. package/dist/lib/schemas-data/3.0/creative/sync-creatives-request.json +7 -7
  366. package/dist/lib/schemas-data/3.0/creative/sync-creatives-response.json +13 -13
  367. package/dist/lib/schemas-data/3.0/enums/account-scope.json +1 -1
  368. package/dist/lib/schemas-data/3.0/enums/account-status.json +1 -1
  369. package/dist/lib/schemas-data/3.0/enums/action-source.json +1 -1
  370. package/dist/lib/schemas-data/3.0/enums/adcp-protocol.json +1 -1
  371. package/dist/lib/schemas-data/3.0/enums/adjustment-kind.json +1 -1
  372. package/dist/lib/schemas-data/3.0/enums/advertiser-industry.json +1 -1
  373. package/dist/lib/schemas-data/3.0/enums/age-verification-method.json +1 -1
  374. package/dist/lib/schemas-data/3.0/enums/assessment-status.json +1 -1
  375. package/dist/lib/schemas-data/3.0/enums/asset-content-type.json +1 -1
  376. package/dist/lib/schemas-data/3.0/enums/attribution-model.json +1 -1
  377. package/dist/lib/schemas-data/3.0/enums/audience-source.json +1 -1
  378. package/dist/lib/schemas-data/3.0/enums/audience-status.json +1 -1
  379. package/dist/lib/schemas-data/3.0/enums/audio-channel-layout.json +1 -1
  380. package/dist/lib/schemas-data/3.0/enums/auth-scheme.json +1 -1
  381. package/dist/lib/schemas-data/3.0/enums/available-metric.json +1 -1
  382. package/dist/lib/schemas-data/3.0/enums/billing-party.json +1 -1
  383. package/dist/lib/schemas-data/3.0/enums/binary-verdict.json +1 -1
  384. package/dist/lib/schemas-data/3.0/enums/brand-agent-type.json +1 -1
  385. package/dist/lib/schemas-data/3.0/enums/canceled-by.json +1 -1
  386. package/dist/lib/schemas-data/3.0/enums/catalog-action.json +1 -1
  387. package/dist/lib/schemas-data/3.0/enums/catalog-item-status.json +1 -1
  388. package/dist/lib/schemas-data/3.0/enums/catalog-type.json +1 -1
  389. package/dist/lib/schemas-data/3.0/enums/channels.json +1 -1
  390. package/dist/lib/schemas-data/3.0/enums/cloud-storage-protocol.json +1 -1
  391. package/dist/lib/schemas-data/3.0/enums/co-branding-requirement.json +1 -1
  392. package/dist/lib/schemas-data/3.0/enums/collection-cadence.json +1 -1
  393. package/dist/lib/schemas-data/3.0/enums/collection-kind.json +1 -1
  394. package/dist/lib/schemas-data/3.0/enums/collection-relationship.json +1 -1
  395. package/dist/lib/schemas-data/3.0/enums/collection-status.json +1 -1
  396. package/dist/lib/schemas-data/3.0/enums/consent-basis.json +1 -1
  397. package/dist/lib/schemas-data/3.0/enums/content-id-type.json +1 -1
  398. package/dist/lib/schemas-data/3.0/enums/content-rating-system.json +1 -1
  399. package/dist/lib/schemas-data/3.0/enums/creative-action.json +1 -1
  400. package/dist/lib/schemas-data/3.0/enums/creative-agent-capability.json +1 -1
  401. package/dist/lib/schemas-data/3.0/enums/creative-approval-status.json +1 -1
  402. package/dist/lib/schemas-data/3.0/enums/creative-identifier-type.json +1 -1
  403. package/dist/lib/schemas-data/3.0/enums/creative-quality.json +1 -1
  404. package/dist/lib/schemas-data/3.0/enums/creative-sort-field.json +1 -1
  405. package/dist/lib/schemas-data/3.0/enums/creative-status.json +1 -1
  406. package/dist/lib/schemas-data/3.0/enums/daast-tracking-event.json +1 -1
  407. package/dist/lib/schemas-data/3.0/enums/daast-version.json +1 -1
  408. package/dist/lib/schemas-data/3.0/enums/day-of-week.json +1 -1
  409. package/dist/lib/schemas-data/3.0/enums/delegation-authority.json +1 -1
  410. package/dist/lib/schemas-data/3.0/enums/delivery-type.json +1 -1
  411. package/dist/lib/schemas-data/3.0/enums/demographic-system.json +1 -1
  412. package/dist/lib/schemas-data/3.0/enums/derivative-type.json +1 -1
  413. package/dist/lib/schemas-data/3.0/enums/device-platform.json +1 -1
  414. package/dist/lib/schemas-data/3.0/enums/device-type.json +1 -1
  415. package/dist/lib/schemas-data/3.0/enums/digital-source-type.json +1 -1
  416. package/dist/lib/schemas-data/3.0/enums/dimension-unit.json +1 -1
  417. package/dist/lib/schemas-data/3.0/enums/disclosure-persistence.json +1 -1
  418. package/dist/lib/schemas-data/3.0/enums/disclosure-position.json +1 -1
  419. package/dist/lib/schemas-data/3.0/enums/distance-unit.json +1 -1
  420. package/dist/lib/schemas-data/3.0/enums/distribution-identifier-type.json +1 -1
  421. package/dist/lib/schemas-data/3.0/enums/error-code.json +1 -1
  422. package/dist/lib/schemas-data/3.0/enums/escalation-severity.json +1 -1
  423. package/dist/lib/schemas-data/3.0/enums/event-type.json +1 -1
  424. package/dist/lib/schemas-data/3.0/enums/exclusivity.json +1 -1
  425. package/dist/lib/schemas-data/3.0/enums/feature-check-status.json +1 -1
  426. package/dist/lib/schemas-data/3.0/enums/feed-format.json +1 -1
  427. package/dist/lib/schemas-data/3.0/enums/feedback-source.json +1 -1
  428. package/dist/lib/schemas-data/3.0/enums/forecast-method.json +1 -1
  429. package/dist/lib/schemas-data/3.0/enums/forecast-range-unit.json +1 -1
  430. package/dist/lib/schemas-data/3.0/enums/forecastable-metric.json +1 -1
  431. package/dist/lib/schemas-data/3.0/enums/format-id-parameter.json +1 -1
  432. package/dist/lib/schemas-data/3.0/enums/frame-rate-type.json +1 -1
  433. package/dist/lib/schemas-data/3.0/enums/frequency-cap-scope.json +1 -1
  434. package/dist/lib/schemas-data/3.0/enums/genre-taxonomy.json +1 -1
  435. package/dist/lib/schemas-data/3.0/enums/geo-level.json +1 -1
  436. package/dist/lib/schemas-data/3.0/enums/gop-type.json +1 -1
  437. package/dist/lib/schemas-data/3.0/enums/governance-decision.json +1 -1
  438. package/dist/lib/schemas-data/3.0/enums/governance-domain.json +1 -1
  439. package/dist/lib/schemas-data/3.0/enums/governance-mode.json +1 -1
  440. package/dist/lib/schemas-data/3.0/enums/governance-phase.json +1 -1
  441. package/dist/lib/schemas-data/3.0/enums/history-entry-type.json +1 -1
  442. package/dist/lib/schemas-data/3.0/enums/http-method.json +1 -1
  443. package/dist/lib/schemas-data/3.0/enums/identifier-types.json +1 -1
  444. package/dist/lib/schemas-data/3.0/enums/installment-status.json +1 -1
  445. package/dist/lib/schemas-data/3.0/enums/javascript-module-type.json +1 -1
  446. package/dist/lib/schemas-data/3.0/enums/landing-page-requirement.json +1 -1
  447. package/dist/lib/schemas-data/3.0/enums/makegood-remedy.json +1 -1
  448. package/dist/lib/schemas-data/3.0/enums/markdown-flavor.json +1 -1
  449. package/dist/lib/schemas-data/3.0/enums/match-id-type.json +1 -1
  450. package/dist/lib/schemas-data/3.0/enums/match-type.json +1 -1
  451. package/dist/lib/schemas-data/3.0/enums/media-buy-status.json +1 -1
  452. package/dist/lib/schemas-data/3.0/enums/media-buy-valid-action.json +1 -1
  453. package/dist/lib/schemas-data/3.0/enums/metric-type.json +1 -1
  454. package/dist/lib/schemas-data/3.0/enums/metro-system.json +1 -1
  455. package/dist/lib/schemas-data/3.0/enums/moov-atom-position.json +1 -1
  456. package/dist/lib/schemas-data/3.0/enums/notification-type.json +1 -1
  457. package/dist/lib/schemas-data/3.0/enums/outcome-type.json +1 -1
  458. package/dist/lib/schemas-data/3.0/enums/pacing.json +1 -1
  459. package/dist/lib/schemas-data/3.0/enums/payment-terms.json +1 -1
  460. package/dist/lib/schemas-data/3.0/enums/performance-standard-metric.json +1 -1
  461. package/dist/lib/schemas-data/3.0/enums/policy-category.json +1 -1
  462. package/dist/lib/schemas-data/3.0/enums/policy-enforcement.json +1 -1
  463. package/dist/lib/schemas-data/3.0/enums/postal-system.json +1 -1
  464. package/dist/lib/schemas-data/3.0/enums/preview-output-format.json +1 -1
  465. package/dist/lib/schemas-data/3.0/enums/pricing-model.json +1 -1
  466. package/dist/lib/schemas-data/3.0/enums/production-quality.json +1 -1
  467. package/dist/lib/schemas-data/3.0/enums/property-type.json +1 -1
  468. package/dist/lib/schemas-data/3.0/enums/proposal-status.json +1 -1
  469. package/dist/lib/schemas-data/3.0/enums/publisher-identifier-types.json +1 -1
  470. package/dist/lib/schemas-data/3.0/enums/purchase-type.json +1 -1
  471. package/dist/lib/schemas-data/3.0/enums/reach-unit.json +1 -1
  472. package/dist/lib/schemas-data/3.0/enums/reporting-frequency.json +1 -1
  473. package/dist/lib/schemas-data/3.0/enums/response-type.json +1 -1
  474. package/dist/lib/schemas-data/3.0/enums/restricted-attribute.json +1 -1
  475. package/dist/lib/schemas-data/3.0/enums/right-type.json +1 -1
  476. package/dist/lib/schemas-data/3.0/enums/right-use.json +1 -1
  477. package/dist/lib/schemas-data/3.0/enums/rights-billing-period.json +1 -1
  478. package/dist/lib/schemas-data/3.0/enums/scan-type.json +1 -1
  479. package/dist/lib/schemas-data/3.0/enums/si-session-status.json +1 -1
  480. package/dist/lib/schemas-data/3.0/enums/signal-catalog-type.json +1 -1
  481. package/dist/lib/schemas-data/3.0/enums/signal-source.json +1 -1
  482. package/dist/lib/schemas-data/3.0/enums/signal-value-type.json +1 -1
  483. package/dist/lib/schemas-data/3.0/enums/snapshot-unavailable-reason.json +1 -1
  484. package/dist/lib/schemas-data/3.0/enums/sort-direction.json +1 -1
  485. package/dist/lib/schemas-data/3.0/enums/sort-metric.json +1 -1
  486. package/dist/lib/schemas-data/3.0/enums/special-category.json +1 -1
  487. package/dist/lib/schemas-data/3.0/enums/specialism.json +1 -1
  488. package/dist/lib/schemas-data/3.0/enums/talent-role.json +1 -1
  489. package/dist/lib/schemas-data/3.0/enums/task-status.json +1 -1
  490. package/dist/lib/schemas-data/3.0/enums/task-type.json +1 -1
  491. package/dist/lib/schemas-data/3.0/enums/transport-mode.json +1 -1
  492. package/dist/lib/schemas-data/3.0/enums/travel-time-unit.json +1 -1
  493. package/dist/lib/schemas-data/3.0/enums/uid-type.json +1 -1
  494. package/dist/lib/schemas-data/3.0/enums/universal-macro.json +1 -1
  495. package/dist/lib/schemas-data/3.0/enums/update-frequency.json +1 -1
  496. package/dist/lib/schemas-data/3.0/enums/url-asset-type.json +1 -1
  497. package/dist/lib/schemas-data/3.0/enums/validation-mode.json +1 -1
  498. package/dist/lib/schemas-data/3.0/enums/vast-tracking-event.json +1 -1
  499. package/dist/lib/schemas-data/3.0/enums/vast-version.json +1 -1
  500. package/dist/lib/schemas-data/3.0/enums/viewability-standard.json +1 -1
  501. package/dist/lib/schemas-data/3.0/enums/wcag-level.json +1 -1
  502. package/dist/lib/schemas-data/3.0/enums/webhook-response-type.json +1 -1
  503. package/dist/lib/schemas-data/3.0/enums/webhook-security-method.json +1 -1
  504. package/dist/lib/schemas-data/3.0/error-details/account-setup-required.json +1 -1
  505. package/dist/lib/schemas-data/3.0/error-details/audience-too-small.json +1 -1
  506. package/dist/lib/schemas-data/3.0/error-details/budget-too-low.json +1 -1
  507. package/dist/lib/schemas-data/3.0/error-details/conflict.json +1 -1
  508. package/dist/lib/schemas-data/3.0/error-details/creative-rejected.json +1 -1
  509. package/dist/lib/schemas-data/3.0/error-details/policy-violation.json +1 -1
  510. package/dist/lib/schemas-data/3.0/error-details/rate-limited.json +1 -1
  511. package/dist/lib/schemas-data/3.0/error-details/vendor-error-codes.json +1 -1
  512. package/dist/lib/schemas-data/3.0/extensions/extension-meta.json +1 -1
  513. package/dist/lib/schemas-data/3.0/extensions/index.json +2 -2
  514. package/dist/lib/schemas-data/3.0/governance/attribute-definition.json +1 -1
  515. package/dist/lib/schemas-data/3.0/governance/audience-constraints.json +3 -3
  516. package/dist/lib/schemas-data/3.0/governance/check-governance-request.json +7 -7
  517. package/dist/lib/schemas-data/3.0/governance/check-governance-response.json +6 -6
  518. package/dist/lib/schemas-data/3.0/governance/get-plan-audit-logs-request.json +4 -4
  519. package/dist/lib/schemas-data/3.0/governance/get-plan-audit-logs-response.json +9 -9
  520. package/dist/lib/schemas-data/3.0/governance/policy-category-definition.json +2 -2
  521. package/dist/lib/schemas-data/3.0/governance/policy-entry.json +6 -6
  522. package/dist/lib/schemas-data/3.0/governance/policy-ref.json +1 -1
  523. package/dist/lib/schemas-data/3.0/governance/report-plan-outcome-request.json +6 -6
  524. package/dist/lib/schemas-data/3.0/governance/report-plan-outcome-response.json +4 -4
  525. package/dist/lib/schemas-data/3.0/governance/sync-plans-request.json +13 -13
  526. package/dist/lib/schemas-data/3.0/governance/sync-plans-response.json +4 -4
  527. package/dist/lib/schemas-data/3.0/index.json +363 -363
  528. package/dist/lib/schemas-data/3.0/manifest.json +3 -3
  529. package/dist/lib/schemas-data/3.0/manifest.schema.json +1 -1
  530. package/dist/lib/schemas-data/3.0/media-buy/build-creative-async-response-input-required.json +4 -4
  531. package/dist/lib/schemas-data/3.0/media-buy/build-creative-async-response-submitted.json +3 -3
  532. package/dist/lib/schemas-data/3.0/media-buy/build-creative-async-response-working.json +3 -3
  533. package/dist/lib/schemas-data/3.0/media-buy/build-creative-request.json +11 -11
  534. package/dist/lib/schemas-data/3.0/media-buy/build-creative-response.json +17 -17
  535. package/dist/lib/schemas-data/3.0/media-buy/create-media-buy-async-response-input-required.json +4 -4
  536. package/dist/lib/schemas-data/3.0/media-buy/create-media-buy-async-response-submitted.json +3 -3
  537. package/dist/lib/schemas-data/3.0/media-buy/create-media-buy-async-response-working.json +3 -3
  538. package/dist/lib/schemas-data/3.0/media-buy/create-media-buy-request.json +12 -12
  539. package/dist/lib/schemas-data/3.0/media-buy/create-media-buy-response.json +15 -15
  540. package/dist/lib/schemas-data/3.0/media-buy/get-media-buy-delivery-request.json +17 -17
  541. package/dist/lib/schemas-data/3.0/media-buy/get-media-buy-delivery-response.json +24 -24
  542. package/dist/lib/schemas-data/3.0/media-buy/get-media-buys-request.json +7 -7
  543. package/dist/lib/schemas-data/3.0/media-buy/get-media-buys-response.json +19 -19
  544. package/dist/lib/schemas-data/3.0/media-buy/get-products-async-response-input-required.json +4 -4
  545. package/dist/lib/schemas-data/3.0/media-buy/get-products-async-response-submitted.json +3 -3
  546. package/dist/lib/schemas-data/3.0/media-buy/get-products-async-response-working.json +3 -3
  547. package/dist/lib/schemas-data/3.0/media-buy/get-products-request.json +11 -11
  548. package/dist/lib/schemas-data/3.0/media-buy/get-products-response.json +8 -8
  549. package/dist/lib/schemas-data/3.0/media-buy/list-creative-formats-request.json +11 -11
  550. package/dist/lib/schemas-data/3.0/media-buy/list-creative-formats-response.json +7 -7
  551. package/dist/lib/schemas-data/3.0/media-buy/log-event-request.json +4 -4
  552. package/dist/lib/schemas-data/3.0/media-buy/log-event-response.json +6 -6
  553. package/dist/lib/schemas-data/3.0/media-buy/package-request.json +12 -12
  554. package/dist/lib/schemas-data/3.0/media-buy/package-update.json +13 -13
  555. package/dist/lib/schemas-data/3.0/media-buy/provide-performance-feedback-request.json +6 -6
  556. package/dist/lib/schemas-data/3.0/media-buy/provide-performance-feedback-response.json +6 -6
  557. package/dist/lib/schemas-data/3.0/media-buy/sync-audiences-request.json +7 -7
  558. package/dist/lib/schemas-data/3.0/media-buy/sync-audiences-response.json +9 -9
  559. package/dist/lib/schemas-data/3.0/media-buy/sync-catalogs-async-response-input-required.json +3 -3
  560. package/dist/lib/schemas-data/3.0/media-buy/sync-catalogs-async-response-submitted.json +3 -3
  561. package/dist/lib/schemas-data/3.0/media-buy/sync-catalogs-async-response-working.json +3 -3
  562. package/dist/lib/schemas-data/3.0/media-buy/sync-catalogs-request.json +7 -7
  563. package/dist/lib/schemas-data/3.0/media-buy/sync-catalogs-response.json +9 -9
  564. package/dist/lib/schemas-data/3.0/media-buy/sync-event-sources-request.json +5 -5
  565. package/dist/lib/schemas-data/3.0/media-buy/sync-event-sources-response.json +10 -10
  566. package/dist/lib/schemas-data/3.0/media-buy/update-media-buy-async-response-input-required.json +3 -3
  567. package/dist/lib/schemas-data/3.0/media-buy/update-media-buy-async-response-submitted.json +3 -3
  568. package/dist/lib/schemas-data/3.0/media-buy/update-media-buy-async-response-working.json +3 -3
  569. package/dist/lib/schemas-data/3.0/media-buy/update-media-buy-request.json +10 -10
  570. package/dist/lib/schemas-data/3.0/media-buy/update-media-buy-response.json +10 -10
  571. package/dist/lib/schemas-data/3.0/pricing-options/cpa-option.json +4 -4
  572. package/dist/lib/schemas-data/3.0/pricing-options/cpc-option.json +4 -4
  573. package/dist/lib/schemas-data/3.0/pricing-options/cpcv-option.json +4 -4
  574. package/dist/lib/schemas-data/3.0/pricing-options/cpm-option.json +4 -4
  575. package/dist/lib/schemas-data/3.0/pricing-options/cpp-option.json +5 -5
  576. package/dist/lib/schemas-data/3.0/pricing-options/cpv-option.json +4 -4
  577. package/dist/lib/schemas-data/3.0/pricing-options/flat-rate-option.json +4 -4
  578. package/dist/lib/schemas-data/3.0/pricing-options/price-breakdown.json +2 -2
  579. package/dist/lib/schemas-data/3.0/pricing-options/price-guidance.json +1 -1
  580. package/dist/lib/schemas-data/3.0/pricing-options/time-option.json +4 -4
  581. package/dist/lib/schemas-data/3.0/pricing-options/vcpm-option.json +4 -4
  582. package/dist/lib/schemas-data/3.0/property/authorization-result.json +1 -1
  583. package/dist/lib/schemas-data/3.0/property/base-property-source.json +4 -4
  584. package/dist/lib/schemas-data/3.0/property/create-property-list-request.json +7 -7
  585. package/dist/lib/schemas-data/3.0/property/create-property-list-response.json +4 -4
  586. package/dist/lib/schemas-data/3.0/property/delete-property-list-request.json +4 -4
  587. package/dist/lib/schemas-data/3.0/property/delete-property-list-response.json +3 -3
  588. package/dist/lib/schemas-data/3.0/property/delivery-record.json +3 -3
  589. package/dist/lib/schemas-data/3.0/property/get-property-list-request.json +4 -4
  590. package/dist/lib/schemas-data/3.0/property/get-property-list-response.json +7 -7
  591. package/dist/lib/schemas-data/3.0/property/list-property-lists-request.json +5 -5
  592. package/dist/lib/schemas-data/3.0/property/list-property-lists-response.json +5 -5
  593. package/dist/lib/schemas-data/3.0/property/property-error.json +2 -2
  594. package/dist/lib/schemas-data/3.0/property/property-feature-definition.json +2 -2
  595. package/dist/lib/schemas-data/3.0/property/property-feature-result.json +4 -4
  596. package/dist/lib/schemas-data/3.0/property/property-feature-value.json +2 -2
  597. package/dist/lib/schemas-data/3.0/property/property-feature.json +1 -1
  598. package/dist/lib/schemas-data/3.0/property/property-list-changed-webhook.json +2 -2
  599. package/dist/lib/schemas-data/3.0/property/property-list-filters.json +5 -5
  600. package/dist/lib/schemas-data/3.0/property/property-list.json +6 -6
  601. package/dist/lib/schemas-data/3.0/property/update-property-list-request.json +7 -7
  602. package/dist/lib/schemas-data/3.0/property/update-property-list-response.json +4 -4
  603. package/dist/lib/schemas-data/3.0/property/validate-property-delivery-request.json +5 -5
  604. package/dist/lib/schemas-data/3.0/property/validate-property-delivery-response.json +4 -4
  605. package/dist/lib/schemas-data/3.0/property/validation-result.json +5 -5
  606. package/dist/lib/schemas-data/3.0/protocol/get-adcp-capabilities-request.json +3 -3
  607. package/dist/lib/schemas-data/3.0/protocol/get-adcp-capabilities-response.json +25 -25
  608. package/dist/lib/schemas-data/3.0/signals/activate-signal-request.json +5 -5
  609. package/dist/lib/schemas-data/3.0/signals/activate-signal-response.json +7 -7
  610. package/dist/lib/schemas-data/3.0/signals/get-signals-request.json +8 -8
  611. package/dist/lib/schemas-data/3.0/signals/get-signals-response.json +10 -10
  612. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-capabilities.json +1 -1
  613. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-get-offering-request.json +3 -3
  614. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-get-offering-response.json +4 -4
  615. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-identity.json +1 -1
  616. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-initiate-session-request.json +5 -5
  617. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-initiate-session-response.json +7 -7
  618. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-send-message-request.json +3 -3
  619. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-send-message-response.json +7 -7
  620. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-terminate-session-request.json +3 -3
  621. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-terminate-session-response.json +5 -5
  622. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-ui-element.json +1 -1
  623. package/dist/lib/schemas-data/v2.5/_provenance.json +1 -1
  624. package/dist/lib/server/create-adcp-server.d.ts.map +1 -1
  625. package/dist/lib/server/create-adcp-server.js +182 -0
  626. package/dist/lib/server/create-adcp-server.js.map +1 -1
  627. package/dist/lib/server/decisioning/runtime/entity-hydration.generated.js +1 -1
  628. package/dist/lib/server/error-arm-tools.d.ts +56 -0
  629. package/dist/lib/server/error-arm-tools.d.ts.map +1 -0
  630. package/dist/lib/server/error-arm-tools.js +219 -0
  631. package/dist/lib/server/error-arm-tools.js.map +1 -0
  632. package/dist/lib/server/errors.d.ts +10 -0
  633. package/dist/lib/server/errors.d.ts.map +1 -1
  634. package/dist/lib/server/errors.js +10 -0
  635. package/dist/lib/server/errors.js.map +1 -1
  636. package/dist/lib/server/wire-spec-fields.generated.d.ts +29 -29
  637. package/dist/lib/server/wire-spec-fields.generated.js +31 -31
  638. package/dist/lib/testing/storyboard/request-builder.d.ts +18 -0
  639. package/dist/lib/testing/storyboard/request-builder.d.ts.map +1 -1
  640. package/dist/lib/testing/storyboard/request-builder.js +83 -24
  641. package/dist/lib/testing/storyboard/request-builder.js.map +1 -1
  642. package/dist/lib/types/core.generated.js +2 -2
  643. package/dist/lib/types/manifest.generated.d.ts +3 -3
  644. package/dist/lib/types/manifest.generated.js +1 -1
  645. package/dist/lib/utils/activation-key-builders.d.ts +21 -0
  646. package/dist/lib/utils/activation-key-builders.d.ts.map +1 -0
  647. package/dist/lib/utils/activation-key-builders.js +28 -0
  648. package/dist/lib/utils/activation-key-builders.js.map +1 -0
  649. package/dist/lib/utils/build-creative-return-builders.d.ts +24 -0
  650. package/dist/lib/utils/build-creative-return-builders.d.ts.map +1 -0
  651. package/dist/lib/utils/build-creative-return-builders.js +42 -0
  652. package/dist/lib/utils/build-creative-return-builders.js.map +1 -0
  653. package/dist/lib/utils/media-buy-delivery-notification-builders.d.ts +25 -0
  654. package/dist/lib/utils/media-buy-delivery-notification-builders.d.ts.map +1 -0
  655. package/dist/lib/utils/media-buy-delivery-notification-builders.js +41 -0
  656. package/dist/lib/utils/media-buy-delivery-notification-builders.js.map +1 -0
  657. package/dist/lib/utils/preview-creative-builders.d.ts +18 -0
  658. package/dist/lib/utils/preview-creative-builders.d.ts.map +1 -0
  659. package/dist/lib/utils/preview-creative-builders.js +28 -0
  660. package/dist/lib/utils/preview-creative-builders.js.map +1 -0
  661. package/dist/lib/utils/signal-id-builders.d.ts +21 -0
  662. package/dist/lib/utils/signal-id-builders.d.ts.map +1 -0
  663. package/dist/lib/utils/signal-id-builders.js +24 -0
  664. package/dist/lib/utils/signal-id-builders.js.map +1 -0
  665. package/dist/lib/version.d.ts +7 -7
  666. package/dist/lib/version.d.ts.map +1 -1
  667. package/dist/lib/version.js +6 -5
  668. package/dist/lib/version.js.map +1 -1
  669. package/examples/hello_creative_adapter_ad_server.ts +13 -14
  670. package/examples/hello_creative_adapter_template.ts +15 -13
  671. package/examples/hello_signals_adapter_marketplace.ts +9 -12
  672. package/examples/signals-agent.ts +11 -15
  673. package/package.json +2 -2
  674. package/skills/SHAPE-GOTCHAS.md +83 -19
  675. package/skills/build-creative-agent/SKILL.md +23 -8
  676. package/skills/build-retail-media-agent/SKILL.md +31 -25
  677. package/skills/build-seller-agent/SKILL.md +14 -8
  678. package/skills/build-seller-agent/specialisms/audience-sync.md +19 -65
  679. package/skills/build-seller-agent/specialisms/sales-broadcast-tv.md +48 -49
  680. package/skills/build-seller-agent/specialisms/sales-proposal-mode.md +47 -45
  681. package/skills/build-seller-agent/specialisms/sales-streaming-tv.md +45 -0
  682. package/skills/build-signals-agent/SKILL.md +21 -20
  683. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/brand/index.yaml +0 -0
  684. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/creative/index.yaml +0 -0
  685. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/governance/index.yaml +0 -0
  686. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/media-buy/creative-reception.yaml +0 -0
  687. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/media-buy/index.yaml +0 -0
  688. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/media-buy/scenarios/create_media_buy_async.yaml +0 -0
  689. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/media-buy/scenarios/delivery_reporting.yaml +0 -0
  690. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/media-buy/scenarios/measurement_terms_rejected.yaml +0 -0
  691. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/media-buy/scenarios/proposal_finalize.yaml +0 -0
  692. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/media-buy/scenarios/refine_products.yaml +0 -0
  693. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/media-buy/state-machine.yaml +0 -0
  694. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/signals/index.yaml +0 -0
  695. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/sponsored-intelligence/index.yaml +0 -0
  696. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/brand/index.yaml +0 -0
  697. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/creative/index.yaml +0 -0
  698. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/governance/index.yaml +0 -0
  699. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/creative-reception.yaml +0 -0
  700. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/index.yaml +0 -0
  701. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/scenarios/create_media_buy_async.yaml +0 -0
  702. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/scenarios/delivery_reporting.yaml +0 -0
  703. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/scenarios/measurement_terms_rejected.yaml +0 -0
  704. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/scenarios/proposal_finalize.yaml +0 -0
  705. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/scenarios/refine_products.yaml +0 -0
  706. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/state-machine.yaml +0 -0
  707. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/signals/index.yaml +0 -0
  708. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/sponsored-intelligence/index.yaml +0 -0
  709. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/audience-sync/index.yaml +0 -0
  710. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/brand-rights/index.yaml +0 -0
  711. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/brand-rights/scenarios/governance_denied.yaml +0 -0
  712. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/collection-lists/index.yaml +0 -0
  713. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/content-standards/index.yaml +0 -0
  714. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/creative-ad-server/index.yaml +0 -0
  715. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/creative-generative/generative-seller.yaml +0 -0
  716. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/creative-generative/index.yaml +0 -0
  717. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/creative-template/index.yaml +0 -0
  718. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/governance-aware-seller/index.yaml +0 -0
  719. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/governance-delivery-monitor/index.yaml +0 -0
  720. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/governance-spend-authority/denied.yaml +0 -0
  721. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/governance-spend-authority/index.yaml +0 -0
  722. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/property-lists/index.yaml +0 -0
  723. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/sales-broadcast-tv/index.yaml +0 -0
  724. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/sales-catalog-driven/index.yaml +0 -0
  725. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/sales-guaranteed/index.yaml +0 -0
  726. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/sales-non-guaranteed/index.yaml +0 -0
  727. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/sales-proposal-mode/index.yaml +0 -0
  728. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/sales-social/index.yaml +0 -0
  729. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/signal-marketplace/index.yaml +0 -0
  730. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/signal-marketplace/scenarios/governance_denied.yaml +0 -0
  731. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/signal-owned/index.yaml +0 -0
  732. /package/compliance/cache/{3.0.7 → 3.0.8}/test-kits/acme-outdoor.yaml +0 -0
  733. /package/compliance/cache/{3.0.7 → 3.0.8}/test-kits/bistro-oranje.yaml +0 -0
  734. /package/compliance/cache/{3.0.7 → 3.0.8}/test-kits/nova-motors.yaml +0 -0
  735. /package/compliance/cache/{3.0.7 → 3.0.8}/test-kits/osei-natural.yaml +0 -0
  736. /package/compliance/cache/{3.0.7 → 3.0.8}/test-kits/signed-requests-runner.yaml +0 -0
  737. /package/compliance/cache/{3.0.7 → 3.0.8}/test-kits/substitution-observer-runner.yaml +0 -0
  738. /package/compliance/cache/{3.0.7 → 3.0.8}/test-kits/summit-foods.yaml +0 -0
  739. /package/compliance/cache/{3.0.7 → 3.0.8}/test-kits/webhook-receiver-runner.yaml +0 -0
  740. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/plan-hash/001-minimal-plan.json +0 -0
  741. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/plan-hash/002-full-plan.json +0 -0
  742. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/plan-hash/003-bookkeeping-stripped.json +0 -0
  743. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/plan-hash/004a-human-review-omitted.json +0 -0
  744. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/plan-hash/004b-human-review-explicit-null.json +0 -0
  745. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/plan-hash/005a-policy-categories-order-1.json +0 -0
  746. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/plan-hash/005b-policy-categories-order-2.json +0 -0
  747. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/plan-hash/006a-ext-trace-v1.json +0 -0
  748. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/plan-hash/006b-ext-trace-v2.json +0 -0
  749. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/plan-hash/007-unicode-objectives.json +0 -0
  750. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/plan-hash/008-numeric-canonicalization.json +0 -0
  751. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/README.md +0 -0
  752. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/canonicalization.json +0 -0
  753. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/keys.json +0 -0
  754. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/001-no-signature-header.json +0 -0
  755. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/002-wrong-tag.json +0 -0
  756. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/003-expired-signature.json +0 -0
  757. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/004-window-too-long.json +0 -0
  758. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/005-alg-not-allowed.json +0 -0
  759. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/006-missing-covered-component.json +0 -0
  760. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/007-missing-content-digest.json +0 -0
  761. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/008-unknown-keyid.json +0 -0
  762. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/009-key-ops-missing-verify.json +0 -0
  763. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/010-content-digest-mismatch.json +0 -0
  764. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/011-malformed-header.json +0 -0
  765. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/012-missing-expires-param.json +0 -0
  766. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/013-expires-le-created.json +0 -0
  767. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/014-missing-nonce-param.json +0 -0
  768. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/015-signature-invalid.json +0 -0
  769. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/016-replayed-nonce.json +0 -0
  770. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/017-key-revoked.json +0 -0
  771. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/018-digest-covered-when-forbidden.json +0 -0
  772. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/019-signature-without-signature-input.json +0 -0
  773. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/020-rate-abuse.json +0 -0
  774. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/021-duplicate-signature-input-label.json +0 -0
  775. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/022-multi-valued-content-type.json +0 -0
  776. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/023-multi-valued-content-digest.json +0 -0
  777. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/024-unquoted-string-param.json +0 -0
  778. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/025-jwk-alg-crv-mismatch.json +0 -0
  779. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/026-non-ascii-host.json +0 -0
  780. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/027-webhook-registration-authentication-unsigned.json +0 -0
  781. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/001-basic-post.json +0 -0
  782. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/002-post-with-content-digest.json +0 -0
  783. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/003-es256-post.json +0 -0
  784. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/004-multiple-signature-labels.json +0 -0
  785. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/005-default-port-stripped.json +0 -0
  786. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/006-dot-segment-path.json +0 -0
  787. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/007-query-byte-preserved.json +0 -0
  788. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/008-percent-encoded-path.json +0 -0
  789. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/009-percent-encoded-unreserved-decoded.json +0 -0
  790. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/010-percent-encoded-slash-preserved.json +0 -0
  791. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/011-ipv6-authority.json +0 -0
  792. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/012-ipv6-authority-default-port-stripped.json +0 -0
  793. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/README.md +0 -0
  794. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/keys.json +0 -0
  795. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/001-wrong-tag.json +0 -0
  796. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/002-expired-signature.json +0 -0
  797. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/003-window-too-long.json +0 -0
  798. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/004-alg-not-allowed.json +0 -0
  799. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/005-missing-authority-component.json +0 -0
  800. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/006-missing-content-digest.json +0 -0
  801. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/007-unknown-keyid.json +0 -0
  802. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/008-wrong-adcp-use.json +0 -0
  803. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/009-content-digest-mismatch.json +0 -0
  804. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/010-malformed-signature-input.json +0 -0
  805. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/011-signature-without-input.json +0 -0
  806. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/012-missing-expires-param.json +0 -0
  807. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/013-expires-le-created.json +0 -0
  808. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/014-missing-nonce-param.json +0 -0
  809. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/015-signature-invalid.json +0 -0
  810. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/016-replayed-nonce.json +0 -0
  811. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/017-key-revoked.json +0 -0
  812. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/018-rate-abuse.json +0 -0
  813. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/019-revocation-stale.json +0 -0
  814. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/020-key-ops-missing-verify.json +0 -0
  815. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/021-base64-alphabet-mixing.json +0 -0
  816. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/positive/001-basic-post.json +0 -0
  817. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/positive/002-es256-post.json +0 -0
  818. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/positive/003-multiple-signature-labels.json +0 -0
  819. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/positive/004-default-port-stripped.json +0 -0
  820. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/positive/005-percent-encoded-path.json +0 -0
  821. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/positive/006-query-byte-preserved.json +0 -0
  822. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/positive/007-body-without-idempotency-key.json +0 -0
  823. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/capability-discovery.yaml +0 -0
  824. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/collection-lists-pagination-integrity.yaml +0 -0
  825. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/content-standards-pagination-integrity.yaml +0 -0
  826. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/deterministic-testing.yaml +0 -0
  827. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/error-compliance.yaml +0 -0
  828. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/fictional-entities.yaml +0 -0
  829. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/get-media-buys-pagination-integrity.yaml +0 -0
  830. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/get-signals-pagination-integrity.yaml +0 -0
  831. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/idempotency.yaml +0 -0
  832. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/pagination-integrity-creative-formats.yaml +0 -0
  833. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/pagination-integrity-list-accounts.yaml +0 -0
  834. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/pagination-integrity.yaml +0 -0
  835. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/property-lists-pagination-integrity.yaml +0 -0
  836. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/runner-output-contract.yaml +0 -0
  837. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/schema-validation.yaml +0 -0
  838. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/security.yaml +0 -0
  839. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/signed-requests.yaml +0 -0
  840. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/storyboard-schema.yaml +0 -0
  841. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/v3-envelope-integrity.yaml +0 -0
  842. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/webhook-emission.yaml +0 -0
  843. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/brand/index.yaml +0 -0
  844. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/creative/index.yaml +0 -0
  845. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/governance/index.yaml +0 -0
  846. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/creative-reception.yaml +0 -0
  847. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/index.yaml +0 -0
  848. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/scenarios/create_media_buy_async.yaml +0 -0
  849. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/scenarios/delivery_reporting.yaml +0 -0
  850. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/scenarios/measurement_terms_rejected.yaml +0 -0
  851. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/scenarios/proposal_finalize.yaml +0 -0
  852. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/scenarios/refine_products.yaml +0 -0
  853. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/state-machine.yaml +0 -0
  854. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/signals/index.yaml +0 -0
  855. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/sponsored-intelligence/index.yaml +0 -0
  856. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/brand/index.yaml +0 -0
  857. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/creative/index.yaml +0 -0
  858. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/governance/index.yaml +0 -0
  859. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/media-buy/creative-reception.yaml +0 -0
  860. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/media-buy/index.yaml +0 -0
  861. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/media-buy/scenarios/create_media_buy_async.yaml +0 -0
  862. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/media-buy/scenarios/delivery_reporting.yaml +0 -0
  863. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/media-buy/scenarios/measurement_terms_rejected.yaml +0 -0
  864. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/media-buy/scenarios/proposal_finalize.yaml +0 -0
  865. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/media-buy/scenarios/refine_products.yaml +0 -0
  866. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/media-buy/state-machine.yaml +0 -0
  867. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/signals/index.yaml +0 -0
  868. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/sponsored-intelligence/index.yaml +0 -0
  869. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/audience-sync/index.yaml +0 -0
  870. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/brand-rights/index.yaml +0 -0
  871. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/brand-rights/scenarios/governance_denied.yaml +0 -0
  872. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/collection-lists/index.yaml +0 -0
  873. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/content-standards/index.yaml +0 -0
  874. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/creative-ad-server/index.yaml +0 -0
  875. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/creative-generative/generative-seller.yaml +0 -0
  876. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/creative-generative/index.yaml +0 -0
  877. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/creative-template/index.yaml +0 -0
  878. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/governance-aware-seller/index.yaml +0 -0
  879. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/governance-delivery-monitor/index.yaml +0 -0
  880. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/governance-spend-authority/denied.yaml +0 -0
  881. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/governance-spend-authority/index.yaml +0 -0
  882. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/property-lists/index.yaml +0 -0
  883. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/sales-broadcast-tv/index.yaml +0 -0
  884. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/sales-catalog-driven/index.yaml +0 -0
  885. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/sales-guaranteed/index.yaml +0 -0
  886. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/sales-non-guaranteed/index.yaml +0 -0
  887. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/sales-proposal-mode/index.yaml +0 -0
  888. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/sales-social/index.yaml +0 -0
  889. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/signal-marketplace/index.yaml +0 -0
  890. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/signal-marketplace/scenarios/governance_denied.yaml +0 -0
  891. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/signal-owned/index.yaml +0 -0
  892. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-kits/acme-outdoor.yaml +0 -0
  893. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-kits/bistro-oranje.yaml +0 -0
  894. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-kits/nova-motors.yaml +0 -0
  895. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-kits/osei-natural.yaml +0 -0
  896. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-kits/signed-requests-runner.yaml +0 -0
  897. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-kits/substitution-observer-runner.yaml +0 -0
  898. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-kits/summit-foods.yaml +0 -0
  899. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-kits/webhook-receiver-runner.yaml +0 -0
  900. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/plan-hash/001-minimal-plan.json +0 -0
  901. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/plan-hash/002-full-plan.json +0 -0
  902. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/plan-hash/003-bookkeeping-stripped.json +0 -0
  903. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/plan-hash/004a-human-review-omitted.json +0 -0
  904. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/plan-hash/004b-human-review-explicit-null.json +0 -0
  905. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/plan-hash/005a-policy-categories-order-1.json +0 -0
  906. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/plan-hash/005b-policy-categories-order-2.json +0 -0
  907. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/plan-hash/006a-ext-trace-v1.json +0 -0
  908. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/plan-hash/006b-ext-trace-v2.json +0 -0
  909. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/plan-hash/007-unicode-objectives.json +0 -0
  910. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/plan-hash/008-numeric-canonicalization.json +0 -0
  911. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/README.md +0 -0
  912. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/canonicalization.json +0 -0
  913. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/keys.json +0 -0
  914. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/001-no-signature-header.json +0 -0
  915. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/002-wrong-tag.json +0 -0
  916. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/003-expired-signature.json +0 -0
  917. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/004-window-too-long.json +0 -0
  918. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/005-alg-not-allowed.json +0 -0
  919. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/006-missing-covered-component.json +0 -0
  920. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/007-missing-content-digest.json +0 -0
  921. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/008-unknown-keyid.json +0 -0
  922. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/009-key-ops-missing-verify.json +0 -0
  923. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/010-content-digest-mismatch.json +0 -0
  924. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/011-malformed-header.json +0 -0
  925. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/012-missing-expires-param.json +0 -0
  926. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/013-expires-le-created.json +0 -0
  927. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/014-missing-nonce-param.json +0 -0
  928. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/015-signature-invalid.json +0 -0
  929. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/016-replayed-nonce.json +0 -0
  930. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/017-key-revoked.json +0 -0
  931. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/018-digest-covered-when-forbidden.json +0 -0
  932. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/019-signature-without-signature-input.json +0 -0
  933. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/020-rate-abuse.json +0 -0
  934. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/021-duplicate-signature-input-label.json +0 -0
  935. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/022-multi-valued-content-type.json +0 -0
  936. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/023-multi-valued-content-digest.json +0 -0
  937. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/024-unquoted-string-param.json +0 -0
  938. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/025-jwk-alg-crv-mismatch.json +0 -0
  939. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/026-non-ascii-host.json +0 -0
  940. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/027-webhook-registration-authentication-unsigned.json +0 -0
  941. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/001-basic-post.json +0 -0
  942. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/002-post-with-content-digest.json +0 -0
  943. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/003-es256-post.json +0 -0
  944. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/004-multiple-signature-labels.json +0 -0
  945. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/005-default-port-stripped.json +0 -0
  946. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/006-dot-segment-path.json +0 -0
  947. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/007-query-byte-preserved.json +0 -0
  948. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/008-percent-encoded-path.json +0 -0
  949. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/009-percent-encoded-unreserved-decoded.json +0 -0
  950. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/010-percent-encoded-slash-preserved.json +0 -0
  951. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/011-ipv6-authority.json +0 -0
  952. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/012-ipv6-authority-default-port-stripped.json +0 -0
  953. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/README.md +0 -0
  954. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/keys.json +0 -0
  955. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/001-wrong-tag.json +0 -0
  956. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/002-expired-signature.json +0 -0
  957. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/003-window-too-long.json +0 -0
  958. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/004-alg-not-allowed.json +0 -0
  959. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/005-missing-authority-component.json +0 -0
  960. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/006-missing-content-digest.json +0 -0
  961. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/007-unknown-keyid.json +0 -0
  962. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/008-wrong-adcp-use.json +0 -0
  963. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/009-content-digest-mismatch.json +0 -0
  964. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/010-malformed-signature-input.json +0 -0
  965. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/011-signature-without-input.json +0 -0
  966. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/012-missing-expires-param.json +0 -0
  967. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/013-expires-le-created.json +0 -0
  968. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/014-missing-nonce-param.json +0 -0
  969. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/015-signature-invalid.json +0 -0
  970. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/016-replayed-nonce.json +0 -0
  971. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/017-key-revoked.json +0 -0
  972. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/018-rate-abuse.json +0 -0
  973. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/019-revocation-stale.json +0 -0
  974. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/020-key-ops-missing-verify.json +0 -0
  975. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/021-base64-alphabet-mixing.json +0 -0
  976. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/positive/001-basic-post.json +0 -0
  977. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/positive/002-es256-post.json +0 -0
  978. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/positive/003-multiple-signature-labels.json +0 -0
  979. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/positive/004-default-port-stripped.json +0 -0
  980. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/positive/005-percent-encoded-path.json +0 -0
  981. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/positive/006-query-byte-preserved.json +0 -0
  982. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/positive/007-body-without-idempotency-key.json +0 -0
  983. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/capability-discovery.yaml +0 -0
  984. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/collection-lists-pagination-integrity.yaml +0 -0
  985. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/content-standards-pagination-integrity.yaml +0 -0
  986. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/deterministic-testing.yaml +0 -0
  987. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/error-compliance.yaml +0 -0
  988. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/fictional-entities.yaml +0 -0
  989. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/get-media-buys-pagination-integrity.yaml +0 -0
  990. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/get-signals-pagination-integrity.yaml +0 -0
  991. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/idempotency.yaml +0 -0
  992. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/pagination-integrity-creative-formats.yaml +0 -0
  993. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/pagination-integrity-list-accounts.yaml +0 -0
  994. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/pagination-integrity.yaml +0 -0
  995. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/property-lists-pagination-integrity.yaml +0 -0
  996. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/runner-output-contract.yaml +0 -0
  997. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/schema-validation.yaml +0 -0
  998. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/security.yaml +0 -0
  999. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/signed-requests.yaml +0 -0
  1000. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/storyboard-schema.yaml +0 -0
  1001. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/v3-envelope-integrity.yaml +0 -0
  1002. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/webhook-emission.yaml +0 -0
@@ -66,7 +66,7 @@ import {
66
66
  type DecisioningPlatform,
67
67
  type SyncCreativesRow,
68
68
  } from '@adcp/sdk/server';
69
- import { FormatAsset } from '@adcp/sdk';
69
+ import { FormatAsset, buildCreativeReturn, previewCreative, urlRender } from '@adcp/sdk';
70
70
  import type {
71
71
  BuildCreativeRequest,
72
72
  BuildCreativeSuccess,
@@ -511,16 +511,17 @@ class CreativeAdServerAdapter implements DecisioningPlatform<Record<string, neve
511
511
  // satisfying creative-manifest.json:14. Each `assets[key]` is a
512
512
  // discriminated AssetVariant — `asset_type` selects the matching
513
513
  // schema (html requires `content`, etc.).
514
- return {
515
- creative_manifest: {
514
+ // `buildCreativeReturn.singleEnveloped({...})` injects the wire-shape
515
+ // discriminator: takes a flat `manifest` field (renamed to
516
+ // `creative_manifest` on the wire). SHAPE-GOTCHAS §5.
517
+ return buildCreativeReturn.singleEnveloped({
518
+ manifest: {
516
519
  format_id: { agent_url: FORMAT_AGENT_URL, id: creative.format_id },
517
520
  assets: {
518
521
  serving_tag: { asset_type: 'html', content: rendered.tag_html },
519
522
  },
520
523
  },
521
- // CAST: oneOf-emitter — picking variant 0 (single creative_manifest)
522
- // of the BuildCreativeResponse oneOf. Adopters keep this cast.
523
- } as unknown as BuildCreativeSuccess;
524
+ });
524
525
  },
525
526
 
526
527
  /**
@@ -553,26 +554,24 @@ class CreativeAdServerAdapter implements DecisioningPlatform<Record<string, neve
553
554
  });
554
555
  }
555
556
  const rendered = await upstream.renderCreative(networkCode, creativeId, {});
556
- return {
557
- response_type: 'single',
557
+ // `previewCreative.single({...})` injects
558
+ // `response_type: 'single'`. SHAPE-GOTCHAS §4.
559
+ return previewCreative.single({
558
560
  previews: [
559
561
  {
560
562
  preview_id: `prv_${creative.creative_id}`,
561
563
  renders: [
562
- {
564
+ urlRender({
563
565
  render_id: `rnd_${creative.creative_id}`,
564
566
  preview_url: rendered.preview_url,
565
567
  role: 'primary',
566
- },
568
+ }),
567
569
  ],
568
570
  input: { name: 'default' },
569
571
  },
570
572
  ],
571
573
  expires_at: new Date(Date.now() + 24 * 60 * 60 * 1000).toISOString(),
572
- // CAST: oneOf-emitter — picking the `single` discriminator branch
573
- // of the PreviewCreativeResponse 3-way union (single | batch | variant).
574
- // See SHAPE-GOTCHAS §4. Adopters keep this cast.
575
- } as unknown as PreviewCreativeResponse;
574
+ });
576
575
  },
577
576
 
578
577
  listCreativeFormats: async (_req, _ctx): Promise<ListCreativeFormatsResponse> => {
@@ -52,6 +52,8 @@ import {
52
52
  javascriptAsset,
53
53
  audioAsset,
54
54
  urlRender,
55
+ buildCreativeReturn,
56
+ previewCreative,
55
57
  type Format,
56
58
  type ListCreativeFormatsResponse,
57
59
  type BuildCreativeRequest,
@@ -446,12 +448,13 @@ class CreativeTemplateAdapter implements DecisioningPlatform<Record<string, neve
446
448
  return projectRenderToManifest(completed, { agent_url: PUBLIC_AGENT_URL, id: target.id });
447
449
  };
448
450
 
449
- // Multi-format request return `CreativeManifest[]`; framework wraps
450
- // as `{ creative_manifests: [...] }`. See BuildCreativeReturn (4-arm
451
- // discriminated union) returning the wrong arm fails wire-schema
452
- // validation. SHAPE-GOTCHAS.md §5.
451
+ // `buildCreativeReturn.multi(...)` / `.single(...)` pin which arm of
452
+ // the 4-shape `BuildCreativeReturn` union you're emitting. The framework
453
+ // wraps `multi` into `{ creative_manifests: [...] }` and `single` into
454
+ // `{ creative_manifest: <obj> }` on the wire. SHAPE-GOTCHAS §5.
453
455
  if (req.target_format_ids && req.target_format_ids.length > 0) {
454
- return Promise.all(req.target_format_ids.map((t, i) => buildOne(t, i)));
456
+ const manifests = await Promise.all(req.target_format_ids.map((t, i) => buildOne(t, i)));
457
+ return buildCreativeReturn.multi(manifests);
455
458
  }
456
459
 
457
460
  // Single-format request.
@@ -461,7 +464,7 @@ class CreativeTemplateAdapter implements DecisioningPlatform<Record<string, neve
461
464
  field: 'target_format_id',
462
465
  });
463
466
  }
464
- return buildOne(req.target_format_id, 0);
467
+ return buildCreativeReturn.single(await buildOne(req.target_format_id, 0));
465
468
  },
466
469
 
467
470
  previewCreative: async (req: PreviewCreativeRequest, ctx): Promise<PreviewCreativeResponse> => {
@@ -516,12 +519,11 @@ class CreativeTemplateAdapter implements DecisioningPlatform<Record<string, neve
516
519
  throw new AdcpError('INVALID_REQUEST', { message: 'upstream returned no preview_url' });
517
520
  }
518
521
 
519
- // PreviewCreativeResponse is a 3-way discriminated union (single |
520
- // batch | variant). Single mode requires `previews[].renders[]` even
521
- // for one preview and each render needs the `output_format`
522
- // discriminator. urlRender({...}) injects it. SHAPE-GOTCHAS.md §4.
523
- return {
524
- response_type: 'single',
522
+ // `previewCreative.single({...})` injects
523
+ // `response_type: 'single'`. The render slot's `output_format`
524
+ // discriminator is in turn injected by `urlRender({...})`.
525
+ // SHAPE-GOTCHAS §4.
526
+ return previewCreative.single({
525
527
  previews: [
526
528
  {
527
529
  preview_id: `prv_${created.render_id}`,
@@ -539,7 +541,7 @@ class CreativeTemplateAdapter implements DecisioningPlatform<Record<string, neve
539
541
  },
540
542
  ],
541
543
  expires_at: new Date(Date.now() + 24 * 60 * 60 * 1000).toISOString(),
542
- };
544
+ });
543
545
  },
544
546
  });
545
547
  }
@@ -36,6 +36,7 @@ import {
36
36
  type CachedBuyerAgentRegistry,
37
37
  } from '@adcp/sdk/server';
38
38
  import type { GetSignalsResponse, ActivateSignalRequest, ActivateSignalSuccess } from '@adcp/sdk/types';
39
+ import { activationKey, signalId } from '@adcp/sdk';
39
40
  import { createUpstreamRecorder, toQueryUpstreamTrafficResponse } from '@adcp/sdk/upstream-recorder';
40
41
  import { createHash, randomUUID } from 'node:crypto';
41
42
 
@@ -292,11 +293,10 @@ function toAdcpSignal(c: UpstreamCohort): GetSignalsResponse['signals'][number]
292
293
  const coverage = c.total_universe > 0 ? Math.round((c.member_count / c.total_universe) * 100) : 0;
293
294
  return {
294
295
  signal_agent_segment_id: c.cohort_id,
295
- signal_id: {
296
- source: 'catalog',
296
+ signal_id: signalId.catalog({
297
297
  data_provider_domain: c.data_provider_domain,
298
298
  id: c.data_provider_id,
299
- },
299
+ }),
300
300
  name: c.name,
301
301
  description: c.description,
302
302
  value_type: c.value_type,
@@ -449,18 +449,16 @@ class SignalMarketplaceAdapter implements DecisioningPlatform<Record<string, nev
449
449
  client_request_id: `${idempotency}.${i}`,
450
450
  });
451
451
  if (dest.type === 'agent') {
452
- // ActivationKey oneOf — for `type: 'key_value'`, `key` and `value`
453
- // sit at the TOP level (not nested under a `key_value` field).
454
- // `value` MUST be string. See skills/SHAPE-GOTCHAS.md §1.
452
+ // `activationKey.keyValue({...})` injects `type: 'key_value'`
453
+ // and accepts the flat `{ key, value }` shape. SHAPE-GOTCHAS §1.
455
454
  return {
456
455
  type: 'agent' as const,
457
456
  agent_url: dest.agent_url,
458
457
  is_live: true,
459
- activation_key: {
460
- type: 'key_value' as const,
458
+ activation_key: activationKey.keyValue({
461
459
  key: 'agent_segment',
462
460
  value: activation.agent_activation_key?.agent_segment ?? activation.activation_id,
463
- },
461
+ }),
464
462
  deployed_at: new Date().toISOString(),
465
463
  };
466
464
  }
@@ -468,10 +466,9 @@ class SignalMarketplaceAdapter implements DecisioningPlatform<Record<string, nev
468
466
  type: 'platform' as const,
469
467
  platform: dest.platform,
470
468
  is_live: false,
471
- activation_key: {
472
- type: 'segment_id' as const,
469
+ activation_key: activationKey.segment({
473
470
  segment_id: activation.segment_id ?? activation.activation_id,
474
- },
471
+ }),
475
472
  estimated_activation_duration_minutes: 30,
476
473
  };
477
474
  })
@@ -18,6 +18,7 @@
18
18
 
19
19
  import { createAdcpServer, serve } from '@adcp/sdk/server/legacy/v5';
20
20
  import { createIdempotencyStore, memoryBackend } from '@adcp/sdk/server';
21
+ import { activationKey, signalId } from '@adcp/sdk';
21
22
  import type { GetSignalsResponse, ServeContext } from '@adcp/sdk';
22
23
 
23
24
  // ---------------------------------------------------------------------------
@@ -28,11 +29,10 @@ type Signal = GetSignalsResponse['signals'][number];
28
29
  const SEGMENTS: Signal[] = [
29
30
  {
30
31
  signal_agent_segment_id: 'high_intent_shoppers',
31
- signal_id: {
32
- source: 'catalog',
32
+ signal_id: signalId.catalog({
33
33
  data_provider_domain: 'example-signals.com',
34
34
  id: 'high_intent_shoppers',
35
- },
35
+ }),
36
36
  name: 'High Intent Shoppers',
37
37
  description: 'Users who visited product pages 3+ times in the last 7 days without purchasing.',
38
38
  value_type: 'binary',
@@ -51,11 +51,10 @@ const SEGMENTS: Signal[] = [
51
51
  },
52
52
  {
53
53
  signal_agent_segment_id: 'lapsed_subscribers',
54
- signal_id: {
55
- source: 'catalog',
54
+ signal_id: signalId.catalog({
56
55
  data_provider_domain: 'example-signals.com',
57
56
  id: 'lapsed_subscribers',
58
- },
57
+ }),
59
58
  name: 'Lapsed Subscribers',
60
59
  description: 'Email subscribers who have not opened in 90+ days but previously had high engagement.',
61
60
  value_type: 'binary',
@@ -74,11 +73,10 @@ const SEGMENTS: Signal[] = [
74
73
  },
75
74
  {
76
75
  signal_agent_segment_id: 'geo_urban_commuters',
77
- signal_id: {
78
- source: 'catalog',
76
+ signal_id: signalId.catalog({
79
77
  data_provider_domain: 'example-signals.com',
80
78
  id: 'geo_urban_commuters',
81
- },
79
+ }),
82
80
  name: 'Urban Commuters',
83
81
  description: 'Users whose location data indicates daily commute patterns through major metro areas.',
84
82
  value_type: 'binary',
@@ -171,21 +169,19 @@ function createSignalsAgent({ taskStore }: ServeContext) {
171
169
  platform: dest.platform,
172
170
  is_live: false,
173
171
  estimated_activation_duration_minutes: 30,
174
- activation_key: {
175
- type: 'segment_id' as const,
172
+ activation_key: activationKey.segment({
176
173
  segment_id: `${dest.platform}_${params.signal_agent_segment_id}`,
177
- },
174
+ }),
178
175
  };
179
176
  }
180
177
  return {
181
178
  type: 'agent' as const,
182
179
  agent_url: dest.agent_url,
183
180
  is_live: true,
184
- activation_key: {
185
- type: 'key_value' as const,
181
+ activation_key: activationKey.keyValue({
186
182
  key: 'audience',
187
183
  value: params.signal_agent_segment_id,
188
- },
184
+ }),
189
185
  deployed_at: new Date().toISOString(),
190
186
  };
191
187
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adcp/sdk",
3
- "version": "6.14.0",
3
+ "version": "6.15.0",
4
4
  "description": "AdCP SDK — client, server, and compliance harnesses for the AdContext Protocol (MCP + A2A)",
5
5
  "workspaces": [
6
6
  ".",
@@ -361,5 +361,5 @@
361
361
  },
362
362
  "minimatch": "^10.2.1"
363
363
  },
364
- "adcp_version": "3.0.7"
364
+ "adcp_version": "3.0.8"
365
365
  }
@@ -10,7 +10,7 @@ Six patterns surfaced repeatedly while building reference adapters (`examples/he
10
10
 
11
11
  When returning `activate_signal` deployments with `type: 'key_value'` activation keys, `key` and `value` sit at the TOP level of `activation_key`. NOT nested under a `key_value` sub-field.
12
12
 
13
- ✗ Wrong (intuitive — the discriminator name *suggests* nesting):
13
+ ✗ Wrong (intuitive — the discriminator name _suggests_ nesting):
14
14
 
15
15
  ```ts
16
16
  activation_key: {
@@ -37,6 +37,17 @@ activation_key: { type: 'segment_id', segment_id: 'plat_seg_xyz' }
37
37
 
38
38
  — same flatness, single string ID under the discriminator.
39
39
 
40
+ **Prevent at write time:** import `activationKey` from `@adcp/sdk`. The
41
+ typed factory injects the `type` discriminator and accepts the flat shape:
42
+
43
+ ```ts
44
+ activation_key: activationKey.keyValue({ key: 'segment', value: 'abc123' });
45
+ activation_key: activationKey.segment({ segment_id: 'plat_seg_xyz' });
46
+ ```
47
+
48
+ The nested-`key_value` mistake doesn't typecheck — `activationKey.keyValue`
49
+ takes `{ key, value }`, not `{ key_value: {...} }`.
50
+
40
51
  ---
41
52
 
42
53
  ## 2. `signal_ids` is `signal_id[]` (provenance objects), not `string[]`
@@ -46,7 +57,9 @@ activation_key: { type: 'segment_id', segment_id: 'plat_seg_xyz' }
46
57
  ✗ Wrong:
47
58
 
48
59
  ```ts
49
- { signal_ids: ['cohort_abc', 'cohort_xyz'] }
60
+ {
61
+ signal_ids: ['cohort_abc', 'cohort_xyz'];
62
+ }
50
63
  ```
51
64
 
52
65
  ✓ Right (matches `/schemas/3.0/core/signal-id.json`):
@@ -62,11 +75,23 @@ activation_key: { type: 'segment_id', segment_id: 'plat_seg_xyz' }
62
75
 
63
76
  `SignalID` is a discriminated union: `source: 'catalog'` (with `data_provider_domain` + `id`) or `source: 'agent'` (with `agent_url` + `id`). When implementing the filter on the seller side, narrow on `source` before reading `data_provider_domain` — only the catalog variant has it.
64
77
 
78
+ **Prevent at write time:** import `signalId` from `@adcp/sdk`. The typed
79
+ factory injects the `source` discriminator and only takes the fields the
80
+ selected variant requires:
81
+
82
+ ```ts
83
+ signalId.catalog({ data_provider_domain: 'tridentauto.example', id: 'likely_ev_buyers' });
84
+ signalId.agent({ agent_url: 'https://liveramp.com/.well-known/adcp/signals', id: 'custom_auto_intenders' });
85
+ ```
86
+
87
+ A bare-string `signal_ids` filter is rejected by the request type as soon
88
+ as you stop typing it as `any`.
89
+
65
90
  ---
66
91
 
67
92
  ## 3. `VASTAsset` requires an embedded `delivery_type` discriminator
68
93
 
69
- `asset_type: 'vast'` is itself a discriminator at the asset level. A *second* discriminator (`delivery_type`) picks between inline VAST XML and a redirect URL. Both are required; you can't pass `content` or `vast_url` without `delivery_type`.
94
+ `asset_type: 'vast'` is itself a discriminator at the asset level. A _second_ discriminator (`delivery_type`) picks between inline VAST XML and a redirect URL. Both are required; you can't pass `content` or `vast_url` without `delivery_type`.
70
95
 
71
96
  ✗ Wrong (flat `content` without `delivery_type`):
72
97
 
@@ -125,6 +150,28 @@ Same pattern applies to `DAASTAsset` (audio).
125
150
 
126
151
  Each `PreviewRender` requires `render_id`, `output_format: 'url'` (or `'inline_html'`), `preview_url`, and `role`. Don't omit `role` — the validator requires it.
127
152
 
153
+ **Prevent at write time:** import `previewCreative` from
154
+ `@adcp/sdk`. The typed factory injects the `response_type` discriminator
155
+ and pairs naturally with `urlRender({...})` / `htmlRender({...})` /
156
+ `bothRender({...})` for the per-render `output_format`:
157
+
158
+ ```ts
159
+ previewCreative.single({
160
+ previews: [
161
+ {
162
+ preview_id: 'prv_abc',
163
+ renders: [urlRender({ render_id: 'rnd_1', preview_url: 'https://...', role: 'primary' })],
164
+ input: { name: 'default' },
165
+ },
166
+ ],
167
+ expires_at: '2026-05-03T00:00:00Z',
168
+ });
169
+ previewCreative.batch({ results: [...] });
170
+ previewCreative.variant({ variant_id, creative_id, previews });
171
+ ```
172
+
173
+ A flat `{ preview: {...} }` shape doesn't typecheck.
174
+
128
175
  ---
129
176
 
130
177
  ## 5. `BuildCreativeReturn` has 4 valid shapes — framework auto-wraps the bare manifest
@@ -133,13 +180,13 @@ Each `PreviewRender` requires `render_id`, `output_format: 'url'` (or `'inline_h
133
180
 
134
181
  ```ts
135
182
  type BuildCreativeReturn =
136
- | CreativeManifest // bare single — framework wraps as { creative_manifest: <obj> }
137
- | CreativeManifest[] // bare multi — framework wraps as { creative_manifests: <arr> }
138
- | BuildCreativeSuccess // shaped single — passthrough; you set sandbox/expires_at/preview
139
- | BuildCreativeMultiSuccess // shaped multi — passthrough
183
+ | CreativeManifest // bare single — framework wraps as { creative_manifest: <obj> }
184
+ | CreativeManifest[] // bare multi — framework wraps as { creative_manifests: <arr> }
185
+ | BuildCreativeSuccess // shaped single — passthrough; you set sandbox/expires_at/preview
186
+ | BuildCreativeMultiSuccess; // shaped multi — passthrough
140
187
  ```
141
188
 
142
- Easy mistake: return a bare `CreativeManifest` and confirm the response *seems* fine via tests that read `response.format_id` directly. The wire shape after framework wrapping is `response.creative_manifest.format_id` — a level deeper. Storyboards check the wire path; if you didn't go through the framework wrapper in your test, the storyboard will surface "field missing at `creative_manifest.format_id`" while your local test passes.
189
+ Easy mistake: return a bare `CreativeManifest` and confirm the response _seems_ fine via tests that read `response.format_id` directly. The wire shape after framework wrapping is `response.creative_manifest.format_id` — a level deeper. Storyboards check the wire path; if you didn't go through the framework wrapper in your test, the storyboard will surface "field missing at `creative_manifest.format_id`" while your local test passes.
143
190
 
144
191
  If you need to set `sandbox: true` or attach `preview` previews, return the shaped envelope directly:
145
192
 
@@ -151,16 +198,29 @@ return {
151
198
  };
152
199
  ```
153
200
 
201
+ **Prevent at write time:** import `buildCreativeReturn` from `@adcp/sdk`.
202
+ The typed factory pins which arm of the 4-shape union you're emitting and
203
+ handles the singular/plural manifest-field rename for the shaped envelopes:
204
+
205
+ ```ts
206
+ return buildCreativeReturn.single(manifest); // bare — framework wraps as { creative_manifest }
207
+ return buildCreativeReturn.multi(manifests); // bare — framework wraps as { creative_manifests }
208
+ return buildCreativeReturn.singleEnveloped({ manifest, sandbox: true, expires_at });
209
+ return buildCreativeReturn.multiEnveloped({ manifests, sandbox: true });
210
+ ```
211
+
212
+ Mixing `manifest` / `manifests` arms doesn't typecheck.
213
+
154
214
  ---
155
215
 
156
216
  ## 6. `log_event` projection for walled-garden CAPIs
157
217
 
158
218
  Sales-social adopters fronting walled-garden conversion APIs translate AdCP's `log_event` wire shape onto the upstream CAPI's. Three projections trip every walled-garden integration on the first pass — the upstream returns `400` and the AdCP wire surface gives no hint that the field name or encoding was the problem.
159
219
 
160
- | AdCP wire (`Event`) | Walled-garden CAPI | Translation |
161
- | ------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------- |
162
- | `event_type` (string) | `event_name` (string) | rename on the way out |
163
- | `event_time` (ISO 8601 string) | `event_time` (UNIX seconds, number) | `Math.floor(new Date(t).getTime() / 1000)` |
220
+ | AdCP wire (`Event`) | Walled-garden CAPI | Translation |
221
+ | -------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------ | ---------------------------------------------------------------------------- |
222
+ | `event_type` (string) | `event_name` (string) | rename on the way out |
223
+ | `event_time` (ISO 8601 string) | `event_time` (UNIX seconds, number) | `Math.floor(new Date(t).getTime() / 1000)` |
164
224
  | `user_match` (`hashed_email` / `hashed_phone` / `uids[]` / `click_id` / `client_ip`+`client_user_agent`) | `user_data.{email_sha256,phone_sha256,external_id_sha256}` (≥1 required) | map per the upstream's identifier types; drop events with empty `user_match` |
165
225
 
166
226
  ### 6.1 `event_name`, not `event_type`
@@ -187,13 +247,17 @@ upstream.trackEvents({
187
247
  ✗ Wrong:
188
248
 
189
249
  ```ts
190
- { event_time: e.event_time } // '2026-04-05T14:30:00Z'
250
+ {
251
+ event_time: e.event_time;
252
+ } // '2026-04-05T14:30:00Z'
191
253
  ```
192
254
 
193
255
  ✓ Right:
194
256
 
195
257
  ```ts
196
- { event_time: Math.floor(new Date(e.event_time).getTime() / 1000) }
258
+ {
259
+ event_time: Math.floor(new Date(e.event_time).getTime() / 1000);
260
+ }
197
261
  ```
198
262
 
199
263
  ### 6.3 Hashed-identifier requirement — read `Event.user_match`, drop on empty
@@ -221,11 +285,11 @@ The `examples/hello_seller_adapter_social.ts` reference adapter codifies all thr
221
285
 
222
286
  The spec definitions:
223
287
 
224
- | Value | Use when | Example adopter |
225
- | --- | --- | --- |
226
- | `marketplace` | Resold third-party segments. Provider's authorization is verifiable via their `adagents.json`. | LiveRamp marketplace; Oracle Data Cloud catalog; reseller of third-party panels |
227
- | `owned` | First-party segments derived from data the signal agent **directly owns**. | Retailer purchase data (Kroger 84.51°, Walmart Connect); publisher behavioral data (NYT subscribers); telco data |
228
- | `custom` | Agent-native segment built **on demand** from models, composites, or buyer inputs. Not attributable to a standing upstream provider. | Contextual classifier you train per-request; lookalike model output computed from a buyer's seed audience |
288
+ | Value | Use when | Example adopter |
289
+ | ------------- | ------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------- |
290
+ | `marketplace` | Resold third-party segments. Provider's authorization is verifiable via their `adagents.json`. | LiveRamp marketplace; Oracle Data Cloud catalog; reseller of third-party panels |
291
+ | `owned` | First-party segments derived from data the signal agent **directly owns**. | Retailer purchase data (Kroger 84.51°, Walmart Connect); publisher behavioral data (NYT subscribers); telco data |
292
+ | `custom` | Agent-native segment built **on demand** from models, composites, or buyer inputs. Not attributable to a standing upstream provider. | Contextual classifier you train per-request; lookalike model output computed from a buyer's seed audience |
229
293
 
230
294
  **`owned` is the default for first-party data agents.** Most non-marketplace adopters mis-classify their segments as `custom` because the segment was "built" — but the test is provenance, not lifecycle. If you can point at a stable data-asset you own (a customer table, a pixel, a panel), it's `owned`. `custom` is reserved for segments that don't have a standing data asset behind them — the agent computed them per-call.
231
295
 
@@ -9,16 +9,18 @@ A creative agent accepts assets from buyers, stores or transforms them, and retu
9
9
 
10
10
  ## Pick your fork target
11
11
 
12
- Three creative archetypes; two have dedicated worked adapters, the third lives in `build-generative-seller-agent` because it's coupled with selling inventory.
12
+ Three creative archetypes. Two have dedicated worked adapters; the third (`creative-generative`) reuses the template adapter and applies brief-to-creative deltas.
13
13
 
14
- | Specialism | Archetype | Fork this | Mock upstream | Storyboard |
15
- | --- | --- | --- | --- | --- |
16
- | `creative-ad-server` | Stateful library, pricing + billing (Innovid, Flashtalking, CM360, GAM-creative) | [`hello_creative_adapter_ad_server.ts`](../../examples/hello_creative_adapter_ad_server.ts) | `npx adcp mock-server creative-ad-server` | `creative_ad_server` |
17
- | `creative-template` | Stateless transform from inline manifest (Celtra, AudioStack, ElevenLabs, Resemble) | [`hello_creative_adapter_template.ts`](../../examples/hello_creative_adapter_template.ts) | `npx adcp mock-server creative-template` | `creative_template` |
18
- | `creative-generative` | Brief-to-creative generation (AI ad networks coupled with sales) | `skills/build-generative-seller-agent/` | | `creative_generative` |
14
+ | Specialism | Archetype | Fork this | Mock upstream | Storyboard |
15
+ | --------------------- | --------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ----------------------------------------- | --------------------- |
16
+ | `creative-ad-server` | Stateful library, pricing + billing (Innovid, Flashtalking, CM360, GAM-creative) | [`hello_creative_adapter_ad_server.ts`](../../examples/hello_creative_adapter_ad_server.ts) | `npx adcp mock-server creative-ad-server` | `creative_ad_server` |
17
+ | `creative-template` | Stateless transform from inline manifest (Celtra, AudioStack, ElevenLabs, Resemble) | [`hello_creative_adapter_template.ts`](../../examples/hello_creative_adapter_template.ts) | `npx adcp mock-server creative-template` | `creative_template` |
18
+ | `creative-generative` | Brief-to-creative generation (standalone generative platform; not coupled with selling) | Same — fork the template adapter and apply the [generative deltas below](#creative-generative) | Same | `creative_generative` |
19
19
 
20
20
  The `interaction_model` in each specialism's `index.yaml` is the forcing function: `stateful_ad_server`, `stateless_transform`, `stateless_generate`. Decide which one matches your business, then fork the adapter for that row.
21
21
 
22
+ > **Coupling generation with selling inventory?** That's the AI-ad-network shape (e.g., generative DSPs that sell programmatic inventory and generate the creative). See [`skills/build-generative-seller-agent/`](../build-generative-seller-agent/SKILL.md) — combine `sales-non-guaranteed` + `creative-generative`.
23
+
22
24
  For exact response shapes, error codes, and optional fields, `docs/llms.txt` is the canonical reference. The fork target stays in sync with the spec because PR #1394's three-gate contract fails CI when it drifts.
23
25
 
24
26
  ## When to use this skill
@@ -29,7 +31,7 @@ For exact response shapes, error codes, and optional fields, `docs/llms.txt` is
29
31
  **Not this skill:**
30
32
 
31
33
  - Brief-to-creative generation coupled with selling inventory (AI ad network) → `skills/build-generative-seller-agent/`
32
- - Publisher creative service that pairs with selling — usually a `build-seller-agent` adopter that omits a creative-* specialism claim
34
+ - Publisher creative service that pairs with selling — usually a `build-seller-agent` adopter that omits a creative-\* specialism claim
33
35
 
34
36
  ## Cross-cutting rules
35
37
 
@@ -90,7 +92,20 @@ curl -H 'Authorization: Bearer mock_creative_template_key_do_not_use_in_prod' \
90
92
  # Final: { ..., "status": "complete", "output": { "audio_url": "….mp3", "preview_url": "...", "assets": [{ "kind": "audio_url", "mime_type": "audio/mpeg" }] } }
91
93
  ```
92
94
 
93
- **`creative-generative`** — generate from `message` + `brand.domain`; honor `quality: draft|production`; support refinement (re-send manifest in). Goes through `skills/build-generative-seller-agent/` because it's coupled with selling inventory.
95
+ ### `creative-generative`
96
+
97
+ Forking [`hello_creative_adapter_template.ts`](../../examples/hello_creative_adapter_template.ts) for a `creative-generative` agent? Apply these deltas — the template adapter already handles the stateless `build_creative` flow, manifest projection, and async render polling. Generative just changes the **input semantics** (brief, not template inputs) and adds brand resolution.
98
+
99
+ - **`build_creative` accepts `message` + `brand.domain`** — no `template_id`, no slot inputs. Treat `message` as the creative brief and `brand.domain` as the brand identity.
100
+ - **Honor `quality: draft|production`** — drafts are cheap/fast (lower-quality model, no human review); production goes through full safety + brand checks.
101
+ - **Refinement loop** — buyers re-send the prior `creative_manifest` plus a new `message` to iterate. Detect "iterating on this manifest" by manifest-id presence and route to your refine endpoint instead of generate.
102
+ - **Brand resolution via `sync_accounts`** — buyers sync an account with `brand.domain`; treat that domain as resolvable for subsequent `build_creative` calls. Don't hardcode a brand allowlist; storyboards use fictional `.example` TLD brands.
103
+ - **Response shape stays the same** — `{ creative_manifest: { format_id, assets } }`, **not** `{ creative_id, status, preview_url }` (those are `sync_creatives` fields).
104
+ - **Delete the template-input slot validation** in the template adapter's `build_creative` handler — generative agents accept free-form briefs and can't validate slot presence/types up front.
105
+
106
+ The `creative_generative` storyboard exercises the same async render contract as `creative_template` — `build_creative` returns a render id, the buyer polls until status flips to complete. The template adapter's polling pattern transfers verbatim.
107
+
108
+ If your platform also sells inventory (AI ad network), claim both `sales-non-guaranteed` + `creative-generative` and see [`../build-generative-seller-agent/`](../build-generative-seller-agent/SKILL.md) for the combined wiring.
94
109
 
95
110
  ## Validate locally
96
111
 
@@ -5,20 +5,18 @@ description: Use when building an AdCP retail media network agent — a platform
5
5
 
6
6
  # Build a Retail Media Agent
7
7
 
8
- A retail media agent sells on-site placements driven by a product catalog and reports conversion outcomes back to buyers. The fastest path is to **fork a seller adapter** and add the catalog-driven surface (`syncCatalogs`, `syncEventSources`, `logEvent`, `providePerformanceFeedback`) on top.
8
+ A retail media agent sells on-site placements driven by a product catalog and reports conversion outcomes back to buyers. The fastest path is to **fork a worked seller adapter** and replace its `// SWAP:` markers with calls to your backend.
9
9
 
10
10
  ## Pick your fork target
11
11
 
12
- There's no dedicated `hello_retail_media_adapter_*.ts` yet retail-media is additive on top of `sales-non-guaranteed`, so adopters fork the seller adapter and add the catalog surface.
12
+ | Specialism | Status | Fork this | Mock upstream | Storyboard |
13
+ | ---------------------- | ------- | --------------------------------------------------------------------------------- | ----------------------------------- | ---------------------- |
14
+ | `sales-catalog-driven` | stable | [`hello_seller_adapter_social.ts`](../../examples/hello_seller_adapter_social.ts) | `npx adcp mock-server sales-social` | `sales_catalog_driven` |
15
+ | `sales-retail-media` | preview | Same | Same | placeholder |
13
16
 
14
- | Specialism | Status | Fork this | Add | Storyboard |
15
- | --- | --- | --- | --- | --- |
16
- | `sales-catalog-driven` | stable | [`hello_seller_adapter_non_guaranteed.ts`](../../examples/hello_seller_adapter_non_guaranteed.ts) | `syncCatalogs`, `syncEventSources`, `logEvent`, `providePerformanceFeedback` | `sales_catalog_driven` |
17
- | `sales-retail-media` | preview | Same | + retail-specific surface encoding in `publisher_properties` / `format_ids` (search vs PDP vs homepage vs offsite vs in-store) | placeholder |
17
+ The social fork target is the closest baseline because it already implements the catalog-driven surface (`syncCatalogs`, `syncEventSources`, `logEvent`) on top of `SalesIngestionPlatform`. Walled-garden social platforms and retail media networks share the same wire-level shape — buyer pushes catalogs and audiences, platform reports conversions, both close the loop via `provide_performance_feedback`. Apply the retail-specific deltas below.
18
18
 
19
- A worked retail-media fork target is tracked as a follow-up. Until then, the seller `hello_seller_adapter_non_guaranteed.ts` is the closest baseline; the deltas are in [`docs/llms.txt`](../../docs/llms.txt) under `#### \`sync_catalogs\``, `#### \`sync_event_sources\``, `#### \`log_event\``, `#### \`provide_performance_feedback\``.
20
-
21
- For exact response shapes, error codes, and optional fields, `docs/llms.txt` is the canonical reference.
19
+ For exact response shapes, error codes, and optional fields, [`docs/llms.txt`](../../docs/llms.txt) is the canonical reference. The fork target stays in sync with the spec because PR #1394's three-gate contract fails CI when it drifts.
22
20
 
23
21
  ## When to use this skill
24
22
 
@@ -36,31 +34,39 @@ For exact response shapes, error codes, and optional fields, `docs/llms.txt` is
36
34
 
37
35
  ## Cross-cutting rules
38
36
 
39
- Every retail-media agent hits the cross-cutting rules in [`../cross-cutting.md`](../cross-cutting.md). Plus all the seller cross-cutting from [`../build-seller-agent/SKILL.md`](../build-seller-agent/SKILL.md) — retail-media is additive on top of the seller baseline. The high-traffic ones for retail-media (deep-linked to the rule):
37
+ Every retail-media agent hits the cross-cutting rules in [`../cross-cutting.md`](../cross-cutting.md) plus the seller cross-cutting from [`../build-seller-agent/SKILL.md`](../build-seller-agent/SKILL.md) — retail-media is additive on top of the seller baseline. The high-traffic ones for retail-media:
38
+
39
+ - [`idempotency_key`](../cross-cutting.md#idempotency_key-is-required-on-every-mutating-call) on `sync_catalogs`, `sync_event_sources`, `log_event`, `provide_performance_feedback`
40
+ - [Webhooks](../cross-cutting.md#webhooks-stable-operation_id-across-retries) — for catalog-ingestion completions, use `catalog_sync.${catalog_id}.${batch_id}` as the stable `operation_id`
41
+ - [SHAPE-GOTCHAS §6](../SHAPE-GOTCHAS.md#6-log_event-projection-for-walled-garden-capis) — `log_event` field-name + UNIX-seconds + `user_match` projections (shared with sales-social CAPIs)
42
+
43
+ ## Specialism deltas
40
44
 
41
- - [`idempotency_key`](../cross-cutting.md#idempotency_key-is-required-on-every-mutating-call) on `sync_catalogs`, `sync_event_sources`, `log_event`, `provide_performance_feedback` (in addition to the seller-side mutating tools)
42
- - [Webhooks](../cross-cutting.md#webhooks-stable-operation_id-across-retries) — for catalog-ingestion completions, use `catalog_sync.${catalog_id}.${batch_id}` as a stable `operation_id`
45
+ ### `sales-catalog-driven`
43
46
 
44
- ## Specialism deltas at a glance
47
+ What's different from the social baseline you forked:
45
48
 
46
- **`sales-catalog-driven`**
49
+ - **Products declare catalog support**: `supports_catalog: true` and `supports_conversion_tracking: true` on each `Product`.
50
+ - **`create_media_buy` accepts `packages[].catalogs[]`** — references to previously-synced catalog ids. The seller renders the dynamic ad from the catalog row at serve time.
51
+ - **`sync_catalogs`** ingests product feeds (JSON / CSV / XML). Required per-row fields: `product_id`, `title`, `price`, `image_url`, `category`. Reject rows missing any of these with a structured error and surface the per-row failures in the response.
52
+ - **`sync_event_sources`** registers conversion endpoints — `purchase`, `add_to_cart`, `page_view`, `search`. Each event source has a `source_id` the buyer references on subsequent `log_event` calls.
53
+ - **`log_event` accepts `content_ids`** — the catalog row IDs the conversion attaches to. Counter-only responses pass the storyboard today; closed-loop attribution lands in 3.1.
54
+ - **`provide_performance_feedback`** accepts buyer optimization signals (clicked / not-clicked / converted / not-converted on specific impressions). Use it to close the bid-quality loop.
47
55
 
48
- - Products declare `supports_catalog: true` and `supports_conversion_tracking: true`
49
- - `create_media_buy` accepts `packages[].catalogs[]` referencing previously-synced catalog ids
50
- - `sync_catalogs` ingests product feeds (JSON/CSV/XML) with at minimum `product_id`, `title`, `price`, `image_url`, `category`
51
- - `sync_event_sources` registers conversion endpoints (purchase, add_to_cart, page_view, search)
52
- - `log_event` accepts conversion events with `content_ids` and returns a `match_quality` score; counter-only responses pass the storyboard (closed-loop attribution lands in 3.1)
53
- - `provide_performance_feedback` accepts buyer optimization signals back
56
+ ### `sales-retail-media`
54
57
 
55
- **`sales-retail-media`** — currently a v3.1 placeholder (empty `phases`). Ship the catalog-driven baseline plus retail-specific surface encoding in `publisher_properties` / `format_ids`. Claim the specialism to advertise intent.
58
+ Currently a v3.1 placeholder (empty `phases` in `index.yaml`); the protocol baseline is all that's enforced today. Claim the specialism to advertise intent. The forward-looking deltas on top of `sales-catalog-driven`:
56
59
 
57
- Attribution linkage (`log_event.content_ids` catalog `item_id` `media_buy_id`) is deliberately out-of-scope for AdCP 3.0 the storyboard accepts counter-only responses. Closed-loop attribution + ROAS reporting land in 3.1.
60
+ - **Onsite placement encoding** in `publisher_properties` and `format_ids` — search results, product detail page (PDP), homepage, category, offsite (display retargeting), in-store (DOOH).
61
+ - **Sponsored-product vs sponsored-display** distinction surfaces as separate `format_ids` per product.
62
+ - **Offsite + in-store** require `publisher_properties.environment` to disambiguate the rendering surface (web vs DOOH vs CTV) — the buyer's targeting overlays vary by environment.
63
+ - **Closed-loop ROAS** lands with attribution in 3.1.
58
64
 
59
65
  ## Validate locally
60
66
 
61
67
  ```bash
62
- # Run the fork-matrix gate against the seller-non-guaranteed baseline
63
- npm run compliance:fork-matrix -- --test-name-pattern="hello-seller-adapter-non-guaranteed"
68
+ # Run the fork-matrix gate against the social baseline
69
+ npm run compliance:fork-matrix -- --test-name-pattern="hello-seller-adapter-social"
64
70
 
65
71
  # Or validate your forked agent directly against the catalog-driven storyboard
66
72
  adcp storyboard run http://127.0.0.1:3005/mcp sales_catalog_driven \
@@ -73,7 +79,7 @@ For deeper validation: [`docs/guides/VALIDATE-YOUR-AGENT.md`](../../docs/guides/
73
79
 
74
80
  ## Common shape gotchas
75
81
 
76
- `get_media_buy_delivery /reporting_period/start|end` are ISO 8601 **date-time** strings, not date-only. Per-package billing rows require `package_id`, `spend`, `pricing_model`, `rate`, `currency`. `sync_accounts` rows require `action: 'created' | 'updated' | 'unchanged' | 'failed'`. See [`../SHAPE-GOTCHAS.md`](../SHAPE-GOTCHAS.md).
82
+ `get_media_buy_delivery /reporting_period/start|end` are ISO 8601 **date-time** strings, not date-only. Per-package billing rows require `package_id`, `spend`, `pricing_model`, `rate`, `currency`. `sync_accounts` rows require `action: 'created' | 'updated' | 'unchanged' | 'failed'`. See [`../SHAPE-GOTCHAS.md`](../SHAPE-GOTCHAS.md) and [§6](../SHAPE-GOTCHAS.md#6-log_event-projection-for-walled-garden-capis) for `log_event` field-rename + UNIX-seconds patterns shared with social CAPIs.
77
83
 
78
84
  ## Migration notes
79
85