@adcp/sdk 6.14.0 → 6.15.1

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 (1021) hide show
  1. package/ADCP_VERSION +1 -1
  2. package/bin/adcp.js +25 -7
  3. package/compliance/cache/{3.0.7.previous/protocols → 3.0.8/domains}/media-buy/scenarios/creative_fate_after_cancellation.yaml +5 -5
  4. package/compliance/cache/{3.0.7.previous/protocols → 3.0.8/domains}/media-buy/scenarios/governance_approved.yaml +1 -1
  5. package/compliance/cache/{3.0.7/protocols → 3.0.8/domains}/media-buy/scenarios/governance_conditions.yaml +1 -1
  6. package/compliance/cache/{3.0.7/protocols → 3.0.8/domains}/media-buy/scenarios/governance_denied.yaml +1 -1
  7. package/compliance/cache/{3.0.7/protocols → 3.0.8/domains}/media-buy/scenarios/governance_denied_recovery.yaml +3 -3
  8. package/compliance/cache/{3.0.7.previous → 3.0.8}/domains/media-buy/scenarios/invalid_transitions.yaml +1 -1
  9. package/compliance/cache/{3.0.7.previous/protocols → 3.0.8/domains}/media-buy/scenarios/inventory_list_no_match.yaml +1 -1
  10. package/compliance/cache/{3.0.7 → 3.0.8}/domains/media-buy/scenarios/inventory_list_targeting.yaml +1 -1
  11. package/compliance/cache/{3.0.7/protocols → 3.0.8/domains}/media-buy/scenarios/pending_creatives_to_start.yaml +1 -1
  12. package/compliance/cache/{3.0.7 → 3.0.8}/index.json +2 -2
  13. package/compliance/cache/{3.0.7.previous/domains → 3.0.8/protocols}/media-buy/scenarios/creative_fate_after_cancellation.yaml +5 -5
  14. package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/scenarios/governance_approved.yaml +1 -1
  15. package/compliance/cache/{3.0.7.previous/domains → 3.0.8/protocols}/media-buy/scenarios/governance_conditions.yaml +1 -1
  16. package/compliance/cache/{3.0.7.previous → 3.0.8}/protocols/media-buy/scenarios/governance_denied.yaml +1 -1
  17. package/compliance/cache/{3.0.7.previous → 3.0.8}/protocols/media-buy/scenarios/governance_denied_recovery.yaml +3 -3
  18. package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/scenarios/invalid_transitions.yaml +1 -1
  19. package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/scenarios/inventory_list_no_match.yaml +1 -1
  20. package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/scenarios/inventory_list_targeting.yaml +1 -1
  21. package/compliance/cache/{3.0.7.previous → 3.0.8}/protocols/media-buy/scenarios/pending_creatives_to_start.yaml +1 -1
  22. package/compliance/cache/{3.0.7 → 3.0.8.previous}/domains/media-buy/scenarios/creative_fate_after_cancellation.yaml +5 -5
  23. package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/scenarios/governance_approved.yaml +1 -1
  24. package/compliance/cache/{3.0.7 → 3.0.8.previous}/domains/media-buy/scenarios/governance_conditions.yaml +1 -1
  25. package/compliance/cache/{3.0.7 → 3.0.8.previous}/domains/media-buy/scenarios/governance_denied.yaml +1 -1
  26. package/compliance/cache/{3.0.7 → 3.0.8.previous}/domains/media-buy/scenarios/governance_denied_recovery.yaml +3 -3
  27. package/compliance/cache/{3.0.7.previous/protocols → 3.0.8.previous/domains}/media-buy/scenarios/invalid_transitions.yaml +1 -1
  28. package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/scenarios/inventory_list_no_match.yaml +1 -1
  29. package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/scenarios/inventory_list_targeting.yaml +1 -1
  30. package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/scenarios/pending_creatives_to_start.yaml +1 -1
  31. package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/index.json +2 -2
  32. package/compliance/cache/{3.0.7 → 3.0.8.previous}/protocols/media-buy/scenarios/creative_fate_after_cancellation.yaml +5 -5
  33. package/compliance/cache/{3.0.7/domains → 3.0.8.previous/protocols}/media-buy/scenarios/governance_approved.yaml +1 -1
  34. package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/media-buy/scenarios/governance_conditions.yaml +1 -1
  35. package/compliance/cache/{3.0.7.previous/domains → 3.0.8.previous/protocols}/media-buy/scenarios/governance_denied.yaml +1 -1
  36. package/compliance/cache/{3.0.7.previous/domains → 3.0.8.previous/protocols}/media-buy/scenarios/governance_denied_recovery.yaml +3 -3
  37. package/compliance/cache/{3.0.7/domains → 3.0.8.previous/protocols}/media-buy/scenarios/invalid_transitions.yaml +1 -1
  38. package/compliance/cache/{3.0.7/domains → 3.0.8.previous/protocols}/media-buy/scenarios/inventory_list_no_match.yaml +1 -1
  39. package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/media-buy/scenarios/inventory_list_targeting.yaml +1 -1
  40. package/compliance/cache/{3.0.7/domains → 3.0.8.previous/protocols}/media-buy/scenarios/pending_creatives_to_start.yaml +1 -1
  41. package/dist/lib/core/ConversationTypes.d.ts +6 -2
  42. package/dist/lib/core/ConversationTypes.d.ts.map +1 -1
  43. package/dist/lib/core/TaskExecutor.d.ts +1 -1
  44. package/dist/lib/core/TaskExecutor.d.ts.map +1 -1
  45. package/dist/lib/core/TaskExecutor.js +106 -12
  46. package/dist/lib/core/TaskExecutor.js.map +1 -1
  47. package/dist/lib/index.d.ts +5 -0
  48. package/dist/lib/index.d.ts.map +1 -1
  49. package/dist/lib/index.js +52 -4
  50. package/dist/lib/index.js.map +1 -1
  51. package/dist/lib/schemas-data/3.0/a2ui/bound-value.json +1 -1
  52. package/dist/lib/schemas-data/3.0/a2ui/component.json +1 -1
  53. package/dist/lib/schemas-data/3.0/a2ui/si-catalog.json +25 -25
  54. package/dist/lib/schemas-data/3.0/a2ui/surface.json +2 -2
  55. package/dist/lib/schemas-data/3.0/a2ui/user-action.json +1 -1
  56. package/dist/lib/schemas-data/3.0/account/get-account-financials-request.json +5 -5
  57. package/dist/lib/schemas-data/3.0/account/get-account-financials-response.json +10 -10
  58. package/dist/lib/schemas-data/3.0/account/list-accounts-request.json +4 -4
  59. package/dist/lib/schemas-data/3.0/account/list-accounts-response.json +6 -6
  60. package/dist/lib/schemas-data/3.0/account/report-usage-request.json +5 -5
  61. package/dist/lib/schemas-data/3.0/account/report-usage-response.json +4 -4
  62. package/dist/lib/schemas-data/3.0/account/sync-accounts-request.json +9 -9
  63. package/dist/lib/schemas-data/3.0/account/sync-accounts-response.json +12 -12
  64. package/dist/lib/schemas-data/3.0/account/sync-governance-request.json +5 -5
  65. package/dist/lib/schemas-data/3.0/account/sync-governance-response.json +8 -8
  66. package/dist/lib/schemas-data/3.0/adagents.json +32 -32
  67. package/dist/lib/schemas-data/3.0/brand/acquire-rights-request.json +8 -8
  68. package/dist/lib/schemas-data/3.0/brand/acquire-rights-response.json +14 -14
  69. package/dist/lib/schemas-data/3.0/brand/creative-approval-request.json +4 -4
  70. package/dist/lib/schemas-data/3.0/brand/creative-approval-response.json +10 -10
  71. package/dist/lib/schemas-data/3.0/brand/get-brand-identity-request.json +3 -3
  72. package/dist/lib/schemas-data/3.0/brand/get-brand-identity-response.json +8 -8
  73. package/dist/lib/schemas-data/3.0/brand/get-rights-request.json +7 -7
  74. package/dist/lib/schemas-data/3.0/brand/get-rights-response.json +9 -9
  75. package/dist/lib/schemas-data/3.0/brand/revocation-notification.json +4 -4
  76. package/dist/lib/schemas-data/3.0/brand/rights-pricing-option.json +5 -5
  77. package/dist/lib/schemas-data/3.0/brand/rights-terms.json +3 -3
  78. package/dist/lib/schemas-data/3.0/brand/update-rights-request.json +4 -4
  79. package/dist/lib/schemas-data/3.0/brand/update-rights-response.json +9 -9
  80. package/dist/lib/schemas-data/3.0/brand.json +14 -14
  81. package/dist/lib/schemas-data/3.0/bundled/content-standards/calibrate-content-request.json +2 -2
  82. package/dist/lib/schemas-data/3.0/bundled/content-standards/calibrate-content-response.json +2 -2
  83. package/dist/lib/schemas-data/3.0/bundled/content-standards/create-content-standards-request.json +2 -2
  84. package/dist/lib/schemas-data/3.0/bundled/content-standards/create-content-standards-response.json +2 -2
  85. package/dist/lib/schemas-data/3.0/bundled/content-standards/get-content-standards-request.json +2 -2
  86. package/dist/lib/schemas-data/3.0/bundled/content-standards/get-content-standards-response.json +2 -2
  87. package/dist/lib/schemas-data/3.0/bundled/content-standards/get-media-buy-artifacts-request.json +2 -2
  88. package/dist/lib/schemas-data/3.0/bundled/content-standards/get-media-buy-artifacts-response.json +2 -2
  89. package/dist/lib/schemas-data/3.0/bundled/content-standards/list-content-standards-request.json +2 -2
  90. package/dist/lib/schemas-data/3.0/bundled/content-standards/list-content-standards-response.json +2 -2
  91. package/dist/lib/schemas-data/3.0/bundled/content-standards/update-content-standards-request.json +2 -2
  92. package/dist/lib/schemas-data/3.0/bundled/content-standards/update-content-standards-response.json +2 -2
  93. package/dist/lib/schemas-data/3.0/bundled/content-standards/validate-content-delivery-request.json +2 -2
  94. package/dist/lib/schemas-data/3.0/bundled/content-standards/validate-content-delivery-response.json +2 -2
  95. package/dist/lib/schemas-data/3.0/bundled/core/tasks-get-request.json +2 -2
  96. package/dist/lib/schemas-data/3.0/bundled/core/tasks-get-response.json +2 -2
  97. package/dist/lib/schemas-data/3.0/bundled/core/tasks-list-request.json +2 -2
  98. package/dist/lib/schemas-data/3.0/bundled/core/tasks-list-response.json +2 -2
  99. package/dist/lib/schemas-data/3.0/bundled/creative/get-creative-delivery-request.json +2 -2
  100. package/dist/lib/schemas-data/3.0/bundled/creative/get-creative-delivery-response.json +2 -2
  101. package/dist/lib/schemas-data/3.0/bundled/creative/get-creative-features-request.json +2 -2
  102. package/dist/lib/schemas-data/3.0/bundled/creative/get-creative-features-response.json +2 -2
  103. package/dist/lib/schemas-data/3.0/bundled/creative/list-creative-formats-request.json +2 -2
  104. package/dist/lib/schemas-data/3.0/bundled/creative/list-creative-formats-response.json +2 -2
  105. package/dist/lib/schemas-data/3.0/bundled/creative/list-creatives-request.json +2 -2
  106. package/dist/lib/schemas-data/3.0/bundled/creative/list-creatives-response.json +2 -2
  107. package/dist/lib/schemas-data/3.0/bundled/creative/preview-creative-request.json +2 -2
  108. package/dist/lib/schemas-data/3.0/bundled/creative/preview-creative-response.json +2 -2
  109. package/dist/lib/schemas-data/3.0/bundled/creative/sync-creatives-request.json +2 -2
  110. package/dist/lib/schemas-data/3.0/bundled/creative/sync-creatives-response.json +2 -2
  111. package/dist/lib/schemas-data/3.0/bundled/media-buy/build-creative-request.json +2 -2
  112. package/dist/lib/schemas-data/3.0/bundled/media-buy/build-creative-response.json +2 -2
  113. package/dist/lib/schemas-data/3.0/bundled/media-buy/create-media-buy-request.json +2 -2
  114. package/dist/lib/schemas-data/3.0/bundled/media-buy/create-media-buy-response.json +2 -2
  115. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-media-buy-delivery-request.json +2 -2
  116. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-media-buy-delivery-response.json +2 -2
  117. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-media-buys-request.json +2 -2
  118. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-media-buys-response.json +2 -2
  119. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-products-request.json +2 -2
  120. package/dist/lib/schemas-data/3.0/bundled/media-buy/get-products-response.json +2 -2
  121. package/dist/lib/schemas-data/3.0/bundled/media-buy/list-creative-formats-request.json +2 -2
  122. package/dist/lib/schemas-data/3.0/bundled/media-buy/list-creative-formats-response.json +2 -2
  123. package/dist/lib/schemas-data/3.0/bundled/media-buy/log-event-request.json +2 -2
  124. package/dist/lib/schemas-data/3.0/bundled/media-buy/log-event-response.json +2 -2
  125. package/dist/lib/schemas-data/3.0/bundled/media-buy/package-request.json +2 -2
  126. package/dist/lib/schemas-data/3.0/bundled/media-buy/provide-performance-feedback-request.json +2 -2
  127. package/dist/lib/schemas-data/3.0/bundled/media-buy/provide-performance-feedback-response.json +2 -2
  128. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-audiences-request.json +2 -2
  129. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-audiences-response.json +2 -2
  130. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-catalogs-request.json +2 -2
  131. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-catalogs-response.json +2 -2
  132. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-event-sources-request.json +2 -2
  133. package/dist/lib/schemas-data/3.0/bundled/media-buy/sync-event-sources-response.json +2 -2
  134. package/dist/lib/schemas-data/3.0/bundled/media-buy/update-media-buy-request.json +2 -2
  135. package/dist/lib/schemas-data/3.0/bundled/media-buy/update-media-buy-response.json +2 -2
  136. package/dist/lib/schemas-data/3.0/bundled/property/create-property-list-request.json +2 -2
  137. package/dist/lib/schemas-data/3.0/bundled/property/create-property-list-response.json +2 -2
  138. package/dist/lib/schemas-data/3.0/bundled/property/delete-property-list-request.json +2 -2
  139. package/dist/lib/schemas-data/3.0/bundled/property/delete-property-list-response.json +2 -2
  140. package/dist/lib/schemas-data/3.0/bundled/property/get-property-list-request.json +2 -2
  141. package/dist/lib/schemas-data/3.0/bundled/property/get-property-list-response.json +2 -2
  142. package/dist/lib/schemas-data/3.0/bundled/property/list-property-lists-request.json +2 -2
  143. package/dist/lib/schemas-data/3.0/bundled/property/list-property-lists-response.json +2 -2
  144. package/dist/lib/schemas-data/3.0/bundled/property/update-property-list-request.json +2 -2
  145. package/dist/lib/schemas-data/3.0/bundled/property/update-property-list-response.json +2 -2
  146. package/dist/lib/schemas-data/3.0/bundled/property/validate-property-delivery-request.json +2 -2
  147. package/dist/lib/schemas-data/3.0/bundled/property/validate-property-delivery-response.json +2 -2
  148. package/dist/lib/schemas-data/3.0/bundled/protocol/get-adcp-capabilities-request.json +2 -2
  149. package/dist/lib/schemas-data/3.0/bundled/protocol/get-adcp-capabilities-response.json +2 -2
  150. package/dist/lib/schemas-data/3.0/bundled/signals/activate-signal-request.json +2 -2
  151. package/dist/lib/schemas-data/3.0/bundled/signals/activate-signal-response.json +2 -2
  152. package/dist/lib/schemas-data/3.0/bundled/signals/get-signals-request.json +2 -2
  153. package/dist/lib/schemas-data/3.0/bundled/signals/get-signals-response.json +2 -2
  154. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-get-offering-request.json +2 -2
  155. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-get-offering-response.json +2 -2
  156. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-initiate-session-request.json +2 -2
  157. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-initiate-session-response.json +2 -2
  158. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-send-message-request.json +2 -2
  159. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-send-message-response.json +2 -2
  160. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-terminate-session-request.json +2 -2
  161. package/dist/lib/schemas-data/3.0/bundled/sponsored-intelligence/si-terminate-session-response.json +2 -2
  162. package/dist/lib/schemas-data/3.0/collection/base-collection-source.json +3 -3
  163. package/dist/lib/schemas-data/3.0/collection/collection-list-changed-webhook.json +2 -2
  164. package/dist/lib/schemas-data/3.0/collection/collection-list-filters.json +7 -7
  165. package/dist/lib/schemas-data/3.0/collection/collection-list.json +5 -5
  166. package/dist/lib/schemas-data/3.0/collection/create-collection-list-request.json +7 -7
  167. package/dist/lib/schemas-data/3.0/collection/create-collection-list-response.json +4 -4
  168. package/dist/lib/schemas-data/3.0/collection/delete-collection-list-request.json +4 -4
  169. package/dist/lib/schemas-data/3.0/collection/delete-collection-list-response.json +3 -3
  170. package/dist/lib/schemas-data/3.0/collection/get-collection-list-request.json +4 -4
  171. package/dist/lib/schemas-data/3.0/collection/get-collection-list-response.json +10 -10
  172. package/dist/lib/schemas-data/3.0/collection/list-collection-lists-request.json +5 -5
  173. package/dist/lib/schemas-data/3.0/collection/list-collection-lists-response.json +5 -5
  174. package/dist/lib/schemas-data/3.0/collection/update-collection-list-request.json +7 -7
  175. package/dist/lib/schemas-data/3.0/collection/update-collection-list-response.json +4 -4
  176. package/dist/lib/schemas-data/3.0/content-standards/artifact-webhook-payload.json +3 -3
  177. package/dist/lib/schemas-data/3.0/content-standards/artifact.json +7 -7
  178. package/dist/lib/schemas-data/3.0/content-standards/calibrate-content-request.json +4 -4
  179. package/dist/lib/schemas-data/3.0/content-standards/calibrate-content-response.json +8 -8
  180. package/dist/lib/schemas-data/3.0/content-standards/content-standards.json +7 -7
  181. package/dist/lib/schemas-data/3.0/content-standards/create-content-standards-request.json +7 -7
  182. package/dist/lib/schemas-data/3.0/content-standards/create-content-standards-response.json +6 -6
  183. package/dist/lib/schemas-data/3.0/content-standards/get-content-standards-request.json +3 -3
  184. package/dist/lib/schemas-data/3.0/content-standards/get-content-standards-response.json +7 -7
  185. package/dist/lib/schemas-data/3.0/content-standards/get-media-buy-artifacts-request.json +4 -4
  186. package/dist/lib/schemas-data/3.0/content-standards/get-media-buy-artifacts-response.json +8 -8
  187. package/dist/lib/schemas-data/3.0/content-standards/list-content-standards-request.json +5 -5
  188. package/dist/lib/schemas-data/3.0/content-standards/list-content-standards-response.json +8 -8
  189. package/dist/lib/schemas-data/3.0/content-standards/update-content-standards-request.json +7 -7
  190. package/dist/lib/schemas-data/3.0/content-standards/update-content-standards-response.json +6 -6
  191. package/dist/lib/schemas-data/3.0/content-standards/validate-content-delivery-request.json +4 -4
  192. package/dist/lib/schemas-data/3.0/content-standards/validate-content-delivery-response.json +8 -8
  193. package/dist/lib/schemas-data/3.0/core/account-ref.json +2 -2
  194. package/dist/lib/schemas-data/3.0/core/account.json +9 -9
  195. package/dist/lib/schemas-data/3.0/core/activation-key.json +1 -1
  196. package/dist/lib/schemas-data/3.0/core/ad-inventory-config.json +1 -1
  197. package/dist/lib/schemas-data/3.0/core/agent-encryption-key.json +1 -1
  198. package/dist/lib/schemas-data/3.0/core/agent-signing-key.json +1 -1
  199. package/dist/lib/schemas-data/3.0/core/app-item.json +4 -4
  200. package/dist/lib/schemas-data/3.0/core/assets/asset-union.json +15 -15
  201. package/dist/lib/schemas-data/3.0/core/assets/audio-asset.json +3 -3
  202. package/dist/lib/schemas-data/3.0/core/assets/brief-asset.json +2 -2
  203. package/dist/lib/schemas-data/3.0/core/assets/catalog-asset.json +2 -2
  204. package/dist/lib/schemas-data/3.0/core/assets/css-asset.json +2 -2
  205. package/dist/lib/schemas-data/3.0/core/assets/daast-asset.json +4 -4
  206. package/dist/lib/schemas-data/3.0/core/assets/html-asset.json +2 -2
  207. package/dist/lib/schemas-data/3.0/core/assets/image-asset.json +2 -2
  208. package/dist/lib/schemas-data/3.0/core/assets/javascript-asset.json +3 -3
  209. package/dist/lib/schemas-data/3.0/core/assets/markdown-asset.json +2 -2
  210. package/dist/lib/schemas-data/3.0/core/assets/text-asset.json +2 -2
  211. package/dist/lib/schemas-data/3.0/core/assets/url-asset.json +3 -3
  212. package/dist/lib/schemas-data/3.0/core/assets/vast-asset.json +4 -4
  213. package/dist/lib/schemas-data/3.0/core/assets/video-asset.json +7 -7
  214. package/dist/lib/schemas-data/3.0/core/assets/webhook-asset.json +7 -7
  215. package/dist/lib/schemas-data/3.0/core/async-response-data.json +25 -25
  216. package/dist/lib/schemas-data/3.0/core/attribution-window.json +4 -4
  217. package/dist/lib/schemas-data/3.0/core/audience-member.json +3 -3
  218. package/dist/lib/schemas-data/3.0/core/audience-selector.json +4 -4
  219. package/dist/lib/schemas-data/3.0/core/brand-id.json +1 -1
  220. package/dist/lib/schemas-data/3.0/core/brand-ref.json +2 -2
  221. package/dist/lib/schemas-data/3.0/core/business-entity.json +2 -2
  222. package/dist/lib/schemas-data/3.0/core/cancellation-policy.json +2 -2
  223. package/dist/lib/schemas-data/3.0/core/catalog-field-mapping.json +2 -2
  224. package/dist/lib/schemas-data/3.0/core/catalog.json +7 -7
  225. package/dist/lib/schemas-data/3.0/core/catchment.json +5 -5
  226. package/dist/lib/schemas-data/3.0/core/collection-distribution.json +2 -2
  227. package/dist/lib/schemas-data/3.0/core/collection-list-ref.json +1 -1
  228. package/dist/lib/schemas-data/3.0/core/collection-selector.json +1 -1
  229. package/dist/lib/schemas-data/3.0/core/collection.json +13 -13
  230. package/dist/lib/schemas-data/3.0/core/content-rating.json +2 -2
  231. package/dist/lib/schemas-data/3.0/core/context.json +1 -1
  232. package/dist/lib/schemas-data/3.0/core/creative-asset.json +6 -6
  233. package/dist/lib/schemas-data/3.0/core/creative-assignment.json +1 -1
  234. package/dist/lib/schemas-data/3.0/core/creative-brief.json +4 -4
  235. package/dist/lib/schemas-data/3.0/core/creative-consumption.json +1 -1
  236. package/dist/lib/schemas-data/3.0/core/creative-filters.json +4 -4
  237. package/dist/lib/schemas-data/3.0/core/creative-item.json +1 -1
  238. package/dist/lib/schemas-data/3.0/core/creative-manifest.json +7 -7
  239. package/dist/lib/schemas-data/3.0/core/creative-policy.json +3 -3
  240. package/dist/lib/schemas-data/3.0/core/creative-variable.json +1 -1
  241. package/dist/lib/schemas-data/3.0/core/creative-variant.json +5 -5
  242. package/dist/lib/schemas-data/3.0/core/data-provider-signal-selector.json +1 -1
  243. package/dist/lib/schemas-data/3.0/core/date-range.json +1 -1
  244. package/dist/lib/schemas-data/3.0/core/datetime-range.json +1 -1
  245. package/dist/lib/schemas-data/3.0/core/daypart-target.json +2 -2
  246. package/dist/lib/schemas-data/3.0/core/deadline-policy.json +1 -1
  247. package/dist/lib/schemas-data/3.0/core/delivery-forecast.json +7 -7
  248. package/dist/lib/schemas-data/3.0/core/delivery-metrics.json +5 -5
  249. package/dist/lib/schemas-data/3.0/core/deployment.json +3 -3
  250. package/dist/lib/schemas-data/3.0/core/destination-item.json +4 -4
  251. package/dist/lib/schemas-data/3.0/core/destination.json +1 -1
  252. package/dist/lib/schemas-data/3.0/core/diagnostic-issue.json +1 -1
  253. package/dist/lib/schemas-data/3.0/core/duration.json +1 -1
  254. package/dist/lib/schemas-data/3.0/core/education-item.json +4 -4
  255. package/dist/lib/schemas-data/3.0/core/error.json +1 -1
  256. package/dist/lib/schemas-data/3.0/core/event-custom-data.json +2 -2
  257. package/dist/lib/schemas-data/3.0/core/event-source-health.json +3 -3
  258. package/dist/lib/schemas-data/3.0/core/event.json +6 -6
  259. package/dist/lib/schemas-data/3.0/core/ext.json +1 -1
  260. package/dist/lib/schemas-data/3.0/core/feature-requirement.json +1 -1
  261. package/dist/lib/schemas-data/3.0/core/flight-item.json +4 -4
  262. package/dist/lib/schemas-data/3.0/core/forecast-point.json +18 -18
  263. package/dist/lib/schemas-data/3.0/core/forecast-range.json +1 -1
  264. package/dist/lib/schemas-data/3.0/core/format-id.json +1 -1
  265. package/dist/lib/schemas-data/3.0/core/format.json +42 -42
  266. package/dist/lib/schemas-data/3.0/core/frequency-cap.json +4 -4
  267. package/dist/lib/schemas-data/3.0/core/generation-credential.json +3 -3
  268. package/dist/lib/schemas-data/3.0/core/geo-breakdown-support.json +3 -3
  269. package/dist/lib/schemas-data/3.0/core/hotel-item.json +4 -4
  270. package/dist/lib/schemas-data/3.0/core/identifier.json +2 -2
  271. package/dist/lib/schemas-data/3.0/core/industry-identifier.json +2 -2
  272. package/dist/lib/schemas-data/3.0/core/insertion-order.json +1 -1
  273. package/dist/lib/schemas-data/3.0/core/installment-deadlines.json +2 -2
  274. package/dist/lib/schemas-data/3.0/core/installment.json +9 -9
  275. package/dist/lib/schemas-data/3.0/core/job-item.json +3 -3
  276. package/dist/lib/schemas-data/3.0/core/limited-series.json +1 -1
  277. package/dist/lib/schemas-data/3.0/core/material-deadline.json +1 -1
  278. package/dist/lib/schemas-data/3.0/core/mcp-webhook-payload.json +5 -5
  279. package/dist/lib/schemas-data/3.0/core/measurement-readiness.json +5 -5
  280. package/dist/lib/schemas-data/3.0/core/measurement-terms.json +3 -3
  281. package/dist/lib/schemas-data/3.0/core/measurement-window.json +1 -1
  282. package/dist/lib/schemas-data/3.0/core/media-buy-features.json +1 -1
  283. package/dist/lib/schemas-data/3.0/core/media-buy.json +7 -7
  284. package/dist/lib/schemas-data/3.0/core/offering-asset-group.json +15 -15
  285. package/dist/lib/schemas-data/3.0/core/offering.json +5 -5
  286. package/dist/lib/schemas-data/3.0/core/optimization-goal.json +6 -6
  287. package/dist/lib/schemas-data/3.0/core/outcome-measurement.json +2 -2
  288. package/dist/lib/schemas-data/3.0/core/overlay.json +1 -1
  289. package/dist/lib/schemas-data/3.0/core/package.json +14 -14
  290. package/dist/lib/schemas-data/3.0/core/pagination-request.json +1 -1
  291. package/dist/lib/schemas-data/3.0/core/pagination-response.json +1 -1
  292. package/dist/lib/schemas-data/3.0/core/performance-feedback.json +3 -3
  293. package/dist/lib/schemas-data/3.0/core/performance-standard.json +4 -4
  294. package/dist/lib/schemas-data/3.0/core/placement-definition.json +5 -5
  295. package/dist/lib/schemas-data/3.0/core/placement.json +2 -2
  296. package/dist/lib/schemas-data/3.0/core/planned-delivery.json +5 -5
  297. package/dist/lib/schemas-data/3.0/core/price.json +1 -1
  298. package/dist/lib/schemas-data/3.0/core/pricing-option.json +10 -10
  299. package/dist/lib/schemas-data/3.0/core/product-allocation.json +4 -4
  300. package/dist/lib/schemas-data/3.0/core/product-filters.json +16 -16
  301. package/dist/lib/schemas-data/3.0/core/product.json +28 -28
  302. package/dist/lib/schemas-data/3.0/core/property-id.json +1 -1
  303. package/dist/lib/schemas-data/3.0/core/property-list-ref.json +1 -1
  304. package/dist/lib/schemas-data/3.0/core/property-tag.json +1 -1
  305. package/dist/lib/schemas-data/3.0/core/property.json +6 -6
  306. package/dist/lib/schemas-data/3.0/core/proposal.json +6 -6
  307. package/dist/lib/schemas-data/3.0/core/protocol-envelope.json +3 -3
  308. package/dist/lib/schemas-data/3.0/core/provenance.json +6 -6
  309. package/dist/lib/schemas-data/3.0/core/publisher-property-selector.json +3 -3
  310. package/dist/lib/schemas-data/3.0/core/push-notification-config.json +2 -2
  311. package/dist/lib/schemas-data/3.0/core/real-estate-item.json +4 -4
  312. package/dist/lib/schemas-data/3.0/core/reference-asset.json +1 -1
  313. package/dist/lib/schemas-data/3.0/core/reporting-capabilities.json +5 -5
  314. package/dist/lib/schemas-data/3.0/core/reporting-webhook.json +3 -3
  315. package/dist/lib/schemas-data/3.0/core/requirements/asset-requirements.json +13 -13
  316. package/dist/lib/schemas-data/3.0/core/requirements/audio-asset-requirements.json +1 -1
  317. package/dist/lib/schemas-data/3.0/core/requirements/catalog-field-binding.json +4 -4
  318. package/dist/lib/schemas-data/3.0/core/requirements/catalog-requirements.json +5 -5
  319. package/dist/lib/schemas-data/3.0/core/requirements/css-asset-requirements.json +1 -1
  320. package/dist/lib/schemas-data/3.0/core/requirements/daast-asset-requirements.json +1 -1
  321. package/dist/lib/schemas-data/3.0/core/requirements/html-asset-requirements.json +1 -1
  322. package/dist/lib/schemas-data/3.0/core/requirements/image-asset-requirements.json +2 -2
  323. package/dist/lib/schemas-data/3.0/core/requirements/javascript-asset-requirements.json +1 -1
  324. package/dist/lib/schemas-data/3.0/core/requirements/markdown-asset-requirements.json +1 -1
  325. package/dist/lib/schemas-data/3.0/core/requirements/offering-asset-constraint.json +4 -4
  326. package/dist/lib/schemas-data/3.0/core/requirements/text-asset-requirements.json +1 -1
  327. package/dist/lib/schemas-data/3.0/core/requirements/url-asset-requirements.json +1 -1
  328. package/dist/lib/schemas-data/3.0/core/requirements/vast-asset-requirements.json +1 -1
  329. package/dist/lib/schemas-data/3.0/core/requirements/video-asset-requirements.json +6 -6
  330. package/dist/lib/schemas-data/3.0/core/requirements/webhook-asset-requirements.json +1 -1
  331. package/dist/lib/schemas-data/3.0/core/response.json +1 -1
  332. package/dist/lib/schemas-data/3.0/core/rights-constraint.json +4 -4
  333. package/dist/lib/schemas-data/3.0/core/seller-agent-ref.json +1 -1
  334. package/dist/lib/schemas-data/3.0/core/signal-definition.json +3 -3
  335. package/dist/lib/schemas-data/3.0/core/signal-filters.json +2 -2
  336. package/dist/lib/schemas-data/3.0/core/signal-id.json +1 -1
  337. package/dist/lib/schemas-data/3.0/core/signal-pricing-option.json +2 -2
  338. package/dist/lib/schemas-data/3.0/core/signal-pricing.json +6 -6
  339. package/dist/lib/schemas-data/3.0/core/signal-targeting.json +4 -4
  340. package/dist/lib/schemas-data/3.0/core/special.json +2 -2
  341. package/dist/lib/schemas-data/3.0/core/start-timing.json +1 -1
  342. package/dist/lib/schemas-data/3.0/core/store-item.json +3 -3
  343. package/dist/lib/schemas-data/3.0/core/talent.json +2 -2
  344. package/dist/lib/schemas-data/3.0/core/targeting.json +20 -20
  345. package/dist/lib/schemas-data/3.0/core/tasks-get-request.json +3 -3
  346. package/dist/lib/schemas-data/3.0/core/tasks-get-response.json +7 -7
  347. package/dist/lib/schemas-data/3.0/core/tasks-list-request.json +11 -11
  348. package/dist/lib/schemas-data/3.0/core/tasks-list-response.json +6 -6
  349. package/dist/lib/schemas-data/3.0/core/user-match.json +3 -3
  350. package/dist/lib/schemas-data/3.0/core/vehicle-item.json +4 -4
  351. package/dist/lib/schemas-data/3.0/core/vendor-pricing-option.json +2 -2
  352. package/dist/lib/schemas-data/3.0/core/x-entity-types.json +1 -1
  353. package/dist/lib/schemas-data/3.0/creative/asset-types/index.json +4 -4
  354. package/dist/lib/schemas-data/3.0/creative/creative-feature-result.json +2 -2
  355. package/dist/lib/schemas-data/3.0/creative/get-creative-delivery-request.json +5 -5
  356. package/dist/lib/schemas-data/3.0/creative/get-creative-delivery-response.json +7 -7
  357. package/dist/lib/schemas-data/3.0/creative/get-creative-features-request.json +5 -5
  358. package/dist/lib/schemas-data/3.0/creative/get-creative-features-response.json +8 -8
  359. package/dist/lib/schemas-data/3.0/creative/list-creative-formats-request.json +11 -11
  360. package/dist/lib/schemas-data/3.0/creative/list-creative-formats-response.json +7 -7
  361. package/dist/lib/schemas-data/3.0/creative/list-creatives-request.json +8 -8
  362. package/dist/lib/schemas-data/3.0/creative/list-creatives-response.json +14 -14
  363. package/dist/lib/schemas-data/3.0/creative/preview-creative-request.json +11 -11
  364. package/dist/lib/schemas-data/3.0/creative/preview-creative-response.json +12 -12
  365. package/dist/lib/schemas-data/3.0/creative/preview-render.json +1 -1
  366. package/dist/lib/schemas-data/3.0/creative/sync-creatives-async-response-input-required.json +3 -3
  367. package/dist/lib/schemas-data/3.0/creative/sync-creatives-async-response-submitted.json +3 -3
  368. package/dist/lib/schemas-data/3.0/creative/sync-creatives-async-response-working.json +3 -3
  369. package/dist/lib/schemas-data/3.0/creative/sync-creatives-request.json +7 -7
  370. package/dist/lib/schemas-data/3.0/creative/sync-creatives-response.json +13 -13
  371. package/dist/lib/schemas-data/3.0/enums/account-scope.json +1 -1
  372. package/dist/lib/schemas-data/3.0/enums/account-status.json +1 -1
  373. package/dist/lib/schemas-data/3.0/enums/action-source.json +1 -1
  374. package/dist/lib/schemas-data/3.0/enums/adcp-protocol.json +1 -1
  375. package/dist/lib/schemas-data/3.0/enums/adjustment-kind.json +1 -1
  376. package/dist/lib/schemas-data/3.0/enums/advertiser-industry.json +1 -1
  377. package/dist/lib/schemas-data/3.0/enums/age-verification-method.json +1 -1
  378. package/dist/lib/schemas-data/3.0/enums/assessment-status.json +1 -1
  379. package/dist/lib/schemas-data/3.0/enums/asset-content-type.json +1 -1
  380. package/dist/lib/schemas-data/3.0/enums/attribution-model.json +1 -1
  381. package/dist/lib/schemas-data/3.0/enums/audience-source.json +1 -1
  382. package/dist/lib/schemas-data/3.0/enums/audience-status.json +1 -1
  383. package/dist/lib/schemas-data/3.0/enums/audio-channel-layout.json +1 -1
  384. package/dist/lib/schemas-data/3.0/enums/auth-scheme.json +1 -1
  385. package/dist/lib/schemas-data/3.0/enums/available-metric.json +1 -1
  386. package/dist/lib/schemas-data/3.0/enums/billing-party.json +1 -1
  387. package/dist/lib/schemas-data/3.0/enums/binary-verdict.json +1 -1
  388. package/dist/lib/schemas-data/3.0/enums/brand-agent-type.json +1 -1
  389. package/dist/lib/schemas-data/3.0/enums/canceled-by.json +1 -1
  390. package/dist/lib/schemas-data/3.0/enums/catalog-action.json +1 -1
  391. package/dist/lib/schemas-data/3.0/enums/catalog-item-status.json +1 -1
  392. package/dist/lib/schemas-data/3.0/enums/catalog-type.json +1 -1
  393. package/dist/lib/schemas-data/3.0/enums/channels.json +1 -1
  394. package/dist/lib/schemas-data/3.0/enums/cloud-storage-protocol.json +1 -1
  395. package/dist/lib/schemas-data/3.0/enums/co-branding-requirement.json +1 -1
  396. package/dist/lib/schemas-data/3.0/enums/collection-cadence.json +1 -1
  397. package/dist/lib/schemas-data/3.0/enums/collection-kind.json +1 -1
  398. package/dist/lib/schemas-data/3.0/enums/collection-relationship.json +1 -1
  399. package/dist/lib/schemas-data/3.0/enums/collection-status.json +1 -1
  400. package/dist/lib/schemas-data/3.0/enums/consent-basis.json +1 -1
  401. package/dist/lib/schemas-data/3.0/enums/content-id-type.json +1 -1
  402. package/dist/lib/schemas-data/3.0/enums/content-rating-system.json +1 -1
  403. package/dist/lib/schemas-data/3.0/enums/creative-action.json +1 -1
  404. package/dist/lib/schemas-data/3.0/enums/creative-agent-capability.json +1 -1
  405. package/dist/lib/schemas-data/3.0/enums/creative-approval-status.json +1 -1
  406. package/dist/lib/schemas-data/3.0/enums/creative-identifier-type.json +1 -1
  407. package/dist/lib/schemas-data/3.0/enums/creative-quality.json +1 -1
  408. package/dist/lib/schemas-data/3.0/enums/creative-sort-field.json +1 -1
  409. package/dist/lib/schemas-data/3.0/enums/creative-status.json +1 -1
  410. package/dist/lib/schemas-data/3.0/enums/daast-tracking-event.json +1 -1
  411. package/dist/lib/schemas-data/3.0/enums/daast-version.json +1 -1
  412. package/dist/lib/schemas-data/3.0/enums/day-of-week.json +1 -1
  413. package/dist/lib/schemas-data/3.0/enums/delegation-authority.json +1 -1
  414. package/dist/lib/schemas-data/3.0/enums/delivery-type.json +1 -1
  415. package/dist/lib/schemas-data/3.0/enums/demographic-system.json +1 -1
  416. package/dist/lib/schemas-data/3.0/enums/derivative-type.json +1 -1
  417. package/dist/lib/schemas-data/3.0/enums/device-platform.json +1 -1
  418. package/dist/lib/schemas-data/3.0/enums/device-type.json +1 -1
  419. package/dist/lib/schemas-data/3.0/enums/digital-source-type.json +1 -1
  420. package/dist/lib/schemas-data/3.0/enums/dimension-unit.json +1 -1
  421. package/dist/lib/schemas-data/3.0/enums/disclosure-persistence.json +1 -1
  422. package/dist/lib/schemas-data/3.0/enums/disclosure-position.json +1 -1
  423. package/dist/lib/schemas-data/3.0/enums/distance-unit.json +1 -1
  424. package/dist/lib/schemas-data/3.0/enums/distribution-identifier-type.json +1 -1
  425. package/dist/lib/schemas-data/3.0/enums/error-code.json +1 -1
  426. package/dist/lib/schemas-data/3.0/enums/escalation-severity.json +1 -1
  427. package/dist/lib/schemas-data/3.0/enums/event-type.json +1 -1
  428. package/dist/lib/schemas-data/3.0/enums/exclusivity.json +1 -1
  429. package/dist/lib/schemas-data/3.0/enums/feature-check-status.json +1 -1
  430. package/dist/lib/schemas-data/3.0/enums/feed-format.json +1 -1
  431. package/dist/lib/schemas-data/3.0/enums/feedback-source.json +1 -1
  432. package/dist/lib/schemas-data/3.0/enums/forecast-method.json +1 -1
  433. package/dist/lib/schemas-data/3.0/enums/forecast-range-unit.json +1 -1
  434. package/dist/lib/schemas-data/3.0/enums/forecastable-metric.json +1 -1
  435. package/dist/lib/schemas-data/3.0/enums/format-id-parameter.json +1 -1
  436. package/dist/lib/schemas-data/3.0/enums/frame-rate-type.json +1 -1
  437. package/dist/lib/schemas-data/3.0/enums/frequency-cap-scope.json +1 -1
  438. package/dist/lib/schemas-data/3.0/enums/genre-taxonomy.json +1 -1
  439. package/dist/lib/schemas-data/3.0/enums/geo-level.json +1 -1
  440. package/dist/lib/schemas-data/3.0/enums/gop-type.json +1 -1
  441. package/dist/lib/schemas-data/3.0/enums/governance-decision.json +1 -1
  442. package/dist/lib/schemas-data/3.0/enums/governance-domain.json +1 -1
  443. package/dist/lib/schemas-data/3.0/enums/governance-mode.json +1 -1
  444. package/dist/lib/schemas-data/3.0/enums/governance-phase.json +1 -1
  445. package/dist/lib/schemas-data/3.0/enums/history-entry-type.json +1 -1
  446. package/dist/lib/schemas-data/3.0/enums/http-method.json +1 -1
  447. package/dist/lib/schemas-data/3.0/enums/identifier-types.json +1 -1
  448. package/dist/lib/schemas-data/3.0/enums/installment-status.json +1 -1
  449. package/dist/lib/schemas-data/3.0/enums/javascript-module-type.json +1 -1
  450. package/dist/lib/schemas-data/3.0/enums/landing-page-requirement.json +1 -1
  451. package/dist/lib/schemas-data/3.0/enums/makegood-remedy.json +1 -1
  452. package/dist/lib/schemas-data/3.0/enums/markdown-flavor.json +1 -1
  453. package/dist/lib/schemas-data/3.0/enums/match-id-type.json +1 -1
  454. package/dist/lib/schemas-data/3.0/enums/match-type.json +1 -1
  455. package/dist/lib/schemas-data/3.0/enums/media-buy-status.json +1 -1
  456. package/dist/lib/schemas-data/3.0/enums/media-buy-valid-action.json +1 -1
  457. package/dist/lib/schemas-data/3.0/enums/metric-type.json +1 -1
  458. package/dist/lib/schemas-data/3.0/enums/metro-system.json +1 -1
  459. package/dist/lib/schemas-data/3.0/enums/moov-atom-position.json +1 -1
  460. package/dist/lib/schemas-data/3.0/enums/notification-type.json +1 -1
  461. package/dist/lib/schemas-data/3.0/enums/outcome-type.json +1 -1
  462. package/dist/lib/schemas-data/3.0/enums/pacing.json +1 -1
  463. package/dist/lib/schemas-data/3.0/enums/payment-terms.json +1 -1
  464. package/dist/lib/schemas-data/3.0/enums/performance-standard-metric.json +1 -1
  465. package/dist/lib/schemas-data/3.0/enums/policy-category.json +1 -1
  466. package/dist/lib/schemas-data/3.0/enums/policy-enforcement.json +1 -1
  467. package/dist/lib/schemas-data/3.0/enums/postal-system.json +1 -1
  468. package/dist/lib/schemas-data/3.0/enums/preview-output-format.json +1 -1
  469. package/dist/lib/schemas-data/3.0/enums/pricing-model.json +1 -1
  470. package/dist/lib/schemas-data/3.0/enums/production-quality.json +1 -1
  471. package/dist/lib/schemas-data/3.0/enums/property-type.json +1 -1
  472. package/dist/lib/schemas-data/3.0/enums/proposal-status.json +1 -1
  473. package/dist/lib/schemas-data/3.0/enums/publisher-identifier-types.json +1 -1
  474. package/dist/lib/schemas-data/3.0/enums/purchase-type.json +1 -1
  475. package/dist/lib/schemas-data/3.0/enums/reach-unit.json +1 -1
  476. package/dist/lib/schemas-data/3.0/enums/reporting-frequency.json +1 -1
  477. package/dist/lib/schemas-data/3.0/enums/response-type.json +1 -1
  478. package/dist/lib/schemas-data/3.0/enums/restricted-attribute.json +1 -1
  479. package/dist/lib/schemas-data/3.0/enums/right-type.json +1 -1
  480. package/dist/lib/schemas-data/3.0/enums/right-use.json +1 -1
  481. package/dist/lib/schemas-data/3.0/enums/rights-billing-period.json +1 -1
  482. package/dist/lib/schemas-data/3.0/enums/scan-type.json +1 -1
  483. package/dist/lib/schemas-data/3.0/enums/si-session-status.json +1 -1
  484. package/dist/lib/schemas-data/3.0/enums/signal-catalog-type.json +1 -1
  485. package/dist/lib/schemas-data/3.0/enums/signal-source.json +1 -1
  486. package/dist/lib/schemas-data/3.0/enums/signal-value-type.json +1 -1
  487. package/dist/lib/schemas-data/3.0/enums/snapshot-unavailable-reason.json +1 -1
  488. package/dist/lib/schemas-data/3.0/enums/sort-direction.json +1 -1
  489. package/dist/lib/schemas-data/3.0/enums/sort-metric.json +1 -1
  490. package/dist/lib/schemas-data/3.0/enums/special-category.json +1 -1
  491. package/dist/lib/schemas-data/3.0/enums/specialism.json +1 -1
  492. package/dist/lib/schemas-data/3.0/enums/talent-role.json +1 -1
  493. package/dist/lib/schemas-data/3.0/enums/task-status.json +1 -1
  494. package/dist/lib/schemas-data/3.0/enums/task-type.json +1 -1
  495. package/dist/lib/schemas-data/3.0/enums/transport-mode.json +1 -1
  496. package/dist/lib/schemas-data/3.0/enums/travel-time-unit.json +1 -1
  497. package/dist/lib/schemas-data/3.0/enums/uid-type.json +1 -1
  498. package/dist/lib/schemas-data/3.0/enums/universal-macro.json +1 -1
  499. package/dist/lib/schemas-data/3.0/enums/update-frequency.json +1 -1
  500. package/dist/lib/schemas-data/3.0/enums/url-asset-type.json +1 -1
  501. package/dist/lib/schemas-data/3.0/enums/validation-mode.json +1 -1
  502. package/dist/lib/schemas-data/3.0/enums/vast-tracking-event.json +1 -1
  503. package/dist/lib/schemas-data/3.0/enums/vast-version.json +1 -1
  504. package/dist/lib/schemas-data/3.0/enums/viewability-standard.json +1 -1
  505. package/dist/lib/schemas-data/3.0/enums/wcag-level.json +1 -1
  506. package/dist/lib/schemas-data/3.0/enums/webhook-response-type.json +1 -1
  507. package/dist/lib/schemas-data/3.0/enums/webhook-security-method.json +1 -1
  508. package/dist/lib/schemas-data/3.0/error-details/account-setup-required.json +1 -1
  509. package/dist/lib/schemas-data/3.0/error-details/audience-too-small.json +1 -1
  510. package/dist/lib/schemas-data/3.0/error-details/budget-too-low.json +1 -1
  511. package/dist/lib/schemas-data/3.0/error-details/conflict.json +1 -1
  512. package/dist/lib/schemas-data/3.0/error-details/creative-rejected.json +1 -1
  513. package/dist/lib/schemas-data/3.0/error-details/policy-violation.json +1 -1
  514. package/dist/lib/schemas-data/3.0/error-details/rate-limited.json +1 -1
  515. package/dist/lib/schemas-data/3.0/error-details/vendor-error-codes.json +1 -1
  516. package/dist/lib/schemas-data/3.0/extensions/extension-meta.json +1 -1
  517. package/dist/lib/schemas-data/3.0/extensions/index.json +2 -2
  518. package/dist/lib/schemas-data/3.0/governance/attribute-definition.json +1 -1
  519. package/dist/lib/schemas-data/3.0/governance/audience-constraints.json +3 -3
  520. package/dist/lib/schemas-data/3.0/governance/check-governance-request.json +7 -7
  521. package/dist/lib/schemas-data/3.0/governance/check-governance-response.json +6 -6
  522. package/dist/lib/schemas-data/3.0/governance/get-plan-audit-logs-request.json +4 -4
  523. package/dist/lib/schemas-data/3.0/governance/get-plan-audit-logs-response.json +9 -9
  524. package/dist/lib/schemas-data/3.0/governance/policy-category-definition.json +2 -2
  525. package/dist/lib/schemas-data/3.0/governance/policy-entry.json +6 -6
  526. package/dist/lib/schemas-data/3.0/governance/policy-ref.json +1 -1
  527. package/dist/lib/schemas-data/3.0/governance/report-plan-outcome-request.json +6 -6
  528. package/dist/lib/schemas-data/3.0/governance/report-plan-outcome-response.json +4 -4
  529. package/dist/lib/schemas-data/3.0/governance/sync-plans-request.json +13 -13
  530. package/dist/lib/schemas-data/3.0/governance/sync-plans-response.json +4 -4
  531. package/dist/lib/schemas-data/3.0/index.json +363 -363
  532. package/dist/lib/schemas-data/3.0/manifest.json +3 -3
  533. package/dist/lib/schemas-data/3.0/manifest.schema.json +1 -1
  534. package/dist/lib/schemas-data/3.0/media-buy/build-creative-async-response-input-required.json +4 -4
  535. package/dist/lib/schemas-data/3.0/media-buy/build-creative-async-response-submitted.json +3 -3
  536. package/dist/lib/schemas-data/3.0/media-buy/build-creative-async-response-working.json +3 -3
  537. package/dist/lib/schemas-data/3.0/media-buy/build-creative-request.json +11 -11
  538. package/dist/lib/schemas-data/3.0/media-buy/build-creative-response.json +17 -17
  539. package/dist/lib/schemas-data/3.0/media-buy/create-media-buy-async-response-input-required.json +4 -4
  540. package/dist/lib/schemas-data/3.0/media-buy/create-media-buy-async-response-submitted.json +3 -3
  541. package/dist/lib/schemas-data/3.0/media-buy/create-media-buy-async-response-working.json +3 -3
  542. package/dist/lib/schemas-data/3.0/media-buy/create-media-buy-request.json +12 -12
  543. package/dist/lib/schemas-data/3.0/media-buy/create-media-buy-response.json +15 -15
  544. package/dist/lib/schemas-data/3.0/media-buy/get-media-buy-delivery-request.json +17 -17
  545. package/dist/lib/schemas-data/3.0/media-buy/get-media-buy-delivery-response.json +24 -24
  546. package/dist/lib/schemas-data/3.0/media-buy/get-media-buys-request.json +7 -7
  547. package/dist/lib/schemas-data/3.0/media-buy/get-media-buys-response.json +19 -19
  548. package/dist/lib/schemas-data/3.0/media-buy/get-products-async-response-input-required.json +4 -4
  549. package/dist/lib/schemas-data/3.0/media-buy/get-products-async-response-submitted.json +3 -3
  550. package/dist/lib/schemas-data/3.0/media-buy/get-products-async-response-working.json +3 -3
  551. package/dist/lib/schemas-data/3.0/media-buy/get-products-request.json +11 -11
  552. package/dist/lib/schemas-data/3.0/media-buy/get-products-response.json +8 -8
  553. package/dist/lib/schemas-data/3.0/media-buy/list-creative-formats-request.json +11 -11
  554. package/dist/lib/schemas-data/3.0/media-buy/list-creative-formats-response.json +7 -7
  555. package/dist/lib/schemas-data/3.0/media-buy/log-event-request.json +4 -4
  556. package/dist/lib/schemas-data/3.0/media-buy/log-event-response.json +6 -6
  557. package/dist/lib/schemas-data/3.0/media-buy/package-request.json +12 -12
  558. package/dist/lib/schemas-data/3.0/media-buy/package-update.json +13 -13
  559. package/dist/lib/schemas-data/3.0/media-buy/provide-performance-feedback-request.json +6 -6
  560. package/dist/lib/schemas-data/3.0/media-buy/provide-performance-feedback-response.json +6 -6
  561. package/dist/lib/schemas-data/3.0/media-buy/sync-audiences-request.json +7 -7
  562. package/dist/lib/schemas-data/3.0/media-buy/sync-audiences-response.json +9 -9
  563. package/dist/lib/schemas-data/3.0/media-buy/sync-catalogs-async-response-input-required.json +3 -3
  564. package/dist/lib/schemas-data/3.0/media-buy/sync-catalogs-async-response-submitted.json +3 -3
  565. package/dist/lib/schemas-data/3.0/media-buy/sync-catalogs-async-response-working.json +3 -3
  566. package/dist/lib/schemas-data/3.0/media-buy/sync-catalogs-request.json +7 -7
  567. package/dist/lib/schemas-data/3.0/media-buy/sync-catalogs-response.json +9 -9
  568. package/dist/lib/schemas-data/3.0/media-buy/sync-event-sources-request.json +5 -5
  569. package/dist/lib/schemas-data/3.0/media-buy/sync-event-sources-response.json +10 -10
  570. package/dist/lib/schemas-data/3.0/media-buy/update-media-buy-async-response-input-required.json +3 -3
  571. package/dist/lib/schemas-data/3.0/media-buy/update-media-buy-async-response-submitted.json +3 -3
  572. package/dist/lib/schemas-data/3.0/media-buy/update-media-buy-async-response-working.json +3 -3
  573. package/dist/lib/schemas-data/3.0/media-buy/update-media-buy-request.json +10 -10
  574. package/dist/lib/schemas-data/3.0/media-buy/update-media-buy-response.json +10 -10
  575. package/dist/lib/schemas-data/3.0/pricing-options/cpa-option.json +4 -4
  576. package/dist/lib/schemas-data/3.0/pricing-options/cpc-option.json +4 -4
  577. package/dist/lib/schemas-data/3.0/pricing-options/cpcv-option.json +4 -4
  578. package/dist/lib/schemas-data/3.0/pricing-options/cpm-option.json +4 -4
  579. package/dist/lib/schemas-data/3.0/pricing-options/cpp-option.json +5 -5
  580. package/dist/lib/schemas-data/3.0/pricing-options/cpv-option.json +4 -4
  581. package/dist/lib/schemas-data/3.0/pricing-options/flat-rate-option.json +4 -4
  582. package/dist/lib/schemas-data/3.0/pricing-options/price-breakdown.json +2 -2
  583. package/dist/lib/schemas-data/3.0/pricing-options/price-guidance.json +1 -1
  584. package/dist/lib/schemas-data/3.0/pricing-options/time-option.json +4 -4
  585. package/dist/lib/schemas-data/3.0/pricing-options/vcpm-option.json +4 -4
  586. package/dist/lib/schemas-data/3.0/property/authorization-result.json +1 -1
  587. package/dist/lib/schemas-data/3.0/property/base-property-source.json +4 -4
  588. package/dist/lib/schemas-data/3.0/property/create-property-list-request.json +7 -7
  589. package/dist/lib/schemas-data/3.0/property/create-property-list-response.json +4 -4
  590. package/dist/lib/schemas-data/3.0/property/delete-property-list-request.json +4 -4
  591. package/dist/lib/schemas-data/3.0/property/delete-property-list-response.json +3 -3
  592. package/dist/lib/schemas-data/3.0/property/delivery-record.json +3 -3
  593. package/dist/lib/schemas-data/3.0/property/get-property-list-request.json +4 -4
  594. package/dist/lib/schemas-data/3.0/property/get-property-list-response.json +7 -7
  595. package/dist/lib/schemas-data/3.0/property/list-property-lists-request.json +5 -5
  596. package/dist/lib/schemas-data/3.0/property/list-property-lists-response.json +5 -5
  597. package/dist/lib/schemas-data/3.0/property/property-error.json +2 -2
  598. package/dist/lib/schemas-data/3.0/property/property-feature-definition.json +2 -2
  599. package/dist/lib/schemas-data/3.0/property/property-feature-result.json +4 -4
  600. package/dist/lib/schemas-data/3.0/property/property-feature-value.json +2 -2
  601. package/dist/lib/schemas-data/3.0/property/property-feature.json +1 -1
  602. package/dist/lib/schemas-data/3.0/property/property-list-changed-webhook.json +2 -2
  603. package/dist/lib/schemas-data/3.0/property/property-list-filters.json +5 -5
  604. package/dist/lib/schemas-data/3.0/property/property-list.json +6 -6
  605. package/dist/lib/schemas-data/3.0/property/update-property-list-request.json +7 -7
  606. package/dist/lib/schemas-data/3.0/property/update-property-list-response.json +4 -4
  607. package/dist/lib/schemas-data/3.0/property/validate-property-delivery-request.json +5 -5
  608. package/dist/lib/schemas-data/3.0/property/validate-property-delivery-response.json +4 -4
  609. package/dist/lib/schemas-data/3.0/property/validation-result.json +5 -5
  610. package/dist/lib/schemas-data/3.0/protocol/get-adcp-capabilities-request.json +3 -3
  611. package/dist/lib/schemas-data/3.0/protocol/get-adcp-capabilities-response.json +25 -25
  612. package/dist/lib/schemas-data/3.0/signals/activate-signal-request.json +5 -5
  613. package/dist/lib/schemas-data/3.0/signals/activate-signal-response.json +7 -7
  614. package/dist/lib/schemas-data/3.0/signals/get-signals-request.json +8 -8
  615. package/dist/lib/schemas-data/3.0/signals/get-signals-response.json +10 -10
  616. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-capabilities.json +1 -1
  617. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-get-offering-request.json +3 -3
  618. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-get-offering-response.json +4 -4
  619. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-identity.json +1 -1
  620. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-initiate-session-request.json +5 -5
  621. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-initiate-session-response.json +7 -7
  622. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-send-message-request.json +3 -3
  623. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-send-message-response.json +7 -7
  624. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-terminate-session-request.json +3 -3
  625. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-terminate-session-response.json +5 -5
  626. package/dist/lib/schemas-data/3.0/sponsored-intelligence/si-ui-element.json +1 -1
  627. package/dist/lib/schemas-data/v2.5/_provenance.json +1 -1
  628. package/dist/lib/server/create-adcp-server.d.ts.map +1 -1
  629. package/dist/lib/server/create-adcp-server.js +182 -0
  630. package/dist/lib/server/create-adcp-server.js.map +1 -1
  631. package/dist/lib/server/decisioning/runtime/entity-hydration.generated.js +1 -1
  632. package/dist/lib/server/error-arm-tools.d.ts +56 -0
  633. package/dist/lib/server/error-arm-tools.d.ts.map +1 -0
  634. package/dist/lib/server/error-arm-tools.js +219 -0
  635. package/dist/lib/server/error-arm-tools.js.map +1 -0
  636. package/dist/lib/server/errors.d.ts +10 -0
  637. package/dist/lib/server/errors.d.ts.map +1 -1
  638. package/dist/lib/server/errors.js +10 -0
  639. package/dist/lib/server/errors.js.map +1 -1
  640. package/dist/lib/server/wire-spec-fields.generated.d.ts +29 -29
  641. package/dist/lib/server/wire-spec-fields.generated.js +31 -31
  642. package/dist/lib/testing/client.d.ts +7 -4
  643. package/dist/lib/testing/client.d.ts.map +1 -1
  644. package/dist/lib/testing/client.js +36 -3
  645. package/dist/lib/testing/client.js.map +1 -1
  646. package/dist/lib/testing/compliance/comply.d.ts.map +1 -1
  647. package/dist/lib/testing/compliance/comply.js +5 -2
  648. package/dist/lib/testing/compliance/comply.js.map +1 -1
  649. package/dist/lib/testing/storyboard/request-builder.d.ts +18 -0
  650. package/dist/lib/testing/storyboard/request-builder.d.ts.map +1 -1
  651. package/dist/lib/testing/storyboard/request-builder.js +83 -24
  652. package/dist/lib/testing/storyboard/request-builder.js.map +1 -1
  653. package/dist/lib/testing/storyboard/runner.d.ts.map +1 -1
  654. package/dist/lib/testing/storyboard/runner.js +17 -6
  655. package/dist/lib/testing/storyboard/runner.js.map +1 -1
  656. package/dist/lib/testing/storyboard/types.d.ts +9 -0
  657. package/dist/lib/testing/storyboard/types.d.ts.map +1 -1
  658. package/dist/lib/testing/storyboard/types.js.map +1 -1
  659. package/dist/lib/types/core.generated.js +2 -2
  660. package/dist/lib/types/manifest.generated.d.ts +3 -3
  661. package/dist/lib/types/manifest.generated.js +1 -1
  662. package/dist/lib/utils/activation-key-builders.d.ts +21 -0
  663. package/dist/lib/utils/activation-key-builders.d.ts.map +1 -0
  664. package/dist/lib/utils/activation-key-builders.js +28 -0
  665. package/dist/lib/utils/activation-key-builders.js.map +1 -0
  666. package/dist/lib/utils/build-creative-return-builders.d.ts +24 -0
  667. package/dist/lib/utils/build-creative-return-builders.d.ts.map +1 -0
  668. package/dist/lib/utils/build-creative-return-builders.js +42 -0
  669. package/dist/lib/utils/build-creative-return-builders.js.map +1 -0
  670. package/dist/lib/utils/media-buy-delivery-notification-builders.d.ts +25 -0
  671. package/dist/lib/utils/media-buy-delivery-notification-builders.d.ts.map +1 -0
  672. package/dist/lib/utils/media-buy-delivery-notification-builders.js +41 -0
  673. package/dist/lib/utils/media-buy-delivery-notification-builders.js.map +1 -0
  674. package/dist/lib/utils/preview-creative-builders.d.ts +18 -0
  675. package/dist/lib/utils/preview-creative-builders.d.ts.map +1 -0
  676. package/dist/lib/utils/preview-creative-builders.js +28 -0
  677. package/dist/lib/utils/preview-creative-builders.js.map +1 -0
  678. package/dist/lib/utils/protocol-detection.js +26 -3
  679. package/dist/lib/utils/protocol-detection.js.map +1 -1
  680. package/dist/lib/utils/signal-id-builders.d.ts +21 -0
  681. package/dist/lib/utils/signal-id-builders.d.ts.map +1 -0
  682. package/dist/lib/utils/signal-id-builders.js +24 -0
  683. package/dist/lib/utils/signal-id-builders.js.map +1 -0
  684. package/dist/lib/version.d.ts +7 -7
  685. package/dist/lib/version.d.ts.map +1 -1
  686. package/dist/lib/version.js +6 -5
  687. package/dist/lib/version.js.map +1 -1
  688. package/examples/hello_creative_adapter_ad_server.ts +13 -14
  689. package/examples/hello_creative_adapter_template.ts +15 -13
  690. package/examples/hello_signals_adapter_marketplace.ts +9 -12
  691. package/examples/signals-agent.ts +11 -15
  692. package/package.json +2 -2
  693. package/skills/SHAPE-GOTCHAS.md +83 -19
  694. package/skills/build-creative-agent/SKILL.md +23 -8
  695. package/skills/build-retail-media-agent/SKILL.md +31 -25
  696. package/skills/build-seller-agent/SKILL.md +14 -8
  697. package/skills/build-seller-agent/specialisms/audience-sync.md +19 -65
  698. package/skills/build-seller-agent/specialisms/sales-broadcast-tv.md +48 -49
  699. package/skills/build-seller-agent/specialisms/sales-proposal-mode.md +47 -45
  700. package/skills/build-seller-agent/specialisms/sales-streaming-tv.md +45 -0
  701. package/skills/build-signals-agent/SKILL.md +21 -20
  702. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/brand/index.yaml +0 -0
  703. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/creative/index.yaml +0 -0
  704. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/governance/index.yaml +0 -0
  705. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/media-buy/creative-reception.yaml +0 -0
  706. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/media-buy/index.yaml +0 -0
  707. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/media-buy/scenarios/create_media_buy_async.yaml +0 -0
  708. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/media-buy/scenarios/delivery_reporting.yaml +0 -0
  709. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/media-buy/scenarios/measurement_terms_rejected.yaml +0 -0
  710. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/media-buy/scenarios/proposal_finalize.yaml +0 -0
  711. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/media-buy/scenarios/refine_products.yaml +0 -0
  712. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/media-buy/state-machine.yaml +0 -0
  713. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/signals/index.yaml +0 -0
  714. /package/compliance/cache/{3.0.7 → 3.0.8}/domains/sponsored-intelligence/index.yaml +0 -0
  715. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/brand/index.yaml +0 -0
  716. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/creative/index.yaml +0 -0
  717. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/governance/index.yaml +0 -0
  718. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/creative-reception.yaml +0 -0
  719. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/index.yaml +0 -0
  720. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/scenarios/create_media_buy_async.yaml +0 -0
  721. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/scenarios/delivery_reporting.yaml +0 -0
  722. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/scenarios/measurement_terms_rejected.yaml +0 -0
  723. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/scenarios/proposal_finalize.yaml +0 -0
  724. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/scenarios/refine_products.yaml +0 -0
  725. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/media-buy/state-machine.yaml +0 -0
  726. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/signals/index.yaml +0 -0
  727. /package/compliance/cache/{3.0.7 → 3.0.8}/protocols/sponsored-intelligence/index.yaml +0 -0
  728. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/audience-sync/index.yaml +0 -0
  729. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/brand-rights/index.yaml +0 -0
  730. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/brand-rights/scenarios/governance_denied.yaml +0 -0
  731. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/collection-lists/index.yaml +0 -0
  732. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/content-standards/index.yaml +0 -0
  733. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/creative-ad-server/index.yaml +0 -0
  734. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/creative-generative/generative-seller.yaml +0 -0
  735. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/creative-generative/index.yaml +0 -0
  736. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/creative-template/index.yaml +0 -0
  737. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/governance-aware-seller/index.yaml +0 -0
  738. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/governance-delivery-monitor/index.yaml +0 -0
  739. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/governance-spend-authority/denied.yaml +0 -0
  740. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/governance-spend-authority/index.yaml +0 -0
  741. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/property-lists/index.yaml +0 -0
  742. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/sales-broadcast-tv/index.yaml +0 -0
  743. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/sales-catalog-driven/index.yaml +0 -0
  744. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/sales-guaranteed/index.yaml +0 -0
  745. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/sales-non-guaranteed/index.yaml +0 -0
  746. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/sales-proposal-mode/index.yaml +0 -0
  747. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/sales-social/index.yaml +0 -0
  748. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/signal-marketplace/index.yaml +0 -0
  749. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/signal-marketplace/scenarios/governance_denied.yaml +0 -0
  750. /package/compliance/cache/{3.0.7 → 3.0.8}/specialisms/signal-owned/index.yaml +0 -0
  751. /package/compliance/cache/{3.0.7 → 3.0.8}/test-kits/acme-outdoor.yaml +0 -0
  752. /package/compliance/cache/{3.0.7 → 3.0.8}/test-kits/bistro-oranje.yaml +0 -0
  753. /package/compliance/cache/{3.0.7 → 3.0.8}/test-kits/nova-motors.yaml +0 -0
  754. /package/compliance/cache/{3.0.7 → 3.0.8}/test-kits/osei-natural.yaml +0 -0
  755. /package/compliance/cache/{3.0.7 → 3.0.8}/test-kits/signed-requests-runner.yaml +0 -0
  756. /package/compliance/cache/{3.0.7 → 3.0.8}/test-kits/substitution-observer-runner.yaml +0 -0
  757. /package/compliance/cache/{3.0.7 → 3.0.8}/test-kits/summit-foods.yaml +0 -0
  758. /package/compliance/cache/{3.0.7 → 3.0.8}/test-kits/webhook-receiver-runner.yaml +0 -0
  759. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/plan-hash/001-minimal-plan.json +0 -0
  760. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/plan-hash/002-full-plan.json +0 -0
  761. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/plan-hash/003-bookkeeping-stripped.json +0 -0
  762. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/plan-hash/004a-human-review-omitted.json +0 -0
  763. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/plan-hash/004b-human-review-explicit-null.json +0 -0
  764. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/plan-hash/005a-policy-categories-order-1.json +0 -0
  765. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/plan-hash/005b-policy-categories-order-2.json +0 -0
  766. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/plan-hash/006a-ext-trace-v1.json +0 -0
  767. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/plan-hash/006b-ext-trace-v2.json +0 -0
  768. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/plan-hash/007-unicode-objectives.json +0 -0
  769. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/plan-hash/008-numeric-canonicalization.json +0 -0
  770. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/README.md +0 -0
  771. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/canonicalization.json +0 -0
  772. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/keys.json +0 -0
  773. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/001-no-signature-header.json +0 -0
  774. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/002-wrong-tag.json +0 -0
  775. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/003-expired-signature.json +0 -0
  776. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/004-window-too-long.json +0 -0
  777. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/005-alg-not-allowed.json +0 -0
  778. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/006-missing-covered-component.json +0 -0
  779. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/007-missing-content-digest.json +0 -0
  780. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/008-unknown-keyid.json +0 -0
  781. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/009-key-ops-missing-verify.json +0 -0
  782. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/010-content-digest-mismatch.json +0 -0
  783. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/011-malformed-header.json +0 -0
  784. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/012-missing-expires-param.json +0 -0
  785. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/013-expires-le-created.json +0 -0
  786. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/014-missing-nonce-param.json +0 -0
  787. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/015-signature-invalid.json +0 -0
  788. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/016-replayed-nonce.json +0 -0
  789. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/017-key-revoked.json +0 -0
  790. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/018-digest-covered-when-forbidden.json +0 -0
  791. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/019-signature-without-signature-input.json +0 -0
  792. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/020-rate-abuse.json +0 -0
  793. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/021-duplicate-signature-input-label.json +0 -0
  794. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/022-multi-valued-content-type.json +0 -0
  795. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/023-multi-valued-content-digest.json +0 -0
  796. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/024-unquoted-string-param.json +0 -0
  797. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/025-jwk-alg-crv-mismatch.json +0 -0
  798. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/026-non-ascii-host.json +0 -0
  799. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/negative/027-webhook-registration-authentication-unsigned.json +0 -0
  800. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/001-basic-post.json +0 -0
  801. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/002-post-with-content-digest.json +0 -0
  802. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/003-es256-post.json +0 -0
  803. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/004-multiple-signature-labels.json +0 -0
  804. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/005-default-port-stripped.json +0 -0
  805. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/006-dot-segment-path.json +0 -0
  806. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/007-query-byte-preserved.json +0 -0
  807. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/008-percent-encoded-path.json +0 -0
  808. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/009-percent-encoded-unreserved-decoded.json +0 -0
  809. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/010-percent-encoded-slash-preserved.json +0 -0
  810. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/011-ipv6-authority.json +0 -0
  811. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/request-signing/positive/012-ipv6-authority-default-port-stripped.json +0 -0
  812. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/README.md +0 -0
  813. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/keys.json +0 -0
  814. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/001-wrong-tag.json +0 -0
  815. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/002-expired-signature.json +0 -0
  816. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/003-window-too-long.json +0 -0
  817. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/004-alg-not-allowed.json +0 -0
  818. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/005-missing-authority-component.json +0 -0
  819. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/006-missing-content-digest.json +0 -0
  820. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/007-unknown-keyid.json +0 -0
  821. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/008-wrong-adcp-use.json +0 -0
  822. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/009-content-digest-mismatch.json +0 -0
  823. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/010-malformed-signature-input.json +0 -0
  824. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/011-signature-without-input.json +0 -0
  825. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/012-missing-expires-param.json +0 -0
  826. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/013-expires-le-created.json +0 -0
  827. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/014-missing-nonce-param.json +0 -0
  828. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/015-signature-invalid.json +0 -0
  829. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/016-replayed-nonce.json +0 -0
  830. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/017-key-revoked.json +0 -0
  831. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/018-rate-abuse.json +0 -0
  832. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/019-revocation-stale.json +0 -0
  833. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/020-key-ops-missing-verify.json +0 -0
  834. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/negative/021-base64-alphabet-mixing.json +0 -0
  835. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/positive/001-basic-post.json +0 -0
  836. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/positive/002-es256-post.json +0 -0
  837. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/positive/003-multiple-signature-labels.json +0 -0
  838. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/positive/004-default-port-stripped.json +0 -0
  839. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/positive/005-percent-encoded-path.json +0 -0
  840. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/positive/006-query-byte-preserved.json +0 -0
  841. /package/compliance/cache/{3.0.7 → 3.0.8}/test-vectors/webhook-signing/positive/007-body-without-idempotency-key.json +0 -0
  842. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/capability-discovery.yaml +0 -0
  843. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/collection-lists-pagination-integrity.yaml +0 -0
  844. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/content-standards-pagination-integrity.yaml +0 -0
  845. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/deterministic-testing.yaml +0 -0
  846. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/error-compliance.yaml +0 -0
  847. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/fictional-entities.yaml +0 -0
  848. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/get-media-buys-pagination-integrity.yaml +0 -0
  849. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/get-signals-pagination-integrity.yaml +0 -0
  850. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/idempotency.yaml +0 -0
  851. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/pagination-integrity-creative-formats.yaml +0 -0
  852. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/pagination-integrity-list-accounts.yaml +0 -0
  853. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/pagination-integrity.yaml +0 -0
  854. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/property-lists-pagination-integrity.yaml +0 -0
  855. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/runner-output-contract.yaml +0 -0
  856. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/schema-validation.yaml +0 -0
  857. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/security.yaml +0 -0
  858. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/signed-requests.yaml +0 -0
  859. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/storyboard-schema.yaml +0 -0
  860. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/v3-envelope-integrity.yaml +0 -0
  861. /package/compliance/cache/{3.0.7 → 3.0.8}/universal/webhook-emission.yaml +0 -0
  862. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/brand/index.yaml +0 -0
  863. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/creative/index.yaml +0 -0
  864. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/governance/index.yaml +0 -0
  865. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/creative-reception.yaml +0 -0
  866. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/index.yaml +0 -0
  867. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/scenarios/create_media_buy_async.yaml +0 -0
  868. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/scenarios/delivery_reporting.yaml +0 -0
  869. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/scenarios/measurement_terms_rejected.yaml +0 -0
  870. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/scenarios/proposal_finalize.yaml +0 -0
  871. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/scenarios/refine_products.yaml +0 -0
  872. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/media-buy/state-machine.yaml +0 -0
  873. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/signals/index.yaml +0 -0
  874. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/domains/sponsored-intelligence/index.yaml +0 -0
  875. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/brand/index.yaml +0 -0
  876. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/creative/index.yaml +0 -0
  877. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/governance/index.yaml +0 -0
  878. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/media-buy/creative-reception.yaml +0 -0
  879. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/media-buy/index.yaml +0 -0
  880. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/media-buy/scenarios/create_media_buy_async.yaml +0 -0
  881. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/media-buy/scenarios/delivery_reporting.yaml +0 -0
  882. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/media-buy/scenarios/measurement_terms_rejected.yaml +0 -0
  883. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/media-buy/scenarios/proposal_finalize.yaml +0 -0
  884. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/media-buy/scenarios/refine_products.yaml +0 -0
  885. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/media-buy/state-machine.yaml +0 -0
  886. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/signals/index.yaml +0 -0
  887. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/protocols/sponsored-intelligence/index.yaml +0 -0
  888. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/audience-sync/index.yaml +0 -0
  889. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/brand-rights/index.yaml +0 -0
  890. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/brand-rights/scenarios/governance_denied.yaml +0 -0
  891. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/collection-lists/index.yaml +0 -0
  892. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/content-standards/index.yaml +0 -0
  893. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/creative-ad-server/index.yaml +0 -0
  894. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/creative-generative/generative-seller.yaml +0 -0
  895. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/creative-generative/index.yaml +0 -0
  896. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/creative-template/index.yaml +0 -0
  897. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/governance-aware-seller/index.yaml +0 -0
  898. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/governance-delivery-monitor/index.yaml +0 -0
  899. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/governance-spend-authority/denied.yaml +0 -0
  900. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/governance-spend-authority/index.yaml +0 -0
  901. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/property-lists/index.yaml +0 -0
  902. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/sales-broadcast-tv/index.yaml +0 -0
  903. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/sales-catalog-driven/index.yaml +0 -0
  904. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/sales-guaranteed/index.yaml +0 -0
  905. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/sales-non-guaranteed/index.yaml +0 -0
  906. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/sales-proposal-mode/index.yaml +0 -0
  907. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/sales-social/index.yaml +0 -0
  908. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/signal-marketplace/index.yaml +0 -0
  909. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/signal-marketplace/scenarios/governance_denied.yaml +0 -0
  910. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/specialisms/signal-owned/index.yaml +0 -0
  911. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-kits/acme-outdoor.yaml +0 -0
  912. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-kits/bistro-oranje.yaml +0 -0
  913. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-kits/nova-motors.yaml +0 -0
  914. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-kits/osei-natural.yaml +0 -0
  915. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-kits/signed-requests-runner.yaml +0 -0
  916. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-kits/substitution-observer-runner.yaml +0 -0
  917. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-kits/summit-foods.yaml +0 -0
  918. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-kits/webhook-receiver-runner.yaml +0 -0
  919. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/plan-hash/001-minimal-plan.json +0 -0
  920. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/plan-hash/002-full-plan.json +0 -0
  921. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/plan-hash/003-bookkeeping-stripped.json +0 -0
  922. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/plan-hash/004a-human-review-omitted.json +0 -0
  923. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/plan-hash/004b-human-review-explicit-null.json +0 -0
  924. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/plan-hash/005a-policy-categories-order-1.json +0 -0
  925. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/plan-hash/005b-policy-categories-order-2.json +0 -0
  926. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/plan-hash/006a-ext-trace-v1.json +0 -0
  927. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/plan-hash/006b-ext-trace-v2.json +0 -0
  928. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/plan-hash/007-unicode-objectives.json +0 -0
  929. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/plan-hash/008-numeric-canonicalization.json +0 -0
  930. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/README.md +0 -0
  931. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/canonicalization.json +0 -0
  932. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/keys.json +0 -0
  933. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/001-no-signature-header.json +0 -0
  934. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/002-wrong-tag.json +0 -0
  935. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/003-expired-signature.json +0 -0
  936. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/004-window-too-long.json +0 -0
  937. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/005-alg-not-allowed.json +0 -0
  938. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/006-missing-covered-component.json +0 -0
  939. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/007-missing-content-digest.json +0 -0
  940. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/008-unknown-keyid.json +0 -0
  941. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/009-key-ops-missing-verify.json +0 -0
  942. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/010-content-digest-mismatch.json +0 -0
  943. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/011-malformed-header.json +0 -0
  944. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/012-missing-expires-param.json +0 -0
  945. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/013-expires-le-created.json +0 -0
  946. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/014-missing-nonce-param.json +0 -0
  947. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/015-signature-invalid.json +0 -0
  948. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/016-replayed-nonce.json +0 -0
  949. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/017-key-revoked.json +0 -0
  950. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/018-digest-covered-when-forbidden.json +0 -0
  951. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/019-signature-without-signature-input.json +0 -0
  952. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/020-rate-abuse.json +0 -0
  953. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/021-duplicate-signature-input-label.json +0 -0
  954. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/022-multi-valued-content-type.json +0 -0
  955. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/023-multi-valued-content-digest.json +0 -0
  956. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/024-unquoted-string-param.json +0 -0
  957. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/025-jwk-alg-crv-mismatch.json +0 -0
  958. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/026-non-ascii-host.json +0 -0
  959. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/negative/027-webhook-registration-authentication-unsigned.json +0 -0
  960. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/001-basic-post.json +0 -0
  961. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/002-post-with-content-digest.json +0 -0
  962. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/003-es256-post.json +0 -0
  963. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/004-multiple-signature-labels.json +0 -0
  964. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/005-default-port-stripped.json +0 -0
  965. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/006-dot-segment-path.json +0 -0
  966. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/007-query-byte-preserved.json +0 -0
  967. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/008-percent-encoded-path.json +0 -0
  968. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/009-percent-encoded-unreserved-decoded.json +0 -0
  969. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/010-percent-encoded-slash-preserved.json +0 -0
  970. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/request-signing/positive/011-ipv6-authority.json +0 -0
  971. /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
  972. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/README.md +0 -0
  973. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/keys.json +0 -0
  974. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/001-wrong-tag.json +0 -0
  975. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/002-expired-signature.json +0 -0
  976. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/003-window-too-long.json +0 -0
  977. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/004-alg-not-allowed.json +0 -0
  978. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/005-missing-authority-component.json +0 -0
  979. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/006-missing-content-digest.json +0 -0
  980. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/007-unknown-keyid.json +0 -0
  981. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/008-wrong-adcp-use.json +0 -0
  982. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/009-content-digest-mismatch.json +0 -0
  983. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/010-malformed-signature-input.json +0 -0
  984. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/011-signature-without-input.json +0 -0
  985. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/012-missing-expires-param.json +0 -0
  986. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/013-expires-le-created.json +0 -0
  987. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/014-missing-nonce-param.json +0 -0
  988. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/015-signature-invalid.json +0 -0
  989. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/016-replayed-nonce.json +0 -0
  990. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/017-key-revoked.json +0 -0
  991. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/018-rate-abuse.json +0 -0
  992. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/019-revocation-stale.json +0 -0
  993. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/020-key-ops-missing-verify.json +0 -0
  994. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/negative/021-base64-alphabet-mixing.json +0 -0
  995. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/positive/001-basic-post.json +0 -0
  996. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/positive/002-es256-post.json +0 -0
  997. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/positive/003-multiple-signature-labels.json +0 -0
  998. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/positive/004-default-port-stripped.json +0 -0
  999. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/positive/005-percent-encoded-path.json +0 -0
  1000. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/positive/006-query-byte-preserved.json +0 -0
  1001. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/test-vectors/webhook-signing/positive/007-body-without-idempotency-key.json +0 -0
  1002. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/capability-discovery.yaml +0 -0
  1003. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/collection-lists-pagination-integrity.yaml +0 -0
  1004. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/content-standards-pagination-integrity.yaml +0 -0
  1005. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/deterministic-testing.yaml +0 -0
  1006. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/error-compliance.yaml +0 -0
  1007. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/fictional-entities.yaml +0 -0
  1008. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/get-media-buys-pagination-integrity.yaml +0 -0
  1009. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/get-signals-pagination-integrity.yaml +0 -0
  1010. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/idempotency.yaml +0 -0
  1011. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/pagination-integrity-creative-formats.yaml +0 -0
  1012. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/pagination-integrity-list-accounts.yaml +0 -0
  1013. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/pagination-integrity.yaml +0 -0
  1014. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/property-lists-pagination-integrity.yaml +0 -0
  1015. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/runner-output-contract.yaml +0 -0
  1016. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/schema-validation.yaml +0 -0
  1017. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/security.yaml +0 -0
  1018. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/signed-requests.yaml +0 -0
  1019. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/storyboard-schema.yaml +0 -0
  1020. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/v3-envelope-integrity.yaml +0 -0
  1021. /package/compliance/cache/{3.0.7.previous → 3.0.8.previous}/universal/webhook-emission.yaml +0 -0
