@adcp/sdk 14.0.0-rc.37 → 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/content-mismatch.d.mts +126 -0
- package/dist/lib/reporting/content-mismatch.d.ts +126 -0
- package/dist/lib/reporting/content-mismatch.js +90 -0
- package/dist/lib/reporting/content-mismatch.mjs +66 -0
- 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/index.d.mts +3 -1
- package/dist/lib/reporting/index.d.ts +3 -1
- package/dist/lib/reporting/index.js +3 -0
- package/dist/lib/reporting/index.mjs +2 -0
- 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/reconciliation.d.mts +362 -2
- package/dist/lib/reporting/reconciliation.d.ts +362 -2
- package/dist/lib/reporting/reconciliation.js +1051 -7
- package/dist/lib/reporting/reconciliation.mjs +1053 -7
- 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/index.d.mts +22 -1
- package/dist/lib/schemas/index.d.ts +22 -1
- package/dist/lib/schemas/index.js +7 -0
- package/dist/lib/schemas/index.mjs +7 -0
- 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/validation/schema-loader.d.mts +9 -1
- package/dist/lib/validation/schema-loader.d.ts +9 -1
- package/dist/lib/validation/schema-loader.js +65 -8
- package/dist/lib/validation/schema-loader.mjs +64 -8
- 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 +80 -1
- package/docs/guides/MEDIA-BUY-3.2-COMPATIBILITY.md +57 -0
- package/docs/guides/MEDIA-BUY-ACTION-ASSESSMENT.md +300 -0
- package/docs/guides/REPORTING-LEDGER.md +654 -3
- package/docs/guides/REPORTING-RECONCILIATION.md +50 -0
- 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 +60 -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/SKILL.md +2 -0
- 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
|
@@ -1364,7 +1364,7 @@ export interface paths {
|
|
|
1364
1364
|
};
|
|
1365
1365
|
/**
|
|
1366
1366
|
* Get agent compliance detail
|
|
1367
|
-
* @description Returns detailed compliance status for a single agent, including track-level results, storyboard counts, and
|
|
1367
|
+
* @description Returns detailed compliance status for a single agent, including track-level results, storyboard counts, timestamps, and owner-only grading comparisons. Exact badge-scope rows compare Legacy and Strict Spec grading for one role/version; Sandbox remains preview-only. Reading never contacts the agent.
|
|
1368
1368
|
*
|
|
1369
1369
|
* If the agent has opted out of compliance monitoring, returns a minimal response with `status: opted_out`.
|
|
1370
1370
|
*/
|
|
@@ -1377,6 +1377,26 @@ export interface paths {
|
|
|
1377
1377
|
patch?: never;
|
|
1378
1378
|
trace?: never;
|
|
1379
1379
|
};
|
|
1380
|
+
"/api/registry/agents/{encodedUrl}/grading-profile": {
|
|
1381
|
+
parameters: {
|
|
1382
|
+
query?: never;
|
|
1383
|
+
header?: never;
|
|
1384
|
+
path?: never;
|
|
1385
|
+
cookie?: never;
|
|
1386
|
+
};
|
|
1387
|
+
get?: never;
|
|
1388
|
+
/**
|
|
1389
|
+
* Select an exact badge grading profile
|
|
1390
|
+
* @description Selects Legacy or Strict Spec grading for one exact agent role and AdCP version. Requires a current immutable assessment, organization owner/admin authorization, revision compare-and-swap, and an idempotency key. Sandbox is preview-only. The selection itself does not contact the agent.
|
|
1391
|
+
*/
|
|
1392
|
+
put: operations["selectAgentGradingProfile"];
|
|
1393
|
+
post?: never;
|
|
1394
|
+
delete?: never;
|
|
1395
|
+
options?: never;
|
|
1396
|
+
head?: never;
|
|
1397
|
+
patch?: never;
|
|
1398
|
+
trace?: never;
|
|
1399
|
+
};
|
|
1380
1400
|
"/api/.well-known/jwks.json": {
|
|
1381
1401
|
parameters: {
|
|
1382
1402
|
query?: never;
|
|
@@ -1740,7 +1760,7 @@ export interface paths {
|
|
|
1740
1760
|
*
|
|
1741
1761
|
* **Compliance re-run:** when the caller owns the agent or is an AAO admin and the capability probe succeeds, the full storyboard suite can run for several minutes on capability-rich agents with a fresh test session, and `agent_storyboard_status` is updated. Owner-triggered runs use `triggered_by: 'owner_test'`; admin-triggered support runs use `triggered_by: 'manual'`. Badge fan-out reissues verification badges off the new run. If the compliance call fails (timeout, OAuth wall, internal error), the capability/health portion still returns successfully — `compliance.ran` is `false` with an `error` string.
|
|
1742
1762
|
*
|
|
1743
|
-
* **Auth:** owner of the agent, AAO admin, or static `ADMIN_API_KEY`.
|
|
1763
|
+
* **Auth:** owner of the agent, AAO admin, or static `ADMIN_API_KEY`. Human submissions are temporarily fenced with HTTP 503 until durable authorization provenance is supported; static admin API key submissions remain available.
|
|
1744
1764
|
*
|
|
1745
1765
|
* **Rate limits:** 60 seconds per agent URL, 30 requests per user per hour.
|
|
1746
1766
|
*/
|
|
@@ -4131,6 +4151,20 @@ export interface components {
|
|
|
4131
4151
|
adcp_version?: string | null;
|
|
4132
4152
|
/** @enum {string} */
|
|
4133
4153
|
status: "passing" | "degraded" | "failing" | "unknown" | "opted_out";
|
|
4154
|
+
/** @description Public exact role/version status for every explicit grading selection. This is authoritative for the selected badge identity; the top-level status remains the agent-wide compliance summary. */
|
|
4155
|
+
selected_grading_statuses?: {
|
|
4156
|
+
role: components["schemas"]["BadgeRole"];
|
|
4157
|
+
adcp_version: string;
|
|
4158
|
+
/** @enum {string} */
|
|
4159
|
+
grading_profile: "legacy" | "spec";
|
|
4160
|
+
/** @enum {string|null} */
|
|
4161
|
+
grading_status: "passing" | "partial" | "failing" | null;
|
|
4162
|
+
/** @enum {string} */
|
|
4163
|
+
availability: "current" | "unavailable";
|
|
4164
|
+
/** @enum {string|null} */
|
|
4165
|
+
badge_status: "active" | "degraded" | "revoked" | null;
|
|
4166
|
+
revision: string;
|
|
4167
|
+
}[];
|
|
4134
4168
|
/** @enum {string} */
|
|
4135
4169
|
lifecycle_stage: "development" | "testing" | "production" | "deprecated";
|
|
4136
4170
|
compliance_opt_out?: boolean;
|
|
@@ -4210,6 +4244,8 @@ export interface components {
|
|
|
4210
4244
|
verdict_source?: "heartbeat" | "owner_test" | "manual" | "webhook" | null;
|
|
4211
4245
|
verified?: boolean;
|
|
4212
4246
|
verified_badges?: components["schemas"]["VerificationBadge"][];
|
|
4247
|
+
/** @description Owner/admin-only comparisons from one source run. Exact badge-scope rows allow Legacy or Strict Spec selection; Sandbox remains preview-only. Empty for other viewers. Reading never contacts the agent. */
|
|
4248
|
+
grading_profile_comparisons?: components["schemas"]["GradingProfileComparison"][];
|
|
4213
4249
|
};
|
|
4214
4250
|
PublicComplianceNotice: {
|
|
4215
4251
|
severity: string;
|
|
@@ -4229,12 +4265,196 @@ export interface components {
|
|
|
4229
4265
|
verified_at: string;
|
|
4230
4266
|
/** @description Specialisms demonstrably passed (enums/specialism.json). Preview specialisms are excluded from stable badges. */
|
|
4231
4267
|
verified_specialisms: ("audience-sync" | "brand-rights" | "buyer-activation" | "buyer-discovery" | "buyer-monitoring" | "buyer-negotiation" | "buyer-recovery" | "collection-lists" | "content-standards" | "creative-ad-server" | "creative-generative" | "creative-template" | "creative-transformers" | "governance-aware-seller" | "governance-delivery-monitor" | "governance-spend-authority" | "property-lists" | "sales-broadcast-tv" | "sales-catalog-driven" | "sales-dooh" | "sales-guaranteed" | "sales-non-guaranteed" | "sales-proposal-mode" | "sales-social" | "signal-marketplace" | "orchestrator-multi-agent" | "signal-owned" | "signed-requests" | "sponsored-intelligence")[];
|
|
4232
|
-
/** @description
|
|
4268
|
+
/** @description Evidence modes earned. 'spec' = AdCP storyboards were exercised; 'live' = production traffic was observed. Independent of grading_profile and always non-empty when a badge is present. */
|
|
4233
4269
|
verification_modes: ("spec" | "live")[];
|
|
4270
|
+
/**
|
|
4271
|
+
* @description Grading profile that produced the public badge. 'spec' means Strict Spec grading; this is independent of the 'spec' evidence mode.
|
|
4272
|
+
* @enum {string}
|
|
4273
|
+
*/
|
|
4274
|
+
grading_profile: "legacy" | "spec";
|
|
4275
|
+
grading_profile_revision?: number;
|
|
4276
|
+
/**
|
|
4277
|
+
* Format: date-time
|
|
4278
|
+
* @description Start of the current Strict Spec failure episode. Null when no Strict Spec failure clock is active.
|
|
4279
|
+
*/
|
|
4280
|
+
first_failing_spec_at?: string | null;
|
|
4234
4281
|
verified_protocol_version: string | null;
|
|
4235
4282
|
/** @description Legacy URL — auto-upgrades to the highest active version. For version-pinned embedding, derive `/api/registry/agents/{encoded_url}/badge/{role}/{adcp_version}.svg` where `{encoded_url}` is `encodeURIComponent(agent_url)`. */
|
|
4236
4283
|
badge_url?: string;
|
|
4237
4284
|
};
|
|
4285
|
+
GradingProfileComparison: {
|
|
4286
|
+
role?: components["schemas"]["BadgeRole"];
|
|
4287
|
+
adcp_version?: string;
|
|
4288
|
+
/** @enum {string} */
|
|
4289
|
+
availability: "current" | "stale" | "pending" | "temporarily_unavailable";
|
|
4290
|
+
unavailable_reason: string | null;
|
|
4291
|
+
/** @enum {string} */
|
|
4292
|
+
selected_profile: "legacy" | "spec";
|
|
4293
|
+
selection_enabled: boolean;
|
|
4294
|
+
selection_revision?: number;
|
|
4295
|
+
/** Format: date-time */
|
|
4296
|
+
first_failing_spec_at?: string | null;
|
|
4297
|
+
/** Format: date-time */
|
|
4298
|
+
legacy_selection_allowed_until?: string | null;
|
|
4299
|
+
/** Format: uuid */
|
|
4300
|
+
source_run_id?: string;
|
|
4301
|
+
evaluator_policy_version?: string;
|
|
4302
|
+
requested_compliance_target?: string | null;
|
|
4303
|
+
compliance_bundle_version: string | null;
|
|
4304
|
+
/** Format: date-time */
|
|
4305
|
+
assessed_at?: string | null;
|
|
4306
|
+
/** Format: date-time */
|
|
4307
|
+
source_tested_at?: string | null;
|
|
4308
|
+
stale?: boolean;
|
|
4309
|
+
incomplete?: boolean;
|
|
4310
|
+
public_impact?: string;
|
|
4311
|
+
profiles: {
|
|
4312
|
+
legacy: {
|
|
4313
|
+
available: boolean;
|
|
4314
|
+
/** @enum {string|null} */
|
|
4315
|
+
status: "passing" | "partial" | "failing" | null;
|
|
4316
|
+
/** @enum {string|null} */
|
|
4317
|
+
observed_status: "passing" | "partial" | "failing" | null;
|
|
4318
|
+
explanation: string;
|
|
4319
|
+
/** Format: uuid */
|
|
4320
|
+
assessment_id?: string;
|
|
4321
|
+
selectable?: boolean;
|
|
4322
|
+
/** @enum {string} */
|
|
4323
|
+
public_effect?: "unchanged" | "issue" | "restore" | "regrade" | "degrade" | "revoke";
|
|
4324
|
+
/** Format: date-time */
|
|
4325
|
+
grace_deadline?: string | null;
|
|
4326
|
+
};
|
|
4327
|
+
spec: {
|
|
4328
|
+
available: boolean;
|
|
4329
|
+
/** @enum {string|null} */
|
|
4330
|
+
status: "passing" | "partial" | "failing" | null;
|
|
4331
|
+
/** @enum {string|null} */
|
|
4332
|
+
observed_status: "passing" | "partial" | "failing" | null;
|
|
4333
|
+
explanation: string;
|
|
4334
|
+
/** Format: uuid */
|
|
4335
|
+
assessment_id?: string;
|
|
4336
|
+
selectable?: boolean;
|
|
4337
|
+
/** @enum {string} */
|
|
4338
|
+
public_effect?: "unchanged" | "issue" | "restore" | "regrade" | "degrade" | "revoke";
|
|
4339
|
+
/** Format: date-time */
|
|
4340
|
+
grace_deadline?: string | null;
|
|
4341
|
+
};
|
|
4342
|
+
sandbox: {
|
|
4343
|
+
available: boolean;
|
|
4344
|
+
/** @enum {string|null} */
|
|
4345
|
+
status: "passing" | "partial" | "failing" | null;
|
|
4346
|
+
/** @enum {string|null} */
|
|
4347
|
+
observed_status: "passing" | "partial" | "failing" | null;
|
|
4348
|
+
explanation: string;
|
|
4349
|
+
/** Format: uuid */
|
|
4350
|
+
assessment_id?: string;
|
|
4351
|
+
selectable?: boolean;
|
|
4352
|
+
/** @enum {string} */
|
|
4353
|
+
public_effect?: "unchanged" | "issue" | "restore" | "regrade" | "degrade" | "revoke";
|
|
4354
|
+
/** Format: date-time */
|
|
4355
|
+
grace_deadline?: string | null;
|
|
4356
|
+
};
|
|
4357
|
+
} | null;
|
|
4358
|
+
/** @enum {string} */
|
|
4359
|
+
scope: "agent";
|
|
4360
|
+
evidence?: {
|
|
4361
|
+
run_complete: boolean;
|
|
4362
|
+
bundle_evidence_present: boolean;
|
|
4363
|
+
selected_storyboard_count: number;
|
|
4364
|
+
controller_gap_phase_count: number;
|
|
4365
|
+
observed_failure_count: number;
|
|
4366
|
+
flat_failure_count: number;
|
|
4367
|
+
unattributed_failure_count: number;
|
|
4368
|
+
sandbox_unresolved_bundle_count: number;
|
|
4369
|
+
};
|
|
4370
|
+
} | {
|
|
4371
|
+
role: components["schemas"]["BadgeRole"];
|
|
4372
|
+
adcp_version: string;
|
|
4373
|
+
/** @enum {string} */
|
|
4374
|
+
availability: "current" | "stale" | "pending" | "temporarily_unavailable";
|
|
4375
|
+
unavailable_reason: string | null;
|
|
4376
|
+
/** @enum {string} */
|
|
4377
|
+
selected_profile: "legacy" | "spec";
|
|
4378
|
+
selection_enabled: boolean;
|
|
4379
|
+
selection_revision?: number;
|
|
4380
|
+
/** Format: date-time */
|
|
4381
|
+
first_failing_spec_at?: string | null;
|
|
4382
|
+
/** Format: date-time */
|
|
4383
|
+
legacy_selection_allowed_until?: string | null;
|
|
4384
|
+
/** Format: uuid */
|
|
4385
|
+
source_run_id: string;
|
|
4386
|
+
evaluator_policy_version: string;
|
|
4387
|
+
requested_compliance_target?: string | null;
|
|
4388
|
+
compliance_bundle_version: string;
|
|
4389
|
+
/** Format: date-time */
|
|
4390
|
+
assessed_at?: string | null;
|
|
4391
|
+
/** Format: date-time */
|
|
4392
|
+
source_tested_at?: string | null;
|
|
4393
|
+
stale?: boolean;
|
|
4394
|
+
incomplete?: boolean;
|
|
4395
|
+
public_impact?: string;
|
|
4396
|
+
profiles: {
|
|
4397
|
+
legacy: {
|
|
4398
|
+
available: boolean;
|
|
4399
|
+
/** @enum {string|null} */
|
|
4400
|
+
status: "passing" | "partial" | "failing" | null;
|
|
4401
|
+
/** @enum {string|null} */
|
|
4402
|
+
observed_status: "passing" | "partial" | "failing" | null;
|
|
4403
|
+
explanation: string;
|
|
4404
|
+
/** Format: uuid */
|
|
4405
|
+
assessment_id?: string;
|
|
4406
|
+
selectable?: boolean;
|
|
4407
|
+
/** @enum {string} */
|
|
4408
|
+
public_effect?: "unchanged" | "issue" | "restore" | "regrade" | "degrade" | "revoke";
|
|
4409
|
+
/** Format: date-time */
|
|
4410
|
+
grace_deadline?: string | null;
|
|
4411
|
+
};
|
|
4412
|
+
spec: {
|
|
4413
|
+
available: boolean;
|
|
4414
|
+
/** @enum {string|null} */
|
|
4415
|
+
status: "passing" | "partial" | "failing" | null;
|
|
4416
|
+
/** @enum {string|null} */
|
|
4417
|
+
observed_status: "passing" | "partial" | "failing" | null;
|
|
4418
|
+
explanation: string;
|
|
4419
|
+
/** Format: uuid */
|
|
4420
|
+
assessment_id?: string;
|
|
4421
|
+
selectable?: boolean;
|
|
4422
|
+
/** @enum {string} */
|
|
4423
|
+
public_effect?: "unchanged" | "issue" | "restore" | "regrade" | "degrade" | "revoke";
|
|
4424
|
+
/** Format: date-time */
|
|
4425
|
+
grace_deadline?: string | null;
|
|
4426
|
+
};
|
|
4427
|
+
sandbox: {
|
|
4428
|
+
available: boolean;
|
|
4429
|
+
/** @enum {string|null} */
|
|
4430
|
+
status: "passing" | "partial" | "failing" | null;
|
|
4431
|
+
/** @enum {string|null} */
|
|
4432
|
+
observed_status: "passing" | "partial" | "failing" | null;
|
|
4433
|
+
explanation: string;
|
|
4434
|
+
/** Format: uuid */
|
|
4435
|
+
assessment_id?: string;
|
|
4436
|
+
selectable?: boolean;
|
|
4437
|
+
/** @enum {string} */
|
|
4438
|
+
public_effect?: "unchanged" | "issue" | "restore" | "regrade" | "degrade" | "revoke";
|
|
4439
|
+
/** Format: date-time */
|
|
4440
|
+
grace_deadline?: string | null;
|
|
4441
|
+
};
|
|
4442
|
+
} | null;
|
|
4443
|
+
/** @enum {string} */
|
|
4444
|
+
scope: "badge";
|
|
4445
|
+
evidence: {
|
|
4446
|
+
specialisms: string[];
|
|
4447
|
+
relevant_bundle_count: number;
|
|
4448
|
+
relevant_bundle_ids: string[];
|
|
4449
|
+
failing_bundle_count: number;
|
|
4450
|
+
incomplete_bundle_count: number;
|
|
4451
|
+
relevant_failure_count: number;
|
|
4452
|
+
missing_universal_bundle: boolean;
|
|
4453
|
+
missing_protocol_bundle: boolean;
|
|
4454
|
+
missing_specialism_bundles: string[];
|
|
4455
|
+
evaluator: string;
|
|
4456
|
+
};
|
|
4457
|
+
};
|
|
4238
4458
|
AgentVerification: {
|
|
4239
4459
|
agent_url: string;
|
|
4240
4460
|
verified: boolean;
|
|
@@ -6233,7 +6453,7 @@ export interface operations {
|
|
|
6233
6453
|
};
|
|
6234
6454
|
};
|
|
6235
6455
|
};
|
|
6236
|
-
/** @description Publisher crawl is temporarily busy */
|
|
6456
|
+
/** @description Publisher crawl is temporarily busy, or administrator authorization could not be checked */
|
|
6237
6457
|
503: {
|
|
6238
6458
|
headers: {
|
|
6239
6459
|
/** @description Seconds to wait before retrying */
|
|
@@ -6242,6 +6462,10 @@ export interface operations {
|
|
|
6242
6462
|
};
|
|
6243
6463
|
content: {
|
|
6244
6464
|
"application/json": {
|
|
6465
|
+
/** @enum {string} */
|
|
6466
|
+
error: "admin_authorization_unavailable";
|
|
6467
|
+
message: string;
|
|
6468
|
+
} | {
|
|
6245
6469
|
error: string;
|
|
6246
6470
|
/** @enum {string} */
|
|
6247
6471
|
code: "publisher_crawl_busy";
|
|
@@ -6338,6 +6562,20 @@ export interface operations {
|
|
|
6338
6562
|
"application/json": components["schemas"]["Error"];
|
|
6339
6563
|
};
|
|
6340
6564
|
};
|
|
6565
|
+
/** @description Administrator authorization could not be checked */
|
|
6566
|
+
503: {
|
|
6567
|
+
headers: {
|
|
6568
|
+
"Retry-After": string;
|
|
6569
|
+
[name: string]: unknown;
|
|
6570
|
+
};
|
|
6571
|
+
content: {
|
|
6572
|
+
"application/json": {
|
|
6573
|
+
/** @enum {string} */
|
|
6574
|
+
error: "admin_authorization_unavailable";
|
|
6575
|
+
message: string;
|
|
6576
|
+
};
|
|
6577
|
+
};
|
|
6578
|
+
};
|
|
6341
6579
|
};
|
|
6342
6580
|
};
|
|
6343
6581
|
lookupPublisherAgentAuthorization: {
|
|
@@ -6477,6 +6715,13 @@ export interface operations {
|
|
|
6477
6715
|
};
|
|
6478
6716
|
content: {
|
|
6479
6717
|
"application/json": {
|
|
6718
|
+
/**
|
|
6719
|
+
* @description Canonical supply-path evaluator semantics; pinned by the shared supply-path golden vectors.
|
|
6720
|
+
* @enum {string}
|
|
6721
|
+
*/
|
|
6722
|
+
semantics_version: "1";
|
|
6723
|
+
/** @description Concrete collection chosen for the complete path, including domain-level inquiries. */
|
|
6724
|
+
resolved_collection_id?: string;
|
|
6480
6725
|
/** @enum {string} */
|
|
6481
6726
|
state: "verified_owner_sold" | "host_delegated" | "owner_attested" | "unverified";
|
|
6482
6727
|
legs: {
|
|
@@ -6531,6 +6776,12 @@ export interface operations {
|
|
|
6531
6776
|
agent_url: string;
|
|
6532
6777
|
collection_id?: string;
|
|
6533
6778
|
sources: {
|
|
6779
|
+
/** Format: date-time */
|
|
6780
|
+
owner_fetched_at: string | null;
|
|
6781
|
+
/** Format: date-time */
|
|
6782
|
+
host_fetched_at: string | null;
|
|
6783
|
+
owner_resolved_url: string | null;
|
|
6784
|
+
host_resolved_url: string | null;
|
|
6534
6785
|
owner_adagents_url: string;
|
|
6535
6786
|
host_adagents_url: string;
|
|
6536
6787
|
/** @description true: manifests came from the registry's crawl cache. Re-derive from the URLs above for enforcement. */
|
|
@@ -8466,7 +8717,7 @@ export interface operations {
|
|
|
8466
8717
|
"application/json": components["schemas"]["Error"];
|
|
8467
8718
|
};
|
|
8468
8719
|
};
|
|
8469
|
-
/** @description Crawl status is temporarily unavailable */
|
|
8720
|
+
/** @description Crawl status or administrator authorization is temporarily unavailable */
|
|
8470
8721
|
503: {
|
|
8471
8722
|
headers: {
|
|
8472
8723
|
/** @description Seconds to wait before retrying */
|
|
@@ -8475,6 +8726,10 @@ export interface operations {
|
|
|
8475
8726
|
};
|
|
8476
8727
|
content: {
|
|
8477
8728
|
"application/json": {
|
|
8729
|
+
/** @enum {string} */
|
|
8730
|
+
error: "admin_authorization_unavailable";
|
|
8731
|
+
message: string;
|
|
8732
|
+
} | {
|
|
8478
8733
|
error: string;
|
|
8479
8734
|
/** @enum {string} */
|
|
8480
8735
|
code: "crawl_status_unavailable";
|
|
@@ -8657,6 +8912,102 @@ export interface operations {
|
|
|
8657
8912
|
};
|
|
8658
8913
|
};
|
|
8659
8914
|
};
|
|
8915
|
+
selectAgentGradingProfile: {
|
|
8916
|
+
parameters: {
|
|
8917
|
+
query?: never;
|
|
8918
|
+
header?: never;
|
|
8919
|
+
path: {
|
|
8920
|
+
/** @description URL-encoded agent URL */
|
|
8921
|
+
encodedUrl: string;
|
|
8922
|
+
};
|
|
8923
|
+
cookie?: never;
|
|
8924
|
+
};
|
|
8925
|
+
requestBody: {
|
|
8926
|
+
content: {
|
|
8927
|
+
"application/json": {
|
|
8928
|
+
organization_id: string;
|
|
8929
|
+
role: components["schemas"]["BadgeRole"];
|
|
8930
|
+
adcp_version: string;
|
|
8931
|
+
/** @enum {string} */
|
|
8932
|
+
selected_profile: "legacy" | "spec";
|
|
8933
|
+
/** Format: uuid */
|
|
8934
|
+
assessment_id: string;
|
|
8935
|
+
expected_revision: number;
|
|
8936
|
+
acknowledge_public_impact?: boolean;
|
|
8937
|
+
/** Format: uuid */
|
|
8938
|
+
idempotency_key: string;
|
|
8939
|
+
admin_override_reason?: string;
|
|
8940
|
+
};
|
|
8941
|
+
};
|
|
8942
|
+
};
|
|
8943
|
+
responses: {
|
|
8944
|
+
/** @description Selection committed and audited */
|
|
8945
|
+
200: {
|
|
8946
|
+
headers: {
|
|
8947
|
+
[name: string]: unknown;
|
|
8948
|
+
};
|
|
8949
|
+
content: {
|
|
8950
|
+
"application/json": {
|
|
8951
|
+
/** @enum {string} */
|
|
8952
|
+
selected_profile: "legacy" | "spec";
|
|
8953
|
+
revision: string;
|
|
8954
|
+
/** @enum {string} */
|
|
8955
|
+
public_effect: "unchanged" | "issue" | "restore" | "regrade" | "degrade" | "revoke";
|
|
8956
|
+
replayed: boolean;
|
|
8957
|
+
/** Format: uuid */
|
|
8958
|
+
source_run_id: string;
|
|
8959
|
+
/** @enum {string} */
|
|
8960
|
+
token_refresh: "completed" | "scheduled";
|
|
8961
|
+
};
|
|
8962
|
+
};
|
|
8963
|
+
};
|
|
8964
|
+
/** @description Invalid request */
|
|
8965
|
+
400: {
|
|
8966
|
+
headers: {
|
|
8967
|
+
[name: string]: unknown;
|
|
8968
|
+
};
|
|
8969
|
+
content: {
|
|
8970
|
+
"application/json": components["schemas"]["Error"];
|
|
8971
|
+
};
|
|
8972
|
+
};
|
|
8973
|
+
/** @description Authentication required */
|
|
8974
|
+
401: {
|
|
8975
|
+
headers: {
|
|
8976
|
+
[name: string]: unknown;
|
|
8977
|
+
};
|
|
8978
|
+
content: {
|
|
8979
|
+
"application/json": components["schemas"]["Error"];
|
|
8980
|
+
};
|
|
8981
|
+
};
|
|
8982
|
+
/** @description Organization owner/admin required */
|
|
8983
|
+
403: {
|
|
8984
|
+
headers: {
|
|
8985
|
+
[name: string]: unknown;
|
|
8986
|
+
};
|
|
8987
|
+
content: {
|
|
8988
|
+
"application/json": components["schemas"]["Error"];
|
|
8989
|
+
};
|
|
8990
|
+
};
|
|
8991
|
+
/** @description Stale assessment/revision, disabled selection, or impact confirmation required */
|
|
8992
|
+
409: {
|
|
8993
|
+
headers: {
|
|
8994
|
+
[name: string]: unknown;
|
|
8995
|
+
};
|
|
8996
|
+
content: {
|
|
8997
|
+
"application/json": components["schemas"]["Error"];
|
|
8998
|
+
};
|
|
8999
|
+
};
|
|
9000
|
+
/** @description Server error */
|
|
9001
|
+
500: {
|
|
9002
|
+
headers: {
|
|
9003
|
+
[name: string]: unknown;
|
|
9004
|
+
};
|
|
9005
|
+
content: {
|
|
9006
|
+
"application/json": components["schemas"]["Error"];
|
|
9007
|
+
};
|
|
9008
|
+
};
|
|
9009
|
+
};
|
|
9010
|
+
};
|
|
8660
9011
|
getJwks: {
|
|
8661
9012
|
parameters: {
|
|
8662
9013
|
query?: never;
|
|
@@ -8811,6 +9162,8 @@ export interface operations {
|
|
|
8811
9162
|
agent_url: string;
|
|
8812
9163
|
role: components["schemas"]["BadgeRole"];
|
|
8813
9164
|
verified: boolean;
|
|
9165
|
+
/** @enum {string} */
|
|
9166
|
+
grading_profile: "legacy" | "spec";
|
|
8814
9167
|
adcp_version?: string;
|
|
8815
9168
|
badge_svg_url: string;
|
|
8816
9169
|
registry_url: string;
|
|
@@ -8938,6 +9291,8 @@ export interface operations {
|
|
|
8938
9291
|
agent_url: string;
|
|
8939
9292
|
role: components["schemas"]["BadgeRole"];
|
|
8940
9293
|
verified: boolean;
|
|
9294
|
+
/** @enum {string} */
|
|
9295
|
+
grading_profile: "legacy" | "spec";
|
|
8941
9296
|
adcp_version: string;
|
|
8942
9297
|
badge_svg_url: string;
|
|
8943
9298
|
registry_url: string;
|
|
@@ -9889,13 +10244,22 @@ export interface operations {
|
|
|
9889
10244
|
"application/json": components["schemas"]["Error"];
|
|
9890
10245
|
};
|
|
9891
10246
|
};
|
|
9892
|
-
/** @description
|
|
10247
|
+
/** @description Refresh queue or authorization unavailable. All human submissions are temporarily fenced with refresh_authorization_provenance_required; only static admin API key submissions are supported. */
|
|
9893
10248
|
503: {
|
|
9894
10249
|
headers: {
|
|
10250
|
+
"Retry-After": string;
|
|
9895
10251
|
[name: string]: unknown;
|
|
9896
10252
|
};
|
|
9897
10253
|
content: {
|
|
9898
|
-
"application/json":
|
|
10254
|
+
"application/json": {
|
|
10255
|
+
/** @enum {string} */
|
|
10256
|
+
error: "admin_authorization_unavailable";
|
|
10257
|
+
message: string;
|
|
10258
|
+
} | {
|
|
10259
|
+
error: string;
|
|
10260
|
+
code: string;
|
|
10261
|
+
retry_after: number;
|
|
10262
|
+
};
|
|
9899
10263
|
};
|
|
9900
10264
|
};
|
|
9901
10265
|
};
|
|
@@ -9989,13 +10353,17 @@ export interface operations {
|
|
|
9989
10353
|
};
|
|
9990
10354
|
};
|
|
9991
10355
|
};
|
|
9992
|
-
/** @description Refresh status temporarily unavailable */
|
|
10356
|
+
/** @description Refresh status or administrator authorization temporarily unavailable */
|
|
9993
10357
|
503: {
|
|
9994
10358
|
headers: {
|
|
9995
10359
|
[name: string]: unknown;
|
|
9996
10360
|
};
|
|
9997
10361
|
content: {
|
|
9998
|
-
"application/json":
|
|
10362
|
+
"application/json": {
|
|
10363
|
+
/** @enum {string} */
|
|
10364
|
+
error: "admin_authorization_unavailable";
|
|
10365
|
+
message: string;
|
|
10366
|
+
} | components["schemas"]["Error"];
|
|
9999
10367
|
};
|
|
10000
10368
|
};
|
|
10001
10369
|
};
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Buyer-side `content_mismatch` detection (AdCP 3.2.0-rc.3).
|
|
3
|
+
*
|
|
4
|
+
* `content_mismatch` says: the buyer consumed the exact revision the seller
|
|
5
|
+
* requires, and its content contradicts a fact the accepted configuration
|
|
6
|
+
* generation **already fixed**. Every code is decidable from the obligation,
|
|
7
|
+
* the pinned report definition, and the revision itself — with no reference to
|
|
8
|
+
* either party's own measurement.
|
|
9
|
+
*
|
|
10
|
+
* Two boundaries govern everything below, and both are easy to breach in the
|
|
11
|
+
* permissive direction:
|
|
12
|
+
*
|
|
13
|
+
* 1. **Never a measurement dispute.** A disagreement about *how many
|
|
14
|
+
* impressions the seller counted* belongs to `measurement_terms` and
|
|
15
|
+
* `makegood_policy`. Nothing here compares a delivered number against a
|
|
16
|
+
* buyer-side expectation, and nothing here should be extended to.
|
|
17
|
+
* 2. **Never fire on evidence you do not have.** A false `content_mismatch` is
|
|
18
|
+
* expensive: per `consumer_status_projection` it forces the caller's view to
|
|
19
|
+
* `action_required`, and the seller MUST NOT return the period to healthy
|
|
20
|
+
* while that statement is the current leaf. So four of the six codes are
|
|
21
|
+
* **row-level** predicates that the obligation and revision *metadata*
|
|
22
|
+
* cannot decide, and they stay silent unless the caller supplies what it
|
|
23
|
+
* actually read. Silence is the safe default; a confident wrong answer is
|
|
24
|
+
* not.
|
|
25
|
+
*
|
|
26
|
+
* Which codes need row evidence, and why the metadata alone cannot substitute:
|
|
27
|
+
*
|
|
28
|
+
* | code | spec predicate | decidable from metadata? |
|
|
29
|
+
* | --- | --- | --- |
|
|
30
|
+
* | `scope_media_buy_missing` | a frozen buy is absent from the revision **and not represented by an explicit zero row** | **No.** `reporting-revision.json` defines `media_buy_ids` as the denominator *"inherited from the obligation, including buys with zero rows"*, so comparing the two sets is a tautology against a conformant seller. |
|
|
31
|
+
* | `coverage_short` | revision covers fewer packages than the obligation's frozen `coverage.covered_package_ids` | **Yes.** |
|
|
32
|
+
* | `metric_missing` | a metric named in the pinned definition's `metrics[].name` is absent | **No.** `control_totals` are profile-defined aggregates scoped to `coverage.covered_package_ids`, a different and usually smaller set than the definition's metrics. |
|
|
33
|
+
* | `schema_nonconformant` | rows do not validate against the pinned `schema_uri`/`schema_sha256` | **No.** Requires actually validating rows. |
|
|
34
|
+
* | `currency_mismatch` | a value's unit disagrees with the unit the pinned definition fixed | **Yes.** |
|
|
35
|
+
* | `period_mismatch` | a row time dimension carries values outside the half-open period | **No.** The revision envelope is pinned stable by `slice_identity`; the violation lives in row values. |
|
|
36
|
+
*/
|
|
37
|
+
import type { ReportingControlTotal } from '../types/index.mjs';
|
|
38
|
+
/** Closed set of reasons a consumed revision contradicts the accepted generation. */
|
|
39
|
+
export type ReportingMismatchCodeV1 = 'scope_media_buy_missing' | 'coverage_short' | 'metric_missing' | 'schema_nonconformant' | 'currency_mismatch' | 'period_mismatch';
|
|
40
|
+
/** Facts the accepted configuration generation froze, as the buyer recorded them. */
|
|
41
|
+
export interface ReportingContractFactsV1 {
|
|
42
|
+
/** Frozen media-buy denominator from the obligation. */
|
|
43
|
+
mediaBuyIds?: readonly string[];
|
|
44
|
+
/** Frozen `coverage.covered_package_ids` from the obligation. */
|
|
45
|
+
coveredPackageIds?: readonly string[];
|
|
46
|
+
/** Half-open expected period. */
|
|
47
|
+
period?: {
|
|
48
|
+
start: string;
|
|
49
|
+
end: string;
|
|
50
|
+
};
|
|
51
|
+
/** `metrics[].name` from the pinned report definition. */
|
|
52
|
+
committedMetrics?: readonly string[];
|
|
53
|
+
/** Units the pinned report definition fixed, keyed by metric/control-total name. */
|
|
54
|
+
metricUnits?: Readonly<Record<string, string>>;
|
|
55
|
+
}
|
|
56
|
+
/** The exact revision the buyer read, as the seller published it. */
|
|
57
|
+
export interface ReportingConsumedRevisionV1 {
|
|
58
|
+
reporting_revision_id?: string;
|
|
59
|
+
coverage?: {
|
|
60
|
+
status?: string;
|
|
61
|
+
covered_package_ids?: readonly string[];
|
|
62
|
+
};
|
|
63
|
+
control_totals?: readonly ReportingControlTotal[];
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* What the buyer's own reader observed in the revision's rows.
|
|
67
|
+
*
|
|
68
|
+
* Supply only what you actually determined. Every field is optional and each
|
|
69
|
+
* one gates exactly one code: omit it and that code cannot fire, which is the
|
|
70
|
+
* correct outcome for a buyer that did not look.
|
|
71
|
+
*/
|
|
72
|
+
export interface ReportingRowEvidenceV1 {
|
|
73
|
+
/**
|
|
74
|
+
* Media buys represented in the rows, counting a buy carried by an explicit
|
|
75
|
+
* zero row as represented — that zero row is precisely what lets the revision
|
|
76
|
+
* distinguish zero delivery from an omitted buy.
|
|
77
|
+
*/
|
|
78
|
+
representedMediaBuyIds?: readonly string[];
|
|
79
|
+
/** Metric names actually present in the rows. */
|
|
80
|
+
observedMetricNames?: readonly string[];
|
|
81
|
+
/** `false` when the rows failed validation against the pinned profile schema. */
|
|
82
|
+
rowsConformToPinnedSchema?: boolean;
|
|
83
|
+
/** Range of the pinned grain's time dimension across the rows. */
|
|
84
|
+
observedPeriodBounds?: {
|
|
85
|
+
earliest: string;
|
|
86
|
+
latest: string;
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
export interface ReportingContentMismatchV1 {
|
|
90
|
+
mismatchCode: ReportingMismatchCodeV1;
|
|
91
|
+
/** Non-secret, bounded diagnostic naming the exact contradicted fact. */
|
|
92
|
+
detail: string;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* First applicable contradiction between a consumed revision and the frozen
|
|
96
|
+
* contract, or `undefined` when nothing decidable is contradicted.
|
|
97
|
+
*
|
|
98
|
+
* **What `reconcileReporting` can reach, and what it cannot.** The reconciler
|
|
99
|
+
* consumes the revision's rows to recompute its binding digest, so it calls
|
|
100
|
+
* this with real row evidence — but it can only derive `observedMetricNames`,
|
|
101
|
+
* and only when the buyer pinned `committedMetrics`. That makes
|
|
102
|
+
* `coverage_short`, `currency_mismatch` and `metric_missing` reachable through
|
|
103
|
+
* the reconcile loop. The remaining three are a **documented limitation**:
|
|
104
|
+
*
|
|
105
|
+
* - `scope_media_buy_missing` needs to know which media buy a row belongs to.
|
|
106
|
+
* - `period_mismatch` needs the time dimension the pinned grain declares.
|
|
107
|
+
* - `schema_nonconformant` needs the rows validated against the pinned schema.
|
|
108
|
+
*
|
|
109
|
+
* All three depend on the reporting profile's own row shape, which is
|
|
110
|
+
* profile-defined and not readable from a generic row object. The SDK does not
|
|
111
|
+
* guess at them, because the cost of being wrong is asymmetric: a false
|
|
112
|
+
* `content_mismatch` pins the caller's view at `action_required` and the seller
|
|
113
|
+
* MUST NOT return the period to healthy while the statement is the current
|
|
114
|
+
* leaf. An adopter whose own reader *does* understand its profile can call this
|
|
115
|
+
* function directly with a fuller `ReportingRowEvidenceV1` and act on the
|
|
116
|
+
* result.
|
|
117
|
+
*
|
|
118
|
+
* **Precedence.** The spec pins exactly one ordering rule: a metric that is
|
|
119
|
+
* simply absent uses `metric_missing` even when the pinned schema declares it
|
|
120
|
+
* required, so `metric_missing` is evaluated before `schema_nonconformant`.
|
|
121
|
+
* The remaining order is this SDK's, chosen so the most structural fact wins —
|
|
122
|
+
* a revision missing a whole media buy reports that, not whichever metric
|
|
123
|
+
* happened to go missing with it — and is stable so the code does not flap
|
|
124
|
+
* between reads of the same bytes.
|
|
125
|
+
*/
|
|
126
|
+
export declare function detectReportingContentMismatch(facts: ReportingContractFactsV1, revision: ReportingConsumedRevisionV1, rows?: ReportingRowEvidenceV1): ReportingContentMismatchV1 | undefined;
|