@framers/agentos 0.13.65 → 0.13.67
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/api/generateText.d.ts +9 -2
- package/dist/api/generateText.d.ts.map +1 -1
- package/dist/api/generateText.js +35 -2
- package/dist/api/generateText.js.map +1 -1
- package/dist/api/runtime/completionGateway.d.ts +36 -4
- package/dist/api/runtime/completionGateway.d.ts.map +1 -1
- package/dist/api/runtime/completionGateway.js +32 -3
- package/dist/api/runtime/completionGateway.js.map +1 -1
- package/dist/api/runtime/strategies/hierarchical.js +8 -8
- package/dist/api/runtime/strategies/hierarchical.js.map +1 -1
- package/dist/api/runtime/strategies/parallel.d.ts.map +1 -1
- package/dist/api/runtime/strategies/parallel.js +11 -10
- package/dist/api/runtime/strategies/parallel.js.map +1 -1
- package/dist/api/runtime/strategies/sequential.d.ts.map +1 -1
- package/dist/api/runtime/strategies/sequential.js +19 -22
- package/dist/api/runtime/strategies/sequential.js.map +1 -1
- package/dist/api/runtime/strategies/shared.d.ts +53 -0
- package/dist/api/runtime/strategies/shared.d.ts.map +1 -1
- package/dist/api/runtime/strategies/shared.js +63 -5
- package/dist/api/runtime/strategies/shared.js.map +1 -1
- package/dist/api/streamText.d.ts.map +1 -1
- package/dist/api/streamText.js +1 -0
- package/dist/api/streamText.js.map +1 -1
- package/dist/api/types.d.ts +7 -4
- package/dist/api/types.d.ts.map +1 -1
- package/dist/api/types.js.map +1 -1
- package/dist/cognition/emergent/EmergentAgentForge.d.ts.map +1 -1
- package/dist/cognition/emergent/EmergentAgentForge.js +5 -4
- package/dist/cognition/emergent/EmergentAgentForge.js.map +1 -1
- package/dist/cognition/emergent/EmergentCapabilityEngine.d.ts +2 -0
- package/dist/cognition/emergent/EmergentCapabilityEngine.d.ts.map +1 -1
- package/dist/cognition/emergent/EmergentCapabilityEngine.js +10 -0
- package/dist/cognition/emergent/EmergentCapabilityEngine.js.map +1 -1
- package/dist/cognition/emergent/ForgeToolMetaTool.d.ts +4 -1
- package/dist/cognition/emergent/ForgeToolMetaTool.d.ts.map +1 -1
- package/dist/cognition/emergent/ForgeToolMetaTool.js +14 -1
- package/dist/cognition/emergent/ForgeToolMetaTool.js.map +1 -1
- package/dist/cognition/emergent/SkillExporter.d.ts +44 -3
- package/dist/cognition/emergent/SkillExporter.d.ts.map +1 -1
- package/dist/cognition/emergent/SkillExporter.js +124 -18
- package/dist/cognition/emergent/SkillExporter.js.map +1 -1
- package/dist/cognition/emergent/ToolName.d.ts +63 -0
- package/dist/cognition/emergent/ToolName.d.ts.map +1 -0
- package/dist/cognition/emergent/ToolName.js +79 -0
- package/dist/cognition/emergent/ToolName.js.map +1 -0
- package/dist/cognition/emergent/index.d.ts +3 -1
- package/dist/cognition/emergent/index.d.ts.map +1 -1
- package/dist/cognition/emergent/index.js +2 -1
- package/dist/cognition/emergent/index.js.map +1 -1
- package/dist/cognition/memory/io/MarkdownExporter.d.ts +27 -17
- package/dist/cognition/memory/io/MarkdownExporter.d.ts.map +1 -1
- package/dist/cognition/memory/io/MarkdownExporter.js +101 -88
- package/dist/cognition/memory/io/MarkdownExporter.js.map +1 -1
- package/dist/cognition/memory/io/facade/Memory.d.ts +3 -2
- package/dist/cognition/memory/io/facade/Memory.d.ts.map +1 -1
- package/dist/cognition/memory/io/facade/Memory.js +3 -2
- package/dist/cognition/memory/io/facade/Memory.js.map +1 -1
- package/dist/cognition/memory/io/facade/types.d.ts +10 -6
- package/dist/cognition/memory/io/facade/types.d.ts.map +1 -1
- package/dist/cognition/substrate/GMI.d.ts.map +1 -1
- package/dist/cognition/substrate/GMI.js +2 -1
- package/dist/cognition/substrate/GMI.js.map +1 -1
- package/dist/cognition/substrate/memory/wiki/WikiPageId.d.ts.map +1 -1
- package/dist/cognition/substrate/memory/wiki/WikiPageId.js +2 -10
- package/dist/cognition/substrate/memory/wiki/WikiPageId.js.map +1 -1
- package/dist/core/utils/linkFreeWrite.d.ts +66 -0
- package/dist/core/utils/linkFreeWrite.d.ts.map +1 -0
- package/dist/core/utils/linkFreeWrite.js +140 -0
- package/dist/core/utils/linkFreeWrite.js.map +1 -0
- package/dist/core/utils/pathName.d.ts +11 -4
- package/dist/core/utils/pathName.d.ts.map +1 -1
- package/dist/core/utils/pathName.js +17 -4
- package/dist/core/utils/pathName.js.map +1 -1
- package/dist/safety/guardrails/IGuardrailService.d.ts +43 -9
- package/dist/safety/guardrails/IGuardrailService.d.ts.map +1 -1
- package/dist/safety/guardrails/ParallelGuardrailDispatcher.d.ts +7 -1
- package/dist/safety/guardrails/ParallelGuardrailDispatcher.d.ts.map +1 -1
- package/dist/safety/guardrails/ParallelGuardrailDispatcher.js +82 -2
- package/dist/safety/guardrails/ParallelGuardrailDispatcher.js.map +1 -1
- package/dist/safety/guardrails/guardrailDispatcher.d.ts +3 -1
- package/dist/safety/guardrails/guardrailDispatcher.d.ts.map +1 -1
- package/dist/safety/guardrails/guardrailDispatcher.js +3 -1
- package/dist/safety/guardrails/guardrailDispatcher.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Writing below a folder whose contents another process may change: folders are made one name at a
|
|
3
|
+
* time and never through a link, and a file is opened for writing never through a link, never waiting, and only
|
|
4
|
+
* when it is a regular file with one name.
|
|
5
|
+
*
|
|
6
|
+
* The Markdown and Obsidian memory exporters write a file per trace below an export folder, and the skill exporter
|
|
7
|
+
* writes a tool's files below a skills folder. Whoever can write below such a folder could put there a link that
|
|
8
|
+
* leads elsewhere, a second name for a file elsewhere, or a named pipe that holds a writer up, so both write
|
|
9
|
+
* through the functions here. The folder itself is the caller's and may be a link. The checks run as each folder
|
|
10
|
+
* is made and each file opened; Node has no `openat`, so a process that swaps a folder for a link between a check
|
|
11
|
+
* and the write is outside what they stop.
|
|
12
|
+
*
|
|
13
|
+
* @module agentos/core/utils/linkFreeWrite
|
|
14
|
+
*/
|
|
15
|
+
import fs from 'node:fs/promises';
|
|
16
|
+
import { constants as fsConstants } from 'node:fs';
|
|
17
|
+
import path from 'node:path';
|
|
18
|
+
/**
|
|
19
|
+
* The flags a file is opened with: for writing, made when missing, and, where the platform has each flag (Windows
|
|
20
|
+
* has neither), never through a symbolic link in the file's own place (`O_NOFOLLOW`) and never waiting
|
|
21
|
+
* (`O_NONBLOCK`). Without `O_NONBLOCK`, an open for writing of a named pipe that no process reads waits for a
|
|
22
|
+
* reader that may never come. The file is not emptied by the open: the caller empties it once the open file shows
|
|
23
|
+
* it is a regular file with no second name.
|
|
24
|
+
*/
|
|
25
|
+
const OPEN_FLAGS = fsConstants.O_WRONLY |
|
|
26
|
+
fsConstants.O_CREAT |
|
|
27
|
+
(fsConstants.O_NOFOLLOW !== undefined ? fsConstants.O_NOFOLLOW : 0) |
|
|
28
|
+
(fsConstants.O_NONBLOCK !== undefined ? fsConstants.O_NONBLOCK : 0);
|
|
29
|
+
/** The codes an open with `O_NOFOLLOW` fails with when a symbolic link holds the file's place (EMLINK on FreeBSD). */
|
|
30
|
+
const LINK_OPEN_CODES = new Set(['ELOOP', 'EMLINK']);
|
|
31
|
+
/**
|
|
32
|
+
* The codes an open for writing fails with when something other than a regular file holds the file's place:
|
|
33
|
+
* EISDIR for a folder; ENXIO for a named pipe that no process reads (under `O_NONBLOCK`), a device with no driver,
|
|
34
|
+
* or, on Linux, a socket; EOPNOTSUPP for a socket on macOS.
|
|
35
|
+
*/
|
|
36
|
+
const SPECIAL_OPEN_CODES = new Set(['EISDIR', 'ENXIO', 'EOPNOTSUPP']);
|
|
37
|
+
/**
|
|
38
|
+
* Make the folders `relative` names under `root`, one name at a time, and stop at a link. A folder this makes is
|
|
39
|
+
* never a link, so a file written into it stays under `root`.
|
|
40
|
+
*
|
|
41
|
+
* @param root - The folder the others are made in. It may itself be a link.
|
|
42
|
+
* @param relative - The folders' path under `root`.
|
|
43
|
+
* @returns True when every folder is in place and none of them is a link.
|
|
44
|
+
*/
|
|
45
|
+
export async function makeFoldersOutsideLinks(root, relative) {
|
|
46
|
+
let dir = root;
|
|
47
|
+
for (const name of relative.split(path.sep).filter((part) => part.length > 0)) {
|
|
48
|
+
dir = path.join(dir, name);
|
|
49
|
+
const entry = await lstatOrNull(dir);
|
|
50
|
+
if (entry) {
|
|
51
|
+
if (entry.isSymbolicLink())
|
|
52
|
+
return false;
|
|
53
|
+
continue;
|
|
54
|
+
}
|
|
55
|
+
try {
|
|
56
|
+
await fs.mkdir(dir);
|
|
57
|
+
}
|
|
58
|
+
catch (err) {
|
|
59
|
+
if (err.code !== 'EEXIST')
|
|
60
|
+
throw err;
|
|
61
|
+
// Something was put there since the look: look again.
|
|
62
|
+
if ((await fs.lstat(dir)).isSymbolicLink())
|
|
63
|
+
return false;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
return true;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Look at a file's place without opening it. A caller that writes several files, all of them or none, looks at
|
|
70
|
+
* every place before it opens any file, so a refusal makes no file. The look does not see a change made after it;
|
|
71
|
+
* {@link openFileOutsideLinks} checks again.
|
|
72
|
+
*
|
|
73
|
+
* @param file - Absolute path of the file.
|
|
74
|
+
* @returns `link` when a symbolic link holds the place or the file there has a second name, `special` when
|
|
75
|
+
* something other than a regular file holds it, or null when the place is free or holds a regular file with one
|
|
76
|
+
* name.
|
|
77
|
+
* @throws Any error the look meets other than a missing file.
|
|
78
|
+
*/
|
|
79
|
+
export async function lookOutsideLinks(file) {
|
|
80
|
+
const entry = await lstatOrNull(file);
|
|
81
|
+
if (entry === null)
|
|
82
|
+
return null;
|
|
83
|
+
if (entry.isSymbolicLink())
|
|
84
|
+
return 'link';
|
|
85
|
+
if (!entry.isFile())
|
|
86
|
+
return 'special';
|
|
87
|
+
return entry.nlink > 1 ? 'link' : null;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Open a file for writing, in a folder already made, and check what the open reached. A symbolic link in the
|
|
91
|
+
* file's place is refused before the open, and where the platform has `O_NOFOLLOW` the open refuses one put there
|
|
92
|
+
* since. A folder fails the open, and where the platform has `O_NONBLOCK` so does a named pipe that no process
|
|
93
|
+
* reads, at once. An open file that is not a regular file (a named pipe that a process reads, a device) is refused,
|
|
94
|
+
* and so is a file with a second name (a hard link), which is the same file as that name and may lie outside the
|
|
95
|
+
* folder. Nothing is emptied or written here; a refused file is closed.
|
|
96
|
+
*
|
|
97
|
+
* @param file - Absolute path of the file.
|
|
98
|
+
* @returns The open file and its identity, or the refusal.
|
|
99
|
+
* @throws Any other error the look or the open meets.
|
|
100
|
+
*/
|
|
101
|
+
export async function openFileOutsideLinks(file) {
|
|
102
|
+
if ((await lstatOrNull(file))?.isSymbolicLink())
|
|
103
|
+
return 'link';
|
|
104
|
+
const handle = await fs.open(file, OPEN_FLAGS).catch((err) => {
|
|
105
|
+
const code = String(err.code);
|
|
106
|
+
if (LINK_OPEN_CODES.has(code))
|
|
107
|
+
return 'link';
|
|
108
|
+
if (SPECIAL_OPEN_CODES.has(code))
|
|
109
|
+
return 'special';
|
|
110
|
+
throw err;
|
|
111
|
+
});
|
|
112
|
+
if (typeof handle === 'string')
|
|
113
|
+
return handle;
|
|
114
|
+
let handedOver = false;
|
|
115
|
+
try {
|
|
116
|
+
const stat = await handle.stat({ bigint: true });
|
|
117
|
+
if (!stat.isFile())
|
|
118
|
+
return 'special';
|
|
119
|
+
if (stat.nlink > 1n)
|
|
120
|
+
return 'link';
|
|
121
|
+
handedOver = true;
|
|
122
|
+
return { handle, identity: stat.ino === 0n ? null : `${stat.dev}:${stat.ino}` };
|
|
123
|
+
}
|
|
124
|
+
finally {
|
|
125
|
+
if (!handedOver)
|
|
126
|
+
await handle.close();
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
/** The entry at `file` itself, a link not followed, or null when there is none. */
|
|
130
|
+
async function lstatOrNull(file) {
|
|
131
|
+
try {
|
|
132
|
+
return await fs.lstat(file);
|
|
133
|
+
}
|
|
134
|
+
catch (err) {
|
|
135
|
+
if (err.code === 'ENOENT')
|
|
136
|
+
return null;
|
|
137
|
+
throw err;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
//# sourceMappingURL=linkFreeWrite.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"linkFreeWrite.js","sourceRoot":"","sources":["../../../src/core/utils/linkFreeWrite.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
* @fileoverview The rule for a file or folder name built from data, and the check that a path built from such
|
|
3
3
|
* names lies inside its folder.
|
|
4
4
|
*
|
|
5
|
-
* The memory wiki builds a page's path from its id,
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* folder it is written to.
|
|
5
|
+
* The memory wiki builds a page's path from its id, the Markdown and Obsidian memory exporters build a trace's
|
|
6
|
+
* path from its scope, type and id, and the skill exporter builds a forged tool's folder from its name. Those
|
|
7
|
+
* values come from files, imports and models, so every name taken from them is checked against one rule here,
|
|
8
|
+
* and every path built from them is checked to lie inside the folder it is written to.
|
|
9
9
|
*
|
|
10
10
|
* @module agentos/core/utils/pathName
|
|
11
11
|
*/
|
|
@@ -29,6 +29,13 @@ export declare const MAX_PATH_NAME_BYTES = 200;
|
|
|
29
29
|
* - `'length'`: it holds more than {@link MAX_PATH_NAME_BYTES} bytes in UTF-8.
|
|
30
30
|
*/
|
|
31
31
|
export type PathNameProblem = 'empty' | 'character' | 'dot' | 'edge' | 'length';
|
|
32
|
+
/**
|
|
33
|
+
* A refused value as an error message shows it: a string quoted and escaped, cut to its first 64 characters, or
|
|
34
|
+
* the type of any other value.
|
|
35
|
+
*
|
|
36
|
+
* @param value - The refused value.
|
|
37
|
+
*/
|
|
38
|
+
export declare function describeRefusedName(value: unknown): string;
|
|
32
39
|
/**
|
|
33
40
|
* True when the character whose UTF-16 code is `code` may appear neither in a name nor anywhere in a path whose
|
|
34
41
|
* names are joined with `/`: a backslash, a colon, one of `"`, `*`, `<`, `>`, `?` and `|`, or a control character
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pathName.d.ts","sourceRoot":"","sources":["../../../src/core/utils/pathName.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAEvC;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,WAAW,GAAG,KAAK,GAAG,MAAM,GAAG,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"pathName.d.ts","sourceRoot":"","sources":["../../../src/core/utils/pathName.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,MAAM,CAAC;AAEvC;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,WAAW,GAAG,KAAK,GAAG,MAAM,GAAG,QAAQ,CAAC;AAmBhF;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAK1D;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE5D;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAWpE;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,SAAS,MAAM,EAAE,EAC3B,KAAK,GAAE,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,GAAG,KAAK,CAAQ,GACvD,MAAM,GAAG,IAAI,CAKf"}
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
* @fileoverview The rule for a file or folder name built from data, and the check that a path built from such
|
|
3
3
|
* names lies inside its folder.
|
|
4
4
|
*
|
|
5
|
-
* The memory wiki builds a page's path from its id,
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* folder it is written to.
|
|
5
|
+
* The memory wiki builds a page's path from its id, the Markdown and Obsidian memory exporters build a trace's
|
|
6
|
+
* path from its scope, type and id, and the skill exporter builds a forged tool's folder from its name. Those
|
|
7
|
+
* values come from files, imports and models, so every name taken from them is checked against one rule here,
|
|
8
|
+
* and every path built from them is checked to lie inside the folder it is written to.
|
|
9
9
|
*
|
|
10
10
|
* @module agentos/core/utils/pathName
|
|
11
11
|
*/
|
|
@@ -25,6 +25,19 @@ const COLON = 0x3a;
|
|
|
25
25
|
/** The codes of `"`, `*`, `<`, `>`, `?` and `|`, which Windows refuses in a name. */
|
|
26
26
|
const WINDOWS_RESERVED = new Set([0x22, 0x2a, 0x3c, 0x3e, 0x3f, 0x7c]);
|
|
27
27
|
const utf8 = new TextEncoder();
|
|
28
|
+
/** The most characters of a refused name that an error message shows. */
|
|
29
|
+
const SHOWN_NAME_CHARACTERS = 64;
|
|
30
|
+
/**
|
|
31
|
+
* A refused value as an error message shows it: a string quoted and escaped, cut to its first 64 characters, or
|
|
32
|
+
* the type of any other value.
|
|
33
|
+
*
|
|
34
|
+
* @param value - The refused value.
|
|
35
|
+
*/
|
|
36
|
+
export function describeRefusedName(value) {
|
|
37
|
+
if (typeof value !== 'string')
|
|
38
|
+
return `of type ${value === null ? 'null' : typeof value}`;
|
|
39
|
+
return JSON.stringify(value.length > SHOWN_NAME_CHARACTERS ? `${value.slice(0, SHOWN_NAME_CHARACTERS)}...` : value);
|
|
40
|
+
}
|
|
28
41
|
/**
|
|
29
42
|
* True when the character whose UTF-16 code is `code` may appear neither in a name nor anywhere in a path whose
|
|
30
43
|
* names are joined with `/`: a backslash, a colon, one of `"`, `*`, `<`, `>`, `?` and `|`, or a control character
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pathName.js","sourceRoot":"","sources":["../../../src/core/utils/pathName.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAgBvC,yDAAyD;AACzD,MAAM,KAAK,GAAG,IAAI,CAAC;AAEnB,2DAA2D;AAC3D,MAAM,SAAS,GAAG,IAAI,CAAC;AAEvB,mGAAmG;AACnG,MAAM,KAAK,GAAG,IAAI,CAAC;AAEnB,qFAAqF;AACrF,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;AAEvE,MAAM,IAAI,GAAG,IAAI,WAAW,EAAE,CAAC;AAE/B;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAAY;IACjD,OAAO,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,KAAK,IAAI,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC7G,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC;IACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,IAAI,KAAK,KAAK,IAAI,sBAAsB,CAAC,IAAI,CAAC;YAAE,OAAO,WAAW,CAAC;IACzE,CAAC;IACD,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IACvC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,MAAM,CAAC;IACpF,6GAA6G;IAC7G,IAAI,IAAI,CAAC,MAAM,GAAG,mBAAmB,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,GAAG,mBAAmB;QAAE,OAAO,QAAQ,CAAC;IAC7G,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,mBAAmB,CACjC,IAAY,EACZ,QAA2B,EAC3B,QAAoD,IAAI;IAExD,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC;IACxE,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;AAC/C,CAAC"}
|
|
1
|
+
{"version":3,"file":"pathName.js","sourceRoot":"","sources":["../../../src/core/utils/pathName.ts"],"names":[],"mappings":"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"}
|
|
@@ -167,9 +167,11 @@ export interface GuardrailInputPayload {
|
|
|
167
167
|
* Every guardrail is called for each chunk of the turn's output stream that
|
|
168
168
|
* carries `isFinal: true` (the FINAL_RESPONSE, an ERROR the turn yields). With
|
|
169
169
|
* {@link GuardrailConfig.evaluateStreamingChunks} set, it is also called for
|
|
170
|
-
* each TEXT_DELTA chunk (real-time filtering)
|
|
171
|
-
*
|
|
172
|
-
*
|
|
170
|
+
* each TEXT_DELTA chunk (real-time filtering), and with
|
|
171
|
+
* {@link GuardrailConfig.evaluateToolCalls} set, for each TOOL_CALL_REQUEST
|
|
172
|
+
* chunk. Other chunks are not evaluated, and neither is the ERROR that
|
|
173
|
+
* `processRequest()` yields from its own `catch` or for an input guardrail's
|
|
174
|
+
* BLOCK.
|
|
173
175
|
*/
|
|
174
176
|
export interface GuardrailOutputPayload {
|
|
175
177
|
/** Conversational context for policy decisions */
|
|
@@ -229,6 +231,36 @@ export interface GuardrailConfig {
|
|
|
229
231
|
* @default false
|
|
230
232
|
*/
|
|
231
233
|
evaluateStreamingChunks?: boolean;
|
|
234
|
+
/**
|
|
235
|
+
* Evaluate the tool calls a turn requests.
|
|
236
|
+
*
|
|
237
|
+
* When `true`, `evaluateOutput` also receives each TOOL_CALL_REQUEST chunk
|
|
238
|
+
* of a guarded output stream, as the stream carries it: `chunk.toolCalls`
|
|
239
|
+
* lists each call's `id`, `name` and parsed `arguments`. The verdict
|
|
240
|
+
* applies as it does to text:
|
|
241
|
+
* - BLOCK ends the stream with the guard's verdict (the error chunk, or the
|
|
242
|
+
* final response holding `replacementText`) in place of the chunk, so the
|
|
243
|
+
* stream never hands the host an actionable call
|
|
244
|
+
* (`executionMode: 'external'`) to execute. The pause the runtime saved
|
|
245
|
+
* for that call before the chunk went out stays in
|
|
246
|
+
* `getPendingExternalToolRequest()` until the conversation's next turn
|
|
247
|
+
* ends.
|
|
248
|
+
* - SANITIZE cannot rewrite a tool call; it is applied as a BLOCK that keeps
|
|
249
|
+
* the guard's reason and reason code.
|
|
250
|
+
* - FLAG and ALLOW pass the chunk on with the evaluation in its
|
|
251
|
+
* `metadata.guardrail.output`.
|
|
252
|
+
*
|
|
253
|
+
* A call the runtime executes itself (`executionMode: 'internal'`) does not
|
|
254
|
+
* wait for the output guards: a block ends the stream but does not stop
|
|
255
|
+
* that call.
|
|
256
|
+
*
|
|
257
|
+
* When `false` (default), the guard never receives a tool-call chunk. The
|
|
258
|
+
* flag is opt-in because a guard written for text may read any chunk it is
|
|
259
|
+
* given as text.
|
|
260
|
+
*
|
|
261
|
+
* @default false
|
|
262
|
+
*/
|
|
263
|
+
evaluateToolCalls?: boolean;
|
|
232
264
|
/**
|
|
233
265
|
* Maximum streaming evaluations per guarded stream (the turn's stream and
|
|
234
266
|
* each continuation stream after a tool result count on their own).
|
|
@@ -413,11 +445,12 @@ export interface IGuardrailService {
|
|
|
413
445
|
*
|
|
414
446
|
* Called for each chunk of a guarded output stream (the turn's, and the
|
|
415
447
|
* continuation after an external tool result) that carries
|
|
416
|
-
* `isFinal: true` (the FINAL_RESPONSE, an ERROR the turn yields)
|
|
417
|
-
* {@link GuardrailConfig.evaluateStreamingChunks} is
|
|
418
|
-
*
|
|
419
|
-
*
|
|
420
|
-
* `processRequest()` yields from its own
|
|
448
|
+
* `isFinal: true` (the FINAL_RESPONSE, an ERROR the turn yields), for each
|
|
449
|
+
* TEXT_DELTA chunk when {@link GuardrailConfig.evaluateStreamingChunks} is
|
|
450
|
+
* set (real-time filtering), and for each TOOL_CALL_REQUEST chunk when
|
|
451
|
+
* {@link GuardrailConfig.evaluateToolCalls} is set. Other chunks are not
|
|
452
|
+
* passed to it, nor is the ERROR that `processRequest()` yields from its own
|
|
453
|
+
* `catch`.
|
|
421
454
|
*
|
|
422
455
|
* @param payload - Response chunk and context to evaluate
|
|
423
456
|
* @returns Evaluation result, or `null` to allow without action
|
|
@@ -426,7 +459,8 @@ export interface IGuardrailService {
|
|
|
426
459
|
* - Return `BLOCK` to immediately terminate the stream with an error chunk, or
|
|
427
460
|
* with a FINAL_RESPONSE holding `replacementText` when the result carries a
|
|
428
461
|
* non-empty one
|
|
429
|
-
* - Return `SANITIZE` with `modifiedText` to redact/modify content
|
|
462
|
+
* - Return `SANITIZE` with `modifiedText` to redact/modify content; on a
|
|
463
|
+
* TOOL_CALL_REQUEST chunk it is applied as `BLOCK`
|
|
430
464
|
* - Streaming evaluation adds latency; use only when real-time filtering is required
|
|
431
465
|
*/
|
|
432
466
|
evaluateOutput?(payload: GuardrailOutputPayload): Promise<GuardrailEvaluationResult | null>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IGuardrailService.d.ts","sourceRoot":"","sources":["../../../src/safety/guardrails/IGuardrailService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAEvE;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,oBAAY,eAAe;IACzB;;;OAGG;IACH,KAAK,UAAU;IAEf;;;OAGG;IACH,IAAI,SAAS;IAEb;;;;OAIG;IACH,QAAQ,aAAa;IAErB;;;;OAIG;IACH,KAAK,UAAU;CAChB;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,gBAAgB;IAC/B,wDAAwD;IACxD,MAAM,EAAE,MAAM,CAAC;IAEf,iCAAiC;IACjC,SAAS,EAAE,MAAM,CAAC;IAElB,oDAAoD;IACpD,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,qCAAqC;IACrC,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,mDAAmD;IACnD,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,kDAAkD;IAClD,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,WAAW,yBAAyB;IACxC,8DAA8D;IAC9D,MAAM,EAAE,eAAe,CAAC;IAExB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEnC;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE7B;;;;;OAKG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;GAMG;AACH,MAAM,WAAW,qBAAqB;IACpC,kDAAkD;IAClD,OAAO,EAAE,gBAAgB,CAAC;IAE1B,2CAA2C;IAC3C,KAAK,EAAE,YAAY,CAAC;CACrB;AAED
|
|
1
|
+
{"version":3,"file":"IGuardrailService.d.ts","sourceRoot":"","sources":["../../../src/safety/guardrails/IGuardrailService.ts"],"names":[],"mappings":"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"}
|
|
@@ -78,8 +78,14 @@ export declare class ParallelGuardrailDispatcher {
|
|
|
78
78
|
* Phase 2 runs final classifiers in parallel. All services with
|
|
79
79
|
* `evaluateOutput` participate in final evaluation.
|
|
80
80
|
*
|
|
81
|
+
* For each non-final TOOL_CALL_REQUEST chunk: the services whose config sets
|
|
82
|
+
* `evaluateToolCalls` run in parallel on the chunk as the stream carries it.
|
|
83
|
+
* A SANITIZE is applied as a BLOCK, since a tool call cannot be rewritten; a
|
|
84
|
+
* BLOCK ends the stream with the verdict in place of the chunk. Services
|
|
85
|
+
* without the flag never receive a tool-call chunk.
|
|
86
|
+
*
|
|
81
87
|
* A BLOCK in either phase terminates the stream immediately with an error
|
|
82
|
-
* chunk
|
|
88
|
+
* chunk, or with a final response holding the guard's `replacementText`.
|
|
83
89
|
*
|
|
84
90
|
* @param services - Array of guardrail services (already normalized)
|
|
85
91
|
* @param context - Conversational context for policy decisions
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParallelGuardrailDispatcher.d.ts","sourceRoot":"","sources":["../../../src/safety/guardrails/ParallelGuardrailDispatcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EACL,KAAK,eAAe,
|
|
1
|
+
{"version":3,"file":"ParallelGuardrailDispatcher.d.ts","sourceRoot":"","sources":["../../../src/safety/guardrails/ParallelGuardrailDispatcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EACL,KAAK,eAAe,EAKrB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAEL,KAAK,gBAAgB,EAErB,KAAK,iBAAiB,EACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,qBAAqB,EAAE,sBAAsB,EAA0B,MAAM,uBAAuB,CAAC;AAiLnH;;;;;GAKG;AACH,qBAAa,2BAA2B;IAKtC;;;;;;;;;;;;;;;;;;;;OAoBG;WACU,aAAa,CACxB,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,qBAAqB,CAAC;IA0IjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+BG;WACW,UAAU,CACtB,QAAQ,EAAE,iBAAiB,EAAE,EAC7B,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,cAAc,CAAC,eAAe,EAAE,IAAI,EAAE,SAAS,CAAC,EACxD,OAAO,EAAE,sBAAsB,GAC9B,cAAc,CAAC,eAAe,EAAE,IAAI,EAAE,SAAS,CAAC;CA2dpD"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AgentOSResponseChunkType, isActionableToolCallRequestChunk, } from '../../api/types/AgentOSResponse.js';
|
|
1
|
+
import { AgentOSResponseChunkType, isActionableToolCallRequestChunk, isToolCallRequestChunk, } from '../../api/types/AgentOSResponse.js';
|
|
2
2
|
import { GuardrailAction, } from './IGuardrailService.js';
|
|
3
3
|
import { serializeEvaluation, withGuardrailMetadata, createGuardrailBlockedStream, hasEvaluateOutput, } from './guardrailDispatcher.js';
|
|
4
4
|
// ---------------------------------------------------------------------------
|
|
@@ -112,6 +112,30 @@ function downgradePhase2Sanitize(evaluation, svcIndex) {
|
|
|
112
112
|
: 'SANITIZE downgraded to FLAG in parallel phase',
|
|
113
113
|
};
|
|
114
114
|
}
|
|
115
|
+
/**
|
|
116
|
+
* A guard cannot rewrite a tool call: a SANITIZE on a TOOL_CALL_REQUEST chunk
|
|
117
|
+
* is applied as a BLOCK that keeps the guard's reason, so the call never goes
|
|
118
|
+
* out in a form no guard approved.
|
|
119
|
+
*
|
|
120
|
+
* @param evaluation - The raw evaluation of a tool-call chunk
|
|
121
|
+
* @param svcIndex - Registration index for logging
|
|
122
|
+
* @returns The evaluation, with a SANITIZE turned into a BLOCK
|
|
123
|
+
*/
|
|
124
|
+
function sanitizeOfToolCallAsBlock(evaluation, svcIndex) {
|
|
125
|
+
if (evaluation.action !== GuardrailAction.SANITIZE) {
|
|
126
|
+
return evaluation;
|
|
127
|
+
}
|
|
128
|
+
console.warn(`[AgentOS][Guardrails] Guardrail at index ${svcIndex} returned SANITIZE for a tool call — ` +
|
|
129
|
+
'a tool call cannot be rewritten, so the call is blocked.');
|
|
130
|
+
const { modifiedText: _modifiedText, ...rest } = evaluation;
|
|
131
|
+
return {
|
|
132
|
+
...rest,
|
|
133
|
+
action: GuardrailAction.BLOCK,
|
|
134
|
+
reason: evaluation.reason
|
|
135
|
+
? `${evaluation.reason} [SANITIZE of a tool call applied as BLOCK]`
|
|
136
|
+
: 'SANITIZE of a tool call applied as BLOCK: a tool call cannot be rewritten',
|
|
137
|
+
};
|
|
138
|
+
}
|
|
115
139
|
// ---------------------------------------------------------------------------
|
|
116
140
|
// ParallelGuardrailDispatcher
|
|
117
141
|
// ---------------------------------------------------------------------------
|
|
@@ -265,8 +289,14 @@ export class ParallelGuardrailDispatcher {
|
|
|
265
289
|
* Phase 2 runs final classifiers in parallel. All services with
|
|
266
290
|
* `evaluateOutput` participate in final evaluation.
|
|
267
291
|
*
|
|
292
|
+
* For each non-final TOOL_CALL_REQUEST chunk: the services whose config sets
|
|
293
|
+
* `evaluateToolCalls` run in parallel on the chunk as the stream carries it.
|
|
294
|
+
* A SANITIZE is applied as a BLOCK, since a tool call cannot be rewritten; a
|
|
295
|
+
* BLOCK ends the stream with the verdict in place of the chunk. Services
|
|
296
|
+
* without the flag never receive a tool-call chunk.
|
|
297
|
+
*
|
|
268
298
|
* A BLOCK in either phase terminates the stream immediately with an error
|
|
269
|
-
* chunk
|
|
299
|
+
* chunk, or with a final response holding the guard's `replacementText`.
|
|
270
300
|
*
|
|
271
301
|
* @param services - Array of guardrail services (already normalized)
|
|
272
302
|
* @param context - Conversational context for policy decisions
|
|
@@ -288,11 +318,16 @@ export class ParallelGuardrailDispatcher {
|
|
|
288
318
|
const finalSanitizers = [];
|
|
289
319
|
/** Final classifiers: Phase 2 for isFinal chunks */
|
|
290
320
|
const finalParallel = [];
|
|
321
|
+
/** Tool-call guards: the services that opted in to TOOL_CALL_REQUEST chunks */
|
|
322
|
+
const toolCallGuards = [];
|
|
291
323
|
for (let i = 0; i < services.length; i++) {
|
|
292
324
|
const svc = services[i];
|
|
293
325
|
if (!hasEvaluateOutput(svc)) {
|
|
294
326
|
continue;
|
|
295
327
|
}
|
|
328
|
+
if (svc.config?.evaluateToolCalls === true) {
|
|
329
|
+
toolCallGuards.push({ svc, registrationIndex: i });
|
|
330
|
+
}
|
|
296
331
|
const isStreaming = svc.config?.evaluateStreamingChunks === true;
|
|
297
332
|
const isSanitizer = svc.config?.canSanitize === true;
|
|
298
333
|
if (isStreaming && isSanitizer) {
|
|
@@ -419,6 +454,35 @@ export class ParallelGuardrailDispatcher {
|
|
|
419
454
|
}
|
|
420
455
|
return { outcome: 'pass', chunk: workingChunk, sanitized, worst: worstAction(outputEvaluations) };
|
|
421
456
|
};
|
|
457
|
+
/**
|
|
458
|
+
* The tool-call guards over one TOOL_CALL_REQUEST chunk, in parallel.
|
|
459
|
+
* Returns the first BLOCK by registration order (a SANITIZE counts as
|
|
460
|
+
* one), or the chunk with every evaluation attached.
|
|
461
|
+
*/
|
|
462
|
+
const evaluateToolCall = async (chunkIn) => {
|
|
463
|
+
const results = await Promise.allSettled(toolCallGuards.map(({ svc }) => callWithTimeout(() => svc.evaluateOutput({ context, chunk: chunkIn, ragSources: currentRagSources }), svc.config?.timeoutMs, svc.config?.failClosed)));
|
|
464
|
+
const outputEvaluations = [];
|
|
465
|
+
for (let j = 0; j < results.length; j++) {
|
|
466
|
+
const result = results[j];
|
|
467
|
+
if (result.status === 'rejected') {
|
|
468
|
+
console.warn('[AgentOS][Guardrails] Tool-call evaluateOutput rejected.', result.reason);
|
|
469
|
+
continue;
|
|
470
|
+
}
|
|
471
|
+
if (!result.value) {
|
|
472
|
+
continue;
|
|
473
|
+
}
|
|
474
|
+
const { svc, registrationIndex } = toolCallGuards[j];
|
|
475
|
+
const evaluation = stampGuardrailId(sanitizeOfToolCallAsBlock(result.value, registrationIndex), svc);
|
|
476
|
+
outputEvaluations.push(evaluation);
|
|
477
|
+
if (evaluation.action === GuardrailAction.BLOCK) {
|
|
478
|
+
return { outcome: 'block', evaluation };
|
|
479
|
+
}
|
|
480
|
+
}
|
|
481
|
+
const chunk = outputEvaluations.length > 0
|
|
482
|
+
? withGuardrailMetadata(chunkIn, { output: outputEvaluations.map(serializeEvaluation) })
|
|
483
|
+
: chunkIn;
|
|
484
|
+
return { outcome: 'pass', chunk };
|
|
485
|
+
};
|
|
422
486
|
const finalTextOf = (chunk) => chunk.type === AgentOSResponseChunkType.FINAL_RESPONSE ? (chunk.finalResponseText ?? null) : null;
|
|
423
487
|
// -- Main stream loop ----------------------------------------------
|
|
424
488
|
for await (const chunk of stream) {
|
|
@@ -535,6 +599,22 @@ export class ParallelGuardrailDispatcher {
|
|
|
535
599
|
held.push(currentChunk);
|
|
536
600
|
continue;
|
|
537
601
|
}
|
|
602
|
+
// ---------------------------------------------------------------
|
|
603
|
+
// TOOL_CALL_REQUEST (non-final): the guards that evaluate tool calls
|
|
604
|
+
// ---------------------------------------------------------------
|
|
605
|
+
// A block ends the stream with the verdict in place of the chunk, so the
|
|
606
|
+
// stream never hands a host an actionable call it would execute; in hold
|
|
607
|
+
// mode the text held before the call is dropped with it.
|
|
608
|
+
if (isToolCallRequestChunk(chunk) && !chunk.isFinal && toolCallGuards.length > 0) {
|
|
609
|
+
const verdict = await evaluateToolCall(currentChunk);
|
|
610
|
+
if (verdict.outcome === 'block') {
|
|
611
|
+
held = [];
|
|
612
|
+
await notify({ streamId: options.streamId, action: GuardrailAction.BLOCK, guardrailId: guardrailIdOf(verdict.evaluation), reasonCode: verdict.evaluation.reasonCode, finalText: verdict.evaluation.replacementText ?? null, originalText: null });
|
|
613
|
+
yield* blockedOutput(context, verdict.evaluation, options);
|
|
614
|
+
return;
|
|
615
|
+
}
|
|
616
|
+
currentChunk = verdict.chunk;
|
|
617
|
+
}
|
|
538
618
|
// An actionable tool call ends the turn's text for now: in hold mode the
|
|
539
619
|
// text so far is judged as a final reply before the tool call goes out.
|
|
540
620
|
if (hold && isActionableToolCallRequestChunk(chunk) && held.length > 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParallelGuardrailDispatcher.js","sourceRoot":"","sources":["../../../src/safety/guardrails/ParallelGuardrailDispatcher.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ParallelGuardrailDispatcher.js","sourceRoot":"","sources":["../../../src/safety/guardrails/ParallelGuardrailDispatcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -142,13 +142,15 @@ export declare function createGuardrailBlockedStream(context: GuardrailContext,
|
|
|
142
142
|
*
|
|
143
143
|
* **Evaluation Strategy:**
|
|
144
144
|
* - Guardrails with `config.evaluateStreamingChunks === true` evaluate TEXT_DELTA chunks
|
|
145
|
+
* - Guardrails with `config.evaluateToolCalls === true` evaluate TOOL_CALL_REQUEST chunks
|
|
145
146
|
* - All guardrails evaluate the chunks that carry `isFinal: true` (the
|
|
146
147
|
* FINAL_RESPONSE, an ERROR); other chunks pass through unevaluated
|
|
147
148
|
* - Rate limiting via `config.maxStreamingEvaluations` per guardrail
|
|
148
149
|
*
|
|
149
150
|
* **Actions:**
|
|
150
151
|
* - {@link GuardrailAction.BLOCK} - Terminates stream immediately with error chunk
|
|
151
|
-
* - {@link GuardrailAction.SANITIZE} - Replaces chunk content with `modifiedText
|
|
152
|
+
* - {@link GuardrailAction.SANITIZE} - Replaces chunk content with `modifiedText`;
|
|
153
|
+
* on a TOOL_CALL_REQUEST chunk it is applied as a BLOCK
|
|
152
154
|
* - {@link GuardrailAction.FLAG} / {@link GuardrailAction.ALLOW} - Passes through
|
|
153
155
|
*
|
|
154
156
|
* @param service - Single guardrail or array of guardrails
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guardrailDispatcher.d.ts","sourceRoot":"","sources":["../../../src/safety/guardrails/guardrailDispatcher.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EACL,eAAe,EAGhB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,eAAe,EACf,KAAK,gBAAgB,EACrB,KAAK,yBAAyB,EAC9B,KAAK,iBAAiB,EACvB,MAAM,qBAAqB,CAAC;AAG7B;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,iBAAiB,GAAG,iBAAiB,EAAE,GAAG,SAAS,GAC3D,iBAAiB,EAAE,CAMrB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,iBAAiB,GACrB,GAAG,IAAI,iBAAiB,GAAG;IAC5B,cAAc,EAAE,WAAW,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC,CAAC;CAClE,CAEA;AAED;;;;;GAKG;AACH,MAAM,WAAW,qBAAqB;IACpC,mEAAmE;IACnE,cAAc,EAAE,YAAY,CAAC;IAE7B,iGAAiG;IACjG,UAAU,CAAC,EAAE,yBAAyB,GAAG,IAAI,CAAC;IAE9C,qEAAqE;IACrE,WAAW,CAAC,EAAE,yBAAyB,EAAE,CAAC;CAC3C;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,yCAAyC;IACzC,QAAQ,EAAE,MAAM,CAAC;IAEjB,kCAAkC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,wDAAwD;IACxD,gBAAgB,CAAC,EAAE,yBAAyB,EAAE,GAAG,IAAI,CAAC;IAEtD,oFAAoF;IACpF,UAAU,CAAC,EAAE,OAAO,qBAAqB,EAAE,iBAAiB,EAAE,CAAC;IAE/D;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB,8HAA8H;IAC9H,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,sBAAsB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACvE;AAED,uFAAuF;AACvF,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,eAAe,CAAC;IACxB,yDAAyD;IACzD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+GAA+G;IAC/G,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,yIAAyI;IACzI,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,eAAe,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,iBAAiB,GAAG,iBAAiB,EAAE,GAAG,SAAS,EAC5D,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,qBAAqB,CAAC,CAIhC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAuB,4BAA4B,CACjD,OAAO,EAAE,gBAAgB,EACzB,UAAU,EAAE,yBAAyB,EACrC,OAAO,CAAC,EAAE,sBAAsB,GAC/B,cAAc,CAAC,eAAe,EAAE,IAAI,EAAE,SAAS,CAAC,CAkBlD;AAED
|
|
1
|
+
{"version":3,"file":"guardrailDispatcher.d.ts","sourceRoot":"","sources":["../../../src/safety/guardrails/guardrailDispatcher.ts"],"names":[],"mappings":"AAgCA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EACL,eAAe,EAGhB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,eAAe,EACf,KAAK,gBAAgB,EACrB,KAAK,yBAAyB,EAC9B,KAAK,iBAAiB,EACvB,MAAM,qBAAqB,CAAC;AAG7B;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,iBAAiB,GAAG,iBAAiB,EAAE,GAAG,SAAS,GAC3D,iBAAiB,EAAE,CAMrB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,iBAAiB,GACrB,GAAG,IAAI,iBAAiB,GAAG;IAC5B,cAAc,EAAE,WAAW,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC,CAAC;CAClE,CAEA;AAED;;;;;GAKG;AACH,MAAM,WAAW,qBAAqB;IACpC,mEAAmE;IACnE,cAAc,EAAE,YAAY,CAAC;IAE7B,iGAAiG;IACjG,UAAU,CAAC,EAAE,yBAAyB,GAAG,IAAI,CAAC;IAE9C,qEAAqE;IACrE,WAAW,CAAC,EAAE,yBAAyB,EAAE,CAAC;CAC3C;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,yCAAyC;IACzC,QAAQ,EAAE,MAAM,CAAC;IAEjB,kCAAkC;IAClC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,wDAAwD;IACxD,gBAAgB,CAAC,EAAE,yBAAyB,EAAE,GAAG,IAAI,CAAC;IAEtD,oFAAoF;IACpF,UAAU,CAAC,EAAE,OAAO,qBAAqB,EAAE,iBAAiB,EAAE,CAAC;IAE/D;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB,8HAA8H;IAC9H,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,sBAAsB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACvE;AAED,uFAAuF;AACvF,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,eAAe,CAAC;IACxB,yDAAyD;IACzD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+GAA+G;IAC/G,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,yIAAyI;IACzI,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED;;;;;GAKG;AACH,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,eAAe,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,iBAAiB,GAAG,iBAAiB,EAAE,GAAG,SAAS,EAC5D,KAAK,EAAE,YAAY,EACnB,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,qBAAqB,CAAC,CAIhC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAuB,4BAA4B,CACjD,OAAO,EAAE,gBAAgB,EACzB,UAAU,EAAE,yBAAyB,EACrC,OAAO,CAAC,EAAE,sBAAsB,GAC/B,cAAc,CAAC,eAAe,EAAE,IAAI,EAAE,SAAS,CAAC,CAkBlD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,wBAAuB,oBAAoB,CACzC,OAAO,EAAE,iBAAiB,GAAG,iBAAiB,EAAE,GAAG,SAAS,EAC5D,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,cAAc,CAAC,eAAe,EAAE,IAAI,EAAE,SAAS,CAAC,EACxD,OAAO,EAAE,sBAAsB,GAC9B,cAAc,CAAC,eAAe,EAAE,IAAI,EAAE,SAAS,CAAC,CAIlD;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,yBAAyB,GAAG,sBAAsB,CAOjG;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE;IACL,KAAK,CAAC,EAAE,sBAAsB,GAAG,sBAAsB,EAAE,CAAC;IAC1D,MAAM,CAAC,EAAE,sBAAsB,GAAG,sBAAsB,EAAE,CAAC;CAC5D,GACA,eAAe,CAkCjB"}
|