@@ -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.1",
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
 
@@ -11,14 +11,19 @@ A seller agent receives briefs from buyers, returns products, accepts media buys
11
11
 
12
12
  Each of these is a worked, currently-running, three-gate-tested reference adapter. Fork it, swap the upstream, ship.
13
13
 
14
- | Specialism | Fork this | Mock upstream | Storyboard |
15
- | --- | --- | --- | --- |
16
- | `sales-guaranteed` | [`hello_seller_adapter_guaranteed.ts`](../../examples/hello_seller_adapter_guaranteed.ts) | `npx adcp mock-server sales-guaranteed` | `sales_guaranteed` |
17
- | `sales-non-guaranteed` | [`hello_seller_adapter_non_guaranteed.ts`](../../examples/hello_seller_adapter_non_guaranteed.ts) | `npx adcp mock-server sales-non-guaranteed` | `sales_non_guaranteed` |
18
- | `sales-social` | [`hello_seller_adapter_social.ts`](../../examples/hello_seller_adapter_social.ts) | `npx adcp mock-server sales-social` | `sales_social` |
19
- | Multi-tenant holdco hub | [`hello_seller_adapter_multi_tenant.ts`](../../examples/hello_seller_adapter_multi_tenant.ts) | composed | per specialism |
14
+ | Specialism | Fork this | Mock upstream | Storyboard |
15
+ | ----------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------- | ---------------------- |
16
+ | `sales-guaranteed` | [`hello_seller_adapter_guaranteed.ts`](../../examples/hello_seller_adapter_guaranteed.ts) | `npx adcp mock-server sales-guaranteed` | `sales_guaranteed` |
17
+ | `sales-non-guaranteed` | [`hello_seller_adapter_non_guaranteed.ts`](../../examples/hello_seller_adapter_non_guaranteed.ts) | `npx adcp mock-server sales-non-guaranteed` | `sales_non_guaranteed` |
18
+ | `sales-social` | [`hello_seller_adapter_social.ts`](../../examples/hello_seller_adapter_social.ts) | `npx adcp mock-server sales-social` | `sales_social` |
19
+ | Multi-tenant holdco hub | [`hello_seller_adapter_multi_tenant.ts`](../../examples/hello_seller_adapter_multi_tenant.ts) | composed | per specialism |
20
20
 
