@adcp/sdk 14.0.0-rc.38 → 14.0.0-rc.39
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.
- package/bin/adcp-storyboard-summary.js +286 -0
- package/bin/adcp.js +221 -10
- package/dist/lib/conformance/schemaLoader.d.mts +1 -1
- package/dist/lib/conformance/schemaLoader.d.ts +1 -1
- package/dist/lib/core/AgentClient.d.mts +6 -1
- package/dist/lib/core/AgentClient.d.ts +6 -1
- package/dist/lib/core/AgentClient.js +9 -0
- package/dist/lib/core/AgentClient.mjs +9 -0
- package/dist/lib/core/ConversationTypes.d.mts +29 -0
- package/dist/lib/core/ConversationTypes.d.ts +29 -0
- package/dist/lib/core/SingleAgentClient.d.mts +3 -1
- package/dist/lib/core/SingleAgentClient.d.ts +3 -1
- package/dist/lib/core/SingleAgentClient.js +9 -1
- package/dist/lib/core/SingleAgentClient.mjs +9 -1
- package/dist/lib/core/TaskExecutor.d.mts +13 -1
- package/dist/lib/core/TaskExecutor.d.ts +13 -1
- package/dist/lib/core/TaskExecutor.js +216 -18
- package/dist/lib/core/TaskExecutor.mjs +216 -19
- package/dist/lib/index.d.mts +5 -2
- package/dist/lib/index.d.ts +5 -2
- package/dist/lib/index.js +10 -1
- package/dist/lib/index.mjs +10 -1
- package/dist/lib/media-buy/action-assessment.d.mts +77 -0
- package/dist/lib/media-buy/action-assessment.d.ts +77 -0
- package/dist/lib/media-buy/action-assessment.js +300 -0
- package/dist/lib/media-buy/action-assessment.mjs +284 -0
- package/dist/lib/media-buy/action-constraints.d.mts +9 -0
- package/dist/lib/media-buy/action-constraints.d.ts +9 -0
- package/dist/lib/media-buy/action-constraints.js +170 -0
- package/dist/lib/media-buy/action-constraints.mjs +146 -0
- package/dist/lib/media-buy/action-contracts.d.mts +40 -0
- package/dist/lib/media-buy/action-contracts.d.ts +40 -0
- package/dist/lib/media-buy/action-contracts.js +304 -0
- package/dist/lib/media-buy/action-contracts.mjs +267 -0
- package/dist/lib/media-buy/action-metadata.generated.d.mts +37 -0
- package/dist/lib/media-buy/action-metadata.generated.d.ts +37 -0
- package/dist/lib/media-buy/action-metadata.generated.js +128 -0
- package/dist/lib/media-buy/action-metadata.generated.mjs +101 -0
- package/dist/lib/media-buy/action-types.d.mts +106 -0
- package/dist/lib/media-buy/action-types.d.ts +106 -0
- package/dist/lib/{types/v3-1-beta/tools.generated.js → media-buy/action-types.js} +2 -2
- package/dist/lib/media-buy/actions.d.mts +6 -0
- package/dist/lib/media-buy/actions.d.ts +6 -0
- package/dist/lib/media-buy/actions.js +38 -0
- package/dist/lib/media-buy/actions.mjs +9 -0
- package/dist/lib/media-buy/available-actions.d.mts +2 -1
- package/dist/lib/media-buy/available-actions.d.ts +2 -1
- package/dist/lib/media-buy/available-actions.js +4 -3
- package/dist/lib/media-buy/available-actions.mjs +4 -3
- package/dist/lib/media-buy/compatibility.js +3 -0
- package/dist/lib/media-buy/compatibility.mjs +3 -0
- package/dist/lib/media-buy/index.d.mts +4 -0
- package/dist/lib/media-buy/index.d.ts +4 -0
- package/dist/lib/media-buy/index.js +3 -1
- package/dist/lib/media-buy/index.mjs +1 -0
- package/dist/lib/media-buy/legacy-action-ids.d.mts +1 -0
- package/dist/lib/media-buy/legacy-action-ids.d.ts +1 -0
- package/dist/lib/media-buy/legacy-action-ids.js +50 -0
- package/dist/lib/media-buy/legacy-action-ids.mjs +26 -0
- package/dist/lib/media-buy/mutations.d.mts +70 -0
- package/dist/lib/media-buy/mutations.d.ts +70 -0
- package/dist/lib/media-buy/mutations.js +525 -0
- package/dist/lib/media-buy/mutations.mjs +498 -0
- package/dist/lib/media-buy/preflight.d.mts +20 -69
- package/dist/lib/media-buy/preflight.d.ts +20 -69
- package/dist/lib/media-buy/preflight.js +100 -336
- package/dist/lib/media-buy/preflight.mjs +111 -333
- package/dist/lib/media-buy/targeting-input.d.mts +7 -4
- package/dist/lib/media-buy/targeting-input.d.ts +7 -4
- package/dist/lib/media-buy/types.d.mts +55 -7
- package/dist/lib/media-buy/types.d.ts +55 -7
- package/dist/lib/protocols/rawResponseCapture.d.mts +12 -0
- package/dist/lib/protocols/rawResponseCapture.d.ts +12 -0
- package/dist/lib/protocols/rawResponseCapture.js +33 -3
- package/dist/lib/protocols/rawResponseCapture.mjs +32 -3
- package/dist/lib/registry/types.generated.d.mts +377 -9
- package/dist/lib/registry/types.generated.d.ts +377 -9
- package/dist/lib/reporting/evidence.d.mts +1 -0
- package/dist/lib/reporting/evidence.d.ts +1 -0
- package/dist/lib/reporting/evidence.js +32 -3
- package/dist/lib/reporting/evidence.mjs +31 -3
- package/dist/lib/reporting/ledger/handler.d.mts +51 -1
- package/dist/lib/reporting/ledger/handler.d.ts +51 -1
- package/dist/lib/reporting/ledger/handler.js +306 -38
- package/dist/lib/reporting/ledger/handler.mjs +304 -37
- package/dist/lib/reporting/ledger/health.d.mts +12 -0
- package/dist/lib/reporting/ledger/health.d.ts +12 -0
- package/dist/lib/reporting/ledger/health.js +15 -2
- package/dist/lib/reporting/ledger/health.mjs +13 -1
- package/dist/lib/reporting/ledger/index.d.mts +3 -0
- package/dist/lib/reporting/ledger/index.d.ts +3 -0
- package/dist/lib/reporting/ledger/index.js +7 -1
- package/dist/lib/reporting/ledger/index.mjs +3 -0
- package/dist/lib/reporting/ledger/lifecycle.d.mts +31 -4
- package/dist/lib/reporting/ledger/lifecycle.d.ts +31 -4
- package/dist/lib/reporting/ledger/lifecycle.js +244 -37
- package/dist/lib/reporting/ledger/lifecycle.mjs +244 -37
- package/dist/lib/reporting/ledger/managed-postgres.d.mts +231 -0
- package/dist/lib/reporting/ledger/managed-postgres.d.ts +231 -0
- package/dist/lib/reporting/ledger/managed-postgres.js +1797 -0
- package/dist/lib/reporting/ledger/managed-postgres.mjs +1776 -0
- package/dist/lib/reporting/ledger/managed.d.mts +355 -0
- package/dist/lib/reporting/ledger/managed.d.ts +355 -0
- package/dist/lib/reporting/ledger/managed.js +661 -0
- package/dist/lib/reporting/ledger/managed.mjs +633 -0
- package/dist/lib/reporting/ledger/notification-activity.d.mts +222 -0
- package/dist/lib/reporting/ledger/notification-activity.d.ts +222 -0
- package/dist/lib/reporting/ledger/notification-activity.js +1139 -0
- package/dist/lib/reporting/ledger/notification-activity.mjs +1110 -0
- package/dist/lib/reporting/ledger/postgres.d.mts +161 -1
- package/dist/lib/reporting/ledger/postgres.d.ts +161 -1
- package/dist/lib/reporting/ledger/postgres.js +1153 -21
- package/dist/lib/reporting/ledger/postgres.mjs +1152 -21
- package/dist/lib/reporting/ledger/producer.d.mts +8 -0
- package/dist/lib/reporting/ledger/producer.d.ts +8 -0
- package/dist/lib/reporting/ledger/producer.js +146 -52
- package/dist/lib/reporting/ledger/producer.mjs +146 -51
- package/dist/lib/reporting/ledger/types.d.mts +358 -1
- package/dist/lib/reporting/ledger/types.d.ts +358 -1
- package/dist/lib/reporting/ledger/types.js +3 -0
- package/dist/lib/reporting/ledger/types.mjs +2 -0
- package/dist/lib/reporting/service/conformance.d.mts +35 -0
- package/dist/lib/reporting/service/conformance.d.ts +35 -0
- package/dist/lib/reporting/service/conformance.js +89 -0
- package/dist/lib/reporting/service/conformance.mjs +68 -0
- package/dist/lib/reporting/service/index.d.mts +182 -0
- package/dist/lib/reporting/service/index.d.ts +182 -0
- package/dist/lib/reporting/service/index.js +793 -0
- package/dist/lib/reporting/service/index.mjs +787 -0
- package/dist/lib/reporting/source/index.d.mts +2 -1
- package/dist/lib/reporting/source/index.d.ts +2 -1
- package/dist/lib/reporting/source/index.js +16 -3
- package/dist/lib/reporting/source/index.mjs +12 -1
- package/dist/lib/reporting/source/inline.d.mts +88 -1
- package/dist/lib/reporting/source/inline.d.ts +88 -1
- package/dist/lib/reporting/source/inline.js +1161 -163
- package/dist/lib/reporting/source/inline.mjs +1166 -163
- package/dist/lib/reporting/source/manifest.js +12 -7
- package/dist/lib/reporting/source/manifest.mjs +12 -7
- package/dist/lib/reporting/source/source.d.mts +26 -0
- package/dist/lib/reporting/source/source.d.ts +26 -0
- package/dist/lib/reporting/source/source.js +71 -2
- package/dist/lib/reporting/source/source.mjs +65 -1
- package/dist/lib/schemas-data/v2.5/_provenance.json +1 -1
- package/dist/lib/server/create-adcp-server.d.mts +18 -0
- package/dist/lib/server/create-adcp-server.d.ts +18 -0
- package/dist/lib/server/create-adcp-server.js +52 -2
- package/dist/lib/server/create-adcp-server.mjs +52 -2
- package/dist/lib/server/decisioning/account.d.mts +1 -1
- package/dist/lib/server/decisioning/account.d.ts +1 -1
- package/dist/lib/server/decisioning/index.d.mts +1 -0
- package/dist/lib/server/decisioning/index.d.ts +1 -0
- package/dist/lib/server/decisioning/platform.d.mts +3 -0
- package/dist/lib/server/decisioning/platform.d.ts +3 -0
- package/dist/lib/server/decisioning/runtime/from-platform.js +88 -10
- package/dist/lib/server/decisioning/runtime/from-platform.mjs +88 -10
- package/dist/lib/server/decisioning/specialisms/reporting.d.mts +38 -0
- package/dist/lib/server/decisioning/specialisms/reporting.d.ts +38 -0
- package/dist/lib/{types/v3-1-beta/index.js → server/decisioning/specialisms/reporting.js} +2 -8
- package/dist/lib/server/decisioning/specialisms/reporting.mjs +0 -0
- package/dist/lib/server/index.d.mts +4 -2
- package/dist/lib/server/index.d.ts +4 -2
- package/dist/lib/server/index.js +5 -0
- package/dist/lib/server/index.mjs +4 -0
- package/dist/lib/server/media-buy-action-resolver.d.mts +63 -0
- package/dist/lib/server/media-buy-action-resolver.d.ts +63 -0
- package/dist/lib/server/media-buy-action-resolver.js +297 -0
- package/dist/lib/server/media-buy-action-resolver.mjs +285 -0
- package/dist/lib/server/media-buy-actions.d.mts +7 -8
- package/dist/lib/server/media-buy-actions.d.ts +7 -8
- package/dist/lib/server/media-buy-actions.js +57 -14
- package/dist/lib/server/media-buy-actions.mjs +63 -14
- package/dist/lib/server/notification-subscriptions/index.d.mts +2 -2
- package/dist/lib/server/notification-subscriptions/index.d.ts +2 -2
- package/dist/lib/server/notification-subscriptions/index.js +2 -0
- package/dist/lib/server/notification-subscriptions/index.mjs +2 -0
- package/dist/lib/server/notification-subscriptions/postgres-runtime.d.mts +3 -1
- package/dist/lib/server/notification-subscriptions/postgres-runtime.d.ts +3 -1
- package/dist/lib/server/notification-subscriptions/postgres-runtime.js +1 -0
- package/dist/lib/server/notification-subscriptions/postgres-runtime.mjs +1 -0
- package/dist/lib/server/notification-subscriptions/runtime.d.mts +12 -1
- package/dist/lib/server/notification-subscriptions/runtime.d.ts +12 -1
- package/dist/lib/server/notification-subscriptions/runtime.js +102 -16
- package/dist/lib/server/notification-subscriptions/runtime.mjs +101 -16
- package/dist/lib/server/notification-subscriptions/types.d.mts +104 -1
- package/dist/lib/server/notification-subscriptions/types.d.ts +104 -1
- package/dist/lib/server/webhook-emitter.d.mts +40 -5
- package/dist/lib/server/webhook-emitter.d.ts +40 -5
- package/dist/lib/server/webhook-emitter.js +23 -12
- package/dist/lib/server/webhook-emitter.mjs +23 -12
- package/dist/lib/storage/interfaces.d.mts +14 -2
- package/dist/lib/storage/interfaces.d.ts +14 -2
- package/dist/lib/testing/compliance/comply.d.mts +9 -3
- package/dist/lib/testing/compliance/comply.d.ts +9 -3
- package/dist/lib/testing/compliance/comply.js +158 -3
- package/dist/lib/testing/compliance/comply.mjs +159 -4
- package/dist/lib/testing/compliance/storyboard-tracks.js +7 -5
- package/dist/lib/testing/compliance/storyboard-tracks.mjs +7 -5
- package/dist/lib/testing/compliance/summary.js +10 -1
- package/dist/lib/testing/compliance/summary.mjs +10 -1
- package/dist/lib/testing/index.d.mts +1 -1
- package/dist/lib/testing/index.d.ts +1 -1
- package/dist/lib/testing/index.js +2 -0
- package/dist/lib/testing/index.mjs +3 -1
- package/dist/lib/testing/storyboard/agent-routing.d.mts +12 -43
- package/dist/lib/testing/storyboard/agent-routing.d.ts +12 -43
- package/dist/lib/testing/storyboard/agent-routing.js +75 -13
- package/dist/lib/testing/storyboard/agent-routing.mjs +70 -12
- package/dist/lib/testing/storyboard/index.d.mts +1 -0
- package/dist/lib/testing/storyboard/index.d.ts +1 -0
- package/dist/lib/testing/storyboard/index.js +3 -0
- package/dist/lib/testing/storyboard/index.mjs +2 -0
- package/dist/lib/testing/storyboard/junit.d.mts +1 -1
- package/dist/lib/testing/storyboard/junit.d.ts +1 -1
- package/dist/lib/testing/storyboard/junit.js +21 -2
- package/dist/lib/testing/storyboard/junit.mjs +21 -2
- package/dist/lib/testing/storyboard/probes.d.mts +130 -0
- package/dist/lib/testing/storyboard/probes.d.ts +130 -0
- package/dist/lib/testing/storyboard/probes.js +682 -10
- package/dist/lib/testing/storyboard/probes.mjs +683 -3
- package/dist/lib/testing/storyboard/request-signing/builder.d.mts +16 -5
- package/dist/lib/testing/storyboard/request-signing/builder.d.ts +16 -5
- package/dist/lib/testing/storyboard/request-signing/grader.d.mts +44 -1
- package/dist/lib/testing/storyboard/request-signing/grader.d.ts +44 -1
- package/dist/lib/testing/storyboard/request-signing/grader.js +46 -22
- package/dist/lib/testing/storyboard/request-signing/grader.mjs +43 -21
- package/dist/lib/testing/storyboard/request-signing/probe-dispatch.d.mts +86 -11
- package/dist/lib/testing/storyboard/request-signing/probe-dispatch.d.ts +86 -11
- package/dist/lib/testing/storyboard/request-signing/probe-dispatch.js +119 -25
- package/dist/lib/testing/storyboard/request-signing/probe-dispatch.mjs +117 -26
- package/dist/lib/testing/storyboard/request-signing/synthesize.js +22 -2
- package/dist/lib/testing/storyboard/request-signing/synthesize.mjs +22 -2
- package/dist/lib/testing/storyboard/runner.d.mts +103 -0
- package/dist/lib/testing/storyboard/runner.d.ts +103 -0
- package/dist/lib/testing/storyboard/runner.js +1090 -268
- package/dist/lib/testing/storyboard/runner.mjs +1096 -261
- package/dist/lib/testing/storyboard/seeding.d.mts +4 -1
- package/dist/lib/testing/storyboard/seeding.d.ts +4 -1
- package/dist/lib/testing/storyboard/seeding.js +55 -24
- package/dist/lib/testing/storyboard/seeding.mjs +55 -24
- package/dist/lib/testing/storyboard/test-kit.d.mts +37 -3
- package/dist/lib/testing/storyboard/test-kit.d.ts +37 -3
- package/dist/lib/testing/storyboard/test-kit.js +8 -2
- package/dist/lib/testing/storyboard/test-kit.mjs +7 -2
- package/dist/lib/testing/storyboard/types.d.mts +132 -10
- package/dist/lib/testing/storyboard/types.d.ts +132 -10
- package/dist/lib/testing/storyboard/types.js +17 -0
- package/dist/lib/testing/storyboard/types.mjs +16 -0
- package/dist/lib/testing/storyboard/validations.d.mts +1 -1
- package/dist/lib/testing/storyboard/validations.d.ts +1 -1
- package/dist/lib/testing/storyboard/validations.js +16 -0
- package/dist/lib/testing/storyboard/validations.mjs +16 -0
- package/dist/lib/testing/test-controller.d.mts +1 -1
- package/dist/lib/testing/test-controller.d.ts +1 -1
- package/dist/lib/types/buy-products.d.ts +71 -6
- package/dist/lib/types/control-media-buy.d.ts +25 -11
- package/dist/lib/types/core.generated.d.mts +69 -10
- package/dist/lib/types/core.generated.d.ts +69 -10
- package/dist/lib/types/create-media-buy.d.ts +71 -6
- package/dist/lib/types/forward-compat-error-codes.d.mts +7 -6
- package/dist/lib/types/forward-compat-error-codes.d.ts +7 -6
- package/dist/lib/types/index.d.mts +2 -2
- package/dist/lib/types/index.d.ts +2 -2
- package/dist/lib/types/schemas.generated.d.ts +8040 -8116
- package/dist/lib/types/schemas.generated.js +1074 -309
- package/dist/lib/types/schemas.generated.mjs +1068 -309
- package/dist/lib/types/tools.generated.d.mts +65 -6
- package/dist/lib/types/tools.generated.d.ts +65 -6
- package/dist/lib/types/update-media-buy.d.ts +71 -6
- package/dist/lib/utils/redact-secrets.d.mts +1 -1
- package/dist/lib/utils/redact-secrets.d.ts +1 -1
- package/dist/lib/utils/redact-secrets.js +1 -1
- package/dist/lib/utils/redact-secrets.mjs +1 -1
- package/dist/lib/v2/projection/cache-versions.d.mts +0 -1
- package/dist/lib/v2/projection/cache-versions.d.ts +0 -1
- package/dist/lib/v2/projection/cache-versions.js +1 -15
- package/dist/lib/v2/projection/cache-versions.mjs +1 -14
- package/dist/lib/v2/projection/canonical-properties.js +2 -2
- package/dist/lib/v2/projection/canonical-properties.mjs +3 -3
- package/dist/lib/v2/projection/registry.d.mts +1 -1
- package/dist/lib/v2/projection/registry.d.ts +1 -1
- package/dist/lib/v2/projection/registry.js +2 -2
- package/dist/lib/v2/projection/registry.mjs +3 -3
- package/dist/lib/version.d.mts +5 -5
- package/dist/lib/version.d.ts +5 -5
- package/dist/lib/version.js +3 -8
- package/dist/lib/version.mjs +3 -8
- package/dist/lib/wholesale-feed-sync/index.d.mts +1 -0
- package/dist/lib/wholesale-feed-sync/index.d.ts +1 -0
- package/dist/lib/wholesale-feed-sync/protocol-types.d.mts +42 -0
- package/dist/lib/wholesale-feed-sync/protocol-types.d.ts +42 -0
- package/dist/lib/wholesale-feed-sync/protocol-types.js +16 -0
- package/dist/lib/wholesale-feed-sync/protocol-types.mjs +0 -0
- package/dist/lib/wholesale-feed-sync/sync.d.mts +6 -6
- package/dist/lib/wholesale-feed-sync/sync.d.ts +6 -6
- package/dist/lib/wholesale-feed-sync/sync.js +3 -1
- package/dist/lib/wholesale-feed-sync/sync.mjs +3 -1
- package/dist/lib/wholesale-feed-sync/types.d.mts +15 -14
- package/dist/lib/wholesale-feed-sync/types.d.ts +15 -14
- package/dist/lib/wholesale-feed-sync/webhook-notification.d.mts +7 -5
- package/dist/lib/wholesale-feed-sync/webhook-notification.d.ts +7 -5
- package/dist/lib/wholesale-feed-sync/webhook-notification.js +45 -0
- package/dist/lib/wholesale-feed-sync/webhook-notification.mjs +44 -0
- package/docs/CLI.md +1 -1
- package/docs/TYPE-SUMMARY.md +118 -4
- package/docs/guides/ASYNC-API-REFERENCE.md +62 -1
- package/docs/guides/ASYNC-DEVELOPER-GUIDE.md +25 -0
- package/docs/guides/ASYNC-DOCUMENTATION-INDEX.md +3 -0
- package/docs/guides/BUYER-QUICKSTART-3.2.md +5 -0
- package/docs/guides/DURABLE-BUYER-WRITES.md +337 -0
- package/docs/guides/EXISTING-PLATFORM.md +35 -0
- package/docs/guides/MEDIA-BUY-3.2-COMPATIBILITY.md +7 -3
- package/docs/guides/MEDIA-BUY-ACTION-ASSESSMENT.md +300 -0
- package/docs/guides/REPORTING-LEDGER.md +654 -3
- package/docs/guides/REPORTING-SOURCE-EXECUTOR.md +63 -1
- package/docs/guides/SELLER-QUICKSTART-3.2.md +2 -0
- package/docs/guides/VALIDATE-YOUR-AGENT.md +35 -0
- package/docs/guides/idempotency-crash-recovery.md +4 -0
- package/docs/llms.txt +4 -2
- package/docs/migration-14.x-rc-worksheet.md +5 -5
- package/docs/migration-7.9-to-7.10.md +7 -5
- package/examples/README.md +17 -0
- package/examples/durable-buyer-writes/caller.ts +745 -0
- package/examples/durable-buyer-writes/worker.ts +240 -0
- package/examples/reliable-reporting-service/README.md +100 -0
- package/examples/seller-3.2-starter.ts +7 -8
- package/examples/targeting-input-existing-platform.ts +153 -0
- package/package.json +41 -29
- package/skills/build-seller-agent/specialisms/signed-requests.md +11 -1
- package/skills/cross-cutting.md +28 -11
- package/compliance/cache/3.1.0-beta.7/domains/brand/index.yaml +0 -160
- package/compliance/cache/3.1.0-beta.7/domains/brand/scenarios/distributed_brand_resolution.yaml +0 -415
- package/compliance/cache/3.1.0-beta.7/domains/brand/scenarios/single_side_trust_extension.yaml +0 -454
- package/compliance/cache/3.1.0-beta.7/domains/creative/index.yaml +0 -339
- package/compliance/cache/3.1.0-beta.7/domains/creative/scenarios/billing_out_of_band.yaml +0 -153
- package/compliance/cache/3.1.0-beta.7/domains/creative/scenarios/creative_lifecycle_webhooks.yaml +0 -389
- package/compliance/cache/3.1.0-beta.7/domains/creative/scenarios/native_in_feed.yaml +0 -543
- package/compliance/cache/3.1.0-beta.7/domains/governance/index.yaml +0 -682
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/index.yaml +0 -781
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/audience_buy_flow.yaml +0 -380
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/available_actions.yaml +0 -565
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/billing_finality_delivery.yaml +0 -354
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/canonical_formats.yaml +0 -711
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/clicks_buy_flow.yaml +0 -264
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/completed_views_buy_flow.yaml +0 -344
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/create_media_buy_async.yaml +0 -234
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/creative_fate_after_cancellation.yaml +0 -419
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/creative_reception.yaml +0 -247
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/delivery_reporting.yaml +0 -357
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/dependency_impairment.yaml +0 -633
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/dependency_impairment_cardinality.yaml +0 -800
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/event_dedup_flow.yaml +0 -399
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/frequency_cap_enforcement.yaml +0 -309
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/governance_approved.yaml +0 -214
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/governance_conditions.yaml +0 -199
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/governance_denied.yaml +0 -204
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/governance_denied_recovery.yaml +0 -252
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/invalid_transitions.yaml +0 -289
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/inventory_list_no_match.yaml +0 -148
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/inventory_list_targeting.yaml +0 -276
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/measurement_accountability.yaml +0 -244
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/measurement_terms_rejected.yaml +0 -203
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/pending_creatives_to_start.yaml +0 -274
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/per_creative_conversion_attribution.yaml +0 -500
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/performance_buy_flow.yaml +0 -428
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/performance_buy_flow_roas.yaml +0 -470
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/product_signal_targeting.yaml +0 -373
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/proposal_finalize.yaml +0 -399
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/proposal_finalize_asap_timing.yaml +0 -264
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/proposal_not_found_errors.yaml +0 -257
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/provenance_audit_observation.yaml +0 -333
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/provenance_enforcement.yaml +0 -517
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/provenance_truth_of_claim.yaml +0 -294
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/reach_buy_flow.yaml +0 -823
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/refine_finalize_exclusivity.yaml +0 -360
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/refine_products.yaml +0 -148
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/vendor_metric_accountability.yaml +0 -293
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/vendor_metric_catalog_precondition.yaml +0 -307
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/scenarios/vendor_metric_optimization_flow.yaml +0 -576
- package/compliance/cache/3.1.0-beta.7/domains/media-buy/state-machine.yaml +0 -442
- package/compliance/cache/3.1.0-beta.7/domains/signals/index.yaml +0 -266
- package/compliance/cache/3.1.0-beta.7/domains/sponsored-intelligence/index.yaml +0 -256
- package/compliance/cache/3.1.0-beta.7/index.json +0 -356
- package/compliance/cache/3.1.0-beta.7/protocols/brand/index.yaml +0 -160
- package/compliance/cache/3.1.0-beta.7/protocols/brand/scenarios/distributed_brand_resolution.yaml +0 -415
- package/compliance/cache/3.1.0-beta.7/protocols/brand/scenarios/single_side_trust_extension.yaml +0 -454
- package/compliance/cache/3.1.0-beta.7/protocols/creative/index.yaml +0 -339
- package/compliance/cache/3.1.0-beta.7/protocols/creative/scenarios/billing_out_of_band.yaml +0 -153
- package/compliance/cache/3.1.0-beta.7/protocols/creative/scenarios/creative_lifecycle_webhooks.yaml +0 -389
- package/compliance/cache/3.1.0-beta.7/protocols/creative/scenarios/native_in_feed.yaml +0 -543
- package/compliance/cache/3.1.0-beta.7/protocols/governance/index.yaml +0 -682
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/index.yaml +0 -781
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/audience_buy_flow.yaml +0 -380
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/available_actions.yaml +0 -565
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/billing_finality_delivery.yaml +0 -354
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/canonical_formats.yaml +0 -711
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/clicks_buy_flow.yaml +0 -264
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/completed_views_buy_flow.yaml +0 -344
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/create_media_buy_async.yaml +0 -234
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/creative_fate_after_cancellation.yaml +0 -419
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/creative_reception.yaml +0 -247
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/delivery_reporting.yaml +0 -357
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/dependency_impairment.yaml +0 -633
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/dependency_impairment_cardinality.yaml +0 -800
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/event_dedup_flow.yaml +0 -399
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/frequency_cap_enforcement.yaml +0 -309
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/governance_approved.yaml +0 -214
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/governance_conditions.yaml +0 -199
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/governance_denied.yaml +0 -204
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/governance_denied_recovery.yaml +0 -252
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/invalid_transitions.yaml +0 -289
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/inventory_list_no_match.yaml +0 -148
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/inventory_list_targeting.yaml +0 -276
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/measurement_accountability.yaml +0 -244
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/measurement_terms_rejected.yaml +0 -203
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/pending_creatives_to_start.yaml +0 -274
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/per_creative_conversion_attribution.yaml +0 -500
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/performance_buy_flow.yaml +0 -428
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/performance_buy_flow_roas.yaml +0 -470
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/product_signal_targeting.yaml +0 -373
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/proposal_finalize.yaml +0 -399
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/proposal_finalize_asap_timing.yaml +0 -264
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/proposal_not_found_errors.yaml +0 -257
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/provenance_audit_observation.yaml +0 -333
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/provenance_enforcement.yaml +0 -517
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/provenance_truth_of_claim.yaml +0 -294
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/reach_buy_flow.yaml +0 -823
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/refine_finalize_exclusivity.yaml +0 -360
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/refine_products.yaml +0 -148
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/vendor_metric_accountability.yaml +0 -293
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/vendor_metric_catalog_precondition.yaml +0 -307
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/scenarios/vendor_metric_optimization_flow.yaml +0 -576
- package/compliance/cache/3.1.0-beta.7/protocols/media-buy/state-machine.yaml +0 -442
- package/compliance/cache/3.1.0-beta.7/protocols/signals/index.yaml +0 -266
- package/compliance/cache/3.1.0-beta.7/protocols/sponsored-intelligence/index.yaml +0 -256
- package/compliance/cache/3.1.0-beta.7/specialisms/audience-sync/index.yaml +0 -313
- package/compliance/cache/3.1.0-beta.7/specialisms/brand-rights/index.yaml +0 -350
- package/compliance/cache/3.1.0-beta.7/specialisms/brand-rights/scenarios/governance_denied.yaml +0 -226
- package/compliance/cache/3.1.0-beta.7/specialisms/collection-lists/index.yaml +0 -359
- package/compliance/cache/3.1.0-beta.7/specialisms/content-standards/index.yaml +0 -572
- package/compliance/cache/3.1.0-beta.7/specialisms/creative-ad-server/index.yaml +0 -409
- package/compliance/cache/3.1.0-beta.7/specialisms/creative-generative/generative-seller.yaml +0 -807
- package/compliance/cache/3.1.0-beta.7/specialisms/creative-generative/index.yaml +0 -758
- package/compliance/cache/3.1.0-beta.7/specialisms/creative-template/index.yaml +0 -510
- package/compliance/cache/3.1.0-beta.7/specialisms/governance-aware-seller/index.yaml +0 -143
- package/compliance/cache/3.1.0-beta.7/specialisms/governance-aware-seller/scenarios/governance_multi_agent_rejected.yaml +0 -117
- package/compliance/cache/3.1.0-beta.7/specialisms/governance-delivery-monitor/index.yaml +0 -441
- package/compliance/cache/3.1.0-beta.7/specialisms/governance-spend-authority/denied.yaml +0 -221
- package/compliance/cache/3.1.0-beta.7/specialisms/governance-spend-authority/index.yaml +0 -330
- package/compliance/cache/3.1.0-beta.7/specialisms/property-lists/index.yaml +0 -482
- package/compliance/cache/3.1.0-beta.7/specialisms/sales-broadcast-tv/index.yaml +0 -738
- package/compliance/cache/3.1.0-beta.7/specialisms/sales-catalog-driven/index.yaml +0 -840
- package/compliance/cache/3.1.0-beta.7/specialisms/sales-guaranteed/index.yaml +0 -601
- package/compliance/cache/3.1.0-beta.7/specialisms/sales-non-guaranteed/index.yaml +0 -546
- package/compliance/cache/3.1.0-beta.7/specialisms/sales-proposal-mode/index.yaml +0 -586
- package/compliance/cache/3.1.0-beta.7/specialisms/sales-social/index.yaml +0 -919
- package/compliance/cache/3.1.0-beta.7/specialisms/signal-marketplace/index.yaml +0 -424
- package/compliance/cache/3.1.0-beta.7/specialisms/signal-marketplace/scenarios/governance_denied.yaml +0 -211
- package/compliance/cache/3.1.0-beta.7/specialisms/signal-owned/index.yaml +0 -317
- package/compliance/cache/3.1.0-beta.7/specialisms/sponsored-intelligence/index.yaml +0 -59
- package/compliance/cache/3.1.0-beta.7/test-kits/acme-outdoor-live.yaml +0 -78
- package/compliance/cache/3.1.0-beta.7/test-kits/acme-outdoor.yaml +0 -223
- package/compliance/cache/3.1.0-beta.7/test-kits/billing-gate-runner.yaml +0 -115
- package/compliance/cache/3.1.0-beta.7/test-kits/bistro-oranje.yaml +0 -126
- package/compliance/cache/3.1.0-beta.7/test-kits/distributed-brand-runner.yaml +0 -281
- package/compliance/cache/3.1.0-beta.7/test-kits/nova-motors.yaml +0 -262
- package/compliance/cache/3.1.0-beta.7/test-kits/osei-natural.yaml +0 -126
- package/compliance/cache/3.1.0-beta.7/test-kits/parallel-dispatch-runner.yaml +0 -196
- package/compliance/cache/3.1.0-beta.7/test-kits/rate-limit-trip-runner.yaml +0 -172
- package/compliance/cache/3.1.0-beta.7/test-kits/signed-requests-runner.yaml +0 -155
- package/compliance/cache/3.1.0-beta.7/test-kits/single-side-trust-runner.yaml +0 -294
- package/compliance/cache/3.1.0-beta.7/test-kits/substitution-observer-runner.yaml +0 -688
- package/compliance/cache/3.1.0-beta.7/test-kits/summit-foods.yaml +0 -125
- package/compliance/cache/3.1.0-beta.7/test-kits/webhook-receiver-runner.yaml +0 -265
- package/compliance/cache/3.1.0-beta.7/test-vectors/plan-hash/001-minimal-plan.json +0 -43
- package/compliance/cache/3.1.0-beta.7/test-vectors/plan-hash/002-full-plan.json +0 -217
- package/compliance/cache/3.1.0-beta.7/test-vectors/plan-hash/003-bookkeeping-stripped.json +0 -60
- package/compliance/cache/3.1.0-beta.7/test-vectors/plan-hash/004a-human-review-omitted.json +0 -43
- package/compliance/cache/3.1.0-beta.7/test-vectors/plan-hash/004b-human-review-explicit-null.json +0 -49
- package/compliance/cache/3.1.0-beta.7/test-vectors/plan-hash/005a-policy-categories-order-1.json +0 -53
- package/compliance/cache/3.1.0-beta.7/test-vectors/plan-hash/005b-policy-categories-order-2.json +0 -57
- package/compliance/cache/3.1.0-beta.7/test-vectors/plan-hash/006a-ext-trace-v1.json +0 -49
- package/compliance/cache/3.1.0-beta.7/test-vectors/plan-hash/006b-ext-trace-v2.json +0 -53
- package/compliance/cache/3.1.0-beta.7/test-vectors/plan-hash/007-unicode-objectives.json +0 -43
- package/compliance/cache/3.1.0-beta.7/test-vectors/plan-hash/008-numeric-canonicalization.json +0 -65
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/README.md +0 -220
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/canonicalization.json +0 -241
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/keys.json +0 -60
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/001-no-signature-header.json +0 -24
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/002-wrong-tag.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/003-expired-signature.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/004-window-too-long.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/005-alg-not-allowed.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/006-missing-covered-component.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/007-missing-content-digest.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/008-unknown-keyid.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/009-key-ops-missing-verify.json +0 -27
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/010-content-digest-mismatch.json +0 -33
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/011-malformed-header.json +0 -27
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/012-missing-expires-param.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/013-expires-le-created.json +0 -27
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/014-missing-nonce-param.json +0 -27
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/015-signature-invalid.json +0 -28
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/016-replayed-nonce.json +0 -35
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/017-key-revoked.json +0 -38
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/018-digest-covered-when-forbidden.json +0 -28
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/019-signature-without-signature-input.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/020-rate-abuse.json +0 -34
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/021-duplicate-signature-input-label.json +0 -31
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/022-multi-valued-content-type.json +0 -31
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/023-multi-valued-content-digest.json +0 -32
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/024-unquoted-string-param.json +0 -31
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/025-jwk-alg-crv-mismatch.json +0 -43
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/026-non-ascii-host.json +0 -31
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/027-webhook-registration-authentication-unsigned.json +0 -25
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/negative/028-unsigned-protocol-method-required.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/positive/001-basic-post.json +0 -30
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/positive/002-post-with-content-digest.json +0 -31
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/positive/003-es256-post.json +0 -30
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/positive/004-multiple-signature-labels.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/positive/005-default-port-stripped.json +0 -30
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/positive/006-dot-segment-path.json +0 -30
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/positive/007-query-byte-preserved.json +0 -30
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/positive/008-percent-encoded-path.json +0 -30
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/positive/009-percent-encoded-unreserved-decoded.json +0 -30
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/positive/010-percent-encoded-slash-preserved.json +0 -30
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/positive/011-ipv6-authority.json +0 -30
- package/compliance/cache/3.1.0-beta.7/test-vectors/request-signing/positive/012-ipv6-authority-default-port-stripped.json +0 -30
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/README.md +0 -211
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/keys.json +0 -61
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/negative/001-wrong-tag.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/negative/002-expired-signature.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/negative/003-window-too-long.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/negative/004-alg-not-allowed.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/negative/005-missing-authority-component.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/negative/006-missing-content-digest.json +0 -25
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/negative/007-unknown-keyid.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/negative/008-wrong-adcp-use.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/negative/009-content-digest-mismatch.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/negative/010-malformed-signature-input.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/negative/011-signature-without-input.json +0 -25
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/negative/012-missing-expires-param.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/negative/013-expires-le-created.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/negative/014-missing-nonce-param.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/negative/015-signature-invalid.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/negative/016-replayed-nonce.json +0 -37
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/negative/017-key-revoked.json +0 -32
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/negative/018-rate-abuse.json +0 -33
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/negative/019-revocation-stale.json +0 -32
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/negative/020-key-ops-missing-verify.json +0 -41
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/negative/021-base64-alphabet-mixing.json +0 -26
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/positive/001-basic-post.json +0 -24
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/positive/002-es256-post.json +0 -24
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/positive/003-multiple-signature-labels.json +0 -24
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/positive/004-default-port-stripped.json +0 -24
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/positive/005-percent-encoded-path.json +0 -24
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/positive/006-query-byte-preserved.json +0 -24
- package/compliance/cache/3.1.0-beta.7/test-vectors/webhook-signing/positive/007-body-without-idempotency-key.json +0 -25
- package/compliance/cache/3.1.0-beta.7/universal/billing-gate-dispatch.yaml +0 -450
- package/compliance/cache/3.1.0-beta.7/universal/canonical-format-validate-input.yaml +0 -640
- package/compliance/cache/3.1.0-beta.7/universal/capability-discovery.yaml +0 -125
- package/compliance/cache/3.1.0-beta.7/universal/collection-lists-pagination-integrity.yaml +0 -306
- package/compliance/cache/3.1.0-beta.7/universal/comply-controller-mode-gate.yaml +0 -141
- package/compliance/cache/3.1.0-beta.7/universal/content-standards-pagination-integrity.yaml +0 -326
- package/compliance/cache/3.1.0-beta.7/universal/deterministic-testing.yaml +0 -1430
- package/compliance/cache/3.1.0-beta.7/universal/error-compliance-signals.yaml +0 -377
- package/compliance/cache/3.1.0-beta.7/universal/error-compliance.yaml +0 -528
- package/compliance/cache/3.1.0-beta.7/universal/fictional-entities.yaml +0 -307
- package/compliance/cache/3.1.0-beta.7/universal/get-media-buys-pagination-integrity.yaml +0 -160
- package/compliance/cache/3.1.0-beta.7/universal/get-signals-pagination-integrity.yaml +0 -211
- package/compliance/cache/3.1.0-beta.7/universal/idempotency.yaml +0 -861
- package/compliance/cache/3.1.0-beta.7/universal/notification-config-event-scope.yaml +0 -119
- package/compliance/cache/3.1.0-beta.7/universal/notification-config-lifecycle.yaml +0 -337
- package/compliance/cache/3.1.0-beta.7/universal/notification-config-rejections.yaml +0 -107
- package/compliance/cache/3.1.0-beta.7/universal/pagination-integrity-creative-formats.yaml +0 -265
- package/compliance/cache/3.1.0-beta.7/universal/pagination-integrity-list-accounts.yaml +0 -245
- package/compliance/cache/3.1.0-beta.7/universal/pagination-integrity.yaml +0 -263
- package/compliance/cache/3.1.0-beta.7/universal/property-lists-pagination-integrity.yaml +0 -307
- package/compliance/cache/3.1.0-beta.7/universal/read-tool-idempotency.yaml +0 -405
- package/compliance/cache/3.1.0-beta.7/universal/runner-output-contract.yaml +0 -1266
- package/compliance/cache/3.1.0-beta.7/universal/schema-validation-signals.yaml +0 -181
- package/compliance/cache/3.1.0-beta.7/universal/schema-validation.yaml +0 -548
- package/compliance/cache/3.1.0-beta.7/universal/security.yaml +0 -539
- package/compliance/cache/3.1.0-beta.7/universal/signed-requests.yaml +0 -217
- package/compliance/cache/3.1.0-beta.7/universal/stale-response-advisory.yaml +0 -295
- package/compliance/cache/3.1.0-beta.7/universal/storyboard-schema.yaml +0 -2136
- package/compliance/cache/3.1.0-beta.7/universal/v3-envelope-integrity.yaml +0 -117
- package/compliance/cache/3.1.0-beta.7/universal/version-negotiation.yaml +0 -130
- package/compliance/cache/3.1.0-beta.7/universal/webhook-emission.yaml +0 -411
- package/compliance/cache/3.1.0-beta.7/universal/wholesale-feed-bulk-webhooks.yaml +0 -82
- package/compliance/cache/3.1.0-beta.7/universal/wholesale-feed-product-webhooks.yaml +0 -83
- package/compliance/cache/3.1.0-beta.7/universal/wholesale-feed-products.yaml +0 -151
- package/compliance/cache/3.1.0-beta.7/universal/wholesale-feed-signal-webhooks.yaml +0 -83
- package/compliance/cache/3.1.0-beta.7/universal/wholesale-feed-signals.yaml +0 -149
- package/dist/lib/types/v3-1-beta/index.d.mts +0 -1
- package/dist/lib/types/v3-1-beta/index.d.ts +0 -1
- package/dist/lib/types/v3-1-beta/index.mjs +0 -1
- package/dist/lib/types/v3-1-beta/tools.generated.d.mts +0 -26788
- package/dist/lib/types/v3-1-beta/tools.generated.d.ts +0 -26788
- /package/dist/lib/{types/v3-1-beta/tools.generated.mjs → media-buy/action-types.mjs} +0 -0
|
@@ -1424,10 +1424,11 @@ function createAdcpServerFromPlatform(platform, opts) {
|
|
|
1424
1424
|
const somCandidate = explicitSom ?? derivedSom;
|
|
1425
1425
|
const som = somCandidate != null && somCandidate.length > 0 ? somCandidate : void 0;
|
|
1426
1426
|
const fc = platform.capabilities.frequency_capping;
|
|
1427
|
+
const reportingDelivery = platform.reporting?.capabilities;
|
|
1427
1428
|
const targeting = platform.capabilities.targeting ? (0, import_capabilities.normalizeTargetingCapabilities)(platform.capabilities.targeting) : void 0;
|
|
1428
1429
|
const hasSalesPlatform = platform.sales != null || platform.mediaBuyLifecycle != null || platform.proposalManager != null;
|
|
1429
1430
|
const supportsProposals = platform.capabilities.supportsProposals ?? (platform.proposalManager != null || platform.mediaBuyLifecycle?.requestProposals != null || platform.mediaBuyLifecycle?.refineProposals != null ? true : hasSalesPlatform ? false : void 0);
|
|
1430
|
-
const hasMediaBuyProjection = hasSalesPlatform || at != null || ct != null || cs != null || som != null || fc != null || targeting != null || supportsProposals !== void 0;
|
|
1431
|
+
const hasMediaBuyProjection = hasSalesPlatform || at != null || ct != null || cs != null || som != null || fc != null || reportingDelivery != null || targeting != null || supportsProposals !== void 0;
|
|
1431
1432
|
const configuredAdcpVersion = opts.adcpVersion ?? import_version.ADCP_VERSION;
|
|
1432
1433
|
const configuredRelease = parseAdcpRelease(configuredAdcpVersion);
|
|
1433
1434
|
if (!configuredRelease) {
|
|
@@ -1435,6 +1436,9 @@ function createAdcpServerFromPlatform(platform, opts) {
|
|
|
1435
1436
|
`Configured AdCP version '${configuredAdcpVersion}' is not a valid release identifier`
|
|
1436
1437
|
);
|
|
1437
1438
|
}
|
|
1439
|
+
if (reportingDelivery && !(0, import_adcp_version_config.isAdcpVersionAtLeast)(configuredAdcpVersion, "3.2.0-rc.3")) {
|
|
1440
|
+
throw new import_validate_platform.PlatformConfigError("Reliable Reporting Core requires an AdCP 3.2.0-rc.3 or newer schema pin");
|
|
1441
|
+
}
|
|
1438
1442
|
for (const advertisedVersion of platform.capabilities.supported_versions ?? []) {
|
|
1439
1443
|
const advertisedRelease = parseAdcpRelease(advertisedVersion);
|
|
1440
1444
|
if (!advertisedRelease) {
|
|
@@ -1459,6 +1463,7 @@ function createAdcpServerFromPlatform(platform, opts) {
|
|
|
1459
1463
|
...cs != null && { content_standards: cs },
|
|
1460
1464
|
...som != null && { supported_optimization_metrics: som },
|
|
1461
1465
|
...fc != null && { frequency_capping: fc },
|
|
1466
|
+
...reportingDelivery != null && { reporting_delivery: reportingDelivery },
|
|
1462
1467
|
...targeting != null && { execution: { targeting } },
|
|
1463
1468
|
...supportsProposals !== void 0 && { supports_proposals: supportsProposals },
|
|
1464
1469
|
features: {
|
|
@@ -1528,6 +1533,13 @@ function createAdcpServerFromPlatform(platform, opts) {
|
|
|
1528
1533
|
const adopterExtensionsSupported = platform.capabilities.extensions_supported;
|
|
1529
1534
|
const adopterCapabilityExt = platform.capabilities.ext;
|
|
1530
1535
|
const adopterOverrides = platform.capabilities.overrides;
|
|
1536
|
+
const adopterExperimentalFeatures = adopterOverrides?.experimental_features ?? [];
|
|
1537
|
+
if (reportingDelivery && !adopterExperimentalFeatures.includes("media_buy.reporting_delivery") && adopterExperimentalFeatures.length >= 32) {
|
|
1538
|
+
throw new import_validate_platform.PlatformConfigError(
|
|
1539
|
+
"Reliable Reporting Core cannot be added because experimental_features already contains 32 entries"
|
|
1540
|
+
);
|
|
1541
|
+
}
|
|
1542
|
+
const experimentalFeatures = reportingDelivery ? Array.from(/* @__PURE__ */ new Set([...adopterExperimentalFeatures, "media_buy.reporting_delivery"])) : adopterOverrides?.experimental_features;
|
|
1531
1543
|
const adopterSupportedVersions = platform.capabilities.supported_versions;
|
|
1532
1544
|
const hasOverridesObject = hasOverridesProjection || adopterOverrides !== void 0;
|
|
1533
1545
|
const projectedCapabilitiesConfig = {
|
|
@@ -1557,7 +1569,8 @@ function createAdcpServerFromPlatform(platform, opts) {
|
|
|
1557
1569
|
...hasAccountProjection && {
|
|
1558
1570
|
account: mergeCapabilityOverride(adopterOverrides?.account, accountOverrides)
|
|
1559
1571
|
},
|
|
1560
|
-
...hasComplianceTestingProjection && complianceTestingOverrides != null && { compliance_testing: complianceTestingOverrides }
|
|
1572
|
+
...hasComplianceTestingProjection && complianceTestingOverrides != null && { compliance_testing: complianceTestingOverrides },
|
|
1573
|
+
...experimentalFeatures !== void 0 && { experimental_features: experimentalFeatures }
|
|
1561
1574
|
}
|
|
1562
1575
|
}
|
|
1563
1576
|
};
|
|
@@ -1623,6 +1636,14 @@ function createAdcpServerFromPlatform(platform, opts) {
|
|
|
1623
1636
|
// cross-credential collisions without reopening a duplicate-buy window
|
|
1624
1637
|
// on create_media_buy/update_media_buy. Explicit adopter resolvers still
|
|
1625
1638
|
// win for every tool.
|
|
1639
|
+
// A service-installed reporting platform names the consumer a receipt is
|
|
1640
|
+
// deposited for; scope that tool's replay by the same value rather than by
|
|
1641
|
+
// the caller's credential, which two operator seats can share.
|
|
1642
|
+
...opts.resolveReportingConsumerId ?? platform.reporting?.resolveConsumerId ? {
|
|
1643
|
+
resolveReportingConsumerId: opts.resolveReportingConsumerId ?? ((ctx, params) => platform.reporting.resolveConsumerId(
|
|
1644
|
+
ctxFor(ctx, params)
|
|
1645
|
+
))
|
|
1646
|
+
} : {},
|
|
1626
1647
|
resolveIdempotencyPrincipal: opts.resolveIdempotencyPrincipal ?? ((ctx, _params, toolName) => import_create_adcp_server.COMPACT_MEDIA_BUY_MUTATION_TOOLS.has(toolName) ? authenticatedPrincipalFor(ctx) : ctx.authInfo?.clientId ?? ctx.sessionKey ?? ctx.account?.id ?? void 0),
|
|
1627
1648
|
resolveAccount: async (ref, ctx) => {
|
|
1628
1649
|
const start = Date.now();
|
|
@@ -1758,7 +1779,8 @@ function createAdcpServerFromPlatform(platform, opts) {
|
|
|
1758
1779
|
),
|
|
1759
1780
|
"mediaBuy",
|
|
1760
1781
|
mergeOpts,
|
|
1761
|
-
defaultCreativeWireMode
|
|
1782
|
+
defaultCreativeWireMode,
|
|
1783
|
+
platform.mediaBuyLifecycle?.getMediaBuyDelivery !== void 0 || platform.sales?.getMediaBuyDelivery !== void 0
|
|
1762
1784
|
),
|
|
1763
1785
|
proposalNegotiation: platformProposalNegotiation ?? opts.proposalNegotiation,
|
|
1764
1786
|
creative: mergeHandlers(
|
|
@@ -2475,13 +2497,14 @@ const mergeSeamLoggedKeys = /* @__PURE__ */ new Set();
|
|
|
2475
2497
|
function _resetMergeSeamDedupe() {
|
|
2476
2498
|
mergeSeamLoggedKeys.clear();
|
|
2477
2499
|
}
|
|
2478
|
-
function mergeHandlers(custom, platform, domain, opts) {
|
|
2500
|
+
function mergeHandlers(custom, platform, domain, opts, composedKeys = /* @__PURE__ */ new Set()) {
|
|
2479
2501
|
if (!custom && !platform) return void 0;
|
|
2480
2502
|
if (!custom) return platform;
|
|
2481
2503
|
if (!platform) return custom;
|
|
2482
2504
|
if (opts.mode !== "silent") {
|
|
2483
2505
|
const collisions = [];
|
|
2484
2506
|
for (const key of Object.keys(platform)) {
|
|
2507
|
+
if (composedKeys.has(key)) continue;
|
|
2485
2508
|
if (key in custom) collisions.push(key);
|
|
2486
2509
|
}
|
|
2487
2510
|
if (collisions.length > 0) {
|
|
@@ -2499,10 +2522,26 @@ function mergeHandlers(custom, platform, domain, opts) {
|
|
|
2499
2522
|
}
|
|
2500
2523
|
return { ...custom, ...platform };
|
|
2501
2524
|
}
|
|
2502
|
-
function mergeMediaBuyHandlers(custom, platform, domain, opts, fallbackWireMode) {
|
|
2503
|
-
const
|
|
2525
|
+
function mergeMediaBuyHandlers(custom, platform, domain, opts, fallbackWireMode, platformServesCumulativeDelivery) {
|
|
2526
|
+
const composesDelivery = !platformServesCumulativeDelivery && typeof custom?.getMediaBuyDelivery === "function" && typeof platform?.getMediaBuyDelivery === "function";
|
|
2527
|
+
const merged = mergeHandlers(
|
|
2528
|
+
custom,
|
|
2529
|
+
platform,
|
|
2530
|
+
domain,
|
|
2531
|
+
opts,
|
|
2532
|
+
composesDelivery ? /* @__PURE__ */ new Set(["getMediaBuyDelivery"]) : void 0
|
|
2533
|
+
);
|
|
2504
2534
|
if (!custom || !platform || !merged) return merged;
|
|
2505
2535
|
const routed = { ...merged };
|
|
2536
|
+
const customDelivery = custom.getMediaBuyDelivery;
|
|
2537
|
+
const platformDelivery = platform.getMediaBuyDelivery;
|
|
2538
|
+
if (composesDelivery && typeof customDelivery === "function" && typeof platformDelivery === "function") {
|
|
2539
|
+
routed.getMediaBuyDelivery = (...args) => {
|
|
2540
|
+
const revisionId = args[0]?.reporting_revision_id;
|
|
2541
|
+
const exactRevisionRead = typeof revisionId === "string" && revisionId.length > 0;
|
|
2542
|
+
return exactRevisionRead ? Reflect.apply(platformDelivery, platform, args) : Reflect.apply(customDelivery, custom, args);
|
|
2543
|
+
};
|
|
2544
|
+
}
|
|
2506
2545
|
for (const key of ["createMediaBuy", "updateMediaBuy", "getMediaBuys"]) {
|
|
2507
2546
|
const customHandler = custom[key];
|
|
2508
2547
|
const platformHandler = platform[key];
|
|
@@ -3567,10 +3606,12 @@ function buildProposalNegotiationHandlers(platform, taskRegistry, taskWebhookEmi
|
|
|
3567
3606
|
function buildMediaBuyHandlers(platform, taskRegistry, taskWebhookEmit, observability, logger, pushOpts, ctxFor, ctxMetadataStore, mediaBuyStore, proposalStore, legacyFormatConverter, legacyFormatResolver, legacyFormatResolverOptions, canonicalFormatLegacyResolver, creativeWireMode) {
|
|
3568
3607
|
const sales = platform.sales;
|
|
3569
3608
|
const lifecycle = platform.mediaBuyLifecycle;
|
|
3570
|
-
const
|
|
3609
|
+
const reporting = platform.reporting;
|
|
3610
|
+
const liveMediaBuyDelivery = lifecycle?.getMediaBuyDelivery ?? sales?.getMediaBuyDelivery;
|
|
3611
|
+
const getMediaBuyDelivery = liveMediaBuyDelivery ?? reporting?.getMediaBuyDelivery;
|
|
3571
3612
|
const getMediaBuys = lifecycle?.getMediaBuys ?? sales?.getMediaBuys;
|
|
3572
3613
|
const proposalManager = platform.proposalManager;
|
|
3573
|
-
if (!sales && !lifecycle && !proposalManager) return void 0;
|
|
3614
|
+
if (!sales && !lifecycle && !proposalManager && !reporting) return void 0;
|
|
3574
3615
|
const dispatchCompactMutation = async (tool, params, ctx, invoke) => {
|
|
3575
3616
|
return projectSync(
|
|
3576
3617
|
async () => {
|
|
@@ -3623,6 +3664,16 @@ function buildMediaBuyHandlers(platform, taskRegistry, taskWebhookEmit, observab
|
|
|
3623
3664
|
(value) => value
|
|
3624
3665
|
);
|
|
3625
3666
|
};
|
|
3667
|
+
const reportingContext = (tool, params, ctx) => {
|
|
3668
|
+
if (ctx.authInfo === void 0 && ctx.agent === void 0) {
|
|
3669
|
+
throw new import_async_outcome.AdcpError("AUTH_MISSING", {
|
|
3670
|
+
message: `${tool} requires an authenticated buyer principal`,
|
|
3671
|
+
recovery: "correctable"
|
|
3672
|
+
});
|
|
3673
|
+
}
|
|
3674
|
+
if (!ctx.account?.id) throw missingAccountError(tool, platform.accounts.resolution);
|
|
3675
|
+
return ctxFor(ctx, params);
|
|
3676
|
+
};
|
|
3626
3677
|
return {
|
|
3627
3678
|
...lifecycle?.listProducts && {
|
|
3628
3679
|
listProducts: async (...[params, ctx]) => {
|
|
@@ -4074,7 +4125,11 @@ function buildMediaBuyHandlers(platform, taskRegistry, taskWebhookEmit, observab
|
|
|
4074
4125
|
...getMediaBuyDelivery && {
|
|
4075
4126
|
getMediaBuyDelivery: async (...[params, ctx]) => {
|
|
4076
4127
|
const responseWireMode = creativeWireModeForRequest(ctx, creativeWireMode, params);
|
|
4077
|
-
const
|
|
4128
|
+
const requestedRevisionId = params.reporting_revision_id;
|
|
4129
|
+
const exactRevisionRead = typeof requestedRevisionId === "string" && requestedRevisionId.length > 0;
|
|
4130
|
+
const exactRevisionRequested = exactRevisionRead;
|
|
4131
|
+
const reportingRevisionRequested = exactRevisionRequested && reporting !== void 0;
|
|
4132
|
+
const reqCtx = reportingRevisionRequested ? reportingContext("get_media_buy_delivery", params, ctx) : ctxFor(ctx, params);
|
|
4078
4133
|
if (proposalStore) {
|
|
4079
4134
|
const ids = params.media_buy_ids;
|
|
4080
4135
|
const firstId = Array.isArray(ids) && ids.length > 0 ? ids[0] : void 0;
|
|
@@ -4091,7 +4146,18 @@ function buildMediaBuyHandlers(platform, taskRegistry, taskWebhookEmit, observab
|
|
|
4091
4146
|
}
|
|
4092
4147
|
return projectSync(
|
|
4093
4148
|
async () => {
|
|
4094
|
-
const
|
|
4149
|
+
const selectedDelivery = exactRevisionRequested ? reporting?.getMediaBuyDelivery ?? liveMediaBuyDelivery : liveMediaBuyDelivery;
|
|
4150
|
+
if (!selectedDelivery) {
|
|
4151
|
+
throw new import_async_outcome.AdcpError("UNSUPPORTED_FEATURE", {
|
|
4152
|
+
message: "This reporting-only platform does not provide cumulative delivery reads",
|
|
4153
|
+
recovery: "correctable"
|
|
4154
|
+
});
|
|
4155
|
+
}
|
|
4156
|
+
const servedByReportingLedger = exactRevisionRead && reporting?.getMediaBuyDelivery !== void 0 && selectedDelivery === reporting.getMediaBuyDelivery;
|
|
4157
|
+
const result = await selectedDelivery(asValidatedDomainRequest(params), reqCtx);
|
|
4158
|
+
if (servedByReportingLedger) {
|
|
4159
|
+
return result;
|
|
4160
|
+
}
|
|
4095
4161
|
warnIfTruncatedMultiIdResponse(
|
|
4096
4162
|
"getMediaBuyDelivery",
|
|
4097
4163
|
"media_buy_ids",
|
|
@@ -4111,6 +4177,18 @@ function buildMediaBuyHandlers(platform, taskRegistry, taskWebhookEmit, observab
|
|
|
4111
4177
|
);
|
|
4112
4178
|
}
|
|
4113
4179
|
},
|
|
4180
|
+
...reporting?.getReportingStatus && {
|
|
4181
|
+
getReportingStatus: async (...[params, ctx]) => projectSync(
|
|
4182
|
+
() => reporting.getReportingStatus(params, reportingContext("get_reporting_status", params, ctx)),
|
|
4183
|
+
(value) => value
|
|
4184
|
+
)
|
|
4185
|
+
},
|
|
4186
|
+
...reporting?.syncReportingStatus && {
|
|
4187
|
+
syncReportingStatus: async (...[params, ctx]) => projectSync(
|
|
4188
|
+
() => reporting.syncReportingStatus(params, reportingContext("sync_reporting_status", params, ctx)),
|
|
4189
|
+
(value) => value
|
|
4190
|
+
)
|
|
4191
|
+
},
|
|
4114
4192
|
// Optional methods — return UNSUPPORTED_FEATURE when the platform omits
|
|
4115
4193
|
// them. Adopters that haven't migrated to the v6 platform interface for
|
|
4116
4194
|
// these specific tools can still pass raw handlers via opts.legacyHandlers.mediaBuy
|
|
@@ -1453,10 +1453,11 @@ function createAdcpServerFromPlatform(platform, opts) {
|
|
|
1453
1453
|
const somCandidate = explicitSom ?? derivedSom;
|
|
1454
1454
|
const som = somCandidate != null && somCandidate.length > 0 ? somCandidate : void 0;
|
|
1455
1455
|
const fc = platform.capabilities.frequency_capping;
|
|
1456
|
+
const reportingDelivery = platform.reporting?.capabilities;
|
|
1456
1457
|
const targeting = platform.capabilities.targeting ? normalizeTargetingCapabilities(platform.capabilities.targeting) : void 0;
|
|
1457
1458
|
const hasSalesPlatform = platform.sales != null || platform.mediaBuyLifecycle != null || platform.proposalManager != null;
|
|
1458
1459
|
const supportsProposals = platform.capabilities.supportsProposals ?? (platform.proposalManager != null || platform.mediaBuyLifecycle?.requestProposals != null || platform.mediaBuyLifecycle?.refineProposals != null ? true : hasSalesPlatform ? false : void 0);
|
|
1459
|
-
const hasMediaBuyProjection = hasSalesPlatform || at != null || ct != null || cs != null || som != null || fc != null || targeting != null || supportsProposals !== void 0;
|
|
1460
|
+
const hasMediaBuyProjection = hasSalesPlatform || at != null || ct != null || cs != null || som != null || fc != null || reportingDelivery != null || targeting != null || supportsProposals !== void 0;
|
|
1460
1461
|
const configuredAdcpVersion = opts.adcpVersion ?? ADCP_VERSION;
|
|
1461
1462
|
const configuredRelease = parseAdcpRelease(configuredAdcpVersion);
|
|
1462
1463
|
if (!configuredRelease) {
|
|
@@ -1464,6 +1465,9 @@ function createAdcpServerFromPlatform(platform, opts) {
|
|
|
1464
1465
|
`Configured AdCP version '${configuredAdcpVersion}' is not a valid release identifier`
|
|
1465
1466
|
);
|
|
1466
1467
|
}
|
|
1468
|
+
if (reportingDelivery && !isAdcpVersionAtLeast(configuredAdcpVersion, "3.2.0-rc.3")) {
|
|
1469
|
+
throw new PlatformConfigError("Reliable Reporting Core requires an AdCP 3.2.0-rc.3 or newer schema pin");
|
|
1470
|
+
}
|
|
1467
1471
|
for (const advertisedVersion of platform.capabilities.supported_versions ?? []) {
|
|
1468
1472
|
const advertisedRelease = parseAdcpRelease(advertisedVersion);
|
|
1469
1473
|
if (!advertisedRelease) {
|
|
@@ -1488,6 +1492,7 @@ function createAdcpServerFromPlatform(platform, opts) {
|
|
|
1488
1492
|
...cs != null && { content_standards: cs },
|
|
1489
1493
|
...som != null && { supported_optimization_metrics: som },
|
|
1490
1494
|
...fc != null && { frequency_capping: fc },
|
|
1495
|
+
...reportingDelivery != null && { reporting_delivery: reportingDelivery },
|
|
1491
1496
|
...targeting != null && { execution: { targeting } },
|
|
1492
1497
|
...supportsProposals !== void 0 && { supports_proposals: supportsProposals },
|
|
1493
1498
|
features: {
|
|
@@ -1557,6 +1562,13 @@ function createAdcpServerFromPlatform(platform, opts) {
|
|
|
1557
1562
|
const adopterExtensionsSupported = platform.capabilities.extensions_supported;
|
|
1558
1563
|
const adopterCapabilityExt = platform.capabilities.ext;
|
|
1559
1564
|
const adopterOverrides = platform.capabilities.overrides;
|
|
1565
|
+
const adopterExperimentalFeatures = adopterOverrides?.experimental_features ?? [];
|
|
1566
|
+
if (reportingDelivery && !adopterExperimentalFeatures.includes("media_buy.reporting_delivery") && adopterExperimentalFeatures.length >= 32) {
|
|
1567
|
+
throw new PlatformConfigError(
|
|
1568
|
+
"Reliable Reporting Core cannot be added because experimental_features already contains 32 entries"
|
|
1569
|
+
);
|
|
1570
|
+
}
|
|
1571
|
+
const experimentalFeatures = reportingDelivery ? Array.from(/* @__PURE__ */ new Set([...adopterExperimentalFeatures, "media_buy.reporting_delivery"])) : adopterOverrides?.experimental_features;
|
|
1560
1572
|
const adopterSupportedVersions = platform.capabilities.supported_versions;
|
|
1561
1573
|
const hasOverridesObject = hasOverridesProjection || adopterOverrides !== void 0;
|
|
1562
1574
|
const projectedCapabilitiesConfig = {
|
|
@@ -1586,7 +1598,8 @@ function createAdcpServerFromPlatform(platform, opts) {
|
|
|
1586
1598
|
...hasAccountProjection && {
|
|
1587
1599
|
account: mergeCapabilityOverride(adopterOverrides?.account, accountOverrides)
|
|
1588
1600
|
},
|
|
1589
|
-
...hasComplianceTestingProjection && complianceTestingOverrides != null && { compliance_testing: complianceTestingOverrides }
|
|
1601
|
+
...hasComplianceTestingProjection && complianceTestingOverrides != null && { compliance_testing: complianceTestingOverrides },
|
|
1602
|
+
...experimentalFeatures !== void 0 && { experimental_features: experimentalFeatures }
|
|
1590
1603
|
}
|
|
1591
1604
|
}
|
|
1592
1605
|
};
|
|
@@ -1652,6 +1665,14 @@ function createAdcpServerFromPlatform(platform, opts) {
|
|
|
1652
1665
|
// cross-credential collisions without reopening a duplicate-buy window
|
|
1653
1666
|
// on create_media_buy/update_media_buy. Explicit adopter resolvers still
|
|
1654
1667
|
// win for every tool.
|
|
1668
|
+
// A service-installed reporting platform names the consumer a receipt is
|
|
1669
|
+
// deposited for; scope that tool's replay by the same value rather than by
|
|
1670
|
+
// the caller's credential, which two operator seats can share.
|
|
1671
|
+
...opts.resolveReportingConsumerId ?? platform.reporting?.resolveConsumerId ? {
|
|
1672
|
+
resolveReportingConsumerId: opts.resolveReportingConsumerId ?? ((ctx, params) => platform.reporting.resolveConsumerId(
|
|
1673
|
+
ctxFor(ctx, params)
|
|
1674
|
+
))
|
|
1675
|
+
} : {},
|
|
1655
1676
|
resolveIdempotencyPrincipal: opts.resolveIdempotencyPrincipal ?? ((ctx, _params, toolName) => COMPACT_MEDIA_BUY_MUTATION_TOOLS.has(toolName) ? authenticatedPrincipalFor(ctx) : ctx.authInfo?.clientId ?? ctx.sessionKey ?? ctx.account?.id ?? void 0),
|
|
1656
1677
|
resolveAccount: async (ref, ctx) => {
|
|
1657
1678
|
const start = Date.now();
|
|
@@ -1787,7 +1808,8 @@ function createAdcpServerFromPlatform(platform, opts) {
|
|
|
1787
1808
|
),
|
|
1788
1809
|
"mediaBuy",
|
|
1789
1810
|
mergeOpts,
|
|
1790
|
-
defaultCreativeWireMode
|
|
1811
|
+
defaultCreativeWireMode,
|
|
1812
|
+
platform.mediaBuyLifecycle?.getMediaBuyDelivery !== void 0 || platform.sales?.getMediaBuyDelivery !== void 0
|
|
1791
1813
|
),
|
|
1792
1814
|
proposalNegotiation: platformProposalNegotiation ?? opts.proposalNegotiation,
|
|
1793
1815
|
creative: mergeHandlers(
|
|
@@ -2504,13 +2526,14 @@ const mergeSeamLoggedKeys = /* @__PURE__ */ new Set();
|
|
|
2504
2526
|
function _resetMergeSeamDedupe() {
|
|
2505
2527
|
mergeSeamLoggedKeys.clear();
|
|
2506
2528
|
}
|
|
2507
|
-
function mergeHandlers(custom, platform, domain, opts) {
|
|
2529
|
+
function mergeHandlers(custom, platform, domain, opts, composedKeys = /* @__PURE__ */ new Set()) {
|
|
2508
2530
|
if (!custom && !platform) return void 0;
|
|
2509
2531
|
if (!custom) return platform;
|
|
2510
2532
|
if (!platform) return custom;
|
|
2511
2533
|
if (opts.mode !== "silent") {
|
|
2512
2534
|
const collisions = [];
|
|
2513
2535
|
for (const key of Object.keys(platform)) {
|
|
2536
|
+
if (composedKeys.has(key)) continue;
|
|
2514
2537
|
if (key in custom) collisions.push(key);
|
|
2515
2538
|
}
|
|
2516
2539
|
if (collisions.length > 0) {
|
|
@@ -2528,10 +2551,26 @@ function mergeHandlers(custom, platform, domain, opts) {
|
|
|
2528
2551
|
}
|
|
2529
2552
|
return { ...custom, ...platform };
|
|
2530
2553
|
}
|
|
2531
|
-
function mergeMediaBuyHandlers(custom, platform, domain, opts, fallbackWireMode) {
|
|
2532
|
-
const
|
|
2554
|
+
function mergeMediaBuyHandlers(custom, platform, domain, opts, fallbackWireMode, platformServesCumulativeDelivery) {
|
|
2555
|
+
const composesDelivery = !platformServesCumulativeDelivery && typeof custom?.getMediaBuyDelivery === "function" && typeof platform?.getMediaBuyDelivery === "function";
|
|
2556
|
+
const merged = mergeHandlers(
|
|
2557
|
+
custom,
|
|
2558
|
+
platform,
|
|
2559
|
+
domain,
|
|
2560
|
+
opts,
|
|
2561
|
+
composesDelivery ? /* @__PURE__ */ new Set(["getMediaBuyDelivery"]) : void 0
|
|
2562
|
+
);
|
|
2533
2563
|
if (!custom || !platform || !merged) return merged;
|
|
2534
2564
|
const routed = { ...merged };
|
|
2565
|
+
const customDelivery = custom.getMediaBuyDelivery;
|
|
2566
|
+
const platformDelivery = platform.getMediaBuyDelivery;
|
|
2567
|
+
if (composesDelivery && typeof customDelivery === "function" && typeof platformDelivery === "function") {
|
|
2568
|
+
routed.getMediaBuyDelivery = (...args) => {
|
|
2569
|
+
const revisionId = args[0]?.reporting_revision_id;
|
|
2570
|
+
const exactRevisionRead = typeof revisionId === "string" && revisionId.length > 0;
|
|
2571
|
+
return exactRevisionRead ? Reflect.apply(platformDelivery, platform, args) : Reflect.apply(customDelivery, custom, args);
|
|
2572
|
+
};
|
|
2573
|
+
}
|
|
2535
2574
|
for (const key of ["createMediaBuy", "updateMediaBuy", "getMediaBuys"]) {
|
|
2536
2575
|
const customHandler = custom[key];
|
|
2537
2576
|
const platformHandler = platform[key];
|
|
@@ -3596,10 +3635,12 @@ function buildProposalNegotiationHandlers(platform, taskRegistry, taskWebhookEmi
|
|
|
3596
3635
|
function buildMediaBuyHandlers(platform, taskRegistry, taskWebhookEmit, observability, logger, pushOpts, ctxFor, ctxMetadataStore, mediaBuyStore, proposalStore, legacyFormatConverter, legacyFormatResolver, legacyFormatResolverOptions, canonicalFormatLegacyResolver, creativeWireMode) {
|
|
3597
3636
|
const sales = platform.sales;
|
|
3598
3637
|
const lifecycle = platform.mediaBuyLifecycle;
|
|
3599
|
-
const
|
|
3638
|
+
const reporting = platform.reporting;
|
|
3639
|
+
const liveMediaBuyDelivery = lifecycle?.getMediaBuyDelivery ?? sales?.getMediaBuyDelivery;
|
|
3640
|
+
const getMediaBuyDelivery = liveMediaBuyDelivery ?? reporting?.getMediaBuyDelivery;
|
|
3600
3641
|
const getMediaBuys = lifecycle?.getMediaBuys ?? sales?.getMediaBuys;
|
|
3601
3642
|
const proposalManager = platform.proposalManager;
|
|
3602
|
-
if (!sales && !lifecycle && !proposalManager) return void 0;
|
|
3643
|
+
if (!sales && !lifecycle && !proposalManager && !reporting) return void 0;
|
|
3603
3644
|
const dispatchCompactMutation = async (tool, params, ctx, invoke) => {
|
|
3604
3645
|
return projectSync(
|
|
3605
3646
|
async () => {
|
|
@@ -3652,6 +3693,16 @@ function buildMediaBuyHandlers(platform, taskRegistry, taskWebhookEmit, observab
|
|
|
3652
3693
|
(value) => value
|
|
3653
3694
|
);
|
|
3654
3695
|
};
|
|
3696
|
+
const reportingContext = (tool, params, ctx) => {
|
|
3697
|
+
if (ctx.authInfo === void 0 && ctx.agent === void 0) {
|
|
3698
|
+
throw new AdcpError("AUTH_MISSING", {
|
|
3699
|
+
message: `${tool} requires an authenticated buyer principal`,
|
|
3700
|
+
recovery: "correctable"
|
|
3701
|
+
});
|
|
3702
|
+
}
|
|
3703
|
+
if (!ctx.account?.id) throw missingAccountError(tool, platform.accounts.resolution);
|
|
3704
|
+
return ctxFor(ctx, params);
|
|
3705
|
+
};
|
|
3655
3706
|
return {
|
|
3656
3707
|
...lifecycle?.listProducts && {
|
|
3657
3708
|
listProducts: async (...[params, ctx]) => {
|
|
@@ -4103,7 +4154,11 @@ function buildMediaBuyHandlers(platform, taskRegistry, taskWebhookEmit, observab
|
|
|
4103
4154
|
...getMediaBuyDelivery && {
|
|
4104
4155
|
getMediaBuyDelivery: async (...[params, ctx]) => {
|
|
4105
4156
|
const responseWireMode = creativeWireModeForRequest(ctx, creativeWireMode, params);
|
|
4106
|
-
const
|
|
4157
|
+
const requestedRevisionId = params.reporting_revision_id;
|
|
4158
|
+
const exactRevisionRead = typeof requestedRevisionId === "string" && requestedRevisionId.length > 0;
|
|
4159
|
+
const exactRevisionRequested = exactRevisionRead;
|
|
4160
|
+
const reportingRevisionRequested = exactRevisionRequested && reporting !== void 0;
|
|
4161
|
+
const reqCtx = reportingRevisionRequested ? reportingContext("get_media_buy_delivery", params, ctx) : ctxFor(ctx, params);
|
|
4107
4162
|
if (proposalStore) {
|
|
4108
4163
|
const ids = params.media_buy_ids;
|
|
4109
4164
|
const firstId = Array.isArray(ids) && ids.length > 0 ? ids[0] : void 0;
|
|
@@ -4120,7 +4175,18 @@ function buildMediaBuyHandlers(platform, taskRegistry, taskWebhookEmit, observab
|
|
|
4120
4175
|
}
|
|
4121
4176
|
return projectSync(
|
|
4122
4177
|
async () => {
|
|
4123
|
-
const
|
|
4178
|
+
const selectedDelivery = exactRevisionRequested ? reporting?.getMediaBuyDelivery ?? liveMediaBuyDelivery : liveMediaBuyDelivery;
|
|
4179
|
+
if (!selectedDelivery) {
|
|
4180
|
+
throw new AdcpError("UNSUPPORTED_FEATURE", {
|
|
4181
|
+
message: "This reporting-only platform does not provide cumulative delivery reads",
|
|
4182
|
+
recovery: "correctable"
|
|
4183
|
+
});
|
|
4184
|
+
}
|
|
4185
|
+
const servedByReportingLedger = exactRevisionRead && reporting?.getMediaBuyDelivery !== void 0 && selectedDelivery === reporting.getMediaBuyDelivery;
|
|
4186
|
+
const result = await selectedDelivery(asValidatedDomainRequest(params), reqCtx);
|
|
4187
|
+
if (servedByReportingLedger) {
|
|
4188
|
+
return result;
|
|
4189
|
+
}
|
|
4124
4190
|
warnIfTruncatedMultiIdResponse(
|
|
4125
4191
|
"getMediaBuyDelivery",
|
|
4126
4192
|
"media_buy_ids",
|
|
@@ -4140,6 +4206,18 @@ function buildMediaBuyHandlers(platform, taskRegistry, taskWebhookEmit, observab
|
|
|
4140
4206
|
);
|
|
4141
4207
|
}
|
|
4142
4208
|
},
|
|
4209
|
+
...reporting?.getReportingStatus && {
|
|
4210
|
+
getReportingStatus: async (...[params, ctx]) => projectSync(
|
|
4211
|
+
() => reporting.getReportingStatus(params, reportingContext("get_reporting_status", params, ctx)),
|
|
4212
|
+
(value) => value
|
|
4213
|
+
)
|
|
4214
|
+
},
|
|
4215
|
+
...reporting?.syncReportingStatus && {
|
|
4216
|
+
syncReportingStatus: async (...[params, ctx]) => projectSync(
|
|
4217
|
+
() => reporting.syncReportingStatus(params, reportingContext("sync_reporting_status", params, ctx)),
|
|
4218
|
+
(value) => value
|
|
4219
|
+
)
|
|
4220
|
+
},
|
|
4143
4221
|
// Optional methods — return UNSUPPORTED_FEATURE when the platform omits
|
|
4144
4222
|
// them. Adopters that haven't migrated to the v6 platform interface for
|
|
4145
4223
|
// these specific tools can still pass raw handlers via opts.legacyHandlers.mediaBuy
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { Account } from '../account.mjs';
|
|
2
|
+
import type { RequestContext } from '../context.mjs';
|
|
3
|
+
import type { AdcpToolMap } from '../../create-adcp-server.mjs';
|
|
4
|
+
import type { ReportingDeliveryCapabilities } from '../../../types/tools.generated.mjs';
|
|
5
|
+
type Ctx<TCtxMeta> = RequestContext<Account<TCtxMeta>>;
|
|
6
|
+
/**
|
|
7
|
+
* Reliable Reporting Core platform surface.
|
|
8
|
+
*
|
|
9
|
+
* Adopters normally receive this object from
|
|
10
|
+
* `createReliableReportingService(...).install(platform)`. Keeping reporting
|
|
11
|
+
* separate from `SalesPlatform.getMediaBuyDelivery` lets the framework route
|
|
12
|
+
* exact ledger revisions without replacing an adopter's ordinary live
|
|
13
|
+
* delivery handler.
|
|
14
|
+
*
|
|
15
|
+
* @public
|
|
16
|
+
*/
|
|
17
|
+
export interface ReliableReportingPlatform<TCtxMeta = Record<string, unknown>> {
|
|
18
|
+
/** Capability document derived from the reporting components installed. */
|
|
19
|
+
readonly capabilities: ReportingDeliveryCapabilities;
|
|
20
|
+
/** Snapshot-stable reads from the authoritative reporting ledger. */
|
|
21
|
+
getReportingStatus(request: AdcpToolMap['get_reporting_status']['params'], context: Ctx<TCtxMeta>): Promise<AdcpToolMap['get_reporting_status']['result']>;
|
|
22
|
+
/** Exact immutable revision reads; requests must carry reporting_revision_id. */
|
|
23
|
+
getMediaBuyDelivery(request: AdcpToolMap['get_media_buy_delivery']['params'], context: Ctx<TCtxMeta>): Promise<AdcpToolMap['get_media_buy_delivery']['result']>;
|
|
24
|
+
/** Present only when authenticated consumer identity resolution is installed. */
|
|
25
|
+
syncReportingStatus?(request: AdcpToolMap['sync_reporting_status']['params'], context: Ctx<TCtxMeta>): Promise<AdcpToolMap['sync_reporting_status']['result']>;
|
|
26
|
+
/**
|
|
27
|
+
* The identity `syncReportingStatus` deposits a receipt for, exposed so the
|
|
28
|
+
* framework can scope `sync_reporting_status` replay by the same value the
|
|
29
|
+
* receipt is recorded under. Present exactly when `syncReportingStatus` is.
|
|
30
|
+
*
|
|
31
|
+
* Without it the framework falls back to the caller's credential identity,
|
|
32
|
+
* which is wrong whenever an adopter maps two operator seats sharing one
|
|
33
|
+
* OAuth `client_id` to different reporting consumers: the second seat would
|
|
34
|
+
* be served the first's cached response and deposit nothing.
|
|
35
|
+
*/
|
|
36
|
+
readonly resolveConsumerId?: (context: Ctx<TCtxMeta>) => string | Promise<string>;
|
|
37
|
+
}
|
|
38
|
+
export {};
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { Account } from '../account';
|
|
2
|
+
import type { RequestContext } from '../context';
|
|
3
|
+
import type { AdcpToolMap } from '../../create-adcp-server';
|
|
4
|
+
import type { ReportingDeliveryCapabilities } from '../../../types/tools.generated';
|
|
5
|
+
type Ctx<TCtxMeta> = RequestContext<Account<TCtxMeta>>;
|
|
6
|
+
/**
|
|
7
|
+
* Reliable Reporting Core platform surface.
|
|
8
|
+
*
|
|
9
|
+
* Adopters normally receive this object from
|
|
10
|
+
* `createReliableReportingService(...).install(platform)`. Keeping reporting
|
|
11
|
+
* separate from `SalesPlatform.getMediaBuyDelivery` lets the framework route
|
|
12
|
+
* exact ledger revisions without replacing an adopter's ordinary live
|
|
13
|
+
* delivery handler.
|
|
14
|
+
*
|
|
15
|
+
* @public
|
|
16
|
+
*/
|
|
17
|
+
export interface ReliableReportingPlatform<TCtxMeta = Record<string, unknown>> {
|
|
18
|
+
/** Capability document derived from the reporting components installed. */
|
|
19
|
+
readonly capabilities: ReportingDeliveryCapabilities;
|
|
20
|
+
/** Snapshot-stable reads from the authoritative reporting ledger. */
|
|
21
|
+
getReportingStatus(request: AdcpToolMap['get_reporting_status']['params'], context: Ctx<TCtxMeta>): Promise<AdcpToolMap['get_reporting_status']['result']>;
|
|
22
|
+
/** Exact immutable revision reads; requests must carry reporting_revision_id. */
|
|
23
|
+
getMediaBuyDelivery(request: AdcpToolMap['get_media_buy_delivery']['params'], context: Ctx<TCtxMeta>): Promise<AdcpToolMap['get_media_buy_delivery']['result']>;
|
|
24
|
+
/** Present only when authenticated consumer identity resolution is installed. */
|
|
25
|
+
syncReportingStatus?(request: AdcpToolMap['sync_reporting_status']['params'], context: Ctx<TCtxMeta>): Promise<AdcpToolMap['sync_reporting_status']['result']>;
|
|
26
|
+
/**
|
|
27
|
+
* The identity `syncReportingStatus` deposits a receipt for, exposed so the
|
|
28
|
+
* framework can scope `sync_reporting_status` replay by the same value the
|
|
29
|
+
* receipt is recorded under. Present exactly when `syncReportingStatus` is.
|
|
30
|
+
*
|
|
31
|
+
* Without it the framework falls back to the caller's credential identity,
|
|
32
|
+
* which is wrong whenever an adopter maps two operator seats sharing one
|
|
33
|
+
* OAuth `client_id` to different reporting consumers: the second seat would
|
|
34
|
+
* be served the first's cached response and deposit nothing.
|
|
35
|
+
*/
|
|
36
|
+
readonly resolveConsumerId?: (context: Ctx<TCtxMeta>) => string | Promise<string>;
|
|
37
|
+
}
|
|
38
|
+
export {};
|
|
@@ -11,12 +11,6 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
11
11
|
}
|
|
12
12
|
return to;
|
|
13
13
|
};
|
|
14
|
-
var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
|
|
15
14
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
16
|
-
var
|
|
17
|
-
module.exports = __toCommonJS(
|
|
18
|
-
__reExport(v3_1_beta_exports, require('./tools.generated.js'), module.exports);
|
|
19
|
-
// Annotate the CommonJS export names for ESM import in node:
|
|
20
|
-
0 && (module.exports = {
|
|
21
|
-
...require('./tools.generated.js')
|
|
22
|
-
});
|
|
15
|
+
var reporting_exports = {};
|
|
16
|
+
module.exports = __toCommonJS(reporting_exports);
|
|
File without changes
|
|
@@ -74,8 +74,8 @@ export { pgWebhookDeliveryStore, pgWebhookDeliveryRecoveryBackend, redisWebhookD
|
|
|
74
74
|
export type { PgWebhookDeliveryStoreOptions, PgWebhookDeliveryRecoveryOptions, RedisWebhookDeliveryStoreOptions, RedisWebhookDeliveryRecoveryOptions, ProtectedWebhookAuthentication, WebhookAuthenticationAdapter, WebhookAuthenticationContext, StoredWebhookDeliverySnapshot, PreparedWebhookDeliverySnapshot, PrepareWebhookDeliveryOptions, WebhookRecoveryRecord, WebhookRecoveryLease, WebhookRecoveryCheckpointResult, WebhookRecoveryCheckpointOutcome, WebhookDeliveryRecoveryBackend, DurableWebhookDeliveryRecovery, CreateWebhookDeliveryRecoveryOptions, PollWebhookDeliveryRecoveryOptions, CreatePostgresWebhookRuntimeOptions, PostgresWebhookRecoveryPollOptions, PostgresWebhookRuntime, WebhookRecoveryDisposition, } from './webhook-delivery/index.mjs';
|
|
75
75
|
export type { WebhookEmitter, RecoverableWebhookEmitter, WebhookEmitterOptions, WebhookEmitParams, WebhookEmitResult, WebhookRecoveredDelivery, WebhookEmitAttempt, WebhookEmitAttemptResult, WebhookDeliveryBinding, WebhookDeliveryRetired, WebhookDeliveryRecord, WebhookDeliveryKey, WebhookDeliveryProposal, WebhookDeliverySnapshot, WebhookDeliveryRecovery, WebhookDeliveryRecoveryClaim, WebhookDeliveryStore, WebhookIdempotencyKeyStore, WebhookRetryOptions, WebhookAuthentication, WebhookAttemptAuthorizer, WebhookAttemptAuthorizationDecision, WebhookAttemptSuppressionReason, } from './webhook-emitter.mjs';
|
|
76
76
|
export type { SigningProvider } from '../signing/provider.mjs';
|
|
77
|
-
export { ACCOUNT_NOTIFICATION_TYPES, CALLER_NOTIFICATION_TYPES, NOTIFICATION_SUBSCRIPTION_MIGRATION, NotificationSubscriptionValidationError, createPersistentNotificationRuntime, createPersistentNotificationProtocolHandlers, createPostgresPersistentNotificationRuntime, getNotificationSubscriptionMigration, memoryNotificationSubscriptionStore, pgNotificationSubscriptionStore, projectNotificationSubscriptionReadback, validatePersistentNotificationDestination, } from './notification-subscriptions/index.mjs';
|
|
78
|
-
export type { CreatePostgresPersistentNotificationRuntimeOptions, NotificationAuthenticationMode, NotificationCredentialBindingAdapter, NotificationDeliveryAuthorizationInput, NotificationDeliveryAuthorizer, NotificationDestinationValidator, NotificationEvent, NotificationEventAnchor, NotificationFanoutDelivery, NotificationFanoutResult, NotificationProofAdapter, NotificationReplacementResult, NotificationSubscriptionConfigInput, NotificationSubscriptionMatch, NotificationSubscriptionScope, NotificationSubscriptionSet, NotificationSubscriptionStore, NotificationSubscriptionStoreReplaceResult, NotificationSubscriptionView, PersistentNotificationRuntime, PersistentNotificationRuntimeOptions, PostgresNotificationSubscriptionStoreOptions, PostgresPersistentNotificationRuntime, StoredNotificationAuthentication, StoredNotificationSubscription, } from './notification-subscriptions/index.mjs';
|
|
77
|
+
export { ACCOUNT_NOTIFICATION_TYPES, CALLER_NOTIFICATION_TYPES, NOTIFICATION_SUBSCRIPTION_MIGRATION, NotificationSubscriptionValidationError, createPersistentNotificationRuntime, createPersistentNotificationProtocolHandlers, createPostgresPersistentNotificationRuntime, getNotificationSubscriptionMigration, memoryNotificationSubscriptionStore, notificationSuppressionDisposition, pgNotificationSubscriptionStore, projectNotificationSubscriptionReadback, validatePersistentNotificationDestination, } from './notification-subscriptions/index.mjs';
|
|
78
|
+
export type { CreatePostgresPersistentNotificationRuntimeOptions, NotificationAuthenticationMode, NotificationCredentialBindingAdapter, NotificationDeliveryAuthorizationInput, NotificationDeliveryAttemptCheckpoint, NotificationDeliveryAttemptCheckpointInput, NotificationDeliveryAuthorizer, NotificationDestinationValidator, NotificationEvent, NotificationEventAnchor, NotificationFanoutDelivery, NotificationFanoutResult, NotificationProofAdapter, NotificationRecipientRef, NotificationReplacementResult, NotificationSubscriptionConfigInput, NotificationSubscriptionMatch, NotificationSubscriptionScope, NotificationSubscriptionSet, NotificationSubscriptionStore, NotificationSubscriptionStoreReplaceResult, NotificationSuppressionDisposition, NotificationSubscriptionView, PersistentNotificationRuntime, PersistentNotificationRuntimeOptions, PostgresNotificationSubscriptionStoreOptions, PostgresPersistentNotificationRuntime, StoredNotificationAuthentication, StoredNotificationSubscription, } from './notification-subscriptions/index.mjs';
|
|
79
79
|
export { createPinAndBindFetch, WEBHOOK_SSRF_POLICY, LOOPBACK_OK_WEBHOOK_SSRF_POLICY } from './pin-and-bind-fetch.mjs';
|
|
80
80
|
export type { PinAndBindFetchOptions, DnsLookupAll } from './pin-and-bind-fetch.mjs';
|
|
81
81
|
export { checkGovernance, createAdcpGovernanceEnforcementMiddleware, governanceDeniedError, governanceUnavailableError, } from './governance.mjs';
|
|
@@ -98,3 +98,5 @@ export { createOAuthPassthroughResolver, type OAuthPassthroughResolverOptions, }
|
|
|
98
98
|
export { createRosterAccountStore, type RosterAccountStoreOptions } from '../adapters/roster-account-store.mjs';
|
|
99
99
|
export { createDerivedAccountStore, type DerivedAccountStoreOptions, type DerivedAccountStoreBaseOptions, type DerivedSingletonAccountStoreOptions, type DerivedRosterAccountStoreOptions, } from '../adapters/derived-account-store.mjs';
|
|
100
100
|
export { ConformanceClient, WebSocketTransport, type ConformanceClientOptions, type ConformanceStatus, } from './socket-mode/index.mjs';
|
|
101
|
+
export { mediaBuyActionResolver } from './media-buy-action-resolver.mjs';
|
|
102
|
+
export type { SellerActionDecision, SellerActionResolutionOptions, SellerActionResolution, } from './media-buy-action-resolver.mjs';
|
|
@@ -74,8 +74,8 @@ export { pgWebhookDeliveryStore, pgWebhookDeliveryRecoveryBackend, redisWebhookD
|
|
|
74
74
|
export type { PgWebhookDeliveryStoreOptions, PgWebhookDeliveryRecoveryOptions, RedisWebhookDeliveryStoreOptions, RedisWebhookDeliveryRecoveryOptions, ProtectedWebhookAuthentication, WebhookAuthenticationAdapter, WebhookAuthenticationContext, StoredWebhookDeliverySnapshot, PreparedWebhookDeliverySnapshot, PrepareWebhookDeliveryOptions, WebhookRecoveryRecord, WebhookRecoveryLease, WebhookRecoveryCheckpointResult, WebhookRecoveryCheckpointOutcome, WebhookDeliveryRecoveryBackend, DurableWebhookDeliveryRecovery, CreateWebhookDeliveryRecoveryOptions, PollWebhookDeliveryRecoveryOptions, CreatePostgresWebhookRuntimeOptions, PostgresWebhookRecoveryPollOptions, PostgresWebhookRuntime, WebhookRecoveryDisposition, } from './webhook-delivery';
|
|
75
75
|
export type { WebhookEmitter, RecoverableWebhookEmitter, WebhookEmitterOptions, WebhookEmitParams, WebhookEmitResult, WebhookRecoveredDelivery, WebhookEmitAttempt, WebhookEmitAttemptResult, WebhookDeliveryBinding, WebhookDeliveryRetired, WebhookDeliveryRecord, WebhookDeliveryKey, WebhookDeliveryProposal, WebhookDeliverySnapshot, WebhookDeliveryRecovery, WebhookDeliveryRecoveryClaim, WebhookDeliveryStore, WebhookIdempotencyKeyStore, WebhookRetryOptions, WebhookAuthentication, WebhookAttemptAuthorizer, WebhookAttemptAuthorizationDecision, WebhookAttemptSuppressionReason, } from './webhook-emitter';
|
|
76
76
|
export type { SigningProvider } from '../signing/provider';
|
|
77
|
-
export { ACCOUNT_NOTIFICATION_TYPES, CALLER_NOTIFICATION_TYPES, NOTIFICATION_SUBSCRIPTION_MIGRATION, NotificationSubscriptionValidationError, createPersistentNotificationRuntime, createPersistentNotificationProtocolHandlers, createPostgresPersistentNotificationRuntime, getNotificationSubscriptionMigration, memoryNotificationSubscriptionStore, pgNotificationSubscriptionStore, projectNotificationSubscriptionReadback, validatePersistentNotificationDestination, } from './notification-subscriptions';
|
|
78
|
-
export type { CreatePostgresPersistentNotificationRuntimeOptions, NotificationAuthenticationMode, NotificationCredentialBindingAdapter, NotificationDeliveryAuthorizationInput, NotificationDeliveryAuthorizer, NotificationDestinationValidator, NotificationEvent, NotificationEventAnchor, NotificationFanoutDelivery, NotificationFanoutResult, NotificationProofAdapter, NotificationReplacementResult, NotificationSubscriptionConfigInput, NotificationSubscriptionMatch, NotificationSubscriptionScope, NotificationSubscriptionSet, NotificationSubscriptionStore, NotificationSubscriptionStoreReplaceResult, NotificationSubscriptionView, PersistentNotificationRuntime, PersistentNotificationRuntimeOptions, PostgresNotificationSubscriptionStoreOptions, PostgresPersistentNotificationRuntime, StoredNotificationAuthentication, StoredNotificationSubscription, } from './notification-subscriptions';
|
|
77
|
+
export { ACCOUNT_NOTIFICATION_TYPES, CALLER_NOTIFICATION_TYPES, NOTIFICATION_SUBSCRIPTION_MIGRATION, NotificationSubscriptionValidationError, createPersistentNotificationRuntime, createPersistentNotificationProtocolHandlers, createPostgresPersistentNotificationRuntime, getNotificationSubscriptionMigration, memoryNotificationSubscriptionStore, notificationSuppressionDisposition, pgNotificationSubscriptionStore, projectNotificationSubscriptionReadback, validatePersistentNotificationDestination, } from './notification-subscriptions';
|
|
78
|
+
export type { CreatePostgresPersistentNotificationRuntimeOptions, NotificationAuthenticationMode, NotificationCredentialBindingAdapter, NotificationDeliveryAuthorizationInput, NotificationDeliveryAttemptCheckpoint, NotificationDeliveryAttemptCheckpointInput, NotificationDeliveryAuthorizer, NotificationDestinationValidator, NotificationEvent, NotificationEventAnchor, NotificationFanoutDelivery, NotificationFanoutResult, NotificationProofAdapter, NotificationRecipientRef, NotificationReplacementResult, NotificationSubscriptionConfigInput, NotificationSubscriptionMatch, NotificationSubscriptionScope, NotificationSubscriptionSet, NotificationSubscriptionStore, NotificationSubscriptionStoreReplaceResult, NotificationSuppressionDisposition, NotificationSubscriptionView, PersistentNotificationRuntime, PersistentNotificationRuntimeOptions, PostgresNotificationSubscriptionStoreOptions, PostgresPersistentNotificationRuntime, StoredNotificationAuthentication, StoredNotificationSubscription, } from './notification-subscriptions';
|
|
79
79
|
export { createPinAndBindFetch, WEBHOOK_SSRF_POLICY, LOOPBACK_OK_WEBHOOK_SSRF_POLICY } from './pin-and-bind-fetch';
|
|
80
80
|
export type { PinAndBindFetchOptions, DnsLookupAll } from './pin-and-bind-fetch';
|
|
81
81
|
export { checkGovernance, createAdcpGovernanceEnforcementMiddleware, governanceDeniedError, governanceUnavailableError, } from './governance';
|
|
@@ -98,3 +98,5 @@ export { createOAuthPassthroughResolver, type OAuthPassthroughResolverOptions, }
|
|
|
98
98
|
export { createRosterAccountStore, type RosterAccountStoreOptions } from '../adapters/roster-account-store';
|
|
99
99
|
export { createDerivedAccountStore, type DerivedAccountStoreOptions, type DerivedAccountStoreBaseOptions, type DerivedSingletonAccountStoreOptions, type DerivedRosterAccountStoreOptions, } from '../adapters/derived-account-store';
|
|
100
100
|
export { ConformanceClient, WebSocketTransport, type ConformanceClientOptions, type ConformanceStatus, } from './socket-mode';
|
|
101
|
+
export { mediaBuyActionResolver } from './media-buy-action-resolver';
|
|
102
|
+
export type { SellerActionDecision, SellerActionResolutionOptions, SellerActionResolution, } from './media-buy-action-resolver';
|
package/dist/lib/server/index.js
CHANGED
|
@@ -209,6 +209,7 @@ __export(server_exports, {
|
|
|
209
209
|
matchesCollectionList: () => import_targeting_helpers.matchesCollectionList,
|
|
210
210
|
matchesPropertyList: () => import_targeting_helpers.matchesPropertyList,
|
|
211
211
|
mcpToolNameResolver: () => import_auth_signature.mcpToolNameResolver,
|
|
212
|
+
mediaBuyActionResolver: () => import_media_buy_action_resolver.mediaBuyActionResolver,
|
|
212
213
|
memoryBackend: () => import_idempotency.memoryBackend,
|
|
213
214
|
memoryCtxMetadataStore: () => import_ctx_metadata.memoryCtxMetadataStore,
|
|
214
215
|
memoryNotificationSubscriptionStore: () => import_notification_subscriptions.memoryNotificationSubscriptionStore,
|
|
@@ -222,6 +223,7 @@ __export(server_exports, {
|
|
|
222
223
|
mergeSeededProductsIntoResponse: () => import_test_controller_bridge.mergeSeededProductsIntoResponse,
|
|
223
224
|
normalizeError: () => import_normalize_errors.normalizeError,
|
|
224
225
|
normalizeErrors: () => import_normalize_errors.normalizeErrors,
|
|
226
|
+
notificationSuppressionDisposition: () => import_notification_subscriptions.notificationSuppressionDisposition,
|
|
225
227
|
patchWithRetry: () => import_state_store.patchWithRetry,
|
|
226
228
|
pgBackend: () => import_idempotency.pgBackend,
|
|
227
229
|
pgCtxMetadataStore: () => import_ctx_metadata.pgCtxMetadataStore,
|
|
@@ -336,6 +338,7 @@ var import_oauth_passthrough_resolver = require('../adapters/oauth-passthrough-r
|
|
|
336
338
|
var import_roster_account_store = require('../adapters/roster-account-store.js');
|
|
337
339
|
var import_derived_account_store = require('../adapters/derived-account-store.js');
|
|
338
340
|
var import_socket_mode = require('./socket-mode/index.js');
|
|
341
|
+
var import_media_buy_action_resolver = require('./media-buy-action-resolver.js');
|
|
339
342
|
// Annotate the CommonJS export names for ESM import in node:
|
|
340
343
|
0 && (module.exports = {
|
|
341
344
|
A2AInvocationError,
|
|
@@ -528,6 +531,7 @@ var import_socket_mode = require('./socket-mode/index.js');
|
|
|
528
531
|
matchesCollectionList,
|
|
529
532
|
matchesPropertyList,
|
|
530
533
|
mcpToolNameResolver,
|
|
534
|
+
mediaBuyActionResolver,
|
|
531
535
|
memoryBackend,
|
|
532
536
|
memoryCtxMetadataStore,
|
|
533
537
|
memoryNotificationSubscriptionStore,
|
|
@@ -541,6 +545,7 @@ var import_socket_mode = require('./socket-mode/index.js');
|
|
|
541
545
|
mergeSeededProductsIntoResponse,
|
|
542
546
|
normalizeError,
|
|
543
547
|
normalizeErrors,
|
|
548
|
+
notificationSuppressionDisposition,
|
|
544
549
|
patchWithRetry,
|
|
545
550
|
pgBackend,
|
|
546
551
|
pgCtxMetadataStore,
|
|
@@ -208,6 +208,7 @@ import {
|
|
|
208
208
|
createPostgresPersistentNotificationRuntime,
|
|
209
209
|
getNotificationSubscriptionMigration,
|
|
210
210
|
memoryNotificationSubscriptionStore,
|
|
211
|
+
notificationSuppressionDisposition,
|
|
211
212
|
pgNotificationSubscriptionStore,
|
|
212
213
|
projectNotificationSubscriptionReadback,
|
|
213
214
|
validatePersistentNotificationDestination
|
|
@@ -285,6 +286,7 @@ import {
|
|
|
285
286
|
ConformanceClient,
|
|
286
287
|
WebSocketTransport
|
|
287
288
|
} from "./socket-mode/index.mjs";
|
|
289
|
+
import { mediaBuyActionResolver } from "./media-buy-action-resolver.mjs";
|
|
288
290
|
export {
|
|
289
291
|
A2AInvocationError,
|
|
290
292
|
ACCOUNT_NOTIFICATION_TYPES,
|
|
@@ -476,6 +478,7 @@ export {
|
|
|
476
478
|
matchesCollectionList,
|
|
477
479
|
matchesPropertyList,
|
|
478
480
|
mcpToolNameResolver,
|
|
481
|
+
mediaBuyActionResolver,
|
|
479
482
|
memoryBackend,
|
|
480
483
|
memoryCtxMetadataStore,
|
|
481
484
|
memoryNotificationSubscriptionStore,
|
|
@@ -489,6 +492,7 @@ export {
|
|
|
489
492
|
mergeSeededProductsIntoResponse,
|
|
490
493
|
normalizeError,
|
|
491
494
|
normalizeErrors,
|
|
495
|
+
notificationSuppressionDisposition,
|
|
492
496
|
patchWithRetry,
|
|
493
497
|
pgBackend,
|
|
494
498
|
pgCtxMetadataStore,
|