@adcp/sdk 14.0.0-beta.8 → 14.0.0-beta.9

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 (150) hide show
  1. package/dist/lib/core/AgentClient.d.ts.map +1 -1
  2. package/dist/lib/core/ConversationTypes.d.mts +8 -0
  3. package/dist/lib/core/ConversationTypes.d.ts +8 -0
  4. package/dist/lib/core/ConversationTypes.d.ts.map +1 -1
  5. package/dist/lib/core/ConversationTypes.js.map +1 -1
  6. package/dist/lib/core/SingleAgentClient.d.ts.map +1 -1
  7. package/dist/lib/core/SingleAgentClient.js +30 -3
  8. package/dist/lib/core/SingleAgentClient.js.map +1 -1
  9. package/dist/lib/core/SingleAgentClient.mjs +30 -3
  10. package/dist/lib/core/SingleAgentClient.mjs.map +1 -1
  11. package/dist/lib/core/TaskExecutor.d.ts.map +1 -1
  12. package/dist/lib/core/TaskExecutor.js +32 -5
  13. package/dist/lib/core/TaskExecutor.js.map +1 -1
  14. package/dist/lib/core/TaskExecutor.mjs +32 -5
  15. package/dist/lib/core/TaskExecutor.mjs.map +1 -1
  16. package/dist/lib/index.d.mts +2 -2
  17. package/dist/lib/index.d.ts +2 -2
  18. package/dist/lib/index.d.ts.map +1 -1
  19. package/dist/lib/index.js +2 -0
  20. package/dist/lib/index.js.map +1 -1
  21. package/dist/lib/index.mjs +2 -1
  22. package/dist/lib/index.mjs.map +1 -1
  23. package/dist/lib/schemas/index.d.mts +14 -0
  24. package/dist/lib/schemas/index.d.ts +14 -0
  25. package/dist/lib/schemas/index.d.ts.map +1 -1
  26. package/dist/lib/schemas/index.js +13 -1
  27. package/dist/lib/schemas/index.js.map +1 -1
  28. package/dist/lib/schemas/index.mjs +13 -1
  29. package/dist/lib/schemas/index.mjs.map +1 -1
  30. package/dist/lib/schemas-data/v2.5/_provenance.json +1 -1
  31. package/dist/lib/server/adcp-server.d.mts +1 -0
  32. package/dist/lib/server/adcp-server.d.ts +1 -0
  33. package/dist/lib/server/adcp-server.d.ts.map +1 -1
  34. package/dist/lib/server/adcp-server.js +1 -1
  35. package/dist/lib/server/adcp-server.js.map +1 -1
  36. package/dist/lib/server/adcp-server.mjs +1 -1
  37. package/dist/lib/server/adcp-server.mjs.map +1 -1
  38. package/dist/lib/server/create-adcp-server.d.mts +10 -2
  39. package/dist/lib/server/create-adcp-server.d.ts +10 -2
  40. package/dist/lib/server/create-adcp-server.d.ts.map +1 -1
  41. package/dist/lib/server/create-adcp-server.js +26 -19
  42. package/dist/lib/server/create-adcp-server.js.map +1 -1
  43. package/dist/lib/server/create-adcp-server.mjs +26 -26
  44. package/dist/lib/server/create-adcp-server.mjs.map +1 -1
  45. package/dist/lib/server/decisioning/capabilities.d.mts +15 -1
  46. package/dist/lib/server/decisioning/capabilities.d.ts +15 -1
  47. package/dist/lib/server/decisioning/capabilities.d.ts.map +1 -1
  48. package/dist/lib/server/decisioning/capabilities.js.map +1 -1
  49. package/dist/lib/server/decisioning/capabilities.mjs.map +1 -1
  50. package/dist/lib/server/decisioning/index.d.mts +2 -2
  51. package/dist/lib/server/decisioning/index.d.ts +2 -2
  52. package/dist/lib/server/decisioning/index.d.ts.map +1 -1
  53. package/dist/lib/server/decisioning/index.js +2 -0
  54. package/dist/lib/server/decisioning/index.js.map +1 -1
  55. package/dist/lib/server/decisioning/index.mjs +2 -0
  56. package/dist/lib/server/decisioning/index.mjs.map +1 -1
  57. package/dist/lib/server/decisioning/proposal/types.d.mts +3 -2
  58. package/dist/lib/server/decisioning/proposal/types.d.ts +3 -2
  59. package/dist/lib/server/decisioning/proposal/types.d.ts.map +1 -1
  60. package/dist/lib/server/decisioning/proposal/types.js.map +1 -1
  61. package/dist/lib/server/decisioning/proposal/types.mjs.map +1 -1
  62. package/dist/lib/server/decisioning/runtime/from-platform.d.mts +14 -1
  63. package/dist/lib/server/decisioning/runtime/from-platform.d.ts +14 -1
  64. package/dist/lib/server/decisioning/runtime/from-platform.d.ts.map +1 -1
  65. package/dist/lib/server/decisioning/runtime/from-platform.js +402 -9
  66. package/dist/lib/server/decisioning/runtime/from-platform.js.map +1 -1
  67. package/dist/lib/server/decisioning/runtime/from-platform.mjs +405 -9
  68. package/dist/lib/server/decisioning/runtime/from-platform.mjs.map +1 -1
  69. package/dist/lib/server/decisioning/runtime/validate-platform.d.mts +1 -1
  70. package/dist/lib/server/decisioning/runtime/validate-platform.d.ts +1 -1
  71. package/dist/lib/server/decisioning/runtime/validate-platform.d.ts.map +1 -1
  72. package/dist/lib/server/decisioning/runtime/validate-platform.js +2 -2
  73. package/dist/lib/server/decisioning/runtime/validate-platform.js.map +1 -1
  74. package/dist/lib/server/decisioning/runtime/validate-platform.mjs +2 -2
  75. package/dist/lib/server/decisioning/runtime/validate-platform.mjs.map +1 -1
  76. package/dist/lib/server/decisioning/specialisms/sales.d.mts +7 -1
  77. package/dist/lib/server/decisioning/specialisms/sales.d.ts +7 -1
  78. package/dist/lib/server/decisioning/specialisms/sales.d.ts.map +1 -1
  79. package/dist/lib/server/decisioning/specialisms/sales.js.map +1 -1
  80. package/dist/lib/storage/interfaces.d.mts +2 -0
  81. package/dist/lib/storage/interfaces.d.ts +2 -0
  82. package/dist/lib/storage/interfaces.d.ts.map +1 -1
  83. package/dist/lib/storage/interfaces.js.map +1 -1
  84. package/dist/lib/testing/compliance/comply.d.mts +18 -0
  85. package/dist/lib/testing/compliance/comply.d.ts +18 -0
  86. package/dist/lib/testing/compliance/comply.d.ts.map +1 -1
  87. package/dist/lib/testing/compliance/comply.js +30 -5
  88. package/dist/lib/testing/compliance/comply.js.map +1 -1
  89. package/dist/lib/testing/compliance/comply.mjs +28 -4
  90. package/dist/lib/testing/compliance/comply.mjs.map +1 -1
  91. package/dist/lib/testing/compliance/index.d.mts +1 -1
  92. package/dist/lib/testing/compliance/index.d.ts +1 -1
  93. package/dist/lib/testing/compliance/index.d.ts.map +1 -1
  94. package/dist/lib/testing/compliance/index.js +4 -2
  95. package/dist/lib/testing/compliance/index.js.map +1 -1
  96. package/dist/lib/testing/compliance/index.mjs +4 -2
  97. package/dist/lib/testing/compliance/index.mjs.map +1 -1
  98. package/dist/lib/testing/storyboard/validations.d.mts +1 -1
  99. package/dist/lib/testing/storyboard/validations.d.ts +1 -1
  100. package/dist/lib/types/list-creatives.d.ts +129 -6
  101. package/dist/lib/types/schemas.generated.d.ts +411 -16
  102. package/dist/lib/types/schemas.generated.d.ts.map +1 -1
  103. package/dist/lib/types/schemas.generated.js +22 -6
  104. package/dist/lib/types/schemas.generated.js.map +1 -1
  105. package/dist/lib/types/schemas.generated.mjs +22 -6
  106. package/dist/lib/types/schemas.generated.mjs.map +1 -1
  107. package/dist/lib/types/tools.generated.d.mts +80 -6
  108. package/dist/lib/types/tools.generated.d.ts +80 -6
  109. package/dist/lib/types/tools.generated.d.ts.map +1 -1
  110. package/dist/lib/types/tools.generated.js.map +1 -1
  111. package/dist/lib/utils/adcp-version-config.d.mts +12 -0
  112. package/dist/lib/utils/adcp-version-config.d.ts +12 -0
  113. package/dist/lib/utils/adcp-version-config.d.ts.map +1 -1
  114. package/dist/lib/utils/adcp-version-config.js +5 -3
  115. package/dist/lib/utils/adcp-version-config.js.map +1 -1
  116. package/dist/lib/utils/adcp-version-config.mjs +4 -3
  117. package/dist/lib/utils/adcp-version-config.mjs.map +1 -1
  118. package/dist/lib/utils/pricing-adapter.d.mts +2 -0
  119. package/dist/lib/utils/pricing-adapter.d.ts +2 -0
  120. package/dist/lib/utils/pricing-adapter.d.ts.map +1 -1
  121. package/dist/lib/utils/pricing-adapter.js +68 -1
  122. package/dist/lib/utils/pricing-adapter.js.map +1 -1
  123. package/dist/lib/utils/pricing-adapter.mjs +67 -1
  124. package/dist/lib/utils/pricing-adapter.mjs.map +1 -1
  125. package/dist/lib/v2/projection/index.d.mts +1 -1
  126. package/dist/lib/v2/projection/index.d.ts +1 -1
  127. package/dist/lib/v2/projection/index.d.ts.map +1 -1
  128. package/dist/lib/v2/projection/index.js.map +1 -1
  129. package/dist/lib/v2/projection/index.mjs.map +1 -1
  130. package/dist/lib/v2/projection/v1-to-v2.d.mts +17 -3
  131. package/dist/lib/v2/projection/v1-to-v2.d.ts +17 -3
  132. package/dist/lib/v2/projection/v1-to-v2.d.ts.map +1 -1
  133. package/dist/lib/v2/projection/v1-to-v2.js.map +1 -1
  134. package/dist/lib/v2/projection/v1-to-v2.mjs.map +1 -1
  135. package/dist/lib/validation/schema-loader.d.mts +17 -0
  136. package/dist/lib/validation/schema-loader.d.ts +17 -0
  137. package/dist/lib/validation/schema-loader.d.ts.map +1 -1
  138. package/dist/lib/validation/schema-loader.js +24 -0
  139. package/dist/lib/validation/schema-loader.js.map +1 -1
  140. package/dist/lib/validation/schema-loader.mjs +23 -0
  141. package/dist/lib/validation/schema-loader.mjs.map +1 -1
  142. package/dist/lib/version.d.mts +3 -3
  143. package/dist/lib/version.d.ts +3 -3
  144. package/dist/lib/version.js +3 -3
  145. package/dist/lib/version.js.map +1 -1
  146. package/dist/lib/version.mjs +3 -3
  147. package/dist/lib/version.mjs.map +1 -1
  148. package/docs/llms.txt +2 -2
  149. package/docs/migration-13-to-14.md +59 -0
  150. package/package.json +1 -1
