@adcp/sdk 14.0.0-beta.5 → 14.0.0-beta.6

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 (80) hide show
  1. package/dist/lib/core/AgentClient.d.ts.map +1 -1
  2. package/dist/lib/core/AgentClient.js +26 -10
  3. package/dist/lib/core/AgentClient.js.map +1 -1
  4. package/dist/lib/core/AgentClient.mjs +26 -10
  5. package/dist/lib/core/AgentClient.mjs.map +1 -1
  6. package/dist/lib/core/AsyncHandler.d.mts +4 -2
  7. package/dist/lib/core/AsyncHandler.d.ts +4 -2
  8. package/dist/lib/core/AsyncHandler.d.ts.map +1 -1
  9. package/dist/lib/core/AsyncHandler.js +15 -1
  10. package/dist/lib/core/AsyncHandler.js.map +1 -1
  11. package/dist/lib/core/AsyncHandler.mjs +15 -1
  12. package/dist/lib/core/AsyncHandler.mjs.map +1 -1
  13. package/dist/lib/core/SingleAgentClient.d.mts +3 -1
  14. package/dist/lib/core/SingleAgentClient.d.ts +3 -1
  15. package/dist/lib/core/SingleAgentClient.d.ts.map +1 -1
  16. package/dist/lib/core/SingleAgentClient.js +158 -39
  17. package/dist/lib/core/SingleAgentClient.js.map +1 -1
  18. package/dist/lib/core/SingleAgentClient.mjs +167 -40
  19. package/dist/lib/core/SingleAgentClient.mjs.map +1 -1
  20. package/dist/lib/core/TaskExecutor.d.mts +57 -2
  21. package/dist/lib/core/TaskExecutor.d.ts +57 -2
  22. package/dist/lib/core/TaskExecutor.d.ts.map +1 -1
  23. package/dist/lib/core/TaskExecutor.js +382 -44
  24. package/dist/lib/core/TaskExecutor.js.map +1 -1
  25. package/dist/lib/core/TaskExecutor.mjs +382 -45
  26. package/dist/lib/core/TaskExecutor.mjs.map +1 -1
  27. package/dist/lib/core/request-proposals-guard.d.mts +11 -0
  28. package/dist/lib/core/request-proposals-guard.d.ts +12 -0
  29. package/dist/lib/core/request-proposals-guard.d.ts.map +1 -0
  30. package/dist/lib/core/request-proposals-guard.js +65 -0
  31. package/dist/lib/core/request-proposals-guard.js.map +1 -0
  32. package/dist/lib/core/request-proposals-guard.mjs +39 -0
  33. package/dist/lib/core/request-proposals-guard.mjs.map +1 -0
  34. package/dist/lib/core/webhook-registration.d.mts +5 -0
  35. package/dist/lib/core/webhook-registration.d.ts +5 -0
  36. package/dist/lib/core/webhook-registration.d.ts.map +1 -1
  37. package/dist/lib/core/webhook-registration.js +13 -0
  38. package/dist/lib/core/webhook-registration.js.map +1 -1
  39. package/dist/lib/core/webhook-registration.mjs +13 -0
  40. package/dist/lib/core/webhook-registration.mjs.map +1 -1
  41. package/dist/lib/media-buy/compatibility.d.mts +45 -10
  42. package/dist/lib/media-buy/compatibility.d.ts +45 -10
  43. package/dist/lib/media-buy/compatibility.d.ts.map +1 -1
  44. package/dist/lib/media-buy/compatibility.js +295 -113
  45. package/dist/lib/media-buy/compatibility.js.map +1 -1
  46. package/dist/lib/media-buy/compatibility.mjs +295 -113
  47. package/dist/lib/media-buy/compatibility.mjs.map +1 -1
  48. package/dist/lib/schemas-data/v2.5/_provenance.json +1 -1
  49. package/dist/lib/testing/storyboard/validations.d.mts +1 -1
  50. package/dist/lib/testing/storyboard/validations.d.ts +1 -1
  51. package/dist/lib/types/core.generated.d.mts +334 -85
  52. package/dist/lib/types/core.generated.d.ts +334 -85
  53. package/dist/lib/types/core.generated.d.ts.map +1 -1
  54. package/dist/lib/types/core.generated.js.map +1 -1
  55. package/dist/lib/types/decline-proposals.d.ts +0 -5
  56. package/dist/lib/types/index.d.mts +2 -0
  57. package/dist/lib/types/index.d.ts +2 -0
  58. package/dist/lib/types/index.d.ts.map +1 -1
  59. package/dist/lib/types/index.js.map +1 -1
  60. package/dist/lib/types/index.mjs.map +1 -1
  61. package/dist/lib/types/request-proposals.d.ts +254 -36
  62. package/dist/lib/types/schemas.generated.d.ts +3123 -835
  63. package/dist/lib/types/schemas.generated.d.ts.map +1 -1
  64. package/dist/lib/types/schemas.generated.js +192 -85
  65. package/dist/lib/types/schemas.generated.js.map +1 -1
  66. package/dist/lib/types/schemas.generated.mjs +192 -85
  67. package/dist/lib/types/schemas.generated.mjs.map +1 -1
  68. package/dist/lib/types/tools.generated.d.mts +1 -121
  69. package/dist/lib/types/tools.generated.d.ts +1 -121
  70. package/dist/lib/types/tools.generated.d.ts.map +1 -1
  71. package/dist/lib/types/tools.generated.js.map +1 -1
  72. package/dist/lib/version.d.mts +3 -3
  73. package/dist/lib/version.d.ts +3 -3
  74. package/dist/lib/version.js +3 -3
  75. package/dist/lib/version.js.map +1 -1
  76. package/dist/lib/version.mjs +3 -3
  77. package/dist/lib/version.mjs.map +1 -1
  78. package/docs/guides/MEDIA-BUY-3.2-COMPATIBILITY.md +28 -14
  79. package/docs/llms.txt +1 -1
  80. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"AgentClient.d.ts","sourceRoot":"","sources":["../../../src/lib/core/AgentClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AgentClient.d.ts","sourceRoot":"","sources":["../../../src/lib/core/AgentClient.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,7 @@ __export(AgentClient_exports, {
23
23
  module.exports = __toCommonJS(AgentClient_exports);
24
24
  var import_node_crypto = require("node:crypto");
25
25
  var import_SingleAgentClient = require('./SingleAgentClient.js');
26
+ var import_request_proposals_guard = require('./request-proposals-guard.js');
26
27
  var import_compatibility = require('../media-buy/compatibility.js');
27
28
  var import_buyer = require('../negotiation/buyer.js');
28
29
  var import_verification = require('../negotiation/verification.js');
@@ -71,6 +72,10 @@ class AgentClient {
71
72
  get executor() {
72
73
  return this.client.executor;
73
74
  }
75
+ /** Poll one authoritative server task status for compatibility coordinators. @internal */
76
+ getTaskStatus(taskId, transport, signal) {
77
+ return this.executor.getTaskStatus(this.agent, taskId, transport, signal);
78
+ }
74
79
  /**
75
80
  * Returns the AdCP protocol version this client speaks. Mirrors
76
81
  * `SingleAgentClient.getAdcpVersion()`. See {@link SingleAgentClientConfig.adcpVersion}.
@@ -289,11 +294,7 @@ class AgentClient {
289
294
  inputHandler,
290
295
  this.withSession("request_proposals", options)
291
296
  );
292
- if (result.data && (result.data.outcome === "products_available" || result.data.purchase_continuation !== void 0)) {
293
- throw new TypeError(
294
- "request_proposals returned the projection-only products_available outcome from a native compact seller."
295
- );
296
- }
297
+ (0, import_request_proposals_guard.guardNativeRequestProposalsCompletion)(result);
297
298
  this.retainSession(result);
298
299
  return result;
299
300
  }
@@ -1051,12 +1052,18 @@ class AgentClient {
1051
1052
  * Get active tasks for this agent
1052
1053
  */
1053
1054
  getActiveTasks() {
1054
- return this.client.getActiveTasks();
1055
+ return this.client.getActiveTasks().map(import_request_proposals_guard.assertNativeRequestProposalsTask);
1055
1056
  }
1056
1057
  async executeTask(taskName, params, inputHandler, options) {
1057
1058
  switch (taskName) {
1058
1059
  case "get_products":
1059
1060
  return this.getProducts(params, inputHandler, options);
1061
+ case "request_proposals":
1062
+ return await this.requestProposals(
1063
+ params,
1064
+ inputHandler,
1065
+ options
1066
+ );
1060
1067
  case "refine_proposals":
1061
1068
  return await this.refineProposals(
1062
1069
  params,
@@ -1120,25 +1127,34 @@ class AgentClient {
1120
1127
  * List all tasks for this agent
1121
1128
  */
1122
1129
  async listTasks() {
1123
- return this.client.listTasks();
1130
+ return (await this.client.listTasks()).map(import_request_proposals_guard.assertNativeRequestProposalsTask);
1124
1131
  }
1125
1132
  /**
1126
1133
  * Get detailed information about a specific task
1127
1134
  */
1128
1135
  async getTaskInfo(taskId) {
1129
- return this.client.getTaskInfo(taskId);
1136
+ const task = await this.client.getTaskInfo(taskId);
1137
+ return task ? (0, import_request_proposals_guard.assertNativeRequestProposalsTask)(task) : null;
1130
1138
  }
1131
1139
  /**
1132
1140
  * Subscribe to task notifications for this agent
1133
1141
  */
1134
1142
  onTaskUpdate(callback) {
1135
- return this.client.onTaskUpdate(callback);
1143
+ return this.client.onTaskUpdate((task) => callback((0, import_request_proposals_guard.assertNativeRequestProposalsTask)(task)));
1136
1144
  }
1137
1145
  /**
1138
1146
  * Subscribe to all task events
1139
1147
  */
1140
1148
  onTaskEvents(callbacks) {
1141
- return this.client.onTaskEvents(callbacks);
1149
+ const safe = (task) => (0, import_request_proposals_guard.assertNativeRequestProposalsTask)(task);
1150
+ return this.client.onTaskEvents({
1151
+ ...callbacks.onTaskCreated && { onTaskCreated: (task) => callbacks.onTaskCreated(safe(task)) },
1152
+ ...callbacks.onTaskUpdated && { onTaskUpdated: (task) => callbacks.onTaskUpdated(safe(task)) },
1153
+ ...callbacks.onTaskCompleted && { onTaskCompleted: (task) => callbacks.onTaskCompleted(safe(task)) },
1154
+ ...callbacks.onTaskFailed && {
1155
+ onTaskFailed: (task, error) => callbacks.onTaskFailed(safe(task), error)
1156
+ }
1157
+ });
1142
1158
  }
1143
1159
  /**
1144
1160
  * Generate webhook URL for a specific task and operation.
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/lib/core/AgentClient.ts"],"sourcesContent":["// Per-agent client wrapper with conversation context preservation\n\nimport type { Client as MCPClient } from '@modelcontextprotocol/sdk/client/index.js';\nimport { randomUUID } from 'node:crypto';\nimport type { AgentConfig } from '../types';\nimport type {\n MCPWebhookPayload,\n GetBrandIdentityRequest,\n GetBrandIdentityResponse,\n GetRightsRequest,\n GetRightsResponse,\n AcquireRightsRequest,\n AcquireRightsResponse,\n ContextMatchRequest,\n ContextMatchResponse,\n IdentityMatchRequest,\n IdentityMatchResponseRouterPublisher,\n} from '../types/core.generated';\nimport type { Task as A2ATask, TaskStatusUpdateEvent } from '@a2a-js/sdk';\nimport {\n SingleAgentClient,\n type CanonicalReadTaskOptions,\n type CreativeDeliveryTaskOptions,\n type SingleAgentClientConfig,\n type SyncCreativesTaskOptions,\n type VerifyAndParseWebhookOptions,\n type WebhookHandlerAdapter,\n type WebhookParseResult,\n} from './SingleAgentClient';\nimport type { InputHandler, TaskOptions, TaskResult, TaskInfo, Message } from './ConversationTypes';\nimport type { BeforeProtocolDispatchHook } from './TaskExecutor';\nimport type { AdcpCapabilities } from '../utils/capabilities';\nimport type { WebhookHeaderValue } from '../webhooks';\nimport type {\n GetProductsRequest,\n GetProductsResponse,\n ListProductsRequest,\n ListProductsResponse,\n RequestProposalsRequest,\n RequestProposalsResponse,\n DeclineProposalsRequest,\n DeclineProposalsResponse,\n BuyProductsRequest,\n BuyProductsResponse,\n AcceptProposalRequest,\n AcceptProposalResponse,\n ControlMediaBuyRequest,\n ControlMediaBuyResponse,\n ListCreativeFormatsRequest,\n ListCreativeFormatsResponse,\n CreateMediaBuyRequest,\n CreateMediaBuyResponse,\n UpdateMediaBuyRequest,\n UpdateMediaBuyResponse,\n SyncCreativesRequest,\n SyncCreativesResponse,\n ListCreativesRequest,\n ListCreativesResponse,\n GetMediaBuysRequest,\n GetMediaBuysResponse,\n GetMediaBuyDeliveryRequest,\n GetMediaBuyDeliveryResponse,\n GetCreativeDeliveryRequest,\n GetCreativeDeliveryResponse,\n ProvidePerformanceFeedbackRequest,\n ProvidePerformanceFeedbackResponse,\n GetSignalsRequest,\n GetSignalsResponse,\n ActivateSignalRequest,\n ActivateSignalResponse,\n GetAdCPCapabilitiesRequest,\n GetAdCPCapabilitiesResponse,\n PreviewCreativeRequest,\n PreviewCreativeResponse,\n BuildCreativeRequest,\n BuildCreativeResponse,\n ListAccountsRequest,\n ListAccountsResponse,\n SyncAccountsRequest,\n SyncAccountsResponse,\n SyncAudiencesRequest,\n SyncAudiencesResponse,\n CreatePropertyListRequest,\n CreatePropertyListResponse,\n GetPropertyListRequest,\n GetPropertyListResponse,\n UpdatePropertyListRequest,\n UpdatePropertyListResponse,\n ListPropertyListsRequest,\n ListPropertyListsResponse,\n DeletePropertyListRequest,\n DeletePropertyListResponse,\n ListContentStandardsRequest,\n ListContentStandardsResponse,\n GetContentStandardsRequest,\n GetContentStandardsResponse,\n CalibrateContentRequest,\n CalibrateContentResponse,\n ValidateContentDeliveryRequest,\n ValidateContentDeliveryResponse,\n SIGetOfferingRequest,\n SIGetOfferingResponse,\n SIInitiateSessionRequest,\n SIInitiateSessionResponse,\n SISendMessageRequest,\n SISendMessageResponse,\n SITerminateSessionRequest,\n SITerminateSessionResponse,\n CreateContentStandardsResponse,\n CreateContentStandardsRequest,\n SyncPlansRequest,\n SyncPlansResponse,\n CheckGovernanceRequest,\n CheckGovernanceResponse,\n ReportPlanOutcomeRequest,\n ReportPlanOutcomeResponse,\n ReportPlanAdjustmentRequest,\n ReportPlanAdjustmentResponse,\n GetPlanAuditLogsRequest,\n GetPlanAuditLogsResponse,\n ListTransformersRequest,\n ListTransformersResponse,\n SyncAgentNotificationConfigsRequest,\n SyncAgentNotificationConfigsResponse,\n} from '../types/tools.generated';\nimport type { MutatingRequestInput } from '../utils/idempotency';\nimport { MediaBuyLifecycleCoordinator, type MediaBuyLifecycleCoordinatorOptions } from '../media-buy/compatibility';\nimport { buildRefineProposalsRequest } from '../negotiation/buyer';\nimport { assertRefineProposalsResponse } from '../negotiation/verification';\nimport type {\n ProposalRefinementCapabilities,\n RefineProposalsInput,\n RefineProposalsResponse,\n} from '../negotiation/types';\nimport type { V1Product } from '../v2/projection/types';\nimport type { LegacyFormatConverter } from '../v2/projection/v1-to-v2';\nimport type { ProjectionCatalogSnapshot } from '../v2/projection/catalog-snapshot';\nimport type {\n CanonicalCreateMediaBuyRequest,\n CanonicalCreativeResponse,\n CanonicalGetProductsRequest,\n CanonicalGetProductsResponse,\n CanonicalListCreativesRequest,\n CanonicalListCreativesResponse,\n CanonicalPreviewCreativeRequest,\n CanonicalPreviewCreativeResponse,\n CanonicalProduct,\n CanonicalSyncCreativesRequest,\n CanonicalUpdateMediaBuyRequest,\n} from '../v2/projection/creative-delivery';\nexport type { CanonicalGetProductsResponse } from '../v2/projection/creative-delivery';\n\nexport type CanonicalProjectionTaskOptions = TaskOptions & {\n /** Migration escape hatch for seller-specific legacy refs absent from the bundled registry. */\n legacyFormatConverter?: LegacyFormatConverter;\n /** Pre-resolved exact-owner publisher/community catalogs, highest precedence first. */\n projectionCatalogs?: readonly ProjectionCatalogSnapshot[];\n};\n\nexport type ProposalRefinementTaskOptions = TaskOptions & {\n /** Explicit seller declaration from media_buy.proposal_refinement. */\n proposalRefinementCapabilities?: ProposalRefinementCapabilities;\n};\n\nfunction stripRefineProposalsSdkAnnotations(data: RefineProposalsResponse): RefineProposalsResponse {\n const canonical = { ...(data as RefineProposalsResponse & { success?: unknown; _message?: unknown }) };\n delete canonical.success;\n delete canonical._message;\n return canonical;\n}\n\n/**\n * Projection metadata attached to canonical `get_products` responses.\n *\n * Present whenever projection ran (the default). Portable projection\n * advisories are added to the standard `data.errors[]` array; this envelope\n * is a convenience view for SDK-local inspection. Absence of diagnostics means every product's\n * `format_options[]` is fully populated (clean catalog match) or was\n * already v2-shaped on the wire.\n */\n/**\n * @deprecated The primary SDK surface is canonical-only. Use\n * {@link CanonicalGetProductsResponse}. Raw legacy wire shapes remain\n * available only through the explicit `getProductsLegacy()` escape hatch.\n */\nexport type V2AugmentedGetProductsResponse = CanonicalGetProductsResponse;\n\n/**\n * Type mapping for task names to their response types\n * Enables type-safe generic executeTask() calls\n */\nexport type TaskResponseTypeMap = {\n get_products: CanonicalGetProductsResponse;\n list_products: ListProductsResponse;\n request_proposals: RequestProposalsResponse;\n refine_proposals: RefineProposalsResponse;\n decline_proposals: DeclineProposalsResponse;\n buy_products: BuyProductsResponse;\n accept_proposal: AcceptProposalResponse;\n control_media_buy: ControlMediaBuyResponse;\n create_media_buy: CanonicalCreativeResponse<CreateMediaBuyResponse>;\n update_media_buy: CanonicalCreativeResponse<UpdateMediaBuyResponse>;\n sync_creatives: CanonicalCreativeResponse<SyncCreativesResponse>;\n list_creatives: CanonicalListCreativesResponse;\n get_media_buys: CanonicalCreativeResponse<GetMediaBuysResponse>;\n get_media_buy_delivery: CanonicalCreativeResponse<GetMediaBuyDeliveryResponse>;\n get_creative_delivery: CanonicalCreativeResponse<GetCreativeDeliveryResponse>;\n provide_performance_feedback: ProvidePerformanceFeedbackResponse;\n get_signals: GetSignalsResponse;\n activate_signal: ActivateSignalResponse;\n get_adcp_capabilities: GetAdCPCapabilitiesResponse;\n list_accounts: ListAccountsResponse;\n sync_accounts: SyncAccountsResponse;\n sync_audiences: SyncAudiencesResponse;\n create_property_list: CreatePropertyListResponse;\n get_property_list: GetPropertyListResponse;\n update_property_list: UpdatePropertyListResponse;\n list_property_lists: ListPropertyListsResponse;\n delete_property_list: DeletePropertyListResponse;\n si_get_offering: SIGetOfferingResponse;\n si_initiate_session: SIInitiateSessionResponse;\n si_send_message: SISendMessageResponse;\n si_terminate_session: SITerminateSessionResponse;\n get_brand_identity: GetBrandIdentityResponse;\n sync_plans: SyncPlansResponse;\n check_governance: CheckGovernanceResponse;\n report_plan_outcome: ReportPlanOutcomeResponse;\n report_plan_adjustment: ReportPlanAdjustmentResponse;\n get_plan_audit_logs: GetPlanAuditLogsResponse;\n context_match: ContextMatchResponse;\n identity_match: IdentityMatchResponseRouterPublisher;\n sync_agent_notification_configs: SyncAgentNotificationConfigsResponse;\n};\n\n/**\n * Valid ADCP task names\n */\nexport type AdcpTaskName = keyof TaskResponseTypeMap;\n\n/** Exact request mapping paired with {@link TaskResponseTypeMap}. */\nexport type TaskRequestTypeMap = {\n get_products: CanonicalGetProductsRequest;\n list_products: ListProductsRequest;\n request_proposals: MutatingRequestInput<RequestProposalsRequest>;\n refine_proposals: RefineProposalsInput;\n decline_proposals: MutatingRequestInput<DeclineProposalsRequest>;\n buy_products: MutatingRequestInput<BuyProductsRequest>;\n accept_proposal: MutatingRequestInput<AcceptProposalRequest>;\n control_media_buy: MutatingRequestInput<ControlMediaBuyRequest>;\n create_media_buy: MutatingRequestInput<CanonicalCreateMediaBuyRequest>;\n update_media_buy: MutatingRequestInput<CanonicalUpdateMediaBuyRequest>;\n sync_creatives: MutatingRequestInput<CanonicalSyncCreativesRequest>;\n list_creatives: CanonicalListCreativesRequest;\n get_media_buys: GetMediaBuysRequest;\n get_media_buy_delivery: GetMediaBuyDeliveryRequest;\n get_creative_delivery: GetCreativeDeliveryRequest;\n provide_performance_feedback: MutatingRequestInput<ProvidePerformanceFeedbackRequest>;\n get_signals: GetSignalsRequest;\n activate_signal: MutatingRequestInput<ActivateSignalRequest>;\n get_adcp_capabilities: GetAdCPCapabilitiesRequest;\n list_accounts: ListAccountsRequest;\n sync_accounts: MutatingRequestInput<SyncAccountsRequest>;\n sync_audiences: MutatingRequestInput<SyncAudiencesRequest>;\n create_property_list: MutatingRequestInput<CreatePropertyListRequest>;\n get_property_list: GetPropertyListRequest;\n update_property_list: MutatingRequestInput<UpdatePropertyListRequest>;\n list_property_lists: ListPropertyListsRequest;\n delete_property_list: MutatingRequestInput<DeletePropertyListRequest>;\n si_get_offering: SIGetOfferingRequest;\n si_initiate_session: MutatingRequestInput<SIInitiateSessionRequest>;\n si_send_message: MutatingRequestInput<SISendMessageRequest>;\n si_terminate_session: SITerminateSessionRequest;\n get_brand_identity: GetBrandIdentityRequest;\n sync_plans: MutatingRequestInput<SyncPlansRequest>;\n check_governance: CheckGovernanceRequest;\n report_plan_outcome: MutatingRequestInput<ReportPlanOutcomeRequest>;\n report_plan_adjustment: MutatingRequestInput<ReportPlanAdjustmentRequest>;\n get_plan_audit_logs: GetPlanAuditLogsRequest;\n context_match: ContextMatchRequest;\n identity_match: IdentityMatchRequest;\n sync_agent_notification_configs: MutatingRequestInput<SyncAgentNotificationConfigsRequest>;\n};\n\nexport type TaskRequestFor<K extends AdcpTaskName> = TaskRequestTypeMap[K];\n\n/**\n * Configuration for `AgentClient.fromMCPClient()`.\n *\n * A narrowed subset of `SingleAgentClientConfig` — only includes options that\n * are meaningful for in-process transport. HTTP-only fields (`userAgent`, `headers`,\n * `webhookUrlTemplate`, OAuth paths) are excluded because they have no effect when\n * the client dispatches directly to an in-process MCP `Client`.\n *\n * The fields you most likely want:\n * - `validation` — `requests`/`responses` validation mode (`strict` | `warn` | `off`)\n * - `governance` — buyer-side governance config\n * - `requireV3ForMutations` — enforce AdCP v3 before dispatching mutating tools\n */\nexport type InProcessAgentClientConfig = Pick<\n SingleAgentClientConfig,\n | 'adcpVersion'\n | 'wireAdcpVersion'\n | 'versionEnvelope'\n | 'debug'\n | 'validation'\n | 'governance'\n | 'onActivity'\n | 'legacyFormatConverter'\n | 'projectionCatalogs'\n | 'canonicalFormatLegacyResolver'\n | 'validateFeatures'\n | 'requireV3ForMutations'\n | 'allowV2'\n | 'workingTimeout'\n | 'defaultMaxClarifications'\n | 'persistConversations'\n> & {\n /**\n * Human-readable name for this agent, used in debug logs and\n * `getAgentName()`. Defaults to `'in-process'`.\n */\n agentName?: string;\n /**\n * Stable identifier for this agent, used in `getAgentId()`.\n * Defaults to a random string prefixed with `'in-process-'`.\n */\n agentId?: string;\n};\n\n/**\n * Task result states where the server is still holding the task open. While\n * the last response was in one of these states the AgentClient retains the\n * server-returned `taskId` so a follow-up call can resume the same\n * server-side task (HITL approvals, long-running workflows).\n */\nconst NON_TERMINAL_STATES: ReadonlySet<string> = new Set([\n 'working',\n 'input-required',\n 'submitted',\n 'auth-required',\n 'deferred',\n]);\n\n/**\n * Per-agent client that maintains conversation context across calls.\n *\n * **One AgentClient per conversation.** The client retains `contextId` and\n * `pendingTaskId` in-memory so subsequent calls ride the same A2A session.\n * Sharing an AgentClient across concurrent conversations will interleave\n * their contexts (last-write-wins). Create a fresh AgentClient — or call\n * {@link resetContext} — per logical conversation.\n *\n * **Resume across process restart** — persist `getContextId()` after a\n * non-terminal response and pass it to `resetContext(id)` on rehydration.\n * The server will route the next call back to the same session.\n */\n/**\n * Retained server-side task handle. Paired with the `contextId` and skill\n * name under which it was returned so {@link AgentClient.withSession} only\n * auto-threads it when the next call is plausibly a continuation of the\n * SAME task (same skill, same conversation). A different skill or switched\n * contextId signals new work — sending the retained handle in that case\n * produces \"Task not found\" against spec-compliant A2A sellers (per A2A\n * 0.3.0 §3.4 — Message.taskId continues the parent task).\n */\ninterface PendingTaskHandle {\n taskId: string;\n contextId: string;\n taskName: string;\n}\n\nexport class AgentClient {\n private client: SingleAgentClient;\n private currentContextId?: string;\n private pendingTask?: PendingTaskHandle;\n private readonly _isInProcess: boolean;\n\n constructor(\n private agent: AgentConfig,\n private config: SingleAgentClientConfig = {}\n ) {\n this.client = new SingleAgentClient(agent, config);\n this._isInProcess = agent._inProcessMcpClient !== undefined;\n }\n\n /**\n * Internal access to the underlying `TaskExecutor`. Used by the storyboard\n * runner's `pollTaskCompletion` race so it can poll AdCP `tasks/get` against\n * the agent's transport (see `src/lib/testing/storyboard/runner.ts`'s\n * `resolveTaskCompletionOutputs`). Without this surface the runner sees\n * `executor: undefined` on AgentClient and silently falls back to webhook-\n * only racing — which times out for storyboard fixtures that don't address\n * a runner-controlled webhook URL.\n *\n * Not part of the documented client API; production code goes through the\n * tool-specific methods on `AgentClient` / `AdCPClient`. The shape may\n * change without notice if the runner's polling contract evolves.\n *\n * @internal\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- runtime-internal accessor\n get executor(): any {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- reach-through to the underlying executor\n return (this.client as any).executor;\n }\n\n /**\n * Returns the AdCP protocol version this client speaks. Mirrors\n * `SingleAgentClient.getAdcpVersion()`. See {@link SingleAgentClientConfig.adcpVersion}.\n */\n getAdcpVersion(): string {\n return this.client.getAdcpVersion();\n }\n\n /**\n * Negotiate one compact-first media-buy facade for this seller.\n *\n * Compact tools are preferred when advertised. Established projections\n * are selected before dispatch and expose exact provenance/loss metadata;\n * the coordinator never switches mutation tools after a transport failure.\n */\n async negotiateMediaBuyLifecycle(\n options: MediaBuyLifecycleCoordinatorOptions = {}\n ): Promise<MediaBuyLifecycleCoordinator> {\n return MediaBuyLifecycleCoordinator.negotiate(this, options);\n }\n\n /**\n * Create an `AgentClient` backed by a pre-connected MCP `Client` instead of\n * an HTTP endpoint. Useful for in-process compliance testing without spinning\n * up a loopback HTTP server.\n *\n * **MCP only.** This factory wraps an MCP `Client` from\n * `@modelcontextprotocol/sdk`. There is no equivalent in-process bridge for\n * A2A today — for A2A agents, run them on a loopback HTTP server and use the\n * standard `AgentClient` constructor with the agent's `agent_uri`.\n *\n * **What this gives you over `dispatchTestRequest`:**\n * All client-side pipeline stages still apply — idempotency key auto-injection,\n * request/response schema validation hooks, governance middleware, and the typed\n * `TaskResult<T>` discriminated-union response shape. None of these apply when\n * calling `dispatchTestRequest()` directly.\n *\n * **Usage:**\n * ```ts\n * import { Client } from '@modelcontextprotocol/sdk/client/index.js';\n * import { InMemoryTransport } from '@modelcontextprotocol/sdk/inMemory.js';\n * import { AgentClient } from '@adcp/sdk';\n *\n * const [clientTransport, serverTransport] = InMemoryTransport.createLinkedPair();\n * const mcpClient = new Client({ name: 'test', version: '1.0.0' });\n * await Promise.all([\n * mcpClient.connect(clientTransport),\n * adcpServer.connect(serverTransport),\n * ]);\n *\n * const agent = AgentClient.fromMCPClient(mcpClient, {\n * validation: { requests: 'strict' },\n * });\n * const result = await agent.createMediaBuy({ ... });\n * ```\n *\n * **Unsupported methods on in-process instances:** `resolveCanonicalUrl`,\n * `getWebhookUrl`, `registerWebhook`, `unregisterWebhook` — these require HTTP\n * and will throw `Error` with a descriptive message. Use `getAgentId()` /\n * `getAgentName()` for identification instead.\n *\n * @param mcpClient - An already-connected MCP `Client` (see example above).\n * @param config - Optional narrowed config. HTTP-only fields are excluded.\n */\n static fromMCPClient(mcpClient: MCPClient, config: InProcessAgentClientConfig = {}): AgentClient {\n // Reject pre-connect clients up front — MCP `Client.transport` is only set\n // after `client.connect(transport)` resolves. A pre-connect client would\n // fail later inside `listTools()`/`callTool()` with an opaque error; the\n // up-front check produces a clean failure pointing at the construction site.\n if ((mcpClient as { transport?: unknown }).transport === undefined) {\n throw new Error(\n 'AgentClient.fromMCPClient: the supplied MCP Client is not connected. ' +\n 'Call `await client.connect(transport)` before passing it here.'\n );\n }\n const { agentName, agentId, ...rest } = config;\n // Use randomUUID for collision resistance — the agent ID feeds session\n // routing so a debug-label collision (~65k via Math.random base36) could\n // alias two distinct in-process agents in a concurrent test fleet.\n const id = agentId ?? `in-process-${randomUUID()}`;\n // The `adcp-in-process://` scheme is parseable as a URL so existing\n // url-validation paths don't crash, but distinguishable from real http(s)\n // so the SDK skips network discovery + SSRF checks. The protocol layer\n // routes on the presence of `_inProcessMcpClient`, not the URI shape.\n const syntheticAgent: AgentConfig = {\n id,\n name: agentName ?? 'in-process',\n agent_uri: `adcp-in-process://${id}`,\n protocol: 'mcp',\n _inProcessMcpClient: mcpClient,\n };\n return new AgentClient(syntheticAgent, rest as SingleAgentClientConfig);\n }\n\n /**\n * Absorb the session ids the server returned on `result.metadata`:\n * retain `contextId` whenever one is present, and retain a\n * `PendingTaskHandle` (taskId + contextId + skill name) only while the\n * response was non-terminal. Terminal responses clear `pendingTask` so\n * the next call starts a fresh server-side task.\n *\n * The `deferred` case is deliberately asymmetric: deferred results don't\n * surface a new `serverTaskId` on metadata (the caller holds a resume\n * token, not a task-id), so the partial-metadata guard preserves the\n * pre-defer handle — which is exactly what a later resume needs.\n */\n private retainSession<T>(result: TaskResult<T>): void {\n const meta = result.metadata;\n if (meta?.contextId) {\n this.currentContextId = meta.contextId;\n }\n if (NON_TERMINAL_STATES.has(meta?.status as string)) {\n if (meta?.serverTaskId && meta?.contextId && meta?.taskName) {\n this.pendingTask = {\n taskId: meta.serverTaskId,\n contextId: meta.contextId,\n taskName: meta.taskName,\n };\n }\n // Partial metadata preserves the pre-existing handle. Two distinct\n // cases land here: (1) the deferred resume-token path, where the\n // server intentionally omits a new `serverTaskId`; (2) a non-spec\n // A2A Task that lacks `contextId` or surfaces no `taskName` — by\n // design those are NOT retained as a fresh handle, since auto-\n // threading a partially-keyed taskId into a future call is exactly\n // the leak class #1590 narrows.\n } else {\n this.pendingTask = undefined;\n }\n }\n\n /**\n * Merge the caller's `TaskOptions` with the retained session ids so the\n * outbound request carries whatever session continuity is in scope.\n * Caller-supplied ids win (explicit > implicit); unset caller fields fall\n * back to the retained ones.\n *\n * **Auto-threading the retained taskId is narrowed.** Per A2A 0.3.0 §3.4,\n * `Message.taskId` continues the parent task — sending it implies \"this\n * message belongs to that task.\" We auto-thread `pendingTask.taskId` only\n * when the next call is plausibly a continuation: same skill name AND\n * same effective contextId. A different skill (different work) or a\n * switched contextId signals new work; the retained handle is stale, and\n * sending it produces \"Task not found\" against spec-compliant sellers.\n *\n * HITL flows (e.g., `createMediaBuy` → `input-required` → `createMediaBuy`\n * resume) match same-skill same-context and continue to thread as before.\n * Cross-skill or cross-conversation reuse of one `AgentClient` no longer\n * leaks taskIds — see #1585 / #1590 for the motivating compliance scenario.\n */\n private withSession(taskName: string, options?: TaskOptions): TaskOptions {\n const explicitSwitch = options?.contextId !== undefined && options.contextId !== this.currentContextId;\n const effectiveContextId = options?.contextId ?? this.currentContextId;\n const continuation =\n !explicitSwitch &&\n this.pendingTask !== undefined &&\n this.pendingTask.contextId === effectiveContextId &&\n this.pendingTask.taskName === taskName;\n return {\n ...options,\n contextId: effectiveContextId,\n taskId: options?.taskId ?? (continuation ? this.pendingTask?.taskId : undefined),\n };\n }\n\n /**\n * Handle webhook from agent (async task completion or notifications)\n *\n * @param payload - Webhook payload from agent\n * @param taskType - Task type (e.g create_media_buy) from url param or url part of the webhook delivery\n * @param operationId - Operation id (e.g used for client app to track the operation) from the param or url part of the webhook delivery\n * @param signature - Optional signature for verification (X-ADCP-Signature)\n * @param timestamp - Optional timestamp for verification (X-ADCP-Timestamp)\n * @param taskType - Task type from URL path (e.g., 'create_media_buy')\n * @returns Whether webhook was handled successfully\n */\n async handleWebhook(\n payload: MCPWebhookPayload | A2ATask | TaskStatusUpdateEvent,\n taskType: string,\n operationId: string,\n signature?: WebhookHeaderValue,\n timestamp?: WebhookHeaderValue,\n rawBody?: string | Buffer | Uint8Array\n ): Promise<boolean> {\n return this.client.handleWebhook(payload, taskType, operationId, signature, timestamp, rawBody);\n }\n\n /**\n * Verify and normalize an inbound webhook without dispatching handlers.\n */\n async verifyAndParseWebhook(options: VerifyAndParseWebhookOptions): Promise<WebhookParseResult> {\n return this.client.verifyAndParseWebhook(options);\n }\n\n /** Create a trusted-route HTTP receiver for this specific agent. */\n createWebhookHandler(adapter: WebhookHandlerAdapter = {}) {\n return this.client.createWebhookHandler(adapter);\n }\n\n /**\n * Verify webhook signature using HMAC-SHA256 per AdCP spec.\n *\n * Prefer passing the raw HTTP body string for correct cross-language interop.\n * Passing a parsed object still works but re-serializes with JSON.stringify,\n * which may not match the sender's byte representation.\n *\n * @param rawBodyOrPayload - Raw HTTP body string (preferred) or parsed payload object (deprecated)\n * @param signature - X-ADCP-Signature header value (format: \"sha256=...\")\n * @param timestamp - X-ADCP-Timestamp header value (Unix timestamp)\n * @returns true if signature is valid\n */\n verifyWebhookSignature(\n rawBodyOrPayload: string | Buffer | Uint8Array | unknown,\n signature: WebhookHeaderValue,\n timestamp: WebhookHeaderValue\n ): boolean {\n return this.client.verifyWebhookSignature(rawBodyOrPayload, signature, timestamp);\n }\n\n // ====== MEDIA BUY TASKS ======\n\n /**\n * Discover available advertising products.\n *\n * Response products expose only canonical `format_options[]`, regardless of\n * the seller's negotiated wire version. The SDK performs any required legacy\n * translation below this public boundary.\n *\n * Projection failures surface portably on `result.data.errors[]` and are\n * also mirrored on `result.data.projection.diagnostics` (structured\n * `source: 'sdk'` markers; codes mirror the spec's error-code\n * vocabulary plus three SDK-local codes — see the projection\n * module's `ProjectionDiagnostic` type for the full set).\n *\n * Protocol tooling that must inspect raw seller emission uses the explicit\n * deprecated `getProductsLegacy()` method.\n */\n async getProducts(\n params: CanonicalGetProductsRequest,\n inputHandler?: InputHandler,\n options?: CanonicalProjectionTaskOptions\n ): Promise<TaskResult<CanonicalGetProductsResponse>> {\n const result = await this.client.getProducts(params, inputHandler, {\n ...options,\n ...this.withSession('get_products', options),\n });\n\n this.retainSession(result);\n return result;\n }\n\n /** Discover products through the compact AdCP 3.2 catalog task. */\n async listProducts(\n params: ListProductsRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ListProductsResponse>> {\n const result = await this.client.executeTask(\n 'list_products',\n params,\n inputHandler,\n this.withSession('list_products', options)\n );\n this.retainSession(result);\n return result;\n }\n\n /** Request one or more compact AdCP 3.2 proposals. */\n async requestProposals(\n params: MutatingRequestInput<RequestProposalsRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<RequestProposalsResponse>> {\n const result = await this.client.executeTask(\n 'request_proposals',\n params,\n inputHandler,\n this.withSession('request_proposals', options)\n );\n if (\n result.data &&\n (result.data.outcome === 'products_available' || result.data.purchase_continuation !== undefined)\n ) {\n throw new TypeError(\n 'request_proposals returned the projection-only products_available outcome from a native compact seller.'\n );\n }\n this.retainSession(result);\n return result;\n }\n\n /** Decline outstanding proposals. */\n async declineProposals(\n params: MutatingRequestInput<DeclineProposalsRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<DeclineProposalsResponse>> {\n const result = await this.client.executeTask(\n 'decline_proposals',\n params,\n inputHandler,\n this.withSession('decline_proposals', options)\n );\n this.retainSession(result);\n return result;\n }\n\n /** Buy explicit products through the compact AdCP 3.2 lifecycle. */\n async buyProducts(\n params: MutatingRequestInput<BuyProductsRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<BuyProductsResponse>> {\n const result = await this.client.executeTask(\n 'buy_products',\n params,\n inputHandler,\n this.withSession('buy_products', options)\n );\n this.retainSession(result);\n return result;\n }\n\n /** Accept a proposal through the compact AdCP 3.2 lifecycle. */\n async acceptProposal(\n params: MutatingRequestInput<AcceptProposalRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<AcceptProposalResponse>> {\n const result = await this.client.executeTask(\n 'accept_proposal',\n params,\n inputHandler,\n this.withSession('accept_proposal', options)\n );\n this.retainSession(result);\n return result;\n }\n\n /** Apply a compact lifecycle control to an existing media buy. */\n async controlMediaBuy(\n params: MutatingRequestInput<ControlMediaBuyRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ControlMediaBuyResponse>> {\n const result = await this.client.executeTask(\n 'control_media_buy',\n params,\n inputHandler,\n this.withSession('control_media_buy', options)\n );\n this.retainSession(result);\n return result;\n }\n\n /** Record a governance-plan adjustment with idempotent 3.2 semantics. */\n async reportPlanAdjustment(\n params: MutatingRequestInput<ReportPlanAdjustmentRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ReportPlanAdjustmentResponse>> {\n const result = await this.client.executeTask(\n 'report_plan_adjustment',\n params,\n inputHandler,\n this.withSession('report_plan_adjustment', options)\n );\n this.retainSession(result);\n return result;\n }\n\n /** Declaratively replace agent-anchored notification subscriptions. */\n async syncAgentNotificationConfigs(\n params: MutatingRequestInput<SyncAgentNotificationConfigsRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<SyncAgentNotificationConfigsResponse>> {\n const result = await this.client.executeTask(\n 'sync_agent_notification_configs',\n params,\n inputHandler,\n this.withSession('sync_agent_notification_configs', options)\n );\n this.retainSession(result);\n return result;\n }\n\n /**\n * Revise or atomically finalize compact AdCP proposals.\n *\n * The SDK validates batch/cardinality rules and any explicit seller\n * capability declaration before transport, and auto-generates the\n * idempotency key when omitted.\n */\n async refineProposals(\n params: RefineProposalsInput,\n inputHandler?: InputHandler,\n options?: ProposalRefinementTaskOptions\n ): Promise<TaskResult<RefineProposalsResponse>> {\n const { proposalRefinementCapabilities, ...taskOptions } = options ?? {};\n const request = buildRefineProposalsRequest(\n params,\n proposalRefinementCapabilities,\n this.client.getWireAdcpVersion()\n );\n const result = (await this.client.executeTask(\n 'refine_proposals' as never,\n request as never,\n inputHandler,\n this.withSession('refine_proposals', taskOptions)\n )) as TaskResult<RefineProposalsResponse>;\n this.retainSession(result);\n if (result.success && result.status === 'completed') {\n const data = stripRefineProposalsSdkAnnotations(result.data);\n assertRefineProposalsResponse(request, data);\n return { ...result, data };\n }\n return result;\n }\n\n /** @deprecated Explicit raw-wire escape hatch for migration tooling. */\n async getProductsLegacy(\n params: GetProductsRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<GetProductsResponse>> {\n const result = await this.client.getProductsLegacy(params, inputHandler, {\n ...this.withSession('get_products', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /** @deprecated Migration-only access to a legacy named-format catalog. */\n async listCreativeFormatsLegacy(\n params: ListCreativeFormatsRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ListCreativeFormatsResponse>> {\n const result = await this.client.listCreativeFormatsLegacy(params, inputHandler, {\n ...this.withSession('list_creative_formats', options),\n });\n\n this.retainSession(result);\n\n return result;\n }\n\n /** @deprecated Migration-only access to legacy creative transformer declarations. */\n async listTransformersLegacy(\n params: ListTransformersRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ListTransformersResponse>> {\n const result = await this.client.listTransformersLegacy(params, inputHandler, {\n ...this.withSession('list_transformers', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Create a new media buy.\n *\n * Discover canonical `format_options[]` with `getProducts()`, select a\n * `format_option_id`, and send only canonical package and creative fields.\n * Compatibility translation for an older seller happens below this method.\n *\n * ```ts\n * const { data: { products } } = await agent.getProducts({ brief: '...' });\n * const product = products[0];\n * const format = product.format_options[0];\n *\n * await agent.createMediaBuy({\n * packages: [{\n * package_id: 'pkg-1',\n * product_id: product.product_id,\n * pricing_option_id: product.pricing_options[0].pricing_option_id,\n * format_option_refs: [{\n * scope: 'product',\n * format_option_id: format.format_option_id\n * }],\n * creatives: [{\n * creative_id: 'hero',\n * format_kind: format.format_kind,\n * format_option_ref: {\n * scope: 'product',\n * format_option_id: format.format_option_id\n * },\n * assets: { image: { url: 'https://cdn.example/hero.png' } }\n * }],\n * budget: { currency: 'USD', total: 5000 },\n * }],\n * // ...\n * });\n * ```\n *\n * **Inline creative fallback.** Sellers that do not advertise a creative\n * library (`supportsSyncCreatives(await agent.getCapabilities()) === false`)\n * can still accept package-scoped creative uploads when they advertise\n * `caps.features.inlineCreativeManagement`. Use\n * `inlineCreativesForPackages(packages, creatives, { assignments })` to\n * project `sync_creatives`-style creative assets into create-media-buy\n * package payloads without rewriting a raw `sync_creatives` call. If using\n * assignments for create payloads, give each package a stable key such as\n * `context.buyer_ref`, or pass a custom `packageId` resolver.\n *\n * Existing applications that still hold old named-format payloads must opt\n * into `createMediaBuyLegacy()` explicitly.\n */\n async createMediaBuy(\n params: MutatingRequestInput<CanonicalCreateMediaBuyRequest>,\n inputHandler?: InputHandler,\n options?: CreativeDeliveryTaskOptions\n ): Promise<TaskResult<CanonicalCreativeResponse<CreateMediaBuyResponse>>> {\n const result = await this.client.createMediaBuy(params, inputHandler, {\n ...this.withSession('create_media_buy', options),\n });\n\n this.retainSession(result);\n\n return result;\n }\n\n /**\n * @deprecated Use `createMediaBuy`; this raw compatibility surface accepts legacy creative `format_id`.\n * Projection-only options are ignored.\n */\n async createMediaBuyLegacy(\n params: MutatingRequestInput<CreateMediaBuyRequest>,\n inputHandler?: InputHandler,\n options?: CreativeDeliveryTaskOptions\n ): Promise<TaskResult<CreateMediaBuyResponse>> {\n const result = await this.client.createMediaBuyLegacy(params, inputHandler, {\n ...this.withSession('create_media_buy', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /** @internal Run deterministic legacy-create preflight before an application-owned atomic claim hook. */\n async createMediaBuyLegacyWithPreDispatch(\n params: MutatingRequestInput<CreateMediaBuyRequest>,\n beforeDispatch: BeforeProtocolDispatchHook<CreateMediaBuyResponse>,\n inputHandler?: InputHandler,\n options?: CreativeDeliveryTaskOptions\n ): Promise<TaskResult<CreateMediaBuyResponse>> {\n const result = await this.client.createMediaBuyLegacyWithPreDispatch(params, beforeDispatch, inputHandler, {\n ...this.withSession('create_media_buy', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Update an existing media buy.\n *\n * For sellers without a creative library but with\n * `caps.features.inlineCreativeManagement`, post-create creative replacement\n * can be represented as package-scoped inline `packages[].creatives` on this\n * request. Build the package patch with `inlineCreativesForPackages()` and\n * preflight it with `preflightUpdateMediaBuy(currentBuy, patch)` so\n * `available_actions[]` allows `replace_creative` before dispatch.\n * Use `format_kind` and `format_option_ref` for every creative in the patch;\n * the SDK handles any negotiated compatibility conversion.\n */\n async updateMediaBuy(\n params: MutatingRequestInput<CanonicalUpdateMediaBuyRequest>,\n inputHandler?: InputHandler,\n options?: CreativeDeliveryTaskOptions\n ): Promise<TaskResult<CanonicalCreativeResponse<UpdateMediaBuyResponse>>> {\n const result = await this.client.updateMediaBuy(params, inputHandler, {\n ...this.withSession('update_media_buy', options),\n });\n\n this.retainSession(result);\n\n return result;\n }\n\n /**\n * @deprecated Use `updateMediaBuy`; this raw compatibility surface accepts legacy creative `format_id`.\n * Projection-only options are ignored.\n */\n async updateMediaBuyLegacy(\n params: MutatingRequestInput<UpdateMediaBuyRequest>,\n inputHandler?: InputHandler,\n options?: CreativeDeliveryTaskOptions\n ): Promise<TaskResult<UpdateMediaBuyResponse>> {\n const result = await this.client.updateMediaBuyLegacy(params, inputHandler, {\n ...this.withSession('update_media_buy', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Sync creative assets into the seller's reusable creative library.\n *\n * This is library-scoped: assignments can reference packages, but a raw\n * `sync_creatives` request does not contain enough media-buy context for the\n * SDK to safely rewrite it into inline package creatives. When the seller\n * lacks `creative.has_creative_library` but does advertise\n * `media_buy.features.inline_creative_management`, use\n * `inlineCreativesForPackages()` with explicit package/media-buy context and\n * send a separate `create_media_buy` or `update_media_buy` request with its\n * own idempotency key. If neither capability is advertised, creative upload\n * is not available through this SDK helper surface.\n *\n * A sync request does not carry product declarations. When compatibility\n * translation needs seller selection metadata, pass\n * `options.creativeFormatProjection.selectorContainers` with the routed\n * package/product selectors. Assignments scope each creative to its package.\n */\n async syncCreatives(\n params: MutatingRequestInput<CanonicalSyncCreativesRequest>,\n inputHandler?: InputHandler,\n options?: SyncCreativesTaskOptions\n ): Promise<TaskResult<CanonicalCreativeResponse<SyncCreativesResponse>>> {\n const result = await this.client.syncCreatives(params, inputHandler, {\n ...this.withSession('sync_creatives', options),\n });\n\n this.retainSession(result);\n\n return result;\n }\n\n /**\n * @deprecated Use `syncCreatives`; this raw compatibility surface accepts legacy creative `format_id`.\n * Projection-only options are ignored.\n */\n async syncCreativesLegacy(\n params: MutatingRequestInput<SyncCreativesRequest>,\n inputHandler?: InputHandler,\n options?: SyncCreativesTaskOptions\n ): Promise<TaskResult<SyncCreativesResponse>> {\n const result = await this.client.syncCreativesLegacy(params, inputHandler, {\n ...this.withSession('sync_creatives', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * List creative assets\n */\n async listCreatives(\n params: CanonicalListCreativesRequest,\n inputHandler?: InputHandler,\n options?: CanonicalProjectionTaskOptions\n ): Promise<TaskResult<CanonicalListCreativesResponse>> {\n const result = await this.client.listCreatives(params, inputHandler, {\n ...options,\n ...this.withSession('list_creatives', options),\n });\n\n this.retainSession(result);\n return result;\n }\n\n /**\n * Return the unprojected `list_creatives` wire response.\n *\n * @deprecated Compatibility-only escape hatch for migration and protocol tooling.\n */\n async listCreativesLegacy(\n params: ListCreativesRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ListCreativesResponse>> {\n const result = await this.client.listCreativesLegacy(params, inputHandler, {\n ...this.withSession('list_creatives', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Get media buy status, creative approvals, and optional delivery snapshots\n */\n async getMediaBuys(\n params: GetMediaBuysRequest,\n inputHandler?: InputHandler,\n options?: CanonicalReadTaskOptions\n ): Promise<TaskResult<CanonicalCreativeResponse<GetMediaBuysResponse>>> {\n const result = await this.client.getMediaBuys(params, inputHandler, {\n ...this.withSession('get_media_buys', options),\n });\n\n this.retainSession(result);\n\n return result;\n }\n\n /**\n * Get media buy delivery information\n */\n async getMediaBuyDelivery(\n params: GetMediaBuyDeliveryRequest,\n inputHandler?: InputHandler,\n options?: CanonicalReadTaskOptions\n ): Promise<TaskResult<CanonicalCreativeResponse<GetMediaBuyDeliveryResponse>>> {\n const result = await this.client.getMediaBuyDelivery(params, inputHandler, {\n ...this.withSession('get_media_buy_delivery', options),\n });\n\n this.retainSession(result);\n\n return result;\n }\n\n /** Retrieve canonical creative-level and variant-level delivery metrics. */\n async getCreativeDelivery(\n params: GetCreativeDeliveryRequest,\n inputHandler?: InputHandler,\n options?: CanonicalProjectionTaskOptions\n ): Promise<TaskResult<CanonicalCreativeResponse<GetCreativeDeliveryResponse>>> {\n const result = await this.client.getCreativeDelivery(params, inputHandler, {\n ...options,\n ...this.withSession('get_creative_delivery', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Provide performance feedback\n */\n async providePerformanceFeedback(\n params: MutatingRequestInput<ProvidePerformanceFeedbackRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ProvidePerformanceFeedbackResponse>> {\n const result = await this.client.providePerformanceFeedback(params, inputHandler, {\n ...this.withSession('provide_performance_feedback', options),\n });\n\n this.retainSession(result);\n\n return result;\n }\n\n // ====== SIGNALS TASKS ======\n\n /**\n * Get audience signals\n */\n async getSignals(\n params: GetSignalsRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<GetSignalsResponse>> {\n const result = await this.client.getSignals(params, inputHandler, this.withSession('get_signals', options));\n\n this.retainSession(result);\n\n return result;\n }\n\n /**\n * Activate audience signals\n */\n async activateSignal(\n params: MutatingRequestInput<ActivateSignalRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ActivateSignalResponse>> {\n const result = await this.client.activateSignal(params, inputHandler, {\n ...this.withSession('activate_signal', options),\n });\n\n this.retainSession(result);\n\n return result;\n }\n\n // ====== PROTOCOL TASKS ======\n\n /**\n * Get AdCP capabilities (v3 tool call)\n */\n async getAdcpCapabilities(\n params: GetAdCPCapabilitiesRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<GetAdCPCapabilitiesResponse>> {\n const result = await this.client.getAdcpCapabilities(params, inputHandler, {\n ...this.withSession('get_adcp_capabilities', options),\n });\n\n this.retainSession(result);\n\n return result;\n }\n\n /**\n * Get normalized capabilities with v2/v3 fallback\n *\n * For v3 servers: calls get_adcp_capabilities tool\n * For v2 servers: builds synthetic capabilities from tool list\n */\n async getCapabilities(options?: Pick<TaskOptions, 'signal' | 'transport'>): Promise<AdcpCapabilities> {\n return this.client.getCapabilities(options);\n }\n\n /**\n * Return the seller's declared `adcp.idempotency.replay_ttl_seconds`, or\n * throw when a v3 seller omits the (required) declaration.\n *\n * Returns `undefined` for v2 agents — v2 pre-dates the idempotency envelope.\n */\n async getIdempotencyReplayTtlSeconds(): Promise<number | undefined> {\n return this.client.getIdempotencyReplayTtlSeconds();\n }\n\n /**\n * Assert that the seller's capabilities corroborate this client's pinned\n * AdCP major (per `getAdcpVersion()`). Throws `VersionUnsupportedError`\n * otherwise. Set `ADCP_ALLOW_V2=1` to bypass.\n */\n async requireSupportedMajor(taskType: string = 'request'): Promise<void> {\n return this.client.requireSupportedMajor(taskType);\n }\n\n /**\n * Deprecated alias for {@link requireSupportedMajor}.\n * @deprecated Use `requireSupportedMajor()` instead.\n */\n async requireV3(taskType: string = 'request'): Promise<void> {\n return this.client.requireSupportedMajor(taskType);\n }\n\n /** Preview a creative using canonical capability or creative-library identity. */\n async previewCreative(\n params: CanonicalPreviewCreativeRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<CanonicalPreviewCreativeResponse>> {\n const result = await this.client.previewCreative(params, inputHandler, {\n ...this.withSession('preview_creative', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /** @deprecated Migration-only access to legacy `format_id`-based creative preview. */\n async previewCreativeLegacy(\n params: PreviewCreativeRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<PreviewCreativeResponse>> {\n const result = await this.client.previewCreativeLegacy(params, inputHandler, {\n ...this.withSession('preview_creative', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /** @deprecated Migration-only access to legacy `target_format_id`-based creative building. */\n async buildCreativeLegacy(\n params: MutatingRequestInput<BuildCreativeRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<BuildCreativeResponse>> {\n const result = await this.client.buildCreativeLegacy(params, inputHandler, {\n ...this.withSession('build_creative', options),\n });\n this.retainSession(result);\n return result;\n }\n\n // ====== ACCOUNT & AUDIENCE TASKS ======\n\n /**\n * List accounts\n */\n async listAccounts(\n params: ListAccountsRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ListAccountsResponse>> {\n const result = await this.client.listAccounts(params, inputHandler, {\n ...this.withSession('list_accounts', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Sync accounts\n */\n async syncAccounts(\n params: MutatingRequestInput<SyncAccountsRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<SyncAccountsResponse>> {\n const result = await this.client.syncAccounts(params, inputHandler, {\n ...this.withSession('sync_accounts', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Sync audiences\n */\n async syncAudiences(\n params: MutatingRequestInput<SyncAudiencesRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<SyncAudiencesResponse>> {\n const result = await this.client.syncAudiences(params, inputHandler, {\n ...this.withSession('sync_audiences', options),\n });\n this.retainSession(result);\n return result;\n }\n\n // ====== GOVERNANCE TASKS ======\n\n /**\n * Create a property list\n */\n async createPropertyList(\n params: MutatingRequestInput<CreatePropertyListRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<CreatePropertyListResponse>> {\n const result = await this.client.createPropertyList(params, inputHandler, {\n ...this.withSession('create_property_list', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Get a property list\n */\n async getPropertyList(\n params: GetPropertyListRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<GetPropertyListResponse>> {\n const result = await this.client.getPropertyList(params, inputHandler, {\n ...this.withSession('get_property_list', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Update a property list\n */\n async updatePropertyList(\n params: MutatingRequestInput<UpdatePropertyListRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<UpdatePropertyListResponse>> {\n const result = await this.client.updatePropertyList(params, inputHandler, {\n ...this.withSession('update_property_list', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * List property lists\n */\n async listPropertyLists(\n params: ListPropertyListsRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ListPropertyListsResponse>> {\n const result = await this.client.listPropertyLists(params, inputHandler, {\n ...this.withSession('list_property_lists', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Delete a property list\n */\n async deletePropertyList(\n params: MutatingRequestInput<DeletePropertyListRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<DeletePropertyListResponse>> {\n const result = await this.client.deletePropertyList(params, inputHandler, {\n ...this.withSession('delete_property_list', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * List content standards\n */\n async listContentStandardsLegacy(\n params: ListContentStandardsRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ListContentStandardsResponse>> {\n const result = await this.client.listContentStandardsLegacy(params, inputHandler, {\n ...this.withSession('list_content_standards', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Get content standards\n */\n async getContentStandardsLegacy(\n params: GetContentStandardsRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<GetContentStandardsResponse>> {\n const result = await this.client.getContentStandardsLegacy(params, inputHandler, {\n ...this.withSession('get_content_standards', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Calibrate content against standards\n */\n async calibrateContentLegacy(\n params: MutatingRequestInput<CalibrateContentRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<CalibrateContentResponse>> {\n const result = await this.client.calibrateContentLegacy(params, inputHandler, {\n ...this.withSession('calibrate_content', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Validate content delivery\n */\n async validateContentDeliveryLegacy(\n params: ValidateContentDeliveryRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ValidateContentDeliveryResponse>> {\n const result = await this.client.validateContentDeliveryLegacy(params, inputHandler, {\n ...this.withSession('validate_content_delivery', options),\n });\n this.retainSession(result);\n return result;\n }\n\n // ====== SPONSORED INTELLIGENCE TASKS ======\n\n /**\n * Get an SI offering\n */\n async siGetOffering(\n params: SIGetOfferingRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<SIGetOfferingResponse>> {\n const result = await this.client.siGetOffering(params, inputHandler, {\n ...this.withSession('si_get_offering', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Initiate an SI session\n */\n async siInitiateSession(\n params: MutatingRequestInput<SIInitiateSessionRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<SIInitiateSessionResponse>> {\n const result = await this.client.siInitiateSession(params, inputHandler, {\n ...this.withSession('si_initiate_session', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Send a message in an SI session\n */\n async siSendMessage(\n params: MutatingRequestInput<SISendMessageRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<SISendMessageResponse>> {\n const result = await this.client.siSendMessage(params, inputHandler, {\n ...this.withSession('si_send_message', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Terminate an SI session\n */\n async siTerminateSession(\n params: SITerminateSessionRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<SITerminateSessionResponse>> {\n const result = await this.client.siTerminateSession(params, inputHandler, {\n ...this.withSession('si_terminate_session', options),\n });\n this.retainSession(result);\n return result;\n }\n\n // ====== CONVERSATION MANAGEMENT ======\n\n /**\n * Continue the conversation with a natural language message\n *\n * @param message - Natural language message to send to the agent\n * @param inputHandler - Handler for any clarification requests\n *\n * @example\n * ```typescript\n * const agent = multiClient.agent('my-agent');\n * await agent.getProducts({ brief: 'Tech products' });\n *\n * // Continue the conversation\n * const refined = await agent.continueConversation(\n * 'Focus only on laptops under $1000'\n * );\n * ```\n */\n async continueConversation<T = any>(\n message: string,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<T>> {\n if (!this.currentContextId) {\n throw new Error('No active conversation to continue. Start with a task method first.');\n }\n\n const result = await this.client.continueConversation<T>(message, this.currentContextId, inputHandler);\n\n this.retainSession(result);\n\n return result;\n }\n\n /**\n * Get the full conversation history\n */\n getHistory(): Message[] | undefined {\n if (!this.currentContextId) {\n return undefined;\n }\n return this.client.getConversationHistory(this.currentContextId);\n }\n\n /**\n * Clear the conversation context (start fresh).\n *\n * Equivalent to `resetContext()` — clears both the retained `contextId`\n * and any pending server-side `taskId`, and drops cached history.\n */\n clearContext(): void {\n this.resetContext();\n }\n\n /**\n * Reset conversation state. Call with no args to start a fresh\n * conversation; pass a seed to rehydrate a persisted session id (e.g.,\n * across a process restart).\n *\n * Always clears the retained pending-task handle — a persisted `contextId`\n * places the next send into the same server-side session, but any old\n * `taskId` is stale.\n */\n resetContext(seed?: string): void {\n if (this.currentContextId) {\n this.client.clearConversationHistory(this.currentContextId);\n }\n this.currentContextId = seed;\n this.pendingTask = undefined;\n }\n\n /**\n * Get the current conversation context ID\n */\n getContextId(): string | undefined {\n return this.currentContextId;\n }\n\n /**\n * Get the pending server-side `taskId` from the last non-terminal\n * response, if any. Populated when the server returned\n * `input-required` / `working` / `submitted` / `auth-required`;\n * cleared when the task reaches a terminal state.\n *\n * Persist this alongside `getContextId()` if you need to resume a\n * specific task (not just a conversation) across a process restart.\n */\n getPendingTaskId(): string | undefined {\n return this.pendingTask?.taskId;\n }\n\n /**\n * Set a specific conversation context ID\n */\n setContextId(contextId: string): void {\n this.currentContextId = contextId;\n }\n\n // ====== AGENT INFORMATION ======\n\n /**\n * Get the agent configuration\n */\n getAgent(): AgentConfig {\n return this.client.getAgent();\n }\n\n /**\n * Get the agent ID\n */\n getAgentId(): string {\n return this.client.getAgentId();\n }\n\n /**\n * Get the agent name\n */\n getAgentName(): string {\n return this.client.getAgentName();\n }\n\n /**\n * Get the agent protocol\n */\n getProtocol(): 'mcp' | 'a2a' {\n return this.client.getProtocol();\n }\n\n /**\n * Get the canonical base URL for this agent\n *\n * Returns the canonical URL if already resolved, or computes it synchronously.\n * For guaranteed canonical URL (especially for A2A), use resolveCanonicalUrl() first.\n */\n getCanonicalUrl(): string {\n return this.client.getCanonicalUrl();\n }\n\n /**\n * Resolve and return the canonical base URL for this agent\n *\n * For A2A: Fetches the agent card and uses its 'url' field\n * For MCP: Performs endpoint discovery and strips /mcp suffix\n *\n * **Not supported on in-process instances** (created via `fromMCPClient`).\n * Use `getAgentId()` / `getAgentName()` for identification instead.\n */\n async resolveCanonicalUrl(): Promise<string> {\n if (this._isInProcess) {\n throw new Error(\n 'resolveCanonicalUrl() is not supported on in-process AgentClient instances. ' +\n 'Use getAgentId() or getAgentName() to identify this client.'\n );\n }\n return this.client.resolveCanonicalUrl();\n }\n\n /**\n * Check if this agent is the same as another agent by canonical URL\n */\n isSameAgent(other: AgentConfig | AgentClient): boolean {\n if (other instanceof AgentClient) {\n // Compare using the other client's agent config\n return this.client.isSameAgent(other.getAgent());\n }\n return this.client.isSameAgent(other);\n }\n\n /**\n * Async version that resolves canonical URLs first for more accurate comparison\n */\n async isSameAgentResolved(other: AgentConfig | AgentClient): Promise<boolean> {\n const otherIsInProcess = other instanceof AgentClient && other._isInProcess;\n if (this._isInProcess || otherIsInProcess) {\n // In-process agents have no canonical URL to resolve — compare sentinel IDs instead.\n const thisId = this.getAgentId();\n const otherId = other instanceof AgentClient ? other.getAgentId() : other.id;\n return thisId === otherId;\n }\n if (other instanceof AgentClient) {\n // Resolve both sides first\n await this.resolveCanonicalUrl();\n await other.resolveCanonicalUrl();\n // Then compare using the resolved agent config\n return this.client.isSameAgent(other.getAgent());\n }\n return this.client.isSameAgentResolved(other);\n }\n\n /**\n * Get the fully resolved agent configuration with canonical URL\n */\n async getResolvedAgent(): Promise<AgentConfig> {\n return this.client.getResolvedAgent();\n }\n\n /**\n * Get agent information including capabilities\n */\n async getAgentInfo(options?: Pick<TaskOptions, 'signal' | 'transport'>) {\n return this.client.getAgentInfo(options);\n }\n\n /**\n * Check if there's an active conversation\n */\n hasActiveConversation(): boolean {\n return this.currentContextId !== undefined;\n }\n\n /**\n * Get active tasks for this agent\n */\n getActiveTasks() {\n return this.client.getActiveTasks();\n }\n\n // ====== GENERIC TASK EXECUTION ======\n\n /**\n * Execute any ADCP task by name with full type safety\n *\n * @example\n * ```typescript\n * // ✅ TYPE-SAFE: Automatic response type inference\n * const result = await agent.executeTask('get_products', params);\n * // result is TaskResult<CanonicalGetProductsResponse> - no casting needed!\n *\n * // ✅ CUSTOM TYPES: For non-standard tasks\n * const customResult = await agent.executeCustomTask<MyCustomResponse>('custom_task', params);\n * ```\n */\n async executeTask<K extends AdcpTaskName>(\n taskName: K,\n params: TaskRequestFor<K>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<TaskResponseTypeMap[K]>>;\n\n async executeTask(\n taskName: string,\n params: Record<string, unknown>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<unknown>> {\n switch (taskName) {\n case 'get_products':\n return this.getProducts(params as CanonicalGetProductsRequest, inputHandler, options);\n case 'refine_proposals':\n return (await this.refineProposals(\n params as RefineProposalsInput,\n inputHandler,\n options\n )) as TaskResult<unknown>;\n case 'create_media_buy':\n return (await this.createMediaBuy(\n params as MutatingRequestInput<CanonicalCreateMediaBuyRequest>,\n inputHandler,\n options\n )) as TaskResult<unknown>;\n case 'update_media_buy':\n return (await this.updateMediaBuy(\n params as MutatingRequestInput<CanonicalUpdateMediaBuyRequest>,\n inputHandler,\n options\n )) as TaskResult<unknown>;\n case 'sync_creatives':\n return (await this.syncCreatives(\n params as MutatingRequestInput<CanonicalSyncCreativesRequest>,\n inputHandler,\n options\n )) as TaskResult<unknown>;\n case 'list_creatives':\n return this.listCreatives(params as CanonicalListCreativesRequest, inputHandler, options);\n case 'get_media_buys':\n return this.getMediaBuys(params as GetMediaBuysRequest, inputHandler, options);\n case 'get_media_buy_delivery':\n return this.getMediaBuyDelivery(params as GetMediaBuyDeliveryRequest, inputHandler, options);\n case 'get_creative_delivery':\n return this.getCreativeDelivery(params as GetCreativeDeliveryRequest, inputHandler, options);\n }\n const result = await this.client.executeTaskLegacy(taskName, params, inputHandler, {\n ...this.withSession(taskName, options),\n });\n\n this.retainSession(result);\n\n return result;\n }\n\n /** Execute an extension task that is not part of the standard AdCP task set. */\n async executeCustomTask<T = unknown>(\n taskName: string,\n params: Record<string, unknown>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<T>> {\n const result = await this.client.executeCustomTask<T>(taskName, params, inputHandler, {\n ...this.withSession(taskName, options),\n });\n\n this.retainSession(result);\n return result;\n }\n\n /**\n * Explicit raw-task compatibility escape hatch for conformance and migration tooling.\n * @deprecated Application code should use typed primary methods or `executeTask()`.\n */\n async executeTaskLegacy<T = unknown>(\n taskName: string,\n params: Record<string, unknown>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<T>> {\n const result = await this.client.executeTaskLegacy<T>(taskName, params, inputHandler, {\n ...this.withSession(taskName, options),\n });\n this.retainSession(result);\n return result;\n }\n\n // ====== TASK MANAGEMENT DELEGATION ======\n\n /**\n * List all tasks for this agent\n */\n async listTasks(): Promise<TaskInfo[]> {\n return this.client.listTasks();\n }\n\n /**\n * Get detailed information about a specific task\n */\n async getTaskInfo(taskId: string): Promise<TaskInfo | null> {\n return this.client.getTaskInfo(taskId);\n }\n\n /**\n * Subscribe to task notifications for this agent\n */\n onTaskUpdate(callback: (task: TaskInfo) => void): () => void {\n return this.client.onTaskUpdate(callback);\n }\n\n /**\n * Subscribe to all task events\n */\n onTaskEvents(callbacks: {\n onTaskCreated?: (task: TaskInfo) => void;\n onTaskUpdated?: (task: TaskInfo) => void;\n onTaskCompleted?: (task: TaskInfo) => void;\n onTaskFailed?: (task: TaskInfo, error: string) => void;\n }): () => void {\n return this.client.onTaskEvents(callbacks);\n }\n\n /**\n * Generate webhook URL for a specific task and operation.\n *\n * **Not supported on in-process instances** (created via `fromMCPClient`).\n * In-process clients have no HTTP listener to receive webhook callbacks.\n */\n getWebhookUrl(taskType: string, operationId: string): string {\n if (this._isInProcess) {\n throw new Error(\n 'getWebhookUrl() is not supported on in-process AgentClient instances. ' +\n 'In-process clients have no HTTP listener for webhook delivery.'\n );\n }\n return this.client.getWebhookUrl(taskType, operationId);\n }\n\n /**\n * Register webhook for task notifications.\n *\n * **Not supported on in-process instances** (created via `fromMCPClient`).\n */\n async registerWebhook(webhookUrl: string, taskTypes?: string[]): Promise<void> {\n if (this._isInProcess) {\n throw new Error(\n 'registerWebhook() is not supported on in-process AgentClient instances. ' +\n 'In-process clients have no HTTP listener for webhook delivery.'\n );\n }\n return this.client.registerWebhook(webhookUrl, taskTypes);\n }\n\n /**\n * Unregister webhook notifications.\n *\n * **Not supported on in-process instances** (created via `fromMCPClient`).\n */\n async unregisterWebhook(): Promise<void> {\n if (this._isInProcess) {\n throw new Error(\n 'unregisterWebhook() is not supported on in-process AgentClient instances. ' +\n 'In-process clients have no HTTP listener for webhook delivery.'\n );\n }\n return this.client.unregisterWebhook();\n }\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../../../src/lib/core/AgentClient.ts"],"sourcesContent":["// Per-agent client wrapper with conversation context preservation\n\nimport type { Client as MCPClient } from '@modelcontextprotocol/sdk/client/index.js';\nimport { randomUUID } from 'node:crypto';\nimport type { AgentConfig } from '../types';\nimport type {\n MCPWebhookPayload,\n GetBrandIdentityRequest,\n GetBrandIdentityResponse,\n GetRightsRequest,\n GetRightsResponse,\n AcquireRightsRequest,\n AcquireRightsResponse,\n ContextMatchRequest,\n ContextMatchResponse,\n IdentityMatchRequest,\n IdentityMatchResponseRouterPublisher,\n} from '../types/core.generated';\nimport type { Task as A2ATask, TaskStatusUpdateEvent } from '@a2a-js/sdk';\nimport {\n SingleAgentClient,\n type CanonicalReadTaskOptions,\n type CreativeDeliveryTaskOptions,\n type SingleAgentClientConfig,\n type SyncCreativesTaskOptions,\n type VerifyAndParseWebhookOptions,\n type WebhookHandlerAdapter,\n type WebhookParseResult,\n} from './SingleAgentClient';\nimport type { InputHandler, TaskOptions, TaskResult, TaskInfo, Message } from './ConversationTypes';\nimport type { BeforeProtocolDispatchHook } from './TaskExecutor';\nimport { assertNativeRequestProposalsTask, guardNativeRequestProposalsCompletion } from './request-proposals-guard';\nimport type { AdcpCapabilities } from '../utils/capabilities';\nimport type { WebhookHeaderValue } from '../webhooks';\nimport type {\n GetProductsRequest,\n GetProductsResponse,\n ListProductsRequest,\n ListProductsResponse,\n RequestProposalsRequest,\n RequestProposalsResponse,\n DeclineProposalsRequest,\n DeclineProposalsResponse,\n BuyProductsRequest,\n BuyProductsResponse,\n AcceptProposalRequest,\n AcceptProposalResponse,\n ControlMediaBuyRequest,\n ControlMediaBuyResponse,\n ListCreativeFormatsRequest,\n ListCreativeFormatsResponse,\n CreateMediaBuyRequest,\n CreateMediaBuyResponse,\n UpdateMediaBuyRequest,\n UpdateMediaBuyResponse,\n SyncCreativesRequest,\n SyncCreativesResponse,\n ListCreativesRequest,\n ListCreativesResponse,\n GetMediaBuysRequest,\n GetMediaBuysResponse,\n GetMediaBuyDeliveryRequest,\n GetMediaBuyDeliveryResponse,\n GetCreativeDeliveryRequest,\n GetCreativeDeliveryResponse,\n ProvidePerformanceFeedbackRequest,\n ProvidePerformanceFeedbackResponse,\n GetSignalsRequest,\n GetSignalsResponse,\n ActivateSignalRequest,\n ActivateSignalResponse,\n GetAdCPCapabilitiesRequest,\n GetAdCPCapabilitiesResponse,\n PreviewCreativeRequest,\n PreviewCreativeResponse,\n BuildCreativeRequest,\n BuildCreativeResponse,\n ListAccountsRequest,\n ListAccountsResponse,\n SyncAccountsRequest,\n SyncAccountsResponse,\n SyncAudiencesRequest,\n SyncAudiencesResponse,\n CreatePropertyListRequest,\n CreatePropertyListResponse,\n GetPropertyListRequest,\n GetPropertyListResponse,\n UpdatePropertyListRequest,\n UpdatePropertyListResponse,\n ListPropertyListsRequest,\n ListPropertyListsResponse,\n DeletePropertyListRequest,\n DeletePropertyListResponse,\n ListContentStandardsRequest,\n ListContentStandardsResponse,\n GetContentStandardsRequest,\n GetContentStandardsResponse,\n CalibrateContentRequest,\n CalibrateContentResponse,\n ValidateContentDeliveryRequest,\n ValidateContentDeliveryResponse,\n SIGetOfferingRequest,\n SIGetOfferingResponse,\n SIInitiateSessionRequest,\n SIInitiateSessionResponse,\n SISendMessageRequest,\n SISendMessageResponse,\n SITerminateSessionRequest,\n SITerminateSessionResponse,\n CreateContentStandardsResponse,\n CreateContentStandardsRequest,\n SyncPlansRequest,\n SyncPlansResponse,\n CheckGovernanceRequest,\n CheckGovernanceResponse,\n ReportPlanOutcomeRequest,\n ReportPlanOutcomeResponse,\n ReportPlanAdjustmentRequest,\n ReportPlanAdjustmentResponse,\n GetPlanAuditLogsRequest,\n GetPlanAuditLogsResponse,\n ListTransformersRequest,\n ListTransformersResponse,\n SyncAgentNotificationConfigsRequest,\n SyncAgentNotificationConfigsResponse,\n} from '../types/tools.generated';\nimport type { MutatingRequestInput } from '../utils/idempotency';\nimport { MediaBuyLifecycleCoordinator, type MediaBuyLifecycleCoordinatorOptions } from '../media-buy/compatibility';\nimport { buildRefineProposalsRequest } from '../negotiation/buyer';\nimport { assertRefineProposalsResponse } from '../negotiation/verification';\nimport type {\n ProposalRefinementCapabilities,\n RefineProposalsInput,\n RefineProposalsResponse,\n} from '../negotiation/types';\nimport type { V1Product } from '../v2/projection/types';\nimport type { LegacyFormatConverter } from '../v2/projection/v1-to-v2';\nimport type { ProjectionCatalogSnapshot } from '../v2/projection/catalog-snapshot';\nimport type {\n CanonicalCreateMediaBuyRequest,\n CanonicalCreativeResponse,\n CanonicalGetProductsRequest,\n CanonicalGetProductsResponse,\n CanonicalListCreativesRequest,\n CanonicalListCreativesResponse,\n CanonicalPreviewCreativeRequest,\n CanonicalPreviewCreativeResponse,\n CanonicalProduct,\n CanonicalSyncCreativesRequest,\n CanonicalUpdateMediaBuyRequest,\n} from '../v2/projection/creative-delivery';\nexport type { CanonicalGetProductsResponse } from '../v2/projection/creative-delivery';\n\nexport type CanonicalProjectionTaskOptions = TaskOptions & {\n /** Migration escape hatch for seller-specific legacy refs absent from the bundled registry. */\n legacyFormatConverter?: LegacyFormatConverter;\n /** Pre-resolved exact-owner publisher/community catalogs, highest precedence first. */\n projectionCatalogs?: readonly ProjectionCatalogSnapshot[];\n};\n\nexport type ProposalRefinementTaskOptions = TaskOptions & {\n /** Explicit seller declaration from media_buy.proposal_refinement. */\n proposalRefinementCapabilities?: ProposalRefinementCapabilities;\n};\n\nfunction stripRefineProposalsSdkAnnotations(data: RefineProposalsResponse): RefineProposalsResponse {\n const canonical = { ...(data as RefineProposalsResponse & { success?: unknown; _message?: unknown }) };\n delete canonical.success;\n delete canonical._message;\n return canonical;\n}\n\n/**\n * Projection metadata attached to canonical `get_products` responses.\n *\n * Present whenever projection ran (the default). Portable projection\n * advisories are added to the standard `data.errors[]` array; this envelope\n * is a convenience view for SDK-local inspection. Absence of diagnostics means every product's\n * `format_options[]` is fully populated (clean catalog match) or was\n * already v2-shaped on the wire.\n */\n/**\n * @deprecated The primary SDK surface is canonical-only. Use\n * {@link CanonicalGetProductsResponse}. Raw legacy wire shapes remain\n * available only through the explicit `getProductsLegacy()` escape hatch.\n */\nexport type V2AugmentedGetProductsResponse = CanonicalGetProductsResponse;\n\n/**\n * Type mapping for task names to their response types\n * Enables type-safe generic executeTask() calls\n */\nexport type TaskResponseTypeMap = {\n get_products: CanonicalGetProductsResponse;\n list_products: ListProductsResponse;\n request_proposals: RequestProposalsResponse;\n refine_proposals: RefineProposalsResponse;\n decline_proposals: DeclineProposalsResponse;\n buy_products: BuyProductsResponse;\n accept_proposal: AcceptProposalResponse;\n control_media_buy: ControlMediaBuyResponse;\n create_media_buy: CanonicalCreativeResponse<CreateMediaBuyResponse>;\n update_media_buy: CanonicalCreativeResponse<UpdateMediaBuyResponse>;\n sync_creatives: CanonicalCreativeResponse<SyncCreativesResponse>;\n list_creatives: CanonicalListCreativesResponse;\n get_media_buys: CanonicalCreativeResponse<GetMediaBuysResponse>;\n get_media_buy_delivery: CanonicalCreativeResponse<GetMediaBuyDeliveryResponse>;\n get_creative_delivery: CanonicalCreativeResponse<GetCreativeDeliveryResponse>;\n provide_performance_feedback: ProvidePerformanceFeedbackResponse;\n get_signals: GetSignalsResponse;\n activate_signal: ActivateSignalResponse;\n get_adcp_capabilities: GetAdCPCapabilitiesResponse;\n list_accounts: ListAccountsResponse;\n sync_accounts: SyncAccountsResponse;\n sync_audiences: SyncAudiencesResponse;\n create_property_list: CreatePropertyListResponse;\n get_property_list: GetPropertyListResponse;\n update_property_list: UpdatePropertyListResponse;\n list_property_lists: ListPropertyListsResponse;\n delete_property_list: DeletePropertyListResponse;\n si_get_offering: SIGetOfferingResponse;\n si_initiate_session: SIInitiateSessionResponse;\n si_send_message: SISendMessageResponse;\n si_terminate_session: SITerminateSessionResponse;\n get_brand_identity: GetBrandIdentityResponse;\n sync_plans: SyncPlansResponse;\n check_governance: CheckGovernanceResponse;\n report_plan_outcome: ReportPlanOutcomeResponse;\n report_plan_adjustment: ReportPlanAdjustmentResponse;\n get_plan_audit_logs: GetPlanAuditLogsResponse;\n context_match: ContextMatchResponse;\n identity_match: IdentityMatchResponseRouterPublisher;\n sync_agent_notification_configs: SyncAgentNotificationConfigsResponse;\n};\n\n/**\n * Valid ADCP task names\n */\nexport type AdcpTaskName = keyof TaskResponseTypeMap;\n\n/** Exact request mapping paired with {@link TaskResponseTypeMap}. */\nexport type TaskRequestTypeMap = {\n get_products: CanonicalGetProductsRequest;\n list_products: ListProductsRequest;\n request_proposals: MutatingRequestInput<RequestProposalsRequest>;\n refine_proposals: RefineProposalsInput;\n decline_proposals: MutatingRequestInput<DeclineProposalsRequest>;\n buy_products: MutatingRequestInput<BuyProductsRequest>;\n accept_proposal: MutatingRequestInput<AcceptProposalRequest>;\n control_media_buy: MutatingRequestInput<ControlMediaBuyRequest>;\n create_media_buy: MutatingRequestInput<CanonicalCreateMediaBuyRequest>;\n update_media_buy: MutatingRequestInput<CanonicalUpdateMediaBuyRequest>;\n sync_creatives: MutatingRequestInput<CanonicalSyncCreativesRequest>;\n list_creatives: CanonicalListCreativesRequest;\n get_media_buys: GetMediaBuysRequest;\n get_media_buy_delivery: GetMediaBuyDeliveryRequest;\n get_creative_delivery: GetCreativeDeliveryRequest;\n provide_performance_feedback: MutatingRequestInput<ProvidePerformanceFeedbackRequest>;\n get_signals: GetSignalsRequest;\n activate_signal: MutatingRequestInput<ActivateSignalRequest>;\n get_adcp_capabilities: GetAdCPCapabilitiesRequest;\n list_accounts: ListAccountsRequest;\n sync_accounts: MutatingRequestInput<SyncAccountsRequest>;\n sync_audiences: MutatingRequestInput<SyncAudiencesRequest>;\n create_property_list: MutatingRequestInput<CreatePropertyListRequest>;\n get_property_list: GetPropertyListRequest;\n update_property_list: MutatingRequestInput<UpdatePropertyListRequest>;\n list_property_lists: ListPropertyListsRequest;\n delete_property_list: MutatingRequestInput<DeletePropertyListRequest>;\n si_get_offering: SIGetOfferingRequest;\n si_initiate_session: MutatingRequestInput<SIInitiateSessionRequest>;\n si_send_message: MutatingRequestInput<SISendMessageRequest>;\n si_terminate_session: SITerminateSessionRequest;\n get_brand_identity: GetBrandIdentityRequest;\n sync_plans: MutatingRequestInput<SyncPlansRequest>;\n check_governance: CheckGovernanceRequest;\n report_plan_outcome: MutatingRequestInput<ReportPlanOutcomeRequest>;\n report_plan_adjustment: MutatingRequestInput<ReportPlanAdjustmentRequest>;\n get_plan_audit_logs: GetPlanAuditLogsRequest;\n context_match: ContextMatchRequest;\n identity_match: IdentityMatchRequest;\n sync_agent_notification_configs: MutatingRequestInput<SyncAgentNotificationConfigsRequest>;\n};\n\nexport type TaskRequestFor<K extends AdcpTaskName> = TaskRequestTypeMap[K];\n\n/**\n * Configuration for `AgentClient.fromMCPClient()`.\n *\n * A narrowed subset of `SingleAgentClientConfig` — only includes options that\n * are meaningful for in-process transport. HTTP-only fields (`userAgent`, `headers`,\n * `webhookUrlTemplate`, OAuth paths) are excluded because they have no effect when\n * the client dispatches directly to an in-process MCP `Client`.\n *\n * The fields you most likely want:\n * - `validation` — `requests`/`responses` validation mode (`strict` | `warn` | `off`)\n * - `governance` — buyer-side governance config\n * - `requireV3ForMutations` — enforce AdCP v3 before dispatching mutating tools\n */\nexport type InProcessAgentClientConfig = Pick<\n SingleAgentClientConfig,\n | 'adcpVersion'\n | 'wireAdcpVersion'\n | 'versionEnvelope'\n | 'debug'\n | 'validation'\n | 'governance'\n | 'onActivity'\n | 'legacyFormatConverter'\n | 'projectionCatalogs'\n | 'canonicalFormatLegacyResolver'\n | 'validateFeatures'\n | 'requireV3ForMutations'\n | 'allowV2'\n | 'workingTimeout'\n | 'defaultMaxClarifications'\n | 'persistConversations'\n> & {\n /**\n * Human-readable name for this agent, used in debug logs and\n * `getAgentName()`. Defaults to `'in-process'`.\n */\n agentName?: string;\n /**\n * Stable identifier for this agent, used in `getAgentId()`.\n * Defaults to a random string prefixed with `'in-process-'`.\n */\n agentId?: string;\n};\n\n/**\n * Task result states where the server is still holding the task open. While\n * the last response was in one of these states the AgentClient retains the\n * server-returned `taskId` so a follow-up call can resume the same\n * server-side task (HITL approvals, long-running workflows).\n */\nconst NON_TERMINAL_STATES: ReadonlySet<string> = new Set([\n 'working',\n 'input-required',\n 'submitted',\n 'auth-required',\n 'deferred',\n]);\n\n/**\n * Per-agent client that maintains conversation context across calls.\n *\n * **One AgentClient per conversation.** The client retains `contextId` and\n * `pendingTaskId` in-memory so subsequent calls ride the same A2A session.\n * Sharing an AgentClient across concurrent conversations will interleave\n * their contexts (last-write-wins). Create a fresh AgentClient — or call\n * {@link resetContext} — per logical conversation.\n *\n * **Resume across process restart** — persist `getContextId()` after a\n * non-terminal response and pass it to `resetContext(id)` on rehydration.\n * The server will route the next call back to the same session.\n */\n/**\n * Retained server-side task handle. Paired with the `contextId` and skill\n * name under which it was returned so {@link AgentClient.withSession} only\n * auto-threads it when the next call is plausibly a continuation of the\n * SAME task (same skill, same conversation). A different skill or switched\n * contextId signals new work — sending the retained handle in that case\n * produces \"Task not found\" against spec-compliant A2A sellers (per A2A\n * 0.3.0 §3.4 — Message.taskId continues the parent task).\n */\ninterface PendingTaskHandle {\n taskId: string;\n contextId: string;\n taskName: string;\n}\n\nexport class AgentClient {\n private client: SingleAgentClient;\n private currentContextId?: string;\n private pendingTask?: PendingTaskHandle;\n private readonly _isInProcess: boolean;\n\n constructor(\n private agent: AgentConfig,\n private config: SingleAgentClientConfig = {}\n ) {\n this.client = new SingleAgentClient(agent, config);\n this._isInProcess = agent._inProcessMcpClient !== undefined;\n }\n\n /**\n * Internal access to the underlying `TaskExecutor`. Used by the storyboard\n * runner's `pollTaskCompletion` race so it can poll AdCP `tasks/get` against\n * the agent's transport (see `src/lib/testing/storyboard/runner.ts`'s\n * `resolveTaskCompletionOutputs`). Without this surface the runner sees\n * `executor: undefined` on AgentClient and silently falls back to webhook-\n * only racing — which times out for storyboard fixtures that don't address\n * a runner-controlled webhook URL.\n *\n * Not part of the documented client API; production code goes through the\n * tool-specific methods on `AgentClient` / `AdCPClient`. The shape may\n * change without notice if the runner's polling contract evolves.\n *\n * @internal\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- runtime-internal accessor\n get executor(): any {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any -- reach-through to the underlying executor\n return (this.client as any).executor;\n }\n\n /** Poll one authoritative server task status for compatibility coordinators. @internal */\n getTaskStatus(\n taskId: string,\n transport?: import('../protocols').TransportOptions,\n signal?: AbortSignal\n ): Promise<TaskInfo> {\n return this.executor.getTaskStatus(this.agent, taskId, transport, signal) as Promise<TaskInfo>;\n }\n\n /**\n * Returns the AdCP protocol version this client speaks. Mirrors\n * `SingleAgentClient.getAdcpVersion()`. See {@link SingleAgentClientConfig.adcpVersion}.\n */\n getAdcpVersion(): string {\n return this.client.getAdcpVersion();\n }\n\n /**\n * Negotiate one compact-first media-buy facade for this seller.\n *\n * Compact tools are preferred when advertised. Established projections\n * are selected before dispatch and expose exact provenance/loss metadata;\n * the coordinator never switches mutation tools after a transport failure.\n */\n async negotiateMediaBuyLifecycle(\n options: MediaBuyLifecycleCoordinatorOptions = {}\n ): Promise<MediaBuyLifecycleCoordinator> {\n return MediaBuyLifecycleCoordinator.negotiate(this, options);\n }\n\n /**\n * Create an `AgentClient` backed by a pre-connected MCP `Client` instead of\n * an HTTP endpoint. Useful for in-process compliance testing without spinning\n * up a loopback HTTP server.\n *\n * **MCP only.** This factory wraps an MCP `Client` from\n * `@modelcontextprotocol/sdk`. There is no equivalent in-process bridge for\n * A2A today — for A2A agents, run them on a loopback HTTP server and use the\n * standard `AgentClient` constructor with the agent's `agent_uri`.\n *\n * **What this gives you over `dispatchTestRequest`:**\n * All client-side pipeline stages still apply — idempotency key auto-injection,\n * request/response schema validation hooks, governance middleware, and the typed\n * `TaskResult<T>` discriminated-union response shape. None of these apply when\n * calling `dispatchTestRequest()` directly.\n *\n * **Usage:**\n * ```ts\n * import { Client } from '@modelcontextprotocol/sdk/client/index.js';\n * import { InMemoryTransport } from '@modelcontextprotocol/sdk/inMemory.js';\n * import { AgentClient } from '@adcp/sdk';\n *\n * const [clientTransport, serverTransport] = InMemoryTransport.createLinkedPair();\n * const mcpClient = new Client({ name: 'test', version: '1.0.0' });\n * await Promise.all([\n * mcpClient.connect(clientTransport),\n * adcpServer.connect(serverTransport),\n * ]);\n *\n * const agent = AgentClient.fromMCPClient(mcpClient, {\n * validation: { requests: 'strict' },\n * });\n * const result = await agent.createMediaBuy({ ... });\n * ```\n *\n * **Unsupported methods on in-process instances:** `resolveCanonicalUrl`,\n * `getWebhookUrl`, `registerWebhook`, `unregisterWebhook` — these require HTTP\n * and will throw `Error` with a descriptive message. Use `getAgentId()` /\n * `getAgentName()` for identification instead.\n *\n * @param mcpClient - An already-connected MCP `Client` (see example above).\n * @param config - Optional narrowed config. HTTP-only fields are excluded.\n */\n static fromMCPClient(mcpClient: MCPClient, config: InProcessAgentClientConfig = {}): AgentClient {\n // Reject pre-connect clients up front — MCP `Client.transport` is only set\n // after `client.connect(transport)` resolves. A pre-connect client would\n // fail later inside `listTools()`/`callTool()` with an opaque error; the\n // up-front check produces a clean failure pointing at the construction site.\n if ((mcpClient as { transport?: unknown }).transport === undefined) {\n throw new Error(\n 'AgentClient.fromMCPClient: the supplied MCP Client is not connected. ' +\n 'Call `await client.connect(transport)` before passing it here.'\n );\n }\n const { agentName, agentId, ...rest } = config;\n // Use randomUUID for collision resistance — the agent ID feeds session\n // routing so a debug-label collision (~65k via Math.random base36) could\n // alias two distinct in-process agents in a concurrent test fleet.\n const id = agentId ?? `in-process-${randomUUID()}`;\n // The `adcp-in-process://` scheme is parseable as a URL so existing\n // url-validation paths don't crash, but distinguishable from real http(s)\n // so the SDK skips network discovery + SSRF checks. The protocol layer\n // routes on the presence of `_inProcessMcpClient`, not the URI shape.\n const syntheticAgent: AgentConfig = {\n id,\n name: agentName ?? 'in-process',\n agent_uri: `adcp-in-process://${id}`,\n protocol: 'mcp',\n _inProcessMcpClient: mcpClient,\n };\n return new AgentClient(syntheticAgent, rest as SingleAgentClientConfig);\n }\n\n /**\n * Absorb the session ids the server returned on `result.metadata`:\n * retain `contextId` whenever one is present, and retain a\n * `PendingTaskHandle` (taskId + contextId + skill name) only while the\n * response was non-terminal. Terminal responses clear `pendingTask` so\n * the next call starts a fresh server-side task.\n *\n * The `deferred` case is deliberately asymmetric: deferred results don't\n * surface a new `serverTaskId` on metadata (the caller holds a resume\n * token, not a task-id), so the partial-metadata guard preserves the\n * pre-defer handle — which is exactly what a later resume needs.\n */\n private retainSession<T>(result: TaskResult<T>): void {\n const meta = result.metadata;\n if (meta?.contextId) {\n this.currentContextId = meta.contextId;\n }\n if (NON_TERMINAL_STATES.has(meta?.status as string)) {\n if (meta?.serverTaskId && meta?.contextId && meta?.taskName) {\n this.pendingTask = {\n taskId: meta.serverTaskId,\n contextId: meta.contextId,\n taskName: meta.taskName,\n };\n }\n // Partial metadata preserves the pre-existing handle. Two distinct\n // cases land here: (1) the deferred resume-token path, where the\n // server intentionally omits a new `serverTaskId`; (2) a non-spec\n // A2A Task that lacks `contextId` or surfaces no `taskName` — by\n // design those are NOT retained as a fresh handle, since auto-\n // threading a partially-keyed taskId into a future call is exactly\n // the leak class #1590 narrows.\n } else {\n this.pendingTask = undefined;\n }\n }\n\n /**\n * Merge the caller's `TaskOptions` with the retained session ids so the\n * outbound request carries whatever session continuity is in scope.\n * Caller-supplied ids win (explicit > implicit); unset caller fields fall\n * back to the retained ones.\n *\n * **Auto-threading the retained taskId is narrowed.** Per A2A 0.3.0 §3.4,\n * `Message.taskId` continues the parent task — sending it implies \"this\n * message belongs to that task.\" We auto-thread `pendingTask.taskId` only\n * when the next call is plausibly a continuation: same skill name AND\n * same effective contextId. A different skill (different work) or a\n * switched contextId signals new work; the retained handle is stale, and\n * sending it produces \"Task not found\" against spec-compliant sellers.\n *\n * HITL flows (e.g., `createMediaBuy` → `input-required` → `createMediaBuy`\n * resume) match same-skill same-context and continue to thread as before.\n * Cross-skill or cross-conversation reuse of one `AgentClient` no longer\n * leaks taskIds — see #1585 / #1590 for the motivating compliance scenario.\n */\n private withSession(taskName: string, options?: TaskOptions): TaskOptions {\n const explicitSwitch = options?.contextId !== undefined && options.contextId !== this.currentContextId;\n const effectiveContextId = options?.contextId ?? this.currentContextId;\n const continuation =\n !explicitSwitch &&\n this.pendingTask !== undefined &&\n this.pendingTask.contextId === effectiveContextId &&\n this.pendingTask.taskName === taskName;\n return {\n ...options,\n contextId: effectiveContextId,\n taskId: options?.taskId ?? (continuation ? this.pendingTask?.taskId : undefined),\n };\n }\n\n /**\n * Handle webhook from agent (async task completion or notifications)\n *\n * @param payload - Webhook payload from agent\n * @param taskType - Task type (e.g create_media_buy) from url param or url part of the webhook delivery\n * @param operationId - Operation id (e.g used for client app to track the operation) from the param or url part of the webhook delivery\n * @param signature - Optional signature for verification (X-ADCP-Signature)\n * @param timestamp - Optional timestamp for verification (X-ADCP-Timestamp)\n * @param taskType - Task type from URL path (e.g., 'create_media_buy')\n * @returns Whether webhook was handled successfully\n */\n async handleWebhook(\n payload: MCPWebhookPayload | A2ATask | TaskStatusUpdateEvent,\n taskType: string,\n operationId: string,\n signature?: WebhookHeaderValue,\n timestamp?: WebhookHeaderValue,\n rawBody?: string | Buffer | Uint8Array\n ): Promise<boolean> {\n return this.client.handleWebhook(payload, taskType, operationId, signature, timestamp, rawBody);\n }\n\n /**\n * Verify and normalize an inbound webhook without dispatching handlers.\n */\n async verifyAndParseWebhook(options: VerifyAndParseWebhookOptions): Promise<WebhookParseResult> {\n return this.client.verifyAndParseWebhook(options);\n }\n\n /** Create a trusted-route HTTP receiver for this specific agent. */\n createWebhookHandler(adapter: WebhookHandlerAdapter = {}) {\n return this.client.createWebhookHandler(adapter);\n }\n\n /**\n * Verify webhook signature using HMAC-SHA256 per AdCP spec.\n *\n * Prefer passing the raw HTTP body string for correct cross-language interop.\n * Passing a parsed object still works but re-serializes with JSON.stringify,\n * which may not match the sender's byte representation.\n *\n * @param rawBodyOrPayload - Raw HTTP body string (preferred) or parsed payload object (deprecated)\n * @param signature - X-ADCP-Signature header value (format: \"sha256=...\")\n * @param timestamp - X-ADCP-Timestamp header value (Unix timestamp)\n * @returns true if signature is valid\n */\n verifyWebhookSignature(\n rawBodyOrPayload: string | Buffer | Uint8Array | unknown,\n signature: WebhookHeaderValue,\n timestamp: WebhookHeaderValue\n ): boolean {\n return this.client.verifyWebhookSignature(rawBodyOrPayload, signature, timestamp);\n }\n\n // ====== MEDIA BUY TASKS ======\n\n /**\n * Discover available advertising products.\n *\n * Response products expose only canonical `format_options[]`, regardless of\n * the seller's negotiated wire version. The SDK performs any required legacy\n * translation below this public boundary.\n *\n * Projection failures surface portably on `result.data.errors[]` and are\n * also mirrored on `result.data.projection.diagnostics` (structured\n * `source: 'sdk'` markers; codes mirror the spec's error-code\n * vocabulary plus three SDK-local codes — see the projection\n * module's `ProjectionDiagnostic` type for the full set).\n *\n * Protocol tooling that must inspect raw seller emission uses the explicit\n * deprecated `getProductsLegacy()` method.\n */\n async getProducts(\n params: CanonicalGetProductsRequest,\n inputHandler?: InputHandler,\n options?: CanonicalProjectionTaskOptions\n ): Promise<TaskResult<CanonicalGetProductsResponse>> {\n const result = await this.client.getProducts(params, inputHandler, {\n ...options,\n ...this.withSession('get_products', options),\n });\n\n this.retainSession(result);\n return result;\n }\n\n /** Discover products through the compact AdCP 3.2 catalog task. */\n async listProducts(\n params: ListProductsRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ListProductsResponse>> {\n const result = await this.client.executeTask(\n 'list_products',\n params,\n inputHandler,\n this.withSession('list_products', options)\n );\n this.retainSession(result);\n return result;\n }\n\n /** Request one or more compact AdCP 3.2 proposals. */\n async requestProposals(\n params: MutatingRequestInput<RequestProposalsRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<RequestProposalsResponse>> {\n const result = await this.client.executeTask(\n 'request_proposals',\n params,\n inputHandler,\n this.withSession('request_proposals', options)\n );\n guardNativeRequestProposalsCompletion(result);\n this.retainSession(result);\n return result;\n }\n\n /** Decline outstanding proposals. */\n async declineProposals(\n params: MutatingRequestInput<DeclineProposalsRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<DeclineProposalsResponse>> {\n const result = await this.client.executeTask(\n 'decline_proposals',\n params,\n inputHandler,\n this.withSession('decline_proposals', options)\n );\n this.retainSession(result);\n return result;\n }\n\n /** Buy explicit products through the compact AdCP 3.2 lifecycle. */\n async buyProducts(\n params: MutatingRequestInput<BuyProductsRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<BuyProductsResponse>> {\n const result = await this.client.executeTask(\n 'buy_products',\n params,\n inputHandler,\n this.withSession('buy_products', options)\n );\n this.retainSession(result);\n return result;\n }\n\n /** Accept a proposal through the compact AdCP 3.2 lifecycle. */\n async acceptProposal(\n params: MutatingRequestInput<AcceptProposalRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<AcceptProposalResponse>> {\n const result = await this.client.executeTask(\n 'accept_proposal',\n params,\n inputHandler,\n this.withSession('accept_proposal', options)\n );\n this.retainSession(result);\n return result;\n }\n\n /** Apply a compact lifecycle control to an existing media buy. */\n async controlMediaBuy(\n params: MutatingRequestInput<ControlMediaBuyRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ControlMediaBuyResponse>> {\n const result = await this.client.executeTask(\n 'control_media_buy',\n params,\n inputHandler,\n this.withSession('control_media_buy', options)\n );\n this.retainSession(result);\n return result;\n }\n\n /** Record a governance-plan adjustment with idempotent 3.2 semantics. */\n async reportPlanAdjustment(\n params: MutatingRequestInput<ReportPlanAdjustmentRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ReportPlanAdjustmentResponse>> {\n const result = await this.client.executeTask(\n 'report_plan_adjustment',\n params,\n inputHandler,\n this.withSession('report_plan_adjustment', options)\n );\n this.retainSession(result);\n return result;\n }\n\n /** Declaratively replace agent-anchored notification subscriptions. */\n async syncAgentNotificationConfigs(\n params: MutatingRequestInput<SyncAgentNotificationConfigsRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<SyncAgentNotificationConfigsResponse>> {\n const result = await this.client.executeTask(\n 'sync_agent_notification_configs',\n params,\n inputHandler,\n this.withSession('sync_agent_notification_configs', options)\n );\n this.retainSession(result);\n return result;\n }\n\n /**\n * Revise or atomically finalize compact AdCP proposals.\n *\n * The SDK validates batch/cardinality rules and any explicit seller\n * capability declaration before transport, and auto-generates the\n * idempotency key when omitted.\n */\n async refineProposals(\n params: RefineProposalsInput,\n inputHandler?: InputHandler,\n options?: ProposalRefinementTaskOptions\n ): Promise<TaskResult<RefineProposalsResponse>> {\n const { proposalRefinementCapabilities, ...taskOptions } = options ?? {};\n const request = buildRefineProposalsRequest(\n params,\n proposalRefinementCapabilities,\n this.client.getWireAdcpVersion()\n );\n const result = (await this.client.executeTask(\n 'refine_proposals' as never,\n request as never,\n inputHandler,\n this.withSession('refine_proposals', taskOptions)\n )) as TaskResult<RefineProposalsResponse>;\n this.retainSession(result);\n if (result.success && result.status === 'completed') {\n const data = stripRefineProposalsSdkAnnotations(result.data);\n assertRefineProposalsResponse(request, data);\n return { ...result, data };\n }\n return result;\n }\n\n /** @deprecated Explicit raw-wire escape hatch for migration tooling. */\n async getProductsLegacy(\n params: GetProductsRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<GetProductsResponse>> {\n const result = await this.client.getProductsLegacy(params, inputHandler, {\n ...this.withSession('get_products', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /** @deprecated Migration-only access to a legacy named-format catalog. */\n async listCreativeFormatsLegacy(\n params: ListCreativeFormatsRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ListCreativeFormatsResponse>> {\n const result = await this.client.listCreativeFormatsLegacy(params, inputHandler, {\n ...this.withSession('list_creative_formats', options),\n });\n\n this.retainSession(result);\n\n return result;\n }\n\n /** @deprecated Migration-only access to legacy creative transformer declarations. */\n async listTransformersLegacy(\n params: ListTransformersRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ListTransformersResponse>> {\n const result = await this.client.listTransformersLegacy(params, inputHandler, {\n ...this.withSession('list_transformers', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Create a new media buy.\n *\n * Discover canonical `format_options[]` with `getProducts()`, select a\n * `format_option_id`, and send only canonical package and creative fields.\n * Compatibility translation for an older seller happens below this method.\n *\n * ```ts\n * const { data: { products } } = await agent.getProducts({ brief: '...' });\n * const product = products[0];\n * const format = product.format_options[0];\n *\n * await agent.createMediaBuy({\n * packages: [{\n * package_id: 'pkg-1',\n * product_id: product.product_id,\n * pricing_option_id: product.pricing_options[0].pricing_option_id,\n * format_option_refs: [{\n * scope: 'product',\n * format_option_id: format.format_option_id\n * }],\n * creatives: [{\n * creative_id: 'hero',\n * format_kind: format.format_kind,\n * format_option_ref: {\n * scope: 'product',\n * format_option_id: format.format_option_id\n * },\n * assets: { image: { url: 'https://cdn.example/hero.png' } }\n * }],\n * budget: { currency: 'USD', total: 5000 },\n * }],\n * // ...\n * });\n * ```\n *\n * **Inline creative fallback.** Sellers that do not advertise a creative\n * library (`supportsSyncCreatives(await agent.getCapabilities()) === false`)\n * can still accept package-scoped creative uploads when they advertise\n * `caps.features.inlineCreativeManagement`. Use\n * `inlineCreativesForPackages(packages, creatives, { assignments })` to\n * project `sync_creatives`-style creative assets into create-media-buy\n * package payloads without rewriting a raw `sync_creatives` call. If using\n * assignments for create payloads, give each package a stable key such as\n * `context.buyer_ref`, or pass a custom `packageId` resolver.\n *\n * Existing applications that still hold old named-format payloads must opt\n * into `createMediaBuyLegacy()` explicitly.\n */\n async createMediaBuy(\n params: MutatingRequestInput<CanonicalCreateMediaBuyRequest>,\n inputHandler?: InputHandler,\n options?: CreativeDeliveryTaskOptions\n ): Promise<TaskResult<CanonicalCreativeResponse<CreateMediaBuyResponse>>> {\n const result = await this.client.createMediaBuy(params, inputHandler, {\n ...this.withSession('create_media_buy', options),\n });\n\n this.retainSession(result);\n\n return result;\n }\n\n /**\n * @deprecated Use `createMediaBuy`; this raw compatibility surface accepts legacy creative `format_id`.\n * Projection-only options are ignored.\n */\n async createMediaBuyLegacy(\n params: MutatingRequestInput<CreateMediaBuyRequest>,\n inputHandler?: InputHandler,\n options?: CreativeDeliveryTaskOptions\n ): Promise<TaskResult<CreateMediaBuyResponse>> {\n const result = await this.client.createMediaBuyLegacy(params, inputHandler, {\n ...this.withSession('create_media_buy', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /** @internal Run deterministic legacy-create preflight before an application-owned atomic claim hook. */\n async createMediaBuyLegacyWithPreDispatch(\n params: MutatingRequestInput<CreateMediaBuyRequest>,\n beforeDispatch: BeforeProtocolDispatchHook<CreateMediaBuyResponse>,\n inputHandler?: InputHandler,\n options?: CreativeDeliveryTaskOptions\n ): Promise<TaskResult<CreateMediaBuyResponse>> {\n const result = await this.client.createMediaBuyLegacyWithPreDispatch(params, beforeDispatch, inputHandler, {\n ...this.withSession('create_media_buy', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Update an existing media buy.\n *\n * For sellers without a creative library but with\n * `caps.features.inlineCreativeManagement`, post-create creative replacement\n * can be represented as package-scoped inline `packages[].creatives` on this\n * request. Build the package patch with `inlineCreativesForPackages()` and\n * preflight it with `preflightUpdateMediaBuy(currentBuy, patch)` so\n * `available_actions[]` allows `replace_creative` before dispatch.\n * Use `format_kind` and `format_option_ref` for every creative in the patch;\n * the SDK handles any negotiated compatibility conversion.\n */\n async updateMediaBuy(\n params: MutatingRequestInput<CanonicalUpdateMediaBuyRequest>,\n inputHandler?: InputHandler,\n options?: CreativeDeliveryTaskOptions\n ): Promise<TaskResult<CanonicalCreativeResponse<UpdateMediaBuyResponse>>> {\n const result = await this.client.updateMediaBuy(params, inputHandler, {\n ...this.withSession('update_media_buy', options),\n });\n\n this.retainSession(result);\n\n return result;\n }\n\n /**\n * @deprecated Use `updateMediaBuy`; this raw compatibility surface accepts legacy creative `format_id`.\n * Projection-only options are ignored.\n */\n async updateMediaBuyLegacy(\n params: MutatingRequestInput<UpdateMediaBuyRequest>,\n inputHandler?: InputHandler,\n options?: CreativeDeliveryTaskOptions\n ): Promise<TaskResult<UpdateMediaBuyResponse>> {\n const result = await this.client.updateMediaBuyLegacy(params, inputHandler, {\n ...this.withSession('update_media_buy', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Sync creative assets into the seller's reusable creative library.\n *\n * This is library-scoped: assignments can reference packages, but a raw\n * `sync_creatives` request does not contain enough media-buy context for the\n * SDK to safely rewrite it into inline package creatives. When the seller\n * lacks `creative.has_creative_library` but does advertise\n * `media_buy.features.inline_creative_management`, use\n * `inlineCreativesForPackages()` with explicit package/media-buy context and\n * send a separate `create_media_buy` or `update_media_buy` request with its\n * own idempotency key. If neither capability is advertised, creative upload\n * is not available through this SDK helper surface.\n *\n * A sync request does not carry product declarations. When compatibility\n * translation needs seller selection metadata, pass\n * `options.creativeFormatProjection.selectorContainers` with the routed\n * package/product selectors. Assignments scope each creative to its package.\n */\n async syncCreatives(\n params: MutatingRequestInput<CanonicalSyncCreativesRequest>,\n inputHandler?: InputHandler,\n options?: SyncCreativesTaskOptions\n ): Promise<TaskResult<CanonicalCreativeResponse<SyncCreativesResponse>>> {\n const result = await this.client.syncCreatives(params, inputHandler, {\n ...this.withSession('sync_creatives', options),\n });\n\n this.retainSession(result);\n\n return result;\n }\n\n /**\n * @deprecated Use `syncCreatives`; this raw compatibility surface accepts legacy creative `format_id`.\n * Projection-only options are ignored.\n */\n async syncCreativesLegacy(\n params: MutatingRequestInput<SyncCreativesRequest>,\n inputHandler?: InputHandler,\n options?: SyncCreativesTaskOptions\n ): Promise<TaskResult<SyncCreativesResponse>> {\n const result = await this.client.syncCreativesLegacy(params, inputHandler, {\n ...this.withSession('sync_creatives', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * List creative assets\n */\n async listCreatives(\n params: CanonicalListCreativesRequest,\n inputHandler?: InputHandler,\n options?: CanonicalProjectionTaskOptions\n ): Promise<TaskResult<CanonicalListCreativesResponse>> {\n const result = await this.client.listCreatives(params, inputHandler, {\n ...options,\n ...this.withSession('list_creatives', options),\n });\n\n this.retainSession(result);\n return result;\n }\n\n /**\n * Return the unprojected `list_creatives` wire response.\n *\n * @deprecated Compatibility-only escape hatch for migration and protocol tooling.\n */\n async listCreativesLegacy(\n params: ListCreativesRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ListCreativesResponse>> {\n const result = await this.client.listCreativesLegacy(params, inputHandler, {\n ...this.withSession('list_creatives', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Get media buy status, creative approvals, and optional delivery snapshots\n */\n async getMediaBuys(\n params: GetMediaBuysRequest,\n inputHandler?: InputHandler,\n options?: CanonicalReadTaskOptions\n ): Promise<TaskResult<CanonicalCreativeResponse<GetMediaBuysResponse>>> {\n const result = await this.client.getMediaBuys(params, inputHandler, {\n ...this.withSession('get_media_buys', options),\n });\n\n this.retainSession(result);\n\n return result;\n }\n\n /**\n * Get media buy delivery information\n */\n async getMediaBuyDelivery(\n params: GetMediaBuyDeliveryRequest,\n inputHandler?: InputHandler,\n options?: CanonicalReadTaskOptions\n ): Promise<TaskResult<CanonicalCreativeResponse<GetMediaBuyDeliveryResponse>>> {\n const result = await this.client.getMediaBuyDelivery(params, inputHandler, {\n ...this.withSession('get_media_buy_delivery', options),\n });\n\n this.retainSession(result);\n\n return result;\n }\n\n /** Retrieve canonical creative-level and variant-level delivery metrics. */\n async getCreativeDelivery(\n params: GetCreativeDeliveryRequest,\n inputHandler?: InputHandler,\n options?: CanonicalProjectionTaskOptions\n ): Promise<TaskResult<CanonicalCreativeResponse<GetCreativeDeliveryResponse>>> {\n const result = await this.client.getCreativeDelivery(params, inputHandler, {\n ...options,\n ...this.withSession('get_creative_delivery', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Provide performance feedback\n */\n async providePerformanceFeedback(\n params: MutatingRequestInput<ProvidePerformanceFeedbackRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ProvidePerformanceFeedbackResponse>> {\n const result = await this.client.providePerformanceFeedback(params, inputHandler, {\n ...this.withSession('provide_performance_feedback', options),\n });\n\n this.retainSession(result);\n\n return result;\n }\n\n // ====== SIGNALS TASKS ======\n\n /**\n * Get audience signals\n */\n async getSignals(\n params: GetSignalsRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<GetSignalsResponse>> {\n const result = await this.client.getSignals(params, inputHandler, this.withSession('get_signals', options));\n\n this.retainSession(result);\n\n return result;\n }\n\n /**\n * Activate audience signals\n */\n async activateSignal(\n params: MutatingRequestInput<ActivateSignalRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ActivateSignalResponse>> {\n const result = await this.client.activateSignal(params, inputHandler, {\n ...this.withSession('activate_signal', options),\n });\n\n this.retainSession(result);\n\n return result;\n }\n\n // ====== PROTOCOL TASKS ======\n\n /**\n * Get AdCP capabilities (v3 tool call)\n */\n async getAdcpCapabilities(\n params: GetAdCPCapabilitiesRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<GetAdCPCapabilitiesResponse>> {\n const result = await this.client.getAdcpCapabilities(params, inputHandler, {\n ...this.withSession('get_adcp_capabilities', options),\n });\n\n this.retainSession(result);\n\n return result;\n }\n\n /**\n * Get normalized capabilities with v2/v3 fallback\n *\n * For v3 servers: calls get_adcp_capabilities tool\n * For v2 servers: builds synthetic capabilities from tool list\n */\n async getCapabilities(options?: Pick<TaskOptions, 'signal' | 'transport'>): Promise<AdcpCapabilities> {\n return this.client.getCapabilities(options);\n }\n\n /**\n * Return the seller's declared `adcp.idempotency.replay_ttl_seconds`, or\n * throw when a v3 seller omits the (required) declaration.\n *\n * Returns `undefined` for v2 agents — v2 pre-dates the idempotency envelope.\n */\n async getIdempotencyReplayTtlSeconds(): Promise<number | undefined> {\n return this.client.getIdempotencyReplayTtlSeconds();\n }\n\n /**\n * Assert that the seller's capabilities corroborate this client's pinned\n * AdCP major (per `getAdcpVersion()`). Throws `VersionUnsupportedError`\n * otherwise. Set `ADCP_ALLOW_V2=1` to bypass.\n */\n async requireSupportedMajor(taskType: string = 'request'): Promise<void> {\n return this.client.requireSupportedMajor(taskType);\n }\n\n /**\n * Deprecated alias for {@link requireSupportedMajor}.\n * @deprecated Use `requireSupportedMajor()` instead.\n */\n async requireV3(taskType: string = 'request'): Promise<void> {\n return this.client.requireSupportedMajor(taskType);\n }\n\n /** Preview a creative using canonical capability or creative-library identity. */\n async previewCreative(\n params: CanonicalPreviewCreativeRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<CanonicalPreviewCreativeResponse>> {\n const result = await this.client.previewCreative(params, inputHandler, {\n ...this.withSession('preview_creative', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /** @deprecated Migration-only access to legacy `format_id`-based creative preview. */\n async previewCreativeLegacy(\n params: PreviewCreativeRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<PreviewCreativeResponse>> {\n const result = await this.client.previewCreativeLegacy(params, inputHandler, {\n ...this.withSession('preview_creative', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /** @deprecated Migration-only access to legacy `target_format_id`-based creative building. */\n async buildCreativeLegacy(\n params: MutatingRequestInput<BuildCreativeRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<BuildCreativeResponse>> {\n const result = await this.client.buildCreativeLegacy(params, inputHandler, {\n ...this.withSession('build_creative', options),\n });\n this.retainSession(result);\n return result;\n }\n\n // ====== ACCOUNT & AUDIENCE TASKS ======\n\n /**\n * List accounts\n */\n async listAccounts(\n params: ListAccountsRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ListAccountsResponse>> {\n const result = await this.client.listAccounts(params, inputHandler, {\n ...this.withSession('list_accounts', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Sync accounts\n */\n async syncAccounts(\n params: MutatingRequestInput<SyncAccountsRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<SyncAccountsResponse>> {\n const result = await this.client.syncAccounts(params, inputHandler, {\n ...this.withSession('sync_accounts', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Sync audiences\n */\n async syncAudiences(\n params: MutatingRequestInput<SyncAudiencesRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<SyncAudiencesResponse>> {\n const result = await this.client.syncAudiences(params, inputHandler, {\n ...this.withSession('sync_audiences', options),\n });\n this.retainSession(result);\n return result;\n }\n\n // ====== GOVERNANCE TASKS ======\n\n /**\n * Create a property list\n */\n async createPropertyList(\n params: MutatingRequestInput<CreatePropertyListRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<CreatePropertyListResponse>> {\n const result = await this.client.createPropertyList(params, inputHandler, {\n ...this.withSession('create_property_list', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Get a property list\n */\n async getPropertyList(\n params: GetPropertyListRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<GetPropertyListResponse>> {\n const result = await this.client.getPropertyList(params, inputHandler, {\n ...this.withSession('get_property_list', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Update a property list\n */\n async updatePropertyList(\n params: MutatingRequestInput<UpdatePropertyListRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<UpdatePropertyListResponse>> {\n const result = await this.client.updatePropertyList(params, inputHandler, {\n ...this.withSession('update_property_list', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * List property lists\n */\n async listPropertyLists(\n params: ListPropertyListsRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ListPropertyListsResponse>> {\n const result = await this.client.listPropertyLists(params, inputHandler, {\n ...this.withSession('list_property_lists', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Delete a property list\n */\n async deletePropertyList(\n params: MutatingRequestInput<DeletePropertyListRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<DeletePropertyListResponse>> {\n const result = await this.client.deletePropertyList(params, inputHandler, {\n ...this.withSession('delete_property_list', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * List content standards\n */\n async listContentStandardsLegacy(\n params: ListContentStandardsRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ListContentStandardsResponse>> {\n const result = await this.client.listContentStandardsLegacy(params, inputHandler, {\n ...this.withSession('list_content_standards', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Get content standards\n */\n async getContentStandardsLegacy(\n params: GetContentStandardsRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<GetContentStandardsResponse>> {\n const result = await this.client.getContentStandardsLegacy(params, inputHandler, {\n ...this.withSession('get_content_standards', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Calibrate content against standards\n */\n async calibrateContentLegacy(\n params: MutatingRequestInput<CalibrateContentRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<CalibrateContentResponse>> {\n const result = await this.client.calibrateContentLegacy(params, inputHandler, {\n ...this.withSession('calibrate_content', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Validate content delivery\n */\n async validateContentDeliveryLegacy(\n params: ValidateContentDeliveryRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<ValidateContentDeliveryResponse>> {\n const result = await this.client.validateContentDeliveryLegacy(params, inputHandler, {\n ...this.withSession('validate_content_delivery', options),\n });\n this.retainSession(result);\n return result;\n }\n\n // ====== SPONSORED INTELLIGENCE TASKS ======\n\n /**\n * Get an SI offering\n */\n async siGetOffering(\n params: SIGetOfferingRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<SIGetOfferingResponse>> {\n const result = await this.client.siGetOffering(params, inputHandler, {\n ...this.withSession('si_get_offering', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Initiate an SI session\n */\n async siInitiateSession(\n params: MutatingRequestInput<SIInitiateSessionRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<SIInitiateSessionResponse>> {\n const result = await this.client.siInitiateSession(params, inputHandler, {\n ...this.withSession('si_initiate_session', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Send a message in an SI session\n */\n async siSendMessage(\n params: MutatingRequestInput<SISendMessageRequest>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<SISendMessageResponse>> {\n const result = await this.client.siSendMessage(params, inputHandler, {\n ...this.withSession('si_send_message', options),\n });\n this.retainSession(result);\n return result;\n }\n\n /**\n * Terminate an SI session\n */\n async siTerminateSession(\n params: SITerminateSessionRequest,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<SITerminateSessionResponse>> {\n const result = await this.client.siTerminateSession(params, inputHandler, {\n ...this.withSession('si_terminate_session', options),\n });\n this.retainSession(result);\n return result;\n }\n\n // ====== CONVERSATION MANAGEMENT ======\n\n /**\n * Continue the conversation with a natural language message\n *\n * @param message - Natural language message to send to the agent\n * @param inputHandler - Handler for any clarification requests\n *\n * @example\n * ```typescript\n * const agent = multiClient.agent('my-agent');\n * await agent.getProducts({ brief: 'Tech products' });\n *\n * // Continue the conversation\n * const refined = await agent.continueConversation(\n * 'Focus only on laptops under $1000'\n * );\n * ```\n */\n async continueConversation<T = any>(\n message: string,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<T>> {\n if (!this.currentContextId) {\n throw new Error('No active conversation to continue. Start with a task method first.');\n }\n\n const result = await this.client.continueConversation<T>(message, this.currentContextId, inputHandler);\n\n this.retainSession(result);\n\n return result;\n }\n\n /**\n * Get the full conversation history\n */\n getHistory(): Message[] | undefined {\n if (!this.currentContextId) {\n return undefined;\n }\n return this.client.getConversationHistory(this.currentContextId);\n }\n\n /**\n * Clear the conversation context (start fresh).\n *\n * Equivalent to `resetContext()` — clears both the retained `contextId`\n * and any pending server-side `taskId`, and drops cached history.\n */\n clearContext(): void {\n this.resetContext();\n }\n\n /**\n * Reset conversation state. Call with no args to start a fresh\n * conversation; pass a seed to rehydrate a persisted session id (e.g.,\n * across a process restart).\n *\n * Always clears the retained pending-task handle — a persisted `contextId`\n * places the next send into the same server-side session, but any old\n * `taskId` is stale.\n */\n resetContext(seed?: string): void {\n if (this.currentContextId) {\n this.client.clearConversationHistory(this.currentContextId);\n }\n this.currentContextId = seed;\n this.pendingTask = undefined;\n }\n\n /**\n * Get the current conversation context ID\n */\n getContextId(): string | undefined {\n return this.currentContextId;\n }\n\n /**\n * Get the pending server-side `taskId` from the last non-terminal\n * response, if any. Populated when the server returned\n * `input-required` / `working` / `submitted` / `auth-required`;\n * cleared when the task reaches a terminal state.\n *\n * Persist this alongside `getContextId()` if you need to resume a\n * specific task (not just a conversation) across a process restart.\n */\n getPendingTaskId(): string | undefined {\n return this.pendingTask?.taskId;\n }\n\n /**\n * Set a specific conversation context ID\n */\n setContextId(contextId: string): void {\n this.currentContextId = contextId;\n }\n\n // ====== AGENT INFORMATION ======\n\n /**\n * Get the agent configuration\n */\n getAgent(): AgentConfig {\n return this.client.getAgent();\n }\n\n /**\n * Get the agent ID\n */\n getAgentId(): string {\n return this.client.getAgentId();\n }\n\n /**\n * Get the agent name\n */\n getAgentName(): string {\n return this.client.getAgentName();\n }\n\n /**\n * Get the agent protocol\n */\n getProtocol(): 'mcp' | 'a2a' {\n return this.client.getProtocol();\n }\n\n /**\n * Get the canonical base URL for this agent\n *\n * Returns the canonical URL if already resolved, or computes it synchronously.\n * For guaranteed canonical URL (especially for A2A), use resolveCanonicalUrl() first.\n */\n getCanonicalUrl(): string {\n return this.client.getCanonicalUrl();\n }\n\n /**\n * Resolve and return the canonical base URL for this agent\n *\n * For A2A: Fetches the agent card and uses its 'url' field\n * For MCP: Performs endpoint discovery and strips /mcp suffix\n *\n * **Not supported on in-process instances** (created via `fromMCPClient`).\n * Use `getAgentId()` / `getAgentName()` for identification instead.\n */\n async resolveCanonicalUrl(): Promise<string> {\n if (this._isInProcess) {\n throw new Error(\n 'resolveCanonicalUrl() is not supported on in-process AgentClient instances. ' +\n 'Use getAgentId() or getAgentName() to identify this client.'\n );\n }\n return this.client.resolveCanonicalUrl();\n }\n\n /**\n * Check if this agent is the same as another agent by canonical URL\n */\n isSameAgent(other: AgentConfig | AgentClient): boolean {\n if (other instanceof AgentClient) {\n // Compare using the other client's agent config\n return this.client.isSameAgent(other.getAgent());\n }\n return this.client.isSameAgent(other);\n }\n\n /**\n * Async version that resolves canonical URLs first for more accurate comparison\n */\n async isSameAgentResolved(other: AgentConfig | AgentClient): Promise<boolean> {\n const otherIsInProcess = other instanceof AgentClient && other._isInProcess;\n if (this._isInProcess || otherIsInProcess) {\n // In-process agents have no canonical URL to resolve — compare sentinel IDs instead.\n const thisId = this.getAgentId();\n const otherId = other instanceof AgentClient ? other.getAgentId() : other.id;\n return thisId === otherId;\n }\n if (other instanceof AgentClient) {\n // Resolve both sides first\n await this.resolveCanonicalUrl();\n await other.resolveCanonicalUrl();\n // Then compare using the resolved agent config\n return this.client.isSameAgent(other.getAgent());\n }\n return this.client.isSameAgentResolved(other);\n }\n\n /**\n * Get the fully resolved agent configuration with canonical URL\n */\n async getResolvedAgent(): Promise<AgentConfig> {\n return this.client.getResolvedAgent();\n }\n\n /**\n * Get agent information including capabilities\n */\n async getAgentInfo(options?: Pick<TaskOptions, 'signal' | 'transport'>) {\n return this.client.getAgentInfo(options);\n }\n\n /**\n * Check if there's an active conversation\n */\n hasActiveConversation(): boolean {\n return this.currentContextId !== undefined;\n }\n\n /**\n * Get active tasks for this agent\n */\n getActiveTasks() {\n return this.client.getActiveTasks().map(assertNativeRequestProposalsTask);\n }\n\n // ====== GENERIC TASK EXECUTION ======\n\n /**\n * Execute any ADCP task by name with full type safety\n *\n * @example\n * ```typescript\n * // ✅ TYPE-SAFE: Automatic response type inference\n * const result = await agent.executeTask('get_products', params);\n * // result is TaskResult<CanonicalGetProductsResponse> - no casting needed!\n *\n * // ✅ CUSTOM TYPES: For non-standard tasks\n * const customResult = await agent.executeCustomTask<MyCustomResponse>('custom_task', params);\n * ```\n */\n async executeTask<K extends AdcpTaskName>(\n taskName: K,\n params: TaskRequestFor<K>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<TaskResponseTypeMap[K]>>;\n\n async executeTask(\n taskName: string,\n params: Record<string, unknown>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<unknown>> {\n switch (taskName) {\n case 'get_products':\n return this.getProducts(params as CanonicalGetProductsRequest, inputHandler, options);\n case 'request_proposals':\n return (await this.requestProposals(\n params as MutatingRequestInput<RequestProposalsRequest>,\n inputHandler,\n options\n )) as TaskResult<unknown>;\n case 'refine_proposals':\n return (await this.refineProposals(\n params as RefineProposalsInput,\n inputHandler,\n options\n )) as TaskResult<unknown>;\n case 'create_media_buy':\n return (await this.createMediaBuy(\n params as MutatingRequestInput<CanonicalCreateMediaBuyRequest>,\n inputHandler,\n options\n )) as TaskResult<unknown>;\n case 'update_media_buy':\n return (await this.updateMediaBuy(\n params as MutatingRequestInput<CanonicalUpdateMediaBuyRequest>,\n inputHandler,\n options\n )) as TaskResult<unknown>;\n case 'sync_creatives':\n return (await this.syncCreatives(\n params as MutatingRequestInput<CanonicalSyncCreativesRequest>,\n inputHandler,\n options\n )) as TaskResult<unknown>;\n case 'list_creatives':\n return this.listCreatives(params as CanonicalListCreativesRequest, inputHandler, options);\n case 'get_media_buys':\n return this.getMediaBuys(params as GetMediaBuysRequest, inputHandler, options);\n case 'get_media_buy_delivery':\n return this.getMediaBuyDelivery(params as GetMediaBuyDeliveryRequest, inputHandler, options);\n case 'get_creative_delivery':\n return this.getCreativeDelivery(params as GetCreativeDeliveryRequest, inputHandler, options);\n }\n const result = await this.client.executeTaskLegacy(taskName, params, inputHandler, {\n ...this.withSession(taskName, options),\n });\n\n this.retainSession(result);\n\n return result;\n }\n\n /** Execute an extension task that is not part of the standard AdCP task set. */\n async executeCustomTask<T = unknown>(\n taskName: string,\n params: Record<string, unknown>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<T>> {\n const result = await this.client.executeCustomTask<T>(taskName, params, inputHandler, {\n ...this.withSession(taskName, options),\n });\n\n this.retainSession(result);\n return result;\n }\n\n /**\n * Explicit raw-task compatibility escape hatch for conformance and migration tooling.\n * @deprecated Application code should use typed primary methods or `executeTask()`.\n */\n async executeTaskLegacy<T = unknown>(\n taskName: string,\n params: Record<string, unknown>,\n inputHandler?: InputHandler,\n options?: TaskOptions\n ): Promise<TaskResult<T>> {\n const result = await this.client.executeTaskLegacy<T>(taskName, params, inputHandler, {\n ...this.withSession(taskName, options),\n });\n this.retainSession(result);\n return result;\n }\n\n // ====== TASK MANAGEMENT DELEGATION ======\n\n /**\n * List all tasks for this agent\n */\n async listTasks(): Promise<TaskInfo[]> {\n return (await this.client.listTasks()).map(assertNativeRequestProposalsTask);\n }\n\n /**\n * Get detailed information about a specific task\n */\n async getTaskInfo(taskId: string): Promise<TaskInfo | null> {\n const task = await this.client.getTaskInfo(taskId);\n return task ? assertNativeRequestProposalsTask(task) : null;\n }\n\n /**\n * Subscribe to task notifications for this agent\n */\n onTaskUpdate(callback: (task: TaskInfo) => void): () => void {\n return this.client.onTaskUpdate(task => callback(assertNativeRequestProposalsTask(task)));\n }\n\n /**\n * Subscribe to all task events\n */\n onTaskEvents(callbacks: {\n onTaskCreated?: (task: TaskInfo) => void;\n onTaskUpdated?: (task: TaskInfo) => void;\n onTaskCompleted?: (task: TaskInfo) => void;\n onTaskFailed?: (task: TaskInfo, error: string) => void;\n }): () => void {\n const safe = (task: TaskInfo): TaskInfo => assertNativeRequestProposalsTask(task);\n return this.client.onTaskEvents({\n ...(callbacks.onTaskCreated && { onTaskCreated: task => callbacks.onTaskCreated!(safe(task)) }),\n ...(callbacks.onTaskUpdated && { onTaskUpdated: task => callbacks.onTaskUpdated!(safe(task)) }),\n ...(callbacks.onTaskCompleted && { onTaskCompleted: task => callbacks.onTaskCompleted!(safe(task)) }),\n ...(callbacks.onTaskFailed && {\n onTaskFailed: (task, error) => callbacks.onTaskFailed!(safe(task), error),\n }),\n });\n }\n\n /**\n * Generate webhook URL for a specific task and operation.\n *\n * **Not supported on in-process instances** (created via `fromMCPClient`).\n * In-process clients have no HTTP listener to receive webhook callbacks.\n */\n getWebhookUrl(taskType: string, operationId: string): string {\n if (this._isInProcess) {\n throw new Error(\n 'getWebhookUrl() is not supported on in-process AgentClient instances. ' +\n 'In-process clients have no HTTP listener for webhook delivery.'\n );\n }\n return this.client.getWebhookUrl(taskType, operationId);\n }\n\n /**\n * Register webhook for task notifications.\n *\n * **Not supported on in-process instances** (created via `fromMCPClient`).\n */\n async registerWebhook(webhookUrl: string, taskTypes?: string[]): Promise<void> {\n if (this._isInProcess) {\n throw new Error(\n 'registerWebhook() is not supported on in-process AgentClient instances. ' +\n 'In-process clients have no HTTP listener for webhook delivery.'\n );\n }\n return this.client.registerWebhook(webhookUrl, taskTypes);\n }\n\n /**\n * Unregister webhook notifications.\n *\n * **Not supported on in-process instances** (created via `fromMCPClient`).\n */\n async unregisterWebhook(): Promise<void> {\n if (this._isInProcess) {\n throw new Error(\n 'unregisterWebhook() is not supported on in-process AgentClient instances. ' +\n 'In-process clients have no HTTP listener for webhook delivery.'\n );\n }\n return this.client.unregisterWebhook();\n }\n}\n"],"mappings":"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","names":[]}