@adcp/client 3.8.1 → 3.9.0
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.js +527 -11
- package/dist/lib/agents/index.generated.d.ts +9 -1
- package/dist/lib/agents/index.generated.d.ts.map +1 -1
- package/dist/lib/agents/index.generated.js +12 -0
- package/dist/lib/agents/index.generated.js.map +1 -1
- package/dist/lib/auth/index.d.ts +1 -0
- package/dist/lib/auth/index.d.ts.map +1 -1
- package/dist/lib/auth/index.js +16 -0
- package/dist/lib/auth/index.js.map +1 -1
- package/dist/lib/auth/oauth/CLIFlowHandler.d.ts +61 -0
- package/dist/lib/auth/oauth/CLIFlowHandler.d.ts.map +1 -0
- package/dist/lib/auth/oauth/CLIFlowHandler.js +287 -0
- package/dist/lib/auth/oauth/CLIFlowHandler.js.map +1 -0
- package/dist/lib/auth/oauth/MCPOAuthProvider.d.ts +126 -0
- package/dist/lib/auth/oauth/MCPOAuthProvider.d.ts.map +1 -0
- package/dist/lib/auth/oauth/MCPOAuthProvider.js +236 -0
- package/dist/lib/auth/oauth/MCPOAuthProvider.js.map +1 -0
- package/dist/lib/auth/oauth/index.d.ts +104 -0
- package/dist/lib/auth/oauth/index.d.ts.map +1 -0
- package/dist/lib/auth/oauth/index.js +168 -0
- package/dist/lib/auth/oauth/index.js.map +1 -0
- package/dist/lib/auth/oauth/types.d.ts +114 -0
- package/dist/lib/auth/oauth/types.d.ts.map +1 -0
- package/dist/lib/auth/oauth/types.js +104 -0
- package/dist/lib/auth/oauth/types.js.map +1 -0
- package/dist/lib/core/TaskExecutor.d.ts.map +1 -1
- package/dist/lib/core/TaskExecutor.js +21 -9
- package/dist/lib/core/TaskExecutor.js.map +1 -1
- package/dist/lib/index.d.ts +1 -0
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +11 -3
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/protocols/index.d.ts +2 -1
- package/dist/lib/protocols/index.d.ts.map +1 -1
- package/dist/lib/protocols/index.js +4 -1
- package/dist/lib/protocols/index.js.map +1 -1
- package/dist/lib/protocols/mcp.d.ts +80 -0
- package/dist/lib/protocols/mcp.d.ts.map +1 -1
- package/dist/lib/protocols/mcp.js +158 -0
- package/dist/lib/protocols/mcp.js.map +1 -1
- package/dist/lib/testing/agent-tester.d.ts +1 -1
- package/dist/lib/testing/agent-tester.d.ts.map +1 -1
- package/dist/lib/testing/agent-tester.js +39 -1
- package/dist/lib/testing/agent-tester.js.map +1 -1
- package/dist/lib/testing/index.d.ts +1 -1
- package/dist/lib/testing/index.d.ts.map +1 -1
- package/dist/lib/testing/index.js +11 -1
- package/dist/lib/testing/index.js.map +1 -1
- package/dist/lib/testing/scenarios/capabilities.d.ts +27 -0
- package/dist/lib/testing/scenarios/capabilities.d.ts.map +1 -0
- package/dist/lib/testing/scenarios/capabilities.js +250 -0
- package/dist/lib/testing/scenarios/capabilities.js.map +1 -0
- package/dist/lib/testing/scenarios/governance.d.ts +35 -0
- package/dist/lib/testing/scenarios/governance.d.ts.map +1 -0
- package/dist/lib/testing/scenarios/governance.js +428 -0
- package/dist/lib/testing/scenarios/governance.js.map +1 -0
- package/dist/lib/testing/scenarios/index.d.ts +3 -0
- package/dist/lib/testing/scenarios/index.d.ts.map +1 -1
- package/dist/lib/testing/scenarios/index.js +15 -1
- package/dist/lib/testing/scenarios/index.js.map +1 -1
- package/dist/lib/testing/scenarios/sponsored-intelligence.d.ts +34 -0
- package/dist/lib/testing/scenarios/sponsored-intelligence.d.ts.map +1 -0
- package/dist/lib/testing/scenarios/sponsored-intelligence.js +318 -0
- package/dist/lib/testing/scenarios/sponsored-intelligence.js.map +1 -0
- package/dist/lib/testing/types.d.ts +9 -1
- package/dist/lib/testing/types.d.ts.map +1 -1
- package/dist/lib/types/adcp.d.ts +47 -1
- package/dist/lib/types/adcp.d.ts.map +1 -1
- package/dist/lib/types/core.generated.d.ts +393 -164
- package/dist/lib/types/core.generated.d.ts.map +1 -1
- package/dist/lib/types/core.generated.js +2 -2
- package/dist/lib/types/core.generated.js.map +1 -1
- package/dist/lib/types/schemas.generated.d.ts +1275 -845
- package/dist/lib/types/schemas.generated.d.ts.map +1 -1
- package/dist/lib/types/schemas.generated.js +300 -198
- package/dist/lib/types/schemas.generated.js.map +1 -1
- package/dist/lib/types/tools.generated.d.ts +461 -167
- package/dist/lib/types/tools.generated.d.ts.map +1 -1
- package/dist/lib/types/tools.generated.js +1 -1
- package/dist/lib/types/tools.generated.js.map +1 -1
- package/dist/lib/version.d.ts +5 -5
- package/dist/lib/version.d.ts.map +1 -1
- package/dist/lib/version.js +5 -5
- package/dist/lib/version.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UnauthorizedError = void 0;
|
|
3
4
|
exports.callMCPTool = callMCPTool;
|
|
5
|
+
exports.connectMCP = connectMCP;
|
|
6
|
+
exports.callMCPToolWithOAuth = callMCPToolWithOAuth;
|
|
4
7
|
// Official MCP client implementation using HTTP streaming transport with SSE fallback
|
|
5
8
|
const index_js_1 = require("@modelcontextprotocol/sdk/client/index.js");
|
|
6
9
|
const streamableHttp_js_1 = require("@modelcontextprotocol/sdk/client/streamableHttp.js");
|
|
7
10
|
const sse_js_1 = require("@modelcontextprotocol/sdk/client/sse.js");
|
|
11
|
+
const auth_js_1 = require("@modelcontextprotocol/sdk/client/auth.js");
|
|
12
|
+
Object.defineProperty(exports, "UnauthorizedError", { enumerable: true, get: function () { return auth_js_1.UnauthorizedError; } });
|
|
8
13
|
const auth_1 = require("../auth");
|
|
9
14
|
async function callMCPTool(agentUrl, toolName, args, authToken, debugLogs = []) {
|
|
10
15
|
let mcpClient = undefined;
|
|
@@ -167,4 +172,157 @@ async function callMCPTool(agentUrl, toolName, args, authToken, debugLogs = [])
|
|
|
167
172
|
}
|
|
168
173
|
}
|
|
169
174
|
}
|
|
175
|
+
/**
|
|
176
|
+
* Connect to an MCP server with OAuth support
|
|
177
|
+
*
|
|
178
|
+
* This function handles both static token auth and OAuth flows.
|
|
179
|
+
* When using OAuth, if the server requires authorization:
|
|
180
|
+
* 1. UnauthorizedError is thrown
|
|
181
|
+
* 2. The OAuth provider's redirectToAuthorization is called
|
|
182
|
+
* 3. Caller should wait for callback and call finishAuth on transport
|
|
183
|
+
*
|
|
184
|
+
* @param options Connection options
|
|
185
|
+
* @returns MCP client and transport (for finishing OAuth if needed)
|
|
186
|
+
* @throws UnauthorizedError if OAuth is required
|
|
187
|
+
*
|
|
188
|
+
* @example
|
|
189
|
+
* ```typescript
|
|
190
|
+
* // With OAuth provider
|
|
191
|
+
* const provider = createCLIOAuthProvider(serverUrl);
|
|
192
|
+
*
|
|
193
|
+
* try {
|
|
194
|
+
* const { client, transport } = await connectMCP({
|
|
195
|
+
* agentUrl: serverUrl,
|
|
196
|
+
* authProvider: provider
|
|
197
|
+
* });
|
|
198
|
+
* // Connected! Use client...
|
|
199
|
+
* } catch (error) {
|
|
200
|
+
* if (error instanceof UnauthorizedError) {
|
|
201
|
+
* // OAuth flow started, wait for callback
|
|
202
|
+
* const code = await provider.waitForCallback();
|
|
203
|
+
* await transport.finishAuth(code);
|
|
204
|
+
* // Retry connection...
|
|
205
|
+
* }
|
|
206
|
+
* }
|
|
207
|
+
* ```
|
|
208
|
+
*/
|
|
209
|
+
async function connectMCP(options) {
|
|
210
|
+
const { agentUrl, authToken, authProvider, debugLogs = [] } = options;
|
|
211
|
+
const baseUrl = new URL(agentUrl);
|
|
212
|
+
debugLogs.push({
|
|
213
|
+
type: 'info',
|
|
214
|
+
message: `MCP: Connecting to ${baseUrl}`,
|
|
215
|
+
timestamp: new Date().toISOString(),
|
|
216
|
+
authMethod: authProvider ? 'oauth' : authToken ? 'token' : 'none',
|
|
217
|
+
});
|
|
218
|
+
const mcpClient = new index_js_1.Client({
|
|
219
|
+
name: 'AdCP-Client',
|
|
220
|
+
version: '1.0.0',
|
|
221
|
+
});
|
|
222
|
+
// Build transport options
|
|
223
|
+
const transportOptions = {};
|
|
224
|
+
if (authProvider) {
|
|
225
|
+
// Use OAuth provider
|
|
226
|
+
transportOptions.authProvider = authProvider;
|
|
227
|
+
debugLogs.push({
|
|
228
|
+
type: 'info',
|
|
229
|
+
message: 'MCP: Using OAuth provider for authentication',
|
|
230
|
+
timestamp: new Date().toISOString(),
|
|
231
|
+
});
|
|
232
|
+
}
|
|
233
|
+
else if (authToken) {
|
|
234
|
+
// Use static token
|
|
235
|
+
const authHeaders = (0, auth_1.createMCPAuthHeaders)(authToken);
|
|
236
|
+
transportOptions.requestInit = { headers: authHeaders };
|
|
237
|
+
debugLogs.push({
|
|
238
|
+
type: 'info',
|
|
239
|
+
message: 'MCP: Using static token for authentication',
|
|
240
|
+
timestamp: new Date().toISOString(),
|
|
241
|
+
});
|
|
242
|
+
}
|
|
243
|
+
const transport = new streamableHttp_js_1.StreamableHTTPClientTransport(baseUrl, transportOptions);
|
|
244
|
+
try {
|
|
245
|
+
await mcpClient.connect(transport);
|
|
246
|
+
debugLogs.push({
|
|
247
|
+
type: 'success',
|
|
248
|
+
message: 'MCP: Connected successfully',
|
|
249
|
+
timestamp: new Date().toISOString(),
|
|
250
|
+
});
|
|
251
|
+
return { client: mcpClient, transport };
|
|
252
|
+
}
|
|
253
|
+
catch (error) {
|
|
254
|
+
// If it's an UnauthorizedError, the OAuth flow has started
|
|
255
|
+
// Rethrow so the caller can handle the callback
|
|
256
|
+
if (error instanceof auth_js_1.UnauthorizedError) {
|
|
257
|
+
debugLogs.push({
|
|
258
|
+
type: 'info',
|
|
259
|
+
message: 'MCP: OAuth authorization required, flow initiated',
|
|
260
|
+
timestamp: new Date().toISOString(),
|
|
261
|
+
});
|
|
262
|
+
// Return transport so caller can call finishAuth
|
|
263
|
+
throw Object.assign(error, { transport, client: mcpClient });
|
|
264
|
+
}
|
|
265
|
+
throw error;
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
/**
|
|
269
|
+
* Call an MCP tool with OAuth support
|
|
270
|
+
*
|
|
271
|
+
* This is an enhanced version of callMCPTool that supports OAuth.
|
|
272
|
+
* For simple cases with static tokens, use the original callMCPTool.
|
|
273
|
+
*
|
|
274
|
+
* @param options Call options
|
|
275
|
+
* @returns Tool response
|
|
276
|
+
* @throws UnauthorizedError if OAuth is required (with transport attached)
|
|
277
|
+
*/
|
|
278
|
+
async function callMCPToolWithOAuth(options) {
|
|
279
|
+
const { agentUrl, toolName, args, authToken, authProvider, debugLogs = [] } = options;
|
|
280
|
+
// If no OAuth provider, use the legacy function
|
|
281
|
+
if (!authProvider) {
|
|
282
|
+
return callMCPTool(agentUrl, toolName, args, authToken, debugLogs);
|
|
283
|
+
}
|
|
284
|
+
let client;
|
|
285
|
+
let transport;
|
|
286
|
+
try {
|
|
287
|
+
const result = await connectMCP({
|
|
288
|
+
agentUrl,
|
|
289
|
+
authProvider,
|
|
290
|
+
debugLogs,
|
|
291
|
+
});
|
|
292
|
+
client = result.client;
|
|
293
|
+
transport = result.transport;
|
|
294
|
+
debugLogs.push({
|
|
295
|
+
type: 'info',
|
|
296
|
+
message: `MCP: Calling tool ${toolName}`,
|
|
297
|
+
timestamp: new Date().toISOString(),
|
|
298
|
+
});
|
|
299
|
+
const response = await client.callTool({
|
|
300
|
+
name: toolName,
|
|
301
|
+
arguments: args,
|
|
302
|
+
});
|
|
303
|
+
debugLogs.push({
|
|
304
|
+
type: response?.isError ? 'error' : 'success',
|
|
305
|
+
message: `MCP: Tool ${toolName} response received`,
|
|
306
|
+
timestamp: new Date().toISOString(),
|
|
307
|
+
});
|
|
308
|
+
if (response?.isError && response?.content && Array.isArray(response.content)) {
|
|
309
|
+
const errorText = response.content
|
|
310
|
+
.filter((item) => item.type === 'text' && item.text)
|
|
311
|
+
.map((item) => item.text)
|
|
312
|
+
.join('\n');
|
|
313
|
+
throw new Error(errorText || `MCP tool '${toolName}' execution failed`);
|
|
314
|
+
}
|
|
315
|
+
return response;
|
|
316
|
+
}
|
|
317
|
+
finally {
|
|
318
|
+
if (client) {
|
|
319
|
+
try {
|
|
320
|
+
await client.close();
|
|
321
|
+
}
|
|
322
|
+
catch {
|
|
323
|
+
// Ignore close errors
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
}
|
|
170
328
|
//# sourceMappingURL=mcp.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../../src/lib/protocols/mcp.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../../../src/lib/protocols/mcp.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,5 +29,5 @@ import type { TestScenario, TestOptions, TestResult } from './types';
|
|
|
29
29
|
* Main entry point: Run a test scenario against an agent
|
|
30
30
|
*/
|
|
31
31
|
export declare function testAgent(agentUrl: string, scenario: TestScenario, options?: TestOptions): Promise<TestResult>;
|
|
32
|
-
export { testHealthCheck, testDiscovery, testCreateMediaBuy, testFullSalesFlow, testCreativeSync, testCreativeInline, testCreativeFlow, testSignalsFlow, testErrorHandling, testValidation, testPricingEdgeCases, testTemporalValidation, testBehaviorAnalysis, testResponseConsistency, } from './scenarios';
|
|
32
|
+
export { testHealthCheck, testDiscovery, testCreateMediaBuy, testFullSalesFlow, testCreativeSync, testCreativeInline, testCreativeFlow, testSignalsFlow, testErrorHandling, testValidation, testPricingEdgeCases, testTemporalValidation, testBehaviorAnalysis, testResponseConsistency, testGovernancePropertyLists, testGovernanceContentStandards, testSISessionLifecycle, testSIAvailability, testCapabilityDiscovery, hasGovernanceTools, hasSITools, likelySupportsV3, } from './scenarios';
|
|
33
33
|
//# sourceMappingURL=agent-tester.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-tester.d.ts","sourceRoot":"","sources":["../../../src/lib/testing/agent-tester.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAGH,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGvH,OAAO,EAAE,oBAAoB,EAAE,SAAS,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGtF,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"agent-tester.d.ts","sourceRoot":"","sources":["../../../src/lib/testing/agent-tester.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAGH,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAGvH,OAAO,EAAE,oBAAoB,EAAE,SAAS,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAGtF,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AA2BjG,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAgC,MAAM,SAAS,CAAC;AAGnG;;GAEG;AACH,wBAAsB,SAAS,CAC7B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,YAAY,EACtB,OAAO,GAAE,WAAgB,GACxB,OAAO,CAAC,UAAU,CAAC,CA4MrB;AAGD,OAAO,EACL,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,EACpB,uBAAuB,EAEvB,2BAA2B,EAC3B,8BAA8B,EAC9B,sBAAsB,EACtB,kBAAkB,EAClB,uBAAuB,EAEvB,kBAAkB,EAClB,UAAU,EACV,gBAAgB,GACjB,MAAM,aAAa,CAAC"}
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
* ```
|
|
24
24
|
*/
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.testResponseConsistency = exports.testBehaviorAnalysis = exports.testTemporalValidation = exports.testPricingEdgeCases = exports.testValidation = exports.testErrorHandling = exports.testSignalsFlow = exports.testCreativeFlow = exports.testCreativeInline = exports.testCreativeSync = exports.testFullSalesFlow = exports.testCreateMediaBuy = exports.testDiscovery = exports.testHealthCheck = exports.formatTestResultsSummary = exports.formatTestResultsJSON = exports.formatTestResults = exports.runStep = exports.createTestClient = exports.getLogger = exports.setAgentTesterLogger = void 0;
|
|
26
|
+
exports.likelySupportsV3 = exports.hasSITools = exports.hasGovernanceTools = exports.testCapabilityDiscovery = exports.testSIAvailability = exports.testSISessionLifecycle = exports.testGovernanceContentStandards = exports.testGovernancePropertyLists = exports.testResponseConsistency = exports.testBehaviorAnalysis = exports.testTemporalValidation = exports.testPricingEdgeCases = exports.testValidation = exports.testErrorHandling = exports.testSignalsFlow = exports.testCreativeFlow = exports.testCreativeInline = exports.testCreativeSync = exports.testFullSalesFlow = exports.testCreateMediaBuy = exports.testDiscovery = exports.testHealthCheck = exports.formatTestResultsSummary = exports.formatTestResultsJSON = exports.formatTestResults = exports.runStep = exports.createTestClient = exports.getLogger = exports.setAgentTesterLogger = void 0;
|
|
27
27
|
exports.testAgent = testAgent;
|
|
28
28
|
// Re-export client utilities
|
|
29
29
|
var client_1 = require("./client");
|
|
@@ -143,6 +143,34 @@ async function testAgent(agentUrl, scenario, options = {}) {
|
|
|
143
143
|
steps = result.steps;
|
|
144
144
|
profile = result.profile;
|
|
145
145
|
break;
|
|
146
|
+
// v3 Governance protocol scenarios
|
|
147
|
+
case 'governance_property_lists':
|
|
148
|
+
result = await (0, scenarios_1.testGovernancePropertyLists)(agentUrl, effectiveOptions);
|
|
149
|
+
steps = result.steps;
|
|
150
|
+
profile = result.profile;
|
|
151
|
+
break;
|
|
152
|
+
case 'governance_content_standards':
|
|
153
|
+
result = await (0, scenarios_1.testGovernanceContentStandards)(agentUrl, effectiveOptions);
|
|
154
|
+
steps = result.steps;
|
|
155
|
+
profile = result.profile;
|
|
156
|
+
break;
|
|
157
|
+
// v3 SI protocol scenarios
|
|
158
|
+
case 'si_session_lifecycle':
|
|
159
|
+
result = await (0, scenarios_1.testSISessionLifecycle)(agentUrl, effectiveOptions);
|
|
160
|
+
steps = result.steps;
|
|
161
|
+
profile = result.profile;
|
|
162
|
+
break;
|
|
163
|
+
case 'si_availability':
|
|
164
|
+
result = await (0, scenarios_1.testSIAvailability)(agentUrl, effectiveOptions);
|
|
165
|
+
steps = result.steps;
|
|
166
|
+
profile = result.profile;
|
|
167
|
+
break;
|
|
168
|
+
// v3 Capability discovery
|
|
169
|
+
case 'capability_discovery':
|
|
170
|
+
result = await (0, scenarios_1.testCapabilityDiscovery)(agentUrl, effectiveOptions);
|
|
171
|
+
steps = result.steps;
|
|
172
|
+
profile = result.profile;
|
|
173
|
+
break;
|
|
146
174
|
default:
|
|
147
175
|
steps = [
|
|
148
176
|
{
|
|
@@ -208,4 +236,14 @@ Object.defineProperty(exports, "testPricingEdgeCases", { enumerable: true, get:
|
|
|
208
236
|
Object.defineProperty(exports, "testTemporalValidation", { enumerable: true, get: function () { return scenarios_2.testTemporalValidation; } });
|
|
209
237
|
Object.defineProperty(exports, "testBehaviorAnalysis", { enumerable: true, get: function () { return scenarios_2.testBehaviorAnalysis; } });
|
|
210
238
|
Object.defineProperty(exports, "testResponseConsistency", { enumerable: true, get: function () { return scenarios_2.testResponseConsistency; } });
|
|
239
|
+
// v3 scenarios
|
|
240
|
+
Object.defineProperty(exports, "testGovernancePropertyLists", { enumerable: true, get: function () { return scenarios_2.testGovernancePropertyLists; } });
|
|
241
|
+
Object.defineProperty(exports, "testGovernanceContentStandards", { enumerable: true, get: function () { return scenarios_2.testGovernanceContentStandards; } });
|
|
242
|
+
Object.defineProperty(exports, "testSISessionLifecycle", { enumerable: true, get: function () { return scenarios_2.testSISessionLifecycle; } });
|
|
243
|
+
Object.defineProperty(exports, "testSIAvailability", { enumerable: true, get: function () { return scenarios_2.testSIAvailability; } });
|
|
244
|
+
Object.defineProperty(exports, "testCapabilityDiscovery", { enumerable: true, get: function () { return scenarios_2.testCapabilityDiscovery; } });
|
|
245
|
+
// v3 helpers
|
|
246
|
+
Object.defineProperty(exports, "hasGovernanceTools", { enumerable: true, get: function () { return scenarios_2.hasGovernanceTools; } });
|
|
247
|
+
Object.defineProperty(exports, "hasSITools", { enumerable: true, get: function () { return scenarios_2.hasSITools; } });
|
|
248
|
+
Object.defineProperty(exports, "likelySupportsV3", { enumerable: true, get: function () { return scenarios_2.likelySupportsV3; } });
|
|
211
249
|
//# sourceMappingURL=agent-tester.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-tester.js","sourceRoot":"","sources":["../../../src/lib/testing/agent-tester.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;;;
|
|
1
|
+
{"version":3,"file":"agent-tester.js","sourceRoot":"","sources":["../../../src/lib/testing/agent-tester.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { testAgent, testAgentA2A, testAgentClient, createTestAgent, TEST_AGENT_TOKEN, TEST_AGENT_MCP_CONFIG, TEST_AGENT_A2A_CONFIG, testAgentNoAuth, testAgentNoAuthA2A, TEST_AGENT_NO_AUTH_MCP_CONFIG, TEST_AGENT_NO_AUTH_A2A_CONFIG, creativeAgent, } from './test-helpers';
|
|
2
|
-
export { testAgent as runAgentTests, formatTestResults, formatTestResultsJSON, formatTestResultsSummary, setAgentTesterLogger, getLogger, createTestClient, runStep, testHealthCheck, testDiscovery, testCreateMediaBuy, testFullSalesFlow, testCreativeSync, testCreativeInline, testCreativeFlow, testSignalsFlow, testErrorHandling, testValidation, testPricingEdgeCases, testTemporalValidation, testBehaviorAnalysis, testResponseConsistency, type TestScenario, type TestOptions, type TestResult, type TestStepResult, type AgentProfile, type TaskResult, type Logger, } from './agent-tester';
|
|
2
|
+
export { testAgent as runAgentTests, formatTestResults, formatTestResultsJSON, formatTestResultsSummary, setAgentTesterLogger, getLogger, createTestClient, runStep, testHealthCheck, testDiscovery, testCreateMediaBuy, testFullSalesFlow, testCreativeSync, testCreativeInline, testCreativeFlow, testSignalsFlow, testErrorHandling, testValidation, testPricingEdgeCases, testTemporalValidation, testBehaviorAnalysis, testResponseConsistency, testGovernancePropertyLists, testGovernanceContentStandards, testSISessionLifecycle, testSIAvailability, testCapabilityDiscovery, hasGovernanceTools, hasSITools, likelySupportsV3, type TestScenario, type TestOptions, type TestResult, type TestStepResult, type AgentProfile, type TaskResult, type Logger, } from './agent-tester';
|
|
3
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/testing/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,SAAS,EACT,YAAY,EACZ,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EAErB,eAAe,EACf,kBAAkB,EAClB,6BAA6B,EAC7B,6BAA6B,EAE7B,aAAa,GACd,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,SAAS,IAAI,aAAa,EAC1B,iBAAiB,EACjB,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,EACpB,SAAS,EACT,gBAAgB,EAChB,OAAO,EAEP,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,EACpB,uBAAuB,EAEvB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,MAAM,GACZ,MAAM,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/testing/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,SAAS,EACT,YAAY,EACZ,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EAErB,eAAe,EACf,kBAAkB,EAClB,6BAA6B,EAC7B,6BAA6B,EAE7B,aAAa,GACd,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EACL,SAAS,IAAI,aAAa,EAC1B,iBAAiB,EACjB,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,EACpB,SAAS,EACT,gBAAgB,EAChB,OAAO,EAEP,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,EACpB,uBAAuB,EAEvB,2BAA2B,EAC3B,8BAA8B,EAC9B,sBAAsB,EACtB,kBAAkB,EAClB,uBAAuB,EAEvB,kBAAkB,EAClB,UAAU,EACV,gBAAgB,EAEhB,KAAK,YAAY,EACjB,KAAK,WAAW,EAChB,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,MAAM,GACZ,MAAM,gBAAgB,CAAC"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// Test helpers for AdCP client library
|
|
3
3
|
// Provides pre-configured test agents for examples and quick testing
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.testResponseConsistency = exports.testBehaviorAnalysis = exports.testTemporalValidation = exports.testPricingEdgeCases = exports.testValidation = exports.testErrorHandling = exports.testSignalsFlow = exports.testCreativeFlow = exports.testCreativeInline = exports.testCreativeSync = exports.testFullSalesFlow = exports.testCreateMediaBuy = exports.testDiscovery = exports.testHealthCheck = exports.runStep = exports.createTestClient = exports.getLogger = exports.setAgentTesterLogger = exports.formatTestResultsSummary = exports.formatTestResultsJSON = exports.formatTestResults = exports.runAgentTests = exports.creativeAgent = exports.TEST_AGENT_NO_AUTH_A2A_CONFIG = exports.TEST_AGENT_NO_AUTH_MCP_CONFIG = exports.testAgentNoAuthA2A = exports.testAgentNoAuth = exports.TEST_AGENT_A2A_CONFIG = exports.TEST_AGENT_MCP_CONFIG = exports.TEST_AGENT_TOKEN = exports.createTestAgent = exports.testAgentClient = exports.testAgentA2A = exports.testAgent = void 0;
|
|
5
|
+
exports.likelySupportsV3 = exports.hasSITools = exports.hasGovernanceTools = exports.testCapabilityDiscovery = exports.testSIAvailability = exports.testSISessionLifecycle = exports.testGovernanceContentStandards = exports.testGovernancePropertyLists = exports.testResponseConsistency = exports.testBehaviorAnalysis = exports.testTemporalValidation = exports.testPricingEdgeCases = exports.testValidation = exports.testErrorHandling = exports.testSignalsFlow = exports.testCreativeFlow = exports.testCreativeInline = exports.testCreativeSync = exports.testFullSalesFlow = exports.testCreateMediaBuy = exports.testDiscovery = exports.testHealthCheck = exports.runStep = exports.createTestClient = exports.getLogger = exports.setAgentTesterLogger = exports.formatTestResultsSummary = exports.formatTestResultsJSON = exports.formatTestResults = exports.runAgentTests = exports.creativeAgent = exports.TEST_AGENT_NO_AUTH_A2A_CONFIG = exports.TEST_AGENT_NO_AUTH_MCP_CONFIG = exports.testAgentNoAuthA2A = exports.testAgentNoAuth = exports.TEST_AGENT_A2A_CONFIG = exports.TEST_AGENT_MCP_CONFIG = exports.TEST_AGENT_TOKEN = exports.createTestAgent = exports.testAgentClient = exports.testAgentA2A = exports.testAgent = void 0;
|
|
6
6
|
var test_helpers_1 = require("./test-helpers");
|
|
7
7
|
// Test agents (with auth)
|
|
8
8
|
Object.defineProperty(exports, "testAgent", { enumerable: true, get: function () { return test_helpers_1.testAgent; } });
|
|
@@ -44,4 +44,14 @@ Object.defineProperty(exports, "testPricingEdgeCases", { enumerable: true, get:
|
|
|
44
44
|
Object.defineProperty(exports, "testTemporalValidation", { enumerable: true, get: function () { return agent_tester_1.testTemporalValidation; } });
|
|
45
45
|
Object.defineProperty(exports, "testBehaviorAnalysis", { enumerable: true, get: function () { return agent_tester_1.testBehaviorAnalysis; } });
|
|
46
46
|
Object.defineProperty(exports, "testResponseConsistency", { enumerable: true, get: function () { return agent_tester_1.testResponseConsistency; } });
|
|
47
|
+
// v3 scenarios
|
|
48
|
+
Object.defineProperty(exports, "testGovernancePropertyLists", { enumerable: true, get: function () { return agent_tester_1.testGovernancePropertyLists; } });
|
|
49
|
+
Object.defineProperty(exports, "testGovernanceContentStandards", { enumerable: true, get: function () { return agent_tester_1.testGovernanceContentStandards; } });
|
|
50
|
+
Object.defineProperty(exports, "testSISessionLifecycle", { enumerable: true, get: function () { return agent_tester_1.testSISessionLifecycle; } });
|
|
51
|
+
Object.defineProperty(exports, "testSIAvailability", { enumerable: true, get: function () { return agent_tester_1.testSIAvailability; } });
|
|
52
|
+
Object.defineProperty(exports, "testCapabilityDiscovery", { enumerable: true, get: function () { return agent_tester_1.testCapabilityDiscovery; } });
|
|
53
|
+
// v3 helpers
|
|
54
|
+
Object.defineProperty(exports, "hasGovernanceTools", { enumerable: true, get: function () { return agent_tester_1.hasGovernanceTools; } });
|
|
55
|
+
Object.defineProperty(exports, "hasSITools", { enumerable: true, get: function () { return agent_tester_1.hasSITools; } });
|
|
56
|
+
Object.defineProperty(exports, "likelySupportsV3", { enumerable: true, get: function () { return agent_tester_1.likelySupportsV3; } });
|
|
47
57
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/testing/index.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,qEAAqE;;;AAErE,+CAgBwB;AAftB,0BAA0B;AAC1B,yGAAA,SAAS,OAAA;AACT,4GAAA,YAAY,OAAA;AACZ,+GAAA,eAAe,OAAA;AACf,+GAAA,eAAe,OAAA;AACf,gHAAA,gBAAgB,OAAA;AAChB,qHAAA,qBAAqB,OAAA;AACrB,qHAAA,qBAAqB,OAAA;AACrB,mEAAmE;AACnE,+GAAA,eAAe,OAAA;AACf,kHAAA,kBAAkB,OAAA;AAClB,6HAAA,6BAA6B,OAAA;AAC7B,6HAAA,6BAA6B,OAAA;AAC7B,qDAAqD;AACrD,6GAAA,aAAa,OAAA;AAGf,8BAA8B;AAC9B,+
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/testing/index.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,qEAAqE;;;AAErE,+CAgBwB;AAftB,0BAA0B;AAC1B,yGAAA,SAAS,OAAA;AACT,4GAAA,YAAY,OAAA;AACZ,+GAAA,eAAe,OAAA;AACf,+GAAA,eAAe,OAAA;AACf,gHAAA,gBAAgB,OAAA;AAChB,qHAAA,qBAAqB,OAAA;AACrB,qHAAA,qBAAqB,OAAA;AACrB,mEAAmE;AACnE,+GAAA,eAAe,OAAA;AACf,kHAAA,kBAAkB,OAAA;AAClB,6HAAA,6BAA6B,OAAA;AAC7B,6HAAA,6BAA6B,OAAA;AAC7B,qDAAqD;AACrD,6GAAA,aAAa,OAAA;AAGf,8BAA8B;AAC9B,+CA0CwB;AAzCtB,6GAAA,SAAS,OAAiB;AAC1B,iHAAA,iBAAiB,OAAA;AACjB,qHAAA,qBAAqB,OAAA;AACrB,wHAAA,wBAAwB,OAAA;AACxB,oHAAA,oBAAoB,OAAA;AACpB,yGAAA,SAAS,OAAA;AACT,gHAAA,gBAAgB,OAAA;AAChB,uGAAA,OAAO,OAAA;AACP,uBAAuB;AACvB,+GAAA,eAAe,OAAA;AACf,6GAAA,aAAa,OAAA;AACb,kHAAA,kBAAkB,OAAA;AAClB,iHAAA,iBAAiB,OAAA;AACjB,gHAAA,gBAAgB,OAAA;AAChB,kHAAA,kBAAkB,OAAA;AAClB,gHAAA,gBAAgB,OAAA;AAChB,+GAAA,eAAe,OAAA;AACf,iHAAA,iBAAiB,OAAA;AACjB,8GAAA,cAAc,OAAA;AACd,oHAAA,oBAAoB,OAAA;AACpB,sHAAA,sBAAsB,OAAA;AACtB,oHAAA,oBAAoB,OAAA;AACpB,uHAAA,uBAAuB,OAAA;AACvB,eAAe;AACf,2HAAA,2BAA2B,OAAA;AAC3B,8HAAA,8BAA8B,OAAA;AAC9B,sHAAA,sBAAsB,OAAA;AACtB,kHAAA,kBAAkB,OAAA;AAClB,uHAAA,uBAAuB,OAAA;AACvB,aAAa;AACb,kHAAA,kBAAkB,OAAA;AAClB,0GAAA,UAAU,OAAA;AACV,gHAAA,gBAAgB,OAAA"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Capability Discovery Testing Scenarios (v3)
|
|
3
|
+
*
|
|
4
|
+
* Tests agent capability discovery including:
|
|
5
|
+
* - get_adcp_capabilities (v3 agents)
|
|
6
|
+
* - Synthetic capability detection (v2 agents)
|
|
7
|
+
* - Protocol/tool cross-validation
|
|
8
|
+
*/
|
|
9
|
+
import type { TestOptions, TestStepResult, AgentProfile } from '../types';
|
|
10
|
+
/**
|
|
11
|
+
* Test: Capability Discovery
|
|
12
|
+
*
|
|
13
|
+
* Flow:
|
|
14
|
+
* 1. Discover agent profile (tools list)
|
|
15
|
+
* 2. If get_adcp_capabilities exists, call it and validate response
|
|
16
|
+
* 3. Cross-check reported protocols against available tools
|
|
17
|
+
* 4. For v2 agents, build synthetic capabilities and note v3 upgrade path
|
|
18
|
+
*/
|
|
19
|
+
export declare function testCapabilityDiscovery(agentUrl: string, options: TestOptions): Promise<{
|
|
20
|
+
steps: TestStepResult[];
|
|
21
|
+
profile?: AgentProfile;
|
|
22
|
+
}>;
|
|
23
|
+
/**
|
|
24
|
+
* Check if agent likely supports v3 capabilities
|
|
25
|
+
*/
|
|
26
|
+
export declare function likelySupportsV3(tools: string[]): boolean;
|
|
27
|
+
//# sourceMappingURL=capabilities.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../../../src/lib/testing/scenarios/capabilities.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAc,MAAM,UAAU,CAAC;AAatF;;;;;;;;GAQG;AACH,wBAAsB,uBAAuB,CAC3C,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,WAAW,GACnB,OAAO,CAAC;IAAE,KAAK,EAAE,cAAc,EAAE,CAAC;IAAC,OAAO,CAAC,EAAE,YAAY,CAAA;CAAE,CAAC,CA8H9D;AA0ID;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAMzD"}
|
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Capability Discovery Testing Scenarios (v3)
|
|
4
|
+
*
|
|
5
|
+
* Tests agent capability discovery including:
|
|
6
|
+
* - get_adcp_capabilities (v3 agents)
|
|
7
|
+
* - Synthetic capability detection (v2 agents)
|
|
8
|
+
* - Protocol/tool cross-validation
|
|
9
|
+
*/
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.testCapabilityDiscovery = testCapabilityDiscovery;
|
|
12
|
+
exports.likelySupportsV3 = likelySupportsV3;
|
|
13
|
+
const client_1 = require("../client");
|
|
14
|
+
const capabilities_1 = require("../../utils/capabilities");
|
|
15
|
+
/**
|
|
16
|
+
* Test: Capability Discovery
|
|
17
|
+
*
|
|
18
|
+
* Flow:
|
|
19
|
+
* 1. Discover agent profile (tools list)
|
|
20
|
+
* 2. If get_adcp_capabilities exists, call it and validate response
|
|
21
|
+
* 3. Cross-check reported protocols against available tools
|
|
22
|
+
* 4. For v2 agents, build synthetic capabilities and note v3 upgrade path
|
|
23
|
+
*/
|
|
24
|
+
async function testCapabilityDiscovery(agentUrl, options) {
|
|
25
|
+
const steps = [];
|
|
26
|
+
const client = (0, client_1.createTestClient)(agentUrl, options.protocol || 'mcp', options);
|
|
27
|
+
// Discover agent profile
|
|
28
|
+
const { profile, step: profileStep } = await (0, client_1.discoverAgentProfile)(client);
|
|
29
|
+
steps.push(profileStep);
|
|
30
|
+
if (!profileStep.passed) {
|
|
31
|
+
return { steps, profile };
|
|
32
|
+
}
|
|
33
|
+
const hasGetCapabilities = profile.tools.includes('get_adcp_capabilities');
|
|
34
|
+
let capabilities;
|
|
35
|
+
if (hasGetCapabilities) {
|
|
36
|
+
// v3 agent: call get_adcp_capabilities
|
|
37
|
+
const { result, step } = await (0, client_1.runStep)('Get AdCP capabilities (v3)', 'get_adcp_capabilities', async () => client.executeTask('get_adcp_capabilities', {}));
|
|
38
|
+
if (result?.success && result?.data) {
|
|
39
|
+
capabilities = (0, capabilities_1.parseCapabilitiesResponse)(result.data);
|
|
40
|
+
profile.adcp_version = capabilities.version;
|
|
41
|
+
profile.supported_protocols = capabilities.protocols;
|
|
42
|
+
profile.supports_governance = capabilities.protocols.includes('governance');
|
|
43
|
+
profile.supports_si = capabilities.protocols.includes('sponsored_intelligence');
|
|
44
|
+
step.details = `v${capabilities.majorVersions.join('/')} agent with ${capabilities.protocols.length} protocol(s)`;
|
|
45
|
+
step.response_preview = JSON.stringify({
|
|
46
|
+
version: capabilities.version,
|
|
47
|
+
major_versions: capabilities.majorVersions,
|
|
48
|
+
protocols: capabilities.protocols,
|
|
49
|
+
features: capabilities.features,
|
|
50
|
+
extensions: capabilities.extensions,
|
|
51
|
+
publisher_domains: capabilities.publisherDomains?.slice(0, 3),
|
|
52
|
+
channels: capabilities.channels,
|
|
53
|
+
}, null, 2);
|
|
54
|
+
steps.push(step);
|
|
55
|
+
// Validate response structure
|
|
56
|
+
const { steps: validationSteps } = validateCapabilitiesResponse(result.data, profile.tools);
|
|
57
|
+
steps.push(...validationSteps);
|
|
58
|
+
}
|
|
59
|
+
else if (result && !result.success) {
|
|
60
|
+
step.passed = false;
|
|
61
|
+
step.error = result.error || 'get_adcp_capabilities failed';
|
|
62
|
+
steps.push(step);
|
|
63
|
+
// Fall back to synthetic capabilities
|
|
64
|
+
const toolInfos = profile.tools.map(name => ({ name }));
|
|
65
|
+
capabilities = (0, capabilities_1.buildSyntheticCapabilities)(toolInfos);
|
|
66
|
+
profile.adcp_version = 'v2';
|
|
67
|
+
profile.supported_protocols = capabilities.protocols;
|
|
68
|
+
steps.push({
|
|
69
|
+
step: 'Fallback to synthetic capabilities',
|
|
70
|
+
passed: true,
|
|
71
|
+
duration_ms: 0,
|
|
72
|
+
details: 'get_adcp_capabilities failed, using tool-based detection',
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
// No result at all
|
|
77
|
+
const toolInfos = profile.tools.map(name => ({ name }));
|
|
78
|
+
capabilities = (0, capabilities_1.buildSyntheticCapabilities)(toolInfos);
|
|
79
|
+
profile.adcp_version = 'v2';
|
|
80
|
+
profile.supported_protocols = capabilities.protocols;
|
|
81
|
+
step.passed = false;
|
|
82
|
+
step.error = 'get_adcp_capabilities returned no data';
|
|
83
|
+
steps.push(step);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
// v2 agent: build synthetic capabilities
|
|
88
|
+
const toolInfos = profile.tools.map(name => ({ name }));
|
|
89
|
+
capabilities = (0, capabilities_1.buildSyntheticCapabilities)(toolInfos);
|
|
90
|
+
profile.adcp_version = 'v2';
|
|
91
|
+
profile.supported_protocols = capabilities.protocols;
|
|
92
|
+
profile.supports_governance = capabilities.protocols.includes('governance');
|
|
93
|
+
profile.supports_si = capabilities.protocols.includes('sponsored_intelligence');
|
|
94
|
+
steps.push({
|
|
95
|
+
step: 'Build synthetic capabilities (v2)',
|
|
96
|
+
task: undefined,
|
|
97
|
+
passed: true,
|
|
98
|
+
duration_ms: 0,
|
|
99
|
+
details: `Agent does not support get_adcp_capabilities. Detected ${capabilities.protocols.length} protocol(s) from tools.`,
|
|
100
|
+
response_preview: JSON.stringify({
|
|
101
|
+
version: capabilities.version,
|
|
102
|
+
protocols: capabilities.protocols,
|
|
103
|
+
features: capabilities.features,
|
|
104
|
+
_synthetic: true,
|
|
105
|
+
}, null, 2),
|
|
106
|
+
});
|
|
107
|
+
// Check for v3 upgrade potential
|
|
108
|
+
const v3ToolsPresent = [...capabilities_1.GOVERNANCE_TOOLS, ...capabilities_1.SPONSORED_INTELLIGENCE_TOOLS].filter(t => profile.tools.includes(t));
|
|
109
|
+
if (v3ToolsPresent.length > 0) {
|
|
110
|
+
steps.push({
|
|
111
|
+
step: 'v3 upgrade potential detected',
|
|
112
|
+
passed: true,
|
|
113
|
+
duration_ms: 0,
|
|
114
|
+
details: `Agent has ${v3ToolsPresent.length} v3 tool(s) but missing get_adcp_capabilities`,
|
|
115
|
+
warnings: [
|
|
116
|
+
`Consider implementing get_adcp_capabilities for better protocol discovery. v3 tools detected: ${v3ToolsPresent.join(', ')}`,
|
|
117
|
+
],
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
// Cross-validate: check that reported protocols match available tools
|
|
122
|
+
const { steps: crossValidationSteps } = crossValidateProtocolsAndTools(capabilities, profile.tools);
|
|
123
|
+
steps.push(...crossValidationSteps);
|
|
124
|
+
return { steps, profile };
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* Validate the structure and content of a get_adcp_capabilities response
|
|
128
|
+
*/
|
|
129
|
+
function validateCapabilitiesResponse(response, tools) {
|
|
130
|
+
const steps = [];
|
|
131
|
+
// Check for required fields
|
|
132
|
+
const hasAdcp = response.adcp && Array.isArray(response.adcp.major_versions);
|
|
133
|
+
const hasProtocols = Array.isArray(response.supported_protocols);
|
|
134
|
+
steps.push({
|
|
135
|
+
step: 'Validate capabilities structure',
|
|
136
|
+
passed: hasAdcp && hasProtocols,
|
|
137
|
+
duration_ms: 0,
|
|
138
|
+
details: hasAdcp && hasProtocols
|
|
139
|
+
? 'Response has required fields (adcp.major_versions, supported_protocols)'
|
|
140
|
+
: `Missing fields: ${!hasAdcp ? 'adcp.major_versions' : ''} ${!hasProtocols ? 'supported_protocols' : ''}`,
|
|
141
|
+
});
|
|
142
|
+
// Check for v3 version
|
|
143
|
+
if (hasAdcp) {
|
|
144
|
+
const majorVersions = response.adcp.major_versions;
|
|
145
|
+
const hasV3 = majorVersions.includes(3);
|
|
146
|
+
steps.push({
|
|
147
|
+
step: 'Check v3 support',
|
|
148
|
+
passed: true, // Not a failure if v2 only, just informational
|
|
149
|
+
duration_ms: 0,
|
|
150
|
+
details: hasV3
|
|
151
|
+
? `Agent supports v3 (versions: ${majorVersions.join(', ')})`
|
|
152
|
+
: `Agent is v2 only (versions: ${majorVersions.join(', ')})`,
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
// Check media_buy features if media_buy protocol is supported
|
|
156
|
+
if (hasProtocols && response.supported_protocols.includes('media_buy')) {
|
|
157
|
+
const hasMediaBuyFeatures = response.media_buy?.features;
|
|
158
|
+
steps.push({
|
|
159
|
+
step: 'Validate media_buy features',
|
|
160
|
+
passed: true, // Features are optional
|
|
161
|
+
duration_ms: 0,
|
|
162
|
+
details: hasMediaBuyFeatures
|
|
163
|
+
? `Features: inline_creative=${response.media_buy.features.inline_creative_management}, property_list=${response.media_buy.features.property_list_filtering}, content_standards=${response.media_buy.features.content_standards}`
|
|
164
|
+
: 'No media_buy.features declared (all features assumed false)',
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
// Check extensions
|
|
168
|
+
const extensions = response.extensions_supported || [];
|
|
169
|
+
if (extensions.length > 0) {
|
|
170
|
+
steps.push({
|
|
171
|
+
step: 'Check extensions',
|
|
172
|
+
passed: true,
|
|
173
|
+
duration_ms: 0,
|
|
174
|
+
details: `Supported extensions: ${extensions.join(', ')}`,
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
return { steps };
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Cross-validate that reported protocols match available tools
|
|
181
|
+
*/
|
|
182
|
+
function crossValidateProtocolsAndTools(capabilities, tools) {
|
|
183
|
+
const steps = [];
|
|
184
|
+
const issues = [];
|
|
185
|
+
// Check each reported protocol has at least one corresponding tool
|
|
186
|
+
for (const protocol of capabilities.protocols) {
|
|
187
|
+
let protocolTools;
|
|
188
|
+
switch (protocol) {
|
|
189
|
+
case 'media_buy':
|
|
190
|
+
protocolTools = capabilities_1.MEDIA_BUY_TOOLS;
|
|
191
|
+
break;
|
|
192
|
+
case 'signals':
|
|
193
|
+
protocolTools = capabilities_1.SIGNALS_TOOLS;
|
|
194
|
+
break;
|
|
195
|
+
case 'governance':
|
|
196
|
+
protocolTools = capabilities_1.GOVERNANCE_TOOLS;
|
|
197
|
+
break;
|
|
198
|
+
case 'creative':
|
|
199
|
+
protocolTools = capabilities_1.CREATIVE_TOOLS;
|
|
200
|
+
break;
|
|
201
|
+
case 'sponsored_intelligence':
|
|
202
|
+
protocolTools = capabilities_1.SPONSORED_INTELLIGENCE_TOOLS;
|
|
203
|
+
break;
|
|
204
|
+
default:
|
|
205
|
+
protocolTools = [];
|
|
206
|
+
}
|
|
207
|
+
const matchingTools = protocolTools.filter(t => tools.includes(t));
|
|
208
|
+
if (matchingTools.length === 0 && protocolTools.length > 0) {
|
|
209
|
+
issues.push(`Protocol '${protocol}' reported but no matching tools found`);
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
// Check for tools that suggest protocols not reported
|
|
213
|
+
const unreportedProtocols = [];
|
|
214
|
+
if (!capabilities.protocols.includes('media_buy') && capabilities_1.MEDIA_BUY_TOOLS.some(t => tools.includes(t))) {
|
|
215
|
+
unreportedProtocols.push('media_buy');
|
|
216
|
+
}
|
|
217
|
+
if (!capabilities.protocols.includes('signals') && capabilities_1.SIGNALS_TOOLS.some(t => tools.includes(t))) {
|
|
218
|
+
unreportedProtocols.push('signals');
|
|
219
|
+
}
|
|
220
|
+
if (!capabilities.protocols.includes('governance') && capabilities_1.GOVERNANCE_TOOLS.some(t => tools.includes(t))) {
|
|
221
|
+
unreportedProtocols.push('governance');
|
|
222
|
+
}
|
|
223
|
+
if (!capabilities.protocols.includes('creative') && capabilities_1.CREATIVE_TOOLS.some(t => tools.includes(t))) {
|
|
224
|
+
unreportedProtocols.push('creative');
|
|
225
|
+
}
|
|
226
|
+
if (!capabilities.protocols.includes('sponsored_intelligence') &&
|
|
227
|
+
capabilities_1.SPONSORED_INTELLIGENCE_TOOLS.some(t => tools.includes(t))) {
|
|
228
|
+
unreportedProtocols.push('sponsored_intelligence');
|
|
229
|
+
}
|
|
230
|
+
if (unreportedProtocols.length > 0) {
|
|
231
|
+
issues.push(`Tools suggest unreported protocols: ${unreportedProtocols.join(', ')}`);
|
|
232
|
+
}
|
|
233
|
+
steps.push({
|
|
234
|
+
step: 'Cross-validate protocols and tools',
|
|
235
|
+
passed: issues.length === 0,
|
|
236
|
+
duration_ms: 0,
|
|
237
|
+
details: issues.length === 0 ? 'Reported protocols match available tools' : issues.join('; '),
|
|
238
|
+
warnings: issues.length > 0 ? issues : undefined,
|
|
239
|
+
});
|
|
240
|
+
return { steps };
|
|
241
|
+
}
|
|
242
|
+
/**
|
|
243
|
+
* Check if agent likely supports v3 capabilities
|
|
244
|
+
*/
|
|
245
|
+
function likelySupportsV3(tools) {
|
|
246
|
+
return (tools.includes('get_adcp_capabilities') ||
|
|
247
|
+
capabilities_1.GOVERNANCE_TOOLS.some(t => tools.includes(t)) ||
|
|
248
|
+
capabilities_1.SPONSORED_INTELLIGENCE_TOOLS.some(t => tools.includes(t)));
|
|
249
|
+
}
|
|
250
|
+
//# sourceMappingURL=capabilities.js.map
|