@adcp/sdk 12.0.6 → 12.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1452) hide show
  1. package/ADCP_VERSION +1 -1
  2. package/compliance/cache/{3.1.2.previous → 3.1.5}/domains/creative/scenarios/canonical_supported_formats.yaml +4 -8
  3. package/compliance/cache/{3.1.2.previous/protocols → 3.1.5/domains}/creative/scenarios/evaluator_auth.yaml +22 -4
  4. package/compliance/cache/{3.1.2/protocols → 3.1.5/domains}/media-buy/scenarios/available_actions.yaml +8 -2
  5. package/compliance/cache/{3.1.2/protocols → 3.1.5/domains}/media-buy/scenarios/inventory_list_no_match.yaml +1 -1
  6. package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/inventory_list_targeting.yaml +1 -1
  7. package/compliance/cache/{3.1.2 → 3.1.5}/index.json +3 -3
  8. package/compliance/cache/{3.1.2/domains → 3.1.5/protocols}/creative/scenarios/canonical_supported_formats.yaml +4 -8
  9. package/compliance/cache/{3.1.2/domains → 3.1.5/protocols}/creative/scenarios/evaluator_auth.yaml +22 -4
  10. package/compliance/cache/{3.1.2.previous → 3.1.5}/protocols/media-buy/scenarios/available_actions.yaml +8 -2
  11. package/compliance/cache/{3.1.2.previous/domains → 3.1.5/protocols}/media-buy/scenarios/inventory_list_no_match.yaml +1 -1
  12. package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/inventory_list_targeting.yaml +1 -1
  13. package/compliance/cache/{3.1.2.previous → 3.1.5}/test-kits/parallel-dispatch-runner.yaml +1 -1
  14. package/compliance/cache/{3.1.2.previous → 3.1.5}/test-kits/rate-limit-trip-runner.yaml +6 -5
  15. package/compliance/cache/{3.1.2.previous → 3.1.5}/universal/idempotency.yaml +5 -5
  16. package/compliance/cache/{3.1.2.previous → 3.1.5}/universal/runner-output-contract.yaml +58 -0
  17. package/compliance/cache/{3.1.2 → 3.1.5}/universal/storyboard-schema.yaml +9 -2
  18. package/compliance/cache/{3.1.2/protocols → 3.1.5.previous/domains}/creative/scenarios/canonical_supported_formats.yaml +4 -8
  19. package/compliance/cache/{3.1.2/protocols → 3.1.5.previous/domains}/creative/scenarios/evaluator_auth.yaml +22 -4
  20. package/compliance/cache/{3.1.2 → 3.1.5.previous}/domains/media-buy/scenarios/available_actions.yaml +8 -2
  21. package/compliance/cache/{3.1.2.previous/protocols → 3.1.5.previous/domains}/media-buy/scenarios/inventory_list_no_match.yaml +1 -1
  22. package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/inventory_list_targeting.yaml +1 -1
  23. package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/index.json +3 -3
  24. package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/creative/scenarios/canonical_supported_formats.yaml +4 -8
  25. package/compliance/cache/{3.1.2.previous/domains → 3.1.5.previous/protocols}/creative/scenarios/evaluator_auth.yaml +22 -4
  26. package/compliance/cache/{3.1.2.previous/domains → 3.1.5.previous/protocols}/media-buy/scenarios/available_actions.yaml +8 -2
  27. package/compliance/cache/{3.1.2/domains → 3.1.5.previous/protocols}/media-buy/scenarios/inventory_list_no_match.yaml +1 -1
  28. package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/inventory_list_targeting.yaml +1 -1
  29. package/compliance/cache/{3.1.2 → 3.1.5.previous}/test-kits/parallel-dispatch-runner.yaml +1 -1
  30. package/compliance/cache/{3.1.2 → 3.1.5.previous}/test-kits/rate-limit-trip-runner.yaml +6 -5
  31. package/compliance/cache/{3.1.2 → 3.1.5.previous}/universal/idempotency.yaml +5 -5
  32. package/compliance/cache/{3.1.2 → 3.1.5.previous}/universal/runner-output-contract.yaml +58 -0
  33. package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/storyboard-schema.yaml +9 -2
  34. package/dist/lib/auth/oauth/authorization-required.d.mts +3 -0
  35. package/dist/lib/auth/oauth/authorization-required.d.ts +3 -0
  36. package/dist/lib/auth/oauth/authorization-required.d.ts.map +1 -1
  37. package/dist/lib/auth/oauth/authorization-required.js +12 -9
  38. package/dist/lib/auth/oauth/authorization-required.js.map +1 -1
  39. package/dist/lib/auth/oauth/authorization-required.mjs +12 -9
  40. package/dist/lib/auth/oauth/authorization-required.mjs.map +1 -1
  41. package/dist/lib/core/AgentClient.d.ts.map +1 -1
  42. package/dist/lib/core/SingleAgentClient.d.mts +2 -2
  43. package/dist/lib/core/SingleAgentClient.d.ts +2 -2
  44. package/dist/lib/core/SingleAgentClient.d.ts.map +1 -1
  45. package/dist/lib/core/SingleAgentClient.js +145 -55
  46. package/dist/lib/core/SingleAgentClient.js.map +1 -1
  47. package/dist/lib/core/SingleAgentClient.mjs +145 -55
  48. package/dist/lib/core/SingleAgentClient.mjs.map +1 -1
  49. package/dist/lib/core/TaskExecutor.js +1 -1
  50. package/dist/lib/core/TaskExecutor.js.map +1 -1
  51. package/dist/lib/core/TaskExecutor.mjs +1 -1
  52. package/dist/lib/core/TaskExecutor.mjs.map +1 -1
  53. package/dist/lib/net/ssrf-fetch.d.mts +13 -1
  54. package/dist/lib/net/ssrf-fetch.d.ts +13 -1
  55. package/dist/lib/net/ssrf-fetch.d.ts.map +1 -1
  56. package/dist/lib/net/ssrf-fetch.js +14 -7
  57. package/dist/lib/net/ssrf-fetch.js.map +1 -1
  58. package/dist/lib/net/ssrf-fetch.mjs +14 -7
  59. package/dist/lib/net/ssrf-fetch.mjs.map +1 -1
  60. package/dist/lib/protocols/a2a.d.mts +2 -2
  61. package/dist/lib/protocols/a2a.d.ts +2 -2
  62. package/dist/lib/protocols/a2a.d.ts.map +1 -1
  63. package/dist/lib/protocols/a2a.js +14 -9
  64. package/dist/lib/protocols/a2a.js.map +1 -1
  65. package/dist/lib/protocols/a2a.mjs +14 -9
  66. package/dist/lib/protocols/a2a.mjs.map +1 -1
  67. package/dist/lib/protocols/index.d.mts +20 -3
  68. package/dist/lib/protocols/index.d.ts +20 -3
  69. package/dist/lib/protocols/index.d.ts.map +1 -1
  70. package/dist/lib/protocols/index.js +40 -18
  71. package/dist/lib/protocols/index.js.map +1 -1
  72. package/dist/lib/protocols/index.mjs +40 -18
  73. package/dist/lib/protocols/index.mjs.map +1 -1
  74. package/dist/lib/protocols/mcp-tasks.d.mts +3 -0
  75. package/dist/lib/protocols/mcp-tasks.d.ts +3 -0
  76. package/dist/lib/protocols/mcp-tasks.d.ts.map +1 -1
  77. package/dist/lib/protocols/mcp-tasks.js +21 -11
  78. package/dist/lib/protocols/mcp-tasks.js.map +1 -1
  79. package/dist/lib/protocols/mcp-tasks.mjs +21 -11
  80. package/dist/lib/protocols/mcp-tasks.mjs.map +1 -1
  81. package/dist/lib/schemas-data/3.1/a2ui/bound-value.json +1 -1
  82. package/dist/lib/schemas-data/3.1/a2ui/component.json +1 -1
  83. package/dist/lib/schemas-data/3.1/a2ui/si-catalog.json +25 -25
  84. package/dist/lib/schemas-data/3.1/a2ui/surface.json +2 -2
  85. package/dist/lib/schemas-data/3.1/a2ui/user-action.json +1 -1
  86. package/dist/lib/schemas-data/3.1/aao/agent-publishers.json +1 -1
  87. package/dist/lib/schemas-data/3.1/account/get-account-financials-request.json +6 -6
  88. package/dist/lib/schemas-data/3.1/account/get-account-financials-response.json +12 -12
  89. package/dist/lib/schemas-data/3.1/account/list-accounts-request.json +6 -6
  90. package/dist/lib/schemas-data/3.1/account/list-accounts-response.json +8 -8
  91. package/dist/lib/schemas-data/3.1/account/report-usage-request.json +6 -6
  92. package/dist/lib/schemas-data/3.1/account/report-usage-response.json +6 -6
  93. package/dist/lib/schemas-data/3.1/account/sync-accounts-request.json +12 -12
  94. package/dist/lib/schemas-data/3.1/account/sync-accounts-response.json +16 -16
  95. package/dist/lib/schemas-data/3.1/account/sync-governance-request.json +6 -6
  96. package/dist/lib/schemas-data/3.1/account/sync-governance-response.json +10 -10
  97. package/dist/lib/schemas-data/3.1/adagents.json +29 -29
  98. package/dist/lib/schemas-data/3.1/brand/acquire-rights-request.json +10 -10
  99. package/dist/lib/schemas-data/3.1/brand/acquire-rights-response.json +16 -16
  100. package/dist/lib/schemas-data/3.1/brand/creative-approval-request.json +5 -5
  101. package/dist/lib/schemas-data/3.1/brand/creative-approval-response.json +12 -12
  102. package/dist/lib/schemas-data/3.1/brand/get-brand-identity-request.json +4 -4
  103. package/dist/lib/schemas-data/3.1/brand/get-brand-identity-response.json +10 -10
  104. package/dist/lib/schemas-data/3.1/brand/get-rights-request.json +8 -8
  105. package/dist/lib/schemas-data/3.1/brand/get-rights-response.json +11 -11
  106. package/dist/lib/schemas-data/3.1/brand/revocation-notification.json +4 -4
  107. package/dist/lib/schemas-data/3.1/brand/rights-pricing-option.json +5 -5
  108. package/dist/lib/schemas-data/3.1/brand/rights-terms.json +3 -3
  109. package/dist/lib/schemas-data/3.1/brand/search-brands-request.json +6 -6
  110. package/dist/lib/schemas-data/3.1/brand/search-brands-response.json +11 -11
  111. package/dist/lib/schemas-data/3.1/brand/update-rights-request.json +6 -6
  112. package/dist/lib/schemas-data/3.1/brand/update-rights-response.json +11 -11
  113. package/dist/lib/schemas-data/3.1/brand/verification-status.json +1 -1
  114. package/dist/lib/schemas-data/3.1/brand/verify-brand-claim-request.json +2 -2
  115. package/dist/lib/schemas-data/3.1/brand/verify-brand-claim-response.json +13 -13
  116. package/dist/lib/schemas-data/3.1/brand/verify-brand-claims-request.json +2 -2
  117. package/dist/lib/schemas-data/3.1/brand/verify-brand-claims-response.json +13 -13
  118. package/dist/lib/schemas-data/3.1/brand.json +21 -21
  119. package/dist/lib/schemas-data/3.1/bundled/content-standards/calibrate-content-request.json +12 -12
  120. package/dist/lib/schemas-data/3.1/bundled/content-standards/calibrate-content-response.json +12 -12
  121. package/dist/lib/schemas-data/3.1/bundled/content-standards/create-content-standards-request.json +16 -16
  122. package/dist/lib/schemas-data/3.1/bundled/content-standards/create-content-standards-response.json +10 -10
  123. package/dist/lib/schemas-data/3.1/bundled/content-standards/get-content-standards-request.json +5 -5
  124. package/dist/lib/schemas-data/3.1/bundled/content-standards/get-content-standards-response.json +23 -23
  125. package/dist/lib/schemas-data/3.1/bundled/content-standards/get-media-buy-artifacts-request.json +16 -16
  126. package/dist/lib/schemas-data/3.1/bundled/content-standards/get-media-buy-artifacts-response.json +18 -18
  127. package/dist/lib/schemas-data/3.1/bundled/content-standards/list-content-standards-request.json +7 -7
  128. package/dist/lib/schemas-data/3.1/bundled/content-standards/list-content-standards-response.json +24 -24
  129. package/dist/lib/schemas-data/3.1/bundled/content-standards/update-content-standards-request.json +16 -16
  130. package/dist/lib/schemas-data/3.1/bundled/content-standards/update-content-standards-response.json +10 -10
  131. package/dist/lib/schemas-data/3.1/bundled/content-standards/validate-content-delivery-request.json +12 -12
  132. package/dist/lib/schemas-data/3.1/bundled/content-standards/validate-content-delivery-response.json +12 -12
  133. package/dist/lib/schemas-data/3.1/bundled/core/tasks-get-request.json +16 -16
  134. package/dist/lib/schemas-data/3.1/bundled/core/tasks-get-response.json +257 -181
  135. package/dist/lib/schemas-data/3.1/bundled/core/tasks-list-request.json +21 -21
  136. package/dist/lib/schemas-data/3.1/bundled/core/tasks-list-response.json +11 -11
  137. package/dist/lib/schemas-data/3.1/bundled/creative/get-creative-delivery-request.json +17 -17
  138. package/dist/lib/schemas-data/3.1/bundled/creative/get-creative-delivery-response.json +56 -56
  139. package/dist/lib/schemas-data/3.1/bundled/creative/get-creative-features-request.json +44 -44
  140. package/dist/lib/schemas-data/3.1/bundled/creative/get-creative-features-response.json +13 -13
  141. package/dist/lib/schemas-data/3.1/bundled/creative/list-creative-formats-request.json +16 -16
  142. package/dist/lib/schemas-data/3.1/bundled/creative/list-creative-formats-response.json +48 -48
  143. package/dist/lib/schemas-data/3.1/bundled/creative/list-creatives-request.json +17 -17
  144. package/dist/lib/schemas-data/3.1/bundled/creative/list-creatives-response.json +56 -56
  145. package/dist/lib/schemas-data/3.1/bundled/creative/list-transformers-request.json +18 -18
  146. package/dist/lib/schemas-data/3.1/bundled/creative/list-transformers-response.json +16 -16
  147. package/dist/lib/schemas-data/3.1/bundled/creative/preview-creative-request.json +44 -44
  148. package/dist/lib/schemas-data/3.1/bundled/creative/preview-creative-response.json +50 -50
  149. package/dist/lib/schemas-data/3.1/bundled/creative/sync-creatives-request.json +47 -47
  150. package/dist/lib/schemas-data/3.1/bundled/creative/sync-creatives-response.json +27 -27
  151. package/dist/lib/schemas-data/3.1/bundled/creative/validate-input-request.json +44 -44
  152. package/dist/lib/schemas-data/3.1/bundled/creative/validate-input-response.json +12 -12
  153. package/dist/lib/schemas-data/3.1/bundled/media-buy/build-creative-request.json +53 -53
  154. package/dist/lib/schemas-data/3.1/bundled/media-buy/build-creative-response.json +54 -54
  155. package/dist/lib/schemas-data/3.1/bundled/media-buy/create-media-buy-request.json +83 -83
  156. package/dist/lib/schemas-data/3.1/bundled/media-buy/create-media-buy-response.json +77 -77
  157. package/dist/lib/schemas-data/3.1/bundled/media-buy/get-media-buy-delivery-request.json +25 -25
  158. package/dist/lib/schemas-data/3.1/bundled/media-buy/get-media-buy-delivery-response.json +40 -40
  159. package/dist/lib/schemas-data/3.1/bundled/media-buy/get-media-buys-request.json +18 -18
  160. package/dist/lib/schemas-data/3.1/bundled/media-buy/get-media-buys-response.json +65 -65
  161. package/dist/lib/schemas-data/3.1/bundled/media-buy/get-products-request.json +49 -49
  162. package/dist/lib/schemas-data/3.1/bundled/media-buy/get-products-response.json +137 -99
  163. package/dist/lib/schemas-data/3.1/bundled/media-buy/list-creative-formats-request.json +12 -12
  164. package/dist/lib/schemas-data/3.1/bundled/media-buy/list-creative-formats-response.json +48 -48
  165. package/dist/lib/schemas-data/3.1/bundled/media-buy/log-event-request.json +12 -12
  166. package/dist/lib/schemas-data/3.1/bundled/media-buy/log-event-response.json +10 -10
  167. package/dist/lib/schemas-data/3.1/bundled/media-buy/package-request.json +79 -79
  168. package/dist/lib/schemas-data/3.1/bundled/media-buy/provide-performance-feedback-request.json +8 -8
  169. package/dist/lib/schemas-data/3.1/bundled/media-buy/provide-performance-feedback-response.json +10 -10
  170. package/dist/lib/schemas-data/3.1/bundled/media-buy/sync-audiences-request.json +18 -18
  171. package/dist/lib/schemas-data/3.1/bundled/media-buy/sync-audiences-response.json +12 -12
  172. package/dist/lib/schemas-data/3.1/bundled/media-buy/sync-catalogs-request.json +26 -26
  173. package/dist/lib/schemas-data/3.1/bundled/media-buy/sync-catalogs-response.json +12 -12
  174. package/dist/lib/schemas-data/3.1/bundled/media-buy/sync-event-sources-request.json +19 -19
  175. package/dist/lib/schemas-data/3.1/bundled/media-buy/sync-event-sources-response.json +16 -16
  176. package/dist/lib/schemas-data/3.1/bundled/media-buy/update-media-buy-request.json +79 -79
  177. package/dist/lib/schemas-data/3.1/bundled/media-buy/update-media-buy-response.json +71 -71
  178. package/dist/lib/schemas-data/3.1/bundled/property/create-property-list-request.json +18 -18
  179. package/dist/lib/schemas-data/3.1/bundled/property/create-property-list-response.json +26 -26
  180. package/dist/lib/schemas-data/3.1/bundled/property/delete-property-list-request.json +16 -16
  181. package/dist/lib/schemas-data/3.1/bundled/property/delete-property-list-response.json +10 -10
  182. package/dist/lib/schemas-data/3.1/bundled/property/get-property-list-request.json +16 -16
  183. package/dist/lib/schemas-data/3.1/bundled/property/get-property-list-response.json +27 -27
  184. package/dist/lib/schemas-data/3.1/bundled/property/list-property-lists-request.json +17 -17
  185. package/dist/lib/schemas-data/3.1/bundled/property/list-property-lists-response.json +27 -27
  186. package/dist/lib/schemas-data/3.1/bundled/property/update-property-list-request.json +18 -18
  187. package/dist/lib/schemas-data/3.1/bundled/property/update-property-list-response.json +26 -26
  188. package/dist/lib/schemas-data/3.1/bundled/property/validate-property-delivery-request.json +19 -19
  189. package/dist/lib/schemas-data/3.1/bundled/property/validate-property-delivery-response.json +15 -15
  190. package/dist/lib/schemas-data/3.1/bundled/protocol/get-adcp-capabilities-request.json +5 -5
  191. package/dist/lib/schemas-data/3.1/bundled/protocol/get-adcp-capabilities-response.json +36 -36
  192. package/dist/lib/schemas-data/3.1/bundled/protocol/get-task-status-request.json +16 -16
  193. package/dist/lib/schemas-data/3.1/bundled/protocol/get-task-status-response.json +257 -181
  194. package/dist/lib/schemas-data/3.1/bundled/protocol/list-tasks-request.json +21 -21
  195. package/dist/lib/schemas-data/3.1/bundled/protocol/list-tasks-response.json +11 -11
  196. package/dist/lib/schemas-data/3.1/bundled/signals/activate-signal-request.json +17 -17
  197. package/dist/lib/schemas-data/3.1/bundled/signals/activate-signal-response.json +12 -12
  198. package/dist/lib/schemas-data/3.1/bundled/signals/get-signals-request.json +24 -24
  199. package/dist/lib/schemas-data/3.1/bundled/signals/get-signals-response.json +53 -53
  200. package/dist/lib/schemas-data/3.1/bundled/sponsored-intelligence/si-get-offering-request.json +5 -5
  201. package/dist/lib/schemas-data/3.1/bundled/sponsored-intelligence/si-get-offering-response.json +23 -23
  202. package/dist/lib/schemas-data/3.1/bundled/sponsored-intelligence/si-initiate-session-request.json +18 -18
  203. package/dist/lib/schemas-data/3.1/bundled/sponsored-intelligence/si-initiate-session-response.json +25 -25
  204. package/dist/lib/schemas-data/3.1/bundled/sponsored-intelligence/si-send-message-request.json +16 -16
  205. package/dist/lib/schemas-data/3.1/bundled/sponsored-intelligence/si-send-message-response.json +26 -26
  206. package/dist/lib/schemas-data/3.1/bundled/sponsored-intelligence/si-terminate-session-request.json +5 -5
  207. package/dist/lib/schemas-data/3.1/bundled/sponsored-intelligence/si-terminate-session-response.json +11 -11
  208. package/dist/lib/schemas-data/3.1/collection/base-collection-source.json +3 -3
  209. package/dist/lib/schemas-data/3.1/collection/collection-list-changed-webhook.json +2 -2
  210. package/dist/lib/schemas-data/3.1/collection/collection-list-filters.json +7 -7
  211. package/dist/lib/schemas-data/3.1/collection/collection-list.json +5 -5
  212. package/dist/lib/schemas-data/3.1/collection/create-collection-list-request.json +8 -8
  213. package/dist/lib/schemas-data/3.1/collection/create-collection-list-response.json +6 -6
  214. package/dist/lib/schemas-data/3.1/collection/delete-collection-list-request.json +5 -5
  215. package/dist/lib/schemas-data/3.1/collection/delete-collection-list-response.json +5 -5
  216. package/dist/lib/schemas-data/3.1/collection/get-collection-list-request.json +5 -5
  217. package/dist/lib/schemas-data/3.1/collection/get-collection-list-response.json +12 -12
  218. package/dist/lib/schemas-data/3.1/collection/list-collection-lists-request.json +6 -6
  219. package/dist/lib/schemas-data/3.1/collection/list-collection-lists-response.json +7 -7
  220. package/dist/lib/schemas-data/3.1/collection/update-collection-list-request.json +8 -8
  221. package/dist/lib/schemas-data/3.1/collection/update-collection-list-response.json +6 -6
  222. package/dist/lib/schemas-data/3.1/content-standards/artifact-webhook-payload.json +3 -3
  223. package/dist/lib/schemas-data/3.1/content-standards/artifact.json +7 -7
  224. package/dist/lib/schemas-data/3.1/content-standards/calibrate-content-request.json +5 -5
  225. package/dist/lib/schemas-data/3.1/content-standards/calibrate-content-response.json +10 -10
  226. package/dist/lib/schemas-data/3.1/content-standards/content-standards.json +7 -7
  227. package/dist/lib/schemas-data/3.1/content-standards/create-content-standards-request.json +8 -8
  228. package/dist/lib/schemas-data/3.1/content-standards/create-content-standards-response.json +8 -8
  229. package/dist/lib/schemas-data/3.1/content-standards/get-content-standards-request.json +4 -4
  230. package/dist/lib/schemas-data/3.1/content-standards/get-content-standards-response.json +9 -9
  231. package/dist/lib/schemas-data/3.1/content-standards/get-media-buy-artifacts-request.json +5 -5
  232. package/dist/lib/schemas-data/3.1/content-standards/get-media-buy-artifacts-response.json +10 -10
  233. package/dist/lib/schemas-data/3.1/content-standards/list-content-standards-request.json +6 -6
  234. package/dist/lib/schemas-data/3.1/content-standards/list-content-standards-response.json +10 -10
  235. package/dist/lib/schemas-data/3.1/content-standards/update-content-standards-request.json +8 -8
  236. package/dist/lib/schemas-data/3.1/content-standards/update-content-standards-response.json +8 -8
  237. package/dist/lib/schemas-data/3.1/content-standards/validate-content-delivery-request.json +5 -5
  238. package/dist/lib/schemas-data/3.1/content-standards/validate-content-delivery-response.json +10 -10
  239. package/dist/lib/schemas-data/3.1/core/account-authorization.json +1 -1
  240. package/dist/lib/schemas-data/3.1/core/account-ref.json +2 -2
  241. package/dist/lib/schemas-data/3.1/core/account-with-authorization.json +3 -3
  242. package/dist/lib/schemas-data/3.1/core/account.json +10 -10
  243. package/dist/lib/schemas-data/3.1/core/activation-key.json +1 -1
  244. package/dist/lib/schemas-data/3.1/core/ad-inventory-config.json +1 -1
  245. package/dist/lib/schemas-data/3.1/core/agent-encryption-key.json +1 -1
  246. package/dist/lib/schemas-data/3.1/core/agent-signing-key.json +1 -1
  247. package/dist/lib/schemas-data/3.1/core/app-item.json +4 -4
  248. package/dist/lib/schemas-data/3.1/core/asset-group-vocabulary.json +1 -1
  249. package/dist/lib/schemas-data/3.1/core/assets/asset-union.json +21 -21
  250. package/dist/lib/schemas-data/3.1/core/assets/audio-asset.json +3 -3
  251. package/dist/lib/schemas-data/3.1/core/assets/brief-asset.json +2 -2
  252. package/dist/lib/schemas-data/3.1/core/assets/card-asset.json +6 -6
  253. package/dist/lib/schemas-data/3.1/core/assets/catalog-asset.json +2 -2
  254. package/dist/lib/schemas-data/3.1/core/assets/css-asset.json +2 -2
  255. package/dist/lib/schemas-data/3.1/core/assets/daast-asset.json +4 -4
  256. package/dist/lib/schemas-data/3.1/core/assets/daast-tracker-asset.json +3 -3
  257. package/dist/lib/schemas-data/3.1/core/assets/html-asset.json +2 -2
  258. package/dist/lib/schemas-data/3.1/core/assets/image-asset.json +2 -2
  259. package/dist/lib/schemas-data/3.1/core/assets/javascript-asset.json +3 -3
  260. package/dist/lib/schemas-data/3.1/core/assets/markdown-asset.json +2 -2
  261. package/dist/lib/schemas-data/3.1/core/assets/pixel-tracker-asset.json +2 -2
  262. package/dist/lib/schemas-data/3.1/core/assets/published-post-asset.json +2 -2
  263. package/dist/lib/schemas-data/3.1/core/assets/text-asset.json +2 -2
  264. package/dist/lib/schemas-data/3.1/core/assets/url-asset.json +3 -3
  265. package/dist/lib/schemas-data/3.1/core/assets/vast-asset.json +4 -4
  266. package/dist/lib/schemas-data/3.1/core/assets/vast-tracker-asset.json +3 -3
  267. package/dist/lib/schemas-data/3.1/core/assets/video-asset.json +7 -7
  268. package/dist/lib/schemas-data/3.1/core/assets/webhook-asset.json +7 -7
  269. package/dist/lib/schemas-data/3.1/core/assets/zip-asset.json +2 -2
  270. package/dist/lib/schemas-data/3.1/core/async-response-data.json +29 -29
  271. package/dist/lib/schemas-data/3.1/core/async-response-refs/creative/sync-creatives-async-response-input-required.json +3 -3
  272. package/dist/lib/schemas-data/3.1/core/async-response-refs/creative/sync-creatives-async-response-submitted.json +4 -4
  273. package/dist/lib/schemas-data/3.1/core/async-response-refs/creative/sync-creatives-async-response-working.json +3 -3
  274. package/dist/lib/schemas-data/3.1/core/async-response-refs/media-buy/build-creative-async-response-input-required.json +4 -4
  275. package/dist/lib/schemas-data/3.1/core/async-response-refs/media-buy/build-creative-async-response-submitted.json +4 -4
  276. package/dist/lib/schemas-data/3.1/core/async-response-refs/media-buy/build-creative-async-response-working.json +3 -3
  277. package/dist/lib/schemas-data/3.1/core/async-response-refs/media-buy/create-media-buy-async-response-input-required.json +4 -4
  278. package/dist/lib/schemas-data/3.1/core/async-response-refs/media-buy/create-media-buy-async-response-submitted.json +4 -4
  279. package/dist/lib/schemas-data/3.1/core/async-response-refs/media-buy/create-media-buy-async-response-working.json +3 -3
  280. package/dist/lib/schemas-data/3.1/core/async-response-refs/media-buy/get-products-async-response-input-required.json +4 -4
  281. package/dist/lib/schemas-data/3.1/core/async-response-refs/media-buy/get-products-async-response-submitted.json +4 -4
  282. package/dist/lib/schemas-data/3.1/core/async-response-refs/media-buy/get-products-async-response-working.json +3 -3
  283. package/dist/lib/schemas-data/3.1/core/async-response-refs/media-buy/sync-catalogs-async-response-input-required.json +3 -3
  284. package/dist/lib/schemas-data/3.1/core/async-response-refs/media-buy/sync-catalogs-async-response-submitted.json +4 -4
  285. package/dist/lib/schemas-data/3.1/core/async-response-refs/media-buy/sync-catalogs-async-response-working.json +3 -3
  286. package/dist/lib/schemas-data/3.1/core/async-response-refs/media-buy/update-media-buy-async-response-input-required.json +3 -3
  287. package/dist/lib/schemas-data/3.1/core/async-response-refs/media-buy/update-media-buy-async-response-submitted.json +4 -4
  288. package/dist/lib/schemas-data/3.1/core/async-response-refs/media-buy/update-media-buy-async-response-working.json +3 -3
  289. package/dist/lib/schemas-data/3.1/core/async-response-refs/signals/get-signals-async-response-submitted.json +4 -4
  290. package/dist/lib/schemas-data/3.1/core/async-response-refs/signals/get-signals-async-response-working.json +3 -3
  291. package/dist/lib/schemas-data/3.1/core/attribution-window.json +4 -4
  292. package/dist/lib/schemas-data/3.1/core/audience-member.json +3 -3
  293. package/dist/lib/schemas-data/3.1/core/audience-selector.json +7 -7
  294. package/dist/lib/schemas-data/3.1/core/authorized-agent-base.json +3 -3
  295. package/dist/lib/schemas-data/3.1/core/brand-id.json +1 -1
  296. package/dist/lib/schemas-data/3.1/core/brand-ref.json +3 -3
  297. package/dist/lib/schemas-data/3.1/core/business-entity.json +2 -2
  298. package/dist/lib/schemas-data/3.1/core/cancellation-policy.json +40 -2
  299. package/dist/lib/schemas-data/3.1/core/canonical-format-kind.json +1 -1
  300. package/dist/lib/schemas-data/3.1/core/canonical-projection-ref.json +3 -3
  301. package/dist/lib/schemas-data/3.1/core/canonical-projection-slot-override.json +1 -1
  302. package/dist/lib/schemas-data/3.1/core/catalog-field-mapping.json +2 -2
  303. package/dist/lib/schemas-data/3.1/core/catalog-item-delivery-metrics.json +3 -3
  304. package/dist/lib/schemas-data/3.1/core/catalog.json +7 -7
  305. package/dist/lib/schemas-data/3.1/core/catchment.json +5 -5
  306. package/dist/lib/schemas-data/3.1/core/collection-distribution.json +2 -2
  307. package/dist/lib/schemas-data/3.1/core/collection-list-ref.json +1 -1
  308. package/dist/lib/schemas-data/3.1/core/collection-selector.json +1 -1
  309. package/dist/lib/schemas-data/3.1/core/collection.json +13 -13
  310. package/dist/lib/schemas-data/3.1/core/committed-metric.json +9 -9
  311. package/dist/lib/schemas-data/3.1/core/content-rating.json +2 -2
  312. package/dist/lib/schemas-data/3.1/core/context.json +1 -1
  313. package/dist/lib/schemas-data/3.1/core/creative-asset.json +10 -10
  314. package/dist/lib/schemas-data/3.1/core/creative-assignment.json +2 -2
  315. package/dist/lib/schemas-data/3.1/core/creative-brief.json +4 -4
  316. package/dist/lib/schemas-data/3.1/core/creative-consumption.json +1 -1
  317. package/dist/lib/schemas-data/3.1/core/creative-delivery-metrics.json +2 -2
  318. package/dist/lib/schemas-data/3.1/core/creative-filters.json +5 -5
  319. package/dist/lib/schemas-data/3.1/core/creative-item.json +1 -1
  320. package/dist/lib/schemas-data/3.1/core/creative-manifest.json +11 -11
  321. package/dist/lib/schemas-data/3.1/core/creative-policy.json +3 -3
  322. package/dist/lib/schemas-data/3.1/core/creative-variable.json +1 -1
  323. package/dist/lib/schemas-data/3.1/core/creative-variant.json +5 -5
  324. package/dist/lib/schemas-data/3.1/core/data-provider-signal-selector.json +1 -1
  325. package/dist/lib/schemas-data/3.1/core/date-range.json +1 -1
  326. package/dist/lib/schemas-data/3.1/core/datetime-range.json +1 -1
  327. package/dist/lib/schemas-data/3.1/core/daypart-target.json +2 -2
  328. package/dist/lib/schemas-data/3.1/core/deadline-policy.json +1 -1
  329. package/dist/lib/schemas-data/3.1/core/delivery-forecast.json +7 -7
  330. package/dist/lib/schemas-data/3.1/core/delivery-metric-aggregate.json +9 -9
  331. package/dist/lib/schemas-data/3.1/core/delivery-metrics.json +8 -8
  332. package/dist/lib/schemas-data/3.1/core/deployment.json +3 -3
  333. package/dist/lib/schemas-data/3.1/core/destination-item.json +4 -4
  334. package/dist/lib/schemas-data/3.1/core/destination.json +1 -1
  335. package/dist/lib/schemas-data/3.1/core/diagnostic-issue.json +1 -1
  336. package/dist/lib/schemas-data/3.1/core/downstream-connection-requirement.json +1 -1
  337. package/dist/lib/schemas-data/3.1/core/duration.json +1 -1
  338. package/dist/lib/schemas-data/3.1/core/education-item.json +4 -4
  339. package/dist/lib/schemas-data/3.1/core/error.json +1 -1
  340. package/dist/lib/schemas-data/3.1/core/evaluator-spec.json +5 -5
  341. package/dist/lib/schemas-data/3.1/core/event-custom-data.json +2 -2
  342. package/dist/lib/schemas-data/3.1/core/event-source-health.json +3 -3
  343. package/dist/lib/schemas-data/3.1/core/event-surface.json +2 -2
  344. package/dist/lib/schemas-data/3.1/core/event.json +8 -8
  345. package/dist/lib/schemas-data/3.1/core/ext.json +1 -1
  346. package/dist/lib/schemas-data/3.1/core/feature-requirement.json +1 -1
  347. package/dist/lib/schemas-data/3.1/core/flight-item.json +4 -4
  348. package/dist/lib/schemas-data/3.1/core/forecast-dimension-audience.json +2 -2
  349. package/dist/lib/schemas-data/3.1/core/forecast-dimension-device-platform.json +2 -2
  350. package/dist/lib/schemas-data/3.1/core/forecast-dimension-device-type.json +2 -2
  351. package/dist/lib/schemas-data/3.1/core/forecast-dimension-geo.json +5 -5
  352. package/dist/lib/schemas-data/3.1/core/forecast-dimension-placement.json +2 -2
  353. package/dist/lib/schemas-data/3.1/core/forecast-dimension-signal.json +2 -2
  354. package/dist/lib/schemas-data/3.1/core/forecast-point-dimensions.json +7 -7
  355. package/dist/lib/schemas-data/3.1/core/forecast-point.json +27 -27
  356. package/dist/lib/schemas-data/3.1/core/forecast-range.json +1 -1
  357. package/dist/lib/schemas-data/3.1/core/forecast-vendor-metric-value.json +5 -5
  358. package/dist/lib/schemas-data/3.1/core/format-id.json +1 -1
  359. package/dist/lib/schemas-data/3.1/core/format-option-ref.json +1 -1
  360. package/dist/lib/schemas-data/3.1/core/format-shape-vocabulary.json +1 -1
  361. package/dist/lib/schemas-data/3.1/core/format.json +44 -44
  362. package/dist/lib/schemas-data/3.1/core/frequency-cap.json +4 -4
  363. package/dist/lib/schemas-data/3.1/core/generation-credential.json +3 -3
  364. package/dist/lib/schemas-data/3.1/core/geo-breakdown-support.json +3 -3
  365. package/dist/lib/schemas-data/3.1/core/geo-delivery-metrics.json +6 -6
  366. package/dist/lib/schemas-data/3.1/core/hotel-item.json +4 -4
  367. package/dist/lib/schemas-data/3.1/core/identifier.json +2 -2
  368. package/dist/lib/schemas-data/3.1/core/impairment.json +3 -3
  369. package/dist/lib/schemas-data/3.1/core/industry-identifier.json +2 -2
  370. package/dist/lib/schemas-data/3.1/core/insertion-order.json +1 -1
  371. package/dist/lib/schemas-data/3.1/core/installment-deadlines.json +2 -2
  372. package/dist/lib/schemas-data/3.1/core/installment.json +9 -9
  373. package/dist/lib/schemas-data/3.1/core/job-item.json +3 -3
  374. package/dist/lib/schemas-data/3.1/core/keyword-delivery-metrics.json +3 -3
  375. package/dist/lib/schemas-data/3.1/core/limited-series.json +1 -1
  376. package/dist/lib/schemas-data/3.1/core/material-deadline.json +1 -1
  377. package/dist/lib/schemas-data/3.1/core/mcp-webhook-payload.json +5 -5
  378. package/dist/lib/schemas-data/3.1/core/measurement-readiness.json +5 -5
  379. package/dist/lib/schemas-data/3.1/core/measurement-terms.json +3 -3
  380. package/dist/lib/schemas-data/3.1/core/measurement-window.json +1 -1
  381. package/dist/lib/schemas-data/3.1/core/media-buy-available-action.json +4 -4
  382. package/dist/lib/schemas-data/3.1/core/media-buy-features.json +1 -1
  383. package/dist/lib/schemas-data/3.1/core/media-buy.json +10 -10
  384. package/dist/lib/schemas-data/3.1/core/missing-metric.json +9 -9
  385. package/dist/lib/schemas-data/3.1/core/notification-config.json +4 -4
  386. package/dist/lib/schemas-data/3.1/core/offering-asset-group.json +16 -16
  387. package/dist/lib/schemas-data/3.1/core/offering.json +5 -5
  388. package/dist/lib/schemas-data/3.1/core/optimization-goal.json +7 -7
  389. package/dist/lib/schemas-data/3.1/core/outcome-measurement.json +2 -2
  390. package/dist/lib/schemas-data/3.1/core/overlay.json +1 -1
  391. package/dist/lib/schemas-data/3.1/core/package-signal-targeting-group.json +2 -2
  392. package/dist/lib/schemas-data/3.1/core/package-signal-targeting-groups.json +2 -2
  393. package/dist/lib/schemas-data/3.1/core/package-signal-targeting.json +3 -3
  394. package/dist/lib/schemas-data/3.1/core/package.json +17 -17
  395. package/dist/lib/schemas-data/3.1/core/pagination-request.json +1 -1
  396. package/dist/lib/schemas-data/3.1/core/pagination-response.json +1 -1
  397. package/dist/lib/schemas-data/3.1/core/performance-feedback.json +12 -12
  398. package/dist/lib/schemas-data/3.1/core/performance-standard.json +4 -4
  399. package/dist/lib/schemas-data/3.1/core/placement-definition.json +10 -10
  400. package/dist/lib/schemas-data/3.1/core/placement-ref.json +1 -1
  401. package/dist/lib/schemas-data/3.1/core/placement.json +7 -7
  402. package/dist/lib/schemas-data/3.1/core/planned-delivery.json +5 -5
  403. package/dist/lib/schemas-data/3.1/core/platform-extension-ref.json +1 -1
  404. package/dist/lib/schemas-data/3.1/core/postal-area-support.json +2 -2
  405. package/dist/lib/schemas-data/3.1/core/postal-area.json +4 -4
  406. package/dist/lib/schemas-data/3.1/core/postal-country-system.json +2 -2
  407. package/dist/lib/schemas-data/3.1/core/price.json +1 -1
  408. package/dist/lib/schemas-data/3.1/core/pricing-option.json +10 -10
  409. package/dist/lib/schemas-data/3.1/core/product-allocation.json +4 -4
  410. package/dist/lib/schemas-data/3.1/core/product-allowed-action.json +5 -5
  411. package/dist/lib/schemas-data/3.1/core/product-filters.json +27 -27
  412. package/dist/lib/schemas-data/3.1/core/product-format-declaration.json +16 -16
  413. package/dist/lib/schemas-data/3.1/core/product-signal-targeting-option.json +3 -3
  414. package/dist/lib/schemas-data/3.1/core/product.json +40 -40
  415. package/dist/lib/schemas-data/3.1/core/property-id.json +1 -1
  416. package/dist/lib/schemas-data/3.1/core/property-list-ref.json +1 -1
  417. package/dist/lib/schemas-data/3.1/core/property-tag.json +1 -1
  418. package/dist/lib/schemas-data/3.1/core/property.json +6 -6
  419. package/dist/lib/schemas-data/3.1/core/proposal.json +6 -6
  420. package/dist/lib/schemas-data/3.1/core/protocol-envelope.json +5 -5
  421. package/dist/lib/schemas-data/3.1/core/provenance.json +9 -9
  422. package/dist/lib/schemas-data/3.1/core/publisher-property-selector.json +3 -3
  423. package/dist/lib/schemas-data/3.1/core/push-notification-config.json +2 -2
  424. package/dist/lib/schemas-data/3.1/core/real-estate-item.json +4 -4
  425. package/dist/lib/schemas-data/3.1/core/reference-asset.json +1 -1
  426. package/dist/lib/schemas-data/3.1/core/registry-event.json +13 -13
  427. package/dist/lib/schemas-data/3.1/core/registry-feed-response.json +2 -2
  428. package/dist/lib/schemas-data/3.1/core/reporting-capabilities.json +8 -8
  429. package/dist/lib/schemas-data/3.1/core/reporting-webhook.json +3 -3
  430. package/dist/lib/schemas-data/3.1/core/requirements/asset-requirements.json +13 -13
  431. package/dist/lib/schemas-data/3.1/core/requirements/audio-asset-requirements.json +1 -1
  432. package/dist/lib/schemas-data/3.1/core/requirements/catalog-field-binding.json +4 -4
  433. package/dist/lib/schemas-data/3.1/core/requirements/catalog-requirements.json +5 -5
  434. package/dist/lib/schemas-data/3.1/core/requirements/css-asset-requirements.json +1 -1
  435. package/dist/lib/schemas-data/3.1/core/requirements/daast-asset-requirements.json +1 -1
  436. package/dist/lib/schemas-data/3.1/core/requirements/html-asset-requirements.json +1 -1
  437. package/dist/lib/schemas-data/3.1/core/requirements/image-asset-requirements.json +2 -2
  438. package/dist/lib/schemas-data/3.1/core/requirements/javascript-asset-requirements.json +1 -1
  439. package/dist/lib/schemas-data/3.1/core/requirements/markdown-asset-requirements.json +1 -1
  440. package/dist/lib/schemas-data/3.1/core/requirements/offering-asset-constraint.json +4 -4
  441. package/dist/lib/schemas-data/3.1/core/requirements/text-asset-requirements.json +1 -1
  442. package/dist/lib/schemas-data/3.1/core/requirements/url-asset-requirements.json +1 -1
  443. package/dist/lib/schemas-data/3.1/core/requirements/vast-asset-requirements.json +1 -1
  444. package/dist/lib/schemas-data/3.1/core/requirements/video-asset-requirements.json +6 -6
  445. package/dist/lib/schemas-data/3.1/core/requirements/webhook-asset-requirements.json +1 -1
  446. package/dist/lib/schemas-data/3.1/core/response-payload-jws-envelope.json +1 -1
  447. package/dist/lib/schemas-data/3.1/core/response.json +1 -1
  448. package/dist/lib/schemas-data/3.1/core/rights-constraint.json +4 -4
  449. package/dist/lib/schemas-data/3.1/core/seller-agent-ref.json +1 -1
  450. package/dist/lib/schemas-data/3.1/core/signal-coverage-forecast.json +5 -5
  451. package/dist/lib/schemas-data/3.1/core/signal-definition-enrichment.json +4 -4
  452. package/dist/lib/schemas-data/3.1/core/signal-definition.json +5 -5
  453. package/dist/lib/schemas-data/3.1/core/signal-filters.json +3 -3
  454. package/dist/lib/schemas-data/3.1/core/signal-id.json +1 -1
  455. package/dist/lib/schemas-data/3.1/core/signal-listing.json +4 -4
  456. package/dist/lib/schemas-data/3.1/core/signal-modeling-disclosure.json +1 -1
  457. package/dist/lib/schemas-data/3.1/core/signal-pricing-option.json +2 -2
  458. package/dist/lib/schemas-data/3.1/core/signal-pricing.json +6 -6
  459. package/dist/lib/schemas-data/3.1/core/signal-ref.json +1 -1
  460. package/dist/lib/schemas-data/3.1/core/signal-selection-group-rule.json +1 -1
  461. package/dist/lib/schemas-data/3.1/core/signal-targeting-expression.json +4 -4
  462. package/dist/lib/schemas-data/3.1/core/signal-targeting-rules.json +2 -2
  463. package/dist/lib/schemas-data/3.1/core/signal-targeting.json +7 -7
  464. package/dist/lib/schemas-data/3.1/core/sla-window.json +1 -1
  465. package/dist/lib/schemas-data/3.1/core/special.json +2 -2
  466. package/dist/lib/schemas-data/3.1/core/start-timing.json +1 -1
  467. package/dist/lib/schemas-data/3.1/core/store-item.json +3 -3
  468. package/dist/lib/schemas-data/3.1/core/talent.json +2 -2
  469. package/dist/lib/schemas-data/3.1/core/targeting.json +22 -22
  470. package/dist/lib/schemas-data/3.1/core/tasks-get-request.json +5 -5
  471. package/dist/lib/schemas-data/3.1/core/tasks-get-response.json +10 -10
  472. package/dist/lib/schemas-data/3.1/core/tasks-list-request.json +13 -13
  473. package/dist/lib/schemas-data/3.1/core/tasks-list-response.json +8 -8
  474. package/dist/lib/schemas-data/3.1/core/transformer-param.json +1 -1
  475. package/dist/lib/schemas-data/3.1/core/transformer.json +5 -5
  476. package/dist/lib/schemas-data/3.1/core/truncation-sentinel.json +1 -1
  477. package/dist/lib/schemas-data/3.1/core/user-match.json +3 -3
  478. package/dist/lib/schemas-data/3.1/core/vehicle-item.json +4 -4
  479. package/dist/lib/schemas-data/3.1/core/vendor-metric-id.json +1 -1
  480. package/dist/lib/schemas-data/3.1/core/vendor-metric-optimization-supported-metric.json +3 -3
  481. package/dist/lib/schemas-data/3.1/core/vendor-metric-optimization.json +2 -2
  482. package/dist/lib/schemas-data/3.1/core/vendor-metric-value.json +3 -3
  483. package/dist/lib/schemas-data/3.1/core/vendor-pricing-option.json +3 -3
  484. package/dist/lib/schemas-data/3.1/core/version-envelope.json +1 -1
  485. package/dist/lib/schemas-data/3.1/core/webhook-activity-record.json +3 -3
  486. package/dist/lib/schemas-data/3.1/core/webhook-challenge-response.json +1 -1
  487. package/dist/lib/schemas-data/3.1/core/webhook-challenge.json +2 -2
  488. package/dist/lib/schemas-data/3.1/core/wholesale-feed-event.json +17 -17
  489. package/dist/lib/schemas-data/3.1/core/wholesale-feed-webhook.json +3 -3
  490. package/dist/lib/schemas-data/3.1/core/x-entity-types.json +1 -1
  491. package/dist/lib/schemas-data/3.1/creative/asset-types/index.json +6 -6
  492. package/dist/lib/schemas-data/3.1/creative/audit-observation.json +2 -2
  493. package/dist/lib/schemas-data/3.1/creative/creative-feature-result.json +2 -2
  494. package/dist/lib/schemas-data/3.1/creative/creative-purged-webhook.json +3 -3
  495. package/dist/lib/schemas-data/3.1/creative/creative-status-changed-webhook.json +4 -4
  496. package/dist/lib/schemas-data/3.1/creative/get-creative-delivery-request.json +6 -6
  497. package/dist/lib/schemas-data/3.1/creative/get-creative-delivery-response.json +9 -9
  498. package/dist/lib/schemas-data/3.1/creative/get-creative-features-request.json +6 -6
  499. package/dist/lib/schemas-data/3.1/creative/get-creative-features-response.json +11 -11
  500. package/dist/lib/schemas-data/3.1/creative/list-creative-formats-request.json +13 -13
  501. package/dist/lib/schemas-data/3.1/creative/list-creative-formats-response.json +9 -9
  502. package/dist/lib/schemas-data/3.1/creative/list-creatives-request.json +9 -9
  503. package/dist/lib/schemas-data/3.1/creative/list-creatives-response.json +19 -19
  504. package/dist/lib/schemas-data/3.1/creative/list-transformers-request.json +8 -8
  505. package/dist/lib/schemas-data/3.1/creative/list-transformers-response.json +8 -8
  506. package/dist/lib/schemas-data/3.1/creative/preview-creative-request.json +12 -12
  507. package/dist/lib/schemas-data/3.1/creative/preview-creative-response.json +14 -14
  508. package/dist/lib/schemas-data/3.1/creative/preview-render.json +1 -1
  509. package/dist/lib/schemas-data/3.1/creative/sync-creatives-async-response-input-required.json +3 -3
  510. package/dist/lib/schemas-data/3.1/creative/sync-creatives-async-response-submitted.json +4 -4
  511. package/dist/lib/schemas-data/3.1/creative/sync-creatives-async-response-working.json +3 -3
  512. package/dist/lib/schemas-data/3.1/creative/sync-creatives-request.json +9 -9
  513. package/dist/lib/schemas-data/3.1/creative/sync-creatives-response.json +15 -15
  514. package/dist/lib/schemas-data/3.1/creative/validate-input-request.json +6 -6
  515. package/dist/lib/schemas-data/3.1/creative/validate-input-response.json +5 -5
  516. package/dist/lib/schemas-data/3.1/creative/validate-input-result.json +2 -2
  517. package/dist/lib/schemas-data/3.1/creative/video-brief.json +1 -1
  518. package/dist/lib/schemas-data/3.1/enums/account-scope.json +1 -1
  519. package/dist/lib/schemas-data/3.1/enums/account-status.json +1 -1
  520. package/dist/lib/schemas-data/3.1/enums/action-not-allowed-reason.json +1 -1
  521. package/dist/lib/schemas-data/3.1/enums/action-source.json +1 -1
  522. package/dist/lib/schemas-data/3.1/enums/adcp-protocol.json +1 -1
  523. package/dist/lib/schemas-data/3.1/enums/adjustment-kind.json +1 -1
  524. package/dist/lib/schemas-data/3.1/enums/advertiser-industry.json +1 -1
  525. package/dist/lib/schemas-data/3.1/enums/age-verification-method.json +1 -1
  526. package/dist/lib/schemas-data/3.1/enums/assessment-status.json +1 -1
  527. package/dist/lib/schemas-data/3.1/enums/asset-content-type.json +1 -1
  528. package/dist/lib/schemas-data/3.1/enums/attestation-claim.json +1 -1
  529. package/dist/lib/schemas-data/3.1/enums/attribution-methodology.json +1 -1
  530. package/dist/lib/schemas-data/3.1/enums/attribution-model.json +1 -1
  531. package/dist/lib/schemas-data/3.1/enums/audience-source.json +1 -1
  532. package/dist/lib/schemas-data/3.1/enums/audience-status.json +1 -1
  533. package/dist/lib/schemas-data/3.1/enums/audio-channel-layout.json +1 -1
  534. package/dist/lib/schemas-data/3.1/enums/audio-distribution-type.json +1 -1
  535. package/dist/lib/schemas-data/3.1/enums/auth-scheme.json +1 -1
  536. package/dist/lib/schemas-data/3.1/enums/available-metric.json +1 -1
  537. package/dist/lib/schemas-data/3.1/enums/billing-party.json +1 -1
  538. package/dist/lib/schemas-data/3.1/enums/binary-verdict.json +1 -1
  539. package/dist/lib/schemas-data/3.1/enums/brand-agent-type.json +1 -1
  540. package/dist/lib/schemas-data/3.1/enums/c2pa-watermark-action.json +1 -1
  541. package/dist/lib/schemas-data/3.1/enums/canceled-by.json +1 -1
  542. package/dist/lib/schemas-data/3.1/enums/catalog-action.json +1 -1
  543. package/dist/lib/schemas-data/3.1/enums/catalog-item-status.json +1 -1
  544. package/dist/lib/schemas-data/3.1/enums/catalog-type.json +1 -1
  545. package/dist/lib/schemas-data/3.1/enums/channels.json +1 -1
  546. package/dist/lib/schemas-data/3.1/enums/cloud-storage-protocol.json +1 -1
  547. package/dist/lib/schemas-data/3.1/enums/co-branding-requirement.json +1 -1
  548. package/dist/lib/schemas-data/3.1/enums/collection-cadence.json +1 -1
  549. package/dist/lib/schemas-data/3.1/enums/collection-kind.json +1 -1
  550. package/dist/lib/schemas-data/3.1/enums/collection-relationship.json +1 -1
  551. package/dist/lib/schemas-data/3.1/enums/collection-status.json +1 -1
  552. package/dist/lib/schemas-data/3.1/enums/completion-source.json +1 -1
  553. package/dist/lib/schemas-data/3.1/enums/consent-basis.json +1 -1
  554. package/dist/lib/schemas-data/3.1/enums/content-id-type.json +1 -1
  555. package/dist/lib/schemas-data/3.1/enums/content-rating-system.json +1 -1
  556. package/dist/lib/schemas-data/3.1/enums/creative-action.json +1 -1
  557. package/dist/lib/schemas-data/3.1/enums/creative-agent-capability.json +1 -1
  558. package/dist/lib/schemas-data/3.1/enums/creative-approval-status.json +1 -1
  559. package/dist/lib/schemas-data/3.1/enums/creative-event-reason-code.json +1 -1
  560. package/dist/lib/schemas-data/3.1/enums/creative-identifier-type.json +1 -1
  561. package/dist/lib/schemas-data/3.1/enums/creative-quality.json +1 -1
  562. package/dist/lib/schemas-data/3.1/enums/creative-selection-strategy.json +1 -1
  563. package/dist/lib/schemas-data/3.1/enums/creative-sort-field.json +1 -1
  564. package/dist/lib/schemas-data/3.1/enums/creative-status.json +1 -1
  565. package/dist/lib/schemas-data/3.1/enums/daast-tracking-event.json +1 -1
  566. package/dist/lib/schemas-data/3.1/enums/daast-version.json +1 -1
  567. package/dist/lib/schemas-data/3.1/enums/day-of-week.json +1 -1
  568. package/dist/lib/schemas-data/3.1/enums/delegation-authority.json +1 -1
  569. package/dist/lib/schemas-data/3.1/enums/delivery-type.json +1 -1
  570. package/dist/lib/schemas-data/3.1/enums/demographic-system.json +1 -1
  571. package/dist/lib/schemas-data/3.1/enums/derivative-type.json +1 -1
  572. package/dist/lib/schemas-data/3.1/enums/device-platform.json +1 -1
  573. package/dist/lib/schemas-data/3.1/enums/device-type.json +1 -1
  574. package/dist/lib/schemas-data/3.1/enums/digital-source-type.json +1 -1
  575. package/dist/lib/schemas-data/3.1/enums/dimension-unit.json +1 -1
  576. package/dist/lib/schemas-data/3.1/enums/disclosure-persistence.json +1 -1
  577. package/dist/lib/schemas-data/3.1/enums/disclosure-position.json +1 -1
  578. package/dist/lib/schemas-data/3.1/enums/distance-unit.json +1 -1
  579. package/dist/lib/schemas-data/3.1/enums/distribution-identifier-type.json +1 -1
  580. package/dist/lib/schemas-data/3.1/enums/embedded-provenance-method.json +1 -1
  581. package/dist/lib/schemas-data/3.1/enums/error-code.json +5 -5
  582. package/dist/lib/schemas-data/3.1/enums/error-scope.json +1 -1
  583. package/dist/lib/schemas-data/3.1/enums/escalation-severity.json +1 -1
  584. package/dist/lib/schemas-data/3.1/enums/event-type.json +1 -1
  585. package/dist/lib/schemas-data/3.1/enums/exclusivity.json +1 -1
  586. package/dist/lib/schemas-data/3.1/enums/feature-check-status.json +1 -1
  587. package/dist/lib/schemas-data/3.1/enums/feed-format.json +1 -1
  588. package/dist/lib/schemas-data/3.1/enums/feedback-source.json +1 -1
  589. package/dist/lib/schemas-data/3.1/enums/forecast-method.json +1 -1
  590. package/dist/lib/schemas-data/3.1/enums/forecast-range-unit.json +1 -1
  591. package/dist/lib/schemas-data/3.1/enums/forecastable-metric.json +1 -1
  592. package/dist/lib/schemas-data/3.1/enums/format-id-parameter.json +1 -1
  593. package/dist/lib/schemas-data/3.1/enums/frame-rate-type.json +1 -1
  594. package/dist/lib/schemas-data/3.1/enums/frequency-cap-scope.json +1 -1
  595. package/dist/lib/schemas-data/3.1/enums/genre-taxonomy.json +1 -1
  596. package/dist/lib/schemas-data/3.1/enums/geo-level.json +1 -1
  597. package/dist/lib/schemas-data/3.1/enums/gop-type.json +1 -1
  598. package/dist/lib/schemas-data/3.1/enums/governance-decision.json +1 -1
  599. package/dist/lib/schemas-data/3.1/enums/governance-domain.json +1 -1
  600. package/dist/lib/schemas-data/3.1/enums/governance-mode.json +1 -1
  601. package/dist/lib/schemas-data/3.1/enums/governance-phase.json +1 -1
  602. package/dist/lib/schemas-data/3.1/enums/history-entry-type.json +1 -1
  603. package/dist/lib/schemas-data/3.1/enums/http-method.json +1 -1
  604. package/dist/lib/schemas-data/3.1/enums/identifier-types.json +1 -1
  605. package/dist/lib/schemas-data/3.1/enums/impairment-offline-state.json +1 -1
  606. package/dist/lib/schemas-data/3.1/enums/impairment-reason-code.json +1 -1
  607. package/dist/lib/schemas-data/3.1/enums/installment-status.json +1 -1
  608. package/dist/lib/schemas-data/3.1/enums/javascript-module-type.json +1 -1
  609. package/dist/lib/schemas-data/3.1/enums/landing-page-requirement.json +1 -1
  610. package/dist/lib/schemas-data/3.1/enums/legacy-postal-system.json +1 -1
  611. package/dist/lib/schemas-data/3.1/enums/lift-dimension.json +1 -1
  612. package/dist/lib/schemas-data/3.1/enums/logo-slot.json +1 -1
  613. package/dist/lib/schemas-data/3.1/enums/makegood-remedy.json +1 -1
  614. package/dist/lib/schemas-data/3.1/enums/markdown-flavor.json +1 -1
  615. package/dist/lib/schemas-data/3.1/enums/match-id-type.json +1 -1
  616. package/dist/lib/schemas-data/3.1/enums/match-type.json +1 -1
  617. package/dist/lib/schemas-data/3.1/enums/media-buy-action-mode.json +1 -1
  618. package/dist/lib/schemas-data/3.1/enums/media-buy-health.json +1 -1
  619. package/dist/lib/schemas-data/3.1/enums/media-buy-status.json +1 -1
  620. package/dist/lib/schemas-data/3.1/enums/media-buy-valid-action.json +1 -1
  621. package/dist/lib/schemas-data/3.1/enums/metric-scope.json +1 -1
  622. package/dist/lib/schemas-data/3.1/enums/metric-type.json +1 -1
  623. package/dist/lib/schemas-data/3.1/enums/metro-system.json +1 -1
  624. package/dist/lib/schemas-data/3.1/enums/moov-atom-position.json +1 -1
  625. package/dist/lib/schemas-data/3.1/enums/notification-type.json +1 -1
  626. package/dist/lib/schemas-data/3.1/enums/offering-availability-status.json +1 -1
  627. package/dist/lib/schemas-data/3.1/enums/outcome-type.json +1 -1
  628. package/dist/lib/schemas-data/3.1/enums/pacing.json +1 -1
  629. package/dist/lib/schemas-data/3.1/enums/payment-terms.json +1 -1
  630. package/dist/lib/schemas-data/3.1/enums/performance-standard-metric.json +1 -1
  631. package/dist/lib/schemas-data/3.1/enums/policy-category.json +1 -1
  632. package/dist/lib/schemas-data/3.1/enums/policy-enforcement.json +1 -1
  633. package/dist/lib/schemas-data/3.1/enums/postal-system.json +1 -1
  634. package/dist/lib/schemas-data/3.1/enums/preview-output-format.json +1 -1
  635. package/dist/lib/schemas-data/3.1/enums/pricing-model.json +1 -1
  636. package/dist/lib/schemas-data/3.1/enums/production-quality.json +1 -1
  637. package/dist/lib/schemas-data/3.1/enums/property-type.json +1 -1
  638. package/dist/lib/schemas-data/3.1/enums/proposal-status.json +1 -1
  639. package/dist/lib/schemas-data/3.1/enums/publisher-identifier-types.json +1 -1
  640. package/dist/lib/schemas-data/3.1/enums/purchase-type.json +1 -1
  641. package/dist/lib/schemas-data/3.1/enums/reach-unit.json +1 -1
  642. package/dist/lib/schemas-data/3.1/enums/reporting-frequency.json +1 -1
  643. package/dist/lib/schemas-data/3.1/enums/response-type.json +1 -1
  644. package/dist/lib/schemas-data/3.1/enums/restricted-attribute.json +1 -1
  645. package/dist/lib/schemas-data/3.1/enums/right-type.json +1 -1
  646. package/dist/lib/schemas-data/3.1/enums/right-use.json +1 -1
  647. package/dist/lib/schemas-data/3.1/enums/rights-billing-period.json +1 -1
  648. package/dist/lib/schemas-data/3.1/enums/scan-type.json +1 -1
  649. package/dist/lib/schemas-data/3.1/enums/si-session-status.json +1 -1
  650. package/dist/lib/schemas-data/3.1/enums/signal-catalog-type.json +1 -1
  651. package/dist/lib/schemas-data/3.1/enums/signal-source.json +1 -1
  652. package/dist/lib/schemas-data/3.1/enums/signal-value-type.json +1 -1
  653. package/dist/lib/schemas-data/3.1/enums/snapshot-unavailable-reason.json +1 -1
  654. package/dist/lib/schemas-data/3.1/enums/social-placement-surface.json +1 -1
  655. package/dist/lib/schemas-data/3.1/enums/sort-direction.json +1 -1
  656. package/dist/lib/schemas-data/3.1/enums/sort-metric.json +1 -1
  657. package/dist/lib/schemas-data/3.1/enums/special-category.json +1 -1
  658. package/dist/lib/schemas-data/3.1/enums/specialism.json +1 -1
  659. package/dist/lib/schemas-data/3.1/enums/sponsored-placement-type.json +1 -1
  660. package/dist/lib/schemas-data/3.1/enums/talent-role.json +1 -1
  661. package/dist/lib/schemas-data/3.1/enums/task-status.json +1 -1
  662. package/dist/lib/schemas-data/3.1/enums/task-type.json +1 -1
  663. package/dist/lib/schemas-data/3.1/enums/transport-mode.json +1 -1
  664. package/dist/lib/schemas-data/3.1/enums/travel-time-unit.json +1 -1
  665. package/dist/lib/schemas-data/3.1/enums/uid-type.json +1 -1
  666. package/dist/lib/schemas-data/3.1/enums/universal-macro.json +1 -1
  667. package/dist/lib/schemas-data/3.1/enums/update-frequency.json +1 -1
  668. package/dist/lib/schemas-data/3.1/enums/url-asset-type.json +1 -1
  669. package/dist/lib/schemas-data/3.1/enums/validation-mode.json +1 -1
  670. package/dist/lib/schemas-data/3.1/enums/vast-tracking-event.json +1 -1
  671. package/dist/lib/schemas-data/3.1/enums/vast-version.json +1 -1
  672. package/dist/lib/schemas-data/3.1/enums/video-placement-type.json +1 -1
  673. package/dist/lib/schemas-data/3.1/enums/viewability-standard.json +1 -1
  674. package/dist/lib/schemas-data/3.1/enums/watermark-media-type.json +1 -1
  675. package/dist/lib/schemas-data/3.1/enums/wcag-level.json +1 -1
  676. package/dist/lib/schemas-data/3.1/enums/webhook-response-type.json +1 -1
  677. package/dist/lib/schemas-data/3.1/enums/webhook-security-method.json +1 -1
  678. package/dist/lib/schemas-data/3.1/error-details/account-setup-required.json +1 -1
  679. package/dist/lib/schemas-data/3.1/error-details/action-not-allowed.json +4 -4
  680. package/dist/lib/schemas-data/3.1/error-details/agent-permission-denied.json +1 -1
  681. package/dist/lib/schemas-data/3.1/error-details/audience-too-small.json +1 -1
  682. package/dist/lib/schemas-data/3.1/error-details/authorization-required.json +3 -3
  683. package/dist/lib/schemas-data/3.1/error-details/billing-not-permitted-for-agent.json +3 -3
  684. package/dist/lib/schemas-data/3.1/error-details/billing-not-supported.json +2 -2
  685. package/dist/lib/schemas-data/3.1/error-details/budget-too-low.json +1 -1
  686. package/dist/lib/schemas-data/3.1/error-details/conflict.json +1 -1
  687. package/dist/lib/schemas-data/3.1/error-details/creative-rejected.json +1 -1
  688. package/dist/lib/schemas-data/3.1/error-details/policy-violation.json +1 -1
  689. package/dist/lib/schemas-data/3.1/error-details/rate-limited.json +1 -1
  690. package/dist/lib/schemas-data/3.1/error-details/stale-response.json +1 -1
  691. package/dist/lib/schemas-data/3.1/error-details/vendor-error-codes.json +1 -1
  692. package/dist/lib/schemas-data/3.1/error-details/version-unsupported.json +2 -2
  693. package/dist/lib/schemas-data/3.1/extensions/extension-meta.json +1 -1
  694. package/dist/lib/schemas-data/3.1/extensions/index.json +2 -2
  695. package/dist/lib/schemas-data/3.1/formats/canonical/_base.json +5 -5
  696. package/dist/lib/schemas-data/3.1/formats/canonical/agent_placement.json +2 -2
  697. package/dist/lib/schemas-data/3.1/formats/canonical/audio_daast.json +2 -2
  698. package/dist/lib/schemas-data/3.1/formats/canonical/audio_hosted.json +2 -2
  699. package/dist/lib/schemas-data/3.1/formats/canonical/display_tag.json +2 -2
  700. package/dist/lib/schemas-data/3.1/formats/canonical/html5.json +2 -2
  701. package/dist/lib/schemas-data/3.1/formats/canonical/image.json +2 -2
  702. package/dist/lib/schemas-data/3.1/formats/canonical/image_carousel.json +2 -2
  703. package/dist/lib/schemas-data/3.1/formats/canonical/native_in_feed.json +2 -2
  704. package/dist/lib/schemas-data/3.1/formats/canonical/responsive_creative.json +2 -2
  705. package/dist/lib/schemas-data/3.1/formats/canonical/sponsored_placement.json +2 -2
  706. package/dist/lib/schemas-data/3.1/formats/canonical/video_hosted.json +2 -2
  707. package/dist/lib/schemas-data/3.1/formats/canonical/video_vast.json +2 -2
  708. package/dist/lib/schemas-data/3.1/governance/attribute-definition.json +1 -1
  709. package/dist/lib/schemas-data/3.1/governance/audience-constraints.json +3 -3
  710. package/dist/lib/schemas-data/3.1/governance/check-governance-request.json +8 -8
  711. package/dist/lib/schemas-data/3.1/governance/check-governance-response.json +7 -7
  712. package/dist/lib/schemas-data/3.1/governance/get-plan-audit-logs-request.json +5 -5
  713. package/dist/lib/schemas-data/3.1/governance/get-plan-audit-logs-response.json +11 -11
  714. package/dist/lib/schemas-data/3.1/governance/policy-category-definition.json +2 -2
  715. package/dist/lib/schemas-data/3.1/governance/policy-entry.json +6 -6
  716. package/dist/lib/schemas-data/3.1/governance/policy-ref.json +1 -1
  717. package/dist/lib/schemas-data/3.1/governance/report-plan-outcome-request.json +7 -7
  718. package/dist/lib/schemas-data/3.1/governance/report-plan-outcome-response.json +5 -5
  719. package/dist/lib/schemas-data/3.1/governance/sync-plans-request.json +14 -14
  720. package/dist/lib/schemas-data/3.1/governance/sync-plans-response.json +6 -6
  721. package/dist/lib/schemas-data/3.1/index.json +440 -440
  722. package/dist/lib/schemas-data/3.1/manifest.json +7 -7
  723. package/dist/lib/schemas-data/3.1/manifest.schema.json +1 -1
  724. package/dist/lib/schemas-data/3.1/media-buy/build-creative-async-response-input-required.json +4 -4
  725. package/dist/lib/schemas-data/3.1/media-buy/build-creative-async-response-submitted.json +4 -4
  726. package/dist/lib/schemas-data/3.1/media-buy/build-creative-async-response-working.json +3 -3
  727. package/dist/lib/schemas-data/3.1/media-buy/build-creative-request.json +16 -16
  728. package/dist/lib/schemas-data/3.1/media-buy/build-creative-response.json +35 -35
  729. package/dist/lib/schemas-data/3.1/media-buy/create-media-buy-async-response-input-required.json +4 -4
  730. package/dist/lib/schemas-data/3.1/media-buy/create-media-buy-async-response-submitted.json +4 -4
  731. package/dist/lib/schemas-data/3.1/media-buy/create-media-buy-async-response-working.json +3 -3
  732. package/dist/lib/schemas-data/3.1/media-buy/create-media-buy-request.json +13 -13
  733. package/dist/lib/schemas-data/3.1/media-buy/create-media-buy-response.json +19 -19
  734. package/dist/lib/schemas-data/3.1/media-buy/get-media-buy-delivery-request.json +23 -23
  735. package/dist/lib/schemas-data/3.1/media-buy/get-media-buy-delivery-response.json +27 -27
  736. package/dist/lib/schemas-data/3.1/media-buy/get-media-buys-request.json +8 -8
  737. package/dist/lib/schemas-data/3.1/media-buy/get-media-buys-response.json +30 -30
  738. package/dist/lib/schemas-data/3.1/media-buy/get-products-async-response-input-required.json +4 -4
  739. package/dist/lib/schemas-data/3.1/media-buy/get-products-async-response-submitted.json +4 -4
  740. package/dist/lib/schemas-data/3.1/media-buy/get-products-async-response-working.json +3 -3
  741. package/dist/lib/schemas-data/3.1/media-buy/get-products-request.json +13 -13
  742. package/dist/lib/schemas-data/3.1/media-buy/get-products-response.json +10 -10
  743. package/dist/lib/schemas-data/3.1/media-buy/list-creative-formats-request.json +13 -13
  744. package/dist/lib/schemas-data/3.1/media-buy/list-creative-formats-response.json +9 -9
  745. package/dist/lib/schemas-data/3.1/media-buy/log-event-request.json +5 -5
  746. package/dist/lib/schemas-data/3.1/media-buy/log-event-response.json +8 -8
  747. package/dist/lib/schemas-data/3.1/media-buy/media-buy-delivery-webhook-result.json +9 -9
  748. package/dist/lib/schemas-data/3.1/media-buy/package-request.json +23 -23
  749. package/dist/lib/schemas-data/3.1/media-buy/package-update.json +13 -13
  750. package/dist/lib/schemas-data/3.1/media-buy/provide-performance-feedback-request.json +7 -7
  751. package/dist/lib/schemas-data/3.1/media-buy/provide-performance-feedback-response.json +8 -8
  752. package/dist/lib/schemas-data/3.1/media-buy/sync-audiences-request.json +8 -8
  753. package/dist/lib/schemas-data/3.1/media-buy/sync-audiences-response.json +14 -14
  754. package/dist/lib/schemas-data/3.1/media-buy/sync-catalogs-async-response-input-required.json +3 -3
  755. package/dist/lib/schemas-data/3.1/media-buy/sync-catalogs-async-response-submitted.json +4 -4
  756. package/dist/lib/schemas-data/3.1/media-buy/sync-catalogs-async-response-working.json +3 -3
  757. package/dist/lib/schemas-data/3.1/media-buy/sync-catalogs-request.json +8 -8
  758. package/dist/lib/schemas-data/3.1/media-buy/sync-catalogs-response.json +14 -14
  759. package/dist/lib/schemas-data/3.1/media-buy/sync-event-sources-request.json +8 -8
  760. package/dist/lib/schemas-data/3.1/media-buy/sync-event-sources-response.json +14 -14
  761. package/dist/lib/schemas-data/3.1/media-buy/update-media-buy-async-response-input-required.json +3 -3
  762. package/dist/lib/schemas-data/3.1/media-buy/update-media-buy-async-response-submitted.json +4 -4
  763. package/dist/lib/schemas-data/3.1/media-buy/update-media-buy-async-response-working.json +3 -3
  764. package/dist/lib/schemas-data/3.1/media-buy/update-media-buy-request.json +11 -11
  765. package/dist/lib/schemas-data/3.1/media-buy/update-media-buy-response.json +17 -17
  766. package/dist/lib/schemas-data/3.1/pricing-options/cpa-option.json +4 -4
  767. package/dist/lib/schemas-data/3.1/pricing-options/cpc-option.json +4 -4
  768. package/dist/lib/schemas-data/3.1/pricing-options/cpcv-option.json +4 -4
  769. package/dist/lib/schemas-data/3.1/pricing-options/cpm-option.json +4 -4
  770. package/dist/lib/schemas-data/3.1/pricing-options/cpp-option.json +5 -5
  771. package/dist/lib/schemas-data/3.1/pricing-options/cpv-option.json +4 -4
  772. package/dist/lib/schemas-data/3.1/pricing-options/flat-rate-option.json +4 -4
  773. package/dist/lib/schemas-data/3.1/pricing-options/price-breakdown.json +2 -2
  774. package/dist/lib/schemas-data/3.1/pricing-options/price-guidance.json +1 -1
  775. package/dist/lib/schemas-data/3.1/pricing-options/time-option.json +4 -4
  776. package/dist/lib/schemas-data/3.1/pricing-options/vcpm-option.json +4 -4
  777. package/dist/lib/schemas-data/3.1/property/authorization-result.json +1 -1
  778. package/dist/lib/schemas-data/3.1/property/base-property-source.json +4 -4
  779. package/dist/lib/schemas-data/3.1/property/create-property-list-request.json +8 -8
  780. package/dist/lib/schemas-data/3.1/property/create-property-list-response.json +6 -6
  781. package/dist/lib/schemas-data/3.1/property/delete-property-list-request.json +5 -5
  782. package/dist/lib/schemas-data/3.1/property/delete-property-list-response.json +5 -5
  783. package/dist/lib/schemas-data/3.1/property/delivery-record.json +3 -3
  784. package/dist/lib/schemas-data/3.1/property/get-property-list-request.json +5 -5
  785. package/dist/lib/schemas-data/3.1/property/get-property-list-response.json +9 -9
  786. package/dist/lib/schemas-data/3.1/property/list-property-lists-request.json +6 -6
  787. package/dist/lib/schemas-data/3.1/property/list-property-lists-response.json +7 -7
  788. package/dist/lib/schemas-data/3.1/property/property-error.json +2 -2
  789. package/dist/lib/schemas-data/3.1/property/property-feature-definition.json +2 -2
  790. package/dist/lib/schemas-data/3.1/property/property-feature-result.json +4 -4
  791. package/dist/lib/schemas-data/3.1/property/property-feature-value.json +2 -2
  792. package/dist/lib/schemas-data/3.1/property/property-feature.json +1 -1
  793. package/dist/lib/schemas-data/3.1/property/property-list-changed-webhook.json +2 -2
  794. package/dist/lib/schemas-data/3.1/property/property-list-filters.json +5 -5
  795. package/dist/lib/schemas-data/3.1/property/property-list.json +6 -6
  796. package/dist/lib/schemas-data/3.1/property/update-property-list-request.json +8 -8
  797. package/dist/lib/schemas-data/3.1/property/update-property-list-response.json +6 -6
  798. package/dist/lib/schemas-data/3.1/property/validate-property-delivery-request.json +6 -6
  799. package/dist/lib/schemas-data/3.1/property/validate-property-delivery-response.json +6 -6
  800. package/dist/lib/schemas-data/3.1/property/validation-result.json +5 -5
  801. package/dist/lib/schemas-data/3.1/protocol/get-adcp-capabilities-request.json +4 -4
  802. package/dist/lib/schemas-data/3.1/protocol/get-adcp-capabilities-response.json +34 -34
  803. package/dist/lib/schemas-data/3.1/protocol/get-task-status-request.json +5 -5
  804. package/dist/lib/schemas-data/3.1/protocol/get-task-status-response.json +10 -10
  805. package/dist/lib/schemas-data/3.1/protocol/list-tasks-request.json +13 -13
  806. package/dist/lib/schemas-data/3.1/protocol/list-tasks-response.json +8 -8
  807. package/dist/lib/schemas-data/3.1/registries/v1-canonical-mapping.json +2 -2
  808. package/dist/lib/schemas-data/3.1/signals/activate-signal-request.json +6 -6
  809. package/dist/lib/schemas-data/3.1/signals/activate-signal-response.json +9 -9
  810. package/dist/lib/schemas-data/3.1/signals/get-signals-async-response-submitted.json +4 -4
  811. package/dist/lib/schemas-data/3.1/signals/get-signals-async-response-working.json +3 -3
  812. package/dist/lib/schemas-data/3.1/signals/get-signals-request.json +11 -11
  813. package/dist/lib/schemas-data/3.1/signals/get-signals-response.json +17 -17
  814. package/dist/lib/schemas-data/3.1/sponsored-intelligence/si-capabilities.json +1 -1
  815. package/dist/lib/schemas-data/3.1/sponsored-intelligence/si-context-use.json +1 -1
  816. package/dist/lib/schemas-data/3.1/sponsored-intelligence/si-get-offering-request.json +4 -4
  817. package/dist/lib/schemas-data/3.1/sponsored-intelligence/si-get-offering-response.json +9 -9
  818. package/dist/lib/schemas-data/3.1/sponsored-intelligence/si-identity.json +1 -1
  819. package/dist/lib/schemas-data/3.1/sponsored-intelligence/si-initiate-session-request.json +7 -7
  820. package/dist/lib/schemas-data/3.1/sponsored-intelligence/si-initiate-session-response.json +10 -10
  821. package/dist/lib/schemas-data/3.1/sponsored-intelligence/si-send-message-request.json +5 -5
  822. package/dist/lib/schemas-data/3.1/sponsored-intelligence/si-send-message-response.json +10 -10
  823. package/dist/lib/schemas-data/3.1/sponsored-intelligence/si-sponsored-context-receipt.json +4 -4
  824. package/dist/lib/schemas-data/3.1/sponsored-intelligence/si-sponsored-context.json +4 -4
  825. package/dist/lib/schemas-data/3.1/sponsored-intelligence/si-terminate-session-request.json +4 -4
  826. package/dist/lib/schemas-data/3.1/sponsored-intelligence/si-terminate-session-response.json +7 -7
  827. package/dist/lib/schemas-data/3.1/sponsored-intelligence/si-ui-element.json +1 -1
  828. package/dist/lib/schemas-data/3.1/trusted-match/available-package.json +4 -4
  829. package/dist/lib/schemas-data/3.1/trusted-match/context-match-request.json +5 -5
  830. package/dist/lib/schemas-data/3.1/trusted-match/context-match-response.json +4 -4
  831. package/dist/lib/schemas-data/3.1/trusted-match/error.json +1 -1
  832. package/dist/lib/schemas-data/3.1/trusted-match/identity-match-request.json +4 -4
  833. package/dist/lib/schemas-data/3.1/trusted-match/identity-match-response.json +3 -3
  834. package/dist/lib/schemas-data/3.1/trusted-match/offer-price.json +1 -1
  835. package/dist/lib/schemas-data/3.1/trusted-match/offer.json +5 -5
  836. package/dist/lib/schemas-data/3.1/trusted-match/provider-registration.json +2 -2
  837. package/dist/lib/schemas-data/v2.5/_provenance.json +1 -1
  838. package/dist/lib/server/decisioning/runtime/entity-hydration.generated.js.map +1 -1
  839. package/dist/lib/server/decisioning/runtime/entity-hydration.generated.mjs.map +1 -1
  840. package/dist/lib/server/wire-spec-fields.generated.d.mts +29 -29
  841. package/dist/lib/server/wire-spec-fields.generated.d.ts +29 -29
  842. package/dist/lib/server/wire-spec-fields.generated.js +29 -29
  843. package/dist/lib/server/wire-spec-fields.generated.js.map +1 -1
  844. package/dist/lib/server/wire-spec-fields.generated.mjs +29 -29
  845. package/dist/lib/server/wire-spec-fields.generated.mjs.map +1 -1
  846. package/dist/lib/testing/client.d.ts.map +1 -1
  847. package/dist/lib/testing/client.js +12 -4
  848. package/dist/lib/testing/client.js.map +1 -1
  849. package/dist/lib/testing/client.mjs +12 -4
  850. package/dist/lib/testing/client.mjs.map +1 -1
  851. package/dist/lib/testing/compliance/comply.d.mts +1 -1
  852. package/dist/lib/testing/compliance/comply.d.ts +1 -1
  853. package/dist/lib/testing/compliance/comply.d.ts.map +1 -1
  854. package/dist/lib/testing/compliance/comply.js +16 -6
  855. package/dist/lib/testing/compliance/comply.js.map +1 -1
  856. package/dist/lib/testing/compliance/comply.mjs +16 -6
  857. package/dist/lib/testing/compliance/comply.mjs.map +1 -1
  858. package/dist/lib/testing/storyboard/probes.d.mts +6 -0
  859. package/dist/lib/testing/storyboard/probes.d.ts +6 -0
  860. package/dist/lib/testing/storyboard/probes.d.ts.map +1 -1
  861. package/dist/lib/testing/storyboard/probes.js +16 -5
  862. package/dist/lib/testing/storyboard/probes.js.map +1 -1
  863. package/dist/lib/testing/storyboard/probes.mjs +16 -5
  864. package/dist/lib/testing/storyboard/probes.mjs.map +1 -1
  865. package/dist/lib/testing/storyboard/runner.d.ts.map +1 -1
  866. package/dist/lib/testing/storyboard/runner.js +6 -2
  867. package/dist/lib/testing/storyboard/runner.js.map +1 -1
  868. package/dist/lib/testing/storyboard/runner.mjs +6 -2
  869. package/dist/lib/testing/storyboard/runner.mjs.map +1 -1
  870. package/dist/lib/testing/types.d.mts +7 -1
  871. package/dist/lib/testing/types.d.ts +7 -1
  872. package/dist/lib/testing/types.d.ts.map +1 -1
  873. package/dist/lib/testing/types.js.map +1 -1
  874. package/dist/lib/types/comply-test-controller.d.ts +49 -1
  875. package/dist/lib/types/core.generated.d.mts +54 -6
  876. package/dist/lib/types/core.generated.d.ts +54 -6
  877. package/dist/lib/types/core.generated.d.ts.map +1 -1
  878. package/dist/lib/types/core.generated.js.map +1 -1
  879. package/dist/lib/types/error-codes.d.mts +4 -4
  880. package/dist/lib/types/error-codes.d.ts +4 -4
  881. package/dist/lib/types/get-adcp-capabilities.d.ts +1 -1
  882. package/dist/lib/types/get-products.d.ts +49 -1
  883. package/dist/lib/types/get-task-status.d.ts +49 -1
  884. package/dist/lib/types/manifest.generated.d.mts +7 -7
  885. package/dist/lib/types/manifest.generated.d.ts +7 -7
  886. package/dist/lib/types/manifest.generated.js +4 -4
  887. package/dist/lib/types/manifest.generated.js.map +1 -1
  888. package/dist/lib/types/manifest.generated.mjs +4 -4
  889. package/dist/lib/types/manifest.generated.mjs.map +1 -1
  890. package/dist/lib/types/per-tool-index.json +1 -1
  891. package/dist/lib/types/schemas.generated.d.mts +135 -27
  892. package/dist/lib/types/schemas.generated.d.ts +135 -27
  893. package/dist/lib/types/schemas.generated.d.ts.map +1 -1
  894. package/dist/lib/types/schemas.generated.js +15 -3
  895. package/dist/lib/types/schemas.generated.js.map +1 -1
  896. package/dist/lib/types/schemas.generated.mjs +15 -3
  897. package/dist/lib/types/schemas.generated.mjs.map +1 -1
  898. package/dist/lib/types/sync-creatives.d.ts +1 -1
  899. package/dist/lib/types/tools.generated.d.mts +54 -6
  900. package/dist/lib/types/tools.generated.d.ts +54 -6
  901. package/dist/lib/types/tools.generated.d.ts.map +1 -1
  902. package/dist/lib/types/tools.generated.js.map +1 -1
  903. package/dist/lib/types/validate-input.d.ts +3 -3
  904. package/dist/lib/version.d.mts +7 -7
  905. package/dist/lib/version.d.ts +7 -7
  906. package/dist/lib/version.d.ts.map +1 -1
  907. package/dist/lib/version.js +9 -6
  908. package/dist/lib/version.js.map +1 -1
  909. package/dist/lib/version.mjs +9 -6
  910. package/dist/lib/version.mjs.map +1 -1
  911. package/docs/llms.txt +4 -4
  912. package/package.json +2 -2
  913. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/brand/index.yaml +0 -0
  914. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/brand/scenarios/distributed_brand_resolution.yaml +0 -0
  915. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/brand/scenarios/single_side_trust_extension.yaml +0 -0
  916. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/creative/index.yaml +0 -0
  917. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/creative/scenarios/billing_out_of_band.yaml +0 -0
  918. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/creative/scenarios/creative_lifecycle_webhooks.yaml +0 -0
  919. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/creative/scenarios/native_in_feed.yaml +0 -0
  920. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/governance/index.yaml +0 -0
  921. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/index.yaml +0 -0
  922. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/audience_buy_flow.yaml +0 -0
  923. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/billing_finality_delivery.yaml +0 -0
  924. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/canonical_formats.yaml +0 -0
  925. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/clicks_buy_flow.yaml +0 -0
  926. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/completed_views_buy_flow.yaml +0 -0
  927. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/create_media_buy_async.yaml +0 -0
  928. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/creative_fate_after_cancellation.yaml +0 -0
  929. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/creative_reception.yaml +0 -0
  930. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/delivery_reporting.yaml +0 -0
  931. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/dependency_impairment.yaml +0 -0
  932. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/dependency_impairment_cardinality.yaml +0 -0
  933. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/event_dedup_flow.yaml +0 -0
  934. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/frequency_cap_enforcement.yaml +0 -0
  935. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/get_products_async.yaml +0 -0
  936. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/governance_approved.yaml +0 -0
  937. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/governance_conditions.yaml +0 -0
  938. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/governance_denied.yaml +0 -0
  939. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/governance_denied_recovery.yaml +0 -0
  940. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/inline_creatives_without_sync.yaml +0 -0
  941. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/invalid_transitions.yaml +0 -0
  942. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/measurement_accountability.yaml +0 -0
  943. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/measurement_terms_rejected.yaml +0 -0
  944. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/package_correlation_legacy_fallback.yaml +0 -0
  945. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/pending_creatives_to_start.yaml +0 -0
  946. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/per_creative_conversion_attribution.yaml +0 -0
  947. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/performance_buy_flow.yaml +0 -0
  948. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/performance_buy_flow_roas.yaml +0 -0
  949. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/pricing_currency_filter.yaml +0 -0
  950. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/product_signal_targeting.yaml +0 -0
  951. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/proposal_finalize.yaml +0 -0
  952. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/proposal_finalize_asap_timing.yaml +0 -0
  953. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/proposal_not_found_errors.yaml +0 -0
  954. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/provenance_audit_observation.yaml +0 -0
  955. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/provenance_enforcement.yaml +0 -0
  956. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/provenance_truth_of_claim.yaml +0 -0
  957. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/reach_buy_flow.yaml +0 -0
  958. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/refine_finalize_exclusivity.yaml +0 -0
  959. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/refine_products.yaml +0 -0
  960. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/vendor_metric_accountability.yaml +0 -0
  961. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/vendor_metric_catalog_precondition.yaml +0 -0
  962. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/scenarios/vendor_metric_optimization_flow.yaml +0 -0
  963. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/media-buy/state-machine.yaml +0 -0
  964. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/signals/index.yaml +0 -0
  965. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/signals/scenarios/get_signals_async.yaml +0 -0
  966. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/sponsored-intelligence/index.yaml +0 -0
  967. /package/compliance/cache/{3.1.2 → 3.1.5}/domains/sponsored-intelligence/sponsored-context-accountability.yaml +0 -0
  968. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/brand/index.yaml +0 -0
  969. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/brand/scenarios/distributed_brand_resolution.yaml +0 -0
  970. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/brand/scenarios/single_side_trust_extension.yaml +0 -0
  971. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/creative/index.yaml +0 -0
  972. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/creative/scenarios/billing_out_of_band.yaml +0 -0
  973. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/creative/scenarios/creative_lifecycle_webhooks.yaml +0 -0
  974. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/creative/scenarios/native_in_feed.yaml +0 -0
  975. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/governance/index.yaml +0 -0
  976. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/index.yaml +0 -0
  977. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/audience_buy_flow.yaml +0 -0
  978. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/billing_finality_delivery.yaml +0 -0
  979. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/canonical_formats.yaml +0 -0
  980. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/clicks_buy_flow.yaml +0 -0
  981. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/completed_views_buy_flow.yaml +0 -0
  982. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/create_media_buy_async.yaml +0 -0
  983. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/creative_fate_after_cancellation.yaml +0 -0
  984. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/creative_reception.yaml +0 -0
  985. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/delivery_reporting.yaml +0 -0
  986. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/dependency_impairment.yaml +0 -0
  987. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/dependency_impairment_cardinality.yaml +0 -0
  988. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/event_dedup_flow.yaml +0 -0
  989. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/frequency_cap_enforcement.yaml +0 -0
  990. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/get_products_async.yaml +0 -0
  991. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/governance_approved.yaml +0 -0
  992. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/governance_conditions.yaml +0 -0
  993. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/governance_denied.yaml +0 -0
  994. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/governance_denied_recovery.yaml +0 -0
  995. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/inline_creatives_without_sync.yaml +0 -0
  996. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/invalid_transitions.yaml +0 -0
  997. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/measurement_accountability.yaml +0 -0
  998. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/measurement_terms_rejected.yaml +0 -0
  999. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/package_correlation_legacy_fallback.yaml +0 -0
  1000. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/pending_creatives_to_start.yaml +0 -0
  1001. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/per_creative_conversion_attribution.yaml +0 -0
  1002. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/performance_buy_flow.yaml +0 -0
  1003. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/performance_buy_flow_roas.yaml +0 -0
  1004. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/pricing_currency_filter.yaml +0 -0
  1005. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/product_signal_targeting.yaml +0 -0
  1006. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/proposal_finalize.yaml +0 -0
  1007. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/proposal_finalize_asap_timing.yaml +0 -0
  1008. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/proposal_not_found_errors.yaml +0 -0
  1009. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/provenance_audit_observation.yaml +0 -0
  1010. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/provenance_enforcement.yaml +0 -0
  1011. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/provenance_truth_of_claim.yaml +0 -0
  1012. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/reach_buy_flow.yaml +0 -0
  1013. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/refine_finalize_exclusivity.yaml +0 -0
  1014. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/refine_products.yaml +0 -0
  1015. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/vendor_metric_accountability.yaml +0 -0
  1016. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/vendor_metric_catalog_precondition.yaml +0 -0
  1017. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/scenarios/vendor_metric_optimization_flow.yaml +0 -0
  1018. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/media-buy/state-machine.yaml +0 -0
  1019. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/signals/index.yaml +0 -0
  1020. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/signals/scenarios/get_signals_async.yaml +0 -0
  1021. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/sponsored-intelligence/index.yaml +0 -0
  1022. /package/compliance/cache/{3.1.2 → 3.1.5}/protocols/sponsored-intelligence/sponsored-context-accountability.yaml +0 -0
  1023. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/audience-sync/index.yaml +0 -0
  1024. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/brand-rights/index.yaml +0 -0
  1025. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/brand-rights/scenarios/governance_denied.yaml +0 -0
  1026. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/collection-lists/index.yaml +0 -0
  1027. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/content-standards/index.yaml +0 -0
  1028. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/creative-ad-server/index.yaml +0 -0
  1029. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/creative-generative/generative-seller.yaml +0 -0
  1030. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/creative-generative/index.yaml +0 -0
  1031. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/creative-template/index.yaml +0 -0
  1032. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/creative-transformers/index.yaml +0 -0
  1033. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/governance-aware-seller/index.yaml +0 -0
  1034. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/governance-aware-seller/scenarios/governance_multi_agent_rejected.yaml +0 -0
  1035. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/governance-delivery-monitor/index.yaml +0 -0
  1036. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/governance-spend-authority/denied.yaml +0 -0
  1037. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/governance-spend-authority/index.yaml +0 -0
  1038. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/property-lists/index.yaml +0 -0
  1039. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/sales-broadcast-tv/index.yaml +0 -0
  1040. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/sales-catalog-driven/index.yaml +0 -0
  1041. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/sales-guaranteed/index.yaml +0 -0
  1042. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/sales-non-guaranteed/index.yaml +0 -0
  1043. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/sales-proposal-mode/index.yaml +0 -0
  1044. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/sales-social/index.yaml +0 -0
  1045. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/signal-marketplace/index.yaml +0 -0
  1046. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/signal-marketplace/scenarios/governance_denied.yaml +0 -0
  1047. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/signal-owned/index.yaml +0 -0
  1048. /package/compliance/cache/{3.1.2 → 3.1.5}/specialisms/sponsored-intelligence/index.yaml +0 -0
  1049. /package/compliance/cache/{3.1.2 → 3.1.5}/test-kits/acme-outdoor-live.yaml +0 -0
  1050. /package/compliance/cache/{3.1.2 → 3.1.5}/test-kits/acme-outdoor.yaml +0 -0
  1051. /package/compliance/cache/{3.1.2 → 3.1.5}/test-kits/billing-gate-runner.yaml +0 -0
  1052. /package/compliance/cache/{3.1.2 → 3.1.5}/test-kits/bistro-oranje.yaml +0 -0
  1053. /package/compliance/cache/{3.1.2 → 3.1.5}/test-kits/distributed-brand-runner.yaml +0 -0
  1054. /package/compliance/cache/{3.1.2 → 3.1.5}/test-kits/nova-motors.yaml +0 -0
  1055. /package/compliance/cache/{3.1.2 → 3.1.5}/test-kits/osei-natural.yaml +0 -0
  1056. /package/compliance/cache/{3.1.2 → 3.1.5}/test-kits/signed-requests-runner.yaml +0 -0
  1057. /package/compliance/cache/{3.1.2 → 3.1.5}/test-kits/single-side-trust-runner.yaml +0 -0
  1058. /package/compliance/cache/{3.1.2 → 3.1.5}/test-kits/substitution-observer-runner.yaml +0 -0
  1059. /package/compliance/cache/{3.1.2 → 3.1.5}/test-kits/summit-foods.yaml +0 -0
  1060. /package/compliance/cache/{3.1.2 → 3.1.5}/test-kits/webhook-receiver-runner.yaml +0 -0
  1061. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/catalog-macro-substitution.json +0 -0
  1062. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/plan-hash/001-minimal-plan.json +0 -0
  1063. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/plan-hash/002-full-plan.json +0 -0
  1064. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/plan-hash/003-bookkeeping-stripped.json +0 -0
  1065. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/plan-hash/004a-human-review-omitted.json +0 -0
  1066. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/plan-hash/004b-human-review-explicit-null.json +0 -0
  1067. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/plan-hash/005a-policy-categories-order-1.json +0 -0
  1068. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/plan-hash/005b-policy-categories-order-2.json +0 -0
  1069. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/plan-hash/006a-ext-trace-v1.json +0 -0
  1070. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/plan-hash/006b-ext-trace-v2.json +0 -0
  1071. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/plan-hash/007-unicode-objectives.json +0 -0
  1072. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/plan-hash/008-numeric-canonicalization.json +0 -0
  1073. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/README.md +0 -0
  1074. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/canonicalization.json +0 -0
  1075. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/keys.json +0 -0
  1076. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/001-no-signature-header.json +0 -0
  1077. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/002-wrong-tag.json +0 -0
  1078. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/003-expired-signature.json +0 -0
  1079. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/004-window-too-long.json +0 -0
  1080. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/005-alg-not-allowed.json +0 -0
  1081. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/006-missing-covered-component.json +0 -0
  1082. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/007-missing-content-digest.json +0 -0
  1083. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/008-unknown-keyid.json +0 -0
  1084. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/009-key-ops-missing-verify.json +0 -0
  1085. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/010-content-digest-mismatch.json +0 -0
  1086. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/011-malformed-header.json +0 -0
  1087. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/012-missing-expires-param.json +0 -0
  1088. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/013-expires-le-created.json +0 -0
  1089. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/014-missing-nonce-param.json +0 -0
  1090. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/015-signature-invalid.json +0 -0
  1091. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/016-replayed-nonce.json +0 -0
  1092. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/017-key-revoked.json +0 -0
  1093. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/018-digest-covered-when-forbidden.json +0 -0
  1094. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/019-signature-without-signature-input.json +0 -0
  1095. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/020-rate-abuse.json +0 -0
  1096. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/021-duplicate-signature-input-label.json +0 -0
  1097. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/022-multi-valued-content-type.json +0 -0
  1098. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/023-multi-valued-content-digest.json +0 -0
  1099. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/024-unquoted-string-param.json +0 -0
  1100. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/025-jwk-alg-crv-mismatch.json +0 -0
  1101. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/026-non-ascii-host.json +0 -0
  1102. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/027-webhook-registration-authentication-unsigned.json +0 -0
  1103. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/negative/028-unsigned-protocol-method-required.json +0 -0
  1104. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/positive/001-basic-post.json +0 -0
  1105. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/positive/002-post-with-content-digest.json +0 -0
  1106. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/positive/003-es256-post.json +0 -0
  1107. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/positive/004-multiple-signature-labels.json +0 -0
  1108. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/positive/005-default-port-stripped.json +0 -0
  1109. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/positive/006-dot-segment-path.json +0 -0
  1110. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/positive/007-query-byte-preserved.json +0 -0
  1111. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/positive/008-percent-encoded-path.json +0 -0
  1112. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/positive/009-percent-encoded-unreserved-decoded.json +0 -0
  1113. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/positive/010-percent-encoded-slash-preserved.json +0 -0
  1114. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/positive/011-ipv6-authority.json +0 -0
  1115. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/request-signing/positive/012-ipv6-authority-default-port-stripped.json +0 -0
  1116. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-receiver-envelope.json +0 -0
  1117. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/README.md +0 -0
  1118. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/keys.json +0 -0
  1119. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/negative/001-wrong-tag.json +0 -0
  1120. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/negative/002-expired-signature.json +0 -0
  1121. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/negative/003-window-too-long.json +0 -0
  1122. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/negative/004-alg-not-allowed.json +0 -0
  1123. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/negative/005-missing-authority-component.json +0 -0
  1124. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/negative/006-missing-content-digest.json +0 -0
  1125. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/negative/007-unknown-keyid.json +0 -0
  1126. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/negative/008-wrong-adcp-use.json +0 -0
  1127. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/negative/009-content-digest-mismatch.json +0 -0
  1128. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/negative/010-malformed-signature-input.json +0 -0
  1129. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/negative/011-signature-without-input.json +0 -0
  1130. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/negative/012-missing-expires-param.json +0 -0
  1131. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/negative/013-expires-le-created.json +0 -0
  1132. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/negative/014-missing-nonce-param.json +0 -0
  1133. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/negative/015-signature-invalid.json +0 -0
  1134. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/negative/016-replayed-nonce.json +0 -0
  1135. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/negative/017-key-revoked.json +0 -0
  1136. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/negative/018-rate-abuse.json +0 -0
  1137. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/negative/019-revocation-stale.json +0 -0
  1138. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/negative/020-key-ops-missing-verify.json +0 -0
  1139. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/negative/021-base64-alphabet-mixing.json +0 -0
  1140. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/positive/001-basic-post.json +0 -0
  1141. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/positive/002-es256-post.json +0 -0
  1142. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/positive/003-multiple-signature-labels.json +0 -0
  1143. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/positive/004-default-port-stripped.json +0 -0
  1144. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/positive/005-percent-encoded-path.json +0 -0
  1145. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/positive/006-query-byte-preserved.json +0 -0
  1146. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/positive/007-body-without-idempotency-key.json +0 -0
  1147. /package/compliance/cache/{3.1.2 → 3.1.5}/test-vectors/webhook-signing/positive/008-request-signing-key-reuse.json +0 -0
  1148. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/billing-gate-dispatch.yaml +0 -0
  1149. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/canonical-format-validate-input.yaml +0 -0
  1150. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/capability-discovery.yaml +0 -0
  1151. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/collection-lists-pagination-integrity.yaml +0 -0
  1152. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/comply-controller-mode-gate.yaml +0 -0
  1153. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/content-standards-pagination-integrity.yaml +0 -0
  1154. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/deterministic-testing.yaml +0 -0
  1155. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/error-compliance-signals.yaml +0 -0
  1156. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/error-compliance.yaml +0 -0
  1157. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/fictional-entities.yaml +0 -0
  1158. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/get-media-buys-pagination-integrity.yaml +0 -0
  1159. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/get-products-pagination-integrity.yaml +0 -0
  1160. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/get-signals-pagination-integrity.yaml +0 -0
  1161. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/notification-config-event-scope.yaml +0 -0
  1162. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/notification-config-lifecycle.yaml +0 -0
  1163. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/notification-config-rejections.yaml +0 -0
  1164. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/pagination-integrity-creative-formats.yaml +0 -0
  1165. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/pagination-integrity-list-accounts.yaml +0 -0
  1166. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/pagination-integrity.yaml +0 -0
  1167. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/property-lists-pagination-integrity.yaml +0 -0
  1168. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/read-tool-idempotency.yaml +0 -0
  1169. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/schema-validation-signals.yaml +0 -0
  1170. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/schema-validation.yaml +0 -0
  1171. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/security.yaml +0 -0
  1172. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/signed-requests.yaml +0 -0
  1173. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/stale-response-advisory.yaml +0 -0
  1174. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/v3-envelope-integrity.yaml +0 -0
  1175. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/version-negotiation.yaml +0 -0
  1176. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/webhook-emission.yaml +0 -0
  1177. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/webhook-receiver-envelope.yaml +0 -0
  1178. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/wholesale-feed-bulk-webhooks.yaml +0 -0
  1179. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/wholesale-feed-product-webhooks.yaml +0 -0
  1180. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/wholesale-feed-products.yaml +0 -0
  1181. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/wholesale-feed-signal-webhooks.yaml +0 -0
  1182. /package/compliance/cache/{3.1.2 → 3.1.5}/universal/wholesale-feed-signals.yaml +0 -0
  1183. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/brand/index.yaml +0 -0
  1184. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/brand/scenarios/distributed_brand_resolution.yaml +0 -0
  1185. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/brand/scenarios/single_side_trust_extension.yaml +0 -0
  1186. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/creative/index.yaml +0 -0
  1187. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/creative/scenarios/billing_out_of_band.yaml +0 -0
  1188. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/creative/scenarios/creative_lifecycle_webhooks.yaml +0 -0
  1189. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/creative/scenarios/native_in_feed.yaml +0 -0
  1190. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/governance/index.yaml +0 -0
  1191. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/index.yaml +0 -0
  1192. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/audience_buy_flow.yaml +0 -0
  1193. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/billing_finality_delivery.yaml +0 -0
  1194. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/canonical_formats.yaml +0 -0
  1195. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/clicks_buy_flow.yaml +0 -0
  1196. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/completed_views_buy_flow.yaml +0 -0
  1197. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/create_media_buy_async.yaml +0 -0
  1198. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/creative_fate_after_cancellation.yaml +0 -0
  1199. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/creative_reception.yaml +0 -0
  1200. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/delivery_reporting.yaml +0 -0
  1201. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/dependency_impairment.yaml +0 -0
  1202. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/dependency_impairment_cardinality.yaml +0 -0
  1203. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/event_dedup_flow.yaml +0 -0
  1204. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/frequency_cap_enforcement.yaml +0 -0
  1205. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/get_products_async.yaml +0 -0
  1206. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/governance_approved.yaml +0 -0
  1207. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/governance_conditions.yaml +0 -0
  1208. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/governance_denied.yaml +0 -0
  1209. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/governance_denied_recovery.yaml +0 -0
  1210. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/inline_creatives_without_sync.yaml +0 -0
  1211. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/invalid_transitions.yaml +0 -0
  1212. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/measurement_accountability.yaml +0 -0
  1213. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/measurement_terms_rejected.yaml +0 -0
  1214. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/package_correlation_legacy_fallback.yaml +0 -0
  1215. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/pending_creatives_to_start.yaml +0 -0
  1216. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/per_creative_conversion_attribution.yaml +0 -0
  1217. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/performance_buy_flow.yaml +0 -0
  1218. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/performance_buy_flow_roas.yaml +0 -0
  1219. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/pricing_currency_filter.yaml +0 -0
  1220. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/product_signal_targeting.yaml +0 -0
  1221. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/proposal_finalize.yaml +0 -0
  1222. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/proposal_finalize_asap_timing.yaml +0 -0
  1223. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/proposal_not_found_errors.yaml +0 -0
  1224. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/provenance_audit_observation.yaml +0 -0
  1225. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/provenance_enforcement.yaml +0 -0
  1226. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/provenance_truth_of_claim.yaml +0 -0
  1227. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/reach_buy_flow.yaml +0 -0
  1228. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/refine_finalize_exclusivity.yaml +0 -0
  1229. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/refine_products.yaml +0 -0
  1230. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/vendor_metric_accountability.yaml +0 -0
  1231. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/vendor_metric_catalog_precondition.yaml +0 -0
  1232. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/scenarios/vendor_metric_optimization_flow.yaml +0 -0
  1233. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/media-buy/state-machine.yaml +0 -0
  1234. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/signals/index.yaml +0 -0
  1235. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/signals/scenarios/get_signals_async.yaml +0 -0
  1236. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/sponsored-intelligence/index.yaml +0 -0
  1237. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/domains/sponsored-intelligence/sponsored-context-accountability.yaml +0 -0
  1238. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/brand/index.yaml +0 -0
  1239. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/brand/scenarios/distributed_brand_resolution.yaml +0 -0
  1240. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/brand/scenarios/single_side_trust_extension.yaml +0 -0
  1241. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/creative/index.yaml +0 -0
  1242. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/creative/scenarios/billing_out_of_band.yaml +0 -0
  1243. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/creative/scenarios/creative_lifecycle_webhooks.yaml +0 -0
  1244. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/creative/scenarios/native_in_feed.yaml +0 -0
  1245. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/governance/index.yaml +0 -0
  1246. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/index.yaml +0 -0
  1247. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/audience_buy_flow.yaml +0 -0
  1248. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/billing_finality_delivery.yaml +0 -0
  1249. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/canonical_formats.yaml +0 -0
  1250. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/clicks_buy_flow.yaml +0 -0
  1251. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/completed_views_buy_flow.yaml +0 -0
  1252. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/create_media_buy_async.yaml +0 -0
  1253. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/creative_fate_after_cancellation.yaml +0 -0
  1254. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/creative_reception.yaml +0 -0
  1255. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/delivery_reporting.yaml +0 -0
  1256. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/dependency_impairment.yaml +0 -0
  1257. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/dependency_impairment_cardinality.yaml +0 -0
  1258. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/event_dedup_flow.yaml +0 -0
  1259. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/frequency_cap_enforcement.yaml +0 -0
  1260. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/get_products_async.yaml +0 -0
  1261. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/governance_approved.yaml +0 -0
  1262. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/governance_conditions.yaml +0 -0
  1263. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/governance_denied.yaml +0 -0
  1264. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/governance_denied_recovery.yaml +0 -0
  1265. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/inline_creatives_without_sync.yaml +0 -0
  1266. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/invalid_transitions.yaml +0 -0
  1267. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/measurement_accountability.yaml +0 -0
  1268. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/measurement_terms_rejected.yaml +0 -0
  1269. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/package_correlation_legacy_fallback.yaml +0 -0
  1270. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/pending_creatives_to_start.yaml +0 -0
  1271. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/per_creative_conversion_attribution.yaml +0 -0
  1272. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/performance_buy_flow.yaml +0 -0
  1273. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/performance_buy_flow_roas.yaml +0 -0
  1274. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/pricing_currency_filter.yaml +0 -0
  1275. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/product_signal_targeting.yaml +0 -0
  1276. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/proposal_finalize.yaml +0 -0
  1277. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/proposal_finalize_asap_timing.yaml +0 -0
  1278. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/proposal_not_found_errors.yaml +0 -0
  1279. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/provenance_audit_observation.yaml +0 -0
  1280. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/provenance_enforcement.yaml +0 -0
  1281. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/provenance_truth_of_claim.yaml +0 -0
  1282. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/reach_buy_flow.yaml +0 -0
  1283. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/refine_finalize_exclusivity.yaml +0 -0
  1284. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/refine_products.yaml +0 -0
  1285. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/vendor_metric_accountability.yaml +0 -0
  1286. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/vendor_metric_catalog_precondition.yaml +0 -0
  1287. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/scenarios/vendor_metric_optimization_flow.yaml +0 -0
  1288. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/media-buy/state-machine.yaml +0 -0
  1289. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/signals/index.yaml +0 -0
  1290. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/signals/scenarios/get_signals_async.yaml +0 -0
  1291. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/sponsored-intelligence/index.yaml +0 -0
  1292. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/protocols/sponsored-intelligence/sponsored-context-accountability.yaml +0 -0
  1293. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/audience-sync/index.yaml +0 -0
  1294. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/brand-rights/index.yaml +0 -0
  1295. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/brand-rights/scenarios/governance_denied.yaml +0 -0
  1296. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/collection-lists/index.yaml +0 -0
  1297. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/content-standards/index.yaml +0 -0
  1298. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/creative-ad-server/index.yaml +0 -0
  1299. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/creative-generative/generative-seller.yaml +0 -0
  1300. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/creative-generative/index.yaml +0 -0
  1301. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/creative-template/index.yaml +0 -0
  1302. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/creative-transformers/index.yaml +0 -0
  1303. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/governance-aware-seller/index.yaml +0 -0
  1304. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/governance-aware-seller/scenarios/governance_multi_agent_rejected.yaml +0 -0
  1305. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/governance-delivery-monitor/index.yaml +0 -0
  1306. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/governance-spend-authority/denied.yaml +0 -0
  1307. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/governance-spend-authority/index.yaml +0 -0
  1308. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/property-lists/index.yaml +0 -0
  1309. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/sales-broadcast-tv/index.yaml +0 -0
  1310. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/sales-catalog-driven/index.yaml +0 -0
  1311. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/sales-guaranteed/index.yaml +0 -0
  1312. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/sales-non-guaranteed/index.yaml +0 -0
  1313. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/sales-proposal-mode/index.yaml +0 -0
  1314. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/sales-social/index.yaml +0 -0
  1315. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/signal-marketplace/index.yaml +0 -0
  1316. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/signal-marketplace/scenarios/governance_denied.yaml +0 -0
  1317. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/signal-owned/index.yaml +0 -0
  1318. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/specialisms/sponsored-intelligence/index.yaml +0 -0
  1319. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-kits/acme-outdoor-live.yaml +0 -0
  1320. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-kits/acme-outdoor.yaml +0 -0
  1321. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-kits/billing-gate-runner.yaml +0 -0
  1322. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-kits/bistro-oranje.yaml +0 -0
  1323. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-kits/distributed-brand-runner.yaml +0 -0
  1324. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-kits/nova-motors.yaml +0 -0
  1325. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-kits/osei-natural.yaml +0 -0
  1326. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-kits/signed-requests-runner.yaml +0 -0
  1327. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-kits/single-side-trust-runner.yaml +0 -0
  1328. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-kits/substitution-observer-runner.yaml +0 -0
  1329. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-kits/summit-foods.yaml +0 -0
  1330. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-kits/webhook-receiver-runner.yaml +0 -0
  1331. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/catalog-macro-substitution.json +0 -0
  1332. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/plan-hash/001-minimal-plan.json +0 -0
  1333. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/plan-hash/002-full-plan.json +0 -0
  1334. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/plan-hash/003-bookkeeping-stripped.json +0 -0
  1335. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/plan-hash/004a-human-review-omitted.json +0 -0
  1336. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/plan-hash/004b-human-review-explicit-null.json +0 -0
  1337. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/plan-hash/005a-policy-categories-order-1.json +0 -0
  1338. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/plan-hash/005b-policy-categories-order-2.json +0 -0
  1339. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/plan-hash/006a-ext-trace-v1.json +0 -0
  1340. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/plan-hash/006b-ext-trace-v2.json +0 -0
  1341. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/plan-hash/007-unicode-objectives.json +0 -0
  1342. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/plan-hash/008-numeric-canonicalization.json +0 -0
  1343. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/README.md +0 -0
  1344. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/canonicalization.json +0 -0
  1345. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/keys.json +0 -0
  1346. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/001-no-signature-header.json +0 -0
  1347. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/002-wrong-tag.json +0 -0
  1348. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/003-expired-signature.json +0 -0
  1349. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/004-window-too-long.json +0 -0
  1350. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/005-alg-not-allowed.json +0 -0
  1351. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/006-missing-covered-component.json +0 -0
  1352. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/007-missing-content-digest.json +0 -0
  1353. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/008-unknown-keyid.json +0 -0
  1354. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/009-key-ops-missing-verify.json +0 -0
  1355. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/010-content-digest-mismatch.json +0 -0
  1356. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/011-malformed-header.json +0 -0
  1357. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/012-missing-expires-param.json +0 -0
  1358. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/013-expires-le-created.json +0 -0
  1359. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/014-missing-nonce-param.json +0 -0
  1360. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/015-signature-invalid.json +0 -0
  1361. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/016-replayed-nonce.json +0 -0
  1362. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/017-key-revoked.json +0 -0
  1363. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/018-digest-covered-when-forbidden.json +0 -0
  1364. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/019-signature-without-signature-input.json +0 -0
  1365. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/020-rate-abuse.json +0 -0
  1366. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/021-duplicate-signature-input-label.json +0 -0
  1367. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/022-multi-valued-content-type.json +0 -0
  1368. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/023-multi-valued-content-digest.json +0 -0
  1369. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/024-unquoted-string-param.json +0 -0
  1370. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/025-jwk-alg-crv-mismatch.json +0 -0
  1371. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/026-non-ascii-host.json +0 -0
  1372. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/027-webhook-registration-authentication-unsigned.json +0 -0
  1373. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/negative/028-unsigned-protocol-method-required.json +0 -0
  1374. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/positive/001-basic-post.json +0 -0
  1375. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/positive/002-post-with-content-digest.json +0 -0
  1376. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/positive/003-es256-post.json +0 -0
  1377. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/positive/004-multiple-signature-labels.json +0 -0
  1378. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/positive/005-default-port-stripped.json +0 -0
  1379. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/positive/006-dot-segment-path.json +0 -0
  1380. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/positive/007-query-byte-preserved.json +0 -0
  1381. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/positive/008-percent-encoded-path.json +0 -0
  1382. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/positive/009-percent-encoded-unreserved-decoded.json +0 -0
  1383. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/positive/010-percent-encoded-slash-preserved.json +0 -0
  1384. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/positive/011-ipv6-authority.json +0 -0
  1385. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/request-signing/positive/012-ipv6-authority-default-port-stripped.json +0 -0
  1386. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-receiver-envelope.json +0 -0
  1387. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/README.md +0 -0
  1388. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/keys.json +0 -0
  1389. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/negative/001-wrong-tag.json +0 -0
  1390. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/negative/002-expired-signature.json +0 -0
  1391. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/negative/003-window-too-long.json +0 -0
  1392. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/negative/004-alg-not-allowed.json +0 -0
  1393. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/negative/005-missing-authority-component.json +0 -0
  1394. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/negative/006-missing-content-digest.json +0 -0
  1395. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/negative/007-unknown-keyid.json +0 -0
  1396. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/negative/008-wrong-adcp-use.json +0 -0
  1397. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/negative/009-content-digest-mismatch.json +0 -0
  1398. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/negative/010-malformed-signature-input.json +0 -0
  1399. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/negative/011-signature-without-input.json +0 -0
  1400. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/negative/012-missing-expires-param.json +0 -0
  1401. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/negative/013-expires-le-created.json +0 -0
  1402. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/negative/014-missing-nonce-param.json +0 -0
  1403. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/negative/015-signature-invalid.json +0 -0
  1404. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/negative/016-replayed-nonce.json +0 -0
  1405. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/negative/017-key-revoked.json +0 -0
  1406. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/negative/018-rate-abuse.json +0 -0
  1407. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/negative/019-revocation-stale.json +0 -0
  1408. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/negative/020-key-ops-missing-verify.json +0 -0
  1409. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/negative/021-base64-alphabet-mixing.json +0 -0
  1410. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/positive/001-basic-post.json +0 -0
  1411. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/positive/002-es256-post.json +0 -0
  1412. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/positive/003-multiple-signature-labels.json +0 -0
  1413. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/positive/004-default-port-stripped.json +0 -0
  1414. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/positive/005-percent-encoded-path.json +0 -0
  1415. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/positive/006-query-byte-preserved.json +0 -0
  1416. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/positive/007-body-without-idempotency-key.json +0 -0
  1417. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/test-vectors/webhook-signing/positive/008-request-signing-key-reuse.json +0 -0
  1418. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/billing-gate-dispatch.yaml +0 -0
  1419. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/canonical-format-validate-input.yaml +0 -0
  1420. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/capability-discovery.yaml +0 -0
  1421. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/collection-lists-pagination-integrity.yaml +0 -0
  1422. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/comply-controller-mode-gate.yaml +0 -0
  1423. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/content-standards-pagination-integrity.yaml +0 -0
  1424. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/deterministic-testing.yaml +0 -0
  1425. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/error-compliance-signals.yaml +0 -0
  1426. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/error-compliance.yaml +0 -0
  1427. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/fictional-entities.yaml +0 -0
  1428. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/get-media-buys-pagination-integrity.yaml +0 -0
  1429. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/get-products-pagination-integrity.yaml +0 -0
  1430. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/get-signals-pagination-integrity.yaml +0 -0
  1431. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/notification-config-event-scope.yaml +0 -0
  1432. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/notification-config-lifecycle.yaml +0 -0
  1433. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/notification-config-rejections.yaml +0 -0
  1434. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/pagination-integrity-creative-formats.yaml +0 -0
  1435. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/pagination-integrity-list-accounts.yaml +0 -0
  1436. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/pagination-integrity.yaml +0 -0
  1437. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/property-lists-pagination-integrity.yaml +0 -0
  1438. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/read-tool-idempotency.yaml +0 -0
  1439. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/schema-validation-signals.yaml +0 -0
  1440. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/schema-validation.yaml +0 -0
  1441. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/security.yaml +0 -0
  1442. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/signed-requests.yaml +0 -0
  1443. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/stale-response-advisory.yaml +0 -0
  1444. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/v3-envelope-integrity.yaml +0 -0
  1445. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/version-negotiation.yaml +0 -0
  1446. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/webhook-emission.yaml +0 -0
  1447. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/webhook-receiver-envelope.yaml +0 -0
  1448. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/wholesale-feed-bulk-webhooks.yaml +0 -0
  1449. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/wholesale-feed-product-webhooks.yaml +0 -0
  1450. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/wholesale-feed-products.yaml +0 -0
  1451. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/wholesale-feed-signal-webhooks.yaml +0 -0
  1452. /package/compliance/cache/{3.1.2.previous → 3.1.5.previous}/universal/wholesale-feed-signals.yaml +0 -0
