@adcp/sdk 9.0.0-beta.27 → 9.0.0-beta.28
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/dist/lib/core/AgentClient.d.ts.map +1 -1
- package/dist/lib/core/SingleAgentClient.d.ts +9 -0
- package/dist/lib/core/SingleAgentClient.d.ts.map +1 -1
- package/dist/lib/core/SingleAgentClient.js +48 -0
- package/dist/lib/core/SingleAgentClient.js.map +1 -1
- package/dist/lib/errors/index.d.ts +43 -3
- package/dist/lib/errors/index.d.ts.map +1 -1
- package/dist/lib/errors/index.js +49 -4
- package/dist/lib/errors/index.js.map +1 -1
- package/dist/lib/index.d.ts +3 -2
- package/dist/lib/index.d.ts.map +1 -1
- package/dist/lib/index.js +31 -23
- package/dist/lib/index.js.map +1 -1
- package/dist/lib/schemas-data/v2.5/_provenance.json +1 -1
- package/dist/lib/testing/compliance/comply.d.ts.map +1 -1
- package/dist/lib/testing/compliance/comply.js +1 -0
- package/dist/lib/testing/compliance/comply.js.map +1 -1
- package/dist/lib/testing/compliance/types.d.ts +1 -0
- package/dist/lib/testing/compliance/types.d.ts.map +1 -1
- package/dist/lib/testing/storyboard/compliance.d.ts.map +1 -1
- package/dist/lib/testing/storyboard/compliance.js +25 -8
- package/dist/lib/testing/storyboard/compliance.js.map +1 -1
- package/dist/lib/testing/storyboard/default-invariants.js +12 -7
- package/dist/lib/testing/storyboard/default-invariants.js.map +1 -1
- package/dist/lib/testing/storyboard/probes.d.ts +4 -12
- package/dist/lib/testing/storyboard/probes.d.ts.map +1 -1
- package/dist/lib/testing/storyboard/probes.js +216 -153
- package/dist/lib/testing/storyboard/probes.js.map +1 -1
- package/dist/lib/testing/storyboard/runner.d.ts.map +1 -1
- package/dist/lib/testing/storyboard/runner.js +81 -5
- package/dist/lib/testing/storyboard/runner.js.map +1 -1
- package/dist/lib/testing/storyboard/types.d.ts +4 -0
- 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/validations.d.ts.map +1 -1
- package/dist/lib/testing/storyboard/validations.js +11 -5
- package/dist/lib/testing/storyboard/validations.js.map +1 -1
- package/dist/lib/utils/capabilities.d.ts +2 -0
- package/dist/lib/utils/capabilities.d.ts.map +1 -1
- package/dist/lib/utils/capabilities.js +24 -3
- package/dist/lib/utils/capabilities.js.map +1 -1
- package/dist/lib/utils/index.d.ts +1 -1
- package/dist/lib/utils/index.d.ts.map +1 -1
- package/dist/lib/utils/index.js.map +1 -1
- package/dist/lib/utils/preview-utils.d.ts +36 -1
- package/dist/lib/utils/preview-utils.d.ts.map +1 -1
- package/dist/lib/utils/preview-utils.js +53 -16
- package/dist/lib/utils/preview-utils.js.map +1 -1
- package/dist/lib/version.d.ts +3 -3
- package/dist/lib/version.js +3 -3
- package/docs/guides/BUILD-AN-AGENT.md +1 -1
- package/docs/guides/PREVIEW-ASSET-DURABILITY.md +157 -0
- package/package.json +2 -1
- package/skills/build-creative-agent/SKILL.md +2 -0
|
@@ -22,6 +22,7 @@ exports.rawA2aProbe = rawA2aProbe;
|
|
|
22
22
|
* prior steps that carried `contributes_to`.
|
|
23
23
|
*/
|
|
24
24
|
const crypto_1 = require("crypto");
|
|
25
|
+
const types_js_1 = require("@modelcontextprotocol/sdk/types.js");
|
|
25
26
|
const net_1 = require("../../net");
|
|
26
27
|
Object.defineProperty(exports, "SsrfRefusedError", { enumerable: true, get: function () { return net_1.SsrfRefusedError; } });
|
|
27
28
|
// Timeout + body-cap defaults come from `ssrfSafeFetch` (10 s, 64 KiB).
|
|
@@ -160,183 +161,245 @@ function base64url(buf) {
|
|
|
160
161
|
// Raw-MCP probe (auth-override dispatch)
|
|
161
162
|
// ---------------------------------------------------------------------------
|
|
162
163
|
let probeRequestId = 0;
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
* captured.
|
|
168
|
-
*
|
|
169
|
-
* **Known limitation**: this probe skips MCP Streamable HTTP session
|
|
170
|
-
* initialization (`initialize` + `tools/list`). Agents that enforce
|
|
171
|
-
* session-init before `tools/call` will return `-32002 Session not initialized`
|
|
172
|
-
* (or similar). The probe detects that response and reports
|
|
173
|
-
* `error: 'session_not_initialized'` on the synthetic TaskResult so callers
|
|
174
|
-
* don't mistake it for a valid auth rejection. For agents that gate auth at
|
|
175
|
-
* the HTTP/transport layer (the common pattern) the 401 + WWW-Authenticate
|
|
176
|
-
* fires before the session check, which is what this probe is designed to see.
|
|
177
|
-
*
|
|
178
|
-
* **Args are not secret** — must not contain credentials or PII. The server's
|
|
179
|
-
* response body lands in `httpResult.body` and is written to compliance
|
|
180
|
-
* reports. Outbound request body is not persisted.
|
|
181
|
-
*
|
|
182
|
-
* Returns an HttpProbeResult plus a synthetic TaskResult for steps that also
|
|
183
|
-
* want to validate body shape — the structuredContent is unwrapped so
|
|
184
|
-
* `field_present: "context"` resolves naturally.
|
|
185
|
-
*/
|
|
186
|
-
async function rawMcpProbe(options) {
|
|
187
|
-
const { agentUrl, toolName, args, headers = {}, allowPrivateIp = false } = options;
|
|
188
|
-
const requestId = ++probeRequestId;
|
|
189
|
-
const body = JSON.stringify({
|
|
190
|
-
jsonrpc: '2.0',
|
|
191
|
-
id: requestId,
|
|
192
|
-
method: 'tools/call',
|
|
193
|
-
params: { name: toolName, arguments: args },
|
|
194
|
-
});
|
|
164
|
+
const MCP_SESSION_ID_HEADER = 'mcp-session-id';
|
|
165
|
+
const MCP_PROTOCOL_VERSION_HEADER = 'mcp-protocol-version';
|
|
166
|
+
async function postRawMcpJsonRpc(options) {
|
|
167
|
+
const { agentUrl, envelope, headers, allowPrivateIp, sessionId, protocolVersion, responseId, parseBody = true, allowEmptyBody = false, } = options;
|
|
195
168
|
const httpResult = { url: agentUrl, status: 0, headers: {}, body: null };
|
|
196
169
|
try {
|
|
197
|
-
// Advertise both JSON and SSE so Streamable-HTTP MCP servers don't 406.
|
|
198
|
-
// Strict MCP servers (e.g. those built on the official SDK) require the
|
|
199
|
-
// client to accept both — they return SSE-framed responses for tools/call
|
|
200
|
-
// even though the payload is a single JSON-RPC envelope. The probe parses
|
|
201
|
-
// the SSE wire form below; the existing JSON branch is preserved for
|
|
202
|
-
// servers that downgrade to plain JSON when offered both.
|
|
203
170
|
const res = await (0, net_1.ssrfSafeFetch)(agentUrl, {
|
|
204
171
|
method: 'POST',
|
|
205
172
|
headers: {
|
|
206
173
|
'content-type': 'application/json',
|
|
207
174
|
accept: 'application/json, text/event-stream',
|
|
208
|
-
...headers,
|
|
175
|
+
...withoutMcpSessionHeaders(headers),
|
|
176
|
+
...(sessionId ? { [MCP_SESSION_ID_HEADER]: sessionId } : {}),
|
|
177
|
+
...(protocolVersion ? { [MCP_PROTOCOL_VERSION_HEADER]: protocolVersion } : {}),
|
|
209
178
|
},
|
|
210
|
-
body,
|
|
179
|
+
body: JSON.stringify(envelope),
|
|
211
180
|
allowPrivateIp,
|
|
212
181
|
});
|
|
213
182
|
httpResult.status = res.status;
|
|
214
183
|
httpResult.headers = res.headers;
|
|
215
184
|
const text = Buffer.from(res.body.buffer, res.body.byteOffset, res.body.byteLength).toString('utf8');
|
|
216
|
-
|
|
185
|
+
if (!parseBody) {
|
|
186
|
+
httpResult.body = text || null;
|
|
187
|
+
return { httpResult };
|
|
188
|
+
}
|
|
189
|
+
if (allowEmptyBody && text.trim() === '') {
|
|
190
|
+
httpResult.body = null;
|
|
191
|
+
return { httpResult };
|
|
192
|
+
}
|
|
217
193
|
try {
|
|
218
|
-
const
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
// `data:` payloads are JSON-RPC envelopes. The spec lets a server
|
|
222
|
-
// emit zero-or-more server-initiated frames (e.g.
|
|
223
|
-
// `notifications/progress`) before the final tools/call response —
|
|
224
|
-
// so picking the first `data:` line would parse the wrong envelope.
|
|
225
|
-
// Walk every `data:` line, JSON-parse each, and pick the envelope
|
|
226
|
-
// whose `id` matches the request. Fall back to the last parseable
|
|
227
|
-
// envelope when no id matches (defensive — servers SHOULD include
|
|
228
|
-
// `id` on the response per JSON-RPC 2.0).
|
|
229
|
-
const dataLines = text.split(/\r?\n/).filter(l => l.startsWith('data:'));
|
|
230
|
-
if (dataLines.length === 0)
|
|
231
|
-
throw new Error('SSE response with no data event');
|
|
232
|
-
let matched;
|
|
233
|
-
let lastParsed;
|
|
234
|
-
for (const line of dataLines) {
|
|
235
|
-
const payload = line.slice('data:'.length).trim();
|
|
236
|
-
if (!payload)
|
|
237
|
-
continue;
|
|
238
|
-
try {
|
|
239
|
-
const envelope = JSON.parse(payload);
|
|
240
|
-
lastParsed = envelope;
|
|
241
|
-
if (envelope?.id === requestId) {
|
|
242
|
-
matched = envelope;
|
|
243
|
-
break;
|
|
244
|
-
}
|
|
245
|
-
}
|
|
246
|
-
catch {
|
|
247
|
-
// Skip non-JSON data lines (heartbeats, etc.); keep walking.
|
|
248
|
-
}
|
|
249
|
-
}
|
|
250
|
-
parsed = matched ?? lastParsed;
|
|
251
|
-
if (parsed === undefined)
|
|
252
|
-
throw new Error('SSE response had data events but none were parseable JSON');
|
|
253
|
-
}
|
|
254
|
-
else {
|
|
255
|
-
parsed = JSON.parse(text);
|
|
256
|
-
}
|
|
194
|
+
const parsed = parseMcpJsonRpcResponse(text, httpResult.headers['content-type'], responseId);
|
|
195
|
+
httpResult.body = parsed;
|
|
196
|
+
return { httpResult, parsed };
|
|
257
197
|
}
|
|
258
198
|
catch {
|
|
259
199
|
httpResult.body = text;
|
|
260
|
-
|
|
261
|
-
// "Bad Request: Missing session ID" from strict Python-based servers. Detect
|
|
262
|
-
// before falling back to the generic non-JSON message so compliance reports
|
|
263
|
-
// show the session-init diagnostic rather than a bare HTTP 400.
|
|
264
|
-
if (httpResult.status >= 400 && /missing session/i.test(text)) {
|
|
265
|
-
return {
|
|
266
|
-
httpResult,
|
|
267
|
-
taskResult: {
|
|
268
|
-
success: false,
|
|
269
|
-
data: undefined,
|
|
270
|
-
error: `MCP session not initialized (HTTP ${httpResult.status}: ${text.trim()}). rawMcpProbe skips the initialize handshake; strict servers will reject here before auth is evaluated.`,
|
|
271
|
-
_extraction_path: 'error',
|
|
272
|
-
},
|
|
273
|
-
};
|
|
274
|
-
}
|
|
275
|
-
return {
|
|
276
|
-
httpResult,
|
|
277
|
-
taskResult: {
|
|
278
|
-
success: false,
|
|
279
|
-
data: undefined,
|
|
280
|
-
error: `Non-JSON response body (content-type: ${httpResult.headers['content-type'] ?? 'unknown'}).`,
|
|
281
|
-
_extraction_path: 'error',
|
|
282
|
-
},
|
|
283
|
-
};
|
|
284
|
-
}
|
|
285
|
-
httpResult.body = parsed;
|
|
286
|
-
const rpc = parsed;
|
|
287
|
-
// HTTP-level failure trumps the JSON-RPC envelope — a 401/500 with any body
|
|
288
|
-
// shape is still a failure.
|
|
289
|
-
if (httpResult.status >= 400) {
|
|
290
|
-
return {
|
|
291
|
-
httpResult,
|
|
292
|
-
taskResult: {
|
|
293
|
-
success: false,
|
|
294
|
-
data: undefined,
|
|
295
|
-
error: rpc.error?.message ?? `HTTP ${httpResult.status}`,
|
|
296
|
-
_extraction_path: 'error',
|
|
297
|
-
},
|
|
298
|
-
};
|
|
299
|
-
}
|
|
300
|
-
if (rpc.error) {
|
|
301
|
-
// MCP Streamable HTTP session-init errors — agents that require
|
|
302
|
-
// `initialize` before `tools/call`. Distinct from auth failures so
|
|
303
|
-
// downstream compliance reporting doesn't misdiagnose.
|
|
304
|
-
const code = rpc.error.code;
|
|
305
|
-
const isSessionInit = code === -32002 ||
|
|
306
|
-
(typeof rpc.error.message === 'string' && /session.*(?:not.*)?initialized/i.test(rpc.error.message));
|
|
307
|
-
return {
|
|
308
|
-
httpResult,
|
|
309
|
-
taskResult: {
|
|
310
|
-
success: false,
|
|
311
|
-
data: undefined,
|
|
312
|
-
error: isSessionInit
|
|
313
|
-
? `MCP session not initialized (${code}: ${rpc.error.message ?? 'no message'}). rawMcpProbe skips the initialize handshake; strict servers will reject here before auth is evaluated.`
|
|
314
|
-
: (rpc.error.message ?? `JSON-RPC error ${code}`),
|
|
315
|
-
_extraction_path: 'error',
|
|
316
|
-
},
|
|
317
|
-
};
|
|
200
|
+
return { httpResult, parseError: true };
|
|
318
201
|
}
|
|
319
|
-
// Record which branch produced the data — rawMcpProbe reads the JSON-RPC
|
|
320
|
-
// envelope directly, so the provenance is knowable here (unlike the SDK
|
|
321
|
-
// path where we have to plumb it through the unwrapper).
|
|
322
|
-
const structured = rpc.result?.structuredContent;
|
|
323
|
-
const hasStructured = structured !== undefined && structured !== null;
|
|
324
|
-
const data = hasStructured ? structured : rpc.result?.content;
|
|
325
|
-
const isError = !!rpc.result?.isError;
|
|
326
|
-
const extractionPath = isError
|
|
327
|
-
? 'error'
|
|
328
|
-
: hasStructured
|
|
329
|
-
? 'structured_content'
|
|
330
|
-
: data !== undefined && data !== null
|
|
331
|
-
? 'text_fallback'
|
|
332
|
-
: 'none';
|
|
333
|
-
return { httpResult, taskResult: { success: !isError, data, _extraction_path: extractionPath } };
|
|
334
202
|
}
|
|
335
203
|
catch (err) {
|
|
336
204
|
httpResult.error = err instanceof Error ? err.message : String(err);
|
|
337
205
|
return { httpResult };
|
|
338
206
|
}
|
|
339
207
|
}
|
|
208
|
+
function withoutMcpSessionHeaders(headers) {
|
|
209
|
+
const cleaned = {};
|
|
210
|
+
for (const [key, value] of Object.entries(headers)) {
|
|
211
|
+
const normalized = key.toLowerCase();
|
|
212
|
+
if (normalized === MCP_SESSION_ID_HEADER || normalized === MCP_PROTOCOL_VERSION_HEADER)
|
|
213
|
+
continue;
|
|
214
|
+
cleaned[key] = value;
|
|
215
|
+
}
|
|
216
|
+
return cleaned;
|
|
217
|
+
}
|
|
218
|
+
function parseMcpJsonRpcResponse(text, contentType, responseId) {
|
|
219
|
+
if (contentType?.toLowerCase().includes('text/event-stream')) {
|
|
220
|
+
// Streamable-HTTP MCP: the response is one or more SSE events whose
|
|
221
|
+
// `data:` payloads are JSON-RPC envelopes. The spec lets a server emit
|
|
222
|
+
// notifications before the final response, so choose the matching id.
|
|
223
|
+
const dataLines = text.split(/\r?\n/).filter(l => l.startsWith('data:'));
|
|
224
|
+
if (dataLines.length === 0)
|
|
225
|
+
throw new Error('SSE response with no data event');
|
|
226
|
+
let matched;
|
|
227
|
+
let lastParsed;
|
|
228
|
+
for (const line of dataLines) {
|
|
229
|
+
const payload = line.slice('data:'.length).trim();
|
|
230
|
+
if (!payload)
|
|
231
|
+
continue;
|
|
232
|
+
try {
|
|
233
|
+
const envelope = JSON.parse(payload);
|
|
234
|
+
lastParsed = envelope;
|
|
235
|
+
if (responseId !== undefined && envelope?.id === responseId) {
|
|
236
|
+
matched = envelope;
|
|
237
|
+
break;
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
catch {
|
|
241
|
+
// Skip non-JSON data lines (heartbeats, etc.); keep walking.
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
const parsed = matched ?? lastParsed;
|
|
245
|
+
if (parsed === undefined)
|
|
246
|
+
throw new Error('SSE response had data events but none were parseable JSON');
|
|
247
|
+
return parsed;
|
|
248
|
+
}
|
|
249
|
+
return JSON.parse(text);
|
|
250
|
+
}
|
|
251
|
+
function taskResultFromRpc(httpResult, rpc) {
|
|
252
|
+
if (httpResult.status >= 400) {
|
|
253
|
+
return {
|
|
254
|
+
success: false,
|
|
255
|
+
data: undefined,
|
|
256
|
+
error: rpc.error?.message ?? `HTTP ${httpResult.status}`,
|
|
257
|
+
_extraction_path: 'error',
|
|
258
|
+
};
|
|
259
|
+
}
|
|
260
|
+
if (rpc.error) {
|
|
261
|
+
const code = rpc.error.code;
|
|
262
|
+
return {
|
|
263
|
+
success: false,
|
|
264
|
+
data: undefined,
|
|
265
|
+
error: code !== undefined
|
|
266
|
+
? `JSON-RPC error ${code}: ${rpc.error.message ?? 'no message'}`
|
|
267
|
+
: (rpc.error.message ?? 'JSON-RPC error (no code)'),
|
|
268
|
+
_extraction_path: 'error',
|
|
269
|
+
};
|
|
270
|
+
}
|
|
271
|
+
const structured = rpc.result?.structuredContent;
|
|
272
|
+
const hasStructured = structured !== undefined && structured !== null;
|
|
273
|
+
const data = hasStructured ? structured : rpc.result?.content;
|
|
274
|
+
const isError = !!rpc.result?.isError;
|
|
275
|
+
const extractionPath = isError
|
|
276
|
+
? 'error'
|
|
277
|
+
: hasStructured
|
|
278
|
+
? 'structured_content'
|
|
279
|
+
: data !== undefined && data !== null
|
|
280
|
+
? 'text_fallback'
|
|
281
|
+
: 'none';
|
|
282
|
+
return { success: !isError, data, _extraction_path: extractionPath };
|
|
283
|
+
}
|
|
284
|
+
function failedTaskResult(message) {
|
|
285
|
+
return {
|
|
286
|
+
success: false,
|
|
287
|
+
data: undefined,
|
|
288
|
+
error: message,
|
|
289
|
+
_extraction_path: 'error',
|
|
290
|
+
};
|
|
291
|
+
}
|
|
292
|
+
function taskResultFromPostFailure(posted) {
|
|
293
|
+
if (posted.parseError) {
|
|
294
|
+
return failedTaskResult(`Non-JSON response body (content-type: ${posted.httpResult.headers['content-type'] ?? 'unknown'}).`);
|
|
295
|
+
}
|
|
296
|
+
if (posted.parsed)
|
|
297
|
+
return taskResultFromRpc(posted.httpResult, posted.parsed);
|
|
298
|
+
return failedTaskResult(posted.httpResult.error ?? `HTTP ${posted.httpResult.status}`);
|
|
299
|
+
}
|
|
300
|
+
/**
|
|
301
|
+
* POST a JSON-RPC `tools/call` request to the MCP endpoint with caller-provided
|
|
302
|
+
* headers. The probe first performs the Streamable HTTP initialize handshake,
|
|
303
|
+
* including `notifications/initialized`, so auth probes hit the same session
|
|
304
|
+
* boundary as normal MCP clients while still exposing raw HTTP status and
|
|
305
|
+
* `WWW-Authenticate` headers for security storyboards.
|
|
306
|
+
*
|
|
307
|
+
* **Args are not secret** — must not contain credentials or PII. The server's
|
|
308
|
+
* response body lands in `httpResult.body` and is written to compliance
|
|
309
|
+
* reports. Outbound request body is not persisted.
|
|
310
|
+
*
|
|
311
|
+
* Returns an HttpProbeResult plus a synthetic TaskResult for steps that also
|
|
312
|
+
* want to validate body shape — the structuredContent is unwrapped so
|
|
313
|
+
* `field_present: "context"` resolves naturally.
|
|
314
|
+
*/
|
|
315
|
+
async function rawMcpProbe(options) {
|
|
316
|
+
const { agentUrl, toolName, args, headers = {}, allowPrivateIp = false } = options;
|
|
317
|
+
const initializeId = ++probeRequestId;
|
|
318
|
+
const initialize = await postRawMcpJsonRpc({
|
|
319
|
+
agentUrl,
|
|
320
|
+
envelope: {
|
|
321
|
+
jsonrpc: '2.0',
|
|
322
|
+
id: initializeId,
|
|
323
|
+
method: 'initialize',
|
|
324
|
+
params: {
|
|
325
|
+
protocolVersion: types_js_1.LATEST_PROTOCOL_VERSION,
|
|
326
|
+
capabilities: {},
|
|
327
|
+
clientInfo: { name: 'AdCP Storyboard Raw MCP Probe', version: '1.0.0' },
|
|
328
|
+
},
|
|
329
|
+
},
|
|
330
|
+
headers,
|
|
331
|
+
allowPrivateIp,
|
|
332
|
+
responseId: initializeId,
|
|
333
|
+
});
|
|
334
|
+
if (initialize.httpResult.error ||
|
|
335
|
+
initialize.httpResult.status >= 400 ||
|
|
336
|
+
!initialize.parsed ||
|
|
337
|
+
initialize.parsed.error) {
|
|
338
|
+
return {
|
|
339
|
+
httpResult: initialize.httpResult,
|
|
340
|
+
taskResult: taskResultFromPostFailure(initialize),
|
|
341
|
+
};
|
|
342
|
+
}
|
|
343
|
+
const negotiatedProtocolVersion = initialize.parsed.result?.protocolVersion;
|
|
344
|
+
if (typeof negotiatedProtocolVersion !== 'string' ||
|
|
345
|
+
!types_js_1.SUPPORTED_PROTOCOL_VERSIONS.includes(negotiatedProtocolVersion)) {
|
|
346
|
+
return {
|
|
347
|
+
httpResult: initialize.httpResult,
|
|
348
|
+
taskResult: failedTaskResult(negotiatedProtocolVersion
|
|
349
|
+
? `Server's protocol version is not supported: ${negotiatedProtocolVersion}`
|
|
350
|
+
: 'Server sent invalid initialize result: missing protocolVersion'),
|
|
351
|
+
};
|
|
352
|
+
}
|
|
353
|
+
const sessionId = initialize.httpResult.headers[MCP_SESSION_ID_HEADER];
|
|
354
|
+
const initialized = await postRawMcpJsonRpc({
|
|
355
|
+
agentUrl,
|
|
356
|
+
envelope: {
|
|
357
|
+
jsonrpc: '2.0',
|
|
358
|
+
method: 'notifications/initialized',
|
|
359
|
+
params: {},
|
|
360
|
+
},
|
|
361
|
+
headers,
|
|
362
|
+
allowPrivateIp,
|
|
363
|
+
...(sessionId && { sessionId }),
|
|
364
|
+
protocolVersion: negotiatedProtocolVersion,
|
|
365
|
+
allowEmptyBody: true,
|
|
366
|
+
});
|
|
367
|
+
if (initialized.httpResult.error ||
|
|
368
|
+
initialized.httpResult.status >= 400 ||
|
|
369
|
+
initialized.parseError ||
|
|
370
|
+
initialized.parsed?.error) {
|
|
371
|
+
return {
|
|
372
|
+
httpResult: initialized.httpResult,
|
|
373
|
+
taskResult: taskResultFromPostFailure(initialized),
|
|
374
|
+
};
|
|
375
|
+
}
|
|
376
|
+
const requestId = ++probeRequestId;
|
|
377
|
+
const toolEnvelope = {
|
|
378
|
+
jsonrpc: '2.0',
|
|
379
|
+
id: requestId,
|
|
380
|
+
method: 'tools/call',
|
|
381
|
+
params: { name: toolName, arguments: args },
|
|
382
|
+
};
|
|
383
|
+
const posted = await postRawMcpJsonRpc({
|
|
384
|
+
agentUrl,
|
|
385
|
+
envelope: toolEnvelope,
|
|
386
|
+
headers,
|
|
387
|
+
allowPrivateIp,
|
|
388
|
+
...(sessionId && { sessionId }),
|
|
389
|
+
protocolVersion: negotiatedProtocolVersion,
|
|
390
|
+
responseId: requestId,
|
|
391
|
+
});
|
|
392
|
+
const { httpResult, parsed } = posted;
|
|
393
|
+
if (httpResult.error)
|
|
394
|
+
return { httpResult, taskResult: taskResultFromPostFailure(posted) };
|
|
395
|
+
if (!parsed) {
|
|
396
|
+
return {
|
|
397
|
+
httpResult,
|
|
398
|
+
taskResult: taskResultFromPostFailure(posted),
|
|
399
|
+
};
|
|
400
|
+
}
|
|
401
|
+
return { httpResult, taskResult: taskResultFromRpc(httpResult, parsed) };
|
|
402
|
+
}
|
|
340
403
|
// ---------------------------------------------------------------------------
|
|
341
404
|
// Raw-A2A probe (transport-layer diagnostics for A2A agents)
|
|
342
405
|
// ---------------------------------------------------------------------------
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"probes.js","sourceRoot":"","sources":["../../../../src/lib/testing/storyboard/probes.ts"],"names":[],"mappings":";;;AAmDA,wEAOC;AAYD,oEA2BC;AA+BD,gCAuBC;AAUD,kEAEC;AASD,4DAOC;AAmCD,kCAgKC;AAuCD,kCA4FC;AAzfD;;;;;;;;;;;;GAYG;AACH,mCAAqC;AACrC,mCAMmB;AA6eV,iGAhfP,sBAAgB,OAgfO;AAzezB,wEAAwE;AACxE,wEAAwE;AACxE,2CAA2C;AAE3C,sEAAsE;AACzD,QAAA,WAAW,GAAG,IAAI,GAAG,CAAC;IACjC,6BAA6B;IAC7B,4BAA4B;IAC5B,qBAAqB;IACrB,uBAAuB;IACvB,kBAAkB;IAClB,qBAAqB;IACrB,gCAAgC;CACjC,CAAC,CAAC;AAEH,8EAA8E;AAC9E,oCAAoC;AACpC,8EAA8E;AAE9E;;;;;;;GAOG;AACI,KAAK,UAAU,8BAA8B,CAClD,QAAgB,EAChB,UAAwC,EAAE;IAE1C,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC5B,MAAM,WAAW,GAAG,GAAG,CAAC,CAAC,MAAM,wCAAwC,CAAC,CAAC,QAAQ,EAAE,CAAC;IACpF,OAAO,UAAU,CAAC,WAAW,EAAE,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,KAAK,EAAE,CAAC,CAAC;AACtF,CAAC;AAED,8EAA8E;AAC9E,4CAA4C;AAC5C,8EAA8E;AAE9E;;;;;GAKG;AACI,KAAK,UAAU,4BAA4B,CAChD,UAAuC,EACvC,UAAwC,EAAE;IAE1C,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;QACpC,OAAO;YACL,GAAG,EAAE,EAAE;YACP,MAAM,EAAE,CAAC;YACT,OAAO,EAAE,EAAE;YACX,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,6EAA6E;SACrF,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,UAAU,CAAC,IAAkD,CAAC;IAC3E,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAE,IAAK,CAAC,qBAAkC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5G,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,OAAO,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC3D,OAAO;YACL,GAAG,EAAE,EAAE;YACP,MAAM,EAAE,CAAC;YACT,OAAO,EAAE,EAAE;YACX,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,kEAAkE;SAC1E,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC7C,MAAM,WAAW,GAAG,GAAG,MAAM,yCAAyC,CAAC;IACvE,OAAO,UAAU,CAAC,WAAW,EAAE,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,KAAK,EAAE,CAAC,CAAC;AACtF,CAAC;AAaD;;;;;;;;;;;;;;;;;GAiBG;AACI,KAAK,UAAU,UAAU,CAAC,GAAW,EAAE,UAA6B,EAAE;IAC3E,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,IAAA,mBAAa,EAAC,GAAG,EAAE;YACnC,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;YACvC,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,KAAK;YAC/C,GAAG,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC7E,CAAC,CAAC;QACH,OAAO;YACL,GAAG;YACH,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,IAAI,EAAE,IAAA,4BAAsB,EAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;SACpE,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,GAAG;YACH,MAAM,EAAE,CAAC;YACT,OAAO,EAAE,EAAE;YACX,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;SACxD,CAAC;IACJ,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,yCAAyC;AACzC,8EAA8E;AAE9E;;;GAGG;AACH,SAAgB,2BAA2B;IACzC,OAAO,WAAW,IAAA,oBAAW,EAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;AACtD,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,wBAAwB;IACtC,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IACpF,MAAM,OAAO,GAAG,SAAS,CACvB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,WAAW,IAAA,oBAAW,EAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CACxG,CAAC;IACF,MAAM,SAAS,GAAG,SAAS,CAAC,IAAA,oBAAW,EAAC,EAAE,CAAC,CAAC,CAAC;IAC7C,OAAO,GAAG,MAAM,IAAI,OAAO,IAAI,SAAS,EAAE,CAAC;AAC7C,CAAC;AAED,SAAS,SAAS,CAAC,GAAW;IAC5B,OAAO,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AAC3F,CAAC;AAED,8EAA8E;AAC9E,yCAAyC;AACzC,8EAA8E;AAE9E,IAAI,cAAc,GAAG,CAAC,CAAC;AAEvB;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACI,KAAK,UAAU,WAAW,CAAC,OAOjC;IACC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,GAAG,EAAE,EAAE,cAAc,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;IACnF,MAAM,SAAS,GAAG,EAAE,cAAc,CAAC;IACnC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC1B,OAAO,EAAE,KAAK;QACd,EAAE,EAAE,SAAS;QACb,MAAM,EAAE,YAAY;QACpB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE;KAC5C,CAAC,CAAC;IAEH,MAAM,UAAU,GAAoB,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC1F,IAAI,CAAC;QACH,wEAAwE;QACxE,wEAAwE;QACxE,0EAA0E;QAC1E,0EAA0E;QAC1E,qEAAqE;QACrE,0DAA0D;QAC1D,MAAM,GAAG,GAAG,MAAM,IAAA,mBAAa,EAAC,QAAQ,EAAE;YACxC,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,MAAM,EAAE,qCAAqC;gBAC7C,GAAG,OAAO;aACX;YACD,IAAI;YACJ,cAAc;SACf,CAAC,CAAC;QACH,UAAU,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QAC/B,UAAU,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;QAEjC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACrG,IAAI,MAAe,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;YAC7D,IAAI,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;gBAC5D,oEAAoE;gBACpE,kEAAkE;gBAClE,kDAAkD;gBAClD,mEAAmE;gBACnE,oEAAoE;gBACpE,kEAAkE;gBAClE,kEAAkE;gBAClE,kEAAkE;gBAClE,0CAA0C;gBAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;gBACzE,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;gBAC/E,IAAI,OAAgB,CAAC;gBACrB,IAAI,UAAmB,CAAC;gBACxB,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;oBAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;oBAClD,IAAI,CAAC,OAAO;wBAAE,SAAS;oBACvB,IAAI,CAAC;wBACH,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAqB,CAAC;wBACzD,UAAU,GAAG,QAAQ,CAAC;wBACtB,IAAI,QAAQ,EAAE,EAAE,KAAK,SAAS,EAAE,CAAC;4BAC/B,OAAO,GAAG,QAAQ,CAAC;4BACnB,MAAM;wBACR,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC;wBACP,6DAA6D;oBAC/D,CAAC;gBACH,CAAC;gBACD,MAAM,GAAG,OAAO,IAAI,UAAU,CAAC;gBAC/B,IAAI,MAAM,KAAK,SAAS;oBAAE,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;YACzG,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC;YACvB,4EAA4E;YAC5E,8EAA8E;YAC9E,4EAA4E;YAC5E,gEAAgE;YAChE,IAAI,UAAU,CAAC,MAAM,IAAI,GAAG,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9D,OAAO;oBACL,UAAU;oBACV,UAAU,EAAE;wBACV,OAAO,EAAE,KAAK;wBACd,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,qCAAqC,UAAU,CAAC,MAAM,KAAK,IAAI,CAAC,IAAI,EAAE,0GAA0G;wBACvL,gBAAgB,EAAE,OAAO;qBAC1B;iBACF,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,UAAU;gBACV,UAAU,EAAE;oBACV,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,yCAAyC,UAAU,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,SAAS,IAAI;oBACnG,gBAAgB,EAAE,OAAO;iBAC1B;aACF,CAAC;QACJ,CAAC;QACD,UAAU,CAAC,IAAI,GAAG,MAAM,CAAC;QAEzB,MAAM,GAAG,GAAG,MAGX,CAAC;QACF,4EAA4E;QAC5E,4BAA4B;QAC5B,IAAI,UAAU,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;YAC7B,OAAO;gBACL,UAAU;gBACV,UAAU,EAAE;oBACV,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,OAAO,IAAI,QAAQ,UAAU,CAAC,MAAM,EAAE;oBACxD,gBAAgB,EAAE,OAAO;iBAC1B;aACF,CAAC;QACJ,CAAC;QACD,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACd,gEAAgE;YAChE,mEAAmE;YACnE,uDAAuD;YACvD,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;YAC5B,MAAM,aAAa,GACjB,IAAI,KAAK,CAAC,KAAK;gBACf,CAAC,OAAO,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,QAAQ,IAAI,iCAAiC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;YACvG,OAAO;gBACL,UAAU;gBACV,UAAU,EAAE;oBACV,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,aAAa;wBAClB,CAAC,CAAC,gCAAgC,IAAI,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,YAAY,0GAA0G;wBACtL,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,kBAAkB,IAAI,EAAE,CAAC;oBACnD,gBAAgB,EAAE,OAAO;iBAC1B;aACF,CAAC;QACJ,CAAC;QACD,yEAAyE;QACzE,wEAAwE;QACxE,yDAAyD;QACzD,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC;QACjD,MAAM,aAAa,GAAG,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,IAAI,CAAC;QACtE,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;QAC9D,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;QACtC,MAAM,cAAc,GAA8D,OAAO;YACvF,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,aAAa;gBACb,CAAC,CAAC,oBAAoB;gBACtB,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI;oBACnC,CAAC,CAAC,eAAe;oBACjB,CAAC,CAAC,MAAM,CAAC;QACf,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,cAAc,EAAE,EAAE,CAAC;IACnG,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,UAAU,CAAC,KAAK,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACpE,OAAO,EAAE,UAAU,EAAE,CAAC;IACxB,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,6DAA6D;AAC7D,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACI,KAAK,UAAU,WAAW,CAAC,OAUjC;IACC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,EAAE,EAAE,cAAc,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;IACnF,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC1B,OAAO,EAAE,KAAK;QACd,EAAE,EAAE,EAAE,cAAc;QACpB,MAAM;QACN,MAAM,EAAE,MAAM,IAAI,EAAE;KACrB,CAAC,CAAC;IAEH,MAAM,UAAU,GAAoB,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC1F,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,IAAA,mBAAa,EAAC,QAAQ,EAAE;YACxC,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,MAAM,EAAE,kBAAkB;gBAC1B,GAAG,OAAO;aACX;YACD,IAAI;YACJ,cAAc;SACf,CAAC,CAAC;QACH,UAAU,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QAC/B,UAAU,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;QAEjC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACrG,IAAI,MAAe,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QAAC,MAAM,CAAC;YACP,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC;YACvB,OAAO;gBACL,UAAU;gBACV,UAAU,EAAE;oBACV,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,yCAAyC,UAAU,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,SAAS,IAAI;oBACnG,gBAAgB,EAAE,OAAO;iBAC1B;aACF,CAAC;QACJ,CAAC;QACD,UAAU,CAAC,IAAI,GAAG,MAAM,CAAC;QAEzB,MAAM,GAAG,GAAG,MAGX,CAAC;QAEF,IAAI,UAAU,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;YAC7B,OAAO;gBACL,UAAU;gBACV,UAAU,EAAE;oBACV,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,OAAO,IAAI,QAAQ,UAAU,CAAC,MAAM,EAAE;oBACxD,gBAAgB,EAAE,OAAO;iBAC1B;aACF,CAAC;QACJ,CAAC;QAED,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACd,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;YAC5B,OAAO;gBACL,UAAU;gBACV,UAAU,EAAE;oBACV,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,SAAS;oBACf,KAAK,EACH,IAAI,KAAK,SAAS;wBAChB,CAAC,CAAC,kBAAkB,IAAI,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,YAAY,EAAE;wBAChE,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,0BAA0B,CAAC;oBACvD,gBAAgB,EAAE,OAAO;iBAC1B;aACF,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC;QACxB,MAAM,cAAc,GAA6B,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC;QAChH,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,gBAAgB,EAAE,cAAc,EAAE,EAAE,CAAC;IAC/F,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,UAAU,CAAC,KAAK,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACpE,OAAO,EAAE,UAAU,EAAE,CAAC;IACxB,CAAC;AACH,CAAC;AAED,0EAA0E;AAC1E,wEAAwE;AACxE,6EAA6E;AAC7E,6BAA6B;AAChB,QAAA,eAAe,GAAG,qBAAqB,CAAC;AACxC,QAAA,WAAW,GAAG,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"probes.js","sourceRoot":"","sources":["../../../../src/lib/testing/storyboard/probes.ts"],"names":[],"mappings":";;;AAoDA,wEAOC;AAYD,oEA2BC;AA+BD,gCAuBC;AAUD,kEAEC;AASD,4DAOC;AAwMD,kCAuGC;AAuCD,kCA4FC;AAtmBD;;;;;;;;;;;;GAYG;AACH,mCAAqC;AACrC,iEAA0G;AAC1G,mCAMmB;AAylBV,iGA5lBP,sBAAgB,OA4lBO;AArlBzB,wEAAwE;AACxE,wEAAwE;AACxE,2CAA2C;AAE3C,sEAAsE;AACzD,QAAA,WAAW,GAAG,IAAI,GAAG,CAAC;IACjC,6BAA6B;IAC7B,4BAA4B;IAC5B,qBAAqB;IACrB,uBAAuB;IACvB,kBAAkB;IAClB,qBAAqB;IACrB,gCAAgC;CACjC,CAAC,CAAC;AAEH,8EAA8E;AAC9E,oCAAoC;AACpC,8EAA8E;AAE9E;;;;;;;GAOG;AACI,KAAK,UAAU,8BAA8B,CAClD,QAAgB,EAChB,UAAwC,EAAE;IAE1C,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC5B,MAAM,WAAW,GAAG,GAAG,CAAC,CAAC,MAAM,wCAAwC,CAAC,CAAC,QAAQ,EAAE,CAAC;IACpF,OAAO,UAAU,CAAC,WAAW,EAAE,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,KAAK,EAAE,CAAC,CAAC;AACtF,CAAC;AAED,8EAA8E;AAC9E,4CAA4C;AAC5C,8EAA8E;AAE9E;;;;;GAKG;AACI,KAAK,UAAU,4BAA4B,CAChD,UAAuC,EACvC,UAAwC,EAAE;IAE1C,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,KAAK,EAAE,CAAC;QACpC,OAAO;YACL,GAAG,EAAE,EAAE;YACP,MAAM,EAAE,CAAC;YACT,OAAO,EAAE,EAAE;YACX,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,6EAA6E;SACrF,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,UAAU,CAAC,IAAkD,CAAC;IAC3E,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAE,IAAK,CAAC,qBAAkC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5G,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,OAAO,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QAC3D,OAAO;YACL,GAAG,EAAE,EAAE;YACP,MAAM,EAAE,CAAC;YACT,OAAO,EAAE,EAAE;YACX,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,kEAAkE;SAC1E,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC7C,MAAM,WAAW,GAAG,GAAG,MAAM,yCAAyC,CAAC;IACvE,OAAO,UAAU,CAAC,WAAW,EAAE,EAAE,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,KAAK,EAAE,CAAC,CAAC;AACtF,CAAC;AAaD;;;;;;;;;;;;;;;;;GAiBG;AACI,KAAK,UAAU,UAAU,CAAC,GAAW,EAAE,UAA6B,EAAE;IAC3E,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,IAAA,mBAAa,EAAC,GAAG,EAAE;YACnC,MAAM,EAAE,KAAK;YACb,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;YACvC,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,KAAK;YAC/C,GAAG,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC7E,CAAC,CAAC;QACH,OAAO;YACL,GAAG;YACH,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,IAAI,EAAE,IAAA,4BAAsB,EAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;SACpE,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,GAAG;YACH,MAAM,EAAE,CAAC;YACT,OAAO,EAAE,EAAE;YACX,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;SACxD,CAAC;IACJ,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,yCAAyC;AACzC,8EAA8E;AAE9E;;;GAGG;AACH,SAAgB,2BAA2B;IACzC,OAAO,WAAW,IAAA,oBAAW,EAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;AACtD,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,wBAAwB;IACtC,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;IACpF,MAAM,OAAO,GAAG,SAAS,CACvB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,WAAW,IAAA,oBAAW,EAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CACxG,CAAC;IACF,MAAM,SAAS,GAAG,SAAS,CAAC,IAAA,oBAAW,EAAC,EAAE,CAAC,CAAC,CAAC;IAC7C,OAAO,GAAG,MAAM,IAAI,OAAO,IAAI,SAAS,EAAE,CAAC;AAC7C,CAAC;AAED,SAAS,SAAS,CAAC,GAAW;IAC5B,OAAO,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AAC3F,CAAC;AAED,8EAA8E;AAC9E,yCAAyC;AACzC,8EAA8E;AAE9E,IAAI,cAAc,GAAG,CAAC,CAAC;AACvB,MAAM,qBAAqB,GAAG,gBAAgB,CAAC;AAC/C,MAAM,2BAA2B,GAAG,sBAAsB,CAAC;AAiB3D,KAAK,UAAU,iBAAiB,CAAC,OAUhC;IACC,MAAM,EACJ,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,cAAc,EACd,SAAS,EACT,eAAe,EACf,UAAU,EACV,SAAS,GAAG,IAAI,EAChB,cAAc,GAAG,KAAK,GACvB,GAAG,OAAO,CAAC;IACZ,MAAM,UAAU,GAAoB,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC1F,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,IAAA,mBAAa,EAAC,QAAQ,EAAE;YACxC,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,MAAM,EAAE,qCAAqC;gBAC7C,GAAG,wBAAwB,CAAC,OAAO,CAAC;gBACpC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,qBAAqB,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5D,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,2BAA2B,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC/E;YACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;YAC9B,cAAc;SACf,CAAC,CAAC;QACH,UAAU,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QAC/B,UAAU,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;QAEjC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACrG,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,UAAU,CAAC,IAAI,GAAG,IAAI,IAAI,IAAI,CAAC;YAC/B,OAAO,EAAE,UAAU,EAAE,CAAC;QACxB,CAAC;QACD,IAAI,cAAc,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACzC,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC;YACvB,OAAO,EAAE,UAAU,EAAE,CAAC;QACxB,CAAC;QACD,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,uBAAuB,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC,CAAC;YAC7F,UAAU,CAAC,IAAI,GAAG,MAAM,CAAC;YACzB,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC;QAChC,CAAC;QAAC,MAAM,CAAC;YACP,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC;YACvB,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;QAC1C,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,UAAU,CAAC,KAAK,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACpE,OAAO,EAAE,UAAU,EAAE,CAAC;IACxB,CAAC;AACH,CAAC;AAED,SAAS,wBAAwB,CAAC,OAA+B;IAC/D,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACnD,MAAM,UAAU,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC;QACrC,IAAI,UAAU,KAAK,qBAAqB,IAAI,UAAU,KAAK,2BAA2B;YAAE,SAAS;QACjG,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACvB,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,uBAAuB,CAAC,IAAY,EAAE,WAA+B,EAAE,UAAmB;IACjG,IAAI,WAAW,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;QAC7D,oEAAoE;QACpE,uEAAuE;QACvE,sEAAsE;QACtE,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;QACzE,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QAC/E,IAAI,OAAoC,CAAC;QACzC,IAAI,UAAuC,CAAC;QAC5C,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YAC7B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;YAClD,IAAI,CAAC,OAAO;gBAAE,SAAS;YACvB,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAoB,CAAC;gBACxD,UAAU,GAAG,QAAQ,CAAC;gBACtB,IAAI,UAAU,KAAK,SAAS,IAAI,QAAQ,EAAE,EAAE,KAAK,UAAU,EAAE,CAAC;oBAC5D,OAAO,GAAG,QAAQ,CAAC;oBACnB,MAAM;gBACR,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,6DAA6D;YAC/D,CAAC;QACH,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,IAAI,UAAU,CAAC;QACrC,IAAI,MAAM,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;QACvG,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAoB,CAAC;AAC7C,CAAC;AAED,SAAS,iBAAiB,CAAC,UAA2B,EAAE,GAAoB;IAC1E,IAAI,UAAU,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;QAC7B,OAAO;YACL,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,OAAO,IAAI,QAAQ,UAAU,CAAC,MAAM,EAAE;YACxD,gBAAgB,EAAE,OAAO;SAC1B,CAAC;IACJ,CAAC;IACD,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;QACd,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;QAC5B,OAAO;YACL,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,SAAS;YACf,KAAK,EACH,IAAI,KAAK,SAAS;gBAChB,CAAC,CAAC,kBAAkB,IAAI,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,YAAY,EAAE;gBAChE,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,0BAA0B,CAAC;YACvD,gBAAgB,EAAE,OAAO;SAC1B,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC;IACjD,MAAM,aAAa,GAAG,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,IAAI,CAAC;IACtE,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IAC9D,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC;IACtC,MAAM,cAAc,GAA8D,OAAO;QACvF,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,aAAa;YACb,CAAC,CAAC,oBAAoB;YACtB,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI;gBACnC,CAAC,CAAC,eAAe;gBACjB,CAAC,CAAC,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,cAAc,EAAE,CAAC;AACvE,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAe;IACvC,OAAO;QACL,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,OAAO;QACd,gBAAgB,EAAE,OAAO;KAC1B,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,MAA4B;IAC7D,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACtB,OAAO,gBAAgB,CACrB,yCAAyC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,SAAS,IAAI,CACpG,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,CAAC,MAAM;QAAE,OAAO,iBAAiB,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9E,OAAO,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,IAAI,QAAQ,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;AACzF,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACI,KAAK,UAAU,WAAW,CAAC,OAOjC;IACC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,GAAG,EAAE,EAAE,cAAc,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;IACnF,MAAM,YAAY,GAAG,EAAE,cAAc,CAAC;IACtC,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC;QACzC,QAAQ;QACR,QAAQ,EAAE;YACR,OAAO,EAAE,KAAK;YACd,EAAE,EAAE,YAAY;YAChB,MAAM,EAAE,YAAY;YACpB,MAAM,EAAE;gBACN,eAAe,EAAE,kCAAuB;gBACxC,YAAY,EAAE,EAAE;gBAChB,UAAU,EAAE,EAAE,IAAI,EAAE,+BAA+B,EAAE,OAAO,EAAE,OAAO,EAAE;aACxE;SACF;QACD,OAAO;QACP,cAAc;QACd,UAAU,EAAE,YAAY;KACzB,CAAC,CAAC;IACH,IACE,UAAU,CAAC,UAAU,CAAC,KAAK;QAC3B,UAAU,CAAC,UAAU,CAAC,MAAM,IAAI,GAAG;QACnC,CAAC,UAAU,CAAC,MAAM;QAClB,UAAU,CAAC,MAAM,CAAC,KAAK,EACvB,CAAC;QACD,OAAO;YACL,UAAU,EAAE,UAAU,CAAC,UAAU;YACjC,UAAU,EAAE,yBAAyB,CAAC,UAAU,CAAC;SAClD,CAAC;IACJ,CAAC;IACD,MAAM,yBAAyB,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC;IAC5E,IACE,OAAO,yBAAyB,KAAK,QAAQ;QAC7C,CAAC,sCAA2B,CAAC,QAAQ,CAAC,yBAAyB,CAAC,EAChE,CAAC;QACD,OAAO;YACL,UAAU,EAAE,UAAU,CAAC,UAAU;YACjC,UAAU,EAAE,gBAAgB,CAC1B,yBAAyB;gBACvB,CAAC,CAAC,+CAA+C,yBAAyB,EAAE;gBAC5E,CAAC,CAAC,gEAAgE,CACrE;SACF,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACvE,MAAM,WAAW,GAAG,MAAM,iBAAiB,CAAC;QAC1C,QAAQ;QACR,QAAQ,EAAE;YACR,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,2BAA2B;YACnC,MAAM,EAAE,EAAE;SACX;QACD,OAAO;QACP,cAAc;QACd,GAAG,CAAC,SAAS,IAAI,EAAE,SAAS,EAAE,CAAC;QAC/B,eAAe,EAAE,yBAAyB;QAC1C,cAAc,EAAE,IAAI;KACrB,CAAC,CAAC;IACH,IACE,WAAW,CAAC,UAAU,CAAC,KAAK;QAC5B,WAAW,CAAC,UAAU,CAAC,MAAM,IAAI,GAAG;QACpC,WAAW,CAAC,UAAU;QACtB,WAAW,CAAC,MAAM,EAAE,KAAK,EACzB,CAAC;QACD,OAAO;YACL,UAAU,EAAE,WAAW,CAAC,UAAU;YAClC,UAAU,EAAE,yBAAyB,CAAC,WAAW,CAAC;SACnD,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,EAAE,cAAc,CAAC;IACnC,MAAM,YAAY,GAAG;QACnB,OAAO,EAAE,KAAK;QACd,EAAE,EAAE,SAAS;QACb,MAAM,EAAE,YAAY;QACpB,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE;KAC5C,CAAC;IACF,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC;QACrC,QAAQ;QACR,QAAQ,EAAE,YAAY;QACtB,OAAO;QACP,cAAc;QACd,GAAG,CAAC,SAAS,IAAI,EAAE,SAAS,EAAE,CAAC;QAC/B,eAAe,EAAE,yBAAyB;QAC1C,UAAU,EAAE,SAAS;KACtB,CAAC,CAAC;IACH,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IACtC,IAAI,UAAU,CAAC,KAAK;QAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,yBAAyB,CAAC,MAAM,CAAC,EAAE,CAAC;IAC3F,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO;YACL,UAAU;YACV,UAAU,EAAE,yBAAyB,CAAC,MAAM,CAAC;SAC9C,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,iBAAiB,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,CAAC;AAC3E,CAAC;AAED,8EAA8E;AAC9E,6DAA6D;AAC7D,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACI,KAAK,UAAU,WAAW,CAAC,OAUjC;IACC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,EAAE,EAAE,cAAc,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;IACnF,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC1B,OAAO,EAAE,KAAK;QACd,EAAE,EAAE,EAAE,cAAc;QACpB,MAAM;QACN,MAAM,EAAE,MAAM,IAAI,EAAE;KACrB,CAAC,CAAC;IAEH,MAAM,UAAU,GAAoB,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC1F,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,IAAA,mBAAa,EAAC,QAAQ,EAAE;YACxC,MAAM,EAAE,MAAM;YACd,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,MAAM,EAAE,kBAAkB;gBAC1B,GAAG,OAAO;aACX;YACD,IAAI;YACJ,cAAc;SACf,CAAC,CAAC;QACH,UAAU,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QAC/B,UAAU,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;QAEjC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACrG,IAAI,MAAe,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QAAC,MAAM,CAAC;YACP,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC;YACvB,OAAO;gBACL,UAAU;gBACV,UAAU,EAAE;oBACV,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,yCAAyC,UAAU,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,SAAS,IAAI;oBACnG,gBAAgB,EAAE,OAAO;iBAC1B;aACF,CAAC;QACJ,CAAC;QACD,UAAU,CAAC,IAAI,GAAG,MAAM,CAAC;QAEzB,MAAM,GAAG,GAAG,MAGX,CAAC;QAEF,IAAI,UAAU,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;YAC7B,OAAO;gBACL,UAAU;gBACV,UAAU,EAAE;oBACV,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,OAAO,IAAI,QAAQ,UAAU,CAAC,MAAM,EAAE;oBACxD,gBAAgB,EAAE,OAAO;iBAC1B;aACF,CAAC;QACJ,CAAC;QAED,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACd,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;YAC5B,OAAO;gBACL,UAAU;gBACV,UAAU,EAAE;oBACV,OAAO,EAAE,KAAK;oBACd,IAAI,EAAE,SAAS;oBACf,KAAK,EACH,IAAI,KAAK,SAAS;wBAChB,CAAC,CAAC,kBAAkB,IAAI,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,YAAY,EAAE;wBAChE,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,0BAA0B,CAAC;oBACvD,gBAAgB,EAAE,OAAO;iBAC1B;aACF,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC;QACxB,MAAM,cAAc,GAA6B,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC;QAChH,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,gBAAgB,EAAE,cAAc,EAAE,EAAE,CAAC;IAC/F,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,UAAU,CAAC,KAAK,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACpE,OAAO,EAAE,UAAU,EAAE,CAAC;IACxB,CAAC;AACH,CAAC;AAED,0EAA0E;AAC1E,wEAAwE;AACxE,6EAA6E;AAC7E,6BAA6B;AAChB,QAAA,eAAe,GAAG,qBAAqB,CAAC;AACxC,QAAA,WAAW,GAAG,iBAAiB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../../../src/lib/testing/storyboard/runner.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA8EH,OAAO,KAAK,EAiBV,UAAU,EACV,cAAc,EAEd,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,EAEhB,qBAAqB,EACrB,oBAAoB,EACpB,qBAAqB,EAErB,uBAAuB,EACvB,qBAAqB,EAGtB,MAAM,SAAS,CAAC;AASjB,OAAO,KAAK,EAA4B,cAAc,EAAE,MAAM,UAAU,CAAC;AAoCzE,wBAAgB,6BAA6B,CAC3C,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,oBAAoB,GAC5B,oBAAoB,CAEtB;AAED,wBAAgB,0BAA0B,CACxC,kBAAkB,EAAE,MAAM,GAAG,SAAS,EACtC,OAAO,EAAE,oBAAoB,GAC5B,oBAAoB,CAUtB;AAsED;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAQ/E;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,2BAA2B,CACzC,SAAS,EACL;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;CAAE,GAC1D;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,GAClC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAA;CAAE,EACzD,MAAM,EAAE,OAAO,GACd,MAAM,GAAG,IAAI,CAkDf;AAijBD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAE9D;AAED,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,GAC1C,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAEpC;AAED,wBAAgB,sCAAsC,CACpD,OAAO,EAAE,oBAAoB,GAC5B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAEpC;AAiCD;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CACjC,cAAc,EAAE,MAAM,GAAG,MAAM,EAAE,EACjC,UAAU,EAAE,UAAU,EACtB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,gBAAgB,CAAC,CAS3B;AAmjBD;;;;;;;;;;GAUG;AACH,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,MAAM,EAAE,EACnB,UAAU,EAAE,UAAU,EACtB,aAAa,EAAE,cAAc,GAC5B,gBAAgB,CA8ClB;AAsiDD;;;;;;;;;;;;;;;;GAgBG;AACH;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,qBAAqB,EAAE,GAC9B,KAAK,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,qBAAqB,EAAE,CAAA;CAAE,CAAC,CA0B9G;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,qBAAqB,EAAE,GAAG,uBAAuB,CA4BlG;AAMD;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,UAAU,EACtB,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,oBAAoB,CAAC,CAU/B;
|
|
1
|
+
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../../../src/lib/testing/storyboard/runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -3136,7 +3136,7 @@ client, step, phaseId, context, allSteps, options, state) {
|
|
|
3136
3136
|
// 5. Empty object (only reachable for non-mutating tasks with neither fixture nor enricher)
|
|
3137
3137
|
let request;
|
|
3138
3138
|
if (options.request) {
|
|
3139
|
-
request = { ...options.request };
|
|
3139
|
+
request = (0, context_1.injectContext)({ ...options.request }, context, runState.runnerVars);
|
|
3140
3140
|
}
|
|
3141
3141
|
else if (step.expect_error && step.sample_request) {
|
|
3142
3142
|
request = (0, context_1.injectContext)({ ...step.sample_request }, context, runState.runnerVars);
|
|
@@ -3235,6 +3235,36 @@ client, step, phaseId, context, allSteps, options, state) {
|
|
|
3235
3235
|
extraction: { path: 'none' },
|
|
3236
3236
|
};
|
|
3237
3237
|
}
|
|
3238
|
+
const unresolvedRunnerTokens = findUnresolvedRunnerTokens(request);
|
|
3239
|
+
if (unresolvedRunnerTokens.length > 0) {
|
|
3240
|
+
const isPrerequisiteFailure = hasUnresolvedPriorStepToken(unresolvedRunnerTokens);
|
|
3241
|
+
const skipReason = isPrerequisiteFailure ? 'prerequisite_failed' : 'not_applicable';
|
|
3242
|
+
const next = getNextStepPreview(step.id, allSteps, context, runState.runnerVars);
|
|
3243
|
+
const detail = 'Skipped: storyboard request references unresolved runner placeholders. ' +
|
|
3244
|
+
`Unresolved token(s): ${unresolvedRunnerTokens.join(', ')}.`;
|
|
3245
|
+
return {
|
|
3246
|
+
step_id: step.id,
|
|
3247
|
+
phase_id: phaseId,
|
|
3248
|
+
title: step.title,
|
|
3249
|
+
task: effectiveStep.task,
|
|
3250
|
+
passed: !isPrerequisiteFailure,
|
|
3251
|
+
skipped: true,
|
|
3252
|
+
skip_reason: skipReason,
|
|
3253
|
+
skip: buildSkip(skipReason, detail),
|
|
3254
|
+
duration_ms: 0,
|
|
3255
|
+
validations: [],
|
|
3256
|
+
context,
|
|
3257
|
+
next,
|
|
3258
|
+
...(isPrerequisiteFailure ? { error: detail } : {}),
|
|
3259
|
+
request: {
|
|
3260
|
+
transport: options.protocol === 'a2a' ? 'a2a' : 'mcp',
|
|
3261
|
+
operation: effectiveStep.task,
|
|
3262
|
+
payload: (0, redact_secrets_1.redactSecrets)(request),
|
|
3263
|
+
...(runState.agentUrl ? { url: runState.agentUrl } : {}),
|
|
3264
|
+
},
|
|
3265
|
+
extraction: { path: 'none' },
|
|
3266
|
+
};
|
|
3267
|
+
}
|
|
3238
3268
|
// Execute the task. When the step overrides auth, dispatch via the raw MCP
|
|
3239
3269
|
// probe so we can (a) strip credentials or send arbitrary Bearer values
|
|
3240
3270
|
// (which the SDK transport doesn't expose), and (b) capture the HTTP status
|
|
@@ -4072,6 +4102,30 @@ client, step, phaseId, context, allSteps, options, runState) {
|
|
|
4072
4102
|
error: detail,
|
|
4073
4103
|
};
|
|
4074
4104
|
}
|
|
4105
|
+
const unresolvedRunnerTokens = findUnresolvedRunnerTokens(resolvedTargetRequest);
|
|
4106
|
+
if (unresolvedRunnerTokens.length > 0) {
|
|
4107
|
+
const isPrerequisiteFailure = hasUnresolvedPriorStepToken(unresolvedRunnerTokens);
|
|
4108
|
+
const skipReason = isPrerequisiteFailure ? 'prerequisite_failed' : 'not_applicable';
|
|
4109
|
+
const next = getNextStepPreview(step.id, allSteps, context, runState.runnerVars);
|
|
4110
|
+
const detail = 'Skipped: rate_limit_trip target request references unresolved runner placeholders. ' +
|
|
4111
|
+
`Unresolved token(s): ${unresolvedRunnerTokens.join(', ')}.`;
|
|
4112
|
+
return {
|
|
4113
|
+
step_id: step.id,
|
|
4114
|
+
phase_id: phaseId,
|
|
4115
|
+
title: step.title,
|
|
4116
|
+
task: step.task,
|
|
4117
|
+
passed: !isPrerequisiteFailure,
|
|
4118
|
+
skipped: true,
|
|
4119
|
+
skip_reason: skipReason,
|
|
4120
|
+
skip: buildSkip(skipReason, detail),
|
|
4121
|
+
duration_ms: Date.now() - start,
|
|
4122
|
+
validations: [],
|
|
4123
|
+
context,
|
|
4124
|
+
next,
|
|
4125
|
+
extraction: { path: 'none' },
|
|
4126
|
+
...(isPrerequisiteFailure ? { error: detail } : {}),
|
|
4127
|
+
};
|
|
4128
|
+
}
|
|
4075
4129
|
const advertisedTools = resolveAdvertisedTools(options);
|
|
4076
4130
|
if (advertisedTools && !advertisedTools.includes(rateLimitTrip.trip_target_task)) {
|
|
4077
4131
|
const next = getNextStepPreview(step.id, allSteps, context, runState.runnerVars);
|
|
@@ -4213,7 +4267,7 @@ client, step, phaseId, context, allSteps, options, runState) {
|
|
|
4213
4267
|
function buildEffectiveStepRequest(step, context, options, runState) {
|
|
4214
4268
|
let request;
|
|
4215
4269
|
if (options.request) {
|
|
4216
|
-
request = { ...options.request };
|
|
4270
|
+
request = (0, context_1.injectContext)({ ...options.request }, context, runState.runnerVars);
|
|
4217
4271
|
}
|
|
4218
4272
|
else if (step.expect_error && step.sample_request) {
|
|
4219
4273
|
request = (0, context_1.injectContext)({ ...step.sample_request }, context, runState.runnerVars);
|
|
@@ -5074,7 +5128,7 @@ function normalizeBasicCredentials(input, fieldPrefix) {
|
|
|
5074
5128
|
}
|
|
5075
5129
|
assertSafeAuthHeaderPart(input.credentials, `${fieldPrefix}.credentials`);
|
|
5076
5130
|
const colonIndex = input.credentials.indexOf(':');
|
|
5077
|
-
if (colonIndex <= 0
|
|
5131
|
+
if (colonIndex <= 0) {
|
|
5078
5132
|
throw new Error(`${fieldPrefix}.credentials must be in unencoded username:password form`);
|
|
5079
5133
|
}
|
|
5080
5134
|
return input.credentials;
|
|
@@ -5082,8 +5136,8 @@ function normalizeBasicCredentials(input, fieldPrefix) {
|
|
|
5082
5136
|
if (typeof input.username !== 'string' || input.username.length === 0) {
|
|
5083
5137
|
throw new Error(`${fieldPrefix}.username must be a non-empty string`);
|
|
5084
5138
|
}
|
|
5085
|
-
if (typeof input.password !== 'string'
|
|
5086
|
-
throw new Error(`${fieldPrefix}.password must be a
|
|
5139
|
+
if (typeof input.password !== 'string') {
|
|
5140
|
+
throw new Error(`${fieldPrefix}.password must be a string`);
|
|
5087
5141
|
}
|
|
5088
5142
|
if (input.username.includes(':')) {
|
|
5089
5143
|
throw new Error(`${fieldPrefix}.username must not contain colon (RFC 7617)`);
|
|
@@ -5477,6 +5531,28 @@ function findUnresolvedContextVars(obj) {
|
|
|
5477
5531
|
walk(obj);
|
|
5478
5532
|
return vars;
|
|
5479
5533
|
}
|
|
5534
|
+
const UNRESOLVED_RUNNER_TOKEN_RE = /\{\{(?:runner\.(?:webhook_url:[A-Za-z0-9_]+|webhook_base)|prior_step\.[A-Za-z0-9_]+\.operation_id)\}\}/g;
|
|
5535
|
+
function findUnresolvedRunnerTokens(obj) {
|
|
5536
|
+
const vars = [];
|
|
5537
|
+
const walk = (val) => {
|
|
5538
|
+
if (typeof val === 'string') {
|
|
5539
|
+
const matches = val.match(UNRESOLVED_RUNNER_TOKEN_RE);
|
|
5540
|
+
if (matches)
|
|
5541
|
+
vars.push(...matches);
|
|
5542
|
+
}
|
|
5543
|
+
else if (Array.isArray(val)) {
|
|
5544
|
+
val.forEach(walk);
|
|
5545
|
+
}
|
|
5546
|
+
else if (val !== null && typeof val === 'object') {
|
|
5547
|
+
Object.values(val).forEach(walk);
|
|
5548
|
+
}
|
|
5549
|
+
};
|
|
5550
|
+
walk(obj);
|
|
5551
|
+
return [...new Set(vars)];
|
|
5552
|
+
}
|
|
5553
|
+
function hasUnresolvedPriorStepToken(tokens) {
|
|
5554
|
+
return tokens.some(token => token.startsWith('{{prior_step.'));
|
|
5555
|
+
}
|
|
5480
5556
|
function flattenSteps(storyboard) {
|
|
5481
5557
|
const result = [];
|
|
5482
5558
|
let index = 0;
|