@adcp/sdk 14.0.0-beta.11 → 14.0.0-beta.13
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-sandbox.js +16 -0
- package/bin/adcp.js +28 -30
- package/dist/lib/index.d.mts +3 -3
- package/dist/lib/index.d.ts +3 -3
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +2 -0
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/index.mjs +3 -1
- package/dist/lib/index.mjs.map +1 -1
- package/dist/lib/schemas/index.d.mts +385 -1
- package/dist/lib/schemas/index.d.ts +385 -1
- package/dist/lib/schemas/index.d.ts.map +1 -1
- package/dist/lib/schemas/index.js +13 -0
- package/dist/lib/schemas/index.js.map +1 -1
- package/dist/lib/schemas/index.mjs +11 -0
- package/dist/lib/schemas/index.mjs.map +1 -1
- package/dist/lib/schemas-data/v2.5/_provenance.json +1 -1
- package/dist/lib/server/create-adcp-server.d.mts +2 -2
- package/dist/lib/server/create-adcp-server.d.ts +2 -2
- package/dist/lib/server/create-adcp-server.d.ts.map +1 -1
- package/dist/lib/server/create-adcp-server.js +6 -1
- package/dist/lib/server/create-adcp-server.js.map +1 -1
- package/dist/lib/server/create-adcp-server.mjs +6 -1
- package/dist/lib/server/create-adcp-server.mjs.map +1 -1
- package/dist/lib/server/decisioning/index.d.mts +3 -3
- package/dist/lib/server/decisioning/index.d.ts +3 -3
- package/dist/lib/server/decisioning/index.d.ts.map +1 -1
- package/dist/lib/server/decisioning/index.js.map +1 -1
- package/dist/lib/server/decisioning/index.mjs.map +1 -1
- package/dist/lib/server/decisioning/runtime/from-platform.d.mts +24 -17
- package/dist/lib/server/decisioning/runtime/from-platform.d.ts +24 -17
- package/dist/lib/server/decisioning/runtime/from-platform.d.ts.map +1 -1
- package/dist/lib/server/decisioning/runtime/from-platform.js +71 -42
- package/dist/lib/server/decisioning/runtime/from-platform.js.map +1 -1
- package/dist/lib/server/decisioning/runtime/from-platform.mjs +75 -43
- package/dist/lib/server/decisioning/runtime/from-platform.mjs.map +1 -1
- package/dist/lib/server/decisioning/runtime/postgres-task-registry.d.mts +15 -21
- package/dist/lib/server/decisioning/runtime/postgres-task-registry.d.ts +15 -21
- package/dist/lib/server/decisioning/runtime/postgres-task-registry.d.ts.map +1 -1
- package/dist/lib/server/decisioning/runtime/postgres-task-registry.js +100 -30
- package/dist/lib/server/decisioning/runtime/postgres-task-registry.js.map +1 -1
- package/dist/lib/server/decisioning/runtime/postgres-task-registry.mjs +100 -30
- package/dist/lib/server/decisioning/runtime/postgres-task-registry.mjs.map +1 -1
- package/dist/lib/server/decisioning/runtime/task-registry.d.mts +30 -16
- package/dist/lib/server/decisioning/runtime/task-registry.d.ts +30 -16
- package/dist/lib/server/decisioning/runtime/task-registry.d.ts.map +1 -1
- package/dist/lib/server/decisioning/runtime/task-registry.js +40 -20
- package/dist/lib/server/decisioning/runtime/task-registry.js.map +1 -1
- package/dist/lib/server/decisioning/runtime/task-registry.mjs +38 -19
- package/dist/lib/server/decisioning/runtime/task-registry.mjs.map +1 -1
- package/dist/lib/server/decisioning/runtime/to-context.d.mts +2 -2
- package/dist/lib/server/decisioning/runtime/to-context.d.ts +2 -2
- package/dist/lib/server/decisioning/runtime/to-context.d.ts.map +1 -1
- package/dist/lib/server/decisioning/runtime/to-context.js +2 -2
- package/dist/lib/server/decisioning/runtime/to-context.js.map +1 -1
- package/dist/lib/server/decisioning/runtime/to-context.mjs +2 -2
- package/dist/lib/server/decisioning/runtime/to-context.mjs.map +1 -1
- package/dist/lib/server/decisioning/specialisms/creative-ad-server.d.mts +3 -2
- package/dist/lib/server/decisioning/specialisms/creative-ad-server.d.ts +3 -2
- package/dist/lib/server/decisioning/specialisms/creative-ad-server.d.ts.map +1 -1
- package/dist/lib/server/decisioning/specialisms/creative-ad-server.js.map +1 -1
- package/dist/lib/server/decisioning/specialisms/creative.d.mts +10 -10
- package/dist/lib/server/decisioning/specialisms/creative.d.ts +10 -10
- package/dist/lib/server/decisioning/specialisms/creative.d.ts.map +1 -1
- package/dist/lib/server/decisioning/specialisms/creative.js.map +1 -1
- package/dist/lib/server/index.d.mts +1 -1
- package/dist/lib/server/index.d.ts +1 -1
- package/dist/lib/server/index.d.ts.map +1 -1
- package/dist/lib/server/index.js.map +1 -1
- package/dist/lib/server/index.mjs.map +1 -1
- package/dist/lib/signing/agent-context.d.mts +1 -0
- package/dist/lib/signing/agent-context.d.ts +1 -0
- package/dist/lib/signing/agent-context.d.ts.map +1 -1
- package/dist/lib/signing/agent-context.js +37 -2
- package/dist/lib/signing/agent-context.js.map +1 -1
- package/dist/lib/signing/agent-context.mjs +38 -3
- package/dist/lib/signing/agent-context.mjs.map +1 -1
- package/dist/lib/signing/agent-fetch.d.mts +1 -2
- package/dist/lib/signing/agent-fetch.d.ts +1 -2
- package/dist/lib/signing/agent-fetch.d.ts.map +1 -1
- package/dist/lib/signing/agent-fetch.js +2 -0
- package/dist/lib/signing/agent-fetch.js.map +1 -1
- package/dist/lib/signing/agent-fetch.mjs +2 -0
- package/dist/lib/signing/agent-fetch.mjs.map +1 -1
- package/dist/lib/signing/agent-resolver/etld.js.map +1 -1
- package/dist/lib/signing/agent-resolver/etld.mjs.map +1 -1
- package/dist/lib/testing/client.d.mts +6 -0
- package/dist/lib/testing/client.d.ts +6 -0
- package/dist/lib/testing/client.d.ts.map +1 -1
- package/dist/lib/testing/client.js +76 -4
- package/dist/lib/testing/client.js.map +1 -1
- package/dist/lib/testing/client.mjs +75 -4
- package/dist/lib/testing/client.mjs.map +1 -1
- package/dist/lib/testing/compliance/comply.d.ts.map +1 -1
- package/dist/lib/testing/compliance/comply.js +6 -0
- package/dist/lib/testing/compliance/comply.js.map +1 -1
- package/dist/lib/testing/compliance/comply.mjs +7 -1
- package/dist/lib/testing/compliance/comply.mjs.map +1 -1
- package/dist/lib/testing/storyboard/default-invariants.d.ts.map +1 -1
- package/dist/lib/testing/storyboard/default-invariants.js +11 -2
- package/dist/lib/testing/storyboard/default-invariants.js.map +1 -1
- package/dist/lib/testing/storyboard/default-invariants.mjs +11 -2
- package/dist/lib/testing/storyboard/default-invariants.mjs.map +1 -1
- package/dist/lib/testing/storyboard/index.d.mts +1 -1
- package/dist/lib/testing/storyboard/index.d.ts +1 -1
- package/dist/lib/testing/storyboard/index.d.ts.map +1 -1
- package/dist/lib/testing/storyboard/index.js.map +1 -1
- package/dist/lib/testing/storyboard/index.mjs.map +1 -1
- package/dist/lib/testing/storyboard/loader.d.ts.map +1 -1
- package/dist/lib/testing/storyboard/loader.js +14 -0
- package/dist/lib/testing/storyboard/loader.js.map +1 -1
- package/dist/lib/testing/storyboard/loader.mjs +14 -0
- package/dist/lib/testing/storyboard/loader.mjs.map +1 -1
- package/dist/lib/testing/storyboard/phase-condition.d.mts +41 -0
- package/dist/lib/testing/storyboard/phase-condition.d.ts +42 -0
- package/dist/lib/testing/storyboard/phase-condition.d.ts.map +1 -0
- package/dist/lib/testing/storyboard/phase-condition.js +215 -0
- package/dist/lib/testing/storyboard/phase-condition.js.map +1 -0
- package/dist/lib/testing/storyboard/phase-condition.mjs +189 -0
- package/dist/lib/testing/storyboard/phase-condition.mjs.map +1 -0
- package/dist/lib/testing/storyboard/request-builder.d.ts.map +1 -1
- package/dist/lib/testing/storyboard/request-builder.js +15 -2
- package/dist/lib/testing/storyboard/request-builder.js.map +1 -1
- package/dist/lib/testing/storyboard/request-builder.mjs +15 -2
- package/dist/lib/testing/storyboard/request-builder.mjs.map +1 -1
- package/dist/lib/testing/storyboard/request-signing/functional-dispatch.d.mts +15 -0
- package/dist/lib/testing/storyboard/request-signing/functional-dispatch.d.ts +16 -0
- package/dist/lib/testing/storyboard/request-signing/functional-dispatch.d.ts.map +1 -0
- package/dist/lib/testing/storyboard/request-signing/functional-dispatch.js +106 -0
- package/dist/lib/testing/storyboard/request-signing/functional-dispatch.js.map +1 -0
- package/dist/lib/testing/storyboard/request-signing/functional-dispatch.mjs +82 -0
- package/dist/lib/testing/storyboard/request-signing/functional-dispatch.mjs.map +1 -0
- package/dist/lib/testing/storyboard/request-signing/test-kit.d.mts +15 -0
- package/dist/lib/testing/storyboard/request-signing/test-kit.d.ts +15 -0
- package/dist/lib/testing/storyboard/request-signing/test-kit.d.ts.map +1 -1
- package/dist/lib/testing/storyboard/request-signing/test-kit.js +58 -0
- package/dist/lib/testing/storyboard/request-signing/test-kit.js.map +1 -1
- package/dist/lib/testing/storyboard/request-signing/test-kit.mjs +58 -0
- package/dist/lib/testing/storyboard/request-signing/test-kit.mjs.map +1 -1
- package/dist/lib/testing/storyboard/request-signing/vector-loader.d.mts +2 -0
- package/dist/lib/testing/storyboard/request-signing/vector-loader.d.ts +2 -0
- package/dist/lib/testing/storyboard/request-signing/vector-loader.d.ts.map +1 -1
- package/dist/lib/testing/storyboard/request-signing/vector-loader.js +7 -1
- package/dist/lib/testing/storyboard/request-signing/vector-loader.js.map +1 -1
- package/dist/lib/testing/storyboard/request-signing/vector-loader.mjs +6 -1
- package/dist/lib/testing/storyboard/request-signing/vector-loader.mjs.map +1 -1
- package/dist/lib/testing/storyboard/runner.d.ts.map +1 -1
- package/dist/lib/testing/storyboard/runner.js +67 -24
- package/dist/lib/testing/storyboard/runner.js.map +1 -1
- package/dist/lib/testing/storyboard/runner.mjs +67 -24
- package/dist/lib/testing/storyboard/runner.mjs.map +1 -1
- package/dist/lib/testing/storyboard/task-map.d.ts.map +1 -1
- package/dist/lib/testing/storyboard/task-map.js +6 -2
- package/dist/lib/testing/storyboard/task-map.js.map +1 -1
- package/dist/lib/testing/storyboard/task-map.mjs +6 -2
- package/dist/lib/testing/storyboard/task-map.mjs.map +1 -1
- package/dist/lib/testing/storyboard/types.d.mts +5 -4
- package/dist/lib/testing/storyboard/types.d.ts +5 -4
- package/dist/lib/testing/storyboard/types.d.ts.map +1 -1
- package/dist/lib/testing/storyboard/types.js.map +1 -1
- package/dist/lib/testing/storyboard/types.mjs.map +1 -1
- 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/webhook-assertions.d.ts.map +1 -1
- package/dist/lib/testing/storyboard/webhook-assertions.js +60 -4
- package/dist/lib/testing/storyboard/webhook-assertions.js.map +1 -1
- package/dist/lib/testing/storyboard/webhook-assertions.mjs +60 -4
- package/dist/lib/testing/storyboard/webhook-assertions.mjs.map +1 -1
- package/dist/lib/testing/storyboard/webhook-receiver.d.mts +15 -0
- package/dist/lib/testing/storyboard/webhook-receiver.d.ts +15 -0
- package/dist/lib/testing/storyboard/webhook-receiver.d.ts.map +1 -1
- package/dist/lib/testing/storyboard/webhook-receiver.js +57 -6
- package/dist/lib/testing/storyboard/webhook-receiver.js.map +1 -1
- package/dist/lib/testing/storyboard/webhook-receiver.mjs +57 -6
- package/dist/lib/testing/storyboard/webhook-receiver.mjs.map +1 -1
- package/dist/lib/testing/types.d.mts +12 -0
- package/dist/lib/testing/types.d.ts +12 -0
- package/dist/lib/testing/types.d.ts.map +1 -1
- package/dist/lib/testing/types.js.map +1 -1
- package/dist/lib/types/comply-test-controller.d.ts +1 -14
- package/dist/lib/types/core.generated.d.mts +6 -3
- package/dist/lib/types/core.generated.d.ts +6 -3
- package/dist/lib/types/core.generated.d.ts.map +1 -1
- package/dist/lib/types/core.generated.js.map +1 -1
- package/dist/lib/types/get-products.d.ts +1 -14
- package/dist/lib/types/index.d.mts +1 -1
- package/dist/lib/types/index.d.ts +1 -1
- package/dist/lib/types/index.d.ts.map +1 -1
- package/dist/lib/types/index.js.map +1 -1
- package/dist/lib/types/index.mjs.map +1 -1
- package/dist/lib/types/list-transformers.d.ts +9 -5
- package/dist/lib/types/schemas.generated.d.ts +23 -352
- package/dist/lib/types/schemas.generated.d.ts.map +1 -1
- package/dist/lib/types/schemas.generated.js +7 -4
- package/dist/lib/types/schemas.generated.js.map +1 -1
- package/dist/lib/types/schemas.generated.mjs +6 -4
- package/dist/lib/types/schemas.generated.mjs.map +1 -1
- package/dist/lib/types/server-payload-aliases.d.mts +2 -1
- package/dist/lib/types/server-payload-aliases.d.ts +2 -1
- package/dist/lib/types/server-payload-aliases.d.ts.map +1 -1
- package/dist/lib/types/server-payload-aliases.js.map +1 -1
- package/dist/lib/types/tools.generated.d.mts +6 -3
- package/dist/lib/types/tools.generated.d.ts +6 -3
- package/dist/lib/types/tools.generated.d.ts.map +1 -1
- package/dist/lib/types/tools.generated.js.map +1 -1
- package/dist/lib/utils/build-creative-return-builders.d.mts +5 -1
- package/dist/lib/utils/build-creative-return-builders.d.ts +5 -1
- package/dist/lib/utils/build-creative-return-builders.d.ts.map +1 -1
- package/dist/lib/utils/build-creative-return-builders.js +9 -3
- package/dist/lib/utils/build-creative-return-builders.js.map +1 -1
- package/dist/lib/utils/build-creative-return-builders.mjs +7 -2
- package/dist/lib/utils/build-creative-return-builders.mjs.map +1 -1
- package/dist/lib/utils/response-unwrapper.js +1 -1
- package/dist/lib/utils/response-unwrapper.js.map +1 -1
- package/dist/lib/utils/response-unwrapper.mjs +1 -1
- package/dist/lib/utils/response-unwrapper.mjs.map +1 -1
- package/dist/lib/validation/schema-loader.d.ts.map +1 -1
- package/dist/lib/validation/schema-loader.js +16 -7
- package/dist/lib/validation/schema-loader.js.map +1 -1
- package/dist/lib/validation/schema-loader.mjs +16 -7
- package/dist/lib/validation/schema-loader.mjs.map +1 -1
- package/dist/lib/version.d.mts +3 -3
- package/dist/lib/version.d.ts +3 -3
- package/dist/lib/version.js +3 -3
- package/dist/lib/version.js.map +1 -1
- package/dist/lib/version.mjs +3 -3
- package/dist/lib/version.mjs.map +1 -1
- package/docs/llms.txt +2 -2
- package/docs/migration-5.x-to-6.x.md +3 -2
- package/docs/migration-task-registry-scoping.md +61 -0
- package/examples/hello_seller_adapter_guaranteed.ts +1 -1
- package/package.json +5 -5
- package/skills/build-decisioning-creative-template/SKILL.md +2 -2
- package/skills/build-decisioning-platform/SKILL.md +4 -2
- package/skills/build-decisioning-platform/advanced/REFERENCE.md +7 -6
|
@@ -9,6 +9,7 @@ import {
|
|
|
9
9
|
} from "../../protocols/index.mjs";
|
|
10
10
|
import { getCapturesFromError, withRawResponseCapture } from "../../protocols/rawResponseCapture.mjs";
|
|
11
11
|
import { defaultStoryboardResponseProjection, executeStoryboardTask } from "./task-map.mjs";
|
|
12
|
+
import { applyFunctionalRequestSigning } from "./request-signing/functional-dispatch.mjs";
|
|
12
13
|
import {
|
|
13
14
|
extractContextWithProvenance,
|
|
14
15
|
injectContext,
|
|
@@ -68,6 +69,7 @@ import { readBrandJsonUrl } from "../../signing/agent-resolver/capabilities-type
|
|
|
68
69
|
import { selectAgentByUrl } from "../../signing/agent-resolver/select-agent.mjs";
|
|
69
70
|
import { resolveDeclaredTestKit, selectProbeTask, validateTestKit } from "./test-kit.mjs";
|
|
70
71
|
import { validateStoryboardShape } from "./loader.mjs";
|
|
72
|
+
import { evaluatePhaseCondition, phaseConditionUsesContext } from "./phase-condition.mjs";
|
|
71
73
|
import { trustedStoryboardComplianceRoot } from "./provenance.mjs";
|
|
72
74
|
import { probeRequestSigningVector } from "./request-signing/probe-dispatch.mjs";
|
|
73
75
|
import { createWebhookReceiver } from "./webhook-receiver.mjs";
|
|
@@ -667,6 +669,10 @@ async function runStoryboard(agentUrlOrUrls, storyboard, options = {}) {
|
|
|
667
669
|
return withMCPConnectionScope(
|
|
668
670
|
async () => {
|
|
669
671
|
options = applyStoryboardVersionOptions(storyboard, options);
|
|
672
|
+
options = applyFunctionalRequestSigning(options, {
|
|
673
|
+
...options.complianceDir && { complianceDir: options.complianceDir },
|
|
674
|
+
...options.adcpVersion && { version: options.adcpVersion }
|
|
675
|
+
});
|
|
670
676
|
options = resolveDeclaredTestKit(storyboard, options);
|
|
671
677
|
options = { ...options, transport: normalizeTransportOptions(options.transport) };
|
|
672
678
|
const schemaRoot = getRunSchemaRoot(options);
|
|
@@ -1575,9 +1581,10 @@ async function executeStoryboardPass(agentUrls, storyboard, options, dispatchOff
|
|
|
1575
1581
|
storyboard,
|
|
1576
1582
|
phaseCapabilitySkipDetails
|
|
1577
1583
|
);
|
|
1578
|
-
const
|
|
1584
|
+
const preflightExcludedPhaseIds = /* @__PURE__ */ new Set([
|
|
1579
1585
|
...phaseCapabilitySkipDetails.keys(),
|
|
1580
|
-
...storyboard.phases.filter((phase) =>
|
|
1586
|
+
...storyboard.phases.filter((phase) => shouldSkipPhaseBeforeRun(phase, options)).map((phase) => phase.id),
|
|
1587
|
+
...storyboard.phases.filter((phase) => phaseUsesRuntimeContext(phase)).map((phase) => phase.id)
|
|
1581
1588
|
]);
|
|
1582
1589
|
let creativeAssetFixtureGap = preflightRemainingCreativeAssetDirectives(
|
|
1583
1590
|
allSteps,
|
|
@@ -1600,7 +1607,7 @@ async function executeStoryboardPass(agentUrls, storyboard, options, dispatchOff
|
|
|
1600
1607
|
storyboardRequiresRequestSigner: allRequires.includes("request_signer"),
|
|
1601
1608
|
storyboardRequiresPublisherAuthRunner: storyboard.requires?.includes("trusted_match_publisher_auth_runner") === true
|
|
1602
1609
|
},
|
|
1603
|
-
|
|
1610
|
+
preflightExcludedPhaseIds
|
|
1604
1611
|
);
|
|
1605
1612
|
let creativeAssetFixtureGapRecorded = false;
|
|
1606
1613
|
if (!hasExecutableSteps) {
|
|
@@ -1732,7 +1739,7 @@ async function executeStoryboardPass(agentUrls, storyboard, options, dispatchOff
|
|
|
1732
1739
|
context,
|
|
1733
1740
|
options,
|
|
1734
1741
|
buildExecutionState(),
|
|
1735
|
-
|
|
1742
|
+
preflightExcludedPhaseIds
|
|
1736
1743
|
);
|
|
1737
1744
|
}
|
|
1738
1745
|
for (const phase of storyboard.phases) {
|
|
@@ -1811,7 +1818,7 @@ async function executeStoryboardPass(agentUrls, storyboard, options, dispatchOff
|
|
|
1811
1818
|
const phaseStatefulStepIds = phase.steps.filter((s) => s.stateful).map((s) => s.id);
|
|
1812
1819
|
let phaseAbsent = false;
|
|
1813
1820
|
let presenceDetected = false;
|
|
1814
|
-
if (shouldSkipPhase(phase, options)) {
|
|
1821
|
+
if (shouldSkipPhase(phase, options, context)) {
|
|
1815
1822
|
phaseResults.push({
|
|
1816
1823
|
phase_id: phase.id,
|
|
1817
1824
|
phase_title: phase.title,
|
|
@@ -1822,6 +1829,41 @@ async function executeStoryboardPass(agentUrls, storyboard, options, dispatchOff
|
|
|
1822
1829
|
});
|
|
1823
1830
|
continue;
|
|
1824
1831
|
}
|
|
1832
|
+
if (phaseUsesRuntimeContext(phase)) {
|
|
1833
|
+
preflightExcludedPhaseIds.delete(phase.id);
|
|
1834
|
+
const firstPhaseStepIndex = allSteps.find((target) => target.phaseId === phase.id)?.globalIndex ?? 0;
|
|
1835
|
+
creativeAssetFixtureGap = preflightRemainingCreativeAssetDirectives(
|
|
1836
|
+
allSteps,
|
|
1837
|
+
firstPhaseStepIndex - 1,
|
|
1838
|
+
context,
|
|
1839
|
+
options,
|
|
1840
|
+
buildExecutionState(),
|
|
1841
|
+
preflightExcludedPhaseIds
|
|
1842
|
+
);
|
|
1843
|
+
if (creativeAssetFixtureGap?.target.phaseId === phase.id) {
|
|
1844
|
+
const gapStep = buildCreativeAssetFixtureUnavailableStep(
|
|
1845
|
+
creativeAssetFixtureGap.target.step,
|
|
1846
|
+
phase.id,
|
|
1847
|
+
context,
|
|
1848
|
+
allSteps,
|
|
1849
|
+
buildExecutionState(),
|
|
1850
|
+
creativeAssetFixtureGap.failure
|
|
1851
|
+
);
|
|
1852
|
+
gapStep.storyboard_id = storyboard.id;
|
|
1853
|
+
priorStepResults.set(gapStep.step_id, gapStep);
|
|
1854
|
+
skippedCount++;
|
|
1855
|
+
creativeAssetFixtureGapRecorded = true;
|
|
1856
|
+
phaseResults.push({
|
|
1857
|
+
phase_id: phase.id,
|
|
1858
|
+
phase_title: phase.title,
|
|
1859
|
+
passed: true,
|
|
1860
|
+
steps: [gapStep],
|
|
1861
|
+
duration_ms: Date.now() - phaseStart
|
|
1862
|
+
});
|
|
1863
|
+
priorPhaseIds.push(phase.id);
|
|
1864
|
+
continue;
|
|
1865
|
+
}
|
|
1866
|
+
}
|
|
1825
1867
|
if (!phaseAbsent && phaseContainsOauthMetadataProbe(phase) && !agentAdvertisesOauth(profile)) {
|
|
1826
1868
|
phaseAbsent = true;
|
|
1827
1869
|
}
|
|
@@ -2106,7 +2148,7 @@ async function executeStoryboardPass(agentUrls, storyboard, options, dispatchOff
|
|
|
2106
2148
|
context,
|
|
2107
2149
|
options,
|
|
2108
2150
|
stepExecutionState,
|
|
2109
|
-
|
|
2151
|
+
preflightExcludedPhaseIds
|
|
2110
2152
|
);
|
|
2111
2153
|
}
|
|
2112
2154
|
if (creativeAssetFixtureGap) {
|
|
@@ -2320,7 +2362,8 @@ async function runMultiPass(agentUrls, storyboard, options) {
|
|
|
2320
2362
|
);
|
|
2321
2363
|
const preSeedExcludedPhaseIds = /* @__PURE__ */ new Set([
|
|
2322
2364
|
...phaseCapabilitySkipDetails.keys(),
|
|
2323
|
-
...storyboard.phases.filter((phase) =>
|
|
2365
|
+
...storyboard.phases.filter((phase) => shouldSkipPhaseBeforeRun(phase, options)).map((phase) => phase.id),
|
|
2366
|
+
...storyboard.phases.filter((phase) => phaseUsesRuntimeContext(phase)).map((phase) => phase.id)
|
|
2324
2367
|
]);
|
|
2325
2368
|
const preSeedFixtureGap = preflightRemainingCreativeAssetDirectives(
|
|
2326
2369
|
flattenSteps(storyboard),
|
|
@@ -2495,6 +2538,10 @@ async function runStoryboardStep(agentUrl, storyboard, stepId, options = {}) {
|
|
|
2495
2538
|
async () => {
|
|
2496
2539
|
validateStoryboardShape(storyboard);
|
|
2497
2540
|
options = applyStoryboardVersionOptions(storyboard, options);
|
|
2541
|
+
options = applyFunctionalRequestSigning(options, {
|
|
2542
|
+
...options.complianceDir && { complianceDir: options.complianceDir },
|
|
2543
|
+
...options.adcpVersion && { version: options.adcpVersion }
|
|
2544
|
+
});
|
|
2498
2545
|
options = resolveDeclaredTestKit(storyboard, options);
|
|
2499
2546
|
const schemaRoot = getRunSchemaRoot(options);
|
|
2500
2547
|
if (schemaRoot) {
|
|
@@ -3094,7 +3141,7 @@ async function executeStep(client, step, storyboardId, phaseId, context, allStep
|
|
|
3094
3141
|
runState.agentProfile?.raw_capabilities,
|
|
3095
3142
|
"request_signing.required_for"
|
|
3096
3143
|
);
|
|
3097
|
-
if (taskResult?.adcp_error?.code === "request_signature_required" && Array.isArray(requiredForSigning) && requiredForSigning.includes(effectiveStep.task) && runState.storyboardRequiresRequestSigner !== true) {
|
|
3144
|
+
if (taskResult?.adcp_error?.code === "request_signature_required" && Array.isArray(requiredForSigning) && requiredForSigning.includes(effectiveStep.task) && options.functional_request_signing === void 0 && runState.storyboardRequiresRequestSigner !== true) {
|
|
3098
3145
|
const next2 = getNextStepPreview(step.id, allSteps, context, runState.runnerVars);
|
|
3099
3146
|
const detail = `Agent declared request_signing.required_for includes "${effectiveStep.task}" and rejected the unsigned request with request_signature_required; storyboard "${storyboardId}" does not require request_signer.`;
|
|
3100
3147
|
return {
|
|
@@ -4631,23 +4678,19 @@ function agentAdvertisesOauth(profile) {
|
|
|
4631
4678
|
const endpoint = resolveCapabilityPath(rawCaps, "account.authorization_endpoint");
|
|
4632
4679
|
return typeof endpoint === "string" && endpoint.length > 0;
|
|
4633
4680
|
}
|
|
4634
|
-
function shouldSkipPhase(phase, options) {
|
|
4681
|
+
function shouldSkipPhase(phase, options, context) {
|
|
4635
4682
|
const expr = phase.skip_if?.trim();
|
|
4636
4683
|
if (!expr) return false;
|
|
4637
|
-
|
|
4638
|
-
|
|
4639
|
-
|
|
4640
|
-
const
|
|
4641
|
-
|
|
4642
|
-
|
|
4643
|
-
|
|
4644
|
-
|
|
4645
|
-
|
|
4646
|
-
|
|
4647
|
-
value = value[segment];
|
|
4648
|
-
}
|
|
4649
|
-
const truthy = Boolean(value);
|
|
4650
|
-
return negated ? !truthy : truthy;
|
|
4684
|
+
return evaluatePhaseCondition(expr, { context, test_kit: options.test_kit });
|
|
4685
|
+
}
|
|
4686
|
+
function shouldSkipPhaseBeforeRun(phase, options) {
|
|
4687
|
+
const expr = phase.skip_if?.trim();
|
|
4688
|
+
if (!expr || phaseConditionUsesContext(expr)) return false;
|
|
4689
|
+
return evaluatePhaseCondition(expr, { test_kit: options.test_kit });
|
|
4690
|
+
}
|
|
4691
|
+
function phaseUsesRuntimeContext(phase) {
|
|
4692
|
+
const expr = phase.skip_if?.trim();
|
|
4693
|
+
return expr ? phaseConditionUsesContext(expr) : false;
|
|
4651
4694
|
}
|
|
4652
4695
|
function resolveTaskName(step, options) {
|
|
4653
4696
|
if (!step.task.startsWith("$test_kit.")) return step.task;
|
|
@@ -4809,7 +4852,7 @@ function applyBrandInvariant(request, options, taskName, stepFlags) {
|
|
|
4809
4852
|
const acct = existingAccount;
|
|
4810
4853
|
const isNaturalKeyVariant = "brand" in acct || "operator" in acct;
|
|
4811
4854
|
if (isNaturalKeyVariant) {
|
|
4812
|
-
const preserveWholesaleAccountBrand = taskName === "get_products" && request.buying_mode === "wholesale" && acct.brand !== void 0;
|
|
4855
|
+
const preserveWholesaleAccountBrand = (taskName === "get_products" && request.buying_mode === "wholesale" || taskName === "get_signals" && request.discovery_mode === "wholesale") && acct.brand !== void 0;
|
|
4813
4856
|
const merged = {
|
|
4814
4857
|
...acct,
|
|
4815
4858
|
brand: preserveWholesaleAccountBrand ? acct.brand : brand
|