@@ -74,7 +74,7 @@ function closeA2AConnections() {
74
74
  pendingA2AClients.clear();
75
75
  }
76
76
  const CANCEL_TIMEOUT_MS = 5e3;
77
- async function cancelA2ATask(agent, taskId) {
77
+ async function cancelA2ATask(agent, taskId, fetchFn) {
78
78
  if (agent.protocol !== "a2a") {
79
79
  return;
80
80
  }
@@ -101,7 +101,7 @@ async function cancelA2ATask(agent, taskId) {
101
101
  signal: AbortSignal.timeout(CANCEL_TIMEOUT_MS)
102
102
  };
103
103
  if (agent.request_signing) {
104
- const upstream = (input, ini) => fetch(input, ini);
104
+ const upstream = (input, ini) => fetchFn ? fetchFn(input, ini) : fetch(input, ini);
105
105
  if (isInlineSigningConfig(agent.request_signing)) {
106
106
  const signed = createSigningFetch(upstream, toSignerKey(agent.request_signing));
107
107
  await signed(agentUrl, init);
@@ -113,12 +113,13 @@ async function cancelA2ATask(agent, taskId) {
113
113
  return;
114
114
  }
115
115
  }
116
- await fetch(agentUrl, init);
116
+ await (fetchFn ?? fetch)(agentUrl, init);
117
117
  }
118
118
  async function getOrCreateA2AClient(agentUrl, authToken, customHeaders, bypassCache = false) {
119
119
  const signingContext = signingContextStorage.getStore();
120
+ const fetchFn = callContextStorage.getStore()?.fetchFn;
120
121
  const cacheKey = a2aCacheKey(agentUrl, authToken, signingContext?.cacheKey, customHeaders);
121
- if (bypassCache) {
122
+ if (bypassCache || fetchFn) {
122
123
  return createA2AClient(agentUrl, authToken);
123
124
  }
124
125
  const cached = a2aClientCache.get(cacheKey);
@@ -160,7 +161,10 @@ async function createA2AClient(agentUrl, authToken) {
160
161
  function buildFetchImpl(authToken) {
161
162
  const signingContext = signingContextStorage.getStore();
162
163
  const networkFetch = wrapFetchWithTransportDiagnostics(
163
- wrapFetchWithSizeLimit((input, init) => fetch(input, init))
164
+ wrapFetchWithSizeLimit((input, init) => {
165
+ const scopedFetch = callContextStorage.getStore()?.fetchFn;
166
+ return scopedFetch ? scopedFetch(input, init) : fetch(input, init);
167
+ })
164
168
  );
165
169
  const baseFetch = async (url, options) => {
166
170
  const context = callContextStorage.getStore();
@@ -227,7 +231,7 @@ function hasTerminalTaskWithDataArtifact(response) {
227
231
  if (typeof status?.state !== "string" || !TERMINAL_A2A_STATES.has(status.state)) return false;
228
232
  return getLatestA2ADataPartFromResponse(response) !== void 0;
229
233
  }
230
- async function callA2ATool(agentUrl, toolName, parameters, authToken, debugLogs = [], pushNotificationConfig, customHeaders, signingContext, session, signal, requestTimeoutMs) {
234
+ async function callA2ATool(agentUrl, toolName, parameters, authToken, debugLogs = [], pushNotificationConfig, customHeaders, signingContext, session, signal, requestTimeoutMs, fetchFn) {
231
235
  return withSpan(
232
236
  "adcp.a2a.call_tool",
233
237
  {
@@ -240,7 +244,8 @@ async function callA2ATool(agentUrl, toolName, parameters, authToken, debugLogs
240
244
  debugLogs,
241
245
  got401Ref: { value: false },
242
246
  signal,
243
- requestTimeoutMs
247
+ requestTimeoutMs,
248
+ fetchFn
244
249
  };
245
250
  return signingContextStorage.run(
246
251
  signingContext,
@@ -353,8 +358,8 @@ async function callA2AToolImpl(agentUrl, toolName, parameters, authToken, debugL
353
358
  message: `A2A: Authentication required for ${agentUrl}`,
354
359
  timestamp: (/* @__PURE__ */ new Date()).toISOString()
355
360
  });
356
- const challenge = await probeAuthChallenge(agentUrl);
357
- const oauthMetadata = await discoverOAuthMetadata(agentUrl);
361
+ const challenge = await probeAuthChallenge(agentUrl, { fetchFn: context.fetchFn });
362
+ const oauthMetadata = await discoverOAuthMetadata(agentUrl, { fetch: context.fetchFn });
358
363
  throw new AuthenticationRequiredError(agentUrl, oauthMetadata || void 0, void 0, challenge ?? void 0);
359
364
  }
360
365
  throw error;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/lib/protocols/a2a.ts"],"sourcesContent":["import { fileURLToPath as __adcpFileURLToPath } from 'node:url';\nimport { dirname as __adcpDirname } from 'node:path';\nimport { createRequire as __adcpCreateRequire } from 'node:module';\nconst __dirname = __adcpDirname(__adcpFileURLToPath(import.meta.url));\nconst require = __adcpCreateRequire(import.meta.url);\n// Official A2A client implementation - NO FALLBACKS\nimport { A2AClient as A2AClientImpl } from '@a2a-js/sdk/client';\nimport { AsyncLocalStorage } from 'node:async_hooks';\nimport { createHmac, randomUUID } from 'node:crypto';\nimport type { PushNotificationConfig } from '../types/tools.generated';\nimport type { DebugLogEntry } from '../types/adcp';\nimport { AuthenticationRequiredError, is401Error } from '../errors';\nimport { discoverOAuthMetadata } from '../auth/oauth/discovery';\nimport { probeAuthChallenge } from '../auth/oauth/authorization-required';\nimport { withSpan, injectTraceHeaders } from '../observability/tracing';\nimport { isAgentCardPath, buildCardUrls } from '../utils/a2a-discovery';\nimport { buildAgentSigningFetch, signingContextStorage, type AgentSigningContext } from '../signing/client';\nimport { toSignerKey, isInlineSigningConfig, isProviderSigningConfig } from '../signing/agent-fetch';\nimport { createSigningFetch, type FetchLike } from '../signing/fetch';\nimport { createSigningFetchAsync } from '../signing/fetch-async';\nimport type { AgentConfig } from '../types/adcp';\nimport { redactIdempotencyKeyInArgs } from '../utils/idempotency';\nimport { wrapFetchWithCapture } from './rawResponseCapture';\nimport { wrapFetchWithSizeLimit } from './responseSizeLimit';\nimport { wrapFetchWithTransportDiagnostics } from './transportDiagnostics';\nimport { DEFAULT_REQUEST_TIMEOUT_MS, resolveRequestTimeoutMs, withAbortSignal } from './abort';\nimport { getLatestA2ADataPartFromResponse } from '../utils/a2a-artifacts';\n\n// The A2A SDK client is used untyped: request/response shapes are validated at\n// runtime against the AdCP wire contract, not against the SDK's exported\n// types. Preserves the prior behaviour of the CommonJS `require` form.\nconst A2AClient: any = A2AClientImpl;\n\nif (!A2AClient) {\n throw new Error('A2A SDK client is required. Please install @a2a-js/sdk');\n}\n\n/**\n * Per-call state flowed through AsyncLocalStorage so concurrent callers\n * that share a cached A2AClient don't clobber each other's debugLogs,\n * customHeaders, or 401 flag.\n */\ninterface A2ACallContext {\n customHeaders?: Record<string, string>;\n debugLogs: DebugLogEntry[];\n got401Ref: { value: boolean };\n signal?: AbortSignal;\n requestTimeoutMs?: number;\n}\n\nconst callContextStorage = new AsyncLocalStorage<A2ACallContext>();\n\n/**\n * Cached A2AClient keyed by (agentUrl, authToken hash). Avoids re-fetching\n * /.well-known/agent.json on every tool call. The cached client's fetchImpl\n * reads per-call state from callContextStorage, so concurrent calls to the\n * same cache entry are safe.\n *\n * Process-global singleton — not suitable for multi-tenant servers that\n * want per-tenant isolation (use separate processes or explicit cache keys).\n */\nconst a2aClientCache = new Map<string, InstanceType<typeof A2AClient>>();\nconst pendingA2AClients = new Map<string, Promise<InstanceType<typeof A2AClient>>>();\n\n/**\n * Build the A2A connection-cache key. Mirrors the rationale in\n * `src/lib/protocols/mcp.ts:connectionCacheKey`: when the caller is using a\n * non-bearer scheme (RFC 7617 Basic from the CLI's `--auth-scheme basic`\n * shape, or any future caller-injected `Authorization` header), `authToken`\n * is undefined and the credential rides on the customHeaders bag. Hashing\n * only `authToken` would let two callers with different `user:pass`\n * credentials share a single cached A2AClient — single-CLI-process safe,\n * multi-tenant SDK consumer not safe.\n *\n * `customHeaders` also feed the key so tenant/routing headers cannot reuse\n * a card/client discovered for another caller.\n */\nfunction a2aCacheKey(\n agentUrl: string,\n authToken?: string,\n signingCacheKey?: string,\n customHeaders?: Record<string, string>\n): string {\n // 64-bit Map-key disambiguator — NOT a password hash. The cached client\n // closes over the full credential, so a hypothetical hash collision still\n // sends the original credential on the wire, just possibly cache-miss\n // and reconnect. Routed via `cacheDisambiguator` (HMAC-SHA256 with empty\n // key) instead of bare `createHash` so CodeQL's\n // `js/insufficient-password-hash` heuristic doesn't misclassify the\n // dataflow — see the helper docstring for the full rationale.\n const fingerprint = authToken ?? extractA2AAuthHeader(customHeaders);\n const tokenSuffix = fingerprint ? `::${cacheDisambiguator(fingerprint)}` : '';\n const headersKey = headersCacheDisambiguator(customHeaders);\n const headersSuffix = headersKey ? `::headers:${headersKey}` : '';\n const signingSuffix = signingCacheKey ? `::${signingCacheKey}` : '';\n return `${agentUrl}${tokenSuffix}${headersSuffix}${signingSuffix}`;\n}\n\n/**\n * Produce a stable 64-bit Map-key disambiguator from credential material.\n * Mirrors the helper in `src/lib/protocols/mcp.ts` — the two protocol\n * modules intentionally don't share runtime imports, so each carries its\n * own copy. See the MCP-side docstring for the full rationale.\n */\nfunction cacheDisambiguator(value: string): string {\n return createHmac('sha256', '').update(value).digest('hex').slice(0, 16);\n}\n\n/**\n * Case-insensitive lookup of `Authorization` on a header bag. Mirrors the\n * MCP-side helper; A2A keeps its own copy because the two protocol modules\n * intentionally don't share runtime imports.\n */\nfunction extractA2AAuthHeader(headers: Record<string, string> | undefined): string | undefined {\n if (!headers) return undefined;\n for (const [key, value] of Object.entries(headers)) {\n if (key.toLowerCase() === 'authorization' && value) return value;\n }\n return undefined;\n}\n\nfunction headersCacheDisambiguator(headers?: Record<string, string>): string | undefined {\n const entries = Object.entries(headers ?? {})\n .filter(([key]) => {\n const lower = key.toLowerCase();\n return lower !== 'traceparent' && lower !== 'tracestate' && lower !== 'baggage';\n })\n .map(([key, value]) => [key.toLowerCase(), value] as const)\n .sort(([a], [b]) => a.localeCompare(b));\n return entries.length > 0 ? cacheDisambiguator(JSON.stringify(entries)) : undefined;\n}\n\nfunction redactHeadersForDebug(headers: Record<string, string>): Record<string, string> {\n return Object.fromEntries(Object.keys(headers).map(key => [key, '***']));\n}\n\nfunction redactPushNotificationConfigForDebug(\n config: PushNotificationConfig | undefined\n): PushNotificationConfig | undefined {\n if (!config) return undefined;\n return {\n ...config,\n ...(config.token && { token: '***' }),\n ...(config.authentication && {\n authentication: {\n ...config.authentication,\n ...(config.authentication.credentials && { credentials: '***' }),\n },\n }),\n };\n}\n\n/**\n * Clear all cached A2A clients. Called by closeConnections('a2a').\n * A2A clients hold no persistent network resources (unlike MCP), so this\n * is just cache eviction.\n */\nexport function closeA2AConnections(): void {\n a2aClientCache.clear();\n pendingA2AClients.clear();\n}\n\n/**\n * Wall-clock cap on a fire-and-forget cancel. A2A sellers that accept the\n * TCP connect but never respond would otherwise pin the event loop past the\n * buyer's abort, which defeats the whole point of fire-and-forget.\n */\nconst CANCEL_TIMEOUT_MS = 5000;\n\n/**\n * Fire-and-forget A2A tasks/cancel for an in-flight task (A2A 0.3.0 §7.4).\n *\n * Sends a raw JSON-RPC 2.0 POST directly to the agent endpoint with the same\n * auth header shape as `callA2AToolImpl` (Bearer + x-adcp-auth). Does NOT\n * enter `callContextStorage` — debug-log capture and 401-cache-eviction are\n * intentionally skipped for best-effort cancellation.\n *\n * **Auth-code OAuth gap:** `authToken` is resolved by `getAuthToken(agent)`,\n * which returns `undefined` for authorization-code-flow sellers (those tokens\n * are managed by the OAuth provider path in `ProtocolClient.callTool`, not\n * accessible here). Cancel calls to those sellers go out unauthenticated and\n * will likely 401 non-fatally.\n *\n * **Phase 2 (adcp-client#1617 follow-up):** when `agent.request_signing` is\n * configured, the cancel POST is signed with the agent's signer key. The\n * `signingContextStorage` ALS scope around `callA2AToolImpl` does NOT extend\n * into `pollTaskCompletion` (sibling promise trees), so we can't replay the\n * captured ALS context — instead we rebuild a one-shot signer fetch from\n * `agent.request_signing` directly and use it for this single POST. Inline\n * keys go through `createSigningFetch` (sync); provider-backed configs use\n * `createSigningFetchAsync`. A `signed-requests` seller that requires\n * signing on `tasks/cancel` (or applies a uniform \"all mutating POSTs must\n * be signed\" policy) now accepts the cancel; one without signing config on\n * the agent gets the Phase 1 unsigned path.\n *\n * The caller is responsible for swallowing errors: cancel failure\n * (TaskNotCancelable, network error, auth rejection, network timeout) is\n * non-fatal because the buyer is already abandoning the task.\n *\n * @param agent The agent config (used for URL, auth token, signing).\n * @param taskId The server-assigned A2A Task.id to cancel.\n */\nexport async function cancelA2ATask(agent: AgentConfig, taskId: string): Promise<void> {\n // Defense-in-depth (ad-tech-protocol-expert review of #1640): the cancel\n // POST is JSON-RPC at the bare A2A endpoint. Calling this on an MCP agent\n // would POST `tasks/cancel` JSON-RPC at an MCP endpoint and 404. The\n // single call site (`pollTaskCompletion`) already gates on\n // `agent.protocol === 'a2a'`; this assertion catches future call sites\n // that forget the gate.\n if (agent.protocol !== 'a2a') {\n return;\n }\n const agentUrl = agent.agent_uri;\n const authToken = agent.auth_token;\n\n const headers: Record<string, string> = {\n 'content-type': 'application/json',\n accept: 'application/json',\n };\n if (authToken) {\n headers['Authorization'] = `Bearer ${authToken}`;\n headers['x-adcp-auth'] = authToken;\n }\n // JSON-RPC 2.0 §4.1.3: `id: null` flags the request as a *notification*,\n // and the server MUST NOT respond. A2A 0.3.0 §7.4 defines `tasks/cancel`\n // as a request/response method (returns the canceled `Task` or\n // `TaskNotCancelableError`), so a strict A2A server can legitimately\n // reject `id: null` as a protocol violation. Use a real id and just drop\n // the response on the floor — fire-and-forget is the caller's discipline,\n // not a wire-protocol claim.\n const body = JSON.stringify({\n jsonrpc: '2.0',\n id: randomUUID(),\n method: 'tasks/cancel',\n params: { id: taskId },\n });\n // Bound the cancel: a hung fetch would orphan-pin the event loop past the\n // buyer's abort, defeating fire-and-forget. AbortSignal.timeout() is the\n // standard primitive; the caller's `.catch()` swallows the AbortError.\n const init: RequestInit = {\n method: 'POST',\n headers,\n body,\n signal: AbortSignal.timeout(CANCEL_TIMEOUT_MS),\n };\n\n // adcp-client#1617 Phase 2: sign the cancel POST when the agent has a\n // signer configured. We bypass the `buildAgentSigningFetch` capability-\n // gate path because `tasks/cancel` is an A2A protocol method, not an\n // AdCP tool — the seller's `request_signing.supported_for` typically\n // lists AdCP tool names, not protocol-level methods. The right model\n // here: if the agent claims signing AT ALL, sign every mutating POST\n // we send to it on the cancel path. Sellers with uniform \"must be\n // signed\" policies accept this; sellers that only check signing on\n // specific AdCP tools simply ignore the extra signature.\n //\n // TODO(adcp#4318, adcp-client#1617): when the AdCP spec adds explicit\n // verifier coverage for A2A protocol methods (likely in 3.1 as a new\n // `protocol_methods_supported_for` / `protocol_methods_required_for`\n // field on `request_signing`), narrow this default by reading the\n // seller's advertised coverage from `getCapability()` and gating on\n // the `tasks/cancel` membership. The over-sign default stays as the\n // fallback for spec-silent sellers (3.0.x and earlier).\n if (agent.request_signing) {\n const upstream: FetchLike = (input, ini) => fetch(input as RequestInfo, ini);\n if (isInlineSigningConfig(agent.request_signing)) {\n const signed = createSigningFetch(upstream, toSignerKey(agent.request_signing));\n await signed(agentUrl, init);\n return;\n }\n if (isProviderSigningConfig(agent.request_signing)) {\n const signed = createSigningFetchAsync(upstream, agent.request_signing.provider);\n await signed(agentUrl, init);\n return;\n }\n }\n\n await fetch(agentUrl, init);\n}\n\nasync function getOrCreateA2AClient(\n agentUrl: string,\n authToken: string | undefined,\n customHeaders?: Record<string, string>,\n bypassCache = false\n): Promise<InstanceType<typeof A2AClient>> {\n const signingContext = signingContextStorage.getStore();\n const cacheKey = a2aCacheKey(agentUrl, authToken, signingContext?.cacheKey, customHeaders);\n if (bypassCache) {\n return createA2AClient(agentUrl, authToken);\n }\n const cached = a2aClientCache.get(cacheKey);\n if (cached) return cached;\n\n const pending = pendingA2AClients.get(cacheKey);\n if (pending) return pending;\n\n const promise = createA2AClient(agentUrl, authToken)\n .then(client => {\n a2aClientCache.set(cacheKey, client);\n return client;\n })\n .finally(() => {\n pendingA2AClients.delete(cacheKey);\n });\n\n pendingA2AClients.set(cacheKey, promise);\n return promise;\n}\n\nasync function createA2AClient(\n agentUrl: string,\n authToken: string | undefined\n): Promise<InstanceType<typeof A2AClient>> {\n const fetchImpl = buildFetchImpl(authToken);\n const cardUrls = buildCardUrls(agentUrl);\n\n const context = callContextStorage.getStore();\n context?.debugLogs.push({\n type: 'info',\n message: `A2A: Discovering agent card at ${cardUrls.join(', ')}`,\n timestamp: new Date().toISOString(),\n });\n\n let client: InstanceType<typeof A2AClient> | undefined;\n let lastError: Error = new Error(`A2A agent card not found at ${cardUrls.join(', ')}`);\n for (const cardUrl of cardUrls) {\n try {\n client = await A2AClient.fromCardUrl(cardUrl, { fetchImpl });\n break;\n } catch (err: unknown) {\n lastError = err as Error;\n if (context?.got401Ref.value) break;\n }\n }\n if (!client) throw lastError;\n\n return client;\n}\n\nfunction buildFetchImpl(authToken: string | undefined) {\n // The A2A client is cached per (url, authToken, signingCacheKey). We capture\n // the signing context at client-creation time so all subsequent calls that\n // share this cached client use the same signing identity — changing identity\n // requires a different cache entry, built on a separate call that enters ALS\n // with a different context.\n const signingContext = signingContextStorage.getStore();\n\n // Innermost wrapper: enforce response body size cap from the active\n // `responseSizeLimitStorage` slot. Pass-through when no slot is set.\n const networkFetch = wrapFetchWithTransportDiagnostics(\n wrapFetchWithSizeLimit((input, init) => fetch(input as any, init))\n );\n\n // Inner fetch handles auth/header injection and 401 detection. If the\n // agent has request-signing configured, we wrap it with the AdCP signing\n // fetch so the signature covers the exact bytes we're about to send (auth\n // headers included, since the signer re-reads the final header record).\n const baseFetch = async (url: string | URL | Request, options?: RequestInit): Promise<Response> => {\n const context = callContextStorage.getStore();\n\n const existingHeaders: Record<string, string> = {};\n if (options?.headers) {\n if (options.headers instanceof Headers) {\n options.headers.forEach((value, key) => {\n existingHeaders[key] = value;\n });\n } else if (Array.isArray(options.headers)) {\n for (const [key, value] of options.headers) {\n existingHeaders[key] = value;\n }\n } else {\n Object.assign(existingHeaders, options.headers);\n }\n }\n\n // Only inject trace context headers for actual tool requests, not discovery.\n // The agent card endpoint is external/untrusted — don't leak trace IDs to it.\n const urlString = typeof url === 'string' ? url : url.toString();\n const isDiscoveryRequest = isAgentCardPath(urlString);\n const traceHeaders = isDiscoveryRequest ? {} : injectTraceHeaders();\n const requestTimeoutMs = isDiscoveryRequest\n ? resolveRequestTimeoutMs(context?.requestTimeoutMs, DEFAULT_REQUEST_TIMEOUT_MS)\n : resolveRequestTimeoutMs(context?.requestTimeoutMs);\n\n // Merge: existing < trace < custom < auth (auth always wins)\n const headers: Record<string, string> = {\n ...existingHeaders,\n ...traceHeaders,\n ...context?.customHeaders,\n ...(authToken && {\n Authorization: `Bearer ${authToken}`,\n 'x-adcp-auth': authToken,\n }),\n };\n\n context?.debugLogs.push({\n type: 'info',\n message: `A2A: Fetch to ${urlString}`,\n timestamp: new Date().toISOString(),\n hasAuth: !!authToken,\n headers: redactHeadersForDebug(headers),\n });\n\n const response = await withAbortSignal<Response>([context?.signal, options?.signal], requestTimeoutMs, signal =>\n networkFetch(url as any, { ...options, headers, signal })\n );\n\n if (response.status === 401 && context) {\n context.got401Ref.value = true;\n }\n\n return response;\n };\n\n if (!signingContext) return wrapFetchWithCapture(baseFetch);\n\n // The signing wrapper assembles headers into the signature base. We invoke\n // it first so the signer sees the caller-supplied headers; baseFetch then\n // overlays auth/trace headers afterwards — A2A's auth scheme (bearer) is\n // not among the MANDATORY_COMPONENTS and is injected by the counterparty's\n // transport layer, not signed.\n const signingFetch = buildAgentSigningFetch({\n upstream: (input, init) => baseFetch(input as any, init),\n signing: signingContext.signing,\n getCapability: signingContext.getCapability,\n });\n return wrapFetchWithCapture(signingFetch as typeof fetch);\n}\n\n/**\n * Terminal A2A task states per A2A 0.3.0 §3.4. Only these can carry the\n * AdCP-mandated artifact + DataPart envelope (per transport-errors §A2A\n * Binding); intermediate states (`working`, `submitted`, `input-required`,\n * `auth-required`) carry no completion artifact.\n */\nconst TERMINAL_A2A_STATES = new Set(['completed', 'failed', 'rejected', 'canceled']);\n\n/**\n * Detect whether a JSON-RPC response carries a spec-compliant terminal-state\n * Task with at least one artifact containing a structured DataPart payload.\n * Per AdCP transport-errors §A2A Binding, the artifact's DataPart is the\n * canonical envelope for both the success arm (`completed`) and the error\n * arms (`failed` / `rejected` / `canceled`). The criterion intentionally\n * matches the unwrapper's terminal-state extraction in\n * `unwrapA2AResponse` — keeping protocol layer and unwrapper in lockstep\n * across all terminal states, not just the error arms.\n *\n * Used to short-circuit the generic \"A2A agent returned error\" throw when\n * a non-conformant seller surfaces both a transport-level `result.error`\n * hint and the canonical artifact envelope side-by-side. The DataPart is\n * authoritative; the throw would otherwise swallow it.\n */\nfunction hasTerminalTaskWithDataArtifact(response: unknown): boolean {\n if (!response || typeof response !== 'object') return false;\n const result = (response as { result?: unknown }).result;\n if (!result || typeof result !== 'object') return false;\n const r = result as { kind?: unknown; status?: unknown; artifacts?: unknown };\n if (r.kind !== 'task') return false;\n const status = r.status as { state?: unknown } | undefined;\n if (typeof status?.state !== 'string' || !TERMINAL_A2A_STATES.has(status.state)) return false;\n return getLatestA2ADataPartFromResponse(response) !== undefined;\n}\n\n/**\n * Protocol-level session identifiers that ride on the A2A Message envelope\n * (not in the skill parameters). `contextId` binds sends to a server-side\n * conversation; `taskId` resumes an existing non-terminal task.\n *\n * Callers (buyers) typically retain these across calls on a per-conversation\n * AgentClient; see AgentClient.getContextId() / getPendingTaskId().\n */\nexport interface A2ASessionIds {\n contextId?: string;\n taskId?: string;\n}\n\nexport async function callA2ATool(\n agentUrl: string,\n toolName: string,\n parameters: Record<string, unknown>,\n authToken?: string,\n debugLogs: DebugLogEntry[] = [],\n pushNotificationConfig?: PushNotificationConfig,\n customHeaders?: Record<string, string>,\n signingContext?: AgentSigningContext,\n session?: A2ASessionIds,\n signal?: AbortSignal,\n requestTimeoutMs?: number\n): Promise<unknown> {\n return withSpan(\n 'adcp.a2a.call_tool',\n {\n 'adcp.tool': toolName,\n 'http.url': agentUrl,\n },\n async () => {\n const context: A2ACallContext = {\n customHeaders,\n debugLogs,\n got401Ref: { value: false },\n signal,\n requestTimeoutMs,\n };\n return signingContextStorage.run(signingContext, () =>\n callContextStorage.run(context, () =>\n callA2AToolImpl(\n agentUrl,\n toolName,\n parameters,\n authToken,\n debugLogs,\n pushNotificationConfig,\n context,\n session\n )\n )\n );\n }\n );\n}\n\nasync function callA2AToolImpl(\n agentUrl: string,\n toolName: string,\n parameters: Record<string, unknown>,\n authToken: string | undefined,\n debugLogs: DebugLogEntry[],\n pushNotificationConfig: PushNotificationConfig | undefined,\n context: A2ACallContext,\n session: A2ASessionIds | undefined\n): Promise<unknown> {\n try {\n const client = await getOrCreateA2AClient(\n agentUrl,\n authToken,\n context.customHeaders,\n !!context.signal || context.requestTimeoutMs !== undefined\n );\n\n const requestPayload: {\n message: {\n messageId: string;\n role: string;\n kind: string;\n parts: Array<{ kind: string; data: { skill: string; parameters: Record<string, unknown> } }>;\n contextId?: string;\n taskId?: string;\n };\n configuration?: { pushNotificationConfig: PushNotificationConfig };\n } = {\n message: {\n messageId: `msg_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`,\n role: 'user',\n kind: 'message',\n parts: [\n {\n kind: 'data',\n data: {\n skill: toolName,\n parameters: parameters,\n },\n },\n ],\n ...(session?.contextId && { contextId: session.contextId }),\n ...(session?.taskId && { taskId: session.taskId }),\n },\n };\n\n if (pushNotificationConfig) {\n requestPayload.configuration = {\n pushNotificationConfig: pushNotificationConfig,\n };\n }\n\n const payloadSize = JSON.stringify(requestPayload).length;\n const redactedParameters = redactIdempotencyKeyInArgs(parameters);\n const redactedPayload = {\n ...requestPayload,\n message: {\n ...requestPayload.message,\n parts: [\n {\n kind: 'data',\n data: { skill: toolName, parameters: redactedParameters },\n },\n ],\n },\n ...(requestPayload.configuration && {\n configuration: {\n pushNotificationConfig: redactPushNotificationConfigForDebug(\n requestPayload.configuration.pushNotificationConfig\n )!,\n },\n }),\n };\n debugLogs.push({\n type: 'info',\n message: `A2A: Calling skill ${toolName} with parameters: ${JSON.stringify(\n redactedParameters\n )}. Payload size: ${payloadSize} bytes`,\n timestamp: new Date().toISOString(),\n payloadSize,\n actualPayload: redactedPayload,\n });\n\n debugLogs.push({\n type: 'info',\n message: `A2A: Sending message via sendMessage()`,\n timestamp: new Date().toISOString(),\n skill: toolName,\n });\n\n const messageResponse = await client.sendMessage(requestPayload);\n\n debugLogs.push({\n type: messageResponse?.error ? 'error' : 'success',\n message: `A2A: Response received (${messageResponse?.error ? 'error' : 'success'})`,\n timestamp: new Date().toISOString(),\n response: messageResponse,\n skill: toolName,\n });\n\n if (messageResponse?.error || messageResponse?.result?.error) {\n // adcp-client#1575: when the seller emits a spec-compliant terminal-state\n // Task carrying an `adcp_error` DataPart (per AdCP transport-errors §A2A\n // Binding), the structured artifact is canonical — even if the seller\n // also surfaced a transport-level error string. Pass the response\n // through so the upstream unwrapper extracts `adcp_error.code` instead\n // of throwing a generic message that loses the AdCP error envelope.\n if (!hasTerminalTaskWithDataArtifact(messageResponse)) {\n const errorObj = messageResponse.error || messageResponse.result?.error;\n const errorMessage = errorObj.message || JSON.stringify(errorObj);\n throw new Error(`A2A agent returned error: ${errorMessage}`);\n }\n }\n\n return messageResponse;\n } catch (error: unknown) {\n if (is401Error(error, context.got401Ref.value)) {\n // Evict this cache entry — credential may have expired or been\n // revoked. Same disambiguator as the original `getOrCreateA2AClient`\n // call: when the credential rode on customHeaders.Authorization (Basic\n // case) rather than authToken, the cache key must reflect that or we\n // evict the wrong entry.\n const signingContext = signingContextStorage.getStore();\n a2aClientCache.delete(a2aCacheKey(agentUrl, authToken, signingContext?.cacheKey, context.customHeaders));\n\n debugLogs.push({\n type: 'error',\n message: `A2A: Authentication required for ${agentUrl}`,\n timestamp: new Date().toISOString(),\n });\n\n // Re-probe to surface the WWW-Authenticate scheme on the error envelope.\n // Basic-fronted agents (Apigee/Kong/AWS API GW with a BasicAuthentication\n // policy) would otherwise leave consumers chasing OAuth metadata that\n // doesn't exist. Matches the MCP discovery throw site in\n // `SingleAgentClient.discoverMCPEndpoint`.\n const challenge = await probeAuthChallenge(agentUrl);\n const oauthMetadata = await discoverOAuthMetadata(agentUrl);\n throw new AuthenticationRequiredError(agentUrl, oauthMetadata || undefined, undefined, challenge ?? undefined);\n }\n\n throw error;\n }\n}\n"],"mappings":"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","names":["require"]}
1
+ {"version":3,"sources":["../../../src/lib/protocols/a2a.ts"],"sourcesContent":["import { fileURLToPath as __adcpFileURLToPath } from 'node:url';\nimport { dirname as __adcpDirname } from 'node:path';\nimport { createRequire as __adcpCreateRequire } from 'node:module';\nconst __dirname = __adcpDirname(__adcpFileURLToPath(import.meta.url));\nconst require = __adcpCreateRequire(import.meta.url);\n// Official A2A client implementation - NO FALLBACKS\nimport { A2AClient as A2AClientImpl } from '@a2a-js/sdk/client';\nimport { AsyncLocalStorage } from 'node:async_hooks';\nimport { createHmac, randomUUID } from 'node:crypto';\nimport type { PushNotificationConfig } from '../types/tools.generated';\nimport type { DebugLogEntry } from '../types/adcp';\nimport { AuthenticationRequiredError, is401Error } from '../errors';\nimport { discoverOAuthMetadata } from '../auth/oauth/discovery';\nimport { probeAuthChallenge } from '../auth/oauth/authorization-required';\nimport { withSpan, injectTraceHeaders } from '../observability/tracing';\nimport { isAgentCardPath, buildCardUrls } from '../utils/a2a-discovery';\nimport { buildAgentSigningFetch, signingContextStorage, type AgentSigningContext } from '../signing/client';\nimport { toSignerKey, isInlineSigningConfig, isProviderSigningConfig } from '../signing/agent-fetch';\nimport { createSigningFetch, type FetchLike } from '../signing/fetch';\nimport { createSigningFetchAsync } from '../signing/fetch-async';\nimport type { AgentConfig } from '../types/adcp';\nimport { redactIdempotencyKeyInArgs } from '../utils/idempotency';\nimport { wrapFetchWithCapture } from './rawResponseCapture';\nimport { wrapFetchWithSizeLimit } from './responseSizeLimit';\nimport { wrapFetchWithTransportDiagnostics } from './transportDiagnostics';\nimport { DEFAULT_REQUEST_TIMEOUT_MS, resolveRequestTimeoutMs, withAbortSignal } from './abort';\nimport { getLatestA2ADataPartFromResponse } from '../utils/a2a-artifacts';\n\n// The A2A SDK client is used untyped: request/response shapes are validated at\n// runtime against the AdCP wire contract, not against the SDK's exported\n// types. Preserves the prior behaviour of the CommonJS `require` form.\nconst A2AClient: any = A2AClientImpl;\n\nif (!A2AClient) {\n throw new Error('A2A SDK client is required. Please install @a2a-js/sdk');\n}\n\n/**\n * Per-call state flowed through AsyncLocalStorage so concurrent callers\n * that share a cached A2AClient don't clobber each other's debugLogs,\n * customHeaders, or 401 flag.\n */\ninterface A2ACallContext {\n customHeaders?: Record<string, string>;\n debugLogs: DebugLogEntry[];\n got401Ref: { value: boolean };\n signal?: AbortSignal;\n requestTimeoutMs?: number;\n fetchFn?: typeof fetch;\n}\n\nconst callContextStorage = new AsyncLocalStorage<A2ACallContext>();\n\n/**\n * Cached A2AClient keyed by (agentUrl, authToken hash). Avoids re-fetching\n * /.well-known/agent.json on every tool call. The cached client's fetchImpl\n * reads per-call state from callContextStorage, so concurrent calls to the\n * same cache entry are safe.\n *\n * Process-global singleton — not suitable for multi-tenant servers that\n * want per-tenant isolation (use separate processes or explicit cache keys).\n */\nconst a2aClientCache = new Map<string, InstanceType<typeof A2AClient>>();\nconst pendingA2AClients = new Map<string, Promise<InstanceType<typeof A2AClient>>>();\n\n/**\n * Build the A2A connection-cache key. Mirrors the rationale in\n * `src/lib/protocols/mcp.ts:connectionCacheKey`: when the caller is using a\n * non-bearer scheme (RFC 7617 Basic from the CLI's `--auth-scheme basic`\n * shape, or any future caller-injected `Authorization` header), `authToken`\n * is undefined and the credential rides on the customHeaders bag. Hashing\n * only `authToken` would let two callers with different `user:pass`\n * credentials share a single cached A2AClient — single-CLI-process safe,\n * multi-tenant SDK consumer not safe.\n *\n * `customHeaders` also feed the key so tenant/routing headers cannot reuse a\n * card/client discovered for another caller. Scoped fetch calls bypass this\n * cache entirely (see `getOrCreateA2AClient`).\n */\nfunction a2aCacheKey(\n agentUrl: string,\n authToken?: string,\n signingCacheKey?: string,\n customHeaders?: Record<string, string>\n): string {\n // 64-bit Map-key disambiguator — NOT a password hash. The cached client\n // closes over the full credential, so a hypothetical hash collision still\n // sends the original credential on the wire, just possibly cache-miss\n // and reconnect. Routed via `cacheDisambiguator` (HMAC-SHA256 with empty\n // key) instead of bare `createHash` so CodeQL's\n // `js/insufficient-password-hash` heuristic doesn't misclassify the\n // dataflow — see the helper docstring for the full rationale.\n const fingerprint = authToken ?? extractA2AAuthHeader(customHeaders);\n const tokenSuffix = fingerprint ? `::${cacheDisambiguator(fingerprint)}` : '';\n const headersKey = headersCacheDisambiguator(customHeaders);\n const headersSuffix = headersKey ? `::headers:${headersKey}` : '';\n const signingSuffix = signingCacheKey ? `::${signingCacheKey}` : '';\n return `${agentUrl}${tokenSuffix}${headersSuffix}${signingSuffix}`;\n}\n\n/**\n * Produce a stable 64-bit Map-key disambiguator from credential material.\n * Mirrors the helper in `src/lib/protocols/mcp.ts` — the two protocol\n * modules intentionally don't share runtime imports, so each carries its\n * own copy. See the MCP-side docstring for the full rationale.\n */\nfunction cacheDisambiguator(value: string): string {\n return createHmac('sha256', '').update(value).digest('hex').slice(0, 16);\n}\n\n/**\n * Case-insensitive lookup of `Authorization` on a header bag. Mirrors the\n * MCP-side helper; A2A keeps its own copy because the two protocol modules\n * intentionally don't share runtime imports.\n */\nfunction extractA2AAuthHeader(headers: Record<string, string> | undefined): string | undefined {\n if (!headers) return undefined;\n for (const [key, value] of Object.entries(headers)) {\n if (key.toLowerCase() === 'authorization' && value) return value;\n }\n return undefined;\n}\n\nfunction headersCacheDisambiguator(headers?: Record<string, string>): string | undefined {\n const entries = Object.entries(headers ?? {})\n .filter(([key]) => {\n const lower = key.toLowerCase();\n return lower !== 'traceparent' && lower !== 'tracestate' && lower !== 'baggage';\n })\n .map(([key, value]) => [key.toLowerCase(), value] as const)\n .sort(([a], [b]) => a.localeCompare(b));\n return entries.length > 0 ? cacheDisambiguator(JSON.stringify(entries)) : undefined;\n}\n\nfunction redactHeadersForDebug(headers: Record<string, string>): Record<string, string> {\n return Object.fromEntries(Object.keys(headers).map(key => [key, '***']));\n}\n\nfunction redactPushNotificationConfigForDebug(\n config: PushNotificationConfig | undefined\n): PushNotificationConfig | undefined {\n if (!config) return undefined;\n return {\n ...config,\n ...(config.token && { token: '***' }),\n ...(config.authentication && {\n authentication: {\n ...config.authentication,\n ...(config.authentication.credentials && { credentials: '***' }),\n },\n }),\n };\n}\n\n/**\n * Clear all cached A2A clients. Called by closeConnections('a2a').\n * A2A clients hold no persistent network resources (unlike MCP), so this\n * is just cache eviction.\n */\nexport function closeA2AConnections(): void {\n a2aClientCache.clear();\n pendingA2AClients.clear();\n}\n\n/**\n * Wall-clock cap on a fire-and-forget cancel. A2A sellers that accept the\n * TCP connect but never respond would otherwise pin the event loop past the\n * buyer's abort, which defeats the whole point of fire-and-forget.\n */\nconst CANCEL_TIMEOUT_MS = 5000;\n\n/**\n * Fire-and-forget A2A tasks/cancel for an in-flight task (A2A 0.3.0 §7.4).\n *\n * Sends a raw JSON-RPC 2.0 POST directly to the agent endpoint with the same\n * auth header shape as `callA2AToolImpl` (Bearer + x-adcp-auth). Does NOT\n * enter `callContextStorage` — debug-log capture and 401-cache-eviction are\n * intentionally skipped for best-effort cancellation.\n *\n * **Auth-code OAuth gap:** `authToken` is resolved by `getAuthToken(agent)`,\n * which returns `undefined` for authorization-code-flow sellers (those tokens\n * are managed by the OAuth provider path in `ProtocolClient.callTool`, not\n * accessible here). Cancel calls to those sellers go out unauthenticated and\n * will likely 401 non-fatally.\n *\n * **Phase 2 (adcp-client#1617 follow-up):** when `agent.request_signing` is\n * configured, the cancel POST is signed with the agent's signer key. The\n * `signingContextStorage` ALS scope around `callA2AToolImpl` does NOT extend\n * into `pollTaskCompletion` (sibling promise trees), so we can't replay the\n * captured ALS context — instead we rebuild a one-shot signer fetch from\n * `agent.request_signing` directly and use it for this single POST. Inline\n * keys go through `createSigningFetch` (sync); provider-backed configs use\n * `createSigningFetchAsync`. A `signed-requests` seller that requires\n * signing on `tasks/cancel` (or applies a uniform \"all mutating POSTs must\n * be signed\" policy) now accepts the cancel; one without signing config on\n * the agent gets the Phase 1 unsigned path.\n *\n * The caller is responsible for swallowing errors: cancel failure\n * (TaskNotCancelable, network error, auth rejection, network timeout) is\n * non-fatal because the buyer is already abandoning the task.\n *\n * @param agent The agent config (used for URL, auth token, signing).\n * @param taskId The server-assigned A2A Task.id to cancel.\n */\nexport async function cancelA2ATask(agent: AgentConfig, taskId: string, fetchFn?: typeof fetch): Promise<void> {\n // Defense-in-depth (ad-tech-protocol-expert review of #1640): the cancel\n // POST is JSON-RPC at the bare A2A endpoint. Calling this on an MCP agent\n // would POST `tasks/cancel` JSON-RPC at an MCP endpoint and 404. The\n // single call site (`pollTaskCompletion`) already gates on\n // `agent.protocol === 'a2a'`; this assertion catches future call sites\n // that forget the gate.\n if (agent.protocol !== 'a2a') {\n return;\n }\n const agentUrl = agent.agent_uri;\n const authToken = agent.auth_token;\n\n const headers: Record<string, string> = {\n 'content-type': 'application/json',\n accept: 'application/json',\n };\n if (authToken) {\n headers['Authorization'] = `Bearer ${authToken}`;\n headers['x-adcp-auth'] = authToken;\n }\n // JSON-RPC 2.0 §4.1.3: `id: null` flags the request as a *notification*,\n // and the server MUST NOT respond. A2A 0.3.0 §7.4 defines `tasks/cancel`\n // as a request/response method (returns the canceled `Task` or\n // `TaskNotCancelableError`), so a strict A2A server can legitimately\n // reject `id: null` as a protocol violation. Use a real id and just drop\n // the response on the floor — fire-and-forget is the caller's discipline,\n // not a wire-protocol claim.\n const body = JSON.stringify({\n jsonrpc: '2.0',\n id: randomUUID(),\n method: 'tasks/cancel',\n params: { id: taskId },\n });\n // Bound the cancel: a hung fetch would orphan-pin the event loop past the\n // buyer's abort, defeating fire-and-forget. AbortSignal.timeout() is the\n // standard primitive; the caller's `.catch()` swallows the AbortError.\n const init: RequestInit = {\n method: 'POST',\n headers,\n body,\n signal: AbortSignal.timeout(CANCEL_TIMEOUT_MS),\n };\n\n // adcp-client#1617 Phase 2: sign the cancel POST when the agent has a\n // signer configured. We bypass the `buildAgentSigningFetch` capability-\n // gate path because `tasks/cancel` is an A2A protocol method, not an\n // AdCP tool — the seller's `request_signing.supported_for` typically\n // lists AdCP tool names, not protocol-level methods. The right model\n // here: if the agent claims signing AT ALL, sign every mutating POST\n // we send to it on the cancel path. Sellers with uniform \"must be\n // signed\" policies accept this; sellers that only check signing on\n // specific AdCP tools simply ignore the extra signature.\n //\n // TODO(adcp#4318, adcp-client#1617): when the AdCP spec adds explicit\n // verifier coverage for A2A protocol methods (likely in 3.1 as a new\n // `protocol_methods_supported_for` / `protocol_methods_required_for`\n // field on `request_signing`), narrow this default by reading the\n // seller's advertised coverage from `getCapability()` and gating on\n // the `tasks/cancel` membership. The over-sign default stays as the\n // fallback for spec-silent sellers (3.0.x and earlier).\n if (agent.request_signing) {\n const upstream: FetchLike = (input, ini) =>\n fetchFn ? fetchFn(input as RequestInfo | URL, ini) : fetch(input as RequestInfo, ini);\n if (isInlineSigningConfig(agent.request_signing)) {\n const signed = createSigningFetch(upstream, toSignerKey(agent.request_signing));\n await signed(agentUrl, init);\n return;\n }\n if (isProviderSigningConfig(agent.request_signing)) {\n const signed = createSigningFetchAsync(upstream, agent.request_signing.provider);\n await signed(agentUrl, init);\n return;\n }\n }\n\n await (fetchFn ?? fetch)(agentUrl, init);\n}\n\nasync function getOrCreateA2AClient(\n agentUrl: string,\n authToken: string | undefined,\n customHeaders?: Record<string, string>,\n bypassCache = false\n): Promise<InstanceType<typeof A2AClient>> {\n const signingContext = signingContextStorage.getStore();\n const fetchFn = callContextStorage.getStore()?.fetchFn;\n const cacheKey = a2aCacheKey(agentUrl, authToken, signingContext?.cacheKey, customHeaders);\n // Scoped fetchers often carry request/tenant-specific egress policy. Keep\n // those calls one-shot so neither agent-card discovery nor a client created\n // under one policy can be reused by another caller, and so short-lived\n // closure identities do not grow the global cache without bound.\n if (bypassCache || fetchFn) {\n return createA2AClient(agentUrl, authToken);\n }\n const cached = a2aClientCache.get(cacheKey);\n if (cached) return cached;\n\n const pending = pendingA2AClients.get(cacheKey);\n if (pending) return pending;\n\n const promise = createA2AClient(agentUrl, authToken)\n .then(client => {\n a2aClientCache.set(cacheKey, client);\n return client;\n })\n .finally(() => {\n pendingA2AClients.delete(cacheKey);\n });\n\n pendingA2AClients.set(cacheKey, promise);\n return promise;\n}\n\nasync function createA2AClient(\n agentUrl: string,\n authToken: string | undefined\n): Promise<InstanceType<typeof A2AClient>> {\n const fetchImpl = buildFetchImpl(authToken);\n const cardUrls = buildCardUrls(agentUrl);\n\n const context = callContextStorage.getStore();\n context?.debugLogs.push({\n type: 'info',\n message: `A2A: Discovering agent card at ${cardUrls.join(', ')}`,\n timestamp: new Date().toISOString(),\n });\n\n let client: InstanceType<typeof A2AClient> | undefined;\n let lastError: Error = new Error(`A2A agent card not found at ${cardUrls.join(', ')}`);\n for (const cardUrl of cardUrls) {\n try {\n client = await A2AClient.fromCardUrl(cardUrl, { fetchImpl });\n break;\n } catch (err: unknown) {\n lastError = err as Error;\n if (context?.got401Ref.value) break;\n }\n }\n if (!client) throw lastError;\n\n return client;\n}\n\nfunction buildFetchImpl(authToken: string | undefined) {\n // The A2A client is cached per (url, authToken, signingCacheKey). We capture\n // the signing context at client-creation time so all subsequent calls that\n // share this cached client use the same signing identity — changing identity\n // requires a different cache entry, built on a separate call that enters ALS\n // with a different context.\n const signingContext = signingContextStorage.getStore();\n\n // Innermost wrapper: enforce response body size cap from the active\n // `responseSizeLimitStorage` slot. Pass-through when no slot is set.\n const networkFetch = wrapFetchWithTransportDiagnostics(\n wrapFetchWithSizeLimit((input, init) => {\n const scopedFetch = callContextStorage.getStore()?.fetchFn;\n return scopedFetch ? scopedFetch(input, init) : fetch(input as any, init);\n })\n );\n\n // Inner fetch handles auth/header injection and 401 detection. If the\n // agent has request-signing configured, we wrap it with the AdCP signing\n // fetch so the signature covers the exact bytes we're about to send (auth\n // headers included, since the signer re-reads the final header record).\n const baseFetch = async (url: string | URL | Request, options?: RequestInit): Promise<Response> => {\n const context = callContextStorage.getStore();\n\n const existingHeaders: Record<string, string> = {};\n if (options?.headers) {\n if (options.headers instanceof Headers) {\n options.headers.forEach((value, key) => {\n existingHeaders[key] = value;\n });\n } else if (Array.isArray(options.headers)) {\n for (const [key, value] of options.headers) {\n existingHeaders[key] = value;\n }\n } else {\n Object.assign(existingHeaders, options.headers);\n }\n }\n\n // Only inject trace context headers for actual tool requests, not discovery.\n // The agent card endpoint is external/untrusted — don't leak trace IDs to it.\n const urlString = typeof url === 'string' ? url : url.toString();\n const isDiscoveryRequest = isAgentCardPath(urlString);\n const traceHeaders = isDiscoveryRequest ? {} : injectTraceHeaders();\n const requestTimeoutMs = isDiscoveryRequest\n ? resolveRequestTimeoutMs(context?.requestTimeoutMs, DEFAULT_REQUEST_TIMEOUT_MS)\n : resolveRequestTimeoutMs(context?.requestTimeoutMs);\n\n // Merge: existing < trace < custom < auth (auth always wins)\n const headers: Record<string, string> = {\n ...existingHeaders,\n ...traceHeaders,\n ...context?.customHeaders,\n ...(authToken && {\n Authorization: `Bearer ${authToken}`,\n 'x-adcp-auth': authToken,\n }),\n };\n\n context?.debugLogs.push({\n type: 'info',\n message: `A2A: Fetch to ${urlString}`,\n timestamp: new Date().toISOString(),\n hasAuth: !!authToken,\n headers: redactHeadersForDebug(headers),\n });\n\n const response = await withAbortSignal<Response>([context?.signal, options?.signal], requestTimeoutMs, signal =>\n networkFetch(url as any, { ...options, headers, signal })\n );\n\n if (response.status === 401 && context) {\n context.got401Ref.value = true;\n }\n\n return response;\n };\n\n if (!signingContext) return wrapFetchWithCapture(baseFetch);\n\n // The signing wrapper assembles headers into the signature base. We invoke\n // it first so the signer sees the caller-supplied headers; baseFetch then\n // overlays auth/trace headers afterwards — A2A's auth scheme (bearer) is\n // not among the MANDATORY_COMPONENTS and is injected by the counterparty's\n // transport layer, not signed.\n const signingFetch = buildAgentSigningFetch({\n upstream: (input, init) => baseFetch(input as any, init),\n signing: signingContext.signing,\n getCapability: signingContext.getCapability,\n });\n return wrapFetchWithCapture(signingFetch as typeof fetch);\n}\n\n/**\n * Terminal A2A task states per A2A 0.3.0 §3.4. Only these can carry the\n * AdCP-mandated artifact + DataPart envelope (per transport-errors §A2A\n * Binding); intermediate states (`working`, `submitted`, `input-required`,\n * `auth-required`) carry no completion artifact.\n */\nconst TERMINAL_A2A_STATES = new Set(['completed', 'failed', 'rejected', 'canceled']);\n\n/**\n * Detect whether a JSON-RPC response carries a spec-compliant terminal-state\n * Task with at least one artifact containing a structured DataPart payload.\n * Per AdCP transport-errors §A2A Binding, the artifact's DataPart is the\n * canonical envelope for both the success arm (`completed`) and the error\n * arms (`failed` / `rejected` / `canceled`). The criterion intentionally\n * matches the unwrapper's terminal-state extraction in\n * `unwrapA2AResponse` — keeping protocol layer and unwrapper in lockstep\n * across all terminal states, not just the error arms.\n *\n * Used to short-circuit the generic \"A2A agent returned error\" throw when\n * a non-conformant seller surfaces both a transport-level `result.error`\n * hint and the canonical artifact envelope side-by-side. The DataPart is\n * authoritative; the throw would otherwise swallow it.\n */\nfunction hasTerminalTaskWithDataArtifact(response: unknown): boolean {\n if (!response || typeof response !== 'object') return false;\n const result = (response as { result?: unknown }).result;\n if (!result || typeof result !== 'object') return false;\n const r = result as { kind?: unknown; status?: unknown; artifacts?: unknown };\n if (r.kind !== 'task') return false;\n const status = r.status as { state?: unknown } | undefined;\n if (typeof status?.state !== 'string' || !TERMINAL_A2A_STATES.has(status.state)) return false;\n return getLatestA2ADataPartFromResponse(response) !== undefined;\n}\n\n/**\n * Protocol-level session identifiers that ride on the A2A Message envelope\n * (not in the skill parameters). `contextId` binds sends to a server-side\n * conversation; `taskId` resumes an existing non-terminal task.\n *\n * Callers (buyers) typically retain these across calls on a per-conversation\n * AgentClient; see AgentClient.getContextId() / getPendingTaskId().\n */\nexport interface A2ASessionIds {\n contextId?: string;\n taskId?: string;\n}\n\nexport async function callA2ATool(\n agentUrl: string,\n toolName: string,\n parameters: Record<string, unknown>,\n authToken?: string,\n debugLogs: DebugLogEntry[] = [],\n pushNotificationConfig?: PushNotificationConfig,\n customHeaders?: Record<string, string>,\n signingContext?: AgentSigningContext,\n session?: A2ASessionIds,\n signal?: AbortSignal,\n requestTimeoutMs?: number,\n fetchFn?: typeof fetch\n): Promise<unknown> {\n return withSpan(\n 'adcp.a2a.call_tool',\n {\n 'adcp.tool': toolName,\n 'http.url': agentUrl,\n },\n async () => {\n const context: A2ACallContext = {\n customHeaders,\n debugLogs,\n got401Ref: { value: false },\n signal,\n requestTimeoutMs,\n fetchFn,\n };\n return signingContextStorage.run(signingContext, () =>\n callContextStorage.run(context, () =>\n callA2AToolImpl(\n agentUrl,\n toolName,\n parameters,\n authToken,\n debugLogs,\n pushNotificationConfig,\n context,\n session\n )\n )\n );\n }\n );\n}\n\nasync function callA2AToolImpl(\n agentUrl: string,\n toolName: string,\n parameters: Record<string, unknown>,\n authToken: string | undefined,\n debugLogs: DebugLogEntry[],\n pushNotificationConfig: PushNotificationConfig | undefined,\n context: A2ACallContext,\n session: A2ASessionIds | undefined\n): Promise<unknown> {\n try {\n const client = await getOrCreateA2AClient(\n agentUrl,\n authToken,\n context.customHeaders,\n !!context.signal || context.requestTimeoutMs !== undefined\n );\n\n const requestPayload: {\n message: {\n messageId: string;\n role: string;\n kind: string;\n parts: Array<{ kind: string; data: { skill: string; parameters: Record<string, unknown> } }>;\n contextId?: string;\n taskId?: string;\n };\n configuration?: { pushNotificationConfig: PushNotificationConfig };\n } = {\n message: {\n messageId: `msg_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`,\n role: 'user',\n kind: 'message',\n parts: [\n {\n kind: 'data',\n data: {\n skill: toolName,\n parameters: parameters,\n },\n },\n ],\n ...(session?.contextId && { contextId: session.contextId }),\n ...(session?.taskId && { taskId: session.taskId }),\n },\n };\n\n if (pushNotificationConfig) {\n requestPayload.configuration = {\n pushNotificationConfig: pushNotificationConfig,\n };\n }\n\n const payloadSize = JSON.stringify(requestPayload).length;\n const redactedParameters = redactIdempotencyKeyInArgs(parameters);\n const redactedPayload = {\n ...requestPayload,\n message: {\n ...requestPayload.message,\n parts: [\n {\n kind: 'data',\n data: { skill: toolName, parameters: redactedParameters },\n },\n ],\n },\n ...(requestPayload.configuration && {\n configuration: {\n pushNotificationConfig: redactPushNotificationConfigForDebug(\n requestPayload.configuration.pushNotificationConfig\n )!,\n },\n }),\n };\n debugLogs.push({\n type: 'info',\n message: `A2A: Calling skill ${toolName} with parameters: ${JSON.stringify(\n redactedParameters\n )}. Payload size: ${payloadSize} bytes`,\n timestamp: new Date().toISOString(),\n payloadSize,\n actualPayload: redactedPayload,\n });\n\n debugLogs.push({\n type: 'info',\n message: `A2A: Sending message via sendMessage()`,\n timestamp: new Date().toISOString(),\n skill: toolName,\n });\n\n const messageResponse = await client.sendMessage(requestPayload);\n\n debugLogs.push({\n type: messageResponse?.error ? 'error' : 'success',\n message: `A2A: Response received (${messageResponse?.error ? 'error' : 'success'})`,\n timestamp: new Date().toISOString(),\n response: messageResponse,\n skill: toolName,\n });\n\n if (messageResponse?.error || messageResponse?.result?.error) {\n // adcp-client#1575: when the seller emits a spec-compliant terminal-state\n // Task carrying an `adcp_error` DataPart (per AdCP transport-errors §A2A\n // Binding), the structured artifact is canonical — even if the seller\n // also surfaced a transport-level error string. Pass the response\n // through so the upstream unwrapper extracts `adcp_error.code` instead\n // of throwing a generic message that loses the AdCP error envelope.\n if (!hasTerminalTaskWithDataArtifact(messageResponse)) {\n const errorObj = messageResponse.error || messageResponse.result?.error;\n const errorMessage = errorObj.message || JSON.stringify(errorObj);\n throw new Error(`A2A agent returned error: ${errorMessage}`);\n }\n }\n\n return messageResponse;\n } catch (error: unknown) {\n if (is401Error(error, context.got401Ref.value)) {\n // Evict this cache entry — credential may have expired or been\n // revoked. Same disambiguator as the original `getOrCreateA2AClient`\n // call: when the credential rode on customHeaders.Authorization (Basic\n // case) rather than authToken, the cache key must reflect that or we\n // evict the wrong entry.\n const signingContext = signingContextStorage.getStore();\n a2aClientCache.delete(a2aCacheKey(agentUrl, authToken, signingContext?.cacheKey, context.customHeaders));\n\n debugLogs.push({\n type: 'error',\n message: `A2A: Authentication required for ${agentUrl}`,\n timestamp: new Date().toISOString(),\n });\n\n // Re-probe to surface the WWW-Authenticate scheme on the error envelope.\n // Basic-fronted agents (Apigee/Kong/AWS API GW with a BasicAuthentication\n // policy) would otherwise leave consumers chasing OAuth metadata that\n // doesn't exist. Matches the MCP discovery throw site in\n // `SingleAgentClient.discoverMCPEndpoint`.\n const challenge = await probeAuthChallenge(agentUrl, { fetchFn: context.fetchFn });\n const oauthMetadata = await discoverOAuthMetadata(agentUrl, { fetch: context.fetchFn });\n throw new AuthenticationRequiredError(agentUrl, oauthMetadata || undefined, undefined, challenge ?? undefined);\n }\n\n throw error;\n }\n}\n"],"mappings":"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","names":["require"]}
@@ -64,11 +64,28 @@ export interface TransportOptions {
64
64
  *
65
65
  * @remarks
66
66
  * Future hardening knobs (DNS-rebind defense, scheme allow-list, request
67
- * timeout overrides) will land here as additional fields rather than
68
- * forcing callers to compose their own `fetch` wrap order with the SDK's
69
- * existing signing / capture wrappers is non-obvious and a footgun.
67
+ * timeout overrides) will land here as additional fields. When `fetchFn`
68
+ * is supplied, the SDK composes it inside its signing, capture, size-limit,
69
+ * timeout, and diagnostics wrappers so callers do not have to reproduce
70
+ * that non-obvious ordering themselves.
70
71
  */
71
72
  maxResponseBytes?: number;
73
+ /**
74
+ * Scoped fetch implementation for all outbound HTTP performed on behalf of
75
+ * this client or call, including endpoint/card discovery, tool listing,
76
+ * OAuth discovery and token refresh, and MCP/A2A tool requests.
77
+ *
78
+ * The function is runtime-only configuration and is never serialized into
79
+ * agent records, storyboard artifacts, or compliance output. When unset,
80
+ * the SDK uses the global `fetch` implementation.
81
+ *
82
+ * For SSRF-sensitive metadata probes, supplying this function makes it the
83
+ * trusted network boundary: the SDK still validates schemes and resolved
84
+ * addresses, but a custom fetch API cannot accept the SDK's pinned undici
85
+ * dispatcher. The implementation must therefore prevent DNS rebinding (for
86
+ * example with an egress proxy or its own DNS pinning).
87
+ */
88
+ fetchFn?: typeof fetch;
72
89
  /**
73
90
  * Timeout in milliseconds for bounded one-shot transport requests such as
74
91
  * A2A agent-card discovery and MCP read-path probes. Defaults to 60 seconds
@@ -64,11 +64,28 @@ export interface TransportOptions {
64
64
  *
65
65
  * @remarks
66
66
  * Future hardening knobs (DNS-rebind defense, scheme allow-list, request
67
- * timeout overrides) will land here as additional fields rather than
68
- * forcing callers to compose their own `fetch` wrap order with the SDK's
69
- * existing signing / capture wrappers is non-obvious and a footgun.
67
+ * timeout overrides) will land here as additional fields. When `fetchFn`
68
+ * is supplied, the SDK composes it inside its signing, capture, size-limit,
69
+ * timeout, and diagnostics wrappers so callers do not have to reproduce
70
+ * that non-obvious ordering themselves.
70
71
  */
71
72
  maxResponseBytes?: number;
73
+ /**
74
+ * Scoped fetch implementation for all outbound HTTP performed on behalf of
75
+ * this client or call, including endpoint/card discovery, tool listing,
76
+ * OAuth discovery and token refresh, and MCP/A2A tool requests.
77
+ *
78
+ * The function is runtime-only configuration and is never serialized into
79
+ * agent records, storyboard artifacts, or compliance output. When unset,
80
+ * the SDK uses the global `fetch` implementation.
81
+ *
82
+ * For SSRF-sensitive metadata probes, supplying this function makes it the
83
+ * trusted network boundary: the SDK still validates schemes and resolved
84
+ * addresses, but a custom fetch API cannot accept the SDK's pinned undici
85
+ * dispatcher. The implementation must therefore prevent DNS rebinding (for
86
+ * example with an egress proxy or its own DNS pinning).
87
+ */
88
+ fetchFn?: typeof fetch;
72
89
  /**
73
90
  * Timeout in milliseconds for bounded one-shot transport requests such as
74
91
  * A2A agent-card discovery and MCP read-path probes. Defaults to 60 seconds
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/protocols/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/protocols/index.ts"],"names":[],"mappings":"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"}
@@ -81,7 +81,8 @@ function getNonInteractiveOAuthProvider(agent) {
81
81
  const storage = (0, import_oauth.getAgentStorage)(agent);
82
82
  provider = (0, import_oauth.createNonInteractiveOAuthProvider)(agent, {
83
83
  agentHint: agent.id,
84
- storage
84
+ storage,
85
+ allowHttp: (0, import_net.isLikelyPrivateUrl)(agent.agent_uri)
85
86
  });
86
87
  nonInteractiveOAuthProviderCache.set(agent, provider);
87
88
  }
@@ -187,7 +188,11 @@ class ProtocolClient {
187
188
  if (agent.oauth_client_credentials) {
188
189
  const ccStorage = (0, import_oauth.getAgentStorage)(agent);
189
190
  const allowPrivateIp = (0, import_net.isLikelyPrivateUrl)(agent.agent_uri);
190
- await (0, import_oauth.ensureClientCredentialsTokens)(agent, { storage: ccStorage, allowPrivateIp });
191
+ await (0, import_oauth.ensureClientCredentialsTokens)(agent, {
192
+ storage: ccStorage,
193
+ allowPrivateIp,
194
+ fetch: transport?.fetchFn
195
+ });
191
196
  }
192
197
  const authToken = (0, import_auth.getAuthToken)(agent);
193
198
  const signingContext = (0, import_client.buildAgentSigningContext)(agent);
@@ -231,10 +236,11 @@ class ProtocolClient {
231
236
  customHeaders: agent.headers,
232
237
  signingContext,
233
238
  signal,
234
- requestTimeoutMs: transport?.requestTimeoutMs
239
+ requestTimeoutMs: transport?.requestTimeoutMs,
240
+ fetchFn: transport?.fetchFn
235
241
  });
236
242
  } catch (err) {
237
- await rethrowAsNeedsAuthorization(err, agent.agent_uri);
243
+ await rethrowAsNeedsAuthorization(err, agent.agent_uri, transport?.fetchFn);
238
244
  throw err;
239
245
  }
240
246
  }
@@ -251,14 +257,20 @@ class ProtocolClient {
251
257
  ...signal && { signal },
252
258
  ...transport?.requestTimeoutMs !== void 0 && {
253
259
  requestTimeoutMs: transport.requestTimeoutMs
254
- }
260
+ },
261
+ ...transport?.fetchFn && { fetchFn: transport.fetchFn }
255
262
  }
256
263
  );
257
264
  } catch (err) {
258
265
  if (agent.oauth_client_credentials && (0, import_errors.is401Error)(err)) {
259
266
  const ccStorage = (0, import_oauth.getAgentStorage)(agent);
260
267
  const allowPrivateIp = (0, import_net.isLikelyPrivateUrl)(agent.agent_uri);
261
- await (0, import_oauth.ensureClientCredentialsTokens)(agent, { storage: ccStorage, force: true, allowPrivateIp });
268
+ await (0, import_oauth.ensureClientCredentialsTokens)(agent, {
269
+ storage: ccStorage,
270
+ force: true,
271
+ allowPrivateIp,
272
+ fetch: transport?.fetchFn
273
+ });
262
274
  const retryAuthToken = agent.oauth_tokens?.access_token ?? authToken;
263
275
  try {
264
276
  return await (0, import_mcp_tasks2.callMCPToolWithTasks)(
@@ -273,15 +285,16 @@ class ProtocolClient {
273
285
  ...signal && { signal },
274
286
  ...transport?.requestTimeoutMs !== void 0 && {
275
287
  requestTimeoutMs: transport.requestTimeoutMs
276
- }
288
+ },
289
+ ...transport?.fetchFn && { fetchFn: transport.fetchFn }
277
290
  }
278
291
  );
279
292
  } catch (retryErr) {
280
- await rethrowAsNeedsAuthorization(retryErr, agent.agent_uri);
293
+ await rethrowAsNeedsAuthorization(retryErr, agent.agent_uri, transport?.fetchFn);
281
294
  throw retryErr;
282
295
  }
283
296
  }
284
- await rethrowAsNeedsAuthorization(err, agent.agent_uri);
297
+ await rethrowAsNeedsAuthorization(err, agent.agent_uri, transport?.fetchFn);
285
298
  throw err;
286
299
  }
287
300
  } else if (agent.protocol === "a2a") {
@@ -297,13 +310,19 @@ class ProtocolClient {
297
310
  signingContext,
298
311
  session,
299
312
  signal,
300
- transport?.requestTimeoutMs
313
+ transport?.requestTimeoutMs,
314
+ transport?.fetchFn
301
315
  );
302
316
  } catch (err) {
303
317
  if (agent.oauth_client_credentials && (0, import_errors.is401Error)(err)) {
304
318
  const ccStorage = (0, import_oauth.getAgentStorage)(agent);
305
319
  const allowPrivateIp = (0, import_net.isLikelyPrivateUrl)(agent.agent_uri);
306
- await (0, import_oauth.ensureClientCredentialsTokens)(agent, { storage: ccStorage, force: true, allowPrivateIp });
320
+ await (0, import_oauth.ensureClientCredentialsTokens)(agent, {
321
+ storage: ccStorage,
322
+ force: true,
323
+ allowPrivateIp,
324
+ fetch: transport?.fetchFn
325
+ });
307
326
  const retryAuthToken = agent.oauth_tokens?.access_token ?? authToken;
308
327
  try {
309
328
  return await (0, import_a2a3.callA2ATool)(
@@ -317,14 +336,15 @@ class ProtocolClient {
317
336
  signingContext,
318
337
  session,
319
338
  signal,
320
- transport?.requestTimeoutMs
339
+ transport?.requestTimeoutMs,
340
+ transport?.fetchFn
321
341
  );
322
342
  } catch (retryErr) {
323
- await rethrowAsNeedsAuthorization(retryErr, agent.agent_uri);
343
+ await rethrowAsNeedsAuthorization(retryErr, agent.agent_uri, transport?.fetchFn);
324
344
  throw retryErr;
325
345
  }
326
346
  }
327
- await rethrowAsNeedsAuthorization(err, agent.agent_uri);
347
+ await rethrowAsNeedsAuthorization(err, agent.agent_uri, transport?.fetchFn);
328
348
  throw err;
329
349
  }
330
350
  } else {
@@ -336,11 +356,11 @@ class ProtocolClient {
336
356
  );
337
357
  }
338
358
  }
339
- async function rethrowAsNeedsAuthorization(err, agentUrl) {
359
+ async function rethrowAsNeedsAuthorization(err, agentUrl, fetchFn) {
340
360
  if (err instanceof import_oauth.NeedsAuthorizationError) throw err;
341
361
  if (!(0, import_errors.is401Error)(err)) return;
342
362
  const allowPrivateIp = (0, import_net.isLikelyPrivateUrl)(agentUrl);
343
- const requirements = await (0, import_oauth.discoverAuthorizationRequirements)(agentUrl, { allowPrivateIp });
363
+ const requirements = await (0, import_oauth.discoverAuthorizationRequirements)(agentUrl, { allowPrivateIp, fetchFn });
344
364
  if (requirements) {
345
365
  throw new import_oauth.NeedsAuthorizationError(requirements);
346
366
  }
@@ -358,7 +378,8 @@ const createMCPClient = (agentUrl, authToken, headers, serverVersion, adcpVersio
358
378
  debugLogs,
359
379
  headers,
360
380
  {
361
- ...transport?.requestTimeoutMs !== void 0 && { requestTimeoutMs: transport.requestTimeoutMs }
381
+ ...transport?.requestTimeoutMs !== void 0 && { requestTimeoutMs: transport.requestTimeoutMs },
382
+ ...transport?.fetchFn && { fetchFn: transport.fetchFn }
362
383
  }
363
384
  )
364
385
  )
@@ -380,7 +401,8 @@ const createA2AClient = (agentUrl, authToken, headers, serverVersion, adcpVersio
380
401
  void 0,
381
402
  void 0,
382
403
  void 0,
383
- transport?.requestTimeoutMs
404
+ transport?.requestTimeoutMs,
405
+ transport?.fetchFn
384
406
  )
385
407
  )
386
408
  };