@copilotkit/aimock 1.44.0 → 1.45.1
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/.claude-plugin/marketplace.json +1 -1
- package/.claude-plugin/plugin.json +1 -1
- package/CHANGELOG.md +42 -0
- package/README.md +6 -0
- package/dist/agui-types.d.cts.map +1 -1
- package/dist/aimock-cli.cjs +31 -5
- package/dist/aimock-cli.cjs.map +1 -1
- package/dist/aimock-cli.d.cts.map +1 -1
- package/dist/aimock-cli.d.ts.map +1 -1
- package/dist/aimock-cli.js +31 -5
- package/dist/aimock-cli.js.map +1 -1
- package/dist/bedrock-converse.cjs +312 -39
- package/dist/bedrock-converse.cjs.map +1 -1
- package/dist/bedrock-converse.d.cts.map +1 -1
- package/dist/bedrock-converse.d.ts.map +1 -1
- package/dist/bedrock-converse.js +313 -40
- package/dist/bedrock-converse.js.map +1 -1
- package/dist/bedrock.cjs +195 -42
- package/dist/bedrock.cjs.map +1 -1
- package/dist/bedrock.d.cts.map +1 -1
- package/dist/bedrock.d.ts.map +1 -1
- package/dist/bedrock.js +196 -43
- package/dist/bedrock.js.map +1 -1
- package/dist/chaos.cjs +1 -0
- package/dist/chaos.js +1 -1
- package/dist/cli.cjs +152 -5
- package/dist/cli.cjs.map +1 -1
- package/dist/cli.js +155 -8
- package/dist/cli.js.map +1 -1
- package/dist/cohere.cjs +132 -71
- package/dist/cohere.cjs.map +1 -1
- package/dist/cohere.d.cts.map +1 -1
- package/dist/cohere.d.ts.map +1 -1
- package/dist/cohere.js +133 -72
- package/dist/cohere.js.map +1 -1
- package/dist/config-loader.cjs +62 -4
- package/dist/config-loader.cjs.map +1 -1
- package/dist/config-loader.d.cts +37 -4
- package/dist/config-loader.d.cts.map +1 -1
- package/dist/config-loader.d.ts +37 -4
- package/dist/config-loader.d.ts.map +1 -1
- package/dist/config-loader.js +62 -4
- package/dist/config-loader.js.map +1 -1
- package/dist/fakes-plugin.cjs +131 -0
- package/dist/fakes-plugin.cjs.map +1 -0
- package/dist/fakes-plugin.d.cts +23 -0
- package/dist/fakes-plugin.d.cts.map +1 -0
- package/dist/fakes-plugin.d.ts +23 -0
- package/dist/fakes-plugin.d.ts.map +1 -0
- package/dist/fakes-plugin.js +127 -0
- package/dist/fakes-plugin.js.map +1 -0
- package/dist/fixture-loader-services.cjs +1 -1
- package/dist/fixture-loader-services.cjs.map +1 -1
- package/dist/fixture-loader-services.js +1 -1
- package/dist/fixture-loader-services.js.map +1 -1
- package/dist/fixture-loader.cjs +389 -27
- package/dist/fixture-loader.cjs.map +1 -1
- package/dist/fixture-loader.d.cts +47 -3
- package/dist/fixture-loader.d.cts.map +1 -1
- package/dist/fixture-loader.d.ts +47 -3
- package/dist/fixture-loader.d.ts.map +1 -1
- package/dist/fixture-loader.js +384 -29
- package/dist/fixture-loader.js.map +1 -1
- package/dist/gemini-interactions.cjs +250 -52
- package/dist/gemini-interactions.cjs.map +1 -1
- package/dist/gemini-interactions.d.cts.map +1 -1
- package/dist/gemini-interactions.d.ts.map +1 -1
- package/dist/gemini-interactions.js +251 -53
- package/dist/gemini-interactions.js.map +1 -1
- package/dist/gemini.cjs +226 -37
- package/dist/gemini.cjs.map +1 -1
- package/dist/gemini.d.cts.map +1 -1
- package/dist/gemini.d.ts.map +1 -1
- package/dist/gemini.js +227 -38
- package/dist/gemini.js.map +1 -1
- package/dist/helpers.cjs +881 -7
- package/dist/helpers.cjs.map +1 -1
- package/dist/helpers.d.cts +85 -4
- package/dist/helpers.d.cts.map +1 -1
- package/dist/helpers.d.ts +85 -4
- package/dist/helpers.d.ts.map +1 -1
- package/dist/helpers.js +839 -8
- package/dist/helpers.js.map +1 -1
- package/dist/index.cjs +9 -0
- package/dist/index.d.cts +7 -5
- package/dist/index.d.ts +7 -5
- package/dist/index.js +4 -3
- package/dist/jest.cjs +31 -7
- package/dist/jest.cjs.map +1 -1
- package/dist/jest.d.cts +43 -3
- package/dist/jest.d.cts.map +1 -1
- package/dist/jest.d.ts +43 -3
- package/dist/jest.d.ts.map +1 -1
- package/dist/jest.js +33 -9
- package/dist/jest.js.map +1 -1
- package/dist/journal.cjs +135 -13
- package/dist/journal.cjs.map +1 -1
- package/dist/journal.d.cts +38 -4
- package/dist/journal.d.cts.map +1 -1
- package/dist/journal.d.ts +38 -4
- package/dist/journal.d.ts.map +1 -1
- package/dist/journal.js +135 -13
- package/dist/journal.js.map +1 -1
- package/dist/live-sanitize.cjs +4 -32
- package/dist/live-sanitize.cjs.map +1 -1
- package/dist/live-sanitize.js +4 -32
- package/dist/live-sanitize.js.map +1 -1
- package/dist/llmock.cjs +123 -30
- package/dist/llmock.cjs.map +1 -1
- package/dist/llmock.d.cts +16 -1
- package/dist/llmock.d.cts.map +1 -1
- package/dist/llmock.d.ts +16 -1
- package/dist/llmock.d.ts.map +1 -1
- package/dist/llmock.js +125 -32
- package/dist/llmock.js.map +1 -1
- package/dist/mcp-fakes-mount.cjs +1 -0
- package/dist/mcp-fakes-mount.cjs.map +1 -1
- package/dist/mcp-fakes-mount.js +1 -0
- package/dist/mcp-fakes-mount.js.map +1 -1
- package/dist/mcp-fakes-report.cjs +111 -0
- package/dist/mcp-fakes-report.cjs.map +1 -0
- package/dist/mcp-fakes-report.d.cts +40 -0
- package/dist/mcp-fakes-report.d.cts.map +1 -0
- package/dist/mcp-fakes-report.d.ts +40 -0
- package/dist/mcp-fakes-report.d.ts.map +1 -0
- package/dist/mcp-fakes-report.js +107 -0
- package/dist/mcp-fakes-report.js.map +1 -0
- package/dist/mcp-fakes.cjs +331 -8
- package/dist/mcp-fakes.cjs.map +1 -1
- package/dist/mcp-fakes.d.cts +406 -3
- package/dist/mcp-fakes.d.cts.map +1 -1
- package/dist/mcp-fakes.d.ts +406 -3
- package/dist/mcp-fakes.d.ts.map +1 -1
- package/dist/mcp-fakes.js +331 -8
- package/dist/mcp-fakes.js.map +1 -1
- package/dist/mcp-handler.cjs +216 -17
- package/dist/mcp-handler.cjs.map +1 -1
- package/dist/mcp-handler.d.cts +49 -0
- package/dist/mcp-handler.d.cts.map +1 -0
- package/dist/mcp-handler.d.ts +49 -0
- package/dist/mcp-handler.d.ts.map +1 -0
- package/dist/mcp-handler.js +214 -18
- package/dist/mcp-handler.js.map +1 -1
- package/dist/mcp-mock.cjs +112 -1
- package/dist/mcp-mock.cjs.map +1 -1
- package/dist/mcp-mock.d.cts +33 -2
- package/dist/mcp-mock.d.cts.map +1 -1
- package/dist/mcp-mock.d.ts +33 -2
- package/dist/mcp-mock.d.ts.map +1 -1
- package/dist/mcp-mock.js +112 -1
- package/dist/mcp-mock.js.map +1 -1
- package/dist/mcp-recorder.cjs +1224 -0
- package/dist/mcp-recorder.cjs.map +1 -0
- package/dist/mcp-recorder.d.cts +108 -0
- package/dist/mcp-recorder.d.cts.map +1 -0
- package/dist/mcp-recorder.d.ts +108 -0
- package/dist/mcp-recorder.d.ts.map +1 -0
- package/dist/mcp-recorder.js +1215 -0
- package/dist/mcp-recorder.js.map +1 -0
- package/dist/messages.cjs +362 -56
- package/dist/messages.cjs.map +1 -1
- package/dist/messages.d.cts.map +1 -1
- package/dist/messages.d.ts.map +1 -1
- package/dist/messages.js +363 -58
- package/dist/messages.js.map +1 -1
- package/dist/misbehavior.cjs +1523 -0
- package/dist/misbehavior.cjs.map +1 -0
- package/dist/misbehavior.d.cts +43 -0
- package/dist/misbehavior.d.cts.map +1 -0
- package/dist/misbehavior.d.ts +43 -0
- package/dist/misbehavior.d.ts.map +1 -0
- package/dist/misbehavior.js +1511 -0
- package/dist/misbehavior.js.map +1 -0
- package/dist/ollama.cjs +310 -112
- package/dist/ollama.cjs.map +1 -1
- package/dist/ollama.d.cts.map +1 -1
- package/dist/ollama.d.ts.map +1 -1
- package/dist/ollama.js +311 -113
- package/dist/ollama.js.map +1 -1
- package/dist/openrouter-video.cjs +30 -2
- package/dist/openrouter-video.cjs.map +1 -1
- package/dist/openrouter-video.d.cts.map +1 -1
- package/dist/openrouter-video.d.ts.map +1 -1
- package/dist/openrouter-video.js +30 -2
- package/dist/openrouter-video.js.map +1 -1
- package/dist/record-sanitize.cjs +231 -0
- package/dist/record-sanitize.cjs.map +1 -0
- package/dist/record-sanitize.js +224 -0
- package/dist/record-sanitize.js.map +1 -0
- package/dist/recorder.cjs +106 -5
- package/dist/recorder.cjs.map +1 -1
- package/dist/recorder.d.cts +2 -1
- package/dist/recorder.d.cts.map +1 -1
- package/dist/recorder.d.ts +2 -1
- package/dist/recorder.d.ts.map +1 -1
- package/dist/recorder.js +107 -7
- package/dist/recorder.js.map +1 -1
- package/dist/responses.cjs +667 -171
- package/dist/responses.cjs.map +1 -1
- package/dist/responses.d.cts +5 -13
- package/dist/responses.d.cts.map +1 -1
- package/dist/responses.d.ts +5 -13
- package/dist/responses.d.ts.map +1 -1
- package/dist/responses.js +665 -174
- package/dist/responses.js.map +1 -1
- package/dist/router.cjs +24 -2
- package/dist/router.cjs.map +1 -1
- package/dist/router.d.cts.map +1 -1
- package/dist/router.d.ts.map +1 -1
- package/dist/router.js +25 -4
- package/dist/router.js.map +1 -1
- package/dist/server.cjs +572 -76
- package/dist/server.cjs.map +1 -1
- package/dist/server.d.cts.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +574 -78
- package/dist/server.js.map +1 -1
- package/dist/stream-collapse.cjs +236 -34
- package/dist/stream-collapse.cjs.map +1 -1
- package/dist/stream-collapse.d.cts +39 -4
- package/dist/stream-collapse.d.cts.map +1 -1
- package/dist/stream-collapse.d.ts +39 -4
- package/dist/stream-collapse.d.ts.map +1 -1
- package/dist/stream-collapse.js +235 -35
- package/dist/stream-collapse.js.map +1 -1
- package/dist/types.cjs.map +1 -1
- package/dist/types.d.cts +315 -4
- package/dist/types.d.cts.map +1 -1
- package/dist/types.d.ts +315 -4
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/validate-cli.cjs +36 -4
- package/dist/validate-cli.cjs.map +1 -1
- package/dist/validate-cli.js +37 -5
- package/dist/validate-cli.js.map +1 -1
- package/dist/vector-types.d.ts.map +1 -1
- package/dist/version.cjs +45 -0
- package/dist/version.cjs.map +1 -0
- package/dist/version.js +44 -0
- package/dist/version.js.map +1 -0
- package/dist/vitest.cjs +66 -10
- package/dist/vitest.cjs.map +1 -1
- package/dist/vitest.d.cts +35 -4
- package/dist/vitest.d.cts.map +1 -1
- package/dist/vitest.d.ts +35 -4
- package/dist/vitest.d.ts.map +1 -1
- package/dist/vitest.js +67 -11
- package/dist/vitest.js.map +1 -1
- package/dist/watcher.cjs +6 -2
- package/dist/watcher.cjs.map +1 -1
- package/dist/watcher.js +6 -2
- package/dist/watcher.js.map +1 -1
- package/dist/ws-gemini-live.cjs +210 -101
- package/dist/ws-gemini-live.cjs.map +1 -1
- package/dist/ws-gemini-live.d.cts +9 -3
- package/dist/ws-gemini-live.d.cts.map +1 -1
- package/dist/ws-gemini-live.d.ts +9 -3
- package/dist/ws-gemini-live.d.ts.map +1 -1
- package/dist/ws-gemini-live.js +211 -102
- package/dist/ws-gemini-live.js.map +1 -1
- package/dist/ws-realtime.cjs +175 -62
- package/dist/ws-realtime.cjs.map +1 -1
- package/dist/ws-realtime.d.cts +8 -3
- package/dist/ws-realtime.d.cts.map +1 -1
- package/dist/ws-realtime.d.ts +8 -3
- package/dist/ws-realtime.d.ts.map +1 -1
- package/dist/ws-realtime.js +176 -63
- package/dist/ws-realtime.js.map +1 -1
- package/dist/ws-responses.cjs +109 -16
- package/dist/ws-responses.cjs.map +1 -1
- package/dist/ws-responses.d.cts +8 -12
- package/dist/ws-responses.d.cts.map +1 -1
- package/dist/ws-responses.d.ts +8 -12
- package/dist/ws-responses.d.ts.map +1 -1
- package/dist/ws-responses.js +111 -18
- package/dist/ws-responses.js.map +1 -1
- package/package.json +10 -2
- package/skills/write-fixtures/SKILL.md +179 -21
package/dist/recorder.cjs
CHANGED
|
@@ -386,7 +386,8 @@ async function proxyAndRecord(req, res, request, providerKey, pathname, fixtures
|
|
|
386
386
|
const contentType = upstreamHeaders["content-type"];
|
|
387
387
|
const ctString = pickContentType(contentType);
|
|
388
388
|
const isBinaryStream = ctString.toLowerCase().includes("application/vnd.amazon.eventstream");
|
|
389
|
-
const
|
|
389
|
+
const collapsedRaw = require_stream_collapse.collapseStreamingResponseWithResponsesTools(ctString, providerKey, isBinaryStream ? rawBuffer : upstreamBody, defaults.logger);
|
|
390
|
+
const collapsed = collapsedRaw && defaults.responsesTools !== "extended" ? require_stream_collapse.withoutResponsesToolFields(collapsedRaw) : collapsedRaw;
|
|
390
391
|
let fixtureResponse;
|
|
391
392
|
if (ctString.toLowerCase().startsWith("audio/") && upstreamStatus >= 200 && upstreamStatus < 300) {
|
|
392
393
|
const audioFormat = ctString.toLowerCase().replace("audio/", "").replace("mpeg", "mp3").split(";")[0].trim();
|
|
@@ -420,7 +421,7 @@ async function proxyAndRecord(req, res, request, providerKey, pathname, fixtures
|
|
|
420
421
|
...audioContentSpread,
|
|
421
422
|
...audioReasoningSpread
|
|
422
423
|
};
|
|
423
|
-
} else if (collapsed.content === "" && (!collapsed.toolCalls || collapsed.toolCalls.length === 0)) {
|
|
424
|
+
} else if (collapsed.content === "" && (!collapsed.toolCalls || collapsed.toolCalls.length === 0) && !collapsed.customToolCalls?.length) {
|
|
424
425
|
defaults.logger.warn("Stream collapse produced empty content — fixture may be incomplete");
|
|
425
426
|
const reasoningSpread = collapsed.reasoning ? { reasoning: collapsed.reasoning } : {};
|
|
426
427
|
const reasoningSignatureSpread = collapsed.reasoning && collapsed.reasoningSignature ? { reasoningSignature: collapsed.reasoningSignature } : {};
|
|
@@ -441,12 +442,27 @@ async function proxyAndRecord(req, res, request, providerKey, pathname, fixtures
|
|
|
441
442
|
logDroppedReasoningSignature(defaults.logger, collapsed.reasoning, collapsed.reasoningSignature);
|
|
442
443
|
const redactedThinkingSpread = collapsed.redactedThinking?.length ? { redactedThinking: collapsed.redactedThinking } : {};
|
|
443
444
|
const webSearchesSpread = collapsed.webSearches?.length ? { webSearches: collapsed.webSearches } : {};
|
|
444
|
-
if (collapsed.
|
|
445
|
-
const
|
|
445
|
+
if (collapsed.customToolCalls?.length) {
|
|
446
|
+
const toolCalls = (collapsed.toolCalls ?? []).map(sanitizeRecordedToolCall);
|
|
447
|
+
const customToolCalls = collapsed.customToolCalls.map((tc) => ({
|
|
446
448
|
...tc,
|
|
447
449
|
name: tc.name ?? "",
|
|
448
|
-
|
|
450
|
+
input: tc.input ?? ""
|
|
449
451
|
}));
|
|
452
|
+
const orderSpread = collapsed.responsesBlocks?.length ? { responsesBlocks: collapsed.responsesBlocks } : collapsed.blocks?.length ? { blocks: collapsed.blocks } : {};
|
|
453
|
+
fixtureResponse = {
|
|
454
|
+
...collapsed.content ? { content: collapsed.content } : {},
|
|
455
|
+
toolCalls,
|
|
456
|
+
customToolCalls,
|
|
457
|
+
...orderSpread,
|
|
458
|
+
...reasoningSpread,
|
|
459
|
+
...reasoningSignatureSpread,
|
|
460
|
+
...redactedThinkingSpread,
|
|
461
|
+
...webSearchesSpread,
|
|
462
|
+
...usageSpread
|
|
463
|
+
};
|
|
464
|
+
} else if (collapsed.toolCalls && collapsed.toolCalls.length > 0) {
|
|
465
|
+
const sanitizedToolCalls = collapsed.toolCalls.map(sanitizeRecordedToolCall);
|
|
450
466
|
if (collapsed.content) {
|
|
451
467
|
const blocksSpread = collapsed.blocks?.length ? { blocks: collapsed.blocks } : {};
|
|
452
468
|
fixtureResponse = {
|
|
@@ -809,6 +825,14 @@ function makeUpstreamRequest(target, headers, body, clientRes, method = "POST",
|
|
|
809
825
|
function logDroppedReasoningSignature(logger, reasoning, reasoningSignature) {
|
|
810
826
|
if (reasoningSignature && !reasoning) logger?.warn("Dropping captured reasoningSignature — no plaintext reasoning to attach it to");
|
|
811
827
|
}
|
|
828
|
+
/** Sanitize a collapsed function call before it is persisted: string `name` and `arguments`. */
|
|
829
|
+
function sanitizeRecordedToolCall(tc) {
|
|
830
|
+
return {
|
|
831
|
+
...tc,
|
|
832
|
+
name: tc.name ?? "",
|
|
833
|
+
arguments: tc.arguments ?? "{}"
|
|
834
|
+
};
|
|
835
|
+
}
|
|
812
836
|
/**
|
|
813
837
|
* Coerce a tool call's `arguments` field into the string the fixture contract
|
|
814
838
|
* requires (types.ts `ToolCall.arguments: string`). When the upstream omits the
|
|
@@ -1273,6 +1297,82 @@ function buildFixtureMetadata(request) {
|
|
|
1273
1297
|
if (request.tools && request.tools.length > 0) meta.toolsHash = node_crypto.createHash("sha256").update(JSON.stringify(request.tools)).digest("hex").slice(0, 8);
|
|
1274
1298
|
return Object.keys(meta).length > 0 ? meta : void 0;
|
|
1275
1299
|
}
|
|
1300
|
+
/**
|
|
1301
|
+
* MR11: read-merge-validate-write one service fakes file atomically (temp +
|
|
1302
|
+
* rename, 0o600). Synchronous, so writes to one path never interleave in this
|
|
1303
|
+
* process. Keeps unknown top-level keys (fakes:F9). `validate` returns a
|
|
1304
|
+
* problem text, or null when the whole merged file is valid. Logs RL4 on a
|
|
1305
|
+
* write; a failure is returned, never logged here (the caller logs RL1 with
|
|
1306
|
+
* its own context).
|
|
1307
|
+
*/
|
|
1308
|
+
function persistServiceFakes(opts) {
|
|
1309
|
+
const { filepath, merge, validate, logger } = opts;
|
|
1310
|
+
let existing = null;
|
|
1311
|
+
let text = null;
|
|
1312
|
+
try {
|
|
1313
|
+
text = node_fs.readFileSync(filepath, "utf-8");
|
|
1314
|
+
} catch (err) {
|
|
1315
|
+
if (err.code !== "ENOENT") return {
|
|
1316
|
+
kind: "failed",
|
|
1317
|
+
stage: "write",
|
|
1318
|
+
error: err instanceof Error ? err.message : "Unknown filesystem error"
|
|
1319
|
+
};
|
|
1320
|
+
}
|
|
1321
|
+
if (text !== null) {
|
|
1322
|
+
let parsed;
|
|
1323
|
+
try {
|
|
1324
|
+
parsed = JSON.parse(text);
|
|
1325
|
+
} catch {
|
|
1326
|
+
return {
|
|
1327
|
+
kind: "failed",
|
|
1328
|
+
stage: "read",
|
|
1329
|
+
error: `${filepath} is not valid JSON`
|
|
1330
|
+
};
|
|
1331
|
+
}
|
|
1332
|
+
if (parsed === null || typeof parsed !== "object" || Array.isArray(parsed)) return {
|
|
1333
|
+
kind: "failed",
|
|
1334
|
+
stage: "read",
|
|
1335
|
+
error: `${filepath} is not a JSON object`
|
|
1336
|
+
};
|
|
1337
|
+
existing = parsed;
|
|
1338
|
+
}
|
|
1339
|
+
const content = merge(existing);
|
|
1340
|
+
const problem = validate(content);
|
|
1341
|
+
if (problem !== null) return {
|
|
1342
|
+
kind: "failed",
|
|
1343
|
+
stage: "validate",
|
|
1344
|
+
error: problem
|
|
1345
|
+
};
|
|
1346
|
+
let tmpPath;
|
|
1347
|
+
try {
|
|
1348
|
+
node_fs.mkdirSync(node_path.dirname(filepath), { recursive: true });
|
|
1349
|
+
const bytes = Buffer.from(JSON.stringify(content, null, 2), "utf-8");
|
|
1350
|
+
tmpPath = filepath + ".tmp." + node_crypto.randomUUID();
|
|
1351
|
+
node_fs.writeFileSync(tmpPath, bytes, {
|
|
1352
|
+
flag: "wx",
|
|
1353
|
+
mode: 384
|
|
1354
|
+
});
|
|
1355
|
+
node_fs.renameSync(tmpPath, filepath);
|
|
1356
|
+
tmpPath = void 0;
|
|
1357
|
+
logger.warn(`Response recorded → ${filepath}`);
|
|
1358
|
+
return {
|
|
1359
|
+
kind: "written",
|
|
1360
|
+
filepath,
|
|
1361
|
+
sha256: node_crypto.createHash("sha256").update(bytes).digest("hex"),
|
|
1362
|
+
content
|
|
1363
|
+
};
|
|
1364
|
+
} catch (err) {
|
|
1365
|
+
return {
|
|
1366
|
+
kind: "failed",
|
|
1367
|
+
stage: "write",
|
|
1368
|
+
error: err instanceof Error ? err.message : "Unknown filesystem error"
|
|
1369
|
+
};
|
|
1370
|
+
} finally {
|
|
1371
|
+
if (tmpPath) try {
|
|
1372
|
+
node_fs.unlinkSync(tmpPath);
|
|
1373
|
+
} catch {}
|
|
1374
|
+
}
|
|
1375
|
+
}
|
|
1276
1376
|
|
|
1277
1377
|
//#endregion
|
|
1278
1378
|
exports.DEFAULT_MAX_PROXY_BUFFER_BYTES = DEFAULT_MAX_PROXY_BUFFER_BYTES;
|
|
@@ -1282,6 +1382,7 @@ exports.buildFixtureMatch = buildFixtureMatch;
|
|
|
1282
1382
|
exports.buildForwardHeaders = buildForwardHeaders;
|
|
1283
1383
|
exports.clampTimeout = clampTimeout;
|
|
1284
1384
|
exports.persistFixture = persistFixture;
|
|
1385
|
+
exports.persistServiceFakes = persistServiceFakes;
|
|
1285
1386
|
exports.prepareEgressHeaders = prepareEgressHeaders;
|
|
1286
1387
|
exports.proxyAndRecord = proxyAndRecord;
|
|
1287
1388
|
exports.removeForwardHeader = removeForwardHeader;
|