@@ -134,14 +134,6 @@ import {
134
134
  STANDARD_ERROR_CODES,
135
135
  isStandardErrorCode
136
136
  } from "../types/error-codes.mjs";
137
- import {
138
- MEDIA_BUY_TOOLS,
139
- SIGNALS_TOOLS,
140
- GOVERNANCE_TOOLS,
141
- CREATIVE_TOOLS,
142
- SPONSORED_INTELLIGENCE_TOOLS,
143
- BRAND_RIGHTS_TOOLS
144
- } from "../utils/capabilities.mjs";
145
137
  const DEFAULT_STATE_STORE = new InMemoryStateStore();
146
138
  const noopLogger = {
147
139
  debug() {
@@ -944,6 +936,9 @@ const MEDIA_BUY_ENTRIES = [
944
936
  { handlerKey: "syncCreatives", toolName: "sync_creatives" },
945
937
  { handlerKey: "listCreatives", toolName: "list_creatives" }
946
938
  ];
939
+ const MEDIA_BUY_PROTOCOL_ENTRIES = MEDIA_BUY_ENTRIES.filter(
940
+ ({ handlerKey }) => !["listCreativeFormats", "syncCreatives", "listCreatives"].includes(handlerKey)
941
+ );
947
942
  const PROPOSAL_NEGOTIATION_ENTRIES = [{ handlerKey: "refineProposals", toolName: "refine_proposals" }];
948
943
  const EVENT_TRACKING_ENTRIES = [
949
944
  { handlerKey: "syncEventSources", toolName: "sync_event_sources" },
@@ -1011,22 +1006,23 @@ const BRAND_RIGHTS_ENTRIES = [
1011
1006
  { handlerKey: "acquireRights", toolName: "acquire_rights" },
1012
1007
  { handlerKey: "updateRights", toolName: "update_rights" }
1013
1008
  ];
1014
- const TOOL_PROTOCOL_MAP = [
1015
- [MEDIA_BUY_TOOLS, "media_buy"],
1016
- [SIGNALS_TOOLS, "signals"],
1017
- [GOVERNANCE_TOOLS, "governance"],
1018
- [CREATIVE_TOOLS, "creative"],
1019
- [SPONSORED_INTELLIGENCE_TOOLS, "sponsored_intelligence"],
1020
- [BRAND_RIGHTS_TOOLS, "brand"]
1021
- ];
1022
- function detectProtocols(toolNames) {
1023
- const nameSet = new Set(toolNames);
1009
+ function hasDomainHandler(entries, handlers) {
1010
+ if (handlers === void 0) return false;
1011
+ const candidate = handlers;
1012
+ return entries.some(({ handlerKey }) => typeof candidate[handlerKey] === "function");
1013
+ }
1014
+ function detectProtocolsFromHandlers(config) {
1024
1015
  const protocols = [];
1025
- for (const [tools, protocol] of TOOL_PROTOCOL_MAP) {
1026
- if (tools.some((t) => nameSet.has(t))) {
1027
- protocols.push(protocol);
1028
- }
1016
+ const declaresSalesSpecialism = config.capabilities?.specialisms?.some((specialism) => specialism.startsWith("sales-"));
1017
+ const hasAnyMediaBuyHandler = hasDomainHandler(MEDIA_BUY_ENTRIES, config.mediaBuy);
1018
+ if (hasDomainHandler(MEDIA_BUY_PROTOCOL_ENTRIES, config.mediaBuy) || hasDomainHandler(PROPOSAL_NEGOTIATION_ENTRIES, config.proposalNegotiation) || declaresSalesSpecialism && hasAnyMediaBuyHandler) {
1019
+ protocols.push("media_buy");
1029
1020
  }
1021
+ if (hasDomainHandler(SIGNALS_ENTRIES, config.signals)) protocols.push("signals");
1022
+ if (hasDomainHandler(GOVERNANCE_ENTRIES, config.governance)) protocols.push("governance");
1023
+ if (hasDomainHandler(CREATIVE_ENTRIES, config.creative)) protocols.push("creative");
1024
+ if (hasDomainHandler(SI_ENTRIES, config.sponsoredIntelligence)) protocols.push("sponsored_intelligence");
1025
+ if (hasDomainHandler(BRAND_RIGHTS_ENTRIES, config.brandRights)) protocols.push("brand");
1030
1026
  return protocols;
1031
1027
  }
1032
1028
  const COHERENCE_RULES = [
@@ -2342,7 +2338,8 @@ function createAdcpServer(config) {
2342
2338
  const requestErrorArms = getToolsWithErrorArm(requestRelease.validationVersion);
2343
2339
  const ctx = {
2344
2340
  store: stateStore,
2345
- servedAdcpVersion: requestRelease.validationVersion
2341
+ servedAdcpVersion: requestRelease.validationVersion,
2342
+ ...extra?.signal !== void 0 && { signal: extra.signal }
2346
2343
  };
2347
2344
  if (extra?.authInfo) {
2348
2345
  ctx.authInfo = extra.authInfo;
@@ -3772,7 +3769,7 @@ function createAdcpServer(config) {
3772
3769
  `createAdcpServer: MUTATING_TASKS set has only ${MUTATING_TASKS.size} entries \u2014 expected at least 20. Schema introspection likely broke (Zod upgrade? tool-request-schemas change?). Check \`src/lib/utils/idempotency.ts:deriveMutatingTasks\`.`
3773
3770
  );
3774
3771
  }
3775
- const protocols = detectProtocols([...registeredToolNames]);
3772
+ const protocols = detectProtocolsFromHandlers(config);
3776
3773
  const idempotencyCapability = idempotencyDisabled || !idempotency ? { supported: false } : {
3777
3774
  supported: true,
3778
3775
  replay_ttl_seconds: idempotency.ttlSeconds
@@ -3823,8 +3820,11 @@ function createAdcpServer(config) {
3823
3820
  supports_transformation: capConfig.creative.supportsTransformation ?? false
3824
3821
  };
3825
3822
  }
3826
- if (capConfig?.extensions_supported?.length) {
3827
- capabilitiesData.extensions_supported = capConfig.extensions_supported;
3823
+ if (capConfig?.extensions_supported !== void 0) {
3824
+ capabilitiesData.extensions_supported = [...capConfig.extensions_supported];
3825
+ }
3826
+ if (capConfig?.ext !== void 0) {
3827
+ capabilitiesData.ext = structuredClone(capConfig.ext);
3828
3828
  }
3829
3829
  if (capConfig?.request_signing) {
3830
3830
  capabilitiesData.request_signing = capConfig.request_signing;