@adcp/sdk 5.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2426) hide show
  1. package/.claude-plugin/marketplace.json +17 -0
  2. package/.claude-plugin/plugin.json +25 -0
  3. package/ADCP_VERSION +1 -0
  4. package/AGENTS.md +282 -0
  5. package/LICENSE +191 -0
  6. package/README.md +816 -0
  7. package/bin/adcp-async-handler.js +275 -0
  8. package/bin/adcp-config.js +240 -0
  9. package/bin/adcp-fuzz.js +391 -0
  10. package/bin/adcp-grade.js +505 -0
  11. package/bin/adcp-json-stdout.js +36 -0
  12. package/bin/adcp-registry.js +745 -0
  13. package/bin/adcp-signing.js +233 -0
  14. package/bin/adcp-step-hints.js +246 -0
  15. package/bin/adcp-version-check.js +150 -0
  16. package/bin/adcp.js +4821 -0
  17. package/compliance/cache/3.0.0/domains/brand/index.yaml +167 -0
  18. package/compliance/cache/3.0.0/domains/creative/index.yaml +412 -0
  19. package/compliance/cache/3.0.0/domains/governance/index.yaml +683 -0
  20. package/compliance/cache/3.0.0/domains/media-buy/creative-reception.yaml +247 -0
  21. package/compliance/cache/3.0.0/domains/media-buy/index.yaml +742 -0
  22. package/compliance/cache/3.0.0/domains/media-buy/scenarios/creative_fate_after_cancellation.yaml +414 -0
  23. package/compliance/cache/3.0.0/domains/media-buy/scenarios/delivery_reporting.yaml +180 -0
  24. package/compliance/cache/3.0.0/domains/media-buy/scenarios/governance_approved.yaml +186 -0
  25. package/compliance/cache/3.0.0/domains/media-buy/scenarios/governance_conditions.yaml +195 -0
  26. package/compliance/cache/3.0.0/domains/media-buy/scenarios/governance_denied.yaml +189 -0
  27. package/compliance/cache/3.0.0/domains/media-buy/scenarios/governance_denied_recovery.yaml +243 -0
  28. package/compliance/cache/3.0.0/domains/media-buy/scenarios/invalid_transitions.yaml +279 -0
  29. package/compliance/cache/3.0.0/domains/media-buy/scenarios/inventory_list_no_match.yaml +143 -0
  30. package/compliance/cache/3.0.0/domains/media-buy/scenarios/inventory_list_targeting.yaml +266 -0
  31. package/compliance/cache/3.0.0/domains/media-buy/scenarios/measurement_terms_rejected.yaml +194 -0
  32. package/compliance/cache/3.0.0/domains/media-buy/scenarios/pending_creatives_to_start.yaml +250 -0
  33. package/compliance/cache/3.0.0/domains/media-buy/scenarios/proposal_finalize.yaml +242 -0
  34. package/compliance/cache/3.0.0/domains/media-buy/scenarios/refine_products.yaml +148 -0
  35. package/compliance/cache/3.0.0/domains/media-buy/state-machine.yaml +437 -0
  36. package/compliance/cache/3.0.0/domains/signals/index.yaml +266 -0
  37. package/compliance/cache/3.0.0/domains/sponsored-intelligence/index.yaml +256 -0
  38. package/compliance/cache/3.0.0/index.json +324 -0
  39. package/compliance/cache/3.0.0/protocols/brand/index.yaml +167 -0
  40. package/compliance/cache/3.0.0/protocols/creative/index.yaml +412 -0
  41. package/compliance/cache/3.0.0/protocols/governance/index.yaml +683 -0
  42. package/compliance/cache/3.0.0/protocols/media-buy/creative-reception.yaml +247 -0
  43. package/compliance/cache/3.0.0/protocols/media-buy/index.yaml +742 -0
  44. package/compliance/cache/3.0.0/protocols/media-buy/scenarios/creative_fate_after_cancellation.yaml +414 -0
  45. package/compliance/cache/3.0.0/protocols/media-buy/scenarios/delivery_reporting.yaml +180 -0
  46. package/compliance/cache/3.0.0/protocols/media-buy/scenarios/governance_approved.yaml +186 -0
  47. package/compliance/cache/3.0.0/protocols/media-buy/scenarios/governance_conditions.yaml +195 -0
  48. package/compliance/cache/3.0.0/protocols/media-buy/scenarios/governance_denied.yaml +189 -0
  49. package/compliance/cache/3.0.0/protocols/media-buy/scenarios/governance_denied_recovery.yaml +243 -0
  50. package/compliance/cache/3.0.0/protocols/media-buy/scenarios/invalid_transitions.yaml +279 -0
  51. package/compliance/cache/3.0.0/protocols/media-buy/scenarios/inventory_list_no_match.yaml +143 -0
  52. package/compliance/cache/3.0.0/protocols/media-buy/scenarios/inventory_list_targeting.yaml +266 -0
  53. package/compliance/cache/3.0.0/protocols/media-buy/scenarios/measurement_terms_rejected.yaml +194 -0
  54. package/compliance/cache/3.0.0/protocols/media-buy/scenarios/pending_creatives_to_start.yaml +250 -0
  55. package/compliance/cache/3.0.0/protocols/media-buy/scenarios/proposal_finalize.yaml +242 -0
  56. package/compliance/cache/3.0.0/protocols/media-buy/scenarios/refine_products.yaml +148 -0
  57. package/compliance/cache/3.0.0/protocols/media-buy/state-machine.yaml +437 -0
  58. package/compliance/cache/3.0.0/protocols/signals/index.yaml +266 -0
  59. package/compliance/cache/3.0.0/protocols/sponsored-intelligence/index.yaml +256 -0
  60. package/compliance/cache/3.0.0/specialisms/audience-sync/index.yaml +280 -0
  61. package/compliance/cache/3.0.0/specialisms/brand-rights/index.yaml +346 -0
  62. package/compliance/cache/3.0.0/specialisms/brand-rights/scenarios/governance_denied.yaml +203 -0
  63. package/compliance/cache/3.0.0/specialisms/collection-lists/index.yaml +359 -0
  64. package/compliance/cache/3.0.0/specialisms/content-standards/index.yaml +572 -0
  65. package/compliance/cache/3.0.0/specialisms/creative-ad-server/index.yaml +383 -0
  66. package/compliance/cache/3.0.0/specialisms/creative-generative/generative-seller.yaml +733 -0
  67. package/compliance/cache/3.0.0/specialisms/creative-generative/index.yaml +746 -0
  68. package/compliance/cache/3.0.0/specialisms/creative-template/index.yaml +413 -0
  69. package/compliance/cache/3.0.0/specialisms/governance-aware-seller/index.yaml +99 -0
  70. package/compliance/cache/3.0.0/specialisms/governance-delivery-monitor/index.yaml +419 -0
  71. package/compliance/cache/3.0.0/specialisms/governance-spend-authority/denied.yaml +221 -0
  72. package/compliance/cache/3.0.0/specialisms/governance-spend-authority/index.yaml +330 -0
  73. package/compliance/cache/3.0.0/specialisms/property-lists/index.yaml +482 -0
  74. package/compliance/cache/3.0.0/specialisms/sales-broadcast-tv/index.yaml +664 -0
  75. package/compliance/cache/3.0.0/specialisms/sales-catalog-driven/index.yaml +779 -0
  76. package/compliance/cache/3.0.0/specialisms/sales-guaranteed/index.yaml +479 -0
  77. package/compliance/cache/3.0.0/specialisms/sales-non-guaranteed/index.yaml +428 -0
  78. package/compliance/cache/3.0.0/specialisms/sales-proposal-mode/index.yaml +520 -0
  79. package/compliance/cache/3.0.0/specialisms/sales-social/index.yaml +521 -0
  80. package/compliance/cache/3.0.0/specialisms/signal-marketplace/index.yaml +415 -0
  81. package/compliance/cache/3.0.0/specialisms/signal-marketplace/scenarios/governance_denied.yaml +195 -0
  82. package/compliance/cache/3.0.0/specialisms/signal-owned/index.yaml +316 -0
  83. package/compliance/cache/3.0.0/specialisms/signed-requests/index.yaml +192 -0
  84. package/compliance/cache/3.0.0/test-kits/acme-outdoor.yaml +210 -0
  85. package/compliance/cache/3.0.0/test-kits/bistro-oranje.yaml +126 -0
  86. package/compliance/cache/3.0.0/test-kits/nova-motors.yaml +262 -0
  87. package/compliance/cache/3.0.0/test-kits/osei-natural.yaml +126 -0
  88. package/compliance/cache/3.0.0/test-kits/signed-requests-runner.yaml +153 -0
  89. package/compliance/cache/3.0.0/test-kits/substitution-observer-runner.yaml +690 -0
  90. package/compliance/cache/3.0.0/test-kits/summit-foods.yaml +125 -0
  91. package/compliance/cache/3.0.0/test-kits/webhook-receiver-runner.yaml +265 -0
  92. package/compliance/cache/3.0.0/test-vectors/plan-hash/001-minimal-plan.json +43 -0
  93. package/compliance/cache/3.0.0/test-vectors/plan-hash/002-full-plan.json +217 -0
  94. package/compliance/cache/3.0.0/test-vectors/plan-hash/003-bookkeeping-stripped.json +60 -0
  95. package/compliance/cache/3.0.0/test-vectors/plan-hash/004a-human-review-omitted.json +43 -0
  96. package/compliance/cache/3.0.0/test-vectors/plan-hash/004b-human-review-explicit-null.json +49 -0
  97. package/compliance/cache/3.0.0/test-vectors/plan-hash/005a-policy-categories-order-1.json +53 -0
  98. package/compliance/cache/3.0.0/test-vectors/plan-hash/005b-policy-categories-order-2.json +57 -0
  99. package/compliance/cache/3.0.0/test-vectors/plan-hash/006a-ext-trace-v1.json +49 -0
  100. package/compliance/cache/3.0.0/test-vectors/plan-hash/006b-ext-trace-v2.json +53 -0
  101. package/compliance/cache/3.0.0/test-vectors/plan-hash/007-unicode-objectives.json +43 -0
  102. package/compliance/cache/3.0.0/test-vectors/plan-hash/008-numeric-canonicalization.json +65 -0
  103. package/compliance/cache/3.0.0/test-vectors/request-signing/README.md +219 -0
  104. package/compliance/cache/3.0.0/test-vectors/request-signing/canonicalization.json +241 -0
  105. package/compliance/cache/3.0.0/test-vectors/request-signing/keys.json +60 -0
  106. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/001-no-signature-header.json +24 -0
  107. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/002-wrong-tag.json +26 -0
  108. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/003-expired-signature.json +26 -0
  109. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/004-window-too-long.json +26 -0
  110. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/005-alg-not-allowed.json +26 -0
  111. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/006-missing-covered-component.json +26 -0
  112. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/007-missing-content-digest.json +26 -0
  113. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/008-unknown-keyid.json +26 -0
  114. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/009-key-ops-missing-verify.json +27 -0
  115. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/010-content-digest-mismatch.json +33 -0
  116. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/011-malformed-header.json +27 -0
  117. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/012-missing-expires-param.json +26 -0
  118. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/013-expires-le-created.json +27 -0
  119. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/014-missing-nonce-param.json +27 -0
  120. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/015-signature-invalid.json +28 -0
  121. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/016-replayed-nonce.json +35 -0
  122. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/017-key-revoked.json +38 -0
  123. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/018-digest-covered-when-forbidden.json +28 -0
  124. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/019-signature-without-signature-input.json +26 -0
  125. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/020-rate-abuse.json +34 -0
  126. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/021-duplicate-signature-input-label.json +31 -0
  127. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/022-multi-valued-content-type.json +31 -0
  128. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/023-multi-valued-content-digest.json +32 -0
  129. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/024-unquoted-string-param.json +31 -0
  130. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/025-jwk-alg-crv-mismatch.json +43 -0
  131. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/026-non-ascii-host.json +31 -0
  132. package/compliance/cache/3.0.0/test-vectors/request-signing/negative/027-webhook-registration-authentication-unsigned.json +25 -0
  133. package/compliance/cache/3.0.0/test-vectors/request-signing/positive/001-basic-post.json +30 -0
  134. package/compliance/cache/3.0.0/test-vectors/request-signing/positive/002-post-with-content-digest.json +31 -0
  135. package/compliance/cache/3.0.0/test-vectors/request-signing/positive/003-es256-post.json +30 -0
  136. package/compliance/cache/3.0.0/test-vectors/request-signing/positive/004-multiple-signature-labels.json +26 -0
  137. package/compliance/cache/3.0.0/test-vectors/request-signing/positive/005-default-port-stripped.json +30 -0
  138. package/compliance/cache/3.0.0/test-vectors/request-signing/positive/006-dot-segment-path.json +30 -0
  139. package/compliance/cache/3.0.0/test-vectors/request-signing/positive/007-query-byte-preserved.json +30 -0
  140. package/compliance/cache/3.0.0/test-vectors/request-signing/positive/008-percent-encoded-path.json +30 -0
  141. package/compliance/cache/3.0.0/test-vectors/request-signing/positive/009-percent-encoded-unreserved-decoded.json +30 -0
  142. package/compliance/cache/3.0.0/test-vectors/request-signing/positive/010-percent-encoded-slash-preserved.json +30 -0
  143. package/compliance/cache/3.0.0/test-vectors/request-signing/positive/011-ipv6-authority.json +30 -0
  144. package/compliance/cache/3.0.0/test-vectors/request-signing/positive/012-ipv6-authority-default-port-stripped.json +30 -0
  145. package/compliance/cache/3.0.0/test-vectors/webhook-signing/README.md +211 -0
  146. package/compliance/cache/3.0.0/test-vectors/webhook-signing/keys.json +61 -0
  147. package/compliance/cache/3.0.0/test-vectors/webhook-signing/negative/001-wrong-tag.json +26 -0
  148. package/compliance/cache/3.0.0/test-vectors/webhook-signing/negative/002-expired-signature.json +26 -0
  149. package/compliance/cache/3.0.0/test-vectors/webhook-signing/negative/003-window-too-long.json +26 -0
  150. package/compliance/cache/3.0.0/test-vectors/webhook-signing/negative/004-alg-not-allowed.json +26 -0
  151. package/compliance/cache/3.0.0/test-vectors/webhook-signing/negative/005-missing-authority-component.json +26 -0
  152. package/compliance/cache/3.0.0/test-vectors/webhook-signing/negative/006-missing-content-digest.json +25 -0
  153. package/compliance/cache/3.0.0/test-vectors/webhook-signing/negative/007-unknown-keyid.json +26 -0
  154. package/compliance/cache/3.0.0/test-vectors/webhook-signing/negative/008-wrong-adcp-use.json +26 -0
  155. package/compliance/cache/3.0.0/test-vectors/webhook-signing/negative/009-content-digest-mismatch.json +26 -0
  156. package/compliance/cache/3.0.0/test-vectors/webhook-signing/negative/010-malformed-signature-input.json +26 -0
  157. package/compliance/cache/3.0.0/test-vectors/webhook-signing/negative/011-signature-without-input.json +25 -0
  158. package/compliance/cache/3.0.0/test-vectors/webhook-signing/negative/012-missing-expires-param.json +26 -0
  159. package/compliance/cache/3.0.0/test-vectors/webhook-signing/negative/013-expires-le-created.json +26 -0
  160. package/compliance/cache/3.0.0/test-vectors/webhook-signing/negative/014-missing-nonce-param.json +26 -0
  161. package/compliance/cache/3.0.0/test-vectors/webhook-signing/negative/015-signature-invalid.json +26 -0
  162. package/compliance/cache/3.0.0/test-vectors/webhook-signing/negative/016-replayed-nonce.json +37 -0
  163. package/compliance/cache/3.0.0/test-vectors/webhook-signing/negative/017-key-revoked.json +32 -0
  164. package/compliance/cache/3.0.0/test-vectors/webhook-signing/negative/018-rate-abuse.json +33 -0
  165. package/compliance/cache/3.0.0/test-vectors/webhook-signing/negative/019-revocation-stale.json +32 -0
  166. package/compliance/cache/3.0.0/test-vectors/webhook-signing/negative/020-key-ops-missing-verify.json +41 -0
  167. package/compliance/cache/3.0.0/test-vectors/webhook-signing/negative/021-base64-alphabet-mixing.json +26 -0
  168. package/compliance/cache/3.0.0/test-vectors/webhook-signing/positive/001-basic-post.json +24 -0
  169. package/compliance/cache/3.0.0/test-vectors/webhook-signing/positive/002-es256-post.json +24 -0
  170. package/compliance/cache/3.0.0/test-vectors/webhook-signing/positive/003-multiple-signature-labels.json +24 -0
  171. package/compliance/cache/3.0.0/test-vectors/webhook-signing/positive/004-default-port-stripped.json +24 -0
  172. package/compliance/cache/3.0.0/test-vectors/webhook-signing/positive/005-percent-encoded-path.json +24 -0
  173. package/compliance/cache/3.0.0/test-vectors/webhook-signing/positive/006-query-byte-preserved.json +24 -0
  174. package/compliance/cache/3.0.0/test-vectors/webhook-signing/positive/007-body-without-idempotency-key.json +25 -0
  175. package/compliance/cache/3.0.0/universal/capability-discovery.yaml +125 -0
  176. package/compliance/cache/3.0.0/universal/deterministic-testing.yaml +1318 -0
  177. package/compliance/cache/3.0.0/universal/error-compliance.yaml +468 -0
  178. package/compliance/cache/3.0.0/universal/fictional-entities.yaml +307 -0
  179. package/compliance/cache/3.0.0/universal/idempotency.yaml +577 -0
  180. package/compliance/cache/3.0.0/universal/runner-output-contract.yaml +335 -0
  181. package/compliance/cache/3.0.0/universal/schema-validation.yaml +514 -0
  182. package/compliance/cache/3.0.0/universal/security.yaml +428 -0
  183. package/compliance/cache/3.0.0/universal/storyboard-schema.yaml +1010 -0
  184. package/compliance/cache/3.0.0/universal/webhook-emission.yaml +337 -0
  185. package/compliance/cache/3.0.0.previous/domains/brand/index.yaml +167 -0
  186. package/compliance/cache/3.0.0.previous/domains/creative/index.yaml +412 -0
  187. package/compliance/cache/3.0.0.previous/domains/governance/index.yaml +683 -0
  188. package/compliance/cache/3.0.0.previous/domains/media-buy/creative-reception.yaml +247 -0
  189. package/compliance/cache/3.0.0.previous/domains/media-buy/index.yaml +742 -0
  190. package/compliance/cache/3.0.0.previous/domains/media-buy/scenarios/creative_fate_after_cancellation.yaml +414 -0
  191. package/compliance/cache/3.0.0.previous/domains/media-buy/scenarios/delivery_reporting.yaml +180 -0
  192. package/compliance/cache/3.0.0.previous/domains/media-buy/scenarios/governance_approved.yaml +186 -0
  193. package/compliance/cache/3.0.0.previous/domains/media-buy/scenarios/governance_conditions.yaml +195 -0
  194. package/compliance/cache/3.0.0.previous/domains/media-buy/scenarios/governance_denied.yaml +189 -0
  195. package/compliance/cache/3.0.0.previous/domains/media-buy/scenarios/governance_denied_recovery.yaml +243 -0
  196. package/compliance/cache/3.0.0.previous/domains/media-buy/scenarios/invalid_transitions.yaml +279 -0
  197. package/compliance/cache/3.0.0.previous/domains/media-buy/scenarios/inventory_list_no_match.yaml +143 -0
  198. package/compliance/cache/3.0.0.previous/domains/media-buy/scenarios/inventory_list_targeting.yaml +266 -0
  199. package/compliance/cache/3.0.0.previous/domains/media-buy/scenarios/measurement_terms_rejected.yaml +194 -0
  200. package/compliance/cache/3.0.0.previous/domains/media-buy/scenarios/pending_creatives_to_start.yaml +250 -0
  201. package/compliance/cache/3.0.0.previous/domains/media-buy/scenarios/proposal_finalize.yaml +242 -0
  202. package/compliance/cache/3.0.0.previous/domains/media-buy/scenarios/refine_products.yaml +148 -0
  203. package/compliance/cache/3.0.0.previous/domains/media-buy/state-machine.yaml +437 -0
  204. package/compliance/cache/3.0.0.previous/domains/signals/index.yaml +266 -0
  205. package/compliance/cache/3.0.0.previous/domains/sponsored-intelligence/index.yaml +256 -0
  206. package/compliance/cache/3.0.0.previous/index.json +324 -0
  207. package/compliance/cache/3.0.0.previous/protocols/brand/index.yaml +167 -0
  208. package/compliance/cache/3.0.0.previous/protocols/creative/index.yaml +412 -0
  209. package/compliance/cache/3.0.0.previous/protocols/governance/index.yaml +683 -0
  210. package/compliance/cache/3.0.0.previous/protocols/media-buy/creative-reception.yaml +247 -0
  211. package/compliance/cache/3.0.0.previous/protocols/media-buy/index.yaml +742 -0
  212. package/compliance/cache/3.0.0.previous/protocols/media-buy/scenarios/creative_fate_after_cancellation.yaml +414 -0
  213. package/compliance/cache/3.0.0.previous/protocols/media-buy/scenarios/delivery_reporting.yaml +180 -0
  214. package/compliance/cache/3.0.0.previous/protocols/media-buy/scenarios/governance_approved.yaml +186 -0
  215. package/compliance/cache/3.0.0.previous/protocols/media-buy/scenarios/governance_conditions.yaml +195 -0
  216. package/compliance/cache/3.0.0.previous/protocols/media-buy/scenarios/governance_denied.yaml +189 -0
  217. package/compliance/cache/3.0.0.previous/protocols/media-buy/scenarios/governance_denied_recovery.yaml +243 -0
  218. package/compliance/cache/3.0.0.previous/protocols/media-buy/scenarios/invalid_transitions.yaml +279 -0
  219. package/compliance/cache/3.0.0.previous/protocols/media-buy/scenarios/inventory_list_no_match.yaml +143 -0
  220. package/compliance/cache/3.0.0.previous/protocols/media-buy/scenarios/inventory_list_targeting.yaml +266 -0
  221. package/compliance/cache/3.0.0.previous/protocols/media-buy/scenarios/measurement_terms_rejected.yaml +194 -0
  222. package/compliance/cache/3.0.0.previous/protocols/media-buy/scenarios/pending_creatives_to_start.yaml +250 -0
  223. package/compliance/cache/3.0.0.previous/protocols/media-buy/scenarios/proposal_finalize.yaml +242 -0
  224. package/compliance/cache/3.0.0.previous/protocols/media-buy/scenarios/refine_products.yaml +148 -0
  225. package/compliance/cache/3.0.0.previous/protocols/media-buy/state-machine.yaml +437 -0
  226. package/compliance/cache/3.0.0.previous/protocols/signals/index.yaml +266 -0
  227. package/compliance/cache/3.0.0.previous/protocols/sponsored-intelligence/index.yaml +256 -0
  228. package/compliance/cache/3.0.0.previous/specialisms/audience-sync/index.yaml +280 -0
  229. package/compliance/cache/3.0.0.previous/specialisms/brand-rights/index.yaml +346 -0
  230. package/compliance/cache/3.0.0.previous/specialisms/brand-rights/scenarios/governance_denied.yaml +203 -0
  231. package/compliance/cache/3.0.0.previous/specialisms/collection-lists/index.yaml +359 -0
  232. package/compliance/cache/3.0.0.previous/specialisms/content-standards/index.yaml +572 -0
  233. package/compliance/cache/3.0.0.previous/specialisms/creative-ad-server/index.yaml +383 -0
  234. package/compliance/cache/3.0.0.previous/specialisms/creative-generative/generative-seller.yaml +733 -0
  235. package/compliance/cache/3.0.0.previous/specialisms/creative-generative/index.yaml +746 -0
  236. package/compliance/cache/3.0.0.previous/specialisms/creative-template/index.yaml +413 -0
  237. package/compliance/cache/3.0.0.previous/specialisms/governance-aware-seller/index.yaml +99 -0
  238. package/compliance/cache/3.0.0.previous/specialisms/governance-delivery-monitor/index.yaml +419 -0
  239. package/compliance/cache/3.0.0.previous/specialisms/governance-spend-authority/denied.yaml +221 -0
  240. package/compliance/cache/3.0.0.previous/specialisms/governance-spend-authority/index.yaml +330 -0
  241. package/compliance/cache/3.0.0.previous/specialisms/property-lists/index.yaml +482 -0
  242. package/compliance/cache/3.0.0.previous/specialisms/sales-broadcast-tv/index.yaml +664 -0
  243. package/compliance/cache/3.0.0.previous/specialisms/sales-catalog-driven/index.yaml +779 -0
  244. package/compliance/cache/3.0.0.previous/specialisms/sales-guaranteed/index.yaml +479 -0
  245. package/compliance/cache/3.0.0.previous/specialisms/sales-non-guaranteed/index.yaml +428 -0
  246. package/compliance/cache/3.0.0.previous/specialisms/sales-proposal-mode/index.yaml +520 -0
  247. package/compliance/cache/3.0.0.previous/specialisms/sales-social/index.yaml +521 -0
  248. package/compliance/cache/3.0.0.previous/specialisms/signal-marketplace/index.yaml +415 -0
  249. package/compliance/cache/3.0.0.previous/specialisms/signal-marketplace/scenarios/governance_denied.yaml +195 -0
  250. package/compliance/cache/3.0.0.previous/specialisms/signal-owned/index.yaml +316 -0
  251. package/compliance/cache/3.0.0.previous/specialisms/signed-requests/index.yaml +192 -0
  252. package/compliance/cache/3.0.0.previous/test-kits/acme-outdoor.yaml +210 -0
  253. package/compliance/cache/3.0.0.previous/test-kits/bistro-oranje.yaml +126 -0
  254. package/compliance/cache/3.0.0.previous/test-kits/nova-motors.yaml +262 -0
  255. package/compliance/cache/3.0.0.previous/test-kits/osei-natural.yaml +126 -0
  256. package/compliance/cache/3.0.0.previous/test-kits/signed-requests-runner.yaml +153 -0
  257. package/compliance/cache/3.0.0.previous/test-kits/substitution-observer-runner.yaml +690 -0
  258. package/compliance/cache/3.0.0.previous/test-kits/summit-foods.yaml +125 -0
  259. package/compliance/cache/3.0.0.previous/test-kits/webhook-receiver-runner.yaml +265 -0
  260. package/compliance/cache/3.0.0.previous/test-vectors/plan-hash/001-minimal-plan.json +43 -0
  261. package/compliance/cache/3.0.0.previous/test-vectors/plan-hash/002-full-plan.json +217 -0
  262. package/compliance/cache/3.0.0.previous/test-vectors/plan-hash/003-bookkeeping-stripped.json +60 -0
  263. package/compliance/cache/3.0.0.previous/test-vectors/plan-hash/004a-human-review-omitted.json +43 -0
  264. package/compliance/cache/3.0.0.previous/test-vectors/plan-hash/004b-human-review-explicit-null.json +49 -0
  265. package/compliance/cache/3.0.0.previous/test-vectors/plan-hash/005a-policy-categories-order-1.json +53 -0
  266. package/compliance/cache/3.0.0.previous/test-vectors/plan-hash/005b-policy-categories-order-2.json +57 -0
  267. package/compliance/cache/3.0.0.previous/test-vectors/plan-hash/006a-ext-trace-v1.json +49 -0
  268. package/compliance/cache/3.0.0.previous/test-vectors/plan-hash/006b-ext-trace-v2.json +53 -0
  269. package/compliance/cache/3.0.0.previous/test-vectors/plan-hash/007-unicode-objectives.json +43 -0
  270. package/compliance/cache/3.0.0.previous/test-vectors/plan-hash/008-numeric-canonicalization.json +65 -0
  271. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/README.md +219 -0
  272. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/canonicalization.json +241 -0
  273. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/keys.json +60 -0
  274. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/001-no-signature-header.json +24 -0
  275. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/002-wrong-tag.json +26 -0
  276. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/003-expired-signature.json +26 -0
  277. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/004-window-too-long.json +26 -0
  278. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/005-alg-not-allowed.json +26 -0
  279. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/006-missing-covered-component.json +26 -0
  280. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/007-missing-content-digest.json +26 -0
  281. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/008-unknown-keyid.json +26 -0
  282. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/009-key-ops-missing-verify.json +27 -0
  283. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/010-content-digest-mismatch.json +33 -0
  284. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/011-malformed-header.json +27 -0
  285. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/012-missing-expires-param.json +26 -0
  286. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/013-expires-le-created.json +27 -0
  287. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/014-missing-nonce-param.json +27 -0
  288. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/015-signature-invalid.json +28 -0
  289. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/016-replayed-nonce.json +35 -0
  290. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/017-key-revoked.json +38 -0
  291. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/018-digest-covered-when-forbidden.json +28 -0
  292. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/019-signature-without-signature-input.json +26 -0
  293. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/020-rate-abuse.json +34 -0
  294. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/021-duplicate-signature-input-label.json +31 -0
  295. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/022-multi-valued-content-type.json +31 -0
  296. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/023-multi-valued-content-digest.json +32 -0
  297. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/024-unquoted-string-param.json +31 -0
  298. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/025-jwk-alg-crv-mismatch.json +43 -0
  299. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/026-non-ascii-host.json +31 -0
  300. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/negative/027-webhook-registration-authentication-unsigned.json +25 -0
  301. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/positive/001-basic-post.json +30 -0
  302. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/positive/002-post-with-content-digest.json +31 -0
  303. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/positive/003-es256-post.json +30 -0
  304. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/positive/004-multiple-signature-labels.json +26 -0
  305. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/positive/005-default-port-stripped.json +30 -0
  306. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/positive/006-dot-segment-path.json +30 -0
  307. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/positive/007-query-byte-preserved.json +30 -0
  308. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/positive/008-percent-encoded-path.json +30 -0
  309. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/positive/009-percent-encoded-unreserved-decoded.json +30 -0
  310. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/positive/010-percent-encoded-slash-preserved.json +30 -0
  311. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/positive/011-ipv6-authority.json +30 -0
  312. package/compliance/cache/3.0.0.previous/test-vectors/request-signing/positive/012-ipv6-authority-default-port-stripped.json +30 -0
  313. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/README.md +211 -0
  314. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/keys.json +61 -0
  315. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/negative/001-wrong-tag.json +26 -0
  316. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/negative/002-expired-signature.json +26 -0
  317. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/negative/003-window-too-long.json +26 -0
  318. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/negative/004-alg-not-allowed.json +26 -0
  319. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/negative/005-missing-authority-component.json +26 -0
  320. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/negative/006-missing-content-digest.json +25 -0
  321. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/negative/007-unknown-keyid.json +26 -0
  322. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/negative/008-wrong-adcp-use.json +26 -0
  323. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/negative/009-content-digest-mismatch.json +26 -0
  324. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/negative/010-malformed-signature-input.json +26 -0
  325. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/negative/011-signature-without-input.json +25 -0
  326. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/negative/012-missing-expires-param.json +26 -0
  327. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/negative/013-expires-le-created.json +26 -0
  328. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/negative/014-missing-nonce-param.json +26 -0
  329. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/negative/015-signature-invalid.json +26 -0
  330. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/negative/016-replayed-nonce.json +37 -0
  331. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/negative/017-key-revoked.json +32 -0
  332. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/negative/018-rate-abuse.json +33 -0
  333. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/negative/019-revocation-stale.json +32 -0
  334. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/negative/020-key-ops-missing-verify.json +41 -0
  335. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/negative/021-base64-alphabet-mixing.json +26 -0
  336. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/positive/001-basic-post.json +24 -0
  337. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/positive/002-es256-post.json +24 -0
  338. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/positive/003-multiple-signature-labels.json +24 -0
  339. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/positive/004-default-port-stripped.json +24 -0
  340. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/positive/005-percent-encoded-path.json +24 -0
  341. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/positive/006-query-byte-preserved.json +24 -0
  342. package/compliance/cache/3.0.0.previous/test-vectors/webhook-signing/positive/007-body-without-idempotency-key.json +25 -0
  343. package/compliance/cache/3.0.0.previous/universal/capability-discovery.yaml +125 -0
  344. package/compliance/cache/3.0.0.previous/universal/deterministic-testing.yaml +1318 -0
  345. package/compliance/cache/3.0.0.previous/universal/error-compliance.yaml +468 -0
  346. package/compliance/cache/3.0.0.previous/universal/fictional-entities.yaml +307 -0
  347. package/compliance/cache/3.0.0.previous/universal/idempotency.yaml +577 -0
  348. package/compliance/cache/3.0.0.previous/universal/runner-output-contract.yaml +335 -0
  349. package/compliance/cache/3.0.0.previous/universal/schema-validation.yaml +514 -0
  350. package/compliance/cache/3.0.0.previous/universal/security.yaml +428 -0
  351. package/compliance/cache/3.0.0.previous/universal/storyboard-schema.yaml +1010 -0
  352. package/compliance/cache/3.0.0.previous/universal/webhook-emission.yaml +337 -0
  353. package/compliance/cache/3.0.1/domains/brand/index.yaml +163 -0
  354. package/compliance/cache/3.0.1/domains/creative/index.yaml +412 -0
  355. package/compliance/cache/3.0.1/domains/governance/index.yaml +683 -0
  356. package/compliance/cache/3.0.1/domains/media-buy/creative-reception.yaml +247 -0
  357. package/compliance/cache/3.0.1/domains/media-buy/index.yaml +769 -0
  358. package/compliance/cache/3.0.1/domains/media-buy/scenarios/create_media_buy_async.yaml +232 -0
  359. package/compliance/cache/3.0.1/domains/media-buy/scenarios/creative_fate_after_cancellation.yaml +414 -0
  360. package/compliance/cache/3.0.1/domains/media-buy/scenarios/delivery_reporting.yaml +205 -0
  361. package/compliance/cache/3.0.1/domains/media-buy/scenarios/governance_approved.yaml +211 -0
  362. package/compliance/cache/3.0.1/domains/media-buy/scenarios/governance_conditions.yaml +196 -0
  363. package/compliance/cache/3.0.1/domains/media-buy/scenarios/governance_denied.yaml +192 -0
  364. package/compliance/cache/3.0.1/domains/media-buy/scenarios/governance_denied_recovery.yaml +244 -0
  365. package/compliance/cache/3.0.1/domains/media-buy/scenarios/invalid_transitions.yaml +284 -0
  366. package/compliance/cache/3.0.1/domains/media-buy/scenarios/inventory_list_no_match.yaml +143 -0
  367. package/compliance/cache/3.0.1/domains/media-buy/scenarios/inventory_list_targeting.yaml +266 -0
  368. package/compliance/cache/3.0.1/domains/media-buy/scenarios/measurement_terms_rejected.yaml +195 -0
  369. package/compliance/cache/3.0.1/domains/media-buy/scenarios/pending_creatives_to_start.yaml +250 -0
  370. package/compliance/cache/3.0.1/domains/media-buy/scenarios/proposal_finalize.yaml +243 -0
  371. package/compliance/cache/3.0.1/domains/media-buy/scenarios/refine_products.yaml +148 -0
  372. package/compliance/cache/3.0.1/domains/media-buy/state-machine.yaml +442 -0
  373. package/compliance/cache/3.0.1/domains/signals/index.yaml +266 -0
  374. package/compliance/cache/3.0.1/domains/sponsored-intelligence/index.yaml +256 -0
  375. package/compliance/cache/3.0.1/index.json +324 -0
  376. package/compliance/cache/3.0.1/protocols/brand/index.yaml +163 -0
  377. package/compliance/cache/3.0.1/protocols/creative/index.yaml +412 -0
  378. package/compliance/cache/3.0.1/protocols/governance/index.yaml +683 -0
  379. package/compliance/cache/3.0.1/protocols/media-buy/creative-reception.yaml +247 -0
  380. package/compliance/cache/3.0.1/protocols/media-buy/index.yaml +769 -0
  381. package/compliance/cache/3.0.1/protocols/media-buy/scenarios/create_media_buy_async.yaml +232 -0
  382. package/compliance/cache/3.0.1/protocols/media-buy/scenarios/creative_fate_after_cancellation.yaml +414 -0
  383. package/compliance/cache/3.0.1/protocols/media-buy/scenarios/delivery_reporting.yaml +205 -0
  384. package/compliance/cache/3.0.1/protocols/media-buy/scenarios/governance_approved.yaml +211 -0
  385. package/compliance/cache/3.0.1/protocols/media-buy/scenarios/governance_conditions.yaml +196 -0
  386. package/compliance/cache/3.0.1/protocols/media-buy/scenarios/governance_denied.yaml +192 -0
  387. package/compliance/cache/3.0.1/protocols/media-buy/scenarios/governance_denied_recovery.yaml +244 -0
  388. package/compliance/cache/3.0.1/protocols/media-buy/scenarios/invalid_transitions.yaml +284 -0
  389. package/compliance/cache/3.0.1/protocols/media-buy/scenarios/inventory_list_no_match.yaml +143 -0
  390. package/compliance/cache/3.0.1/protocols/media-buy/scenarios/inventory_list_targeting.yaml +266 -0
  391. package/compliance/cache/3.0.1/protocols/media-buy/scenarios/measurement_terms_rejected.yaml +195 -0
  392. package/compliance/cache/3.0.1/protocols/media-buy/scenarios/pending_creatives_to_start.yaml +250 -0
  393. package/compliance/cache/3.0.1/protocols/media-buy/scenarios/proposal_finalize.yaml +243 -0
  394. package/compliance/cache/3.0.1/protocols/media-buy/scenarios/refine_products.yaml +148 -0
  395. package/compliance/cache/3.0.1/protocols/media-buy/state-machine.yaml +442 -0
  396. package/compliance/cache/3.0.1/protocols/signals/index.yaml +266 -0
  397. package/compliance/cache/3.0.1/protocols/sponsored-intelligence/index.yaml +256 -0
  398. package/compliance/cache/3.0.1/specialisms/audience-sync/index.yaml +280 -0
  399. package/compliance/cache/3.0.1/specialisms/brand-rights/index.yaml +350 -0
  400. package/compliance/cache/3.0.1/specialisms/brand-rights/scenarios/governance_denied.yaml +204 -0
  401. package/compliance/cache/3.0.1/specialisms/collection-lists/index.yaml +359 -0
  402. package/compliance/cache/3.0.1/specialisms/content-standards/index.yaml +572 -0
  403. package/compliance/cache/3.0.1/specialisms/creative-ad-server/index.yaml +383 -0
  404. package/compliance/cache/3.0.1/specialisms/creative-generative/generative-seller.yaml +758 -0
  405. package/compliance/cache/3.0.1/specialisms/creative-generative/index.yaml +746 -0
  406. package/compliance/cache/3.0.1/specialisms/creative-template/index.yaml +413 -0
  407. package/compliance/cache/3.0.1/specialisms/governance-aware-seller/index.yaml +136 -0
  408. package/compliance/cache/3.0.1/specialisms/governance-delivery-monitor/index.yaml +441 -0
  409. package/compliance/cache/3.0.1/specialisms/governance-spend-authority/denied.yaml +221 -0
  410. package/compliance/cache/3.0.1/specialisms/governance-spend-authority/index.yaml +330 -0
  411. package/compliance/cache/3.0.1/specialisms/property-lists/index.yaml +482 -0
  412. package/compliance/cache/3.0.1/specialisms/sales-broadcast-tv/index.yaml +689 -0
  413. package/compliance/cache/3.0.1/specialisms/sales-catalog-driven/index.yaml +779 -0
  414. package/compliance/cache/3.0.1/specialisms/sales-guaranteed/index.yaml +504 -0
  415. package/compliance/cache/3.0.1/specialisms/sales-non-guaranteed/index.yaml +428 -0
  416. package/compliance/cache/3.0.1/specialisms/sales-proposal-mode/index.yaml +520 -0
  417. package/compliance/cache/3.0.1/specialisms/sales-social/index.yaml +577 -0
  418. package/compliance/cache/3.0.1/specialisms/signal-marketplace/index.yaml +415 -0
  419. package/compliance/cache/3.0.1/specialisms/signal-marketplace/scenarios/governance_denied.yaml +207 -0
  420. package/compliance/cache/3.0.1/specialisms/signal-owned/index.yaml +316 -0
  421. package/compliance/cache/3.0.1/test-kits/acme-outdoor.yaml +210 -0
  422. package/compliance/cache/3.0.1/test-kits/bistro-oranje.yaml +126 -0
  423. package/compliance/cache/3.0.1/test-kits/nova-motors.yaml +262 -0
  424. package/compliance/cache/3.0.1/test-kits/osei-natural.yaml +126 -0
  425. package/compliance/cache/3.0.1/test-kits/signed-requests-runner.yaml +155 -0
  426. package/compliance/cache/3.0.1/test-kits/substitution-observer-runner.yaml +690 -0
  427. package/compliance/cache/3.0.1/test-kits/summit-foods.yaml +125 -0
  428. package/compliance/cache/3.0.1/test-kits/webhook-receiver-runner.yaml +265 -0
  429. package/compliance/cache/3.0.1/test-vectors/plan-hash/001-minimal-plan.json +43 -0
  430. package/compliance/cache/3.0.1/test-vectors/plan-hash/002-full-plan.json +217 -0
  431. package/compliance/cache/3.0.1/test-vectors/plan-hash/003-bookkeeping-stripped.json +60 -0
  432. package/compliance/cache/3.0.1/test-vectors/plan-hash/004a-human-review-omitted.json +43 -0
  433. package/compliance/cache/3.0.1/test-vectors/plan-hash/004b-human-review-explicit-null.json +49 -0
  434. package/compliance/cache/3.0.1/test-vectors/plan-hash/005a-policy-categories-order-1.json +53 -0
  435. package/compliance/cache/3.0.1/test-vectors/plan-hash/005b-policy-categories-order-2.json +57 -0
  436. package/compliance/cache/3.0.1/test-vectors/plan-hash/006a-ext-trace-v1.json +49 -0
  437. package/compliance/cache/3.0.1/test-vectors/plan-hash/006b-ext-trace-v2.json +53 -0
  438. package/compliance/cache/3.0.1/test-vectors/plan-hash/007-unicode-objectives.json +43 -0
  439. package/compliance/cache/3.0.1/test-vectors/plan-hash/008-numeric-canonicalization.json +65 -0
  440. package/compliance/cache/3.0.1/test-vectors/request-signing/README.md +219 -0
  441. package/compliance/cache/3.0.1/test-vectors/request-signing/canonicalization.json +241 -0
  442. package/compliance/cache/3.0.1/test-vectors/request-signing/keys.json +60 -0
  443. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/001-no-signature-header.json +24 -0
  444. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/002-wrong-tag.json +26 -0
  445. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/003-expired-signature.json +26 -0
  446. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/004-window-too-long.json +26 -0
  447. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/005-alg-not-allowed.json +26 -0
  448. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/006-missing-covered-component.json +26 -0
  449. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/007-missing-content-digest.json +26 -0
  450. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/008-unknown-keyid.json +26 -0
  451. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/009-key-ops-missing-verify.json +27 -0
  452. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/010-content-digest-mismatch.json +33 -0
  453. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/011-malformed-header.json +27 -0
  454. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/012-missing-expires-param.json +26 -0
  455. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/013-expires-le-created.json +27 -0
  456. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/014-missing-nonce-param.json +27 -0
  457. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/015-signature-invalid.json +28 -0
  458. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/016-replayed-nonce.json +35 -0
  459. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/017-key-revoked.json +38 -0
  460. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/018-digest-covered-when-forbidden.json +28 -0
  461. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/019-signature-without-signature-input.json +26 -0
  462. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/020-rate-abuse.json +34 -0
  463. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/021-duplicate-signature-input-label.json +31 -0
  464. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/022-multi-valued-content-type.json +31 -0
  465. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/023-multi-valued-content-digest.json +32 -0
  466. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/024-unquoted-string-param.json +31 -0
  467. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/025-jwk-alg-crv-mismatch.json +43 -0
  468. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/026-non-ascii-host.json +31 -0
  469. package/compliance/cache/3.0.1/test-vectors/request-signing/negative/027-webhook-registration-authentication-unsigned.json +25 -0
  470. package/compliance/cache/3.0.1/test-vectors/request-signing/positive/001-basic-post.json +30 -0
  471. package/compliance/cache/3.0.1/test-vectors/request-signing/positive/002-post-with-content-digest.json +31 -0
  472. package/compliance/cache/3.0.1/test-vectors/request-signing/positive/003-es256-post.json +30 -0
  473. package/compliance/cache/3.0.1/test-vectors/request-signing/positive/004-multiple-signature-labels.json +26 -0
  474. package/compliance/cache/3.0.1/test-vectors/request-signing/positive/005-default-port-stripped.json +30 -0
  475. package/compliance/cache/3.0.1/test-vectors/request-signing/positive/006-dot-segment-path.json +30 -0
  476. package/compliance/cache/3.0.1/test-vectors/request-signing/positive/007-query-byte-preserved.json +30 -0
  477. package/compliance/cache/3.0.1/test-vectors/request-signing/positive/008-percent-encoded-path.json +30 -0
  478. package/compliance/cache/3.0.1/test-vectors/request-signing/positive/009-percent-encoded-unreserved-decoded.json +30 -0
  479. package/compliance/cache/3.0.1/test-vectors/request-signing/positive/010-percent-encoded-slash-preserved.json +30 -0
  480. package/compliance/cache/3.0.1/test-vectors/request-signing/positive/011-ipv6-authority.json +30 -0
  481. package/compliance/cache/3.0.1/test-vectors/request-signing/positive/012-ipv6-authority-default-port-stripped.json +30 -0
  482. package/compliance/cache/3.0.1/test-vectors/webhook-signing/README.md +211 -0
  483. package/compliance/cache/3.0.1/test-vectors/webhook-signing/keys.json +61 -0
  484. package/compliance/cache/3.0.1/test-vectors/webhook-signing/negative/001-wrong-tag.json +26 -0
  485. package/compliance/cache/3.0.1/test-vectors/webhook-signing/negative/002-expired-signature.json +26 -0
  486. package/compliance/cache/3.0.1/test-vectors/webhook-signing/negative/003-window-too-long.json +26 -0
  487. package/compliance/cache/3.0.1/test-vectors/webhook-signing/negative/004-alg-not-allowed.json +26 -0
  488. package/compliance/cache/3.0.1/test-vectors/webhook-signing/negative/005-missing-authority-component.json +26 -0
  489. package/compliance/cache/3.0.1/test-vectors/webhook-signing/negative/006-missing-content-digest.json +25 -0
  490. package/compliance/cache/3.0.1/test-vectors/webhook-signing/negative/007-unknown-keyid.json +26 -0
  491. package/compliance/cache/3.0.1/test-vectors/webhook-signing/negative/008-wrong-adcp-use.json +26 -0
  492. package/compliance/cache/3.0.1/test-vectors/webhook-signing/negative/009-content-digest-mismatch.json +26 -0
  493. package/compliance/cache/3.0.1/test-vectors/webhook-signing/negative/010-malformed-signature-input.json +26 -0
  494. package/compliance/cache/3.0.1/test-vectors/webhook-signing/negative/011-signature-without-input.json +25 -0
  495. package/compliance/cache/3.0.1/test-vectors/webhook-signing/negative/012-missing-expires-param.json +26 -0
  496. package/compliance/cache/3.0.1/test-vectors/webhook-signing/negative/013-expires-le-created.json +26 -0
  497. package/compliance/cache/3.0.1/test-vectors/webhook-signing/negative/014-missing-nonce-param.json +26 -0
  498. package/compliance/cache/3.0.1/test-vectors/webhook-signing/negative/015-signature-invalid.json +26 -0
  499. package/compliance/cache/3.0.1/test-vectors/webhook-signing/negative/016-replayed-nonce.json +37 -0
  500. package/compliance/cache/3.0.1/test-vectors/webhook-signing/negative/017-key-revoked.json +32 -0
  501. package/compliance/cache/3.0.1/test-vectors/webhook-signing/negative/018-rate-abuse.json +33 -0
  502. package/compliance/cache/3.0.1/test-vectors/webhook-signing/negative/019-revocation-stale.json +32 -0
  503. package/compliance/cache/3.0.1/test-vectors/webhook-signing/negative/020-key-ops-missing-verify.json +41 -0
  504. package/compliance/cache/3.0.1/test-vectors/webhook-signing/negative/021-base64-alphabet-mixing.json +26 -0
  505. package/compliance/cache/3.0.1/test-vectors/webhook-signing/positive/001-basic-post.json +24 -0
  506. package/compliance/cache/3.0.1/test-vectors/webhook-signing/positive/002-es256-post.json +24 -0
  507. package/compliance/cache/3.0.1/test-vectors/webhook-signing/positive/003-multiple-signature-labels.json +24 -0
  508. package/compliance/cache/3.0.1/test-vectors/webhook-signing/positive/004-default-port-stripped.json +24 -0
  509. package/compliance/cache/3.0.1/test-vectors/webhook-signing/positive/005-percent-encoded-path.json +24 -0
  510. package/compliance/cache/3.0.1/test-vectors/webhook-signing/positive/006-query-byte-preserved.json +24 -0
  511. package/compliance/cache/3.0.1/test-vectors/webhook-signing/positive/007-body-without-idempotency-key.json +25 -0
  512. package/compliance/cache/3.0.1/universal/capability-discovery.yaml +125 -0
  513. package/compliance/cache/3.0.1/universal/collection-lists-pagination-integrity.yaml +306 -0
  514. package/compliance/cache/3.0.1/universal/content-standards-pagination-integrity.yaml +326 -0
  515. package/compliance/cache/3.0.1/universal/deterministic-testing.yaml +1343 -0
  516. package/compliance/cache/3.0.1/universal/error-compliance.yaml +474 -0
  517. package/compliance/cache/3.0.1/universal/fictional-entities.yaml +307 -0
  518. package/compliance/cache/3.0.1/universal/get-media-buys-pagination-integrity.yaml +160 -0
  519. package/compliance/cache/3.0.1/universal/get-signals-pagination-integrity.yaml +211 -0
  520. package/compliance/cache/3.0.1/universal/idempotency.yaml +593 -0
  521. package/compliance/cache/3.0.1/universal/pagination-integrity-creative-formats.yaml +258 -0
  522. package/compliance/cache/3.0.1/universal/pagination-integrity-list-accounts.yaml +262 -0
  523. package/compliance/cache/3.0.1/universal/pagination-integrity.yaml +263 -0
  524. package/compliance/cache/3.0.1/universal/property-lists-pagination-integrity.yaml +307 -0
  525. package/compliance/cache/3.0.1/universal/runner-output-contract.yaml +339 -0
  526. package/compliance/cache/3.0.1/universal/schema-validation.yaml +526 -0
  527. package/compliance/cache/3.0.1/universal/security.yaml +431 -0
  528. package/compliance/cache/3.0.1/universal/signed-requests.yaml +205 -0
  529. package/compliance/cache/3.0.1/universal/storyboard-schema.yaml +1056 -0
  530. package/compliance/cache/3.0.1/universal/v3-envelope-integrity.yaml +104 -0
  531. package/compliance/cache/3.0.1/universal/webhook-emission.yaml +337 -0
  532. package/compliance/cache/3.0.1.previous/domains/brand/index.yaml +163 -0
  533. package/compliance/cache/3.0.1.previous/domains/creative/index.yaml +412 -0
  534. package/compliance/cache/3.0.1.previous/domains/governance/index.yaml +683 -0
  535. package/compliance/cache/3.0.1.previous/domains/media-buy/creative-reception.yaml +247 -0
  536. package/compliance/cache/3.0.1.previous/domains/media-buy/index.yaml +769 -0
  537. package/compliance/cache/3.0.1.previous/domains/media-buy/scenarios/create_media_buy_async.yaml +232 -0
  538. package/compliance/cache/3.0.1.previous/domains/media-buy/scenarios/creative_fate_after_cancellation.yaml +414 -0
  539. package/compliance/cache/3.0.1.previous/domains/media-buy/scenarios/delivery_reporting.yaml +205 -0
  540. package/compliance/cache/3.0.1.previous/domains/media-buy/scenarios/governance_approved.yaml +211 -0
  541. package/compliance/cache/3.0.1.previous/domains/media-buy/scenarios/governance_conditions.yaml +196 -0
  542. package/compliance/cache/3.0.1.previous/domains/media-buy/scenarios/governance_denied.yaml +192 -0
  543. package/compliance/cache/3.0.1.previous/domains/media-buy/scenarios/governance_denied_recovery.yaml +244 -0
  544. package/compliance/cache/3.0.1.previous/domains/media-buy/scenarios/invalid_transitions.yaml +284 -0
  545. package/compliance/cache/3.0.1.previous/domains/media-buy/scenarios/inventory_list_no_match.yaml +143 -0
  546. package/compliance/cache/3.0.1.previous/domains/media-buy/scenarios/inventory_list_targeting.yaml +266 -0
  547. package/compliance/cache/3.0.1.previous/domains/media-buy/scenarios/measurement_terms_rejected.yaml +195 -0
  548. package/compliance/cache/3.0.1.previous/domains/media-buy/scenarios/pending_creatives_to_start.yaml +250 -0
  549. package/compliance/cache/3.0.1.previous/domains/media-buy/scenarios/proposal_finalize.yaml +243 -0
  550. package/compliance/cache/3.0.1.previous/domains/media-buy/scenarios/refine_products.yaml +148 -0
  551. package/compliance/cache/3.0.1.previous/domains/media-buy/state-machine.yaml +442 -0
  552. package/compliance/cache/3.0.1.previous/domains/signals/index.yaml +266 -0
  553. package/compliance/cache/3.0.1.previous/domains/sponsored-intelligence/index.yaml +256 -0
  554. package/compliance/cache/3.0.1.previous/index.json +324 -0
  555. package/compliance/cache/3.0.1.previous/protocols/brand/index.yaml +163 -0
  556. package/compliance/cache/3.0.1.previous/protocols/creative/index.yaml +412 -0
  557. package/compliance/cache/3.0.1.previous/protocols/governance/index.yaml +683 -0
  558. package/compliance/cache/3.0.1.previous/protocols/media-buy/creative-reception.yaml +247 -0
  559. package/compliance/cache/3.0.1.previous/protocols/media-buy/index.yaml +769 -0
  560. package/compliance/cache/3.0.1.previous/protocols/media-buy/scenarios/create_media_buy_async.yaml +232 -0
  561. package/compliance/cache/3.0.1.previous/protocols/media-buy/scenarios/creative_fate_after_cancellation.yaml +414 -0
  562. package/compliance/cache/3.0.1.previous/protocols/media-buy/scenarios/delivery_reporting.yaml +205 -0
  563. package/compliance/cache/3.0.1.previous/protocols/media-buy/scenarios/governance_approved.yaml +211 -0
  564. package/compliance/cache/3.0.1.previous/protocols/media-buy/scenarios/governance_conditions.yaml +196 -0
  565. package/compliance/cache/3.0.1.previous/protocols/media-buy/scenarios/governance_denied.yaml +192 -0
  566. package/compliance/cache/3.0.1.previous/protocols/media-buy/scenarios/governance_denied_recovery.yaml +244 -0
  567. package/compliance/cache/3.0.1.previous/protocols/media-buy/scenarios/invalid_transitions.yaml +284 -0
  568. package/compliance/cache/3.0.1.previous/protocols/media-buy/scenarios/inventory_list_no_match.yaml +143 -0
  569. package/compliance/cache/3.0.1.previous/protocols/media-buy/scenarios/inventory_list_targeting.yaml +266 -0
  570. package/compliance/cache/3.0.1.previous/protocols/media-buy/scenarios/measurement_terms_rejected.yaml +195 -0
  571. package/compliance/cache/3.0.1.previous/protocols/media-buy/scenarios/pending_creatives_to_start.yaml +250 -0
  572. package/compliance/cache/3.0.1.previous/protocols/media-buy/scenarios/proposal_finalize.yaml +243 -0
  573. package/compliance/cache/3.0.1.previous/protocols/media-buy/scenarios/refine_products.yaml +148 -0
  574. package/compliance/cache/3.0.1.previous/protocols/media-buy/state-machine.yaml +442 -0
  575. package/compliance/cache/3.0.1.previous/protocols/signals/index.yaml +266 -0
  576. package/compliance/cache/3.0.1.previous/protocols/sponsored-intelligence/index.yaml +256 -0
  577. package/compliance/cache/3.0.1.previous/specialisms/audience-sync/index.yaml +280 -0
  578. package/compliance/cache/3.0.1.previous/specialisms/brand-rights/index.yaml +350 -0
  579. package/compliance/cache/3.0.1.previous/specialisms/brand-rights/scenarios/governance_denied.yaml +204 -0
  580. package/compliance/cache/3.0.1.previous/specialisms/collection-lists/index.yaml +359 -0
  581. package/compliance/cache/3.0.1.previous/specialisms/content-standards/index.yaml +572 -0
  582. package/compliance/cache/3.0.1.previous/specialisms/creative-ad-server/index.yaml +383 -0
  583. package/compliance/cache/3.0.1.previous/specialisms/creative-generative/generative-seller.yaml +758 -0
  584. package/compliance/cache/3.0.1.previous/specialisms/creative-generative/index.yaml +746 -0
  585. package/compliance/cache/3.0.1.previous/specialisms/creative-template/index.yaml +413 -0
  586. package/compliance/cache/3.0.1.previous/specialisms/governance-aware-seller/index.yaml +136 -0
  587. package/compliance/cache/3.0.1.previous/specialisms/governance-delivery-monitor/index.yaml +441 -0
  588. package/compliance/cache/3.0.1.previous/specialisms/governance-spend-authority/denied.yaml +221 -0
  589. package/compliance/cache/3.0.1.previous/specialisms/governance-spend-authority/index.yaml +330 -0
  590. package/compliance/cache/3.0.1.previous/specialisms/property-lists/index.yaml +482 -0
  591. package/compliance/cache/3.0.1.previous/specialisms/sales-broadcast-tv/index.yaml +689 -0
  592. package/compliance/cache/3.0.1.previous/specialisms/sales-catalog-driven/index.yaml +779 -0
  593. package/compliance/cache/3.0.1.previous/specialisms/sales-guaranteed/index.yaml +504 -0
  594. package/compliance/cache/3.0.1.previous/specialisms/sales-non-guaranteed/index.yaml +428 -0
  595. package/compliance/cache/3.0.1.previous/specialisms/sales-proposal-mode/index.yaml +520 -0
  596. package/compliance/cache/3.0.1.previous/specialisms/sales-social/index.yaml +577 -0
  597. package/compliance/cache/3.0.1.previous/specialisms/signal-marketplace/index.yaml +415 -0
  598. package/compliance/cache/3.0.1.previous/specialisms/signal-marketplace/scenarios/governance_denied.yaml +207 -0
  599. package/compliance/cache/3.0.1.previous/specialisms/signal-owned/index.yaml +316 -0
  600. package/compliance/cache/3.0.1.previous/test-kits/acme-outdoor.yaml +210 -0
  601. package/compliance/cache/3.0.1.previous/test-kits/bistro-oranje.yaml +126 -0
  602. package/compliance/cache/3.0.1.previous/test-kits/nova-motors.yaml +262 -0
  603. package/compliance/cache/3.0.1.previous/test-kits/osei-natural.yaml +126 -0
  604. package/compliance/cache/3.0.1.previous/test-kits/signed-requests-runner.yaml +155 -0
  605. package/compliance/cache/3.0.1.previous/test-kits/substitution-observer-runner.yaml +690 -0
  606. package/compliance/cache/3.0.1.previous/test-kits/summit-foods.yaml +125 -0
  607. package/compliance/cache/3.0.1.previous/test-kits/webhook-receiver-runner.yaml +265 -0
  608. package/compliance/cache/3.0.1.previous/test-vectors/plan-hash/001-minimal-plan.json +43 -0
  609. package/compliance/cache/3.0.1.previous/test-vectors/plan-hash/002-full-plan.json +217 -0
  610. package/compliance/cache/3.0.1.previous/test-vectors/plan-hash/003-bookkeeping-stripped.json +60 -0
  611. package/compliance/cache/3.0.1.previous/test-vectors/plan-hash/004a-human-review-omitted.json +43 -0
  612. package/compliance/cache/3.0.1.previous/test-vectors/plan-hash/004b-human-review-explicit-null.json +49 -0
  613. package/compliance/cache/3.0.1.previous/test-vectors/plan-hash/005a-policy-categories-order-1.json +53 -0
  614. package/compliance/cache/3.0.1.previous/test-vectors/plan-hash/005b-policy-categories-order-2.json +57 -0
  615. package/compliance/cache/3.0.1.previous/test-vectors/plan-hash/006a-ext-trace-v1.json +49 -0
  616. package/compliance/cache/3.0.1.previous/test-vectors/plan-hash/006b-ext-trace-v2.json +53 -0
  617. package/compliance/cache/3.0.1.previous/test-vectors/plan-hash/007-unicode-objectives.json +43 -0
  618. package/compliance/cache/3.0.1.previous/test-vectors/plan-hash/008-numeric-canonicalization.json +65 -0
  619. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/README.md +219 -0
  620. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/canonicalization.json +241 -0
  621. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/keys.json +60 -0
  622. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/001-no-signature-header.json +24 -0
  623. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/002-wrong-tag.json +26 -0
  624. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/003-expired-signature.json +26 -0
  625. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/004-window-too-long.json +26 -0
  626. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/005-alg-not-allowed.json +26 -0
  627. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/006-missing-covered-component.json +26 -0
  628. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/007-missing-content-digest.json +26 -0
  629. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/008-unknown-keyid.json +26 -0
  630. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/009-key-ops-missing-verify.json +27 -0
  631. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/010-content-digest-mismatch.json +33 -0
  632. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/011-malformed-header.json +27 -0
  633. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/012-missing-expires-param.json +26 -0
  634. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/013-expires-le-created.json +27 -0
  635. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/014-missing-nonce-param.json +27 -0
  636. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/015-signature-invalid.json +28 -0
  637. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/016-replayed-nonce.json +35 -0
  638. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/017-key-revoked.json +38 -0
  639. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/018-digest-covered-when-forbidden.json +28 -0
  640. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/019-signature-without-signature-input.json +26 -0
  641. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/020-rate-abuse.json +34 -0
  642. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/021-duplicate-signature-input-label.json +31 -0
  643. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/022-multi-valued-content-type.json +31 -0
  644. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/023-multi-valued-content-digest.json +32 -0
  645. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/024-unquoted-string-param.json +31 -0
  646. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/025-jwk-alg-crv-mismatch.json +43 -0
  647. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/026-non-ascii-host.json +31 -0
  648. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/negative/027-webhook-registration-authentication-unsigned.json +25 -0
  649. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/positive/001-basic-post.json +30 -0
  650. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/positive/002-post-with-content-digest.json +31 -0
  651. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/positive/003-es256-post.json +30 -0
  652. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/positive/004-multiple-signature-labels.json +26 -0
  653. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/positive/005-default-port-stripped.json +30 -0
  654. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/positive/006-dot-segment-path.json +30 -0
  655. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/positive/007-query-byte-preserved.json +30 -0
  656. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/positive/008-percent-encoded-path.json +30 -0
  657. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/positive/009-percent-encoded-unreserved-decoded.json +30 -0
  658. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/positive/010-percent-encoded-slash-preserved.json +30 -0
  659. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/positive/011-ipv6-authority.json +30 -0
  660. package/compliance/cache/3.0.1.previous/test-vectors/request-signing/positive/012-ipv6-authority-default-port-stripped.json +30 -0
  661. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/README.md +211 -0
  662. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/keys.json +61 -0
  663. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/negative/001-wrong-tag.json +26 -0
  664. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/negative/002-expired-signature.json +26 -0
  665. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/negative/003-window-too-long.json +26 -0
  666. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/negative/004-alg-not-allowed.json +26 -0
  667. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/negative/005-missing-authority-component.json +26 -0
  668. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/negative/006-missing-content-digest.json +25 -0
  669. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/negative/007-unknown-keyid.json +26 -0
  670. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/negative/008-wrong-adcp-use.json +26 -0
  671. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/negative/009-content-digest-mismatch.json +26 -0
  672. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/negative/010-malformed-signature-input.json +26 -0
  673. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/negative/011-signature-without-input.json +25 -0
  674. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/negative/012-missing-expires-param.json +26 -0
  675. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/negative/013-expires-le-created.json +26 -0
  676. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/negative/014-missing-nonce-param.json +26 -0
  677. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/negative/015-signature-invalid.json +26 -0
  678. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/negative/016-replayed-nonce.json +37 -0
  679. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/negative/017-key-revoked.json +32 -0
  680. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/negative/018-rate-abuse.json +33 -0
  681. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/negative/019-revocation-stale.json +32 -0
  682. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/negative/020-key-ops-missing-verify.json +41 -0
  683. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/negative/021-base64-alphabet-mixing.json +26 -0
  684. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/positive/001-basic-post.json +24 -0
  685. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/positive/002-es256-post.json +24 -0
  686. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/positive/003-multiple-signature-labels.json +24 -0
  687. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/positive/004-default-port-stripped.json +24 -0
  688. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/positive/005-percent-encoded-path.json +24 -0
  689. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/positive/006-query-byte-preserved.json +24 -0
  690. package/compliance/cache/3.0.1.previous/test-vectors/webhook-signing/positive/007-body-without-idempotency-key.json +25 -0
  691. package/compliance/cache/3.0.1.previous/universal/capability-discovery.yaml +125 -0
  692. package/compliance/cache/3.0.1.previous/universal/collection-lists-pagination-integrity.yaml +306 -0
  693. package/compliance/cache/3.0.1.previous/universal/content-standards-pagination-integrity.yaml +326 -0
  694. package/compliance/cache/3.0.1.previous/universal/deterministic-testing.yaml +1343 -0
  695. package/compliance/cache/3.0.1.previous/universal/error-compliance.yaml +474 -0
  696. package/compliance/cache/3.0.1.previous/universal/fictional-entities.yaml +307 -0
  697. package/compliance/cache/3.0.1.previous/universal/get-media-buys-pagination-integrity.yaml +160 -0
  698. package/compliance/cache/3.0.1.previous/universal/get-signals-pagination-integrity.yaml +211 -0
  699. package/compliance/cache/3.0.1.previous/universal/idempotency.yaml +593 -0
  700. package/compliance/cache/3.0.1.previous/universal/pagination-integrity-creative-formats.yaml +258 -0
  701. package/compliance/cache/3.0.1.previous/universal/pagination-integrity-list-accounts.yaml +262 -0
  702. package/compliance/cache/3.0.1.previous/universal/pagination-integrity.yaml +263 -0
  703. package/compliance/cache/3.0.1.previous/universal/property-lists-pagination-integrity.yaml +307 -0
  704. package/compliance/cache/3.0.1.previous/universal/runner-output-contract.yaml +339 -0
  705. package/compliance/cache/3.0.1.previous/universal/schema-validation.yaml +526 -0
  706. package/compliance/cache/3.0.1.previous/universal/security.yaml +431 -0
  707. package/compliance/cache/3.0.1.previous/universal/signed-requests.yaml +205 -0
  708. package/compliance/cache/3.0.1.previous/universal/storyboard-schema.yaml +1056 -0
  709. package/compliance/cache/3.0.1.previous/universal/v3-envelope-integrity.yaml +104 -0
  710. package/compliance/cache/3.0.1.previous/universal/webhook-emission.yaml +337 -0
  711. package/dist/lib/adapters/content-standards-adapter.d.ts +106 -0
  712. package/dist/lib/adapters/content-standards-adapter.d.ts.map +1 -0
  713. package/dist/lib/adapters/content-standards-adapter.js +201 -0
  714. package/dist/lib/adapters/content-standards-adapter.js.map +1 -0
  715. package/dist/lib/adapters/governance-adapter.d.ts +88 -0
  716. package/dist/lib/adapters/governance-adapter.d.ts.map +1 -0
  717. package/dist/lib/adapters/governance-adapter.js +93 -0
  718. package/dist/lib/adapters/governance-adapter.js.map +1 -0
  719. package/dist/lib/adapters/index.d.ts +19 -0
  720. package/dist/lib/adapters/index.d.ts.map +1 -0
  721. package/dist/lib/adapters/index.js +47 -0
  722. package/dist/lib/adapters/index.js.map +1 -0
  723. package/dist/lib/adapters/property-list-adapter.d.ts +123 -0
  724. package/dist/lib/adapters/property-list-adapter.d.ts.map +1 -0
  725. package/dist/lib/adapters/property-list-adapter.js +231 -0
  726. package/dist/lib/adapters/property-list-adapter.js.map +1 -0
  727. package/dist/lib/adapters/proposal-manager.d.ts +142 -0
  728. package/dist/lib/adapters/proposal-manager.d.ts.map +1 -0
  729. package/dist/lib/adapters/proposal-manager.js +184 -0
  730. package/dist/lib/adapters/proposal-manager.js.map +1 -0
  731. package/dist/lib/adapters/si-session-manager.d.ts +164 -0
  732. package/dist/lib/adapters/si-session-manager.d.ts.map +1 -0
  733. package/dist/lib/adapters/si-session-manager.js +330 -0
  734. package/dist/lib/adapters/si-session-manager.js.map +1 -0
  735. package/dist/lib/advanced.d.ts +41 -0
  736. package/dist/lib/advanced.d.ts.map +1 -0
  737. package/dist/lib/advanced.js +49 -0
  738. package/dist/lib/advanced.js.map +1 -0
  739. package/dist/lib/agents/index.generated.d.ts +397 -0
  740. package/dist/lib/agents/index.generated.d.ts.map +1 -0
  741. package/dist/lib/agents/index.generated.js +624 -0
  742. package/dist/lib/agents/index.generated.js.map +1 -0
  743. package/dist/lib/auth/index.d.ts +39 -0
  744. package/dist/lib/auth/index.d.ts.map +1 -0
  745. package/dist/lib/auth/index.js +100 -0
  746. package/dist/lib/auth/index.js.map +1 -0
  747. package/dist/lib/auth/oauth/CLIFlowHandler.d.ts +61 -0
  748. package/dist/lib/auth/oauth/CLIFlowHandler.d.ts.map +1 -0
  749. package/dist/lib/auth/oauth/CLIFlowHandler.js +287 -0
  750. package/dist/lib/auth/oauth/CLIFlowHandler.js.map +1 -0
  751. package/dist/lib/auth/oauth/ClientCredentialsFlow.d.ts +134 -0
  752. package/dist/lib/auth/oauth/ClientCredentialsFlow.d.ts.map +1 -0
  753. package/dist/lib/auth/oauth/ClientCredentialsFlow.js +325 -0
  754. package/dist/lib/auth/oauth/ClientCredentialsFlow.js.map +1 -0
  755. package/dist/lib/auth/oauth/MCPOAuthProvider.d.ts +136 -0
  756. package/dist/lib/auth/oauth/MCPOAuthProvider.d.ts.map +1 -0
  757. package/dist/lib/auth/oauth/MCPOAuthProvider.js +255 -0
  758. package/dist/lib/auth/oauth/MCPOAuthProvider.js.map +1 -0
  759. package/dist/lib/auth/oauth/NonInteractiveFlowHandler.d.ts +37 -0
  760. package/dist/lib/auth/oauth/NonInteractiveFlowHandler.d.ts.map +1 -0
  761. package/dist/lib/auth/oauth/NonInteractiveFlowHandler.js +30 -0
  762. package/dist/lib/auth/oauth/NonInteractiveFlowHandler.js.map +1 -0
  763. package/dist/lib/auth/oauth/authorization-required.d.ts +112 -0
  764. package/dist/lib/auth/oauth/authorization-required.d.ts.map +1 -0
  765. package/dist/lib/auth/oauth/authorization-required.js +363 -0
  766. package/dist/lib/auth/oauth/authorization-required.js.map +1 -0
  767. package/dist/lib/auth/oauth/diagnose.d.ts +101 -0
  768. package/dist/lib/auth/oauth/diagnose.d.ts.map +1 -0
  769. package/dist/lib/auth/oauth/diagnose.js +630 -0
  770. package/dist/lib/auth/oauth/diagnose.js.map +1 -0
  771. package/dist/lib/auth/oauth/diagnostics.d.ts +129 -0
  772. package/dist/lib/auth/oauth/diagnostics.d.ts.map +1 -0
  773. package/dist/lib/auth/oauth/diagnostics.js +207 -0
  774. package/dist/lib/auth/oauth/diagnostics.js.map +1 -0
  775. package/dist/lib/auth/oauth/discovery.d.ts +96 -0
  776. package/dist/lib/auth/oauth/discovery.d.ts.map +1 -0
  777. package/dist/lib/auth/oauth/discovery.js +119 -0
  778. package/dist/lib/auth/oauth/discovery.js.map +1 -0
  779. package/dist/lib/auth/oauth/file-storage.d.ts +40 -0
  780. package/dist/lib/auth/oauth/file-storage.d.ts.map +1 -0
  781. package/dist/lib/auth/oauth/file-storage.js +112 -0
  782. package/dist/lib/auth/oauth/file-storage.js.map +1 -0
  783. package/dist/lib/auth/oauth/index.d.ts +133 -0
  784. package/dist/lib/auth/oauth/index.d.ts.map +1 -0
  785. package/dist/lib/auth/oauth/index.js +246 -0
  786. package/dist/lib/auth/oauth/index.js.map +1 -0
  787. package/dist/lib/auth/oauth/secret-resolver.d.ts +54 -0
  788. package/dist/lib/auth/oauth/secret-resolver.d.ts.map +1 -0
  789. package/dist/lib/auth/oauth/secret-resolver.js +96 -0
  790. package/dist/lib/auth/oauth/secret-resolver.js.map +1 -0
  791. package/dist/lib/auth/oauth/storage-registry.d.ts +44 -0
  792. package/dist/lib/auth/oauth/storage-registry.d.ts.map +1 -0
  793. package/dist/lib/auth/oauth/storage-registry.js +33 -0
  794. package/dist/lib/auth/oauth/storage-registry.js.map +1 -0
  795. package/dist/lib/auth/oauth/types.d.ts +114 -0
  796. package/dist/lib/auth/oauth/types.d.ts.map +1 -0
  797. package/dist/lib/auth/oauth/types.js +104 -0
  798. package/dist/lib/auth/oauth/types.js.map +1 -0
  799. package/dist/lib/client/index.d.ts +2 -0
  800. package/dist/lib/client/index.d.ts.map +1 -0
  801. package/dist/lib/client/index.js +26 -0
  802. package/dist/lib/client/index.js.map +1 -0
  803. package/dist/lib/compliance/index.d.ts +5 -0
  804. package/dist/lib/compliance/index.d.ts.map +1 -0
  805. package/dist/lib/compliance/index.js +52 -0
  806. package/dist/lib/compliance/index.js.map +1 -0
  807. package/dist/lib/compliance-fixtures/index.d.ts +167 -0
  808. package/dist/lib/compliance-fixtures/index.d.ts.map +1 -0
  809. package/dist/lib/compliance-fixtures/index.js +218 -0
  810. package/dist/lib/compliance-fixtures/index.js.map +1 -0
  811. package/dist/lib/compliance-fixtures/test-authorization-server.d.ts +88 -0
  812. package/dist/lib/compliance-fixtures/test-authorization-server.d.ts.map +1 -0
  813. package/dist/lib/compliance-fixtures/test-authorization-server.js +252 -0
  814. package/dist/lib/compliance-fixtures/test-authorization-server.js.map +1 -0
  815. package/dist/lib/conformance/index.d.ts +26 -0
  816. package/dist/lib/conformance/index.d.ts.map +1 -0
  817. package/dist/lib/conformance/index.js +34 -0
  818. package/dist/lib/conformance/index.js.map +1 -0
  819. package/dist/lib/conformance/invariants/uniformError.d.ts +45 -0
  820. package/dist/lib/conformance/invariants/uniformError.d.ts.map +1 -0
  821. package/dist/lib/conformance/invariants/uniformError.js +179 -0
  822. package/dist/lib/conformance/invariants/uniformError.js.map +1 -0
  823. package/dist/lib/conformance/invariants/uniformErrorComparator.d.ts +8 -0
  824. package/dist/lib/conformance/invariants/uniformErrorComparator.d.ts.map +1 -0
  825. package/dist/lib/conformance/invariants/uniformErrorComparator.js +488 -0
  826. package/dist/lib/conformance/invariants/uniformErrorComparator.js.map +1 -0
  827. package/dist/lib/conformance/oracle.d.ts +36 -0
  828. package/dist/lib/conformance/oracle.d.ts.map +1 -0
  829. package/dist/lib/conformance/oracle.js +267 -0
  830. package/dist/lib/conformance/oracle.js.map +1 -0
  831. package/dist/lib/conformance/runConformance.d.ts +17 -0
  832. package/dist/lib/conformance/runConformance.d.ts.map +1 -0
  833. package/dist/lib/conformance/runConformance.js +174 -0
  834. package/dist/lib/conformance/runConformance.js.map +1 -0
  835. package/dist/lib/conformance/runners.d.ts +27 -0
  836. package/dist/lib/conformance/runners.d.ts.map +1 -0
  837. package/dist/lib/conformance/runners.js +159 -0
  838. package/dist/lib/conformance/runners.js.map +1 -0
  839. package/dist/lib/conformance/schemaArbitrary.d.ts +39 -0
  840. package/dist/lib/conformance/schemaArbitrary.d.ts.map +1 -0
  841. package/dist/lib/conformance/schemaArbitrary.js +382 -0
  842. package/dist/lib/conformance/schemaArbitrary.js.map +1 -0
  843. package/dist/lib/conformance/schemaLoader.d.ts +12 -0
  844. package/dist/lib/conformance/schemaLoader.d.ts.map +1 -0
  845. package/dist/lib/conformance/schemaLoader.js +122 -0
  846. package/dist/lib/conformance/schemaLoader.js.map +1 -0
  847. package/dist/lib/conformance/seeder.d.ts +51 -0
  848. package/dist/lib/conformance/seeder.d.ts.map +1 -0
  849. package/dist/lib/conformance/seeder.js +341 -0
  850. package/dist/lib/conformance/seeder.js.map +1 -0
  851. package/dist/lib/conformance/types.d.ts +201 -0
  852. package/dist/lib/conformance/types.d.ts.map +1 -0
  853. package/dist/lib/conformance/types.js +56 -0
  854. package/dist/lib/conformance/types.js.map +1 -0
  855. package/dist/lib/core/ADCPMultiAgentClient.d.ts +624 -0
  856. package/dist/lib/core/ADCPMultiAgentClient.d.ts.map +1 -0
  857. package/dist/lib/core/ADCPMultiAgentClient.js +908 -0
  858. package/dist/lib/core/ADCPMultiAgentClient.js.map +1 -0
  859. package/dist/lib/core/AgentClient.d.ts +517 -0
  860. package/dist/lib/core/AgentClient.d.ts.map +1 -0
  861. package/dist/lib/core/AgentClient.js +784 -0
  862. package/dist/lib/core/AgentClient.js.map +1 -0
  863. package/dist/lib/core/AsyncHandler.d.ts +210 -0
  864. package/dist/lib/core/AsyncHandler.d.ts.map +1 -0
  865. package/dist/lib/core/AsyncHandler.js +182 -0
  866. package/dist/lib/core/AsyncHandler.js.map +1 -0
  867. package/dist/lib/core/ConfigurationManager.d.ts +79 -0
  868. package/dist/lib/core/ConfigurationManager.d.ts.map +1 -0
  869. package/dist/lib/core/ConfigurationManager.js +249 -0
  870. package/dist/lib/core/ConfigurationManager.js.map +1 -0
  871. package/dist/lib/core/ConversationTypes.d.ts +422 -0
  872. package/dist/lib/core/ConversationTypes.d.ts.map +1 -0
  873. package/dist/lib/core/ConversationTypes.js +5 -0
  874. package/dist/lib/core/ConversationTypes.js.map +1 -0
  875. package/dist/lib/core/CreativeAgentClient.d.ts +144 -0
  876. package/dist/lib/core/CreativeAgentClient.d.ts.map +1 -0
  877. package/dist/lib/core/CreativeAgentClient.js +169 -0
  878. package/dist/lib/core/CreativeAgentClient.js.map +1 -0
  879. package/dist/lib/core/GovernanceMiddleware.d.ts +93 -0
  880. package/dist/lib/core/GovernanceMiddleware.d.ts.map +1 -0
  881. package/dist/lib/core/GovernanceMiddleware.js +306 -0
  882. package/dist/lib/core/GovernanceMiddleware.js.map +1 -0
  883. package/dist/lib/core/GovernanceTypes.d.ts +116 -0
  884. package/dist/lib/core/GovernanceTypes.d.ts.map +1 -0
  885. package/dist/lib/core/GovernanceTypes.js +60 -0
  886. package/dist/lib/core/GovernanceTypes.js.map +1 -0
  887. package/dist/lib/core/ProtocolResponseParser.d.ts +80 -0
  888. package/dist/lib/core/ProtocolResponseParser.d.ts.map +1 -0
  889. package/dist/lib/core/ProtocolResponseParser.js +367 -0
  890. package/dist/lib/core/ProtocolResponseParser.js.map +1 -0
  891. package/dist/lib/core/ResponseValidator.d.ts +68 -0
  892. package/dist/lib/core/ResponseValidator.d.ts.map +1 -0
  893. package/dist/lib/core/ResponseValidator.js +283 -0
  894. package/dist/lib/core/ResponseValidator.js.map +1 -0
  895. package/dist/lib/core/SingleAgentClient.d.ts +1065 -0
  896. package/dist/lib/core/SingleAgentClient.d.ts.map +1 -0
  897. package/dist/lib/core/SingleAgentClient.js +2134 -0
  898. package/dist/lib/core/SingleAgentClient.js.map +1 -0
  899. package/dist/lib/core/TaskEventTypes.d.ts +220 -0
  900. package/dist/lib/core/TaskEventTypes.d.ts.map +1 -0
  901. package/dist/lib/core/TaskEventTypes.js +80 -0
  902. package/dist/lib/core/TaskEventTypes.js.map +1 -0
  903. package/dist/lib/core/TaskExecutor.d.ts +245 -0
  904. package/dist/lib/core/TaskExecutor.d.ts.map +1 -0
  905. package/dist/lib/core/TaskExecutor.js +1452 -0
  906. package/dist/lib/core/TaskExecutor.js.map +1 -0
  907. package/dist/lib/core/match.d.ts +84 -0
  908. package/dist/lib/core/match.d.ts.map +1 -0
  909. package/dist/lib/core/match.js +47 -0
  910. package/dist/lib/core/match.js.map +1 -0
  911. package/dist/lib/discovery/network-consistency-checker.d.ts +111 -0
  912. package/dist/lib/discovery/network-consistency-checker.d.ts.map +1 -0
  913. package/dist/lib/discovery/network-consistency-checker.js +541 -0
  914. package/dist/lib/discovery/network-consistency-checker.js.map +1 -0
  915. package/dist/lib/discovery/property-crawler.d.ts +91 -0
  916. package/dist/lib/discovery/property-crawler.d.ts.map +1 -0
  917. package/dist/lib/discovery/property-crawler.js +290 -0
  918. package/dist/lib/discovery/property-crawler.js.map +1 -0
  919. package/dist/lib/discovery/property-index.d.ts +68 -0
  920. package/dist/lib/discovery/property-index.d.ts.map +1 -0
  921. package/dist/lib/discovery/property-index.js +163 -0
  922. package/dist/lib/discovery/property-index.js.map +1 -0
  923. package/dist/lib/discovery/types.d.ts +42 -0
  924. package/dist/lib/discovery/types.d.ts.map +1 -0
  925. package/dist/lib/discovery/types.js +7 -0
  926. package/dist/lib/discovery/types.js.map +1 -0
  927. package/dist/lib/errors/index.d.ts +284 -0
  928. package/dist/lib/errors/index.d.ts.map +1 -0
  929. package/dist/lib/errors/index.js +446 -0
  930. package/dist/lib/errors/index.js.map +1 -0
  931. package/dist/lib/express-mcp/index.d.ts +62 -0
  932. package/dist/lib/express-mcp/index.d.ts.map +1 -0
  933. package/dist/lib/express-mcp/index.js +118 -0
  934. package/dist/lib/express-mcp/index.js.map +1 -0
  935. package/dist/lib/governance/index.d.ts +149 -0
  936. package/dist/lib/governance/index.d.ts.map +1 -0
  937. package/dist/lib/governance/index.js +171 -0
  938. package/dist/lib/governance/index.js.map +1 -0
  939. package/dist/lib/handlers/types.d.ts +119 -0
  940. package/dist/lib/handlers/types.d.ts.map +1 -0
  941. package/dist/lib/handlers/types.js +239 -0
  942. package/dist/lib/handlers/types.js.map +1 -0
  943. package/dist/lib/index.d.ts +118 -0
  944. package/dist/lib/index.d.ts.map +1 -0
  945. package/dist/lib/index.js +689 -0
  946. package/dist/lib/index.js.map +1 -0
  947. package/dist/lib/net/address-guards.d.ts +34 -0
  948. package/dist/lib/net/address-guards.d.ts.map +1 -0
  949. package/dist/lib/net/address-guards.js +132 -0
  950. package/dist/lib/net/address-guards.js.map +1 -0
  951. package/dist/lib/net/index.d.ts +8 -0
  952. package/dist/lib/net/index.d.ts.map +1 -0
  953. package/dist/lib/net/index.js +17 -0
  954. package/dist/lib/net/index.js.map +1 -0
  955. package/dist/lib/net/ssrf-fetch.d.ts +56 -0
  956. package/dist/lib/net/ssrf-fetch.d.ts.map +1 -0
  957. package/dist/lib/net/ssrf-fetch.js +199 -0
  958. package/dist/lib/net/ssrf-fetch.js.map +1 -0
  959. package/dist/lib/observability/index.d.ts +8 -0
  960. package/dist/lib/observability/index.d.ts.map +1 -0
  961. package/dist/lib/observability/index.js +17 -0
  962. package/dist/lib/observability/index.js.map +1 -0
  963. package/dist/lib/observability/tracing.d.ts +42 -0
  964. package/dist/lib/observability/tracing.d.ts.map +1 -0
  965. package/dist/lib/observability/tracing.js +126 -0
  966. package/dist/lib/observability/tracing.js.map +1 -0
  967. package/dist/lib/protocols/a2a.d.ts +23 -0
  968. package/dist/lib/protocols/a2a.d.ts.map +1 -0
  969. package/dist/lib/protocols/a2a.js +268 -0
  970. package/dist/lib/protocols/a2a.js.map +1 -0
  971. package/dist/lib/protocols/index.d.ts +43 -0
  972. package/dist/lib/protocols/index.d.ts.map +1 -0
  973. package/dist/lib/protocols/index.js +264 -0
  974. package/dist/lib/protocols/index.js.map +1 -0
  975. package/dist/lib/protocols/mcp-tasks.d.ts +79 -0
  976. package/dist/lib/protocols/mcp-tasks.d.ts.map +1 -0
  977. package/dist/lib/protocols/mcp-tasks.js +407 -0
  978. package/dist/lib/protocols/mcp-tasks.js.map +1 -0
  979. package/dist/lib/protocols/mcp.d.ts +124 -0
  980. package/dist/lib/protocols/mcp.d.ts.map +1 -0
  981. package/dist/lib/protocols/mcp.js +564 -0
  982. package/dist/lib/protocols/mcp.js.map +1 -0
  983. package/dist/lib/protocols/rawResponseCapture.d.ts +44 -0
  984. package/dist/lib/protocols/rawResponseCapture.d.ts.map +1 -0
  985. package/dist/lib/protocols/rawResponseCapture.js +147 -0
  986. package/dist/lib/protocols/rawResponseCapture.js.map +1 -0
  987. package/dist/lib/registry/cursor-store.d.ts +19 -0
  988. package/dist/lib/registry/cursor-store.d.ts.map +1 -0
  989. package/dist/lib/registry/cursor-store.js +44 -0
  990. package/dist/lib/registry/cursor-store.js.map +1 -0
  991. package/dist/lib/registry/index.d.ts +278 -0
  992. package/dist/lib/registry/index.d.ts.map +1 -0
  993. package/dist/lib/registry/index.js +652 -0
  994. package/dist/lib/registry/index.js.map +1 -0
  995. package/dist/lib/registry/property-registry.d.ts +57 -0
  996. package/dist/lib/registry/property-registry.d.ts.map +1 -0
  997. package/dist/lib/registry/property-registry.js +92 -0
  998. package/dist/lib/registry/property-registry.js.map +1 -0
  999. package/dist/lib/registry/sync.d.ts +139 -0
  1000. package/dist/lib/registry/sync.d.ts.map +1 -0
  1001. package/dist/lib/registry/sync.js +390 -0
  1002. package/dist/lib/registry/sync.js.map +1 -0
  1003. package/dist/lib/registry/types.d.ts +112 -0
  1004. package/dist/lib/registry/types.d.ts.map +1 -0
  1005. package/dist/lib/registry/types.generated.d.ts +5680 -0
  1006. package/dist/lib/registry/types.generated.d.ts.map +1 -0
  1007. package/dist/lib/registry/types.generated.js +8 -0
  1008. package/dist/lib/registry/types.generated.js.map +1 -0
  1009. package/dist/lib/registry/types.js +9 -0
  1010. package/dist/lib/registry/types.js.map +1 -0
  1011. package/dist/lib/schemas/index.d.ts +76 -0
  1012. package/dist/lib/schemas/index.d.ts.map +1 -0
  1013. package/dist/lib/schemas/index.js +133 -0
  1014. package/dist/lib/schemas/index.js.map +1 -0
  1015. package/dist/lib/schemas-data/3.0.1/a2ui/bound-value.json +81 -0
  1016. package/dist/lib/schemas-data/3.0.1/a2ui/component.json +32 -0
  1017. package/dist/lib/schemas-data/3.0.1/a2ui/si-catalog.json +427 -0
  1018. package/dist/lib/schemas-data/3.0.1/a2ui/surface.json +39 -0
  1019. package/dist/lib/schemas-data/3.0.1/a2ui/user-action.json +47 -0
  1020. package/dist/lib/schemas-data/3.0.1/account/get-account-financials-request.json +70 -0
  1021. package/dist/lib/schemas-data/3.0.1/account/get-account-financials-response.json +320 -0
  1022. package/dist/lib/schemas-data/3.0.1/account/list-accounts-request.json +42 -0
  1023. package/dist/lib/schemas-data/3.0.1/account/list-accounts-response.json +108 -0
  1024. package/dist/lib/schemas-data/3.0.1/account/report-usage-request.json +168 -0
  1025. package/dist/lib/schemas-data/3.0.1/account/report-usage-response.json +56 -0
  1026. package/dist/lib/schemas-data/3.0.1/account/sync-accounts-request.json +201 -0
  1027. package/dist/lib/schemas-data/3.0.1/account/sync-accounts-response.json +346 -0
  1028. package/dist/lib/schemas-data/3.0.1/account/sync-governance-request.json +170 -0
  1029. package/dist/lib/schemas-data/3.0.1/account/sync-governance-response.json +193 -0
  1030. package/dist/lib/schemas-data/3.0.1/adagents.json +1225 -0
  1031. package/dist/lib/schemas-data/3.0.1/brand/acquire-rights-request.json +114 -0
  1032. package/dist/lib/schemas-data/3.0.1/brand/acquire-rights-response.json +220 -0
  1033. package/dist/lib/schemas-data/3.0.1/brand/creative-approval-request.json +63 -0
  1034. package/dist/lib/schemas-data/3.0.1/brand/creative-approval-response.json +189 -0
  1035. package/dist/lib/schemas-data/3.0.1/brand/get-brand-identity-request.json +56 -0
  1036. package/dist/lib/schemas-data/3.0.1/brand/get-brand-identity-response.json +585 -0
  1037. package/dist/lib/schemas-data/3.0.1/brand/get-rights-request.json +70 -0
  1038. package/dist/lib/schemas-data/3.0.1/brand/get-rights-response.json +220 -0
  1039. package/dist/lib/schemas-data/3.0.1/brand/revocation-notification.json +57 -0
  1040. package/dist/lib/schemas-data/3.0.1/brand/rights-pricing-option.json +65 -0
  1041. package/dist/lib/schemas-data/3.0.1/brand/rights-terms.json +70 -0
  1042. package/dist/lib/schemas-data/3.0.1/brand/update-rights-request.json +63 -0
  1043. package/dist/lib/schemas-data/3.0.1/brand/update-rights-response.json +99 -0
  1044. package/dist/lib/schemas-data/3.0.1/brand.json +2582 -0
  1045. package/dist/lib/schemas-data/3.0.1/bundled/content-standards/calibrate-content-request.json +1712 -0
  1046. package/dist/lib/schemas-data/3.0.1/bundled/content-standards/calibrate-content-response.json +180 -0
  1047. package/dist/lib/schemas-data/3.0.1/bundled/content-standards/create-content-standards-request.json +3622 -0
  1048. package/dist/lib/schemas-data/3.0.1/bundled/content-standards/create-content-standards-response.json +116 -0
  1049. package/dist/lib/schemas-data/3.0.1/bundled/content-standards/get-content-standards-request.json +38 -0
  1050. package/dist/lib/schemas-data/3.0.1/bundled/content-standards/get-content-standards-response.json +3851 -0
  1051. package/dist/lib/schemas-data/3.0.1/bundled/content-standards/get-media-buy-artifacts-request.json +234 -0
  1052. package/dist/lib/schemas-data/3.0.1/bundled/content-standards/get-media-buy-artifacts-response.json +1880 -0
  1053. package/dist/lib/schemas-data/3.0.1/bundled/content-standards/list-content-standards-request.json +121 -0
  1054. package/dist/lib/schemas-data/3.0.1/bundled/content-standards/list-content-standards-response.json +3880 -0
  1055. package/dist/lib/schemas-data/3.0.1/bundled/content-standards/update-content-standards-request.json +3611 -0
  1056. package/dist/lib/schemas-data/3.0.1/bundled/content-standards/update-content-standards-response.json +131 -0
  1057. package/dist/lib/schemas-data/3.0.1/bundled/content-standards/validate-content-delivery-request.json +1766 -0
  1058. package/dist/lib/schemas-data/3.0.1/bundled/content-standards/validate-content-delivery-response.json +208 -0
  1059. package/dist/lib/schemas-data/3.0.1/bundled/core/tasks-get-request.json +60 -0
  1060. package/dist/lib/schemas-data/3.0.1/bundled/core/tasks-get-response.json +264 -0
  1061. package/dist/lib/schemas-data/3.0.1/bundled/core/tasks-list-request.json +318 -0
  1062. package/dist/lib/schemas-data/3.0.1/bundled/core/tasks-list-response.json +258 -0
  1063. package/dist/lib/schemas-data/3.0.1/bundled/creative/get-creative-delivery-request.json +245 -0
  1064. package/dist/lib/schemas-data/3.0.1/bundled/creative/get-creative-delivery-response.json +5967 -0
  1065. package/dist/lib/schemas-data/3.0.1/bundled/creative/get-creative-features-request.json +5091 -0
  1066. package/dist/lib/schemas-data/3.0.1/bundled/creative/get-creative-features-response.json +230 -0
  1067. package/dist/lib/schemas-data/3.0.1/bundled/creative/list-creative-formats-request.json +485 -0
  1068. package/dist/lib/schemas-data/3.0.1/bundled/creative/list-creative-formats-response.json +4076 -0
  1069. package/dist/lib/schemas-data/3.0.1/bundled/creative/list-creatives-request.json +687 -0
  1070. package/dist/lib/schemas-data/3.0.1/bundled/creative/list-creatives-response.json +5977 -0
  1071. package/dist/lib/schemas-data/3.0.1/bundled/creative/preview-creative-request.json +9624 -0
  1072. package/dist/lib/schemas-data/3.0.1/bundled/creative/preview-creative-response.json +5931 -0
  1073. package/dist/lib/schemas-data/3.0.1/bundled/creative/sync-creatives-request.json +5268 -0
  1074. package/dist/lib/schemas-data/3.0.1/bundled/creative/sync-creatives-response.json +1146 -0
  1075. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/build-creative-request.json +5369 -0
  1076. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/build-creative-response.json +10286 -0
  1077. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/create-media-buy-request.json +7893 -0
  1078. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/create-media-buy-response.json +4170 -0
  1079. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/get-media-buy-delivery-request.json +494 -0
  1080. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/get-media-buy-delivery-response.json +4256 -0
  1081. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/get-media-buys-request.json +261 -0
  1082. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/get-media-buys-response.json +2357 -0
  1083. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/get-products-request.json +2046 -0
  1084. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/get-products-response.json +6809 -0
  1085. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/list-creative-formats-request.json +311 -0
  1086. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/list-creative-formats-response.json +4080 -0
  1087. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/log-event-request.json +394 -0
  1088. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/log-event-response.json +193 -0
  1089. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/package-request.json +6923 -0
  1090. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/provide-performance-feedback-request.json +119 -0
  1091. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/provide-performance-feedback-response.json +142 -0
  1092. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/sync-audiences-request.json +454 -0
  1093. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/sync-audiences-response.json +335 -0
  1094. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/sync-catalogs-request.json +836 -0
  1095. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/sync-catalogs-response.json +344 -0
  1096. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/sync-event-sources-request.json +299 -0
  1097. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/sync-event-sources-response.json +461 -0
  1098. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/update-media-buy-request.json +13548 -0
  1099. package/dist/lib/schemas-data/3.0.1/bundled/media-buy/update-media-buy-response.json +2799 -0
  1100. package/dist/lib/schemas-data/3.0.1/bundled/property/create-property-list-request.json +661 -0
  1101. package/dist/lib/schemas-data/3.0.1/bundled/property/create-property-list-response.json +928 -0
  1102. package/dist/lib/schemas-data/3.0.1/bundled/property/delete-property-list-request.json +198 -0
  1103. package/dist/lib/schemas-data/3.0.1/bundled/property/delete-property-list-response.json +44 -0
  1104. package/dist/lib/schemas-data/3.0.1/bundled/property/get-property-list-request.json +212 -0
  1105. package/dist/lib/schemas-data/3.0.1/bundled/property/get-property-list-response.json +1001 -0
  1106. package/dist/lib/schemas-data/3.0.1/bundled/property/list-property-lists-request.json +204 -0
  1107. package/dist/lib/schemas-data/3.0.1/bundled/property/list-property-lists-response.json +946 -0
  1108. package/dist/lib/schemas-data/3.0.1/bundled/property/update-property-list-request.json +670 -0
  1109. package/dist/lib/schemas-data/3.0.1/bundled/property/update-property-list-response.json +923 -0
  1110. package/dist/lib/schemas-data/3.0.1/bundled/property/validate-property-delivery-request.json +308 -0
  1111. package/dist/lib/schemas-data/3.0.1/bundled/property/validate-property-delivery-response.json +418 -0
  1112. package/dist/lib/schemas-data/3.0.1/bundled/protocol/get-adcp-capabilities-request.json +47 -0
  1113. package/dist/lib/schemas-data/3.0.1/bundled/protocol/get-adcp-capabilities-response.json +1729 -0
  1114. package/dist/lib/schemas-data/3.0.1/bundled/signals/activate-signal-request.json +269 -0
  1115. package/dist/lib/schemas-data/3.0.1/bundled/signals/activate-signal-response.json +320 -0
  1116. package/dist/lib/schemas-data/3.0.1/bundled/signals/get-signals-request.json +409 -0
  1117. package/dist/lib/schemas-data/3.0.1/bundled/signals/get-signals-response.json +689 -0
  1118. package/dist/lib/schemas-data/3.0.1/bundled/sponsored-intelligence/si-get-offering-request.json +57 -0
  1119. package/dist/lib/schemas-data/3.0.1/bundled/sponsored-intelligence/si-get-offering-response.json +207 -0
  1120. package/dist/lib/schemas-data/3.0.1/bundled/sponsored-intelligence/si-initiate-session-request.json +322 -0
  1121. package/dist/lib/schemas-data/3.0.1/bundled/sponsored-intelligence/si-initiate-session-response.json +618 -0
  1122. package/dist/lib/schemas-data/3.0.1/bundled/sponsored-intelligence/si-send-message-request.json +81 -0
  1123. package/dist/lib/schemas-data/3.0.1/bundled/sponsored-intelligence/si-send-message-response.json +589 -0
  1124. package/dist/lib/schemas-data/3.0.1/bundled/sponsored-intelligence/si-terminate-session-request.json +87 -0
  1125. package/dist/lib/schemas-data/3.0.1/bundled/sponsored-intelligence/si-terminate-session-response.json +156 -0
  1126. package/dist/lib/schemas-data/3.0.1/collection/base-collection-source.json +118 -0
  1127. package/dist/lib/schemas-data/3.0.1/collection/collection-list-changed-webhook.json +74 -0
  1128. package/dist/lib/schemas-data/3.0.1/collection/collection-list-filters.json +85 -0
  1129. package/dist/lib/schemas-data/3.0.1/collection/collection-list.json +71 -0
  1130. package/dist/lib/schemas-data/3.0.1/collection/create-collection-list-request.json +62 -0
  1131. package/dist/lib/schemas-data/3.0.1/collection/create-collection-list-response.json +33 -0
  1132. package/dist/lib/schemas-data/3.0.1/collection/delete-collection-list-request.json +43 -0
  1133. package/dist/lib/schemas-data/3.0.1/collection/delete-collection-list-response.json +34 -0
  1134. package/dist/lib/schemas-data/3.0.1/collection/get-collection-list-request.json +57 -0
  1135. package/dist/lib/schemas-data/3.0.1/collection/get-collection-list-response.json +122 -0
  1136. package/dist/lib/schemas-data/3.0.1/collection/list-collection-lists-request.json +33 -0
  1137. package/dist/lib/schemas-data/3.0.1/collection/list-collection-lists-response.json +29 -0
  1138. package/dist/lib/schemas-data/3.0.1/collection/update-collection-list-request.json +71 -0
  1139. package/dist/lib/schemas-data/3.0.1/collection/update-collection-list-response.json +28 -0
  1140. package/dist/lib/schemas-data/3.0.1/content-standards/artifact-webhook-payload.json +88 -0
  1141. package/dist/lib/schemas-data/3.0.1/content-standards/artifact.json +407 -0
  1142. package/dist/lib/schemas-data/3.0.1/content-standards/calibrate-content-request.json +42 -0
  1143. package/dist/lib/schemas-data/3.0.1/content-standards/calibrate-content-response.json +93 -0
  1144. package/dist/lib/schemas-data/3.0.1/content-standards/content-standards.json +83 -0
  1145. package/dist/lib/schemas-data/3.0.1/content-standards/create-content-standards-request.json +177 -0
  1146. package/dist/lib/schemas-data/3.0.1/content-standards/create-content-standards-response.json +53 -0
  1147. package/dist/lib/schemas-data/3.0.1/content-standards/get-content-standards-request.json +28 -0
  1148. package/dist/lib/schemas-data/3.0.1/content-standards/get-content-standards-response.json +47 -0
  1149. package/dist/lib/schemas-data/3.0.1/content-standards/get-media-buy-artifacts-request.json +79 -0
  1150. package/dist/lib/schemas-data/3.0.1/content-standards/get-media-buy-artifacts-response.json +136 -0
  1151. package/dist/lib/schemas-data/3.0.1/content-standards/list-content-standards-request.json +49 -0
  1152. package/dist/lib/schemas-data/3.0.1/content-standards/list-content-standards-response.json +55 -0
  1153. package/dist/lib/schemas-data/3.0.1/content-standards/update-content-standards-request.json +166 -0
  1154. package/dist/lib/schemas-data/3.0.1/content-standards/update-content-standards-response.json +68 -0
  1155. package/dist/lib/schemas-data/3.0.1/content-standards/validate-content-delivery-request.json +96 -0
  1156. package/dist/lib/schemas-data/3.0.1/content-standards/validate-content-delivery-response.json +121 -0
  1157. package/dist/lib/schemas-data/3.0.1/core/account-ref.json +71 -0
  1158. package/dist/lib/schemas-data/3.0.1/core/account.json +344 -0
  1159. package/dist/lib/schemas-data/3.0.1/core/activation-key.json +50 -0
  1160. package/dist/lib/schemas-data/3.0.1/core/ad-inventory-config.json +39 -0
  1161. package/dist/lib/schemas-data/3.0.1/core/agent-encryption-key.json +41 -0
  1162. package/dist/lib/schemas-data/3.0.1/core/agent-signing-key.json +55 -0
  1163. package/dist/lib/schemas-data/3.0.1/core/app-item.json +170 -0
  1164. package/dist/lib/schemas-data/3.0.1/core/assets/audio-asset.json +82 -0
  1165. package/dist/lib/schemas-data/3.0.1/core/assets/brief-asset.json +22 -0
  1166. package/dist/lib/schemas-data/3.0.1/core/assets/catalog-asset.json +22 -0
  1167. package/dist/lib/schemas-data/3.0.1/core/assets/css-asset.json +31 -0
  1168. package/dist/lib/schemas-data/3.0.1/core/assets/daast-asset.json +88 -0
  1169. package/dist/lib/schemas-data/3.0.1/core/assets/html-asset.json +54 -0
  1170. package/dist/lib/schemas-data/3.0.1/core/assets/image-asset.json +49 -0
  1171. package/dist/lib/schemas-data/3.0.1/core/assets/javascript-asset.json +54 -0
  1172. package/dist/lib/schemas-data/3.0.1/core/assets/markdown-asset.json +37 -0
  1173. package/dist/lib/schemas-data/3.0.1/core/assets/text-asset.json +31 -0
  1174. package/dist/lib/schemas-data/3.0.1/core/assets/url-asset.json +36 -0
  1175. package/dist/lib/schemas-data/3.0.1/core/assets/vast-asset.json +94 -0
  1176. package/dist/lib/schemas-data/3.0.1/core/assets/video-asset.json +179 -0
  1177. package/dist/lib/schemas-data/3.0.1/core/assets/webhook-asset.json +97 -0
  1178. package/dist/lib/schemas-data/3.0.1/core/async-response-data.json +128 -0
  1179. package/dist/lib/schemas-data/3.0.1/core/attribution-window.json +33 -0
  1180. package/dist/lib/schemas-data/3.0.1/core/audience-member.json +70 -0
  1181. package/dist/lib/schemas-data/3.0.1/core/audience-selector.json +134 -0
  1182. package/dist/lib/schemas-data/3.0.1/core/brand-id.json +16 -0
  1183. package/dist/lib/schemas-data/3.0.1/core/brand-ref.json +76 -0
  1184. package/dist/lib/schemas-data/3.0.1/core/business-entity.json +207 -0
  1185. package/dist/lib/schemas-data/3.0.1/core/cancellation-policy.json +49 -0
  1186. package/dist/lib/schemas-data/3.0.1/core/catalog-field-mapping.json +144 -0
  1187. package/dist/lib/schemas-data/3.0.1/core/catalog.json +222 -0
  1188. package/dist/lib/schemas-data/3.0.1/core/catchment.json +221 -0
  1189. package/dist/lib/schemas-data/3.0.1/core/collection-distribution.json +41 -0
  1190. package/dist/lib/schemas-data/3.0.1/core/collection-list-ref.json +29 -0
  1191. package/dist/lib/schemas-data/3.0.1/core/collection-selector.json +27 -0
  1192. package/dist/lib/schemas-data/3.0.1/core/collection.json +116 -0
  1193. package/dist/lib/schemas-data/3.0.1/core/content-rating.json +22 -0
  1194. package/dist/lib/schemas-data/3.0.1/core/context.json +8 -0
  1195. package/dist/lib/schemas-data/3.0.1/core/creative-asset.json +150 -0
  1196. package/dist/lib/schemas-data/3.0.1/core/creative-assignment.json +32 -0
  1197. package/dist/lib/schemas-data/3.0.1/core/creative-brief.json +136 -0
  1198. package/dist/lib/schemas-data/3.0.1/core/creative-consumption.json +30 -0
  1199. package/dist/lib/schemas-data/3.0.1/core/creative-filters.json +119 -0
  1200. package/dist/lib/schemas-data/3.0.1/core/creative-item.json +79 -0
  1201. package/dist/lib/schemas-data/3.0.1/core/creative-manifest.json +96 -0
  1202. package/dist/lib/schemas-data/3.0.1/core/creative-policy.json +31 -0
  1203. package/dist/lib/schemas-data/3.0.1/core/creative-variable.json +47 -0
  1204. package/dist/lib/schemas-data/3.0.1/core/creative-variant.json +60 -0
  1205. package/dist/lib/schemas-data/3.0.1/core/data-provider-signal-selector.json +94 -0
  1206. package/dist/lib/schemas-data/3.0.1/core/date-range.json +24 -0
  1207. package/dist/lib/schemas-data/3.0.1/core/datetime-range.json +24 -0
  1208. package/dist/lib/schemas-data/3.0.1/core/daypart-target.json +39 -0
  1209. package/dist/lib/schemas-data/3.0.1/core/deadline-policy.json +58 -0
  1210. package/dist/lib/schemas-data/3.0.1/core/delivery-forecast.json +86 -0
  1211. package/dist/lib/schemas-data/3.0.1/core/delivery-metrics.json +327 -0
  1212. package/dist/lib/schemas-data/3.0.1/core/deployment.json +93 -0
  1213. package/dist/lib/schemas-data/3.0.1/core/destination-item.json +168 -0
  1214. package/dist/lib/schemas-data/3.0.1/core/destination.json +53 -0
  1215. package/dist/lib/schemas-data/3.0.1/core/diagnostic-issue.json +27 -0
  1216. package/dist/lib/schemas-data/3.0.1/core/duration.json +30 -0
  1217. package/dist/lib/schemas-data/3.0.1/core/education-item.json +168 -0
  1218. package/dist/lib/schemas-data/3.0.1/core/error.json +52 -0
  1219. package/dist/lib/schemas-data/3.0.1/core/event-custom-data.json +86 -0
  1220. package/dist/lib/schemas-data/3.0.1/core/event-source-health.json +70 -0
  1221. package/dist/lib/schemas-data/3.0.1/core/event.json +54 -0
  1222. package/dist/lib/schemas-data/3.0.1/core/ext.json +8 -0
  1223. package/dist/lib/schemas-data/3.0.1/core/feature-requirement.json +45 -0
  1224. package/dist/lib/schemas-data/3.0.1/core/flight-item.json +159 -0
  1225. package/dist/lib/schemas-data/3.0.1/core/forecast-point.json +85 -0
  1226. package/dist/lib/schemas-data/3.0.1/core/forecast-range.json +38 -0
  1227. package/dist/lib/schemas-data/3.0.1/core/format-id.json +48 -0
  1228. package/dist/lib/schemas-data/3.0.1/core/format.json +904 -0
  1229. package/dist/lib/schemas-data/3.0.1/core/frequency-cap.json +73 -0
  1230. package/dist/lib/schemas-data/3.0.1/core/generation-credential.json +44 -0
  1231. package/dist/lib/schemas-data/3.0.1/core/geo-breakdown-support.json +38 -0
  1232. package/dist/lib/schemas-data/3.0.1/core/hotel-item.json +214 -0
  1233. package/dist/lib/schemas-data/3.0.1/core/identifier.json +22 -0
  1234. package/dist/lib/schemas-data/3.0.1/core/industry-identifier.json +22 -0
  1235. package/dist/lib/schemas-data/3.0.1/core/insertion-order.json +91 -0
  1236. package/dist/lib/schemas-data/3.0.1/core/installment-deadlines.json +29 -0
  1237. package/dist/lib/schemas-data/3.0.1/core/installment.json +108 -0
  1238. package/dist/lib/schemas-data/3.0.1/core/job-item.json +199 -0
  1239. package/dist/lib/schemas-data/3.0.1/core/limited-series.json +28 -0
  1240. package/dist/lib/schemas-data/3.0.1/core/material-deadline.json +31 -0
  1241. package/dist/lib/schemas-data/3.0.1/core/mcp-webhook-payload.json +163 -0
  1242. package/dist/lib/schemas-data/3.0.1/core/measurement-readiness.json +43 -0
  1243. package/dist/lib/schemas-data/3.0.1/core/measurement-terms.json +63 -0
  1244. package/dist/lib/schemas-data/3.0.1/core/measurement-window.json +54 -0
  1245. package/dist/lib/schemas-data/3.0.1/core/media-buy-features.json +24 -0
  1246. package/dist/lib/schemas-data/3.0.1/core/media-buy.json +101 -0
  1247. package/dist/lib/schemas-data/3.0.1/core/offering-asset-group.json +118 -0
  1248. package/dist/lib/schemas-data/3.0.1/core/offering.json +267 -0
  1249. package/dist/lib/schemas-data/3.0.1/core/optimization-goal.json +285 -0
  1250. package/dist/lib/schemas-data/3.0.1/core/outcome-measurement.json +48 -0
  1251. package/dist/lib/schemas-data/3.0.1/core/overlay.json +89 -0
  1252. package/dist/lib/schemas-data/3.0.1/core/package.json +170 -0
  1253. package/dist/lib/schemas-data/3.0.1/core/pagination-request.json +21 -0
  1254. package/dist/lib/schemas-data/3.0.1/core/pagination-response.json +26 -0
  1255. package/dist/lib/schemas-data/3.0.1/core/performance-feedback.json +90 -0
  1256. package/dist/lib/schemas-data/3.0.1/core/performance-standard.json +33 -0
  1257. package/dist/lib/schemas-data/3.0.1/core/placement-definition.json +81 -0
  1258. package/dist/lib/schemas-data/3.0.1/core/placement.json +42 -0
  1259. package/dist/lib/schemas-data/3.0.1/core/planned-delivery.json +84 -0
  1260. package/dist/lib/schemas-data/3.0.1/core/price.json +59 -0
  1261. package/dist/lib/schemas-data/3.0.1/core/pricing-option.json +35 -0
  1262. package/dist/lib/schemas-data/3.0.1/core/product-allocation.json +69 -0
  1263. package/dist/lib/schemas-data/3.0.1/core/product-filters.json +435 -0
  1264. package/dist/lib/schemas-data/3.0.1/core/product.json +493 -0
  1265. package/dist/lib/schemas-data/3.0.1/core/property-id.json +15 -0
  1266. package/dist/lib/schemas-data/3.0.1/core/property-list-ref.json +29 -0
  1267. package/dist/lib/schemas-data/3.0.1/core/property-tag.json +16 -0
  1268. package/dist/lib/schemas-data/3.0.1/core/property.json +70 -0
  1269. package/dist/lib/schemas-data/3.0.1/core/proposal.json +89 -0
  1270. package/dist/lib/schemas-data/3.0.1/core/protocol-envelope.json +186 -0
  1271. package/dist/lib/schemas-data/3.0.1/core/provenance.json +234 -0
  1272. package/dist/lib/schemas-data/3.0.1/core/publisher-property-selector.json +92 -0
  1273. package/dist/lib/schemas-data/3.0.1/core/push-notification-config.json +47 -0
  1274. package/dist/lib/schemas-data/3.0.1/core/real-estate-item.json +241 -0
  1275. package/dist/lib/schemas-data/3.0.1/core/reference-asset.json +36 -0
  1276. package/dist/lib/schemas-data/3.0.1/core/reporting-capabilities.json +118 -0
  1277. package/dist/lib/schemas-data/3.0.1/core/reporting-webhook.json +67 -0
  1278. package/dist/lib/schemas-data/3.0.1/core/requirements/asset-requirements.json +44 -0
  1279. package/dist/lib/schemas-data/3.0.1/core/requirements/audio-asset-requirements.json +68 -0
  1280. package/dist/lib/schemas-data/3.0.1/core/requirements/catalog-field-binding.json +172 -0
  1281. package/dist/lib/schemas-data/3.0.1/core/requirements/catalog-requirements.json +68 -0
  1282. package/dist/lib/schemas-data/3.0.1/core/requirements/css-asset-requirements.json +15 -0
  1283. package/dist/lib/schemas-data/3.0.1/core/requirements/daast-asset-requirements.json +17 -0
  1284. package/dist/lib/schemas-data/3.0.1/core/requirements/html-asset-requirements.json +38 -0
  1285. package/dist/lib/schemas-data/3.0.1/core/requirements/image-asset-requirements.json +151 -0
  1286. package/dist/lib/schemas-data/3.0.1/core/requirements/javascript-asset-requirements.json +40 -0
  1287. package/dist/lib/schemas-data/3.0.1/core/requirements/markdown-asset-requirements.json +15 -0
  1288. package/dist/lib/schemas-data/3.0.1/core/requirements/offering-asset-constraint.json +66 -0
  1289. package/dist/lib/schemas-data/3.0.1/core/requirements/text-asset-requirements.json +41 -0
  1290. package/dist/lib/schemas-data/3.0.1/core/requirements/url-asset-requirements.json +50 -0
  1291. package/dist/lib/schemas-data/3.0.1/core/requirements/vast-asset-requirements.json +21 -0
  1292. package/dist/lib/schemas-data/3.0.1/core/requirements/video-asset-requirements.json +172 -0
  1293. package/dist/lib/schemas-data/3.0.1/core/requirements/webhook-asset-requirements.json +21 -0
  1294. package/dist/lib/schemas-data/3.0.1/core/response.json +24 -0
  1295. package/dist/lib/schemas-data/3.0.1/core/rights-constraint.json +98 -0
  1296. package/dist/lib/schemas-data/3.0.1/core/seller-agent-ref.json +30 -0
  1297. package/dist/lib/schemas-data/3.0.1/core/signal-definition.json +89 -0
  1298. package/dist/lib/schemas-data/3.0.1/core/signal-filters.json +43 -0
  1299. package/dist/lib/schemas-data/3.0.1/core/signal-id.json +66 -0
  1300. package/dist/lib/schemas-data/3.0.1/core/signal-pricing-option.json +7 -0
  1301. package/dist/lib/schemas-data/3.0.1/core/signal-pricing.json +194 -0
  1302. package/dist/lib/schemas-data/3.0.1/core/signal-targeting.json +93 -0
  1303. package/dist/lib/schemas-data/3.0.1/core/special.json +31 -0
  1304. package/dist/lib/schemas-data/3.0.1/core/start-timing.json +18 -0
  1305. package/dist/lib/schemas-data/3.0.1/core/store-item.json +259 -0
  1306. package/dist/lib/schemas-data/3.0.1/core/talent.json +27 -0
  1307. package/dist/lib/schemas-data/3.0.1/core/targeting.json +510 -0
  1308. package/dist/lib/schemas-data/3.0.1/core/tasks-get-request.json +50 -0
  1309. package/dist/lib/schemas-data/3.0.1/core/tasks-get-response.json +159 -0
  1310. package/dist/lib/schemas-data/3.0.1/core/tasks-list-request.json +185 -0
  1311. package/dist/lib/schemas-data/3.0.1/core/tasks-list-response.json +153 -0
  1312. package/dist/lib/schemas-data/3.0.1/core/user-match.json +90 -0
  1313. package/dist/lib/schemas-data/3.0.1/core/vehicle-item.json +231 -0
  1314. package/dist/lib/schemas-data/3.0.1/core/vendor-pricing-option.json +24 -0
  1315. package/dist/lib/schemas-data/3.0.1/core/x-entity-types.json +69 -0
  1316. package/dist/lib/schemas-data/3.0.1/creative/asset-types/index.json +118 -0
  1317. package/dist/lib/schemas-data/3.0.1/creative/creative-feature-result.json +69 -0
  1318. package/dist/lib/schemas-data/3.0.1/creative/get-creative-delivery-request.json +75 -0
  1319. package/dist/lib/schemas-data/3.0.1/creative/get-creative-delivery-response.json +143 -0
  1320. package/dist/lib/schemas-data/3.0.1/creative/get-creative-features-request.json +41 -0
  1321. package/dist/lib/schemas-data/3.0.1/creative/get-creative-features-response.json +76 -0
  1322. package/dist/lib/schemas-data/3.0.1/creative/list-creative-formats-request.json +150 -0
  1323. package/dist/lib/schemas-data/3.0.1/creative/list-creative-formats-response.json +64 -0
  1324. package/dist/lib/schemas-data/3.0.1/creative/list-creatives-request.json +184 -0
  1325. package/dist/lib/schemas-data/3.0.1/creative/list-creatives-response.json +445 -0
  1326. package/dist/lib/schemas-data/3.0.1/creative/preview-creative-request.json +212 -0
  1327. package/dist/lib/schemas-data/3.0.1/creative/preview-creative-response.json +307 -0
  1328. package/dist/lib/schemas-data/3.0.1/creative/preview-render.json +225 -0
  1329. package/dist/lib/schemas-data/3.0.1/creative/sync-creatives-async-response-input-required.json +25 -0
  1330. package/dist/lib/schemas-data/3.0.1/creative/sync-creatives-async-response-submitted.json +16 -0
  1331. package/dist/lib/schemas-data/3.0.1/creative/sync-creatives-async-response-working.json +46 -0
  1332. package/dist/lib/schemas-data/3.0.1/creative/sync-creatives-request.json +242 -0
  1333. package/dist/lib/schemas-data/3.0.1/creative/sync-creatives-response.json +270 -0
  1334. package/dist/lib/schemas-data/3.0.1/enums/account-scope.json +19 -0
  1335. package/dist/lib/schemas-data/3.0.1/enums/account-status.json +23 -0
  1336. package/dist/lib/schemas-data/3.0.1/enums/action-source.json +29 -0
  1337. package/dist/lib/schemas-data/3.0.1/enums/adcp-protocol.json +23 -0
  1338. package/dist/lib/schemas-data/3.0.1/enums/adjustment-kind.json +19 -0
  1339. package/dist/lib/schemas-data/3.0.1/enums/advertiser-industry.json +175 -0
  1340. package/dist/lib/schemas-data/3.0.1/enums/age-verification-method.json +14 -0
  1341. package/dist/lib/schemas-data/3.0.1/enums/assessment-status.json +19 -0
  1342. package/dist/lib/schemas-data/3.0.1/enums/asset-content-type.json +23 -0
  1343. package/dist/lib/schemas-data/3.0.1/enums/attribution-model.json +14 -0
  1344. package/dist/lib/schemas-data/3.0.1/enums/audience-source.json +15 -0
  1345. package/dist/lib/schemas-data/3.0.1/enums/audience-status.json +17 -0
  1346. package/dist/lib/schemas-data/3.0.1/enums/audio-channel-layout.json +13 -0
  1347. package/dist/lib/schemas-data/3.0.1/enums/auth-scheme.json +11 -0
  1348. package/dist/lib/schemas-data/3.0.1/enums/available-metric.json +31 -0
  1349. package/dist/lib/schemas-data/3.0.1/enums/billing-party.json +17 -0
  1350. package/dist/lib/schemas-data/3.0.1/enums/binary-verdict.json +15 -0
  1351. package/dist/lib/schemas-data/3.0.1/enums/brand-agent-type.json +27 -0
  1352. package/dist/lib/schemas-data/3.0.1/enums/canceled-by.json +15 -0
  1353. package/dist/lib/schemas-data/3.0.1/enums/catalog-action.json +14 -0
  1354. package/dist/lib/schemas-data/3.0.1/enums/catalog-item-status.json +19 -0
  1355. package/dist/lib/schemas-data/3.0.1/enums/catalog-type.json +22 -0
  1356. package/dist/lib/schemas-data/3.0.1/enums/channels.json +51 -0
  1357. package/dist/lib/schemas-data/3.0.1/enums/cloud-storage-protocol.json +12 -0
  1358. package/dist/lib/schemas-data/3.0.1/enums/co-branding-requirement.json +12 -0
  1359. package/dist/lib/schemas-data/3.0.1/enums/collection-cadence.json +23 -0
  1360. package/dist/lib/schemas-data/3.0.1/enums/collection-kind.json +19 -0
  1361. package/dist/lib/schemas-data/3.0.1/enums/collection-relationship.json +21 -0
  1362. package/dist/lib/schemas-data/3.0.1/enums/collection-status.json +19 -0
  1363. package/dist/lib/schemas-data/3.0.1/enums/consent-basis.json +13 -0
  1364. package/dist/lib/schemas-data/3.0.1/enums/content-id-type.json +21 -0
  1365. package/dist/lib/schemas-data/3.0.1/enums/content-rating-system.json +33 -0
  1366. package/dist/lib/schemas-data/3.0.1/enums/creative-action.json +14 -0
  1367. package/dist/lib/schemas-data/3.0.1/enums/creative-agent-capability.json +14 -0
  1368. package/dist/lib/schemas-data/3.0.1/enums/creative-approval-status.json +17 -0
  1369. package/dist/lib/schemas-data/3.0.1/enums/creative-identifier-type.json +22 -0
  1370. package/dist/lib/schemas-data/3.0.1/enums/creative-quality.json +15 -0
  1371. package/dist/lib/schemas-data/3.0.1/enums/creative-sort-field.json +14 -0
  1372. package/dist/lib/schemas-data/3.0.1/enums/creative-status.json +21 -0
  1373. package/dist/lib/schemas-data/3.0.1/enums/daast-tracking-event.json +32 -0
  1374. package/dist/lib/schemas-data/3.0.1/enums/daast-version.json +11 -0
  1375. package/dist/lib/schemas-data/3.0.1/enums/day-of-week.json +16 -0
  1376. package/dist/lib/schemas-data/3.0.1/enums/delegation-authority.json +17 -0
  1377. package/dist/lib/schemas-data/3.0.1/enums/delivery-type.json +15 -0
  1378. package/dist/lib/schemas-data/3.0.1/enums/demographic-system.json +23 -0
  1379. package/dist/lib/schemas-data/3.0.1/enums/derivative-type.json +21 -0
  1380. package/dist/lib/schemas-data/3.0.1/enums/device-platform.json +21 -0
  1381. package/dist/lib/schemas-data/3.0.1/enums/device-type.json +15 -0
  1382. package/dist/lib/schemas-data/3.0.1/enums/digital-source-type.json +29 -0
  1383. package/dist/lib/schemas-data/3.0.1/enums/dimension-unit.json +15 -0
  1384. package/dist/lib/schemas-data/3.0.1/enums/disclosure-persistence.json +17 -0
  1385. package/dist/lib/schemas-data/3.0.1/enums/disclosure-position.json +17 -0
  1386. package/dist/lib/schemas-data/3.0.1/enums/distance-unit.json +17 -0
  1387. package/dist/lib/schemas-data/3.0.1/enums/distribution-identifier-type.json +53 -0
  1388. package/dist/lib/schemas-data/3.0.1/enums/error-code.json +101 -0
  1389. package/dist/lib/schemas-data/3.0.1/enums/escalation-severity.json +17 -0
  1390. package/dist/lib/schemas-data/3.0.1/enums/event-type.json +67 -0
  1391. package/dist/lib/schemas-data/3.0.1/enums/exclusivity.json +17 -0
  1392. package/dist/lib/schemas-data/3.0.1/enums/feature-check-status.json +19 -0
  1393. package/dist/lib/schemas-data/3.0.1/enums/feed-format.json +14 -0
  1394. package/dist/lib/schemas-data/3.0.1/enums/feedback-source.json +13 -0
  1395. package/dist/lib/schemas-data/3.0.1/enums/forecast-method.json +17 -0
  1396. package/dist/lib/schemas-data/3.0.1/enums/forecast-range-unit.json +27 -0
  1397. package/dist/lib/schemas-data/3.0.1/enums/forecastable-metric.json +43 -0
  1398. package/dist/lib/schemas-data/3.0.1/enums/format-id-parameter.json +11 -0
  1399. package/dist/lib/schemas-data/3.0.1/enums/frame-rate-type.json +15 -0
  1400. package/dist/lib/schemas-data/3.0.1/enums/frequency-cap-scope.json +13 -0
  1401. package/dist/lib/schemas-data/3.0.1/enums/genre-taxonomy.json +29 -0
  1402. package/dist/lib/schemas-data/3.0.1/enums/geo-level.json +13 -0
  1403. package/dist/lib/schemas-data/3.0.1/enums/gop-type.json +15 -0
  1404. package/dist/lib/schemas-data/3.0.1/enums/governance-decision.json +18 -0
  1405. package/dist/lib/schemas-data/3.0.1/enums/governance-domain.json +13 -0
  1406. package/dist/lib/schemas-data/3.0.1/enums/governance-mode.json +18 -0
  1407. package/dist/lib/schemas-data/3.0.1/enums/governance-phase.json +12 -0
  1408. package/dist/lib/schemas-data/3.0.1/enums/history-entry-type.json +11 -0
  1409. package/dist/lib/schemas-data/3.0.1/enums/http-method.json +11 -0
  1410. package/dist/lib/schemas-data/3.0.1/enums/identifier-types.json +61 -0
  1411. package/dist/lib/schemas-data/3.0.1/enums/installment-status.json +25 -0
  1412. package/dist/lib/schemas-data/3.0.1/enums/javascript-module-type.json +12 -0
  1413. package/dist/lib/schemas-data/3.0.1/enums/landing-page-requirement.json +12 -0
  1414. package/dist/lib/schemas-data/3.0.1/enums/makegood-remedy.json +17 -0
  1415. package/dist/lib/schemas-data/3.0.1/enums/markdown-flavor.json +11 -0
  1416. package/dist/lib/schemas-data/3.0.1/enums/match-id-type.json +29 -0
  1417. package/dist/lib/schemas-data/3.0.1/enums/match-type.json +17 -0
  1418. package/dist/lib/schemas-data/3.0.1/enums/media-buy-status.json +25 -0
  1419. package/dist/lib/schemas-data/3.0.1/enums/media-buy-valid-action.json +17 -0
  1420. package/dist/lib/schemas-data/3.0.1/enums/metric-type.json +17 -0
  1421. package/dist/lib/schemas-data/3.0.1/enums/metro-system.json +14 -0
  1422. package/dist/lib/schemas-data/3.0.1/enums/moov-atom-position.json +15 -0
  1423. package/dist/lib/schemas-data/3.0.1/enums/notification-type.json +13 -0
  1424. package/dist/lib/schemas-data/3.0.1/enums/outcome-type.json +17 -0
  1425. package/dist/lib/schemas-data/3.0.1/enums/pacing.json +17 -0
  1426. package/dist/lib/schemas-data/3.0.1/enums/payment-terms.json +23 -0
  1427. package/dist/lib/schemas-data/3.0.1/enums/performance-standard-metric.json +21 -0
  1428. package/dist/lib/schemas-data/3.0.1/enums/policy-category.json +15 -0
  1429. package/dist/lib/schemas-data/3.0.1/enums/policy-enforcement.json +17 -0
  1430. package/dist/lib/schemas-data/3.0.1/enums/postal-system.json +20 -0
  1431. package/dist/lib/schemas-data/3.0.1/enums/preview-output-format.json +11 -0
  1432. package/dist/lib/schemas-data/3.0.1/enums/pricing-model.json +29 -0
  1433. package/dist/lib/schemas-data/3.0.1/enums/production-quality.json +17 -0
  1434. package/dist/lib/schemas-data/3.0.1/enums/property-type.json +31 -0
  1435. package/dist/lib/schemas-data/3.0.1/enums/proposal-status.json +15 -0
  1436. package/dist/lib/schemas-data/3.0.1/enums/publisher-identifier-types.json +19 -0
  1437. package/dist/lib/schemas-data/3.0.1/enums/purchase-type.json +13 -0
  1438. package/dist/lib/schemas-data/3.0.1/enums/reach-unit.json +23 -0
  1439. package/dist/lib/schemas-data/3.0.1/enums/reporting-frequency.json +12 -0
  1440. package/dist/lib/schemas-data/3.0.1/enums/response-type.json +19 -0
  1441. package/dist/lib/schemas-data/3.0.1/enums/restricted-attribute.json +31 -0
  1442. package/dist/lib/schemas-data/3.0.1/enums/right-type.json +22 -0
  1443. package/dist/lib/schemas-data/3.0.1/enums/right-use.json +36 -0
  1444. package/dist/lib/schemas-data/3.0.1/enums/rights-billing-period.json +15 -0
  1445. package/dist/lib/schemas-data/3.0.1/enums/scan-type.json +15 -0
  1446. package/dist/lib/schemas-data/3.0.1/enums/si-session-status.json +19 -0
  1447. package/dist/lib/schemas-data/3.0.1/enums/signal-catalog-type.json +17 -0
  1448. package/dist/lib/schemas-data/3.0.1/enums/signal-source.json +15 -0
  1449. package/dist/lib/schemas-data/3.0.1/enums/signal-value-type.json +17 -0
  1450. package/dist/lib/schemas-data/3.0.1/enums/snapshot-unavailable-reason.json +17 -0
  1451. package/dist/lib/schemas-data/3.0.1/enums/sort-direction.json +11 -0
  1452. package/dist/lib/schemas-data/3.0.1/enums/sort-metric.json +31 -0
  1453. package/dist/lib/schemas-data/3.0.1/enums/special-category.json +35 -0
  1454. package/dist/lib/schemas-data/3.0.1/enums/specialism.json +55 -0
  1455. package/dist/lib/schemas-data/3.0.1/enums/talent-role.json +29 -0
  1456. package/dist/lib/schemas-data/3.0.1/enums/task-status.json +29 -0
  1457. package/dist/lib/schemas-data/3.0.1/enums/task-type.json +57 -0
  1458. package/dist/lib/schemas-data/3.0.1/enums/transport-mode.json +19 -0
  1459. package/dist/lib/schemas-data/3.0.1/enums/travel-time-unit.json +15 -0
  1460. package/dist/lib/schemas-data/3.0.1/enums/uid-type.json +31 -0
  1461. package/dist/lib/schemas-data/3.0.1/enums/universal-macro.json +149 -0
  1462. package/dist/lib/schemas-data/3.0.1/enums/update-frequency.json +13 -0
  1463. package/dist/lib/schemas-data/3.0.1/enums/url-asset-type.json +12 -0
  1464. package/dist/lib/schemas-data/3.0.1/enums/validation-mode.json +11 -0
  1465. package/dist/lib/schemas-data/3.0.1/enums/vast-tracking-event.json +41 -0
  1466. package/dist/lib/schemas-data/3.0.1/enums/vast-version.json +14 -0
  1467. package/dist/lib/schemas-data/3.0.1/enums/viewability-standard.json +15 -0
  1468. package/dist/lib/schemas-data/3.0.1/enums/wcag-level.json +17 -0
  1469. package/dist/lib/schemas-data/3.0.1/enums/webhook-response-type.json +13 -0
  1470. package/dist/lib/schemas-data/3.0.1/enums/webhook-security-method.json +12 -0
  1471. package/dist/lib/schemas-data/3.0.1/error-details/account-setup-required.json +22 -0
  1472. package/dist/lib/schemas-data/3.0.1/error-details/audience-too-small.json +18 -0
  1473. package/dist/lib/schemas-data/3.0.1/error-details/budget-too-low.json +18 -0
  1474. package/dist/lib/schemas-data/3.0.1/error-details/conflict.json +28 -0
  1475. package/dist/lib/schemas-data/3.0.1/error-details/creative-rejected.json +27 -0
  1476. package/dist/lib/schemas-data/3.0.1/error-details/policy-violation.json +27 -0
  1477. package/dist/lib/schemas-data/3.0.1/error-details/rate-limited.json +31 -0
  1478. package/dist/lib/schemas-data/3.0.1/error-details/vendor-error-codes.json +55 -0
  1479. package/dist/lib/schemas-data/3.0.1/extensions/extension-meta.json +69 -0
  1480. package/dist/lib/schemas-data/3.0.1/extensions/index.json +9 -0
  1481. package/dist/lib/schemas-data/3.0.1/governance/attribute-definition.json +82 -0
  1482. package/dist/lib/schemas-data/3.0.1/governance/audience-constraints.json +27 -0
  1483. package/dist/lib/schemas-data/3.0.1/governance/check-governance-request.json +198 -0
  1484. package/dist/lib/schemas-data/3.0.1/governance/check-governance-response.json +217 -0
  1485. package/dist/lib/schemas-data/3.0.1/governance/get-plan-audit-logs-request.json +79 -0
  1486. package/dist/lib/schemas-data/3.0.1/governance/get-plan-audit-logs-response.json +423 -0
  1487. package/dist/lib/schemas-data/3.0.1/governance/policy-category-definition.json +95 -0
  1488. package/dist/lib/schemas-data/3.0.1/governance/policy-entry.json +165 -0
  1489. package/dist/lib/schemas-data/3.0.1/governance/policy-ref.json +27 -0
  1490. package/dist/lib/schemas-data/3.0.1/governance/report-plan-outcome-request.json +165 -0
  1491. package/dist/lib/schemas-data/3.0.1/governance/report-plan-outcome-response.json +89 -0
  1492. package/dist/lib/schemas-data/3.0.1/governance/sync-plans-request.json +449 -0
  1493. package/dist/lib/schemas-data/3.0.1/governance/sync-plans-response.json +119 -0
  1494. package/dist/lib/schemas-data/3.0.1/index.json +1678 -0
  1495. package/dist/lib/schemas-data/3.0.1/media-buy/build-creative-async-response-input-required.json +32 -0
  1496. package/dist/lib/schemas-data/3.0.1/media-buy/build-creative-async-response-submitted.json +16 -0
  1497. package/dist/lib/schemas-data/3.0.1/media-buy/build-creative-async-response-working.json +36 -0
  1498. package/dist/lib/schemas-data/3.0.1/media-buy/build-creative-request.json +138 -0
  1499. package/dist/lib/schemas-data/3.0.1/media-buy/build-creative-response.json +293 -0
  1500. package/dist/lib/schemas-data/3.0.1/media-buy/create-media-buy-async-response-input-required.json +31 -0
  1501. package/dist/lib/schemas-data/3.0.1/media-buy/create-media-buy-async-response-submitted.json +16 -0
  1502. package/dist/lib/schemas-data/3.0.1/media-buy/create-media-buy-async-response-working.json +36 -0
  1503. package/dist/lib/schemas-data/3.0.1/media-buy/create-media-buy-request.json +221 -0
  1504. package/dist/lib/schemas-data/3.0.1/media-buy/create-media-buy-response.json +194 -0
  1505. package/dist/lib/schemas-data/3.0.1/media-buy/get-media-buy-delivery-request.json +205 -0
  1506. package/dist/lib/schemas-data/3.0.1/media-buy/get-media-buy-delivery-response.json +704 -0
  1507. package/dist/lib/schemas-data/3.0.1/media-buy/get-media-buys-request.json +66 -0
  1508. package/dist/lib/schemas-data/3.0.1/media-buy/get-media-buys-response.json +394 -0
  1509. package/dist/lib/schemas-data/3.0.1/media-buy/get-products-async-response-input-required.json +38 -0
  1510. package/dist/lib/schemas-data/3.0.1/media-buy/get-products-async-response-submitted.json +21 -0
  1511. package/dist/lib/schemas-data/3.0.1/media-buy/get-products-async-response-working.json +34 -0
  1512. package/dist/lib/schemas-data/3.0.1/media-buy/get-products-request.json +229 -0
  1513. package/dist/lib/schemas-data/3.0.1/media-buy/get-products-response.json +195 -0
  1514. package/dist/lib/schemas-data/3.0.1/media-buy/list-creative-formats-request.json +103 -0
  1515. package/dist/lib/schemas-data/3.0.1/media-buy/list-creative-formats-response.json +68 -0
  1516. package/dist/lib/schemas-data/3.0.1/media-buy/log-event-request.json +53 -0
  1517. package/dist/lib/schemas-data/3.0.1/media-buy/log-event-response.json +130 -0
  1518. package/dist/lib/schemas-data/3.0.1/media-buy/package-request.json +133 -0
  1519. package/dist/lib/schemas-data/3.0.1/media-buy/package-update.json +202 -0
  1520. package/dist/lib/schemas-data/3.0.1/media-buy/provide-performance-feedback-request.json +73 -0
  1521. package/dist/lib/schemas-data/3.0.1/media-buy/provide-performance-feedback-response.json +79 -0
  1522. package/dist/lib/schemas-data/3.0.1/media-buy/sync-audiences-request.json +127 -0
  1523. package/dist/lib/schemas-data/3.0.1/media-buy/sync-audiences-response.json +191 -0
  1524. package/dist/lib/schemas-data/3.0.1/media-buy/sync-catalogs-async-response-input-required.json +26 -0
  1525. package/dist/lib/schemas-data/3.0.1/media-buy/sync-catalogs-async-response-submitted.json +16 -0
  1526. package/dist/lib/schemas-data/3.0.1/media-buy/sync-catalogs-async-response-working.json +56 -0
  1527. package/dist/lib/schemas-data/3.0.1/media-buy/sync-catalogs-request.json +162 -0
  1528. package/dist/lib/schemas-data/3.0.1/media-buy/sync-catalogs-response.json +213 -0
  1529. package/dist/lib/schemas-data/3.0.1/media-buy/sync-event-sources-request.json +82 -0
  1530. package/dist/lib/schemas-data/3.0.1/media-buy/sync-event-sources-response.json +167 -0
  1531. package/dist/lib/schemas-data/3.0.1/media-buy/update-media-buy-async-response-input-required.json +24 -0
  1532. package/dist/lib/schemas-data/3.0.1/media-buy/update-media-buy-async-response-submitted.json +16 -0
  1533. package/dist/lib/schemas-data/3.0.1/media-buy/update-media-buy-async-response-working.json +36 -0
  1534. package/dist/lib/schemas-data/3.0.1/media-buy/update-media-buy-request.json +99 -0
  1535. package/dist/lib/schemas-data/3.0.1/media-buy/update-media-buy-response.json +119 -0
  1536. package/dist/lib/schemas-data/3.0.1/pricing-options/cpa-option.json +75 -0
  1537. package/dist/lib/schemas-data/3.0.1/pricing-options/cpc-option.json +71 -0
  1538. package/dist/lib/schemas-data/3.0.1/pricing-options/cpcv-option.json +71 -0
  1539. package/dist/lib/schemas-data/3.0.1/pricing-options/cpm-option.json +71 -0
  1540. package/dist/lib/schemas-data/3.0.1/pricing-options/cpp-option.json +90 -0
  1541. package/dist/lib/schemas-data/3.0.1/pricing-options/cpv-option.json +107 -0
  1542. package/dist/lib/schemas-data/3.0.1/pricing-options/flat-rate-option.json +116 -0
  1543. package/dist/lib/schemas-data/3.0.1/pricing-options/price-breakdown.json +88 -0
  1544. package/dist/lib/schemas-data/3.0.1/pricing-options/price-guidance.json +30 -0
  1545. package/dist/lib/schemas-data/3.0.1/pricing-options/time-option.json +97 -0
  1546. package/dist/lib/schemas-data/3.0.1/pricing-options/vcpm-option.json +71 -0
  1547. package/dist/lib/schemas-data/3.0.1/property/authorization-result.json +50 -0
  1548. package/dist/lib/schemas-data/3.0.1/property/base-property-source.json +98 -0
  1549. package/dist/lib/schemas-data/3.0.1/property/create-property-list-request.json +62 -0
  1550. package/dist/lib/schemas-data/3.0.1/property/create-property-list-response.json +33 -0
  1551. package/dist/lib/schemas-data/3.0.1/property/delete-property-list-request.json +43 -0
  1552. package/dist/lib/schemas-data/3.0.1/property/delete-property-list-response.json +34 -0
  1553. package/dist/lib/schemas-data/3.0.1/property/delivery-record.json +35 -0
  1554. package/dist/lib/schemas-data/3.0.1/property/get-property-list-request.json +57 -0
  1555. package/dist/lib/schemas-data/3.0.1/property/get-property-list-response.json +53 -0
  1556. package/dist/lib/schemas-data/3.0.1/property/list-property-lists-request.json +33 -0
  1557. package/dist/lib/schemas-data/3.0.1/property/list-property-lists-response.json +29 -0
  1558. package/dist/lib/schemas-data/3.0.1/property/property-error.json +34 -0
  1559. package/dist/lib/schemas-data/3.0.1/property/property-feature-definition.json +96 -0
  1560. package/dist/lib/schemas-data/3.0.1/property/property-feature-result.json +50 -0
  1561. package/dist/lib/schemas-data/3.0.1/property/property-feature-value.json +59 -0
  1562. package/dist/lib/schemas-data/3.0.1/property/property-feature.json +26 -0
  1563. package/dist/lib/schemas-data/3.0.1/property/property-list-changed-webhook.json +74 -0
  1564. package/dist/lib/schemas-data/3.0.1/property/property-list-filters.json +51 -0
  1565. package/dist/lib/schemas-data/3.0.1/property/property-list.json +79 -0
  1566. package/dist/lib/schemas-data/3.0.1/property/update-property-list-request.json +71 -0
  1567. package/dist/lib/schemas-data/3.0.1/property/update-property-list-response.json +28 -0
  1568. package/dist/lib/schemas-data/3.0.1/property/validate-property-delivery-request.json +49 -0
  1569. package/dist/lib/schemas-data/3.0.1/property/validate-property-delivery-response.json +180 -0
  1570. package/dist/lib/schemas-data/3.0.1/property/validation-result.json +101 -0
  1571. package/dist/lib/schemas-data/3.0.1/protocol/get-adcp-capabilities-request.json +37 -0
  1572. package/dist/lib/schemas-data/3.0.1/protocol/get-adcp-capabilities-response.json +1108 -0
  1573. package/dist/lib/schemas-data/3.0.1/signals/activate-signal-request.json +66 -0
  1574. package/dist/lib/schemas-data/3.0.1/signals/activate-signal-response.json +81 -0
  1575. package/dist/lib/schemas-data/3.0.1/signals/get-signals-request.json +80 -0
  1576. package/dist/lib/schemas-data/3.0.1/signals/get-signals-response.json +130 -0
  1577. package/dist/lib/schemas-data/3.0.1/sponsored-intelligence/si-capabilities.json +154 -0
  1578. package/dist/lib/schemas-data/3.0.1/sponsored-intelligence/si-get-offering-request.json +47 -0
  1579. package/dist/lib/schemas-data/3.0.1/sponsored-intelligence/si-get-offering-response.json +150 -0
  1580. package/dist/lib/schemas-data/3.0.1/sponsored-intelligence/si-identity.json +104 -0
  1581. package/dist/lib/schemas-data/3.0.1/sponsored-intelligence/si-initiate-session-request.json +65 -0
  1582. package/dist/lib/schemas-data/3.0.1/sponsored-intelligence/si-initiate-session-response.json +64 -0
  1583. package/dist/lib/schemas-data/3.0.1/sponsored-intelligence/si-send-message-request.json +71 -0
  1584. package/dist/lib/schemas-data/3.0.1/sponsored-intelligence/si-send-message-response.json +123 -0
  1585. package/dist/lib/schemas-data/3.0.1/sponsored-intelligence/si-terminate-session-request.json +77 -0
  1586. package/dist/lib/schemas-data/3.0.1/sponsored-intelligence/si-terminate-session-response.json +86 -0
  1587. package/dist/lib/schemas-data/3.0.1/sponsored-intelligence/si-ui-element.json +341 -0
  1588. package/dist/lib/server/a2a-adapter.d.ts +234 -0
  1589. package/dist/lib/server/a2a-adapter.d.ts.map +1 -0
  1590. package/dist/lib/server/a2a-adapter.js +503 -0
  1591. package/dist/lib/server/a2a-adapter.js.map +1 -0
  1592. package/dist/lib/server/adcp-server.d.ts +265 -0
  1593. package/dist/lib/server/adcp-server.d.ts.map +1 -0
  1594. package/dist/lib/server/adcp-server.js +187 -0
  1595. package/dist/lib/server/adcp-server.js.map +1 -0
  1596. package/dist/lib/server/auth-introspection.d.ts +83 -0
  1597. package/dist/lib/server/auth-introspection.d.ts.map +1 -0
  1598. package/dist/lib/server/auth-introspection.js +297 -0
  1599. package/dist/lib/server/auth-introspection.js.map +1 -0
  1600. package/dist/lib/server/auth-signature.d.ts +322 -0
  1601. package/dist/lib/server/auth-signature.d.ts.map +1 -0
  1602. package/dist/lib/server/auth-signature.js +310 -0
  1603. package/dist/lib/server/auth-signature.js.map +1 -0
  1604. package/dist/lib/server/auth.d.ts +303 -0
  1605. package/dist/lib/server/auth.d.ts.map +1 -0
  1606. package/dist/lib/server/auth.js +387 -0
  1607. package/dist/lib/server/auth.js.map +1 -0
  1608. package/dist/lib/server/create-adcp-server.d.ts +968 -0
  1609. package/dist/lib/server/create-adcp-server.d.ts.map +1 -0
  1610. package/dist/lib/server/create-adcp-server.js +1831 -0
  1611. package/dist/lib/server/create-adcp-server.js.map +1 -0
  1612. package/dist/lib/server/envelope-allowlist.d.ts +109 -0
  1613. package/dist/lib/server/envelope-allowlist.d.ts.map +1 -0
  1614. package/dist/lib/server/envelope-allowlist.js +155 -0
  1615. package/dist/lib/server/envelope-allowlist.js.map +1 -0
  1616. package/dist/lib/server/errors.d.ts +129 -0
  1617. package/dist/lib/server/errors.d.ts.map +1 -0
  1618. package/dist/lib/server/errors.js +85 -0
  1619. package/dist/lib/server/errors.js.map +1 -0
  1620. package/dist/lib/server/express-adapter.d.ts +169 -0
  1621. package/dist/lib/server/express-adapter.d.ts.map +1 -0
  1622. package/dist/lib/server/express-adapter.js +271 -0
  1623. package/dist/lib/server/express-adapter.js.map +1 -0
  1624. package/dist/lib/server/governance.d.ts +122 -0
  1625. package/dist/lib/server/governance.d.ts.map +1 -0
  1626. package/dist/lib/server/governance.js +189 -0
  1627. package/dist/lib/server/governance.js.map +1 -0
  1628. package/dist/lib/server/idempotency/backends/memory.d.ts +22 -0
  1629. package/dist/lib/server/idempotency/backends/memory.d.ts.map +1 -0
  1630. package/dist/lib/server/idempotency/backends/memory.js +78 -0
  1631. package/dist/lib/server/idempotency/backends/memory.js.map +1 -0
  1632. package/dist/lib/server/idempotency/backends/pg.d.ts +76 -0
  1633. package/dist/lib/server/idempotency/backends/pg.d.ts.map +1 -0
  1634. package/dist/lib/server/idempotency/backends/pg.js +163 -0
  1635. package/dist/lib/server/idempotency/backends/pg.js.map +1 -0
  1636. package/dist/lib/server/idempotency/index.d.ts +7 -0
  1637. package/dist/lib/server/idempotency/index.d.ts.map +1 -0
  1638. package/dist/lib/server/idempotency/index.js +15 -0
  1639. package/dist/lib/server/idempotency/index.js.map +1 -0
  1640. package/dist/lib/server/idempotency/store.d.ts +302 -0
  1641. package/dist/lib/server/idempotency/store.d.ts.map +1 -0
  1642. package/dist/lib/server/idempotency/store.js +272 -0
  1643. package/dist/lib/server/idempotency/store.js.map +1 -0
  1644. package/dist/lib/server/index.d.ts +50 -0
  1645. package/dist/lib/server/index.d.ts.map +1 -0
  1646. package/dist/lib/server/index.js +164 -0
  1647. package/dist/lib/server/index.js.map +1 -0
  1648. package/dist/lib/server/media-buy-helpers.d.ts +47 -0
  1649. package/dist/lib/server/media-buy-helpers.d.ts.map +1 -0
  1650. package/dist/lib/server/media-buy-helpers.js +43 -0
  1651. package/dist/lib/server/media-buy-helpers.js.map +1 -0
  1652. package/dist/lib/server/pin-and-bind-fetch.d.ts +115 -0
  1653. package/dist/lib/server/pin-and-bind-fetch.d.ts.map +1 -0
  1654. package/dist/lib/server/pin-and-bind-fetch.js +244 -0
  1655. package/dist/lib/server/pin-and-bind-fetch.js.map +1 -0
  1656. package/dist/lib/server/postgres-state-store.d.ts +76 -0
  1657. package/dist/lib/server/postgres-state-store.d.ts.map +1 -0
  1658. package/dist/lib/server/postgres-state-store.js +218 -0
  1659. package/dist/lib/server/postgres-state-store.js.map +1 -0
  1660. package/dist/lib/server/postgres-task-store.d.ts +121 -0
  1661. package/dist/lib/server/postgres-task-store.d.ts.map +1 -0
  1662. package/dist/lib/server/postgres-task-store.js +298 -0
  1663. package/dist/lib/server/postgres-task-store.js.map +1 -0
  1664. package/dist/lib/server/product-defaults.d.ts +16 -0
  1665. package/dist/lib/server/product-defaults.d.ts.map +1 -0
  1666. package/dist/lib/server/product-defaults.js +25 -0
  1667. package/dist/lib/server/product-defaults.js.map +1 -0
  1668. package/dist/lib/server/responses.d.ts +257 -0
  1669. package/dist/lib/server/responses.d.ts.map +1 -0
  1670. package/dist/lib/server/responses.js +542 -0
  1671. package/dist/lib/server/responses.js.map +1 -0
  1672. package/dist/lib/server/serve.d.ts +308 -0
  1673. package/dist/lib/server/serve.d.ts.map +1 -0
  1674. package/dist/lib/server/serve.js +663 -0
  1675. package/dist/lib/server/serve.js.map +1 -0
  1676. package/dist/lib/server/state-store.d.ts +296 -0
  1677. package/dist/lib/server/state-store.d.ts.map +1 -0
  1678. package/dist/lib/server/state-store.js +459 -0
  1679. package/dist/lib/server/state-store.js.map +1 -0
  1680. package/dist/lib/server/structured-serialize.d.ts +30 -0
  1681. package/dist/lib/server/structured-serialize.d.ts.map +1 -0
  1682. package/dist/lib/server/structured-serialize.js +109 -0
  1683. package/dist/lib/server/structured-serialize.js.map +1 -0
  1684. package/dist/lib/server/targeting-helpers.d.ts +90 -0
  1685. package/dist/lib/server/targeting-helpers.d.ts.map +1 -0
  1686. package/dist/lib/server/targeting-helpers.js +144 -0
  1687. package/dist/lib/server/targeting-helpers.js.map +1 -0
  1688. package/dist/lib/server/tasks.d.ts +91 -0
  1689. package/dist/lib/server/tasks.d.ts.map +1 -0
  1690. package/dist/lib/server/tasks.js +116 -0
  1691. package/dist/lib/server/tasks.js.map +1 -0
  1692. package/dist/lib/server/test-controller-bridge.d.ts +192 -0
  1693. package/dist/lib/server/test-controller-bridge.d.ts.map +1 -0
  1694. package/dist/lib/server/test-controller-bridge.js +207 -0
  1695. package/dist/lib/server/test-controller-bridge.js.map +1 -0
  1696. package/dist/lib/server/test-controller.d.ts +388 -0
  1697. package/dist/lib/server/test-controller.d.ts.map +1 -0
  1698. package/dist/lib/server/test-controller.js +735 -0
  1699. package/dist/lib/server/test-controller.js.map +1 -0
  1700. package/dist/lib/server/webhook-emitter.d.ts +192 -0
  1701. package/dist/lib/server/webhook-emitter.d.ts.map +1 -0
  1702. package/dist/lib/server/webhook-emitter.js +316 -0
  1703. package/dist/lib/server/webhook-emitter.js.map +1 -0
  1704. package/dist/lib/server/wrap-envelope.d.ts +162 -0
  1705. package/dist/lib/server/wrap-envelope.d.ts.map +1 -0
  1706. package/dist/lib/server/wrap-envelope.js +145 -0
  1707. package/dist/lib/server/wrap-envelope.js.map +1 -0
  1708. package/dist/lib/signing/agent-context.d.ts +73 -0
  1709. package/dist/lib/signing/agent-context.d.ts.map +1 -0
  1710. package/dist/lib/signing/agent-context.js +104 -0
  1711. package/dist/lib/signing/agent-context.js.map +1 -0
  1712. package/dist/lib/signing/agent-fetch.d.ts +177 -0
  1713. package/dist/lib/signing/agent-fetch.d.ts.map +1 -0
  1714. package/dist/lib/signing/agent-fetch.js +271 -0
  1715. package/dist/lib/signing/agent-fetch.js.map +1 -0
  1716. package/dist/lib/signing/brand-jwks.d.ts +102 -0
  1717. package/dist/lib/signing/brand-jwks.d.ts.map +1 -0
  1718. package/dist/lib/signing/brand-jwks.js +433 -0
  1719. package/dist/lib/signing/brand-jwks.js.map +1 -0
  1720. package/dist/lib/signing/canonicalize.d.ts +39 -0
  1721. package/dist/lib/signing/canonicalize.d.ts.map +1 -0
  1722. package/dist/lib/signing/canonicalize.js +149 -0
  1723. package/dist/lib/signing/canonicalize.js.map +1 -0
  1724. package/dist/lib/signing/capability-cache.d.ts +70 -0
  1725. package/dist/lib/signing/capability-cache.d.ts.map +1 -0
  1726. package/dist/lib/signing/capability-cache.js +90 -0
  1727. package/dist/lib/signing/capability-cache.js.map +1 -0
  1728. package/dist/lib/signing/capability-priming.d.ts +30 -0
  1729. package/dist/lib/signing/capability-priming.d.ts.map +1 -0
  1730. package/dist/lib/signing/capability-priming.js +145 -0
  1731. package/dist/lib/signing/capability-priming.js.map +1 -0
  1732. package/dist/lib/signing/client.d.ts +25 -0
  1733. package/dist/lib/signing/client.d.ts.map +1 -0
  1734. package/dist/lib/signing/client.js +70 -0
  1735. package/dist/lib/signing/client.js.map +1 -0
  1736. package/dist/lib/signing/content-digest.d.ts +9 -0
  1737. package/dist/lib/signing/content-digest.d.ts.map +1 -0
  1738. package/dist/lib/signing/content-digest.js +48 -0
  1739. package/dist/lib/signing/content-digest.js.map +1 -0
  1740. package/dist/lib/signing/crypto.d.ts +5 -0
  1741. package/dist/lib/signing/crypto.d.ts.map +1 -0
  1742. package/dist/lib/signing/crypto.js +35 -0
  1743. package/dist/lib/signing/crypto.js.map +1 -0
  1744. package/dist/lib/signing/ecdsa-encoding.d.ts +20 -0
  1745. package/dist/lib/signing/ecdsa-encoding.d.ts.map +1 -0
  1746. package/dist/lib/signing/ecdsa-encoding.js +91 -0
  1747. package/dist/lib/signing/ecdsa-encoding.js.map +1 -0
  1748. package/dist/lib/signing/errors.d.ts +49 -0
  1749. package/dist/lib/signing/errors.d.ts.map +1 -0
  1750. package/dist/lib/signing/errors.js +48 -0
  1751. package/dist/lib/signing/errors.js.map +1 -0
  1752. package/dist/lib/signing/fetch-async.d.ts +23 -0
  1753. package/dist/lib/signing/fetch-async.d.ts.map +1 -0
  1754. package/dist/lib/signing/fetch-async.js +96 -0
  1755. package/dist/lib/signing/fetch-async.js.map +1 -0
  1756. package/dist/lib/signing/fetch.d.ts +17 -0
  1757. package/dist/lib/signing/fetch.d.ts.map +1 -0
  1758. package/dist/lib/signing/fetch.js +89 -0
  1759. package/dist/lib/signing/fetch.js.map +1 -0
  1760. package/dist/lib/signing/index.d.ts +16 -0
  1761. package/dist/lib/signing/index.d.ts.map +1 -0
  1762. package/dist/lib/signing/index.js +32 -0
  1763. package/dist/lib/signing/index.js.map +1 -0
  1764. package/dist/lib/signing/jwks-helpers.d.ts +48 -0
  1765. package/dist/lib/signing/jwks-helpers.d.ts.map +1 -0
  1766. package/dist/lib/signing/jwks-helpers.js +87 -0
  1767. package/dist/lib/signing/jwks-helpers.js.map +1 -0
  1768. package/dist/lib/signing/jwks-https.d.ts +61 -0
  1769. package/dist/lib/signing/jwks-https.d.ts.map +1 -0
  1770. package/dist/lib/signing/jwks-https.js +165 -0
  1771. package/dist/lib/signing/jwks-https.js.map +1 -0
  1772. package/dist/lib/signing/jwks.d.ts +10 -0
  1773. package/dist/lib/signing/jwks.d.ts.map +1 -0
  1774. package/dist/lib/signing/jwks.js +15 -0
  1775. package/dist/lib/signing/jwks.js.map +1 -0
  1776. package/dist/lib/signing/middleware.d.ts +77 -0
  1777. package/dist/lib/signing/middleware.d.ts.map +1 -0
  1778. package/dist/lib/signing/middleware.js +77 -0
  1779. package/dist/lib/signing/middleware.js.map +1 -0
  1780. package/dist/lib/signing/parser.d.ts +35 -0
  1781. package/dist/lib/signing/parser.d.ts.map +1 -0
  1782. package/dist/lib/signing/parser.js +244 -0
  1783. package/dist/lib/signing/parser.js.map +1 -0
  1784. package/dist/lib/signing/postgres-replay-store.d.ts +138 -0
  1785. package/dist/lib/signing/postgres-replay-store.d.ts.map +1 -0
  1786. package/dist/lib/signing/postgres-replay-store.js +236 -0
  1787. package/dist/lib/signing/postgres-replay-store.js.map +1 -0
  1788. package/dist/lib/signing/provider.d.ts +81 -0
  1789. package/dist/lib/signing/provider.d.ts.map +1 -0
  1790. package/dist/lib/signing/provider.js +3 -0
  1791. package/dist/lib/signing/provider.js.map +1 -0
  1792. package/dist/lib/signing/replay.d.ts +62 -0
  1793. package/dist/lib/signing/replay.d.ts.map +1 -0
  1794. package/dist/lib/signing/replay.js +106 -0
  1795. package/dist/lib/signing/replay.js.map +1 -0
  1796. package/dist/lib/signing/revocation-https.d.ts +79 -0
  1797. package/dist/lib/signing/revocation-https.d.ts.map +1 -0
  1798. package/dist/lib/signing/revocation-https.js +144 -0
  1799. package/dist/lib/signing/revocation-https.js.map +1 -0
  1800. package/dist/lib/signing/revocation.d.ts +11 -0
  1801. package/dist/lib/signing/revocation.d.ts.map +1 -0
  1802. package/dist/lib/signing/revocation.js +18 -0
  1803. package/dist/lib/signing/revocation.js.map +1 -0
  1804. package/dist/lib/signing/server.d.ts +27 -0
  1805. package/dist/lib/signing/server.d.ts.map +1 -0
  1806. package/dist/lib/signing/server.js +67 -0
  1807. package/dist/lib/signing/server.js.map +1 -0
  1808. package/dist/lib/signing/signer-async.d.ts +24 -0
  1809. package/dist/lib/signing/signer-async.d.ts.map +1 -0
  1810. package/dist/lib/signing/signer-async.js +34 -0
  1811. package/dist/lib/signing/signer-async.js.map +1 -0
  1812. package/dist/lib/signing/signer.d.ts +94 -0
  1813. package/dist/lib/signing/signer.d.ts.map +1 -0
  1814. package/dist/lib/signing/signer.js +131 -0
  1815. package/dist/lib/signing/signer.js.map +1 -0
  1816. package/dist/lib/signing/testing.d.ts +45 -0
  1817. package/dist/lib/signing/testing.d.ts.map +1 -0
  1818. package/dist/lib/signing/testing.js +81 -0
  1819. package/dist/lib/signing/testing.js.map +1 -0
  1820. package/dist/lib/signing/types.d.ts +90 -0
  1821. package/dist/lib/signing/types.d.ts.map +1 -0
  1822. package/dist/lib/signing/types.js +9 -0
  1823. package/dist/lib/signing/types.js.map +1 -0
  1824. package/dist/lib/signing/verifier.d.ts +23 -0
  1825. package/dist/lib/signing/verifier.d.ts.map +1 -0
  1826. package/dist/lib/signing/verifier.js +386 -0
  1827. package/dist/lib/signing/verifier.js.map +1 -0
  1828. package/dist/lib/signing/webhook-verifier.d.ts +119 -0
  1829. package/dist/lib/signing/webhook-verifier.d.ts.map +1 -0
  1830. package/dist/lib/signing/webhook-verifier.js +292 -0
  1831. package/dist/lib/signing/webhook-verifier.js.map +1 -0
  1832. package/dist/lib/storage/MemoryStorage.d.ts +93 -0
  1833. package/dist/lib/storage/MemoryStorage.d.ts.map +1 -0
  1834. package/dist/lib/storage/MemoryStorage.js +219 -0
  1835. package/dist/lib/storage/MemoryStorage.js.map +1 -0
  1836. package/dist/lib/storage/interfaces.d.ts +195 -0
  1837. package/dist/lib/storage/interfaces.d.ts.map +1 -0
  1838. package/dist/lib/storage/interfaces.js +5 -0
  1839. package/dist/lib/storage/interfaces.js.map +1 -0
  1840. package/dist/lib/substitution/encoder/SubstitutionEncoder.d.ts +45 -0
  1841. package/dist/lib/substitution/encoder/SubstitutionEncoder.d.ts.map +1 -0
  1842. package/dist/lib/substitution/encoder/SubstitutionEncoder.js +73 -0
  1843. package/dist/lib/substitution/encoder/SubstitutionEncoder.js.map +1 -0
  1844. package/dist/lib/substitution/encoder/index.d.ts +2 -0
  1845. package/dist/lib/substitution/encoder/index.d.ts.map +1 -0
  1846. package/dist/lib/substitution/encoder/index.js +7 -0
  1847. package/dist/lib/substitution/encoder/index.js.map +1 -0
  1848. package/dist/lib/substitution/index.d.ts +36 -0
  1849. package/dist/lib/substitution/index.d.ts.map +1 -0
  1850. package/dist/lib/substitution/index.js +56 -0
  1851. package/dist/lib/substitution/index.js.map +1 -0
  1852. package/dist/lib/substitution/observer/SubstitutionObserver.d.ts +91 -0
  1853. package/dist/lib/substitution/observer/SubstitutionObserver.d.ts.map +1 -0
  1854. package/dist/lib/substitution/observer/SubstitutionObserver.js +248 -0
  1855. package/dist/lib/substitution/observer/SubstitutionObserver.js.map +1 -0
  1856. package/dist/lib/substitution/observer/alignment.d.ts +24 -0
  1857. package/dist/lib/substitution/observer/alignment.d.ts.map +1 -0
  1858. package/dist/lib/substitution/observer/alignment.js +279 -0
  1859. package/dist/lib/substitution/observer/alignment.js.map +1 -0
  1860. package/dist/lib/substitution/observer/assertions.d.ts +48 -0
  1861. package/dist/lib/substitution/observer/assertions.d.ts.map +1 -0
  1862. package/dist/lib/substitution/observer/assertions.js +145 -0
  1863. package/dist/lib/substitution/observer/assertions.js.map +1 -0
  1864. package/dist/lib/substitution/observer/html-parser.d.ts +29 -0
  1865. package/dist/lib/substitution/observer/html-parser.d.ts.map +1 -0
  1866. package/dist/lib/substitution/observer/html-parser.js +308 -0
  1867. package/dist/lib/substitution/observer/html-parser.js.map +1 -0
  1868. package/dist/lib/substitution/observer/index.d.ts +7 -0
  1869. package/dist/lib/substitution/observer/index.d.ts.map +1 -0
  1870. package/dist/lib/substitution/observer/index.js +21 -0
  1871. package/dist/lib/substitution/observer/index.js.map +1 -0
  1872. package/dist/lib/substitution/observer/ssrf.d.ts +29 -0
  1873. package/dist/lib/substitution/observer/ssrf.d.ts.map +1 -0
  1874. package/dist/lib/substitution/observer/ssrf.js +226 -0
  1875. package/dist/lib/substitution/observer/ssrf.js.map +1 -0
  1876. package/dist/lib/substitution/rfc3986.d.ts +51 -0
  1877. package/dist/lib/substitution/rfc3986.d.ts.map +1 -0
  1878. package/dist/lib/substitution/rfc3986.js +139 -0
  1879. package/dist/lib/substitution/rfc3986.js.map +1 -0
  1880. package/dist/lib/substitution/types.d.ts +147 -0
  1881. package/dist/lib/substitution/types.d.ts.map +1 -0
  1882. package/dist/lib/substitution/types.js +8 -0
  1883. package/dist/lib/substitution/types.js.map +1 -0
  1884. package/dist/lib/substitution/vectors.d.ts +18 -0
  1885. package/dist/lib/substitution/vectors.d.ts.map +1 -0
  1886. package/dist/lib/substitution/vectors.js +79 -0
  1887. package/dist/lib/substitution/vectors.js.map +1 -0
  1888. package/dist/lib/testing/agent-tester.d.ts +34 -0
  1889. package/dist/lib/testing/agent-tester.d.ts.map +1 -0
  1890. package/dist/lib/testing/agent-tester.js +421 -0
  1891. package/dist/lib/testing/agent-tester.js.map +1 -0
  1892. package/dist/lib/testing/client.d.ts +104 -0
  1893. package/dist/lib/testing/client.d.ts.map +1 -0
  1894. package/dist/lib/testing/client.js +487 -0
  1895. package/dist/lib/testing/client.js.map +1 -0
  1896. package/dist/lib/testing/compliance/briefs.d.ts +11 -0
  1897. package/dist/lib/testing/compliance/briefs.d.ts.map +1 -0
  1898. package/dist/lib/testing/compliance/briefs.js +156 -0
  1899. package/dist/lib/testing/compliance/briefs.js.map +1 -0
  1900. package/dist/lib/testing/compliance/comply.d.ts +83 -0
  1901. package/dist/lib/testing/compliance/comply.d.ts.map +1 -0
  1902. package/dist/lib/testing/compliance/comply.js +1275 -0
  1903. package/dist/lib/testing/compliance/comply.js.map +1 -0
  1904. package/dist/lib/testing/compliance/index.d.ts +10 -0
  1905. package/dist/lib/testing/compliance/index.d.ts.map +1 -0
  1906. package/dist/lib/testing/compliance/index.js +18 -0
  1907. package/dist/lib/testing/compliance/index.js.map +1 -0
  1908. package/dist/lib/testing/compliance/storyboard-tracks.d.ts +17 -0
  1909. package/dist/lib/testing/compliance/storyboard-tracks.d.ts.map +1 -0
  1910. package/dist/lib/testing/compliance/storyboard-tracks.js +147 -0
  1911. package/dist/lib/testing/compliance/storyboard-tracks.js.map +1 -0
  1912. package/dist/lib/testing/compliance/types.d.ts +145 -0
  1913. package/dist/lib/testing/compliance/types.d.ts.map +1 -0
  1914. package/dist/lib/testing/compliance/types.js +6 -0
  1915. package/dist/lib/testing/compliance/types.js.map +1 -0
  1916. package/dist/lib/testing/comply-controller.d.ts +193 -0
  1917. package/dist/lib/testing/comply-controller.d.ts.map +1 -0
  1918. package/dist/lib/testing/comply-controller.js +199 -0
  1919. package/dist/lib/testing/comply-controller.js.map +1 -0
  1920. package/dist/lib/testing/controller-assertions.d.ts +67 -0
  1921. package/dist/lib/testing/controller-assertions.d.ts.map +1 -0
  1922. package/dist/lib/testing/controller-assertions.js +60 -0
  1923. package/dist/lib/testing/controller-assertions.js.map +1 -0
  1924. package/dist/lib/testing/formatter.d.ts +17 -0
  1925. package/dist/lib/testing/formatter.d.ts.map +1 -0
  1926. package/dist/lib/testing/formatter.js +92 -0
  1927. package/dist/lib/testing/formatter.js.map +1 -0
  1928. package/dist/lib/testing/index.d.ts +19 -0
  1929. package/dist/lib/testing/index.d.ts.map +1 -0
  1930. package/dist/lib/testing/index.js +185 -0
  1931. package/dist/lib/testing/index.js.map +1 -0
  1932. package/dist/lib/testing/local-agent-runner.d.ts +189 -0
  1933. package/dist/lib/testing/local-agent-runner.d.ts.map +1 -0
  1934. package/dist/lib/testing/local-agent-runner.js +290 -0
  1935. package/dist/lib/testing/local-agent-runner.js.map +1 -0
  1936. package/dist/lib/testing/orchestrator.d.ts +70 -0
  1937. package/dist/lib/testing/orchestrator.d.ts.map +1 -0
  1938. package/dist/lib/testing/orchestrator.js +278 -0
  1939. package/dist/lib/testing/orchestrator.js.map +1 -0
  1940. package/dist/lib/testing/scenarios/brand-rights.d.ts +41 -0
  1941. package/dist/lib/testing/scenarios/brand-rights.d.ts.map +1 -0
  1942. package/dist/lib/testing/scenarios/brand-rights.js +278 -0
  1943. package/dist/lib/testing/scenarios/brand-rights.js.map +1 -0
  1944. package/dist/lib/testing/scenarios/capabilities.d.ts +27 -0
  1945. package/dist/lib/testing/scenarios/capabilities.d.ts.map +1 -0
  1946. package/dist/lib/testing/scenarios/capabilities.js +332 -0
  1947. package/dist/lib/testing/scenarios/capabilities.js.map +1 -0
  1948. package/dist/lib/testing/scenarios/creative.d.ts +38 -0
  1949. package/dist/lib/testing/scenarios/creative.d.ts.map +1 -0
  1950. package/dist/lib/testing/scenarios/creative.js +429 -0
  1951. package/dist/lib/testing/scenarios/creative.js.map +1 -0
  1952. package/dist/lib/testing/scenarios/deterministic.d.ts +37 -0
  1953. package/dist/lib/testing/scenarios/deterministic.d.ts.map +1 -0
  1954. package/dist/lib/testing/scenarios/deterministic.js +705 -0
  1955. package/dist/lib/testing/scenarios/deterministic.js.map +1 -0
  1956. package/dist/lib/testing/scenarios/discovery.d.ts +15 -0
  1957. package/dist/lib/testing/scenarios/discovery.d.ts.map +1 -0
  1958. package/dist/lib/testing/scenarios/discovery.js +68 -0
  1959. package/dist/lib/testing/scenarios/discovery.js.map +1 -0
  1960. package/dist/lib/testing/scenarios/edge-cases.d.ts +64 -0
  1961. package/dist/lib/testing/scenarios/edge-cases.d.ts.map +1 -0
  1962. package/dist/lib/testing/scenarios/edge-cases.js +569 -0
  1963. package/dist/lib/testing/scenarios/edge-cases.js.map +1 -0
  1964. package/dist/lib/testing/scenarios/error-compliance.d.ts +30 -0
  1965. package/dist/lib/testing/scenarios/error-compliance.d.ts.map +1 -0
  1966. package/dist/lib/testing/scenarios/error-compliance.js +372 -0
  1967. package/dist/lib/testing/scenarios/error-compliance.js.map +1 -0
  1968. package/dist/lib/testing/scenarios/governance.d.ts +114 -0
  1969. package/dist/lib/testing/scenarios/governance.d.ts.map +1 -0
  1970. package/dist/lib/testing/scenarios/governance.js +1619 -0
  1971. package/dist/lib/testing/scenarios/governance.js.map +1 -0
  1972. package/dist/lib/testing/scenarios/health.d.ts +12 -0
  1973. package/dist/lib/testing/scenarios/health.d.ts.map +1 -0
  1974. package/dist/lib/testing/scenarios/health.js +21 -0
  1975. package/dist/lib/testing/scenarios/health.js.map +1 -0
  1976. package/dist/lib/testing/scenarios/index.d.ts +20 -0
  1977. package/dist/lib/testing/scenarios/index.d.ts.map +1 -0
  1978. package/dist/lib/testing/scenarios/index.js +96 -0
  1979. package/dist/lib/testing/scenarios/index.js.map +1 -0
  1980. package/dist/lib/testing/scenarios/media-buy.d.ts +128 -0
  1981. package/dist/lib/testing/scenarios/media-buy.d.ts.map +1 -0
  1982. package/dist/lib/testing/scenarios/media-buy.js +1655 -0
  1983. package/dist/lib/testing/scenarios/media-buy.js.map +1 -0
  1984. package/dist/lib/testing/scenarios/schema-compliance.d.ts +17 -0
  1985. package/dist/lib/testing/scenarios/schema-compliance.d.ts.map +1 -0
  1986. package/dist/lib/testing/scenarios/schema-compliance.js +194 -0
  1987. package/dist/lib/testing/scenarios/schema-compliance.js.map +1 -0
  1988. package/dist/lib/testing/scenarios/signals.d.ts +22 -0
  1989. package/dist/lib/testing/scenarios/signals.d.ts.map +1 -0
  1990. package/dist/lib/testing/scenarios/signals.js +221 -0
  1991. package/dist/lib/testing/scenarios/signals.js.map +1 -0
  1992. package/dist/lib/testing/scenarios/sponsored-intelligence.d.ts +45 -0
  1993. package/dist/lib/testing/scenarios/sponsored-intelligence.d.ts.map +1 -0
  1994. package/dist/lib/testing/scenarios/sponsored-intelligence.js +554 -0
  1995. package/dist/lib/testing/scenarios/sponsored-intelligence.js.map +1 -0
  1996. package/dist/lib/testing/scenarios/trusted-match.d.ts +22 -0
  1997. package/dist/lib/testing/scenarios/trusted-match.d.ts.map +1 -0
  1998. package/dist/lib/testing/scenarios/trusted-match.js +128 -0
  1999. package/dist/lib/testing/scenarios/trusted-match.js.map +1 -0
  2000. package/dist/lib/testing/seed-merge.d.ts +150 -0
  2001. package/dist/lib/testing/seed-merge.d.ts.map +1 -0
  2002. package/dist/lib/testing/seed-merge.js +315 -0
  2003. package/dist/lib/testing/seed-merge.js.map +1 -0
  2004. package/dist/lib/testing/storyboard/assertions.d.ts +148 -0
  2005. package/dist/lib/testing/storyboard/assertions.d.ts.map +1 -0
  2006. package/dist/lib/testing/storyboard/assertions.js +270 -0
  2007. package/dist/lib/testing/storyboard/assertions.js.map +1 -0
  2008. package/dist/lib/testing/storyboard/compliance.d.ts +166 -0
  2009. package/dist/lib/testing/storyboard/compliance.d.ts.map +1 -0
  2010. package/dist/lib/testing/storyboard/compliance.js +434 -0
  2011. package/dist/lib/testing/storyboard/compliance.js.map +1 -0
  2012. package/dist/lib/testing/storyboard/context.d.ts +124 -0
  2013. package/dist/lib/testing/storyboard/context.d.ts.map +1 -0
  2014. package/dist/lib/testing/storyboard/context.js +560 -0
  2015. package/dist/lib/testing/storyboard/context.js.map +1 -0
  2016. package/dist/lib/testing/storyboard/default-invariants.d.ts +36 -0
  2017. package/dist/lib/testing/storyboard/default-invariants.d.ts.map +1 -0
  2018. package/dist/lib/testing/storyboard/default-invariants.js +882 -0
  2019. package/dist/lib/testing/storyboard/default-invariants.js.map +1 -0
  2020. package/dist/lib/testing/storyboard/index.d.ts +34 -0
  2021. package/dist/lib/testing/storyboard/index.d.ts.map +1 -0
  2022. package/dist/lib/testing/storyboard/index.js +110 -0
  2023. package/dist/lib/testing/storyboard/index.js.map +1 -0
  2024. package/dist/lib/testing/storyboard/junit.d.ts +2 -0
  2025. package/dist/lib/testing/storyboard/junit.d.ts.map +1 -0
  2026. package/dist/lib/testing/storyboard/junit.js +104 -0
  2027. package/dist/lib/testing/storyboard/junit.js.map +1 -0
  2028. package/dist/lib/testing/storyboard/loader.d.ts +28 -0
  2029. package/dist/lib/testing/storyboard/loader.d.ts.map +1 -0
  2030. package/dist/lib/testing/storyboard/loader.js +194 -0
  2031. package/dist/lib/testing/storyboard/loader.js.map +1 -0
  2032. package/dist/lib/testing/storyboard/path.d.ts +76 -0
  2033. package/dist/lib/testing/storyboard/path.d.ts.map +1 -0
  2034. package/dist/lib/testing/storyboard/path.js +258 -0
  2035. package/dist/lib/testing/storyboard/path.js.map +1 -0
  2036. package/dist/lib/testing/storyboard/probes.d.ts +148 -0
  2037. package/dist/lib/testing/storyboard/probes.d.ts.map +1 -0
  2038. package/dist/lib/testing/storyboard/probes.js +402 -0
  2039. package/dist/lib/testing/storyboard/probes.js.map +1 -0
  2040. package/dist/lib/testing/storyboard/rejection-hints.d.ts +41 -0
  2041. package/dist/lib/testing/storyboard/rejection-hints.d.ts.map +1 -0
  2042. package/dist/lib/testing/storyboard/rejection-hints.js +344 -0
  2043. package/dist/lib/testing/storyboard/rejection-hints.js.map +1 -0
  2044. package/dist/lib/testing/storyboard/request-builder.d.ts +35 -0
  2045. package/dist/lib/testing/storyboard/request-builder.d.ts.map +1 -0
  2046. package/dist/lib/testing/storyboard/request-builder.js +845 -0
  2047. package/dist/lib/testing/storyboard/request-builder.js.map +1 -0
  2048. package/dist/lib/testing/storyboard/request-signing/builder.d.ts +60 -0
  2049. package/dist/lib/testing/storyboard/request-signing/builder.d.ts.map +1 -0
  2050. package/dist/lib/testing/storyboard/request-signing/builder.js +462 -0
  2051. package/dist/lib/testing/storyboard/request-signing/builder.js.map +1 -0
  2052. package/dist/lib/testing/storyboard/request-signing/grader.d.ts +166 -0
  2053. package/dist/lib/testing/storyboard/request-signing/grader.d.ts.map +1 -0
  2054. package/dist/lib/testing/storyboard/request-signing/grader.js +517 -0
  2055. package/dist/lib/testing/storyboard/request-signing/grader.js.map +1 -0
  2056. package/dist/lib/testing/storyboard/request-signing/index.d.ts +38 -0
  2057. package/dist/lib/testing/storyboard/request-signing/index.d.ts.map +1 -0
  2058. package/dist/lib/testing/storyboard/request-signing/index.js +62 -0
  2059. package/dist/lib/testing/storyboard/request-signing/index.js.map +1 -0
  2060. package/dist/lib/testing/storyboard/request-signing/probe-dispatch.d.ts +10 -0
  2061. package/dist/lib/testing/storyboard/request-signing/probe-dispatch.d.ts.map +1 -0
  2062. package/dist/lib/testing/storyboard/request-signing/probe-dispatch.js +81 -0
  2063. package/dist/lib/testing/storyboard/request-signing/probe-dispatch.js.map +1 -0
  2064. package/dist/lib/testing/storyboard/request-signing/probe.d.ts +41 -0
  2065. package/dist/lib/testing/storyboard/request-signing/probe.d.ts.map +1 -0
  2066. package/dist/lib/testing/storyboard/request-signing/probe.js +220 -0
  2067. package/dist/lib/testing/storyboard/request-signing/probe.js.map +1 -0
  2068. package/dist/lib/testing/storyboard/request-signing/synthesize.d.ts +28 -0
  2069. package/dist/lib/testing/storyboard/request-signing/synthesize.d.ts.map +1 -0
  2070. package/dist/lib/testing/storyboard/request-signing/synthesize.js +79 -0
  2071. package/dist/lib/testing/storyboard/request-signing/synthesize.js.map +1 -0
  2072. package/dist/lib/testing/storyboard/request-signing/test-kit.d.ts +42 -0
  2073. package/dist/lib/testing/storyboard/request-signing/test-kit.d.ts.map +1 -0
  2074. package/dist/lib/testing/storyboard/request-signing/test-kit.js +101 -0
  2075. package/dist/lib/testing/storyboard/request-signing/test-kit.js.map +1 -0
  2076. package/dist/lib/testing/storyboard/request-signing/types.d.ts +72 -0
  2077. package/dist/lib/testing/storyboard/request-signing/types.d.ts.map +1 -0
  2078. package/dist/lib/testing/storyboard/request-signing/types.js +6 -0
  2079. package/dist/lib/testing/storyboard/request-signing/types.js.map +1 -0
  2080. package/dist/lib/testing/storyboard/request-signing/vector-loader.d.ts +16 -0
  2081. package/dist/lib/testing/storyboard/request-signing/vector-loader.d.ts.map +1 -0
  2082. package/dist/lib/testing/storyboard/request-signing/vector-loader.js +242 -0
  2083. package/dist/lib/testing/storyboard/request-signing/vector-loader.js.map +1 -0
  2084. package/dist/lib/testing/storyboard/runner.d.ts +141 -0
  2085. package/dist/lib/testing/storyboard/runner.d.ts.map +1 -0
  2086. package/dist/lib/testing/storyboard/runner.js +2349 -0
  2087. package/dist/lib/testing/storyboard/runner.js.map +1 -0
  2088. package/dist/lib/testing/storyboard/sandbox-entities.d.ts +56 -0
  2089. package/dist/lib/testing/storyboard/sandbox-entities.d.ts.map +1 -0
  2090. package/dist/lib/testing/storyboard/sandbox-entities.js +222 -0
  2091. package/dist/lib/testing/storyboard/sandbox-entities.js.map +1 -0
  2092. package/dist/lib/testing/storyboard/seeding.d.ts +72 -0
  2093. package/dist/lib/testing/storyboard/seeding.d.ts.map +1 -0
  2094. package/dist/lib/testing/storyboard/seeding.js +282 -0
  2095. package/dist/lib/testing/storyboard/seeding.js.map +1 -0
  2096. package/dist/lib/testing/storyboard/shape-drift-hints.d.ts +54 -0
  2097. package/dist/lib/testing/storyboard/shape-drift-hints.d.ts.map +1 -0
  2098. package/dist/lib/testing/storyboard/shape-drift-hints.js +200 -0
  2099. package/dist/lib/testing/storyboard/shape-drift-hints.js.map +1 -0
  2100. package/dist/lib/testing/storyboard/signer-grader/grader.d.ts +56 -0
  2101. package/dist/lib/testing/storyboard/signer-grader/grader.d.ts.map +1 -0
  2102. package/dist/lib/testing/storyboard/signer-grader/grader.js +270 -0
  2103. package/dist/lib/testing/storyboard/signer-grader/grader.js.map +1 -0
  2104. package/dist/lib/testing/storyboard/signer-grader/index.d.ts +3 -0
  2105. package/dist/lib/testing/storyboard/signer-grader/index.d.ts.map +1 -0
  2106. package/dist/lib/testing/storyboard/signer-grader/index.js +6 -0
  2107. package/dist/lib/testing/storyboard/signer-grader/index.js.map +1 -0
  2108. package/dist/lib/testing/storyboard/signer-grader/types.d.ts +62 -0
  2109. package/dist/lib/testing/storyboard/signer-grader/types.d.ts.map +1 -0
  2110. package/dist/lib/testing/storyboard/signer-grader/types.js +3 -0
  2111. package/dist/lib/testing/storyboard/signer-grader/types.js.map +1 -0
  2112. package/dist/lib/testing/storyboard/strict-validation-hints.d.ts +28 -0
  2113. package/dist/lib/testing/storyboard/strict-validation-hints.d.ts.map +1 -0
  2114. package/dist/lib/testing/storyboard/strict-validation-hints.js +128 -0
  2115. package/dist/lib/testing/storyboard/strict-validation-hints.js.map +1 -0
  2116. package/dist/lib/testing/storyboard/task-map.d.ts +25 -0
  2117. package/dist/lib/testing/storyboard/task-map.d.ts.map +1 -0
  2118. package/dist/lib/testing/storyboard/task-map.js +130 -0
  2119. package/dist/lib/testing/storyboard/task-map.js.map +1 -0
  2120. package/dist/lib/testing/storyboard/test-kit.d.ts +52 -0
  2121. package/dist/lib/testing/storyboard/test-kit.d.ts.map +1 -0
  2122. package/dist/lib/testing/storyboard/test-kit.js +93 -0
  2123. package/dist/lib/testing/storyboard/test-kit.js.map +1 -0
  2124. package/dist/lib/testing/storyboard/types.d.ts +1404 -0
  2125. package/dist/lib/testing/storyboard/types.d.ts.map +1 -0
  2126. package/dist/lib/testing/storyboard/types.js +35 -0
  2127. package/dist/lib/testing/storyboard/types.js.map +1 -0
  2128. package/dist/lib/testing/storyboard/validations.d.ts +103 -0
  2129. package/dist/lib/testing/storyboard/validations.d.ts.map +1 -0
  2130. package/dist/lib/testing/storyboard/validations.js +1729 -0
  2131. package/dist/lib/testing/storyboard/validations.js.map +1 -0
  2132. package/dist/lib/testing/storyboard/webhook-assertions.d.ts +62 -0
  2133. package/dist/lib/testing/storyboard/webhook-assertions.d.ts.map +1 -0
  2134. package/dist/lib/testing/storyboard/webhook-assertions.js +538 -0
  2135. package/dist/lib/testing/storyboard/webhook-assertions.js.map +1 -0
  2136. package/dist/lib/testing/storyboard/webhook-receiver.d.ts +104 -0
  2137. package/dist/lib/testing/storyboard/webhook-receiver.d.ts.map +1 -0
  2138. package/dist/lib/testing/storyboard/webhook-receiver.js +402 -0
  2139. package/dist/lib/testing/storyboard/webhook-receiver.js.map +1 -0
  2140. package/dist/lib/testing/stubs/governance-agent-stub.d.ts +72 -0
  2141. package/dist/lib/testing/stubs/governance-agent-stub.d.ts.map +1 -0
  2142. package/dist/lib/testing/stubs/governance-agent-stub.js +297 -0
  2143. package/dist/lib/testing/stubs/governance-agent-stub.js.map +1 -0
  2144. package/dist/lib/testing/stubs/index.d.ts +3 -0
  2145. package/dist/lib/testing/stubs/index.d.ts.map +1 -0
  2146. package/dist/lib/testing/stubs/index.js +6 -0
  2147. package/dist/lib/testing/stubs/index.js.map +1 -0
  2148. package/dist/lib/testing/test-controller.d.ts +46 -0
  2149. package/dist/lib/testing/test-controller.d.ts.map +1 -0
  2150. package/dist/lib/testing/test-controller.js +143 -0
  2151. package/dist/lib/testing/test-controller.js.map +1 -0
  2152. package/dist/lib/testing/test-helpers.d.ts +213 -0
  2153. package/dist/lib/testing/test-helpers.d.ts.map +1 -0
  2154. package/dist/lib/testing/test-helpers.js +250 -0
  2155. package/dist/lib/testing/test-helpers.js.map +1 -0
  2156. package/dist/lib/testing/types.d.ts +222 -0
  2157. package/dist/lib/testing/types.d.ts.map +1 -0
  2158. package/dist/lib/testing/types.js +6 -0
  2159. package/dist/lib/testing/types.js.map +1 -0
  2160. package/dist/lib/types/adcp.d.ts +625 -0
  2161. package/dist/lib/types/adcp.d.ts.map +1 -0
  2162. package/dist/lib/types/adcp.js +20 -0
  2163. package/dist/lib/types/adcp.js.map +1 -0
  2164. package/dist/lib/types/asset-instances.d.ts +32 -0
  2165. package/dist/lib/types/asset-instances.d.ts.map +1 -0
  2166. package/dist/lib/types/asset-instances.js +24 -0
  2167. package/dist/lib/types/asset-instances.js.map +1 -0
  2168. package/dist/lib/types/compat.d.ts +105 -0
  2169. package/dist/lib/types/compat.d.ts.map +1 -0
  2170. package/dist/lib/types/compat.js +52 -0
  2171. package/dist/lib/types/compat.js.map +1 -0
  2172. package/dist/lib/types/core.generated.d.ts +15973 -0
  2173. package/dist/lib/types/core.generated.d.ts.map +1 -0
  2174. package/dist/lib/types/core.generated.js +5 -0
  2175. package/dist/lib/types/core.generated.js.map +1 -0
  2176. package/dist/lib/types/enums.generated.d.ts +139 -0
  2177. package/dist/lib/types/enums.generated.d.ts.map +1 -0
  2178. package/dist/lib/types/enums.generated.js +158 -0
  2179. package/dist/lib/types/enums.generated.js.map +1 -0
  2180. package/dist/lib/types/error-codes.d.ts +32 -0
  2181. package/dist/lib/types/error-codes.d.ts.map +1 -0
  2182. package/dist/lib/types/error-codes.js +146 -0
  2183. package/dist/lib/types/error-codes.js.map +1 -0
  2184. package/dist/lib/types/format-asset-slots.d.ts +117 -0
  2185. package/dist/lib/types/format-asset-slots.d.ts.map +1 -0
  2186. package/dist/lib/types/format-asset-slots.js +20 -0
  2187. package/dist/lib/types/format-asset-slots.js.map +1 -0
  2188. package/dist/lib/types/index.d.ts +20 -0
  2189. package/dist/lib/types/index.d.ts.map +1 -0
  2190. package/dist/lib/types/index.js +48 -0
  2191. package/dist/lib/types/index.js.map +1 -0
  2192. package/dist/lib/types/inline-enums.aliases.d.ts +53 -0
  2193. package/dist/lib/types/inline-enums.aliases.d.ts.map +1 -0
  2194. package/dist/lib/types/inline-enums.aliases.js +73 -0
  2195. package/dist/lib/types/inline-enums.aliases.js.map +1 -0
  2196. package/dist/lib/types/inline-enums.generated.d.ts +157 -0
  2197. package/dist/lib/types/inline-enums.generated.d.ts.map +1 -0
  2198. package/dist/lib/types/inline-enums.generated.js +239 -0
  2199. package/dist/lib/types/inline-enums.generated.js.map +1 -0
  2200. package/dist/lib/types/schemas.generated.d.ts +46531 -0
  2201. package/dist/lib/types/schemas.generated.d.ts.map +1 -0
  2202. package/dist/lib/types/schemas.generated.js +5867 -0
  2203. package/dist/lib/types/schemas.generated.js.map +1 -0
  2204. package/dist/lib/types/sync-rows.d.ts +37 -0
  2205. package/dist/lib/types/sync-rows.d.ts.map +1 -0
  2206. package/dist/lib/types/sync-rows.js +21 -0
  2207. package/dist/lib/types/sync-rows.js.map +1 -0
  2208. package/dist/lib/types/tools.generated.d.ts +13423 -0
  2209. package/dist/lib/types/tools.generated.d.ts.map +1 -0
  2210. package/dist/lib/types/tools.generated.js +5 -0
  2211. package/dist/lib/types/tools.generated.js.map +1 -0
  2212. package/dist/lib/types/wellknown-schemas.generated.d.ts +1363 -0
  2213. package/dist/lib/types/wellknown-schemas.generated.d.ts.map +1 -0
  2214. package/dist/lib/types/wellknown-schemas.generated.js +14 -0
  2215. package/dist/lib/types/wellknown-schemas.generated.js.map +1 -0
  2216. package/dist/lib/utils/a2a-discovery.d.ts +42 -0
  2217. package/dist/lib/utils/a2a-discovery.d.ts.map +1 -0
  2218. package/dist/lib/utils/a2a-discovery.js +68 -0
  2219. package/dist/lib/utils/a2a-discovery.js.map +1 -0
  2220. package/dist/lib/utils/adcp-version-config.d.ts +11 -0
  2221. package/dist/lib/utils/adcp-version-config.d.ts.map +1 -0
  2222. package/dist/lib/utils/adcp-version-config.js +44 -0
  2223. package/dist/lib/utils/adcp-version-config.js.map +1 -0
  2224. package/dist/lib/utils/asset-builders.d.ts +44 -0
  2225. package/dist/lib/utils/asset-builders.d.ts.map +1 -0
  2226. package/dist/lib/utils/asset-builders.js +84 -0
  2227. package/dist/lib/utils/asset-builders.js.map +1 -0
  2228. package/dist/lib/utils/capabilities.d.ts +259 -0
  2229. package/dist/lib/utils/capabilities.d.ts.map +1 -0
  2230. package/dist/lib/utils/capabilities.js +463 -0
  2231. package/dist/lib/utils/capabilities.js.map +1 -0
  2232. package/dist/lib/utils/creative-adapter.d.ts +91 -0
  2233. package/dist/lib/utils/creative-adapter.d.ts.map +1 -0
  2234. package/dist/lib/utils/creative-adapter.js +156 -0
  2235. package/dist/lib/utils/creative-adapter.js.map +1 -0
  2236. package/dist/lib/utils/deprecation.d.ts +11 -0
  2237. package/dist/lib/utils/deprecation.d.ts.map +1 -0
  2238. package/dist/lib/utils/deprecation.js +23 -0
  2239. package/dist/lib/utils/deprecation.js.map +1 -0
  2240. package/dist/lib/utils/error-extraction.d.ts +43 -0
  2241. package/dist/lib/utils/error-extraction.d.ts.map +1 -0
  2242. package/dist/lib/utils/error-extraction.js +225 -0
  2243. package/dist/lib/utils/error-extraction.js.map +1 -0
  2244. package/dist/lib/utils/extract-result.d.ts +45 -0
  2245. package/dist/lib/utils/extract-result.d.ts.map +1 -0
  2246. package/dist/lib/utils/extract-result.js +27 -0
  2247. package/dist/lib/utils/extract-result.js.map +1 -0
  2248. package/dist/lib/utils/format-asset-slot-builders.d.ts +76 -0
  2249. package/dist/lib/utils/format-asset-slot-builders.d.ts.map +1 -0
  2250. package/dist/lib/utils/format-asset-slot-builders.js +174 -0
  2251. package/dist/lib/utils/format-asset-slot-builders.js.map +1 -0
  2252. package/dist/lib/utils/format-assets.d.ts +100 -0
  2253. package/dist/lib/utils/format-assets.d.ts.map +1 -0
  2254. package/dist/lib/utils/format-assets.js +147 -0
  2255. package/dist/lib/utils/format-assets.js.map +1 -0
  2256. package/dist/lib/utils/format-render-builders.d.ts +76 -0
  2257. package/dist/lib/utils/format-render-builders.d.ts.map +1 -0
  2258. package/dist/lib/utils/format-render-builders.js +76 -0
  2259. package/dist/lib/utils/format-render-builders.js.map +1 -0
  2260. package/dist/lib/utils/format-renders.d.ts +96 -0
  2261. package/dist/lib/utils/format-renders.d.ts.map +1 -0
  2262. package/dist/lib/utils/format-renders.js +141 -0
  2263. package/dist/lib/utils/format-renders.js.map +1 -0
  2264. package/dist/lib/utils/idempotency.d.ts +96 -0
  2265. package/dist/lib/utils/idempotency.d.ts.map +1 -0
  2266. package/dist/lib/utils/idempotency.js +156 -0
  2267. package/dist/lib/utils/idempotency.js.map +1 -0
  2268. package/dist/lib/utils/index.d.ts +39 -0
  2269. package/dist/lib/utils/index.d.ts.map +1 -0
  2270. package/dist/lib/utils/index.js +196 -0
  2271. package/dist/lib/utils/index.js.map +1 -0
  2272. package/dist/lib/utils/jcs.d.ts +30 -0
  2273. package/dist/lib/utils/jcs.d.ts.map +1 -0
  2274. package/dist/lib/utils/jcs.js +167 -0
  2275. package/dist/lib/utils/jcs.js.map +1 -0
  2276. package/dist/lib/utils/logger.d.ts +55 -0
  2277. package/dist/lib/utils/logger.d.ts.map +1 -0
  2278. package/dist/lib/utils/logger.js +100 -0
  2279. package/dist/lib/utils/logger.js.map +1 -0
  2280. package/dist/lib/utils/pagination.d.ts +31 -0
  2281. package/dist/lib/utils/pagination.d.ts.map +1 -0
  2282. package/dist/lib/utils/pagination.js +51 -0
  2283. package/dist/lib/utils/pagination.js.map +1 -0
  2284. package/dist/lib/utils/preview-normalizer.d.ts +109 -0
  2285. package/dist/lib/utils/preview-normalizer.d.ts.map +1 -0
  2286. package/dist/lib/utils/preview-normalizer.js +122 -0
  2287. package/dist/lib/utils/preview-normalizer.js.map +1 -0
  2288. package/dist/lib/utils/preview-utils.d.ts +87 -0
  2289. package/dist/lib/utils/preview-utils.d.ts.map +1 -0
  2290. package/dist/lib/utils/preview-utils.js +340 -0
  2291. package/dist/lib/utils/preview-utils.js.map +1 -0
  2292. package/dist/lib/utils/pricing-adapter.d.ts +144 -0
  2293. package/dist/lib/utils/pricing-adapter.d.ts.map +1 -0
  2294. package/dist/lib/utils/pricing-adapter.js +322 -0
  2295. package/dist/lib/utils/pricing-adapter.js.map +1 -0
  2296. package/dist/lib/utils/protocol-detection.d.ts +26 -0
  2297. package/dist/lib/utils/protocol-detection.d.ts.map +1 -0
  2298. package/dist/lib/utils/protocol-detection.js +62 -0
  2299. package/dist/lib/utils/protocol-detection.js.map +1 -0
  2300. package/dist/lib/utils/render-builders.d.ts +41 -0
  2301. package/dist/lib/utils/render-builders.d.ts.map +1 -0
  2302. package/dist/lib/utils/render-builders.js +52 -0
  2303. package/dist/lib/utils/render-builders.js.map +1 -0
  2304. package/dist/lib/utils/request-normalizer.d.ts +26 -0
  2305. package/dist/lib/utils/request-normalizer.d.ts.map +1 -0
  2306. package/dist/lib/utils/request-normalizer.js +175 -0
  2307. package/dist/lib/utils/request-normalizer.js.map +1 -0
  2308. package/dist/lib/utils/response-schemas.d.ts +9 -0
  2309. package/dist/lib/utils/response-schemas.d.ts.map +1 -0
  2310. package/dist/lib/utils/response-schemas.js +129 -0
  2311. package/dist/lib/utils/response-schemas.js.map +1 -0
  2312. package/dist/lib/utils/response-unwrapper.d.ts +54 -0
  2313. package/dist/lib/utils/response-unwrapper.d.ts.map +1 -0
  2314. package/dist/lib/utils/response-unwrapper.js +406 -0
  2315. package/dist/lib/utils/response-unwrapper.js.map +1 -0
  2316. package/dist/lib/utils/retry.d.ts +15 -0
  2317. package/dist/lib/utils/retry.d.ts.map +1 -0
  2318. package/dist/lib/utils/retry.js +22 -0
  2319. package/dist/lib/utils/retry.js.map +1 -0
  2320. package/dist/lib/utils/sync-creatives-adapter.d.ts +18 -0
  2321. package/dist/lib/utils/sync-creatives-adapter.d.ts.map +1 -0
  2322. package/dist/lib/utils/sync-creatives-adapter.js +46 -0
  2323. package/dist/lib/utils/sync-creatives-adapter.js.map +1 -0
  2324. package/dist/lib/utils/tool-request-schemas.d.ts +15 -0
  2325. package/dist/lib/utils/tool-request-schemas.d.ts.map +1 -0
  2326. package/dist/lib/utils/tool-request-schemas.js +129 -0
  2327. package/dist/lib/utils/tool-request-schemas.js.map +1 -0
  2328. package/dist/lib/utils/typeGuards.d.ts +147 -0
  2329. package/dist/lib/utils/typeGuards.d.ts.map +1 -0
  2330. package/dist/lib/utils/typeGuards.js +240 -0
  2331. package/dist/lib/utils/typeGuards.js.map +1 -0
  2332. package/dist/lib/utils/union-errors.d.ts +20 -0
  2333. package/dist/lib/utils/union-errors.d.ts.map +1 -0
  2334. package/dist/lib/utils/union-errors.js +38 -0
  2335. package/dist/lib/utils/union-errors.js.map +1 -0
  2336. package/dist/lib/utils/validate-user-agent.d.ts +8 -0
  2337. package/dist/lib/utils/validate-user-agent.d.ts.map +1 -0
  2338. package/dist/lib/utils/validate-user-agent.js +15 -0
  2339. package/dist/lib/utils/validate-user-agent.js.map +1 -0
  2340. package/dist/lib/validation/client-hooks.d.ts +49 -0
  2341. package/dist/lib/validation/client-hooks.d.ts.map +1 -0
  2342. package/dist/lib/validation/client-hooks.js +82 -0
  2343. package/dist/lib/validation/client-hooks.js.map +1 -0
  2344. package/dist/lib/validation/index.d.ts +37 -0
  2345. package/dist/lib/validation/index.d.ts.map +1 -0
  2346. package/dist/lib/validation/index.js +202 -0
  2347. package/dist/lib/validation/index.js.map +1 -0
  2348. package/dist/lib/validation/schema-errors.d.ts +67 -0
  2349. package/dist/lib/validation/schema-errors.d.ts.map +1 -0
  2350. package/dist/lib/validation/schema-errors.js +75 -0
  2351. package/dist/lib/validation/schema-errors.js.map +1 -0
  2352. package/dist/lib/validation/schema-loader.d.ts +24 -0
  2353. package/dist/lib/validation/schema-loader.d.ts.map +1 -0
  2354. package/dist/lib/validation/schema-loader.js +315 -0
  2355. package/dist/lib/validation/schema-loader.js.map +1 -0
  2356. package/dist/lib/validation/schema-validator.d.ts +83 -0
  2357. package/dist/lib/validation/schema-validator.d.ts.map +1 -0
  2358. package/dist/lib/validation/schema-validator.js +142 -0
  2359. package/dist/lib/validation/schema-validator.js.map +1 -0
  2360. package/dist/lib/validation/sync-creatives.d.ts +327 -0
  2361. package/dist/lib/validation/sync-creatives.d.ts.map +1 -0
  2362. package/dist/lib/validation/sync-creatives.js +72 -0
  2363. package/dist/lib/validation/sync-creatives.js.map +1 -0
  2364. package/dist/lib/version.d.ts +63 -0
  2365. package/dist/lib/version.d.ts.map +1 -0
  2366. package/dist/lib/version.js +85 -0
  2367. package/dist/lib/version.js.map +1 -0
  2368. package/docs/README.md +42 -0
  2369. package/docs/guides/BUILD-AN-AGENT.md +632 -0
  2370. package/docs/llms.txt +1197 -0
  2371. package/examples/README.md +117 -0
  2372. package/examples/adcp.config.json +30 -0
  2373. package/examples/basic-a2a.ts +76 -0
  2374. package/examples/basic-mcp.ts +50 -0
  2375. package/examples/batch-preview-test.ts +266 -0
  2376. package/examples/comply-controller-seller.ts +146 -0
  2377. package/examples/conversation-client.ts +291 -0
  2378. package/examples/debug-preview-response.ts +73 -0
  2379. package/examples/debug-preview-with-logging.ts +50 -0
  2380. package/examples/easy-config-demo.ts +242 -0
  2381. package/examples/env-config.ts +51 -0
  2382. package/examples/error-compliant-server.ts +241 -0
  2383. package/examples/gcp-kms-signing-provider.ts +281 -0
  2384. package/examples/generative-creative-demo.ts +196 -0
  2385. package/examples/inspect-card-formats.ts +161 -0
  2386. package/examples/logger-usage.ts +165 -0
  2387. package/examples/oauth-cli-example.ts +154 -0
  2388. package/examples/pr78-async-patterns-demo.ts +247 -0
  2389. package/examples/seller-test-controller.ts +320 -0
  2390. package/examples/signals-agent.ts +201 -0
  2391. package/examples/simple-getting-started.ts +225 -0
  2392. package/examples/simple-protocol-demo.ts +75 -0
  2393. package/examples/test-helpers-demo.ts +239 -0
  2394. package/examples/zod-validation-example.ts +126 -0
  2395. package/package.json +313 -0
  2396. package/skills/adcp/SKILL.md +326 -0
  2397. package/skills/adcp-brand/SKILL.md +202 -0
  2398. package/skills/adcp-brand.previous/SKILL.md +202 -0
  2399. package/skills/adcp-creative/SKILL.md +301 -0
  2400. package/skills/adcp-creative.previous/SKILL.md +301 -0
  2401. package/skills/adcp-governance/SKILL.md +566 -0
  2402. package/skills/adcp-governance.previous/SKILL.md +566 -0
  2403. package/skills/adcp-media-buy/SKILL.md +446 -0
  2404. package/skills/adcp-media-buy.previous/SKILL.md +446 -0
  2405. package/skills/adcp-si/SKILL.md +206 -0
  2406. package/skills/adcp-si.previous/SKILL.md +206 -0
  2407. package/skills/adcp-signals/SKILL.md +204 -0
  2408. package/skills/adcp-signals.previous/SKILL.md +204 -0
  2409. package/skills/build-brand-rights-agent/SKILL.md +528 -0
  2410. package/skills/build-creative-agent/SKILL.md +824 -0
  2411. package/skills/build-generative-seller-agent/SKILL.md +579 -0
  2412. package/skills/build-governance-agent/SKILL.md +966 -0
  2413. package/skills/build-retail-media-agent/SKILL.md +488 -0
  2414. package/skills/build-seller-agent/SKILL.md +1407 -0
  2415. package/skills/build-seller-agent/deployment.md +407 -0
  2416. package/skills/build-seller-agent/specialisms/audience-sync.md +63 -0
  2417. package/skills/build-seller-agent/specialisms/sales-broadcast-tv.md +71 -0
  2418. package/skills/build-seller-agent/specialisms/sales-guaranteed.md +67 -0
  2419. package/skills/build-seller-agent/specialisms/sales-non-guaranteed.md +39 -0
  2420. package/skills/build-seller-agent/specialisms/sales-proposal-mode.md +51 -0
  2421. package/skills/build-seller-agent/specialisms/sales-social.md +30 -0
  2422. package/skills/build-seller-agent/specialisms/signed-requests.md +89 -0
  2423. package/skills/build-si-agent/SKILL.md +347 -0
  2424. package/skills/build-signals-agent/SKILL.md +527 -0
  2425. package/skills/call-adcp-agent/SKILL.md +255 -0
  2426. package/skills/call-adcp-agent.previous/SKILL.md +255 -0