21
- The other sales-* specialisms (`sales-broadcast-tv`, `sales-streaming-tv`, `sales-exchange`, `sales-proposal-mode`) currently fork from `sales-guaranteed` or `sales-non-guaranteed` and apply specialism deltas — see `specialisms/<id>.md`. `sales-streaming-tv` and `sales-exchange` are preview specialisms with placeholder storyboards (claim them to advertise intent; baseline is all that's enforced today).
21
+ The other sales-\* specialisms reuse one of the primary fork targets and apply specialism deltas:
22
+
23
+ - [`sales-broadcast-tv`](specialisms/sales-broadcast-tv.md) — forks `hello_seller_adapter_guaranteed.ts`; deltas around DMA, GRP, daypart, agency estimate number, measurement windows.
24
+ - [`sales-streaming-tv`](specialisms/sales-streaming-tv.md) — forks `hello_seller_adapter_guaranteed.ts`; deltas around CTV (audience-vs-program targeting, reach/freq forecast). Preview specialism — placeholder storyboard.
25
+ - [`sales-proposal-mode`](specialisms/sales-proposal-mode.md) — forks `hello_seller_adapter_proposal_mode.ts`; deltas around `ProposalManager` two-platform composition, `ctx.recipes` hydration, sole-stateful exemption.
26
+ - `sales-exchange` — forks `hello_seller_adapter_non_guaranteed.ts`; preview specialism (placeholder storyboard).
22
27
 
23
28
  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.
24
29
 
@@ -38,7 +43,7 @@ For exact response shapes, error codes, and optional fields, `docs/llms.txt` is
38
43
 
39
44
  ## Cross-cutting rules
40
45
 
41
- Every sales-* seller hits the cross-cutting rules in [`../cross-cutting.md`](../cross-cutting.md). The high-traffic ones for sellers (deep-linked to the rule):
46
+ Every sales-\* seller hits the cross-cutting rules in [`../cross-cutting.md`](../cross-cutting.md). The high-traffic ones for sellers (deep-linked to the rule):
42
47
 
43
48
  - [`idempotency_key`](../cross-cutting.md#idempotency_key-is-required-on-every-mutating-call) on every mutating request — `create_media_buy`, `update_media_buy`, `sync_creatives`, `sync_audiences`, etc.
44
49
  - [Resolve-then-authorize](../cross-cutting.md#resolve-then-authorize--uniform-errors-for-not-found--not-yours) — byte-equivalent errors for `media_buy_id` cross-tenant lookups
@@ -53,6 +58,7 @@ The fork target covers the baseline. Specialism subpages cover the deltas — wh
53
58
  - [`specialisms/sales-guaranteed.md`](specialisms/sales-guaranteed.md) — **read before coding if you claim `sales-guaranteed`**: IO-task envelope, three `create_media_buy` return shapes (task envelope / `pending_creatives` / `active`), `TERMS_REJECTED` on aggressive `measurement_terms`. Applying only the task-envelope path fails 5 storyboard `create_media_buy` steps.
54
59
  - [`specialisms/sales-non-guaranteed.md`](specialisms/sales-non-guaranteed.md) — **read if your inventory clears at request time** (programmatic auction, no HITL approval): sync confirmation, `bid_price`, `update_media_buy` for in-flight changes.
55
60
  - [`specialisms/sales-broadcast-tv.md`](specialisms/sales-broadcast-tv.md) — **read if you sell linear / broadcast TV**: `agency_estimate_number`, Ad-ID `industry_identifiers`, `measurement_windows` (Live/C3/C7).
61
+ - [`specialisms/sales-streaming-tv.md`](specialisms/sales-streaming-tv.md) — **read if you sell CTV / OTT streaming inventory** (preview): audience-vs-program targeting, reach/freq forecast, frequency caps.
56
62
  - [`specialisms/sales-social.md`](specialisms/sales-social.md) — **read if you're a social platform** (Snap, Meta, TikTok, etc.): additive — claim alongside `sales-non-guaranteed`. Adds `sync_audiences`, `sync_catalogs` (DPA), `log_event` (conversions), `get_account_financials`.
57
63
  - [`specialisms/sales-proposal-mode.md`](specialisms/sales-proposal-mode.md) — **read if you negotiate via proposals before line-itemizing**: `proposals[]` with `budget_allocations`, `buying_mode: 'refine'`.
58
64
  - [`specialisms/audience-sync.md`](specialisms/audience-sync.md) — **read if buyers push audiences to you** (walled-garden + identity-provider patterns): `sync_audiences` track. Hashed identifiers, match-rate telemetry.