@@ -0,0 +1,1831 @@
1
+ "use strict";
2
+ /**
3
+ * Declarative AdCP server builder.
4
+ *
5
+ * `createAdcpServer` wires domain-grouped handler functions to Zod input
6
+ * schemas, response builders, and account resolution.
7
+ * Handlers only run when preconditions pass. `get_adcp_capabilities` is
8
+ * auto-generated from the tools you register.
9
+ *
10
+ * For governance on financial tools (create_media_buy, update_media_buy,
11
+ * activate_signal), use the composable `checkGovernance()` helper inside
12
+ * your handler — see `governance.ts`.
13
+ *
14
+ * @example
15
+ * ```typescript
16
+ * import { createAdcpServer, serve } from '@adcp/sdk/server';
17
+ *
18
+ * serve(() => createAdcpServer({
19
+ * name: 'My Publisher',
20
+ * version: '1.0.0',
21
+ *
22
+ * // Second argument carries `toolName` and (when `authenticate` is wired
23
+ * // on `serve()`) the caller's `authInfo`. Adapters that front an
24
+ * // upstream platform API can use the caller's token here to resolve
25
+ * // the platform account in one pass.
26
+ * resolveAccount: async (ref, { authInfo }) => db.findAccount(ref, authInfo),
27
+ *
28
+ * mediaBuy: {
29
+ * getProducts: async (params, ctx) => ({ products: catalog.search(params) }),
30
+ * createMediaBuy: async (params, ctx) => ({
31
+ * media_buy_id: `mb_${Date.now()}`,
32
+ * packages: [],
33
+ * }),
34
+ * },
35
+ * }));
36
+ * ```
37
+ */
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.ADCP_SIGNED_REQUESTS_STATE = exports.ADCP_PRE_TRANSPORT = void 0;
40
+ exports.requireSessionKey = requireSessionKey;
41
+ exports.createAdcpServer = createAdcpServer;
42
+ const zod_1 = require("zod");
43
+ const adcp_version_config_1 = require("../utils/adcp-version-config");
44
+ const adcp_server_1 = require("./adcp-server");
45
+ const tasks_1 = require("./tasks");
46
+ const errors_1 = require("./errors");
47
+ const envelope_allowlist_1 = require("./envelope-allowlist");
48
+ const state_store_1 = require("./state-store");
49
+ const responses_1 = require("./responses");
50
+ const tool_request_schemas_1 = require("../utils/tool-request-schemas");
51
+ // NOTE on `outputSchema`: the MCP SDK's client-side `callTool` validates
52
+ // `result.structuredContent` against the registered `outputSchema`
53
+ // whenever structuredContent is present — regardless of `isError`. See
54
+ // `node_modules/@modelcontextprotocol/sdk/dist/esm/client/index.js` line
55
+ // 504. AdCP's `adcpError()` envelope carries
56
+ // `structuredContent: { adcp_error: {...} }` with `isError: true`, which
57
+ // would fail every client-side outputSchema check (the error shape
58
+ // doesn't match the success schema). Until the SDK gates that client
59
+ // check on `!isError` too, we do not declare `outputSchema` on
60
+ // framework-registered tools — response drift is caught by the
61
+ // dispatcher's AJV validator (#727) instead, and custom tools opt in
62
+ // explicitly via `customTools[*].outputSchema`.
63
+ function hasIdempotencyClearAll(store) {
64
+ // `clearAll` is optional on `IdempotencyStore` — only present when the
65
+ // configured backend opts in (memory backend does; pg backend does not).
66
+ return typeof store.clearAll === 'function';
67
+ }
68
+ const idempotency_1 = require("../utils/idempotency");
69
+ const schema_validator_1 = require("../validation/schema-validator");
70
+ const schema_errors_1 = require("../validation/schema-errors");
71
+ const webhook_emitter_1 = require("./webhook-emitter");
72
+ const middleware_1 = require("../signing/middleware");
73
+ const test_controller_bridge_1 = require("./test-controller-bridge");
74
+ const version_1 = require("../version");
75
+ const capabilities_1 = require("../utils/capabilities");
76
+ const noopLogger = {
77
+ debug() { },
78
+ info() { },
79
+ warn() { },
80
+ error() { },
81
+ };
82
+ /**
83
+ * Narrow `ctx.sessionKey` from `string | undefined` to `string`. Use this in
84
+ * handlers that require session scoping so you don't litter `!` assertions:
85
+ *
86
+ * ```ts
87
+ * const sessionKey = requireSessionKey(ctx);
88
+ * const sessionStore = scopedStore(ctx.store, sessionKey);
89
+ * ```
90
+ *
91
+ * Throws a `SERVICE_UNAVAILABLE`-style error if `sessionKey` is missing — typically
92
+ * meaning `resolveSessionKey` isn't configured or returned `undefined` for this tool.
93
+ */
94
+ function requireSessionKey(ctx) {
95
+ if (ctx.sessionKey == null) {
96
+ throw new Error('ctx.sessionKey is undefined. Configure resolveSessionKey on createAdcpServer, or guard per-tool before calling requireSessionKey.');
97
+ }
98
+ return ctx.sessionKey;
99
+ }
100
+ /**
101
+ * Symbol under which `createAdcpServer` attaches the auto-wired `preTransport`
102
+ * function to the returned `McpServer`. `serve()` reads this symbol to mount
103
+ * the verifier. Consumers typically don't need to touch it; it's exported for
104
+ * tests and for downstream frameworks that want the same wiring.
105
+ */
106
+ exports.ADCP_PRE_TRANSPORT = Symbol.for('@adcp/client.preTransport');
107
+ /**
108
+ * Symbol under which `createAdcpServer` attaches the `AdcpSignedRequestsState`
109
+ * snapshot. Use `server[ADCP_SIGNED_REQUESTS_STATE]` to inspect wiring from
110
+ * tests or boot diagnostics.
111
+ */
112
+ exports.ADCP_SIGNED_REQUESTS_STATE = Symbol.for('@adcp/client.signedRequestsState');
113
+ /**
114
+ * Clamp idempotency replay TTL to spec bounds (1h–7d).
115
+ */
116
+ function clampReplayTtl(seconds) {
117
+ const MIN = 3600;
118
+ const MAX = 604800;
119
+ if (!Number.isFinite(seconds) || seconds < MIN)
120
+ return MIN;
121
+ if (seconds > MAX)
122
+ return MAX;
123
+ return Math.floor(seconds);
124
+ }
125
+ /**
126
+ * Deep-merge the per-domain blocks from `overrides` onto `target`. Nested
127
+ * objects merge recursively; arrays and primitives replace. `null` at the
128
+ * top-level field explicitly drops the block; `undefined` is a no-op.
129
+ */
130
+ function applyCapabilityOverrides(target, overrides) {
131
+ const targetAny = target;
132
+ for (const [key, value] of Object.entries(overrides)) {
133
+ if (value === undefined)
134
+ continue;
135
+ if (value === null) {
136
+ delete targetAny[key];
137
+ continue;
138
+ }
139
+ targetAny[key] = deepMergePlainObjects(targetAny[key], value);
140
+ }
141
+ }
142
+ function isPlainObject(v) {
143
+ if (v === null || typeof v !== 'object')
144
+ return false;
145
+ if (Array.isArray(v))
146
+ return false;
147
+ const proto = Object.getPrototypeOf(v);
148
+ return proto === Object.prototype || proto === null;
149
+ }
150
+ function deepMergePlainObjects(target, source) {
151
+ if (source === undefined)
152
+ return target;
153
+ if (source === null)
154
+ return null;
155
+ if (!isPlainObject(source))
156
+ return source;
157
+ if (!isPlainObject(target))
158
+ return { ...source };
159
+ const out = { ...target };
160
+ for (const [k, v] of Object.entries(source)) {
161
+ if (v === undefined)
162
+ continue;
163
+ if (v === null) {
164
+ delete out[k];
165
+ continue;
166
+ }
167
+ out[k] = deepMergePlainObjects(out[k], v);
168
+ }
169
+ return out;
170
+ }
171
+ /**
172
+ * Stamp `replayed: true` on the response envelope for replay paths only.
173
+ * `protocol-envelope.json` permits the field to be "omitted when the
174
+ * request was executed fresh" — fresh-path responses therefore carry no
175
+ * `replayed` field, and the field's presence implies `true`. Buyers read
176
+ * the field to distinguish cached replays from new executions for billing
177
+ * and audit.
178
+ *
179
+ * Mirrors the marker into both L3 `structuredContent` and the L2
180
+ * `content[0].text` JSON fallback so A2A/REST adapters that consume the
181
+ * text body see the same envelope MCP does — matching the lockstep
182
+ * pattern in `injectContextIntoResponse` / `sanitizeAdcpErrorEnvelope`.
183
+ */
184
+ function stampReplayed(response) {
185
+ if (!response.structuredContent || typeof response.structuredContent !== 'object')
186
+ return;
187
+ const sc = response.structuredContent;
188
+ sc.replayed = true;
189
+ if (Array.isArray(response.content)) {
190
+ const first = response.content[0];
191
+ if (first && first.type === 'text' && typeof first.text === 'string') {
192
+ try {
193
+ const parsed = JSON.parse(first.text);
194
+ if (parsed && typeof parsed === 'object') {
195
+ parsed.replayed = true;
196
+ first.text = JSON.stringify(parsed);
197
+ }
198
+ }
199
+ catch {
200
+ // Text isn't JSON — leave it alone (implausible for AdCP responses).
201
+ }
202
+ }
203
+ }
204
+ }
205
+ /**
206
+ * Remove per-request echo fields (`context`) from a formatted MCP response
207
+ * before caching. The buyer's `correlation_id` is scoped to the individual
208
+ * retry attempt and must not be baked into the cached envelope — replays
209
+ * need to echo back the CURRENT retry's context, not the first caller's.
210
+ * Other fields (media_buy_id, status, timestamps) are part of the pinned
211
+ * response and stay put.
212
+ */
213
+ function stripEnvelopeEcho(response) {
214
+ const cloned = cloneFormattedResponse(response);
215
+ if (cloned.structuredContent && typeof cloned.structuredContent === 'object') {
216
+ const sc = cloned.structuredContent;
217
+ delete sc.context;
218
+ }
219
+ if (Array.isArray(cloned.content)) {
220
+ for (const item of cloned.content) {
221
+ if (item && item.type === 'text' && typeof item.text === 'string') {
222
+ try {
223
+ const parsed = JSON.parse(item.text);
224
+ if (parsed && typeof parsed === 'object') {
225
+ delete parsed.context;
226
+ item.text = JSON.stringify(parsed);
227
+ }
228
+ }
229
+ catch {
230
+ // Text isn't JSON — leave it alone
231
+ }
232
+ }
233
+ }
234
+ }
235
+ return cloned;
236
+ }
237
+ /**
238
+ * Shallow-clone a formatted MCP response so callers can mutate envelope
239
+ * fields (`replayed`, echo-back `context`) without stomping on the cache
240
+ * entry. The backend returns a fresh object (memory clones, pg
241
+ * serializes) but re-wrapping via `wrap()` can still alias pieces of the
242
+ * handler's return value — belt-and-suspenders against mutation leaks.
243
+ */
244
+ function cloneFormattedResponse(response) {
245
+ const cloned = { ...response };
246
+ if (cloned.structuredContent && typeof cloned.structuredContent === 'object') {
247
+ cloned.structuredContent = { ...cloned.structuredContent };
248
+ }
249
+ if (Array.isArray(cloned.content)) {
250
+ cloned.content = cloned.content.map(item => ({ ...item }));
251
+ }
252
+ return cloned;
253
+ }
254
+ /**
255
+ * Detect whether a formatted MCP response represents a failure. Failures
256
+ * are NOT cached — a retry should re-execute rather than replay a
257
+ * transient error. Checks all three shapes the framework emits:
258
+ * `isError: true`, `structuredContent.adcp_error`, or envelope
259
+ * `status: 'failed'` (the envelope example in the spec for failed async
260
+ * tasks doesn't always include `adcp_error`).
261
+ */
262
+ function isErrorResponse(response) {
263
+ if (response.isError === true)
264
+ return true;
265
+ const sc = response.structuredContent;
266
+ if (sc && typeof sc === 'object') {
267
+ if ('adcp_error' in sc)
268
+ return true;
269
+ const status = sc.status;
270
+ if (status === 'failed' || status === 'canceled' || status === 'rejected')
271
+ return true;
272
+ }
273
+ return false;
274
+ }
275
+ /**
276
+ * Detect a thrown `adcpError(...)` envelope. Handlers that `throw` an
277
+ * envelope (instead of `return`-ing it) would otherwise surface as
278
+ * `[object Object]` inside a SERVICE_UNAVAILABLE wrapper — the dispatcher
279
+ * unwraps and returns the envelope directly when the shape matches.
280
+ */
281
+ function isThrownAdcpError(value) {
282
+ if (!value || typeof value !== 'object')
283
+ return false;
284
+ const sc = value.structuredContent;
285
+ if (!sc || typeof sc !== 'object')
286
+ return false;
287
+ const env = sc.adcp_error;
288
+ if (!env || typeof env !== 'object')
289
+ return false;
290
+ // `adcpError()` guarantees both `code` and `message` as strings — assert
291
+ // both so a malformed envelope throw doesn't produce a half-formed
292
+ // response. Also rules out MCP SDK `McpError` (numeric `code`) and any
293
+ // other thrown object with a coincidentally-shaped sub-tree.
294
+ if (typeof env.code !== 'string')
295
+ return false;
296
+ if (typeof env.message !== 'string')
297
+ return false;
298
+ return Array.isArray(value.content) && value.isError === true;
299
+ }
300
+ /**
301
+ * Resolve the extra scope segment for tools with per-session semantics.
302
+ *
303
+ * For `si_send_message`, the request `session_id` enters the scope so
304
+ * the same idempotency_key used across two sessions doesn't false-replay
305
+ * (or false-conflict) across them. Other tools return `undefined` and
306
+ * use the default `(principal, key)` scope.
307
+ */
308
+ function resolveExtraScope(toolName, params) {
309
+ if (toolName === 'si_send_message') {
310
+ const sessionId = params.session_id;
311
+ return typeof sessionId === 'string' && sessionId.length > 0 ? sessionId : undefined;
312
+ }
313
+ return undefined;
314
+ }
315
+ function genericResponse(toolName, data, summary) {
316
+ return {
317
+ content: [{ type: 'text', text: summary ?? `${toolName} completed` }],
318
+ structuredContent: (0, responses_1.toStructuredContent)(data),
319
+ };
320
+ }
321
+ function wrapBuildCreative(data, summary) {
322
+ if ('creative_manifests' in data) {
323
+ return (0, responses_1.buildCreativeMultiResponse)(data, summary);
324
+ }
325
+ return (0, responses_1.buildCreativeResponse)(data, summary);
326
+ }
327
+ // Shorthand annotation constants
328
+ const RO = { readOnlyHint: true };
329
+ const MUT = { readOnlyHint: false, destructiveHint: false };
330
+ const DEST = { readOnlyHint: false, destructiveHint: true };
331
+ const IDEMP = { readOnlyHint: false, idempotentHint: true };
332
+ // Passthrough schema for every framework-registered tool (#909). See
333
+ // the comment at the registerTool call sites for rationale — short
334
+ // version: makes our AJV validator authoritative on both transports
335
+ // without destroying args on MCP when the SDK's tool dispatcher would
336
+ // otherwise coerce `undefined` into the handler for schemaless tools.
337
+ // This also keeps `tools/list` payloads small for LLM consumers (full
338
+ // schemas live in `docs/llms.txt`, SKILL.md files, and `schemas/cache/`).
339
+ const PASSTHROUGH_INPUT_SCHEMA = zod_1.z.object({}).passthrough();
340
+ const TOOL_META = {
341
+ // Media Buy
342
+ get_products: { wrap: responses_1.productsResponse, annotations: RO },
343
+ create_media_buy: { wrap: responses_1.mediaBuyResponse, annotations: MUT },
344
+ update_media_buy: { wrap: responses_1.updateMediaBuyResponse, annotations: MUT },
345
+ get_media_buys: { wrap: responses_1.getMediaBuysResponse, annotations: RO },
346
+ get_media_buy_delivery: { wrap: responses_1.deliveryResponse, annotations: RO },
347
+ provide_performance_feedback: { wrap: responses_1.performanceFeedbackResponse, annotations: MUT },
348
+ // Creative
349
+ list_creative_formats: { wrap: responses_1.listCreativeFormatsResponse, annotations: RO },
350
+ build_creative: { wrap: wrapBuildCreative, annotations: MUT },
351
+ preview_creative: { wrap: null, annotations: RO },
352
+ get_creative_delivery: { wrap: responses_1.creativeDeliveryResponse, annotations: RO },
353
+ list_creatives: { wrap: responses_1.listCreativesResponse, annotations: RO },
354
+ sync_creatives: { wrap: responses_1.syncCreativesResponse, annotations: IDEMP },
355
+ // Signals
356
+ get_signals: { wrap: responses_1.getSignalsResponse, annotations: RO },
357
+ activate_signal: { wrap: responses_1.activateSignalResponse, annotations: MUT },
358
+ // Accounts
359
+ list_accounts: { wrap: responses_1.listAccountsResponse, annotations: RO },
360
+ sync_accounts: { wrap: responses_1.syncAccountsResponse, annotations: IDEMP },
361
+ sync_governance: { wrap: responses_1.syncGovernanceResponse, annotations: IDEMP },
362
+ get_account_financials: { wrap: null, annotations: RO },
363
+ report_usage: { wrap: responses_1.reportUsageResponse, annotations: MUT },
364
+ // Event Tracking
365
+ sync_event_sources: { wrap: null, annotations: IDEMP },
366
+ log_event: { wrap: null, annotations: MUT },
367
+ // Audiences & Catalogs
368
+ sync_audiences: { wrap: null, annotations: IDEMP },
369
+ sync_catalogs: { wrap: null, annotations: IDEMP },
370
+ // Governance - Property Lists
371
+ create_property_list: { wrap: null, annotations: MUT },
372
+ update_property_list: { wrap: null, annotations: MUT },
373
+ get_property_list: { wrap: null, annotations: RO },
374
+ list_property_lists: { wrap: null, annotations: RO },
375
+ delete_property_list: { wrap: null, annotations: DEST },
376
+ // Governance - Content Standards
377
+ list_content_standards: { wrap: null, annotations: RO },
378
+ get_content_standards: { wrap: null, annotations: RO },
379
+ create_content_standards: { wrap: null, annotations: MUT },
380
+ update_content_standards: { wrap: null, annotations: MUT },
381
+ calibrate_content: { wrap: null, annotations: MUT },
382
+ validate_content_delivery: { wrap: null, annotations: RO },
383
+ get_media_buy_artifacts: { wrap: null, annotations: RO },
384
+ // Governance - Campaign
385
+ get_creative_features: { wrap: null, annotations: RO },
386
+ sync_plans: { wrap: null, annotations: IDEMP },
387
+ check_governance: { wrap: null, annotations: RO },
388
+ report_plan_outcome: { wrap: null, annotations: MUT },
389
+ get_plan_audit_logs: { wrap: null, annotations: RO },
390
+ // Sponsored Intelligence
391
+ si_get_offering: { wrap: null, annotations: RO },
392
+ si_initiate_session: { wrap: null, annotations: MUT },
393
+ si_send_message: { wrap: null, annotations: MUT },
394
+ si_terminate_session: { wrap: null, annotations: DEST },
395
+ // Brand Rights
396
+ get_brand_identity: { wrap: null, annotations: RO },
397
+ get_rights: { wrap: null, annotations: RO },
398
+ acquire_rights: { wrap: responses_1.acquireRightsResponse, annotations: MUT },
399
+ };
400
+ const MEDIA_BUY_ENTRIES = [
401
+ { handlerKey: 'getProducts', toolName: 'get_products' },
402
+ { handlerKey: 'createMediaBuy', toolName: 'create_media_buy' },
403
+ { handlerKey: 'updateMediaBuy', toolName: 'update_media_buy' },
404
+ { handlerKey: 'getMediaBuys', toolName: 'get_media_buys' },
405
+ { handlerKey: 'getMediaBuyDelivery', toolName: 'get_media_buy_delivery' },
406
+ { handlerKey: 'providePerformanceFeedback', toolName: 'provide_performance_feedback' },
407
+ { handlerKey: 'listCreativeFormats', toolName: 'list_creative_formats' },
408
+ { handlerKey: 'syncCreatives', toolName: 'sync_creatives' },
409
+ { handlerKey: 'listCreatives', toolName: 'list_creatives' },
410
+ ];
411
+ const EVENT_TRACKING_ENTRIES = [
412
+ { handlerKey: 'syncEventSources', toolName: 'sync_event_sources' },
413
+ { handlerKey: 'logEvent', toolName: 'log_event' },
414
+ { handlerKey: 'syncAudiences', toolName: 'sync_audiences' },
415
+ { handlerKey: 'syncCatalogs', toolName: 'sync_catalogs' },
416
+ ];
417
+ const SIGNALS_ENTRIES = [
418
+ { handlerKey: 'getSignals', toolName: 'get_signals' },
419
+ { handlerKey: 'activateSignal', toolName: 'activate_signal' },
420
+ ];
421
+ const CREATIVE_ENTRIES = [
422
+ { handlerKey: 'listCreativeFormats', toolName: 'list_creative_formats' },
423
+ { handlerKey: 'buildCreative', toolName: 'build_creative' },
424
+ { handlerKey: 'previewCreative', toolName: 'preview_creative' },
425
+ { handlerKey: 'listCreatives', toolName: 'list_creatives' },
426
+ { handlerKey: 'syncCreatives', toolName: 'sync_creatives' },
427
+ { handlerKey: 'getCreativeDelivery', toolName: 'get_creative_delivery' },
428
+ ];
429
+ const GOVERNANCE_ENTRIES = [
430
+ { handlerKey: 'createPropertyList', toolName: 'create_property_list' },
431
+ { handlerKey: 'updatePropertyList', toolName: 'update_property_list' },
432
+ { handlerKey: 'getPropertyList', toolName: 'get_property_list' },
433
+ { handlerKey: 'listPropertyLists', toolName: 'list_property_lists' },
434
+ { handlerKey: 'deletePropertyList', toolName: 'delete_property_list' },
435
+ { handlerKey: 'listContentStandards', toolName: 'list_content_standards' },
436
+ { handlerKey: 'getContentStandards', toolName: 'get_content_standards' },
437
+ { handlerKey: 'createContentStandards', toolName: 'create_content_standards' },
438
+ { handlerKey: 'updateContentStandards', toolName: 'update_content_standards' },
439
+ { handlerKey: 'calibrateContent', toolName: 'calibrate_content' },
440
+ { handlerKey: 'validateContentDelivery', toolName: 'validate_content_delivery' },
441
+ { handlerKey: 'getMediaBuyArtifacts', toolName: 'get_media_buy_artifacts' },
442
+ { handlerKey: 'getCreativeFeatures', toolName: 'get_creative_features' },
443
+ { handlerKey: 'syncPlans', toolName: 'sync_plans' },
444
+ { handlerKey: 'checkGovernance', toolName: 'check_governance' },
445
+ { handlerKey: 'reportPlanOutcome', toolName: 'report_plan_outcome' },
446
+ { handlerKey: 'getPlanAuditLogs', toolName: 'get_plan_audit_logs' },
447
+ ];
448
+ const ACCOUNT_ENTRIES = [
449
+ { handlerKey: 'listAccounts', toolName: 'list_accounts' },
450
+ { handlerKey: 'syncAccounts', toolName: 'sync_accounts' },
451
+ { handlerKey: 'syncGovernance', toolName: 'sync_governance' },
452
+ { handlerKey: 'getAccountFinancials', toolName: 'get_account_financials' },
453
+ { handlerKey: 'reportUsage', toolName: 'report_usage' },
454
+ ];
455
+ const SI_ENTRIES = [
456
+ { handlerKey: 'getOffering', toolName: 'si_get_offering' },
457
+ { handlerKey: 'initiateSession', toolName: 'si_initiate_session' },
458
+ { handlerKey: 'sendMessage', toolName: 'si_send_message' },
459
+ { handlerKey: 'terminateSession', toolName: 'si_terminate_session' },
460
+ ];
461
+ const BRAND_RIGHTS_ENTRIES = [
462
+ { handlerKey: 'getBrandIdentity', toolName: 'get_brand_identity' },
463
+ { handlerKey: 'getRights', toolName: 'get_rights' },
464
+ { handlerKey: 'acquireRights', toolName: 'acquire_rights' },
465
+ ];
466
+ // ---------------------------------------------------------------------------
467
+ // Protocol detection
468
+ // ---------------------------------------------------------------------------
469
+ const TOOL_PROTOCOL_MAP = [
470
+ [capabilities_1.MEDIA_BUY_TOOLS, 'media_buy'],
471
+ [capabilities_1.SIGNALS_TOOLS, 'signals'],
472
+ [capabilities_1.GOVERNANCE_TOOLS, 'governance'],
473
+ [capabilities_1.CREATIVE_TOOLS, 'creative'],
474
+ [capabilities_1.SPONSORED_INTELLIGENCE_TOOLS, 'sponsored_intelligence'],
475
+ [capabilities_1.BRAND_RIGHTS_TOOLS, 'brand'],
476
+ ];
477
+ function detectProtocols(toolNames) {
478
+ const nameSet = new Set(toolNames);
479
+ const protocols = [];
480
+ for (const [tools, protocol] of TOOL_PROTOCOL_MAP) {
481
+ if (tools.some(t => nameSet.has(t))) {
482
+ protocols.push(protocol);
483
+ }
484
+ }
485
+ return protocols;
486
+ }
487
+ // ---------------------------------------------------------------------------
488
+ // Tool coherence warnings
489
+ // ---------------------------------------------------------------------------
490
+ const COHERENCE_RULES = [
491
+ [
492
+ 'create_media_buy',
493
+ 'get_products',
494
+ 'create_media_buy without get_products — buyers cannot discover products before purchasing',
495
+ ],
496
+ [
497
+ 'update_media_buy',
498
+ 'get_media_buys',
499
+ 'update_media_buy without get_media_buys — buyers cannot look up what to modify',
500
+ ],
501
+ [
502
+ 'activate_signal',
503
+ 'get_signals',
504
+ 'activate_signal without get_signals — buyers cannot discover signals before activating',
505
+ ],
506
+ [
507
+ 'sync_creatives',
508
+ 'list_creative_formats',
509
+ 'sync_creatives without list_creative_formats — buyers cannot discover valid formats',
510
+ ],
511
+ ];
512
+ function checkCoherence(toolNames, logger) {
513
+ for (const [tool, requires, message] of COHERENCE_RULES) {
514
+ if (toolNames.has(tool) && !toolNames.has(requires)) {
515
+ logger.warn(message);
516
+ }
517
+ }
518
+ }
519
+ // ---------------------------------------------------------------------------
520
+ // Response detection
521
+ // ---------------------------------------------------------------------------
522
+ function isFormattedResponse(value) {
523
+ if (value == null || typeof value !== 'object')
524
+ return false;
525
+ const obj = value;
526
+ return Array.isArray(obj.content) && 'structuredContent' in obj;
527
+ }
528
+ /**
529
+ * Detect an AdCP Submitted envelope (async task acknowledgement).
530
+ *
531
+ * Every *Submitted arm in the generated types has `status: 'submitted'`
532
+ * plus a required `task_id: string`. The discriminant is stable enough
533
+ * to use for routing at dispatch time without per-tool knowledge.
534
+ */
535
+ function isSubmittedEnvelope(value) {
536
+ if (value == null || typeof value !== 'object')
537
+ return false;
538
+ const obj = value;
539
+ return obj.status === 'submitted' && typeof obj.task_id === 'string';
540
+ }
541
+ /**
542
+ * Detect an AdCP *Error arm (union member, not the framework `adcp_error`
543
+ * envelope). Every *Error interface in the generated types carries a
544
+ * required `errors: Error[]` and a narrow set of allowed siblings
545
+ * (`context`, `ext`, plus a couple of tool-specific extras). Success
546
+ * arms may have optional advisory fields but never a required `errors`
547
+ * array — the `status === 'submitted'` exclusion keeps us from
548
+ * confusing a Submitted envelope that advisory-echoes errors as an
549
+ * Error arm. The set of allowed sibling keys is intentionally narrow:
550
+ * any other top-level key means the payload carries Success-only fields
551
+ * (`media_buy_id`, `creatives`, `signal_id`, ...) and should fall
552
+ * through to the response builder.
553
+ */
554
+ const ERROR_ARM_ALLOWED_KEYS = new Set(['errors', 'context', 'ext', 'success', 'conflicting_standards_id']);
555
+ function isErrorArm(value) {
556
+ if (value == null || typeof value !== 'object')
557
+ return false;
558
+ const obj = value;
559
+ if (!Array.isArray(obj.errors))
560
+ return false;
561
+ if ('status' in obj)
562
+ return false;
563
+ for (const key of Object.keys(obj)) {
564
+ if (!ERROR_ARM_ALLOWED_KEYS.has(key))
565
+ return false;
566
+ }
567
+ return true;
568
+ }
569
+ /**
570
+ * Wrap a Submitted envelope returned directly by a handler. Skips the
571
+ * Success-builder defaults (`revision`, `confirmed_at`, `valid_actions`)
572
+ * — those fields are specific to `CreateMediaBuySuccess` and would
573
+ * corrupt the async-task shape if applied.
574
+ */
575
+ function wrapSubmittedEnvelope(value) {
576
+ const summary = value.message ?? `Task ${value.task_id} submitted`;
577
+ return {
578
+ content: [{ type: 'text', text: summary }],
579
+ structuredContent: value,
580
+ };
581
+ }
582
+ /**
583
+ * Wrap an *Error arm returned directly by a handler. Preserves the
584
+ * generated-type shape (`errors: Error[]`) on `structuredContent` so
585
+ * buyers reading the typed response union see the exact branch the
586
+ * spec defines; also sets `isError: true` so the MCP-level signal
587
+ * matches `adcp_error` envelopes, which keeps `isErrorResponse()` and
588
+ * `response-validation: strict` consistent across both error paths.
589
+ */
590
+ function wrapErrorArm(value) {
591
+ const firstError = value.errors[0];
592
+ const summary = firstError && typeof firstError === 'object'
593
+ ? `${typeof firstError.code === 'string' ? firstError.code : 'ERROR'}: ${typeof firstError.message === 'string' ? firstError.message : 'operation failed'}`
594
+ : 'operation failed';
595
+ return {
596
+ content: [{ type: 'text', text: summary }],
597
+ isError: true,
598
+ structuredContent: value,
599
+ };
600
+ }
601
+ /**
602
+ * Defence-in-depth sanitizer for handler-returned error envelopes.
603
+ *
604
+ * `adcpError()` filters its own output against `ADCP_ERROR_FIELD_ALLOWLIST`,
605
+ * but a handler that hand-rolls `{ isError: true, structuredContent: {
606
+ * adcp_error: {...} } }` (or constructs the envelope through a different
607
+ * builder) bypasses that sanitizer. The storyboard invariant
608
+ * `idempotency.conflict_no_payload_leak` catches this at conformance-test
609
+ * time, but production traffic would be unprotected — so we re-apply the
610
+ * allowlist here too. Silent no-op when the code has no registered entry,
611
+ * or when `structuredContent.adcp_error` is missing its `code` field.
612
+ *
613
+ * Keeps L2 (`content[0].text`) and L3 (`structuredContent`) in lockstep —
614
+ * both transport layers get the same filtered payload.
615
+ */
616
+ function sanitizeAdcpErrorEnvelope(response) {
617
+ const sc = response.structuredContent;
618
+ if (!sc || typeof sc !== 'object')
619
+ return;
620
+ const err = sc.adcp_error;
621
+ if (!err || typeof err !== 'object')
622
+ return;
623
+ const code = err.code;
624
+ if (typeof code !== 'string')
625
+ return;
626
+ const allow = envelope_allowlist_1.ADCP_ERROR_FIELD_ALLOWLIST[code];
627
+ if (!allow)
628
+ return;
629
+ const filtered = {};
630
+ let droppedAny = false;
631
+ for (const [k, v] of Object.entries(err)) {
632
+ if (allow.has(k)) {
633
+ filtered[k] = v;
634
+ }
635
+ else {
636
+ droppedAny = true;
637
+ }
638
+ }
639
+ if (!droppedAny)
640
+ return;
641
+ sc.adcp_error = filtered;
642
+ if (Array.isArray(response.content)) {
643
+ const first = response.content[0];
644
+ if (first && first.type === 'text' && typeof first.text === 'string') {
645
+ try {
646
+ const parsed = JSON.parse(first.text);
647
+ if (parsed && typeof parsed === 'object') {
648
+ parsed.adcp_error = filtered;
649
+ first.text = JSON.stringify(parsed);
650
+ }
651
+ }
652
+ catch {
653
+ // Text isn't JSON — leave it alone. adcpError()-emitted envelopes
654
+ // always serialize to JSON, so the only hit here would be a seller
655
+ // who hand-rolled a non-JSON content[0] (implausible for AdCP).
656
+ }
657
+ }
658
+ }
659
+ }
660
+ // Echo the request context into a formatted MCP tool response so buyers can
661
+ // trace correlation_id across both success and error responses. Only plain
662
+ // objects are echoed: `si_get_offering` and `si_initiate_session` override
663
+ // the request schema's `context` to a domain-specific string, while the
664
+ // response schema still requires the protocol echo object — copying a
665
+ // string there would fail response validation.
666
+ function injectContextIntoResponse(response, context) {
667
+ if (context === null || typeof context !== 'object' || Array.isArray(context))
668
+ return;
669
+ const sc = response.structuredContent;
670
+ if (sc && typeof sc === 'object' && !('context' in sc)) {
671
+ sc.context = context;
672
+ // Keep the L2 text fallback (JSON body) in sync with structuredContent
673
+ if (Array.isArray(response.content)) {
674
+ const first = response.content[0];
675
+ if (first && first.type === 'text' && typeof first.text === 'string') {
676
+ try {
677
+ const parsed = JSON.parse(first.text);
678
+ if (parsed && typeof parsed === 'object' && !('context' in parsed)) {
679
+ parsed.context = context;
680
+ first.text = JSON.stringify(parsed);
681
+ }
682
+ }
683
+ catch {
684
+ // Text isn't JSON — leave it alone
685
+ }
686
+ }
687
+ }
688
+ }
689
+ }
690
+ // ---------------------------------------------------------------------------
691
+ // Signed-requests preTransport builder
692
+ // ---------------------------------------------------------------------------
693
+ /**
694
+ * Build a `preTransport` middleware that runs `createExpressVerifier` against
695
+ * the incoming Node request/response. The returned function matches the shape
696
+ * `serve({ preTransport })` expects: it resolves to `true` when the verifier
697
+ * has already written a 401 (headers sent), `false` otherwise.
698
+ *
699
+ * `serve()` buffers the request body into `req.rawBody` before invoking the
700
+ * preTransport hook, so the verifier sees the exact bytes the signer hashed
701
+ * for Content-Digest. For MCP the operation name comes from the JSON-RPC
702
+ * `params.name`; the resolver below falls back to `undefined` for non-JSON or
703
+ * non-`tools/call` bodies, which makes the verifier treat them as not-in-
704
+ * `required_for` rather than rejecting (discovery probes, health checks).
705
+ */
706
+ function buildSignedRequestsPreTransport(signedRequests, capabilityRequiredFor) {
707
+ // Precedence: explicit signedRequests.required_for > capabilities.request_signing.required_for
708
+ // > fallback to every mutating task. Buyers read required_for from
709
+ // get_adcp_capabilities to decide which calls to sign — defaulting to
710
+ // MUTATING_TASKS when the seller advertised a narrower list would cause
711
+ // buyers to get request_signature_required on tools they had no contractual
712
+ // duty to sign.
713
+ const requiredFor = signedRequests.required_for ?? capabilityRequiredFor ?? [...idempotency_1.MUTATING_TASKS];
714
+ const verifier = (0, middleware_1.createExpressVerifier)({
715
+ capability: {
716
+ supported: true,
717
+ covers_content_digest: signedRequests.covers_content_digest ?? 'either',
718
+ required_for: requiredFor,
719
+ },
720
+ jwks: signedRequests.jwks,
721
+ replayStore: signedRequests.replayStore,
722
+ revocationStore: signedRequests.revocationStore,
723
+ ...(signedRequests.agentUrlForKeyid ? { agentUrlForKeyid: signedRequests.agentUrlForKeyid } : {}),
724
+ resolveOperation: req => {
725
+ const raw = req.rawBody;
726
+ if (!raw)
727
+ return undefined;
728
+ try {
729
+ const parsed = JSON.parse(raw);
730
+ if (parsed.method === 'tools/call' && typeof parsed.params?.name === 'string') {
731
+ return parsed.params.name;
732
+ }
733
+ }
734
+ catch {
735
+ // Non-JSON or malformed body — let transport handle rejection.
736
+ }
737
+ return undefined;
738
+ },
739
+ });
740
+ return async function adcpPreTransport(req, res) {
741
+ const reqShim = {
742
+ method: req.method ?? 'POST',
743
+ url: req.url ?? '/mcp',
744
+ originalUrl: req.url ?? '/mcp',
745
+ headers: req.headers,
746
+ rawBody: req.rawBody ?? '',
747
+ protocol: 'http',
748
+ get(name) {
749
+ const v = req.headers[name.toLowerCase()];
750
+ return Array.isArray(v) ? v.join(', ') : v;
751
+ },
752
+ };
753
+ const resShim = {
754
+ status(code) {
755
+ res.statusCode = code;
756
+ return {
757
+ set(k, v) {
758
+ res.setHeader(k, v);
759
+ return {
760
+ json(body) {
761
+ res.setHeader('Content-Type', 'application/json');
762
+ res.end(JSON.stringify(body));
763
+ },
764
+ };
765
+ },
766
+ };
767
+ },
768
+ };
769
+ let handled = false;
770
+ let verifierCompleted = false;
771
+ // The verifier calls `next(err?)` in the success / error path, but the
772
+ // 401 RequestSignatureError path writes the response and returns WITHOUT
773
+ // calling next. Race the next-callback against the response's 'finish' /
774
+ // 'close' events so a terminal 401 resolves the promise; otherwise the
775
+ // wrapper hangs forever and the agent server leaks (one McpServer per
776
+ // unsigned request under attack).
777
+ //
778
+ // Security: if 'close' fires before the verifier completes (client
779
+ // aborted the TCP connection mid-JWKS-fetch), we MUST NOT fall through
780
+ // to the MCP transport — doing so would execute the tool handler
781
+ // without a verified signature on an attacker-dropped connection. Mark
782
+ // handled=true so serve.ts skips dispatch.
783
+ await new Promise(resolve => {
784
+ let resolved = false;
785
+ const done = () => {
786
+ if (resolved)
787
+ return;
788
+ resolved = true;
789
+ resolve();
790
+ };
791
+ res.once('finish', () => {
792
+ if (res.writableEnded)
793
+ handled = true;
794
+ done();
795
+ });
796
+ res.once('close', () => {
797
+ if (!verifierCompleted)
798
+ handled = true;
799
+ done();
800
+ });
801
+ verifier(reqShim, resShim, err => {
802
+ verifierCompleted = true;
803
+ if (err) {
804
+ // Log internally; a leaked stack trace to the caller would
805
+ // enumerate the verifier pipeline (js/stack-trace-exposure).
806
+ // Narrow to name+code only — full error stringification can embed
807
+ // JWKS URLs from transport failures, which leaks counterparty
808
+ // key-discovery topology on shared log aggregators.
809
+ const errName = err.name || 'Error';
810
+ const errCode = err.code ?? 'unknown';
811
+ console.error(`[adcp/signed-requests] verifier middleware error: ${errName} (${errCode})`);
812
+ if (!res.writableEnded) {
813
+ res.statusCode = 500;
814
+ res.setHeader('Content-Type', 'application/json');
815
+ res.end(JSON.stringify({ error: 'verifier_error' }));
816
+ }
817
+ handled = true;
818
+ }
819
+ if (res.writableEnded)
820
+ handled = true;
821
+ done();
822
+ });
823
+ });
824
+ return handled;
825
+ };
826
+ }
827
+ // ---------------------------------------------------------------------------
828
+ // createAdcpServer
829
+ // ---------------------------------------------------------------------------
830
+ /**
831
+ * Create an AdCP-compliant MCP server from domain-grouped handler functions.
832
+ *
833
+ * Before each handler runs, the framework:
834
+ * 1. Validates the request against the tool's Zod schema (MCP SDK)
835
+ * 2. Resolves the account (if the tool has an `account` field and `resolveAccount` is configured)
836
+ *
837
+ * The handler only runs when all preconditions pass. It receives the validated
838
+ * params and a context with the resolved account and state store.
839
+ *
840
+ * `get_adcp_capabilities` is auto-generated from registered tools.
841
+ */
842
+ function createAdcpServer(config) {
843
+ const { name, version, adcpVersion: configuredAdcpVersion, resolveAccount, resolveSessionKey, exposeErrorDetails = process.env.NODE_ENV !== 'production', stateStore = new state_store_1.InMemoryStateStore(), logger = noopLogger, capabilities: capConfig, idempotency: idempotencyConfig, resolveIdempotencyPrincipal, instructions, taskStore, taskMessageQueue, webhooks, signedRequests, validation: validationConfig, testController: testControllerBridge, } = config;
844
+ // Defaults gated on `process.env.NODE_ENV`:
845
+ // - Production → both sides `'off'` (zero AJV overhead; trust the
846
+ // handler after its test suite has exercised it).
847
+ // - Dev/test/CI → BOTH sides `'strict'`. Request validation is now
848
+ // authoritative on both transports (#909) — we dropped the SDK
849
+ // Zod from `registerTool` inputSchema, so if our framework validator
850
+ // doesn't reject malformed payloads they reach the handler
851
+ // unchecked over A2A. Matching responses' existing `'strict'`
852
+ // default keeps behavior consistent across the wire in both
853
+ // directions.
854
+ // Explicit `validation: { requests, responses }` on the config always
855
+ // wins. `process.env.NODE_ENV` matches the convention every other SDK
856
+ // consumer already tunes (Express, React, etc.); containers/CI that
857
+ // want prod-like behavior set NODE_ENV=production before start.
858
+ const isProduction = process.env.NODE_ENV === 'production';
859
+ const requestValidationMode = validationConfig?.requests ?? (isProduction ? 'off' : 'strict');
860
+ const responseValidationMode = validationConfig?.responses ?? (isProduction ? 'off' : 'strict');
861
+ // Split the `idempotency` config field into "the active store" and
862
+ // "explicitly opted out" so existing call sites keep working with a
863
+ // single nullable variable while the disabled-mode branches stay
864
+ // surgical. `idempotencyDisabled` gates: schema-level missing-key
865
+ // tolerance, the missing-store guardrail log, the capability
866
+ // declaration shift to `IdempotencyUnsupported`, and the runtime
867
+ // production check below.
868
+ const idempotencyDisabled = idempotencyConfig === 'disabled';
869
+ const idempotency = idempotencyDisabled ? undefined : idempotencyConfig;
870
+ if (idempotencyDisabled) {
871
+ // Allowlist gate. The earlier draft refused the flag only when
872
+ // NODE_ENV === 'production', which is a footgun: NODE_ENV defaults to
873
+ // unset in raw Lambda, custom containers, and many K8s deployments,
874
+ // so the strict equality returned `false` in exactly the
875
+ // hard-to-debug environments where disabled mode is most dangerous.
876
+ // Inverted to an allowlist of dev/test environments; any other value
877
+ // (unset, 'production', 'staging', 'qa', custom names) requires the
878
+ // operator to explicitly acknowledge the risk via
879
+ // `ADCP_IDEMPOTENCY_DISABLED_ACK=1`. Hard to set by accident, makes
880
+ // the choice deliberate, and turns a missing-NODE_ENV config into a
881
+ // startup crash instead of a silent money-flow incident on retry.
882
+ const env = process.env.NODE_ENV;
883
+ const acknowledged = process.env.ADCP_IDEMPOTENCY_DISABLED_ACK === '1';
884
+ const isAllowlistedDevEnv = env === 'test' || env === 'development';
885
+ if (!isAllowlistedDevEnv && !acknowledged) {
886
+ throw new Error("createAdcpServer: idempotency: 'disabled' refuses to start with NODE_ENV=" +
887
+ (env === undefined ? '<unset>' : JSON.stringify(env)) +
888
+ '. Disabled mode skips replay enforcement and silently double-executes mutating handlers on retry, ' +
889
+ 'so the SDK only allows it under NODE_ENV=test or NODE_ENV=development by default. ' +
890
+ 'Either: (a) wire a real store via `createIdempotencyStore({ backend, ttlSeconds })`, ' +
891
+ '(b) set NODE_ENV=test or NODE_ENV=development if this is a dev-only environment, or ' +
892
+ '(c) set ADCP_IDEMPOTENCY_DISABLED_ACK=1 to explicitly acknowledge the risk for non-standard environments.');
893
+ }
894
+ logger.warn("createAdcpServer: idempotency: 'disabled' is set. Mutating requests will not be replay-checked and " +
895
+ '`get_adcp_capabilities` will declare `idempotency.supported: false`. Use only in non-production test fleets.');
896
+ }
897
+ // Enforce lock-step between the `signed-requests` specialism claim and the
898
+ // verifier config for the auto-wiring path. When `signedRequests` is set
899
+ // but the specialism isn't declared, buyers can't discover the signing
900
+ // requirement from `get_adcp_capabilities` — they won't sign, the
901
+ // verifier rejects every mutating call, and the agent is dead on arrival.
902
+ // That's unambiguously wrong, so we throw.
903
+ //
904
+ // The opposite direction — claiming the specialism without a
905
+ // `signedRequests` config — is only wrong when the agent also doesn't
906
+ // wire a verifier via `serve({ preTransport })`. Legacy servers that
907
+ // hand-build the middleware fall into this case and are still conformant.
908
+ // We log a loud error so operators notice (matching the idempotency
909
+ // guardrail precedent) but don't throw, leaving the manual path working.
910
+ const specialismsClaimed = capConfig?.specialisms ?? [];
911
+ const claimsSignedRequests = specialismsClaimed.includes('signed-requests');
912
+ if (signedRequests && !claimsSignedRequests) {
913
+ throw new Error('createAdcpServer: `signedRequests` is configured but `capabilities.specialisms` does not include "signed-requests". ' +
914
+ 'Add "signed-requests" to the specialisms list — buyers discover the signing requirement from get_adcp_capabilities, ' +
915
+ "and omitting the claim means they won't sign their requests.");
916
+ }
917
+ if (claimsSignedRequests && !signedRequests) {
918
+ logger.error('createAdcpServer: `capabilities.specialisms` claims "signed-requests" but no `signedRequests` config was provided. ' +
919
+ 'Either pass `signedRequests: { jwks, replayStore, revocationStore }` to auto-wire the verifier, or ensure you wire ' +
920
+ 'one manually via `serve({ preTransport })`. Claiming the specialism without verifying signatures is a spec violation.');
921
+ }
922
+ // The specialism is only meaningful when `capabilities.request_signing.supported`
923
+ // is true — the compliance storyboard treats a missing or false `supported`
924
+ // flag as "not opted in" and silently skips the whole conformance run. Claim
925
+ // + supported:false is the worst failure mode: the claim advertises
926
+ // signature enforcement while the capability block tells buyers the agent
927
+ // doesn't verify. Fail fast so the mismatch is caught at construction.
928
+ if (claimsSignedRequests && capConfig?.request_signing?.supported !== true) {
929
+ throw new Error('createAdcpServer: `capabilities.specialisms` claims "signed-requests" but `capabilities.request_signing.supported` is not true. ' +
930
+ 'Set `capabilities.request_signing = { supported: true, ... }` — the compliance storyboard skips conformance entirely when ' +
931
+ '`supported` is falsy, and buyers cannot discover the signing requirement without the capability block.');
932
+ }
933
+ // Cross-domain specialism declaration check. When a domain handler group
934
+ // is wired, `capabilities.specialisms` SHOULD include at least one of that
935
+ // domain's specialisms — otherwise the conformance runner grades the agent
936
+ // as "No applicable tracks found for this agent" silently, even when every
937
+ // tool works. The matrix v18 run (issue #785) had this drift class account
938
+ // for ~30% of "agent built every tool but storyboard reports no applicable
939
+ // tracks" cases.
940
+ //
941
+ // Logged via `logger.error` (matching the idempotency-disabled precedent)
942
+ // rather than thrown because middleware-only test harnesses legitimately
943
+ // wire handlers without declaring specialisms — production agents will see
944
+ // the warning and conformance fail loudly, but tests stay passing.
945
+ //
946
+ // mediaBuy is intentionally excluded — its specialism choices
947
+ // (sales-non-guaranteed vs sales-guaranteed vs sales-broadcast-tv vs
948
+ // sales-social etc.) are commercially significant and an agent wiring
949
+ // `mediaBuy.getProducts` may legitimately defer the specialism
950
+ // declaration to a follow-up. The skill examples in build-seller-agent
951
+ // already cover the right declaration; the runtime guardrail floor is
952
+ // set at "if you wire creative/signals/brand/governance handlers,
953
+ // you SHOULD claim a specialism."
954
+ //
955
+ // governance is intentionally COARSE: any governance specialism
956
+ // satisfies the check even though individual handlers map to specific
957
+ // specialisms (createPropertyList → property-lists, calibrateContent →
958
+ // content-standards, etc.). Per-handler-subgroup mapping is a
959
+ // follow-up; the coarse rule catches the drift class (governance
960
+ // handlers wired, no claim at all) without false-positives on
961
+ // legitimate cross-cutting reads (e.g., a sales agent that calls
962
+ // getPropertyList for read-only joins and claims its sales specialism).
963
+ const isWired = (handlers) => {
964
+ // Filter to function-valued keys so `{ listCreativeFormats: undefined }`
965
+ // (a key set to undefined, e.g. via `{ ...maybeHandlers }` spread) is
966
+ // treated as not wired. `Object.keys` would otherwise count the key.
967
+ if (!handlers)
968
+ return false;
969
+ return Object.values(handlers).some(v => typeof v === 'function');
970
+ };
971
+ const DOMAIN_SPECIALISM_REQUIREMENTS = [
972
+ {
973
+ domain: 'creative',
974
+ wired: isWired(config.creative),
975
+ specialisms: ['creative-ad-server', 'creative-generative', 'creative-template'],
976
+ },
977
+ {
978
+ domain: 'signals',
979
+ wired: isWired(config.signals),
980
+ specialisms: ['signal-marketplace', 'signal-owned'],
981
+ },
982
+ {
983
+ domain: 'brandRights',
984
+ wired: isWired(config.brandRights),
985
+ specialisms: ['brand-rights'],
986
+ },
987
+ {
988
+ domain: 'governance',
989
+ wired: isWired(config.governance),
990
+ specialisms: [
991
+ 'governance-spend-authority',
992
+ 'governance-delivery-monitor',
993
+ 'property-lists',
994
+ 'collection-lists',
995
+ 'content-standards',
996
+ ],
997
+ },
998
+ ];
999
+ for (const req of DOMAIN_SPECIALISM_REQUIREMENTS) {
1000
+ if (!req.wired)
1001
+ continue;
1002
+ const claimedFromDomain = req.specialisms.filter(s => specialismsClaimed.includes(s));
1003
+ if (claimedFromDomain.length === 0) {
1004
+ logger.error(`createAdcpServer: ${req.domain} handlers are wired but capabilities.specialisms ` +
1005
+ `does not include any ${req.domain} specialism. Add at least one of ` +
1006
+ `${req.specialisms.map(s => `'${s}'`).join(', ')} to capabilities.specialisms — ` +
1007
+ `without it, the conformance runner reports "No applicable tracks found" and ` +
1008
+ `the agent grades as failing despite working tools.`);
1009
+ }
1010
+ }
1011
+ // Instantiate the emitter once — handler contexts expose its `emit`
1012
+ // bound method so per-request code calls `ctx.emitWebhook(...)` without
1013
+ // knowing about the emitter's construction or options.
1014
+ const webhookEmitter = webhooks ? (0, webhook_emitter_1.createWebhookEmitter)(webhooks) : undefined;
1015
+ const server = (0, tasks_1.createTaskCapableServer)(name, version, {
1016
+ taskStore,
1017
+ taskMessageQueue,
1018
+ instructions,
1019
+ });
1020
+ const registeredToolNames = new Set();
1021
+ // Collect all domain handlers into a flat toolName → handler map
1022
+ const domainGroups = [
1023
+ [config.mediaBuy, MEDIA_BUY_ENTRIES],
1024
+ [config.signals, SIGNALS_ENTRIES],
1025
+ [config.creative, CREATIVE_ENTRIES],
1026
+ [config.governance, GOVERNANCE_ENTRIES],
1027
+ [config.accounts, ACCOUNT_ENTRIES],
1028
+ [config.eventTracking, EVENT_TRACKING_ENTRIES],
1029
+ [config.sponsoredIntelligence, SI_ENTRIES],
1030
+ [config.brandRights, BRAND_RIGHTS_ENTRIES],
1031
+ ];
1032
+ for (const [handlers, entries] of domainGroups) {
1033
+ if (!handlers)
1034
+ continue;
1035
+ // Warn on unrecognized handler keys (likely typos)
1036
+ const knownKeys = new Set(entries.map(e => e.handlerKey));
1037
+ for (const key of Object.keys(handlers)) {
1038
+ if (typeof handlers[key] === 'function' && !knownKeys.has(key)) {
1039
+ logger.warn(`Unknown handler key "${key}" — will not be registered. Check for typos.`);
1040
+ }
1041
+ }
1042
+ for (const { handlerKey, toolName } of entries) {
1043
+ const handler = handlers[handlerKey];
1044
+ if (!handler)
1045
+ continue;
1046
+ if (registeredToolNames.has(toolName)) {
1047
+ // Tool already registered by another domain (e.g., list_creative_formats
1048
+ // in both mediaBuy and creative). First domain wins.
1049
+ logger.warn(`Tool "${toolName}" already registered by another domain, skipping`);
1050
+ continue;
1051
+ }
1052
+ const meta = TOOL_META[toolName];
1053
+ const schema = tool_request_schemas_1.TOOL_REQUEST_SCHEMAS[toolName];
1054
+ if (!schema?.shape) {
1055
+ logger.warn(`No schema found for tool "${toolName}" in TOOL_REQUEST_SCHEMAS, skipping`);
1056
+ continue;
1057
+ }
1058
+ const hasAccount = 'account' in schema.shape;
1059
+ const wrap = meta?.wrap ?? ((data, summary) => genericResponse(toolName, data, summary));
1060
+ const toolHandler = async (params, extra) => {
1061
+ const ctx = { store: stateStore };
1062
+ if (extra?.authInfo)
1063
+ ctx.authInfo = extra.authInfo;
1064
+ if (webhookEmitter)
1065
+ ctx.emitWebhook = webhookEmitter.emit.bind(webhookEmitter);
1066
+ // Echo params.context into any response (success or error) so buyers
1067
+ // can trace correlation_id end-to-end. Framework-generated errors
1068
+ // (ACCOUNT_NOT_FOUND, SERVICE_UNAVAILABLE) go through this too.
1069
+ // `injectContextIntoResponse` skips non-object values so SI tools
1070
+ // that override `context` as a string on the request don't leak the
1071
+ // string into the response envelope.
1072
+ //
1073
+ // `sanitizeAdcpErrorEnvelope` re-applies `ADCP_ERROR_FIELD_ALLOWLIST`
1074
+ // as a runtime belt-and-suspenders for handlers that build an error
1075
+ // envelope outside `adcpError()` — `adcpError()` already filters its
1076
+ // own output, but a hand-rolled `{ isError, structuredContent:
1077
+ // { adcp_error: ... } }` would otherwise ship unfiltered.
1078
+ const finalize = (response) => {
1079
+ sanitizeAdcpErrorEnvelope(response);
1080
+ injectContextIntoResponse(response, params.context);
1081
+ return response;
1082
+ };
1083
+ const toolIsMutating = (0, idempotency_1.isMutatingTask)(toolName);
1084
+ // --- Request schema validation (opt-in) ---
1085
+ // Runs before idempotency so drifted payloads never touch the
1086
+ // replay cache. `off` short-circuits without calling AJV.
1087
+ if (requestValidationMode !== 'off') {
1088
+ const outcome = (0, schema_validator_1.validateRequest)(toolName, params);
1089
+ if (!outcome.valid) {
1090
+ // When `idempotency: 'disabled'` is set, drop the synthetic
1091
+ // "missing idempotency_key" failure on mutating tools — the
1092
+ // operator has explicitly opted out of enforcement and would
1093
+ // otherwise need to UUID-inject every test payload to satisfy
1094
+ // the spec-required field. All other schema issues still fail.
1095
+ //
1096
+ // The exact-match `pointer === '/idempotency_key'` is
1097
+ // load-bearing: AJV builds the pointer from `instancePath +
1098
+ // /missingProperty`, so today every mutating tool's
1099
+ // idempotency_key sits at the top level (instancePath = '',
1100
+ // pointer = '/idempotency_key'). If a future spec revision
1101
+ // ever nests this field under another object, the new pointer
1102
+ // (`/foo/idempotency_key`) won't match this filter and the
1103
+ // strict-mode failure will correctly bubble up — drift is
1104
+ // surfaced rather than silently swallowed.
1105
+ const issues = idempotencyDisabled && toolIsMutating
1106
+ ? outcome.issues.filter(i => !(i.keyword === 'required' && i.pointer === '/idempotency_key'))
1107
+ : outcome.issues;
1108
+ if (issues.length > 0) {
1109
+ if (requestValidationMode === 'strict') {
1110
+ // Thread `exposeSchemaPath` the same way response-side does
1111
+ // so request-side schemaPath also ships in dev and stays
1112
+ // gated in production. Prior to this, request-side silently
1113
+ // stripped schemaPath even in dev — asymmetric with response-side.
1114
+ const payload = (0, schema_errors_1.buildAdcpValidationErrorPayload)(toolName, 'request', issues, {
1115
+ exposeSchemaPath: exposeErrorDetails,
1116
+ });
1117
+ return finalize((0, errors_1.adcpError)('VALIDATION_ERROR', payload));
1118
+ }
1119
+ logger.warn(`Schema validation warning (request) for ${toolName}: ${(0, schema_validator_1.formatIssues)(issues)}`, {
1120
+ tool: toolName,
1121
+ issues,
1122
+ });
1123
+ }
1124
+ }
1125
+ }
1126
+ // --- Account resolution ---
1127
+ if (hasAccount && params.account != null && resolveAccount) {
1128
+ try {
1129
+ const account = await resolveAccount(params.account, {
1130
+ toolName: toolName,
1131
+ authInfo: ctx.authInfo,
1132
+ });
1133
+ if (account == null) {
1134
+ logger.warn('Account not found', { tool: toolName, account: params.account });
1135
+ return finalize((0, errors_1.adcpError)('ACCOUNT_NOT_FOUND', {
1136
+ message: 'The specified account does not exist',
1137
+ field: 'account',
1138
+ suggestion: 'Use list_accounts to discover available accounts, or sync_accounts to create one',
1139
+ }));
1140
+ }
1141
+ ctx.account = account;
1142
+ }
1143
+ catch (err) {
1144
+ const reason = err instanceof Error ? err.message : String(err);
1145
+ logger.error('Account resolution failed', { tool: toolName, error: reason });
1146
+ return finalize((0, errors_1.adcpError)('SERVICE_UNAVAILABLE', {
1147
+ message: 'Account resolution failed',
1148
+ ...(exposeErrorDetails && { details: { reason } }),
1149
+ }));
1150
+ }
1151
+ }
1152
+ // --- Session key resolution ---
1153
+ if (resolveSessionKey) {
1154
+ try {
1155
+ const sessionKey = await resolveSessionKey({
1156
+ toolName: toolName,
1157
+ params,
1158
+ account: ctx.account,
1159
+ });
1160
+ if (sessionKey !== undefined)
1161
+ ctx.sessionKey = sessionKey;
1162
+ }
1163
+ catch (err) {
1164
+ const reason = err instanceof Error ? err.message : String(err);
1165
+ logger.error('Session key resolution failed', { tool: toolName, error: reason });
1166
+ return finalize((0, errors_1.adcpError)('SERVICE_UNAVAILABLE', {
1167
+ message: 'Session key resolution failed',
1168
+ ...(exposeErrorDetails && { details: { reason } }),
1169
+ }));
1170
+ }
1171
+ }
1172
+ // --- idempotency_key shape gate (runs even in disabled mode) ---
1173
+ // Defense-in-depth against buyers that bypass MCP schema
1174
+ // validation (different transport, bespoke client) AND against
1175
+ // disabled-mode environments where the replay middleware below is
1176
+ // skipped. Low-entropy keys pollute the cache and enable
1177
+ // enumeration; keys containing the internal scope-separator byte
1178
+ // would collide with the cache's scope tuple. Even in disabled
1179
+ // mode (no cache, no enforcement) a malformed key flowing into
1180
+ // handler logs is a debuggability hazard — so we reject the
1181
+ // shape whenever a key was supplied, regardless of whether the
1182
+ // replay middleware will execute. Missing-key enforcement
1183
+ // remains scoped to the middleware below (gated on `idempotency`),
1184
+ // so disabled mode tolerates absence per the schema-filter
1185
+ // contract earlier in this dispatcher.
1186
+ if (toolIsMutating &&
1187
+ typeof params.idempotency_key === 'string' &&
1188
+ !idempotency_1.IDEMPOTENCY_KEY_PATTERN.test(params.idempotency_key)) {
1189
+ return finalize((0, errors_1.adcpError)('INVALID_REQUEST', {
1190
+ message: 'idempotency_key must match the spec pattern ^[A-Za-z0-9_.:-]{16,255}$',
1191
+ field: 'idempotency_key',
1192
+ }));
1193
+ }
1194
+ // --- Idempotency (mutating tools only) ---
1195
+ let idempotencyCheck;
1196
+ if (idempotency && toolIsMutating) {
1197
+ const key = typeof params.idempotency_key === 'string' ? params.idempotency_key : undefined;
1198
+ if (!key) {
1199
+ return finalize((0, errors_1.adcpError)('INVALID_REQUEST', {
1200
+ message: 'idempotency_key is required on mutating requests',
1201
+ field: 'idempotency_key',
1202
+ }));
1203
+ }
1204
+ // Pattern check already ran in the shape gate above. By this
1205
+ // point `key` is guaranteed to match IDEMPOTENCY_KEY_PATTERN.
1206
+ const principal = (resolveIdempotencyPrincipal
1207
+ ? resolveIdempotencyPrincipal(ctx, params, toolName)
1208
+ : ctx.sessionKey) ?? '';
1209
+ if (!principal) {
1210
+ logger.error('Idempotency principal unresolved', { tool: toolName });
1211
+ return finalize((0, errors_1.adcpError)('SERVICE_UNAVAILABLE', {
1212
+ message: 'Idempotency principal could not be resolved — configure resolveSessionKey or resolveIdempotencyPrincipal',
1213
+ }));
1214
+ }
1215
+ // SI `si_send_message` is scoped per-session — the same key under
1216
+ // two different sessions must not replay into each other. The
1217
+ // caller's session_id enters the scope tuple so each session has
1218
+ // its own idempotency namespace.
1219
+ const extraScope = resolveExtraScope(toolName, params);
1220
+ try {
1221
+ const checkResult = await idempotency.check({ principal, key, payload: params, extraScope });
1222
+ if (checkResult.kind === 'replay') {
1223
+ // The cache stores the already-formatted envelope (so
1224
+ // non-deterministic wrap fields like `confirmed_at` are
1225
+ // pinned to the first execution's values). Clone before
1226
+ // mutating so envelope stamps (replayed, echo-back context)
1227
+ // don't leak into the cache — the backend also clones on
1228
+ // read, but belt-and-suspenders: handler-returned objects
1229
+ // can alias pieces of the formatted envelope.
1230
+ const cachedFormatted = cloneFormattedResponse(checkResult.response);
1231
+ // Only stamp `replayed: true` on success envelopes — the
1232
+ // field is defined for successful replays, and transient
1233
+ // error cache entries (VALIDATION_ERROR from strict-mode
1234
+ // drift) are retry-storm guards, not spec replays.
1235
+ if (!isErrorResponse(cachedFormatted)) {
1236
+ stampReplayed(cachedFormatted);
1237
+ }
1238
+ return finalize(cachedFormatted);
1239
+ }
1240
+ if (checkResult.kind === 'conflict') {
1241
+ return finalize((0, errors_1.adcpError)('IDEMPOTENCY_CONFLICT', {
1242
+ message: 'idempotency_key was used earlier with a different canonical payload. Use a fresh UUID v4, or resend the exact original payload.',
1243
+ }));
1244
+ }
1245
+ if (checkResult.kind === 'expired') {
1246
+ return finalize((0, errors_1.adcpError)('IDEMPOTENCY_EXPIRED', {
1247
+ message: `idempotency_key is past the seller's replay window (${idempotency.ttlSeconds}s). Use a fresh UUID v4, or look up the resource by natural key if the prior call succeeded.`,
1248
+ }));
1249
+ }
1250
+ if (checkResult.kind === 'in-flight') {
1251
+ // A parallel request is currently executing this same key.
1252
+ // Tell the client to retry — returning SERVICE_UNAVAILABLE
1253
+ // with a short retry_after is transient-classified and the
1254
+ // buyer SDK auto-retries. Eventually the other request
1255
+ // completes and this retry either replays the cached
1256
+ // response or hits IDEMPOTENCY_CONFLICT.
1257
+ return finalize((0, errors_1.adcpError)('SERVICE_UNAVAILABLE', {
1258
+ message: 'A parallel request with the same idempotency_key is still in flight. Retry shortly.',
1259
+ retry_after: 1,
1260
+ }));
1261
+ }
1262
+ idempotencyCheck = { key, principal, payloadHash: checkResult.payloadHash, extraScope };
1263
+ }
1264
+ catch (err) {
1265
+ const reason = err instanceof Error ? err.message : String(err);
1266
+ logger.error('Idempotency check failed', { tool: toolName, error: reason });
1267
+ return finalize((0, errors_1.adcpError)('SERVICE_UNAVAILABLE', {
1268
+ message: 'Idempotency check failed',
1269
+ ...(exposeErrorDetails && { details: { reason } }),
1270
+ }));
1271
+ }
1272
+ }
1273
+ // --- Handler ---
1274
+ try {
1275
+ const result = await handler(params, ctx);
1276
+ // Narrow Error / Submitted arms of the *Response union before
1277
+ // reaching the success-arm builder: wrap() on an Error payload
1278
+ // would still serialize it but apply success-shaped defaults
1279
+ // (revision, confirmed_at, 'Media buy undefined created') to
1280
+ // a shape that doesn't have those fields. Routing here keeps
1281
+ // the wire shape correct regardless of which arm the handler
1282
+ // chose to return.
1283
+ let formatted;
1284
+ if (isFormattedResponse(result)) {
1285
+ formatted = result;
1286
+ }
1287
+ else if (isSubmittedEnvelope(result)) {
1288
+ formatted = wrapSubmittedEnvelope(result);
1289
+ }
1290
+ else if (isErrorArm(result)) {
1291
+ // Log-warn (always) on spec-violating Error items — required
1292
+ // `code`/`message` are spec-mandatory on core/error.json. We
1293
+ // don't fail the response: response-schema validation is
1294
+ // already skipped for `isError: true` envelopes and flipping
1295
+ // a handler-returned Error arm into a framework VALIDATION_ERROR
1296
+ // would obscure the seller's intended error. A steady-state
1297
+ // warn is enough to surface drift in dev/test logs.
1298
+ const malformed = result.errors.some(e => e == null ||
1299
+ typeof e !== 'object' ||
1300
+ typeof e.code !== 'string' ||
1301
+ typeof e.message !== 'string');
1302
+ if (malformed) {
1303
+ logger.warn(`Handler returned ${toolName} Error arm with spec-violating errors[]`, {
1304
+ tool: toolName,
1305
+ errors: result.errors,
1306
+ });
1307
+ }
1308
+ formatted = wrapErrorArm(result);
1309
+ }
1310
+ else {
1311
+ formatted = wrap(result);
1312
+ }
1313
+ // --- Test-controller bridge: augment get_products with seeded fixtures. ---
1314
+ // Only runs when the seller opted in via `testController.getSeededProducts`
1315
+ // AND the request carries a sandbox marker (account.sandbox === true or
1316
+ // context.sandbox === true). When `resolveAccount` returned a concrete
1317
+ // account, we additionally require `ctx.account.sandbox === true` so a
1318
+ // request that happens to include `account.sandbox: true` can't leak
1319
+ // fixtures into a non-sandbox resolved account (belt-and-suspenders).
1320
+ // Seeded products append to whatever the handler returned; `product_id`
1321
+ // collisions resolve with the seeded entry winning, so storyboards that
1322
+ // override default inventory see their fixture.
1323
+ if (toolName === 'get_products' &&
1324
+ testControllerBridge?.getSeededProducts &&
1325
+ !isErrorResponse(formatted) &&
1326
+ (0, test_controller_bridge_1.isSandboxRequest)(params) &&
1327
+ // If resolveAccount produced a record, require it to be flagged
1328
+ // sandbox too. If no account was resolved, the request-signal
1329
+ // check above is the only line of defense — keep that contract.
1330
+ (ctx.account === undefined ||
1331
+ (typeof ctx.account === 'object' &&
1332
+ ctx.account !== null &&
1333
+ ctx.account.sandbox === true))) {
1334
+ try {
1335
+ const bridgeCtx = { input: params };
1336
+ if (ctx.account !== undefined)
1337
+ bridgeCtx.account = ctx.account;
1338
+ const rawSeeded = await testControllerBridge.getSeededProducts(bridgeCtx);
1339
+ const seeded = (0, test_controller_bridge_1.filterValidSeededProducts)(rawSeeded, logger);
1340
+ if (seeded.length > 0) {
1341
+ const sc = formatted.structuredContent;
1342
+ if (sc && typeof sc === 'object') {
1343
+ const merged = (0, test_controller_bridge_1.mergeSeededProductsIntoResponse)(sc, seeded);
1344
+ formatted = wrap(merged);
1345
+ }
1346
+ }
1347
+ }
1348
+ catch (err) {
1349
+ // Bridge failures are sandbox-only by construction, so logging +
1350
+ // returning the handler's response is the right default — a broken
1351
+ // test fixture shouldn't tank the request under test.
1352
+ const reason = err instanceof Error ? err.message : String(err);
1353
+ logger.warn('testController.getSeededProducts failed; returning handler response unchanged', {
1354
+ tool: toolName,
1355
+ error: reason,
1356
+ });
1357
+ }
1358
+ }
1359
+ // --- Response schema validation (opt-in) ---
1360
+ // Runs on the structured payload the handler produced. Errors
1361
+ // have their own envelope (`adcp_error`) and are skipped here —
1362
+ // their shape is enforced by the adcpError() builder.
1363
+ if (responseValidationMode !== 'off' && !isErrorResponse(formatted)) {
1364
+ const payload = formatted.structuredContent;
1365
+ const outcome = (0, schema_validator_1.validateResponse)(toolName, payload);
1366
+ if (!outcome.valid) {
1367
+ logger.warn(`Schema validation warning (response) for ${toolName}: ${(0, schema_validator_1.formatIssues)(outcome.issues)}`, {
1368
+ tool: toolName,
1369
+ issues: outcome.issues,
1370
+ variant: outcome.variant,
1371
+ });
1372
+ if (responseValidationMode === 'strict') {
1373
+ const errPayload = (0, schema_errors_1.buildAdcpValidationErrorPayload)(toolName, 'response', outcome.issues, {
1374
+ exposeSchemaPath: exposeErrorDetails,
1375
+ });
1376
+ const errEnvelope = (0, errors_1.adcpError)('VALIDATION_ERROR', errPayload);
1377
+ if (idempotencyCheck && idempotency) {
1378
+ // Cache the VALIDATION_ERROR briefly so a buyer SDK
1379
+ // retrying on the same key doesn't trigger unbounded
1380
+ // re-execution — strict-mode drift is deterministic,
1381
+ // the next handler call would return the same error.
1382
+ // Short TTL (10s) absorbs a typical retry burst.
1383
+ //
1384
+ // Stores that pre-date #758 may not implement
1385
+ // `saveTransientError`; fall back to `release` so the
1386
+ // claim is at least freed for a fresh retry.
1387
+ try {
1388
+ if (idempotency.saveTransientError) {
1389
+ await idempotency.saveTransientError({
1390
+ principal: idempotencyCheck.principal,
1391
+ key: idempotencyCheck.key,
1392
+ payloadHash: idempotencyCheck.payloadHash,
1393
+ response: errEnvelope,
1394
+ extraScope: idempotencyCheck.extraScope,
1395
+ });
1396
+ }
1397
+ else {
1398
+ await idempotency.release({
1399
+ principal: idempotencyCheck.principal,
1400
+ key: idempotencyCheck.key,
1401
+ extraScope: idempotencyCheck.extraScope,
1402
+ });
1403
+ }
1404
+ }
1405
+ catch (err) {
1406
+ const reason = err instanceof Error ? err.message : String(err);
1407
+ logger.warn('Idempotency transient-error cache failed — retry storm may re-execute handler', {
1408
+ tool: toolName,
1409
+ error: reason,
1410
+ });
1411
+ }
1412
+ }
1413
+ return finalize(errEnvelope);
1414
+ }
1415
+ }
1416
+ }
1417
+ // Cache successful mutations for replay. Errors re-execute on
1418
+ // retry, not replayed — only cache when the wrapped response is
1419
+ // not an error shape. Release the in-flight claim on error so a
1420
+ // retry can re-execute rather than replay the transient failure.
1421
+ //
1422
+ // Cache the FORMATTED envelope, not the raw handler return:
1423
+ // some wrap functions inject non-deterministic fields
1424
+ // (`confirmed_at = new Date().toISOString()`) when the handler
1425
+ // omits them. Re-wrapping on replay would produce a different
1426
+ // `confirmed_at` each time, breaking the "same response on
1427
+ // replay" contract. Caching the formatted envelope pins those
1428
+ // fields to their first-execution values.
1429
+ if (idempotencyCheck && idempotency) {
1430
+ if (!isErrorResponse(formatted)) {
1431
+ try {
1432
+ // Strip `context` before caching — it's a per-request echo
1433
+ // field (buyer's correlation_id), not part of the cached
1434
+ // payload. If we cached it, replays would return the
1435
+ // FIRST caller's correlation_id to every subsequent
1436
+ // retry, breaking end-to-end request tracing. On replay,
1437
+ // `finalize()` re-injects the current request's context.
1438
+ const cacheable = stripEnvelopeEcho(formatted);
1439
+ await idempotency.save({
1440
+ principal: idempotencyCheck.principal,
1441
+ key: idempotencyCheck.key,
1442
+ payloadHash: idempotencyCheck.payloadHash,
1443
+ response: cacheable,
1444
+ extraScope: idempotencyCheck.extraScope,
1445
+ });
1446
+ }
1447
+ catch (err) {
1448
+ const reason = err instanceof Error ? err.message : String(err);
1449
+ logger.warn('Idempotency save failed — response will not be cached', {
1450
+ tool: toolName,
1451
+ error: reason,
1452
+ });
1453
+ }
1454
+ // Fresh-path responses omit `replayed` — per envelope spec,
1455
+ // absence signals fresh execution. The replay path stamps
1456
+ // `replayed: true` on the cached copy at retrieval.
1457
+ }
1458
+ else {
1459
+ try {
1460
+ await idempotency.release({
1461
+ principal: idempotencyCheck.principal,
1462
+ key: idempotencyCheck.key,
1463
+ extraScope: idempotencyCheck.extraScope,
1464
+ });
1465
+ }
1466
+ catch (err) {
1467
+ // Best-effort release; if it fails the claim TTL will
1468
+ // eventually evict. Log and move on.
1469
+ const reason = err instanceof Error ? err.message : String(err);
1470
+ logger.warn('Idempotency release failed — in-flight claim will expire on TTL', {
1471
+ tool: toolName,
1472
+ error: reason,
1473
+ });
1474
+ }
1475
+ }
1476
+ }
1477
+ return finalize(formatted);
1478
+ }
1479
+ catch (err) {
1480
+ // Release the idempotency claim on any thrown path — whether
1481
+ // we unwrap a typed envelope or fall through to SERVICE_UNAVAILABLE,
1482
+ // the handler did not produce a cached response and the next retry
1483
+ // should proceed normally.
1484
+ if (idempotencyCheck && idempotency) {
1485
+ try {
1486
+ await idempotency.release({
1487
+ principal: idempotencyCheck.principal,
1488
+ key: idempotencyCheck.key,
1489
+ extraScope: idempotencyCheck.extraScope,
1490
+ });
1491
+ }
1492
+ catch (releaseErr) {
1493
+ const releaseReason = releaseErr instanceof Error ? releaseErr.message : String(releaseErr);
1494
+ logger.warn('Idempotency release failed — in-flight claim will expire on TTL', {
1495
+ tool: toolName,
1496
+ error: releaseReason,
1497
+ });
1498
+ }
1499
+ }
1500
+ // Auto-unwrap `throw adcpError(...)`. Handlers that throw an
1501
+ // envelope (instead of returning it) should behave identically —
1502
+ // otherwise the envelope surfaces as `[object Object]` inside
1503
+ // SERVICE_UNAVAILABLE and the buyer loses the typed domain code.
1504
+ // Matrix harnesses and fresh-built agents consistently get this
1505
+ // wrong; unwrapping at the dispatcher closes the class of bugs
1506
+ // instead of relying on every skill to show `return` over `throw`.
1507
+ if (isThrownAdcpError(err)) {
1508
+ const env = err.structuredContent.adcp_error;
1509
+ // Log message + stack so forensic review sees what was thrown
1510
+ // (not just the code). The thrown envelope is a plain object so
1511
+ // `.stack` is typically absent, but authors sometimes subclass
1512
+ // `Error` and attach envelope fields; capture it defensively.
1513
+ logger.warn('Handler threw an adcpError envelope — prefer `return` over `throw` for typed errors', {
1514
+ tool: toolName,
1515
+ handler: handlerKey,
1516
+ code: env.code,
1517
+ message: env.message,
1518
+ stack: err instanceof Error ? err.stack : undefined,
1519
+ });
1520
+ return finalize(err);
1521
+ }
1522
+ const reason = err instanceof Error ? err.message : String(err);
1523
+ // Log the full stack — `logger.error` with just the message turned
1524
+ // every "Handler failed" into a guessing game for agent authors.
1525
+ // Stack tells you which import/typo/access chain blew up.
1526
+ logger.error('Handler failed', {
1527
+ tool: toolName,
1528
+ handler: handlerKey,
1529
+ error: reason,
1530
+ stack: err instanceof Error ? err.stack : undefined,
1531
+ });
1532
+ return finalize((0, errors_1.adcpError)('SERVICE_UNAVAILABLE', {
1533
+ // Include the cause message directly in the response text when
1534
+ // `exposeErrorDetails` is on. The opaque
1535
+ // "Tool X encountered an internal error" string cost us weeks
1536
+ // of diagnostic time on the matrix harness — dev callers want
1537
+ // the real reason at the call site, not hidden in server logs.
1538
+ message: exposeErrorDetails
1539
+ ? `Tool ${toolName} handler threw: ${reason}`
1540
+ : `Tool ${toolName} encountered an internal error`,
1541
+ ...(exposeErrorDetails && { details: { reason, handler: handlerKey } }),
1542
+ }));
1543
+ }
1544
+ };
1545
+ // Register a PASSTHROUGH input schema (#909). The MCP SDK's Zod
1546
+ // validator only fires on the MCP transport — A2A calls the
1547
+ // handler via AdcpServer.invoke(), bypassing it. Registering the
1548
+ // real per-tool Zod schema meant MCP and A2A produced different
1549
+ // verdicts and different error shapes for the same malformed
1550
+ // request. Our framework request validator (AJV, loaded from
1551
+ // schemas/cache/<version>/) runs inside the handler closure on
1552
+ // BOTH transports and produces a structured adcp_error envelope;
1553
+ // make it authoritative.
1554
+ //
1555
+ // Passthrough (not omit): the SDK's `validateToolInput` returns
1556
+ // `undefined` when `inputSchema` is absent (see @modelcontextprotocol/sdk
1557
+ // server/mcp.js), and passes that `undefined` verbatim to the
1558
+ // handler — destroying the actual arguments. `z.object({}).passthrough()`
1559
+ // keeps every key intact, so args still reach the closure.
1560
+ //
1561
+ // Trade-off: MCP `tools/list` publishes `{ type: 'object' }` for
1562
+ // every tool (no per-tool parameter schema). This is intentional,
1563
+ // not a wiring gap — inlining ~50 full request schemas in
1564
+ // `tools/list` would balloon the context window for LLM consumers,
1565
+ // who are the primary readers of MCP discovery. Tool shapes live
1566
+ // in `docs/llms.txt`, the SKILL.md files, and `schemas/cache/`,
1567
+ // which curated agents read on demand instead of paying the cost
1568
+ // every connection. AdCP-native discovery via `get_adcp_capabilities`
1569
+ // already works over both transports; upstream #3057 proposes a
1570
+ // `get_schema` capability tool for programmatic per-tool shape
1571
+ // discovery.
1572
+ //
1573
+ // Implication for downstream consumers: if you need a tool's shape
1574
+ // (cross-version field-stripping, gating, validation), read raw
1575
+ // JSON from `schemas/cache/{version}/` via `schema-loader.ts` —
1576
+ // see `schemaAllowsTopLevelField` for the canonical pattern (#940).
1577
+ // Don't try to recover the shape from `tools/list`; it's empty by
1578
+ // design and will fail open.
1579
+ server.registerTool(toolName, {
1580
+ inputSchema: PASSTHROUGH_INPUT_SCHEMA,
1581
+ ...(meta?.annotations != null && { annotations: meta.annotations }),
1582
+ }, toolHandler);
1583
+ registeredToolNames.add(toolName);
1584
+ }
1585
+ }
1586
+ // ─── Custom tools ──────────────────────────────────────────
1587
+ // Seller extensions outside AdcpToolMap. No idempotency / governance /
1588
+ // response-wrapping — handlers own those concerns directly. Registered
1589
+ // after spec tools so the collision check can authoritatively block
1590
+ // overlap with framework-owned names.
1591
+ if (config.customTools) {
1592
+ const customNames = Object.keys(config.customTools);
1593
+ for (const customName of customNames) {
1594
+ if (registeredToolNames.has(customName)) {
1595
+ throw new Error(`createAdcpServer: customTools["${customName}"] collides with a framework-registered tool. ` +
1596
+ `Rename the custom tool or remove the handler from the conflicting domain group.`);
1597
+ }
1598
+ if (customName === 'get_adcp_capabilities') {
1599
+ throw new Error(`createAdcpServer: customTools["get_adcp_capabilities"] is not allowed. ` +
1600
+ `The framework auto-generates this tool from registered handlers and capability config.`);
1601
+ }
1602
+ const custom = config.customTools[customName];
1603
+ if (!custom)
1604
+ continue;
1605
+ const { description, title, inputSchema, outputSchema, annotations, handler } = custom;
1606
+ server.registerTool(customName, {
1607
+ ...(description != null && { description }),
1608
+ ...(title != null && { title }),
1609
+ ...(inputSchema != null && { inputSchema }),
1610
+ ...(outputSchema != null && { outputSchema }),
1611
+ ...(annotations != null && { annotations }),
1612
+ }, handler);
1613
+ registeredToolNames.add(customName);
1614
+ }
1615
+ }
1616
+ // Tool coherence warnings
1617
+ checkCoherence(registeredToolNames, logger);
1618
+ // --- Idempotency configuration guardrails ---
1619
+ //
1620
+ // A seller that registers mutating handlers but doesn't supply an
1621
+ // `idempotency` store cannot honor the v3 retry contract: buyer
1622
+ // retries will double-book because there's no replay cache. The
1623
+ // framework logs a loud error at server-creation time so operators
1624
+ // notice before shipping to production, but doesn't throw — that
1625
+ // would make the framework unusable in testing contexts where
1626
+ // idempotency isn't the unit-under-test. Operators who've thought
1627
+ // about it can suppress the error by setting
1628
+ // `capabilities.idempotency.replay_ttl_seconds` directly.
1629
+ const registeredMutatingTools = [...registeredToolNames].filter(t => idempotency_1.MUTATING_TASKS.has(t));
1630
+ if (registeredMutatingTools.length > 0 &&
1631
+ !idempotency &&
1632
+ !idempotencyDisabled &&
1633
+ !capConfig?.idempotency?.replay_ttl_seconds) {
1634
+ logger.error(`createAdcpServer: ${registeredMutatingTools.length} mutating tools registered ` +
1635
+ `(${registeredMutatingTools.slice(0, 3).join(', ')}${registeredMutatingTools.length > 3 ? ', ...' : ''}) without an idempotency store. AdCP v3 requires sellers to support idempotent replay ` +
1636
+ `on mutating requests — buyer retries will double-book without it. ` +
1637
+ `Pass \`idempotency: createIdempotencyStore({ backend, ttlSeconds })\`, ` +
1638
+ `or set \`capabilities.idempotency.replay_ttl_seconds\` to acknowledge the non-compliance.`);
1639
+ }
1640
+ // MUTATING_TASKS is derived at module load by introspecting Zod
1641
+ // schemas. If Zod's internals change or the tool-request-schemas map
1642
+ // shifts, the derivation can silently return an empty set — which
1643
+ // would make every mutating request bypass idempotency enforcement.
1644
+ // Fail loud at server startup if the introspection produced
1645
+ // surprisingly few results.
1646
+ if (idempotency_1.MUTATING_TASKS.size < 20) {
1647
+ throw new Error(`createAdcpServer: MUTATING_TASKS set has only ${idempotency_1.MUTATING_TASKS.size} entries — expected at least 20. ` +
1648
+ `Schema introspection likely broke (Zod upgrade? tool-request-schemas change?). ` +
1649
+ `Check \`src/lib/utils/idempotency.ts:deriveMutatingTasks\`.`);
1650
+ }
1651
+ // --- Auto-register get_adcp_capabilities ---
1652
+ const protocols = detectProtocols([...registeredToolNames]);
1653
+ // Idempotency capability declaration. Spec defines a discriminated
1654
+ // union (`get-adcp-capabilities-response.json` `adcp.idempotency.oneOf`):
1655
+ // - `IdempotencySupported` → `{ supported: true, replay_ttl_seconds: N }`
1656
+ // - `IdempotencyUnsupported` → `{ supported: false }` (replay_ttl_seconds MUST be absent)
1657
+ // Disabled mode flips to `IdempotencyUnsupported` so the wire contract
1658
+ // matches actual behavior — buyers reading capabilities can fall back to
1659
+ // natural-key dedup before retrying spend-committing operations. Lying
1660
+ // here (declaring `supported: true` while skipping replay) is a
1661
+ // money-flow footgun: a 504-retry under the same key double-books.
1662
+ const idempotencyCapability = idempotencyDisabled
1663
+ ? { supported: false }
1664
+ : {
1665
+ supported: true,
1666
+ replay_ttl_seconds: clampReplayTtl(capConfig?.idempotency?.replay_ttl_seconds ?? idempotency?.ttlSeconds ?? 86400),
1667
+ };
1668
+ const capabilitiesData = {
1669
+ adcp: {
1670
+ major_versions: capConfig?.major_versions ?? [3],
1671
+ idempotency: idempotencyCapability,
1672
+ },
1673
+ supported_protocols: protocols,
1674
+ };
1675
+ if (protocols.includes('media_buy') || capConfig?.features) {
1676
+ capabilitiesData.media_buy = {
1677
+ features: {
1678
+ inline_creative_management: capConfig?.features?.inlineCreativeManagement ?? false,
1679
+ property_list_filtering: capConfig?.features?.propertyListFiltering ?? false,
1680
+ content_standards: capConfig?.features?.contentStandards ?? false,
1681
+ conversion_tracking: capConfig?.features?.conversionTracking ?? false,
1682
+ audience_targeting: capConfig?.features?.audienceTargeting ?? false,
1683
+ },
1684
+ ...(capConfig?.portfolio && { portfolio: capConfig.portfolio }),
1685
+ };
1686
+ }
1687
+ if (capConfig?.account) {
1688
+ capabilitiesData.account = {
1689
+ require_operator_auth: capConfig.account.requireOperatorAuth ?? false,
1690
+ ...(capConfig.account.authorizationEndpoint && {
1691
+ authorization_endpoint: capConfig.account.authorizationEndpoint,
1692
+ }),
1693
+ supported_billing: capConfig.account.supportedBilling ?? [],
1694
+ ...(capConfig.account.defaultBilling && { default_billing: capConfig.account.defaultBilling }),
1695
+ required_for_products: capConfig.account.requiredForProducts ?? false,
1696
+ sandbox: capConfig.account.sandbox ?? false,
1697
+ };
1698
+ }
1699
+ if (capConfig?.creative) {
1700
+ capabilitiesData.creative = {
1701
+ supports_compliance: capConfig.creative.supportsCompliance ?? false,
1702
+ has_creative_library: capConfig.creative.hasCreativeLibrary ?? false,
1703
+ supports_generation: capConfig.creative.supportsGeneration ?? false,
1704
+ supports_transformation: capConfig.creative.supportsTransformation ?? false,
1705
+ };
1706
+ }
1707
+ if (capConfig?.extensions_supported?.length) {
1708
+ capabilitiesData.extensions_supported = capConfig.extensions_supported;
1709
+ }
1710
+ if (capConfig?.request_signing) {
1711
+ capabilitiesData.request_signing = capConfig.request_signing;
1712
+ }
1713
+ if (capConfig?.specialisms?.length) {
1714
+ capabilitiesData.specialisms = capConfig.specialisms;
1715
+ }
1716
+ if (capConfig?.overrides) {
1717
+ applyCapabilityOverrides(capabilitiesData, capConfig.overrides);
1718
+ }
1719
+ // Stamp the SDK version so conformance tooling can surface version-staleness
1720
+ // hints when the agent's reported version predates recommended helpers.
1721
+ // Cast needed because GetAdCPCapabilitiesResponse is generated and lacks
1722
+ // this field; it remains a forward-compatible extension until the spec
1723
+ // formally defines library_version in a future AdCP minor.
1724
+ capabilitiesData.library_version = `@adcp/client@${version_1.LIBRARY_VERSION}`;
1725
+ // Passthrough inputSchema — framework validation is authoritative on
1726
+ // both transports (#909). Same rationale as the domain-tool loop above.
1727
+ server.registerTool('get_adcp_capabilities', {
1728
+ inputSchema: PASSTHROUGH_INPUT_SCHEMA,
1729
+ annotations: { readOnlyHint: true },
1730
+ }, (async (params) => {
1731
+ const data = { ...capabilitiesData };
1732
+ const ctx = params?.context;
1733
+ if (ctx !== null && typeof ctx === 'object' && !Array.isArray(ctx)) {
1734
+ data.context = ctx;
1735
+ }
1736
+ return (0, responses_1.capabilitiesResponse)(data);
1737
+ }));
1738
+ const compliance = {
1739
+ async reset({ force = false, allowProduction = false, } = {}) {
1740
+ // Check NODE_ENV BEFORE store-shape probes: the environment guard
1741
+ // is the strongest signal that "this is not a test harness." An
1742
+ // operator who reached this call in production by mistake hits the
1743
+ // env gate regardless of which backend they wired.
1744
+ if (!allowProduction && process.env.NODE_ENV === 'production') {
1745
+ throw new Error('AdcpServer.compliance.reset: refused to run with NODE_ENV=production. ' +
1746
+ 'Pass `{ allowProduction: true }` if you deliberately set NODE_ENV=production in a test environment, ' +
1747
+ 'or unset NODE_ENV before running storyboards.');
1748
+ }
1749
+ // Positive allowlist for stores, not method-presence. A
1750
+ // PostgresStateStore might expose `.clear()` for its own test
1751
+ // utility needs — we don't want method-existence alone to permit
1752
+ // a flush that would take out a shared test cluster. `force: true`
1753
+ // is the documented opt-in for non-memory backends.
1754
+ const stateStoreIsMemory = stateStore instanceof state_store_1.InMemoryStateStore;
1755
+ const idempotencyIsFlushable = !idempotency || hasIdempotencyClearAll(idempotency);
1756
+ if (!force) {
1757
+ if (!stateStoreIsMemory) {
1758
+ throw new Error('AdcpServer.compliance.reset: configured stateStore is not InMemoryStateStore. ' +
1759
+ 'Pass `{ force: true }` to acknowledge that flushing the configured backend is safe for this environment ' +
1760
+ '(e.g., a disposable test Postgres).');
1761
+ }
1762
+ if (!idempotencyIsFlushable) {
1763
+ throw new Error('AdcpServer.compliance.reset: configured idempotency backend does not expose `clearAll()`. ' +
1764
+ 'Use `memoryBackend()` for test harnesses, or pass `{ force: true }` to skip idempotency flush.');
1765
+ }
1766
+ }
1767
+ // `force` bypasses the allowlist checks but never the flush
1768
+ // itself — if we reached here, the caller wants the flush to
1769
+ // happen. `clear()` is only called when the store exposes it;
1770
+ // a store without `clear()` reaching here under `force: true`
1771
+ // is a no-op for the state side, which matches the shape the
1772
+ // caller opted into.
1773
+ const storeWithClear = stateStore;
1774
+ if (typeof storeWithClear.clear === 'function')
1775
+ storeWithClear.clear();
1776
+ if (idempotency && idempotency.clearAll)
1777
+ await idempotency.clearAll();
1778
+ },
1779
+ };
1780
+ // Throws ConfigurationError on cross-major pin. See utils/adcp-version-config.ts.
1781
+ const adcpVersion = (0, adcp_version_config_1.resolveAdcpVersion)(configuredAdcpVersion);
1782
+ const wrapped = (0, adcp_server_1.wrapMcpServer)(server, compliance, adcpVersion);
1783
+ // Attach the auto-wired preTransport so `serve()` mounts the verifier
1784
+ // on the HTTP transport. Stashed under a non-enumerable symbol property
1785
+ // on the wrapper — it's a private contract between this function and
1786
+ // `serve()` for wiring, not part of the AdcpServer public API.
1787
+ if (signedRequests) {
1788
+ const preTransport = buildSignedRequestsPreTransport(signedRequests, capConfig?.request_signing?.required_for);
1789
+ Object.defineProperty(wrapped, exports.ADCP_PRE_TRANSPORT, {
1790
+ value: preTransport,
1791
+ enumerable: false,
1792
+ writable: false,
1793
+ configurable: true,
1794
+ });
1795
+ }
1796
+ const signedRequestsState = {
1797
+ autoWired: Boolean(signedRequests),
1798
+ specialismClaimed: claimsSignedRequests,
1799
+ capabilitySupported: capConfig?.request_signing?.supported === true,
1800
+ mismatch: claimsSignedRequests && !signedRequests ? 'claim_without_config' : 'ok',
1801
+ };
1802
+ Object.defineProperty(wrapped, exports.ADCP_SIGNED_REQUESTS_STATE, {
1803
+ value: signedRequestsState,
1804
+ enumerable: false,
1805
+ configurable: true,
1806
+ writable: false,
1807
+ });
1808
+ Object.defineProperty(wrapped, adcp_server_1.ADCP_STATE_STORE, {
1809
+ value: stateStore,
1810
+ enumerable: false,
1811
+ configurable: true,
1812
+ writable: false,
1813
+ });
1814
+ // Expose the capabilitiesData object so post-registration helpers
1815
+ // (registerTestController) can add spec-defined capability blocks
1816
+ // — comply_test_controller is registered AFTER createAdcpServer,
1817
+ // so the compliance_testing block can't be emitted eagerly.
1818
+ Object.defineProperty(wrapped, adcp_server_1.ADCP_CAPABILITIES, {
1819
+ value: capabilitiesData,
1820
+ enumerable: false,
1821
+ configurable: true,
1822
+ writable: false,
1823
+ });
1824
+ logger.info('AdCP server created', {
1825
+ tools: [...registeredToolNames],
1826
+ protocols,
1827
+ signedRequests: signedRequestsState,
1828
+ });
1829
+ return wrapped;
1830
+ }
1831
+ //# sourceMappingURL=create-adcp-server.js.map