@provos/ironcurtain 0.3.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +0 -1
- package/README.md +20 -1
- package/dist/cli.js +15 -0
- package/dist/cli.js.map +1 -1
- package/dist/config/config-command.d.ts +1 -0
- package/dist/config/config-command.js +138 -34
- package/dist/config/config-command.js.map +1 -1
- package/dist/config/constitution-user-base.md +2 -0
- package/dist/config/first-start.js +31 -3
- package/dist/config/first-start.js.map +1 -1
- package/dist/config/generated/compiled-policy.json +158 -64
- package/dist/config/generated/test-scenarios.json +144 -293
- package/dist/config/generated/tool-annotations.json +17 -3
- package/dist/config/index.js +49 -17
- package/dist/config/index.js.map +1 -1
- package/dist/config/paths.js +9 -4
- package/dist/config/paths.js.map +1 -1
- package/dist/config/user-config.d.ts +47 -0
- package/dist/config/user-config.js +97 -4
- package/dist/config/user-config.js.map +1 -1
- package/dist/docker/adapters/claude-code.js +14 -3
- package/dist/docker/adapters/claude-code.js.map +1 -1
- package/dist/docker/agent-adapter.d.ts +2 -0
- package/dist/docker/audit-log-tailer.d.ts +4 -3
- package/dist/docker/audit-log-tailer.js +9 -7
- package/dist/docker/audit-log-tailer.js.map +1 -1
- package/dist/docker/docker-agent-session.d.ts +11 -0
- package/dist/docker/docker-agent-session.js +103 -22
- package/dist/docker/docker-agent-session.js.map +1 -1
- package/dist/docker/docker-manager.js +82 -15
- package/dist/docker/docker-manager.js.map +1 -1
- package/dist/docker/managed-proxy.d.ts +7 -3
- package/dist/docker/managed-proxy.js +98 -8
- package/dist/docker/managed-proxy.js.map +1 -1
- package/dist/docker/mitm-proxy.d.ts +7 -4
- package/dist/docker/mitm-proxy.js +152 -62
- package/dist/docker/mitm-proxy.js.map +1 -1
- package/dist/docker/orientation.d.ts +1 -1
- package/dist/docker/orientation.js +5 -2
- package/dist/docker/orientation.js.map +1 -1
- package/dist/docker/platform.d.ts +20 -0
- package/dist/docker/platform.js +24 -0
- package/dist/docker/platform.js.map +1 -0
- package/dist/docker/provider-config.d.ts +38 -2
- package/dist/docker/provider-config.js +61 -0
- package/dist/docker/provider-config.js.map +1 -1
- package/dist/docker/types.d.ts +48 -6
- package/dist/pipeline/compile.js +2 -2
- package/dist/pipeline/compile.js.map +1 -1
- package/dist/pipeline/constitution-compiler.js +5 -2
- package/dist/pipeline/constitution-compiler.js.map +1 -1
- package/dist/pipeline/handwritten-scenarios.js +9 -10
- package/dist/pipeline/handwritten-scenarios.js.map +1 -1
- package/dist/pipeline/policy-verifier.d.ts +1 -1
- package/dist/pipeline/policy-verifier.js +7 -4
- package/dist/pipeline/policy-verifier.js.map +1 -1
- package/dist/pipeline/types.d.ts +7 -1
- package/dist/servers/fetch-server.d.ts +4 -3
- package/dist/servers/fetch-server.js +72 -10
- package/dist/servers/fetch-server.js.map +1 -1
- package/dist/servers/search-providers.d.ts +29 -0
- package/dist/servers/search-providers.js +156 -0
- package/dist/servers/search-providers.js.map +1 -0
- package/dist/session/index.js +16 -6
- package/dist/session/index.js.map +1 -1
- package/dist/signal/bot-command.d.ts +13 -0
- package/dist/signal/bot-command.js +54 -0
- package/dist/signal/bot-command.js.map +1 -0
- package/dist/signal/format.d.ts +31 -0
- package/dist/signal/format.js +101 -0
- package/dist/signal/format.js.map +1 -0
- package/dist/signal/index.d.ts +16 -0
- package/dist/signal/index.js +13 -0
- package/dist/signal/index.js.map +1 -0
- package/dist/signal/markdown-to-signal.d.ts +29 -0
- package/dist/signal/markdown-to-signal.js +154 -0
- package/dist/signal/markdown-to-signal.js.map +1 -0
- package/dist/signal/setup-signal.d.ts +48 -0
- package/dist/signal/setup-signal.js +443 -0
- package/dist/signal/setup-signal.js.map +1 -0
- package/dist/signal/signal-bot-daemon.d.ts +142 -0
- package/dist/signal/signal-bot-daemon.js +504 -0
- package/dist/signal/signal-bot-daemon.js.map +1 -0
- package/dist/signal/signal-config.d.ts +64 -0
- package/dist/signal/signal-config.js +53 -0
- package/dist/signal/signal-config.js.map +1 -0
- package/dist/signal/signal-container.d.ts +37 -0
- package/dist/signal/signal-container.js +112 -0
- package/dist/signal/signal-container.js.map +1 -0
- package/dist/signal/signal-transport.d.ts +34 -0
- package/dist/signal/signal-transport.js +70 -0
- package/dist/signal/signal-transport.js.map +1 -0
- package/dist/trusted-process/mcp-proxy-server.js +34 -3
- package/dist/trusted-process/mcp-proxy-server.js.map +1 -1
- package/dist/trusted-process/path-utils.d.ts +5 -1
- package/dist/trusted-process/path-utils.js +47 -4
- package/dist/trusted-process/path-utils.js.map +1 -1
- package/dist/trusted-process/tcp-server-transport.d.ts +43 -0
- package/dist/trusted-process/tcp-server-transport.js +119 -0
- package/dist/trusted-process/tcp-server-transport.js.map +1 -0
- package/dist/types/argument-roles.js +20 -5
- package/dist/types/argument-roles.js.map +1 -1
- package/docker/Dockerfile.base.arm64 +23 -0
- package/package.json +6 -3
- package/src/config/constitution-user-base.md +2 -0
- package/src/config/generated/compiled-policy.json +158 -64
- package/src/config/generated/test-scenarios.json +144 -293
- package/src/config/generated/tool-annotations.json +17 -3
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Platform detection for Docker transport selection.
|
|
3
|
+
*
|
|
4
|
+
* Docker Desktop on macOS uses VirtioFS for bind mounts, which does
|
|
5
|
+
* not support Unix domain sockets. On macOS, we use TCP transport
|
|
6
|
+
* instead so the container can reach host-side proxies via
|
|
7
|
+
* `host.docker.internal`.
|
|
8
|
+
*/
|
|
9
|
+
import { platform } from 'node:os';
|
|
10
|
+
/**
|
|
11
|
+
* Returns true when the Docker session should use TCP transport
|
|
12
|
+
* instead of Unix domain sockets. Currently true on macOS where
|
|
13
|
+
* Docker Desktop's VirtioFS does not support UDS in bind mounts.
|
|
14
|
+
*/
|
|
15
|
+
export function useTcpTransport() {
|
|
16
|
+
return platform() === 'darwin';
|
|
17
|
+
}
|
|
18
|
+
/** Docker network name for the internal (no-egress) bridge used in TCP mode. */
|
|
19
|
+
export const INTERNAL_NETWORK_NAME = 'ironcurtain-internal';
|
|
20
|
+
/** Subnet for the internal bridge network. */
|
|
21
|
+
export const INTERNAL_NETWORK_SUBNET = '172.30.0.0/24';
|
|
22
|
+
/** Gateway IP for the internal bridge network (host-side). */
|
|
23
|
+
export const INTERNAL_NETWORK_GATEWAY = '172.30.0.1';
|
|
24
|
+
//# sourceMappingURL=platform.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform.js","sourceRoot":"","sources":["../../src/docker/platform.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC;;;;GAIG;AACH,MAAM,UAAU,eAAe;IAC7B,OAAO,QAAQ,EAAE,KAAK,QAAQ,CAAC;AACjC,CAAC;AAED,gFAAgF;AAChF,MAAM,CAAC,MAAM,qBAAqB,GAAG,sBAAsB,CAAC;AAE5D,8CAA8C;AAC9C,MAAM,CAAC,MAAM,uBAAuB,GAAG,eAAe,CAAC;AAEvD,8DAA8D;AAC9D,MAAM,CAAC,MAAM,wBAAwB,GAAG,YAAY,CAAC"}
|
|
@@ -6,9 +6,22 @@
|
|
|
6
6
|
* sentinel keys for real ones.
|
|
7
7
|
*/
|
|
8
8
|
/**
|
|
9
|
-
*
|
|
10
|
-
* should handle traffic to this provider's API.
|
|
9
|
+
* Result from a RequestBodyRewriter when modifications were made.
|
|
11
10
|
*/
|
|
11
|
+
export interface RewriteResult {
|
|
12
|
+
/** The modified request body object. */
|
|
13
|
+
readonly modified: Record<string, unknown>;
|
|
14
|
+
/** Human-readable descriptions of what was stripped (for logging). */
|
|
15
|
+
readonly stripped: string[];
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* A function that inspects and optionally modifies a parsed JSON request body.
|
|
19
|
+
* Returns a RewriteResult if the body was modified, or null if no changes needed.
|
|
20
|
+
*/
|
|
21
|
+
export type RequestBodyRewriter = (body: Record<string, unknown>, context: {
|
|
22
|
+
method: string;
|
|
23
|
+
path: string;
|
|
24
|
+
}) => RewriteResult | null;
|
|
12
25
|
export interface ProviderConfig {
|
|
13
26
|
/** Hostname of the API endpoint (e.g., 'api.anthropic.com'). */
|
|
14
27
|
readonly host: string;
|
|
@@ -29,6 +42,16 @@ export interface ProviderConfig {
|
|
|
29
42
|
* Example: 'sk-ant-api03-' for Anthropic.
|
|
30
43
|
*/
|
|
31
44
|
readonly fakeKeyPrefix: string;
|
|
45
|
+
/**
|
|
46
|
+
* Optional function to inspect and modify request bodies before forwarding.
|
|
47
|
+
* Only called for endpoints listed in rewriteEndpoints.
|
|
48
|
+
*/
|
|
49
|
+
readonly requestRewriter?: RequestBodyRewriter;
|
|
50
|
+
/**
|
|
51
|
+
* Paths for which the proxy should buffer and rewrite request bodies.
|
|
52
|
+
* Only applies to POST requests. Requires requestRewriter to be set.
|
|
53
|
+
*/
|
|
54
|
+
readonly rewriteEndpoints?: readonly string[];
|
|
32
55
|
}
|
|
33
56
|
export interface EndpointPattern {
|
|
34
57
|
readonly method: 'GET' | 'POST' | 'PUT' | 'DELETE';
|
|
@@ -56,6 +79,19 @@ export type KeyInjection = {
|
|
|
56
79
|
* Checks whether a request method+path is in the provider's allowlist.
|
|
57
80
|
*/
|
|
58
81
|
export declare function isEndpointAllowed(config: ProviderConfig, method: string | undefined, path: string | undefined): boolean;
|
|
82
|
+
/**
|
|
83
|
+
* Strips server-side tools from the Anthropic Messages API `tools` array.
|
|
84
|
+
*
|
|
85
|
+
* Server-side tools (e.g. web_search_20250305, computer_20250124) have a
|
|
86
|
+
* `type` field that is not "custom". Custom/MCP-bridged tools either have
|
|
87
|
+
* no `type` field or `type: "custom"`.
|
|
88
|
+
*/
|
|
89
|
+
export declare function stripServerSideTools(body: Record<string, unknown>): RewriteResult | null;
|
|
90
|
+
/**
|
|
91
|
+
* Returns true if this request should have its body buffered and rewritten.
|
|
92
|
+
* Only matches POST requests to paths listed in the provider's rewriteEndpoints.
|
|
93
|
+
*/
|
|
94
|
+
export declare function shouldRewriteBody(config: ProviderConfig, method: string | undefined, path: string | undefined): boolean;
|
|
59
95
|
export declare const anthropicProvider: ProviderConfig;
|
|
60
96
|
export declare const openaiProvider: ProviderConfig;
|
|
61
97
|
export declare const googleProvider: ProviderConfig;
|
|
@@ -28,6 +28,65 @@ export function isEndpointAllowed(config, method, path) {
|
|
|
28
28
|
return cleanPath === ep.path;
|
|
29
29
|
});
|
|
30
30
|
}
|
|
31
|
+
// --- Request body rewriters ---
|
|
32
|
+
/**
|
|
33
|
+
* Returns the server-side tool type string if the tool entry is a
|
|
34
|
+
* server-side tool, or null if it is a custom/MCP-bridged tool.
|
|
35
|
+
*
|
|
36
|
+
* Server-side tools have a `type` field that is not "custom".
|
|
37
|
+
* Custom tools either have no `type` field or `type: "custom"`.
|
|
38
|
+
*/
|
|
39
|
+
function getServerSideToolType(tool) {
|
|
40
|
+
if (typeof tool !== 'object' || tool === null || !('type' in tool))
|
|
41
|
+
return null;
|
|
42
|
+
const { type } = tool;
|
|
43
|
+
if (typeof type === 'string' && type !== 'custom')
|
|
44
|
+
return type;
|
|
45
|
+
return null;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Strips server-side tools from the Anthropic Messages API `tools` array.
|
|
49
|
+
*
|
|
50
|
+
* Server-side tools (e.g. web_search_20250305, computer_20250124) have a
|
|
51
|
+
* `type` field that is not "custom". Custom/MCP-bridged tools either have
|
|
52
|
+
* no `type` field or `type: "custom"`.
|
|
53
|
+
*/
|
|
54
|
+
export function stripServerSideTools(body) {
|
|
55
|
+
const tools = body.tools;
|
|
56
|
+
if (!Array.isArray(tools) || tools.length === 0)
|
|
57
|
+
return null;
|
|
58
|
+
const stripped = [];
|
|
59
|
+
const kept = [];
|
|
60
|
+
for (const tool of tools) {
|
|
61
|
+
const serverType = getServerSideToolType(tool);
|
|
62
|
+
if (serverType) {
|
|
63
|
+
stripped.push(serverType);
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
kept.push(tool);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
if (stripped.length === 0)
|
|
70
|
+
return null;
|
|
71
|
+
return {
|
|
72
|
+
modified: { ...body, tools: kept },
|
|
73
|
+
stripped,
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Returns true if this request should have its body buffered and rewritten.
|
|
78
|
+
* Only matches POST requests to paths listed in the provider's rewriteEndpoints.
|
|
79
|
+
*/
|
|
80
|
+
export function shouldRewriteBody(config, method, path) {
|
|
81
|
+
if (!config.requestRewriter || !config.rewriteEndpoints)
|
|
82
|
+
return false;
|
|
83
|
+
if (!method || method.toUpperCase() !== 'POST')
|
|
84
|
+
return false;
|
|
85
|
+
if (!path)
|
|
86
|
+
return false;
|
|
87
|
+
const cleanPath = path.split('?')[0];
|
|
88
|
+
return config.rewriteEndpoints.includes(cleanPath);
|
|
89
|
+
}
|
|
31
90
|
// --- Built-in providers ---
|
|
32
91
|
export const anthropicProvider = {
|
|
33
92
|
host: 'api.anthropic.com',
|
|
@@ -47,6 +106,8 @@ export const anthropicProvider = {
|
|
|
47
106
|
],
|
|
48
107
|
keyInjection: { type: 'header', headerName: 'x-api-key' },
|
|
49
108
|
fakeKeyPrefix: 'sk-ant-api03-ironcurtain-',
|
|
109
|
+
requestRewriter: stripServerSideTools,
|
|
110
|
+
rewriteEndpoints: ['/v1/messages'],
|
|
50
111
|
};
|
|
51
112
|
export const openaiProvider = {
|
|
52
113
|
host: 'api.openai.com',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-config.js","sourceRoot":"","sources":["../../src/docker/provider-config.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;
|
|
1
|
+
{"version":3,"file":"provider-config.js","sourceRoot":"","sources":["../../src/docker/provider-config.ts"],"names":[],"mappings":"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"}
|
package/dist/docker/types.d.ts
CHANGED
|
@@ -17,11 +17,40 @@ export interface DockerContainerConfig {
|
|
|
17
17
|
readonly command: readonly string[];
|
|
18
18
|
/** IronCurtain session label for stale container detection. */
|
|
19
19
|
readonly sessionLabel?: string;
|
|
20
|
+
/** Extra --add-host entries (e.g. ["host.docker.internal:172.30.0.1"]). When set, suppresses the default host-gateway mapping. */
|
|
21
|
+
readonly extraHosts?: readonly string[];
|
|
20
22
|
/** Optional resource limits. */
|
|
21
23
|
readonly resources?: {
|
|
22
24
|
readonly memoryMb?: number;
|
|
23
25
|
readonly cpus?: number;
|
|
24
26
|
};
|
|
27
|
+
/**
|
|
28
|
+
* Port bindings in 'hostPort:containerPort' format.
|
|
29
|
+
* Optional. Defaults to no ports exposed.
|
|
30
|
+
*
|
|
31
|
+
* SECURITY NOTE: Agent containers must NEVER expose ports.
|
|
32
|
+
* This field exists solely for service containers (e.g., signal-cli)
|
|
33
|
+
* that need to expose a local API. Only bind to 127.0.0.1 in practice
|
|
34
|
+
* (e.g., '127.0.0.1:18080:8080').
|
|
35
|
+
*/
|
|
36
|
+
readonly ports?: readonly string[];
|
|
37
|
+
/**
|
|
38
|
+
* Docker restart policy (e.g., 'unless-stopped', 'on-failure:3').
|
|
39
|
+
* Optional. Defaults to no restart policy (container stops when stopped).
|
|
40
|
+
*
|
|
41
|
+
* Agent containers must NEVER set a restart policy - they are
|
|
42
|
+
* ephemeral per-session containers managed by session lifecycle.
|
|
43
|
+
*/
|
|
44
|
+
readonly restartPolicy?: string;
|
|
45
|
+
/**
|
|
46
|
+
* Linux capabilities to re-add after --cap-drop=ALL.
|
|
47
|
+
* Optional. Defaults to none (fully unprivileged).
|
|
48
|
+
*
|
|
49
|
+
* Third-party service containers may need specific capabilities
|
|
50
|
+
* for their entrypoints (e.g., CHOWN, SETUID). Agent containers
|
|
51
|
+
* must NEVER set this field.
|
|
52
|
+
*/
|
|
53
|
+
readonly capAdd?: readonly string[];
|
|
25
54
|
}
|
|
26
55
|
/** A volume mount for a Docker container. */
|
|
27
56
|
export interface DockerMount {
|
|
@@ -51,20 +80,20 @@ export interface DockerManager {
|
|
|
51
80
|
/** Create a container with the given configuration. Returns container ID. */
|
|
52
81
|
create(config: DockerContainerConfig): Promise<string>;
|
|
53
82
|
/** Start a created container. */
|
|
54
|
-
start(
|
|
83
|
+
start(nameOrId: string): Promise<void>;
|
|
55
84
|
/**
|
|
56
85
|
* Execute a command inside a running container via `docker exec`.
|
|
57
86
|
* Returns when the command exits. Both stdout and stderr are captured.
|
|
58
87
|
*
|
|
59
88
|
* @param timeoutMs - kill the exec process after this many ms.
|
|
60
89
|
*/
|
|
61
|
-
exec(
|
|
90
|
+
exec(nameOrId: string, command: readonly string[], timeoutMs?: number): Promise<DockerExecResult>;
|
|
62
91
|
/** Stop a running container (SIGTERM, then SIGKILL after grace period). */
|
|
63
|
-
stop(
|
|
92
|
+
stop(nameOrId: string): Promise<void>;
|
|
64
93
|
/** Remove a container (must be stopped). */
|
|
65
|
-
remove(
|
|
94
|
+
remove(nameOrId: string): Promise<void>;
|
|
66
95
|
/** Check if a container is running. */
|
|
67
|
-
isRunning(
|
|
96
|
+
isRunning(nameOrId: string): Promise<boolean>;
|
|
68
97
|
/** Check if a Docker image exists locally. */
|
|
69
98
|
imageExists(image: string): Promise<boolean>;
|
|
70
99
|
/** Build a Docker image from a Dockerfile. Optional labels are stamped on the image. */
|
|
@@ -72,7 +101,20 @@ export interface DockerManager {
|
|
|
72
101
|
/** Read a label value from a Docker image. Returns undefined if image or label doesn't exist. */
|
|
73
102
|
getImageLabel(image: string, label: string): Promise<string | undefined>;
|
|
74
103
|
/** Create a Docker network. No-op if it already exists. */
|
|
75
|
-
createNetwork(name: string
|
|
104
|
+
createNetwork(name: string, options?: {
|
|
105
|
+
internal?: boolean;
|
|
106
|
+
subnet?: string;
|
|
107
|
+
gateway?: string;
|
|
108
|
+
}): Promise<void>;
|
|
76
109
|
/** Remove a Docker network. Ignores errors (e.g., already removed). */
|
|
77
110
|
removeNetwork(name: string): Promise<void>;
|
|
111
|
+
/** Pull a Docker image from a registry. */
|
|
112
|
+
pullImage(image: string): Promise<void>;
|
|
113
|
+
/**
|
|
114
|
+
* Check if a container exists (running or stopped).
|
|
115
|
+
* Unlike isRunning(), returns true for stopped containers.
|
|
116
|
+
*/
|
|
117
|
+
containerExists(nameOrId: string): Promise<boolean>;
|
|
118
|
+
/** Returns the image ID (sha256 digest) for a container or image. undefined if not found. */
|
|
119
|
+
getImageId(nameOrId: string): Promise<string | undefined>;
|
|
78
120
|
}
|
package/dist/pipeline/compile.js
CHANGED
|
@@ -393,7 +393,7 @@ export async function main() {
|
|
|
393
393
|
const allAvailableTools = allAnnotations.map((a) => ({ serverName: a.serverName, toolName: a.toolName }));
|
|
394
394
|
const serverNamesList = [...new Set(allAnnotations.map((a) => a.serverName))];
|
|
395
395
|
const toolNamesList = [...new Set(allAnnotations.map((a) => a.toolName))];
|
|
396
|
-
let verifierSystem = cacheStrategy.wrapSystemPrompt(buildJudgeSystemPrompt(config.constitutionText, compiledPolicyFile, config.protectedPaths, allAvailableTools, dynamicLists));
|
|
396
|
+
let verifierSystem = cacheStrategy.wrapSystemPrompt(buildJudgeSystemPrompt(config.constitutionText, compiledPolicyFile, config.protectedPaths, allAvailableTools, dynamicLists, config.allowedDirectory));
|
|
397
397
|
let verifierSession = new PolicyVerifierSession({
|
|
398
398
|
system: verifierSystem,
|
|
399
399
|
model: llm,
|
|
@@ -509,7 +509,7 @@ export async function main() {
|
|
|
509
509
|
compiledPolicyFile = buildPolicyArtifact(config.constitutionHash, compilationResult);
|
|
510
510
|
writePolicyArtifact(config.generatedDir, compiledPolicyFile);
|
|
511
511
|
// Rebuild verifier system prompt and session with updated rules
|
|
512
|
-
verifierSystem = cacheStrategy.wrapSystemPrompt(buildJudgeSystemPrompt(config.constitutionText, compiledPolicyFile, config.protectedPaths, allAvailableTools, dynamicLists));
|
|
512
|
+
verifierSystem = cacheStrategy.wrapSystemPrompt(buildJudgeSystemPrompt(config.constitutionText, compiledPolicyFile, config.protectedPaths, allAvailableTools, dynamicLists, config.allowedDirectory));
|
|
513
513
|
verifierSession = new PolicyVerifierSession({
|
|
514
514
|
system: verifierSystem,
|
|
515
515
|
model: llm,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compile.js","sourceRoot":"","sources":["../../src/pipeline/compile.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"compile.js","sourceRoot":"","sources":["../../src/pipeline/compile.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AAEnE,OAAO,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EACL,yBAAyB,EACzB,mBAAmB,EACnB,2BAA2B,EAC3B,qBAAqB,GACtB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,eAAe,EAA4B,MAAM,oBAAoB,CAAC;AAC/E,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,UAAU,EACV,aAAa,EACb,WAAW,GACZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,wBAAwB,EACxB,sBAAsB,EACtB,0BAA0B,EAC1B,yBAAyB,EACzB,qBAAqB,EACrB,YAAY,GACb,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,0BAA0B,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAC/F,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAgBxC,8EAA8E;AAC9E,0CAA0C;AAC1C,8EAA8E;AAE9E,SAAS,iBAAiB,CAAC,YAAoB,EAAE,WAA6B;IAC5E,OAAO,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;AAChE,CAAC;AAED,SAAS,oBAAoB,CAAC,YAAoB,EAAE,oBAAoC;IACtF,OAAO,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC,CAAC;AACzE,CAAC;AAED,SAAS,2BAA2B,CAAC,KAAqB;IACxD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;YAC1B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;AAC1B,CAAC;AAED,SAAS,qBAAqB,CAAC,MAA0B;IACvD,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;AAC9D,CAAC;AAED;;;GAGG;AACH,SAAS,+BAA+B,CACtC,MAAoB,EACpB,SAAyB,EACzB,QAAgB,0CAA0C;IAE1D,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,yBAAyB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAC1E,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QAC1B,MAAM,MAAM,GACV,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,aAAa;YACjC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,oEAAoE,CAAC;YACpF,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;QAC7B,OAAO,CAAC,KAAK,CAAC,KAAK,MAAM,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,OAAO,CAAC,CAAC,IAAI,mBAAmB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IAClG,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;AAC9B,CAAC;AAED,8EAA8E;AAC9E,2CAA2C;AAC3C,8EAA8E;AAE9E;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAC/B,SAAyB,EACzB,YAA4B,EAC5B,WAA2D,EAC3D,kBAAoD;IAEpD,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;QAClC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC;QAChD,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC;KAC5G,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;IAC9E,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;IACjE,MAAM,kBAAkB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;IAE5F,OAAO,CAAC,GAAG,IAAI,EAAE,GAAG,kBAAkB,CAAC,CAAC;AAC1C,CAAC;AAED,8EAA8E;AAC9E,2CAA2C;AAC3C,8EAA8E;AAE9E;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAqB;IACpD,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACxB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM;YAAE,OAAO,IAAI,CAAC;QAExC,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACvD,IAAI,QAAQ,KAAK,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QAEnD,OAAO;YACL,GAAG,IAAI;YACP,EAAE,EAAE;gBACF,GAAG,IAAI,CAAC,EAAE;gBACV,KAAK,EAAE,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE;aAC9C;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAcD,KAAK,UAAU,kBAAkB,CAC/B,gBAAwB,EACxB,WAA6B,EAC7B,cAAwB,EACxB,SAAiB,EACjB,cAA8C,EAC9C,GAAkB,EAClB,YAAoB,OAAO,EAC3B,MAAoC;IAEpC,MAAM,QAAQ,GAAG,GAAG,SAAS,yBAAyB,CAAC;IAEvD,wDAAwD;IACxD,sEAAsE;IACtE,IAAI,cAAc,IAAI,cAAc,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAC7D,UAAU,CAAC,QAAQ,CAAC,CAAC;QACrB,OAAO;YACL,KAAK,EAAE,gBAAgB,CAAC,cAAc,CAAC,KAAK,CAAC;YAC7C,eAAe,EAAE,cAAc,CAAC,eAAe,IAAI,EAAE;YACrD,SAAS;SACV,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,2BAA2B,CAAC;QAC9C,MAAM,EAAE,MAAM,IAAI,yBAAyB,CAAC,gBAAgB,EAAE,WAAW,EAAE,EAAE,cAAc,EAAE,CAAC;QAC9F,KAAK,EAAE,GAAG;QACV,WAAW;KACZ,CAAC,CAAC;IAEH,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,WAAW,CACrD,QAAQ,EACR,KAAK,EAAE,OAAO,EAAE,EAAE;QAChB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;YAC3C,OAAO,CAAC,IAAI,GAAG,GAAG,QAAQ,MAAM,GAAG,EAAE,CAAC;QACxC,CAAC,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7C,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;QACpD,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,CAAC,eAAe,EAAE,CAAC;IAC5D,CAAC,EACD,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,GAAG,QAAQ,KAAK,MAAM,CAAC,KAAK,CAAC,MAAM,oBAAoB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CACnG,CAAC;IAEF,OAAO;QACL,KAAK,EAAE,iBAAiB,CAAC,KAAK;QAC9B,eAAe,EAAE,iBAAiB,CAAC,eAAe;QAClD,SAAS;QACT,OAAO;KACR,CAAC;AACJ,CAAC;AAED,MAAM,mBAAoB,SAAQ,KAAK;IACT;IAA5B,YAA4B,MAAgB;QAC1C,KAAK,CAAC,iCAAiC,CAAC,CAAC;QADf,WAAM,GAAN,MAAM,CAAU;QAE1C,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF;AAED,SAAS,oBAAoB,CAAC,KAAqB,EAAE,kBAAoC,EAAE;IACzF,MAAM,cAAc,GAAG,qBAAqB,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC;IACrE,IAAI,cAAc,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvC,KAAK,MAAM,CAAC,IAAI,cAAc,CAAC,QAAQ,EAAE,CAAC;YACxC,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;IACD,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;QAC1B,MAAM,IAAI,mBAAmB,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IACvD,CAAC;AACH,CAAC;AAED,KAAK,UAAU,4BAA4B,CACzC,gBAAwB,EACxB,WAA6B,EAC7B,cAAwB,EACxB,aAAqB,EACrB,aAA4B,EAC5B,GAAkB,EAClB,UAAsC,EACtC,MAAoC,EACpC,OAAqC;IAErC,IAAI,MAAM,CAAC;IACX,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;IAC9D,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,MAAM,mBAAmB,CAChC,gBAAgB,EAChB,WAAW,EACX,EAAE,cAAc,EAAE,EAClB,GAAG,EACH,aAAa,EACb,UAAU,EACV,MAAM,CACP,CAAC;IACJ,CAAC;IACD,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACrD,oBAAoB,CAAC,aAAa,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;IAE5D,OAAO;QACL,KAAK,EAAE,aAAa;QACpB,eAAe,EAAE,MAAM,CAAC,eAAe;QACvC,SAAS,EAAE,GAAG,aAAa,SAAS;QACpC,OAAO;KACR,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,mDAAmD;AACnD,8EAA8E;AAE9E,SAAS,mBAAmB,CAAC,gBAAwB,EAAE,iBAAoC;IACzF,MAAM,QAAQ,GAAuB;QACnC,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACrC,gBAAgB;QAChB,SAAS,EAAE,iBAAiB,CAAC,SAAS;QACtC,KAAK,EAAE,iBAAiB,CAAC,KAAK;KAC/B,CAAC;IACF,IAAI,iBAAiB,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjD,QAAQ,CAAC,eAAe,GAAG,iBAAiB,CAAC,eAAe,CAAC;IAC/D,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAaD,KAAK,UAAU,qBAAqB,CAClC,gBAAwB,EACxB,WAA6B,EAC7B,gBAAwB,EACxB,oBAA8B,EAC9B,SAAiB,EACjB,iBAAgD,EAChD,GAAkB,EAClB,YAAoB,OAAO,EAC3B,MAAoC;IAEpC,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,gBAAgB,CAAC,CAAC;IACvE,MAAM,QAAQ,GAAG,GAAG,SAAS,4BAA4B,CAAC;IAE1D,uDAAuD;IACvD,IAAI,iBAAiB,IAAI,iBAAiB,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACnE,UAAU,CAAC,QAAQ,CAAC,CAAC;QACrB,OAAO,EAAE,SAAS,EAAE,iBAAiB,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC;IAC/D,CAAC;IAED,2EAA2E;IAC3E,MAAM,OAAO,GAAG,IAAI,wBAAwB,CAAC;QAC3C,MAAM,EAAE,MAAM,IAAI,0BAA0B,CAAC,gBAAgB,EAAE,WAAW,EAAE,gBAAgB,EAAE,oBAAoB,CAAC;QACnH,KAAK,EAAE,GAAG;QACV,WAAW;QACX,oBAAoB;KACrB,CAAC,CAAC;IAEH,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,WAAW,CAC7C,QAAQ,EACR,KAAK,EAAE,OAAO,EAAE,EAAE,CAChB,OAAO,CAAC,QAAQ,CAAC,CAAC,GAAG,EAAE,EAAE;QACvB,OAAO,CAAC,IAAI,GAAG,GAAG,QAAQ,MAAM,GAAG,EAAE,CAAC;IACxC,CAAC,CAAC,EACJ,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE;QACrB,MAAM,cAAc,GAAG,SAAS,CAAC,MAAM,GAAG,oBAAoB,CAAC,MAAM,CAAC;QACtE,OAAO,GAAG,QAAQ,KAAK,SAAS,CAAC,MAAM,eAAe,oBAAoB,CAAC,MAAM,kBAAkB,cAAc,gBAAgB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1J,CAAC,CACF,CAAC;IAEF,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;AAC3C,CAAC;AAED,8EAA8E;AAC9E,iCAAiC;AACjC,8EAA8E;AAE9E,KAAK,UAAU,oBAAoB,CACjC,gBAAwB,EACxB,kBAAsC,EACtC,mBAAwC,EACxC,cAAwB,EACxB,SAAyB,EACzB,GAAkB,EAClB,gBAAyB,EACzB,YAAoB,CAAC,EACrB,UAAmB,IAAI,EACvB,UAAsC,EACtC,sBAA+D,EAC/D,YAA+B,EAC/B,MAAoC,EACpC,OAA+B;IAE/B,MAAM,MAAM,GAAG,MAAM,YAAY,CAC/B,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,cAAc,EACd,SAAS,EACT,GAAG,EACH,SAAS,EACT,gBAAgB,EAChB,UAAU,EACV,sBAAsB,EACtB,YAAY,EACZ,MAAM,EACN,OAAO,CACR,CAAC;IAEF,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACjB,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAClB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,CAAC;YACjD,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC9B,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAClB,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;gBACvC,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;gBACnE,OAAO,CAAC,KAAK,CACX,iBAAiB,CAAC,CAAC,QAAQ,CAAC,gBAAgB,UAAU,CAAC,CAAC,cAAc,WAAW,CAAC,CAAC,YAAY,GAAG,CACnG,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,eAAe,CAAC,MAAM,sBAAsB,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E,SAAS,sBAAsB,CAAC,YAAoB,EAAE,gBAAwB,EAAE,cAA8B;IAC5G,MAAM,aAAa,GAAsB;QACvC,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACrC,gBAAgB;QAChB,SAAS,EAAE,cAAc,CAAC,SAAS;QACnC,SAAS,EAAE,cAAc,CAAC,SAAS;KACpC,CAAC;IACF,aAAa,CAAC,YAAY,EAAE,qBAAqB,EAAE,aAAa,CAAC,CAAC;AACpE,CAAC;AAED,SAAS,mBAAmB,CAAC,YAAoB,EAAE,kBAAsC;IACvF,aAAa,CAAC,YAAY,EAAE,sBAAsB,EAAE,kBAAkB,CAAC,CAAC;AAC1E,CAAC;AAED,8EAA8E;AAC9E,8CAA8C;AAC9C,8EAA8E;AAE9E;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,WAA6B,EAC7B,UAA2C;IAE3C,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IACzD,MAAM,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;IAE/D,2DAA2D;IAC3D,6CAA6C;IAC7C,MAAM,aAAa,GAAG,gBAAgB;QACpC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAClC,CAAC,CAAC,IAAI,GAAG,CACL,OAAO;aACJ,MAAM,CAAC,CAAC,CAAC,EAA6C,EAAE,CAAC,CAAC,CAAC,aAAa,IAAI,IAAI,CAAC;aACjF,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAC/B,CAAC;IAEN,MAAM,WAAW,GAAG,IAAI,GAAG,EAA+B,CAAC;IAC3D,KAAK,MAAM,UAAU,IAAI,aAAa,EAAE,CAAC;QACvC,MAAM,YAAY,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;QAC5C,iJAAiJ;QACjJ,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,gBAAgB,UAAU,6BAA6B,CAAC,CAAC;YACpG,SAAS;QACX,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,oBAAoB,CAAC;YACzC,OAAO,EAAE,YAAY,CAAC,OAAO;YAC7B,IAAI,EAAE,YAAY,CAAC,IAAI;YACvB,GAAG,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAI,OAAO,CAAC,GAA8B,EAAE,GAAG,YAAY,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS;YACvG,MAAM,EAAE,MAAM;SACf,CAAC,CAAC;QACH,6CAA6C;QAC7C,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;YACrB,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACxC,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,IAAI,EAAE,2BAA2B,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;QACnF,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAChC,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;QAE7C,WAAW,CAAC,GAAG,CAAC,UAAU,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,WAA6C;IACtF,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC;QACxC,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAC5B,CAAC;QAAC,MAAM,CAAC;YACP,wBAAwB;QAC1B,CAAC;IACH,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,gBAAgB;AAChB,8EAA8E;AAE9E,MAAM,CAAC,KAAK,UAAU,IAAI;IACxB,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;IAEpC,yEAAyE;IACzE,MAAM,mBAAmB,GAAG,oBAAoB,CAC9C,MAAM,CAAC,YAAY,EACnB,uBAAuB,EACvB,MAAM,CAAC,mBAAmB,CAC3B,CAAC;IACF,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CAAC,IAAI,CACZ,0GAA0G,CAC3G,CACF,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,uCAAuC;IACvC,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEpG,oDAAoD;IACpD,MAAM,sBAAsB,GAAG,6BAA6B,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAEhF,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,CAAC;IACzD,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,CAAC;IACzD,OAAO,CAAC,KAAK,CAAC,iBAAiB,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;IACrE,OAAO,CAAC,KAAK,CAAC,iBAAiB,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;IACrE,OAAO,CAAC,KAAK,CAAC,iBAAiB,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC;IACvE,OAAO,CAAC,KAAK,CACX,iBAAiB,KAAK,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,MAAM,eAAe,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,MAAM,YAAY,CAAC,EAAE,CACjI,CAAC;IACF,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAElB,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,MAAM,iBAAiB,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IAEnH,kEAAkE;IAClE,MAAM,oBAAoB,GAAG,uBAAuB,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;IAC9E,MAAM,cAAc,GAAG,yBAAyB,CAC9C,MAAM,CAAC,gBAAgB,EACvB,cAAc,EACd,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE,EACzC,oBAAoB,CACrB,CAAC;IACF,MAAM,YAAY,GAAG,iBAAiB,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;IACvE,MAAM,cAAc,GAAG,aAAa,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;IAEtE,+CAA+C;IAC/C,MAAM,cAAc,GAAG,oBAAoB,CACzC,MAAM,CAAC,YAAY,EACnB,sBAAsB,EACtB,MAAM,CAAC,mBAAmB,CAC3B,CAAC;IACF,MAAM,iBAAiB,GAAG,oBAAoB,CAC5C,MAAM,CAAC,YAAY,EACnB,qBAAqB,EACrB,MAAM,CAAC,mBAAmB,CAC3B,CAAC;IAEF,yDAAyD;IACzD,kEAAkE;IAClE,sEAAsE;IACtE,UAAU,CAAC,QAAQ,GAAG,sBAAsB,CAAC;IAC7C,IAAI,iBAAiB,GAAG,MAAM,kBAAkB,CAC9C,MAAM,CAAC,gBAAgB,EACvB,cAAc,EACd,MAAM,CAAC,cAAc,EACrB,YAAY,EACZ,cAAc,EACd,GAAG,EACH,OAAO,EACP,cAAc,CACf,CAAC;IAEF,oEAAoE;IACpE,kEAAkE;IAClE,IAAI,kBAAkB,GAAG,mBAAmB,CAAC,MAAM,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;IACzF,mBAAmB,CAAC,MAAM,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC;IAE7D,iEAAiE;IACjE,MAAM,QAAQ,GAAG,iBAAiB,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC;IAC9D,MAAM,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpC,IAAI,YAA0C,CAAC;IAE/C,IAAI,QAAQ,EAAE,CAAC;QACb,UAAU,CAAC,QAAQ,GAAG,eAAe,CAAC;QACtC,MAAM,aAAa,GAAG,oBAAoB,CACxC,MAAM,CAAC,YAAY,EACnB,oBAAoB,EACpB,MAAM,CAAC,mBAAmB,CAC3B,CAAC;QAEF,4DAA4D;QAC5D,MAAM,QAAQ,GAAG,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QAC9E,IAAI,cAA4D,CAAC;QACjE,IAAI,QAAQ,EAAE,CAAC;YACb,cAAc,GAAG,MAAM,yBAAyB,CAAC,iBAAiB,CAAC,eAAe,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;QACzG,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,UAAU,2BAA2B,CAAC;QACjE,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,WAAW,CACjD,YAAY,EACZ,KAAK,EAAE,OAAO,EAAE,EAAE,CAChB,eAAe,CAAC,iBAAiB,CAAC,eAAe,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,cAAc,EAAE,EAAE,aAAa,EAAE,CAAC,GAAG,EAAE,EAAE;gBACxG,OAAO,CAAC,IAAI,GAAG,GAAG,YAAY,MAAM,GAAG,EAAE,CAAC;YAC5C,CAAC,CAAC,EACJ,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;gBAClB,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;gBAC/C,OAAO,GAAG,YAAY,KAAK,KAAK,sBAAsB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;YAC/E,CAAC,CACF,CAAC;YACF,YAAY,GAAG,aAAa,CAAC;YAC7B,aAAa,CAAC,MAAM,CAAC,YAAY,EAAE,oBAAoB,EAAE,YAAY,CAAC,CAAC;QACzE,CAAC;gBAAS,CAAC;YACT,IAAI,cAAc,EAAE,CAAC;gBACnB,MAAM,oBAAoB,CAAC,cAAc,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,MAAM,oBAAoB,GAAG,2BAA2B,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAElF,0CAA0C;IAC1C,MAAM,iBAAiB,GAAG,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,GAAG,CAAC;IAChE,UAAU,CAAC,QAAQ,GAAG,oBAAoB,CAAC;IAC3C,MAAM,cAAc,GAAG,0BAA0B,CAC/C,MAAM,CAAC,gBAAgB,EACvB,cAAc,EACd,MAAM,CAAC,gBAAgB,EACvB,oBAAoB,EACpB,YAAY,CACb,CAAC;IACF,MAAM,YAAY,GAAG,oBAAoB,CAAC,cAAc,EAAE,uBAAuB,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC5G,MAAM,cAAc,GAAG,aAAa,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;IACtE,MAAM,cAAc,GAAG,MAAM,qBAAqB,CAChD,MAAM,CAAC,gBAAgB,EACvB,cAAc,EACd,MAAM,CAAC,gBAAgB,EACvB,oBAAoB,EACpB,YAAY,EACZ,iBAAiB,EACjB,GAAG,EACH,iBAAiB,EACjB,cAAc,CACf,CAAC;IAEF,+DAA+D;IAC/D,kEAAkE;IAClE,sBAAsB,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;IAErF,gEAAgE;IAChE,MAAM,YAAY,GAAG,IAAI,YAAY,CACnC,kBAAkB,EAClB,mBAAmB,EACnB,MAAM,CAAC,cAAc,EACrB,MAAM,CAAC,gBAAgB,EACvB,SAAS,EACT,YAAY,CACb,CAAC;IACF,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,kBAAkB,EAAE,GAAG,+BAA+B,CAC5F,YAAY,EACZ,cAAc,CAAC,SAAS,EACxB,0CAA0C,CAC3C,CAAC;IACF,IAAI,iBAAiB,GAAG,YAAY,CAAC;IAErC,wDAAwD;IACxD,MAAM,eAAe,GAAG,IAAI,UAAU,IAAI,UAAU,GAAG,CAAC;IACxD,UAAU,CAAC,QAAQ,GAAG,eAAe,CAAC;IACtC,MAAM,iBAAiB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC1G,MAAM,eAAe,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAA0B,CAAC;IACvG,MAAM,aAAa,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAA0B,CAAC;IACnG,IAAI,cAAc,GAAG,aAAa,CAAC,gBAAgB,CACjD,sBAAsB,CACpB,MAAM,CAAC,gBAAgB,EACvB,kBAAkB,EAClB,MAAM,CAAC,cAAc,EACrB,iBAAiB,EACjB,YAAY,EACZ,MAAM,CAAC,gBAAgB,CACxB,CACF,CAAC;IACF,IAAI,eAAe,GAAG,IAAI,qBAAqB,CAAC;QAC9C,MAAM,EAAE,cAAc;QACtB,KAAK,EAAE,GAAG;QACV,WAAW,EAAE,eAAe;QAC5B,SAAS,EAAE,aAAa;KACzB,CAAC,CAAC;IACH,MAAM,EAAE,MAAM,EAAE,yBAAyB,EAAE,GAAG,MAAM,WAAW,CAC7D,GAAG,eAAe,mBAAmB,EACrC,KAAK,EAAE,OAAO,EAAE,EAAE,CAChB,oBAAoB,CAClB,MAAM,CAAC,gBAAgB,EACvB,kBAAkB,EAClB,mBAAmB,EACnB,MAAM,CAAC,cAAc,EACrB,iBAAiB,EACjB,GAAG,EACH,MAAM,CAAC,gBAAgB,EACvB,CAAC,EACD,IAAI,EACJ,CAAC,GAAG,EAAE,EAAE;QACN,OAAO,CAAC,IAAI,GAAG,GAAG,eAAe,uBAAuB,GAAG,EAAE,CAAC;IAChE,CAAC,EACD,sBAAsB,EACtB,YAAY,EACZ,cAAc,EACd,eAAe,CAChB,EACH,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,CACb,CAAC,CAAC,IAAI;QACJ,CAAC,CAAC,GAAG,eAAe,qBAAqB,CAAC,CAAC,MAAM,CAAC,MAAM,cAAc,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;QAC5F,CAAC,CAAC,GAAG,eAAe,0CAA0C,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CACzF,CAAC;IACF,IAAI,kBAAkB,GAAG,yBAAyB,CAAC;IAEnD,uEAAuE;IACvE,mDAAmD;IACnD,MAAM,EAAE,KAAK,EAAE,qBAAqB,EAAE,GAAG,+BAA+B,CACtE,YAAY,EACZ,qBAAqB,CAAC,kBAAkB,CAAC,EACzC,uCAAuC,CACxC,CAAC;IACF,MAAM,iBAAiB,GAAmB,qBAAqB,CAAC;IAEhE,oEAAoE;IACpE,sEAAsE;IACtE,kDAAkD;IAClD,yDAAyD;IACzD,yCAAyC;IACzC,MAAM,WAAW,GAAG,CAAC,CAAC;IACtB,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,IAAI,0BAA0B,GAAG,CAAC,CAAC;IAEnC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;QAC7B,MAAM,aAAa,GAAG,iBAAiB,CAAC,SAAS,CAAC;QAElD,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,WAAW,EAAE,OAAO,EAAE,EAAE,CAAC;YACxD,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAElB,2EAA2E;YAC3E,MAAM,SAAS,GAAG,kBAAkB,CAAC,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAEnE,CAAC;YACd,MAAM,aAAa,GAAG,SAAS,EAAE,WAAW,IAAI,kBAAkB,CAAC,OAAO,CAAC;YAC3E,MAAM,kBAAkB,GAAG,SAAS,EAAE,kBAAkB,IAAI,EAAE,CAAC;YAE/D,oEAAoE;YACpE,MAAM,YAAY,GAAG,CAAC,GAAG,cAAc,CAAC,SAAS,EAAE,GAAG,iBAAiB,CAAC,CAAC;YACzE,MAAM,EAAE,WAAW,EAAE,mBAAmB,EAAE,GAAG,0BAA0B,CAAC,kBAAkB,EAAE,YAAY,CAAC,CAAC;YAE1G,KAAK,MAAM,OAAO,IAAI,mBAAmB,EAAE,CAAC;gBAC1C,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,OAAO,EAAE,CAAC,CAAC;YAC5D,CAAC;YAED,yEAAyE;YACzE,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,cAAc,CAAC,SAAS,GAAG,wBAAwB,CAAC,cAAc,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;gBAC3F,MAAM,eAAe,GAAG,wBAAwB,CAAC,iBAAiB,EAAE,WAAW,CAAC,CAAC;gBACjF,iBAAiB,CAAC,MAAM,CAAC,CAAC,EAAE,iBAAiB,CAAC,MAAM,EAAE,GAAG,eAAe,CAAC,CAAC;gBAC1E,0BAA0B,IAAI,WAAW,CAAC,MAAM,CAAC;gBACjD,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,aAAa,WAAW,CAAC,MAAM,0BAA0B,CAAC,EAAE,CAAC,CAAC;YAC7F,CAAC;YAED,oEAAoE;YACpE,qEAAqE;YACrE,MAAM,EAAE,OAAO,EAAE,GAAG,cAAc,CAAC;YACnC,IAAI,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC;gBACzG,MAAM,QAAQ,GAAqB;oBACjC,WAAW;oBACX,kBAAkB;oBAClB,cAAc,EAAE,iBAAiB;iBAClC,CAAC;gBAEF,UAAU,CAAC,QAAQ,GAAG,qBAAqB,OAAO,EAAE,CAAC;gBACrD,MAAM,SAAS,GAAG,UAAU,OAAO,IAAI,WAAW,0BAA0B,CAAC;gBAC7E,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,WAAW,CAChD,SAAS,EACT,KAAK,EAAE,OAAO,EAAE,EAAE,CAChB,OAAO,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE;oBACnC,OAAO,CAAC,IAAI,GAAG,GAAG,SAAS,MAAM,GAAG,EAAE,CAAC;gBACzC,CAAC,CAAC,EACJ,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,GAAG,SAAS,KAAK,CAAC,CAAC,MAAM,oBAAoB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CACpF,CAAC;gBAEF,0EAA0E;gBAC1E,cAAc,CAAC,SAAS,GAAG,iBAAiB,CAC1C,cAAc,CAAC,SAAS,EACxB,YAAY,EACZ,WAAW,EACX,kBAAkB,CACnB,CAAC;YACJ,CAAC;YAED,0EAA0E;YAC1E,kEAAkE;YAClE,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,GAAG,+BAA+B,CAAC,YAAY,EAAE,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC;YAEzG,oDAAoD;YACpD,qEAAqE;YACrE,6EAA6E;YAC7E,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC5E,MAAM,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,mBAAmB,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;gBAC9F,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM;oBAAE,OAAO,IAAI,CAAC;gBACnF,OAAO,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;YAC7E,CAAC,CAAC,CAAC;YAEH,IAAI,qBAAqB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrC,+DAA+D;gBAC/D,MAAM,aAAa,GAAkB;oBACnC,eAAe,EAAE,qBAAqB;oBACtC,aAAa;oBACb,aAAa,EAAE,OAAO;oBACtB,uBAAuB,EACrB,iBAAiB,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS;oBAC9F,oBAAoB;iBACrB,CAAC;gBAEF,UAAU,CAAC,QAAQ,GAAG,kBAAkB,OAAO,EAAE,CAAC;gBAClD,MAAM,iBAAiB,GAAG,UAAU,OAAO,IAAI,WAAW,eAAe,CAAC;gBAC1E,MAAM,EAAE,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,WAAW,CACvD,iBAAiB,EACjB,KAAK,EAAE,OAAO,EAAE,EAAE,CAChB,4BAA4B,CAC1B,MAAM,CAAC,gBAAgB,EACvB,cAAc,EACd,MAAM,CAAC,cAAc,EACrB,aAAa,EACb,aAAa,EACb,GAAG,EACH,CAAC,GAAG,EAAE,EAAE;oBACN,OAAO,CAAC,IAAI,GAAG,GAAG,iBAAiB,MAAM,GAAG,EAAE,CAAC;gBACjD,CAAC,EACD,cAAc,EACd,iBAAiB,CAAC,OAAO,CAC1B,EACH,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,CACb,UAAU,OAAO,IAAI,WAAW,gBAAgB,CAAC,CAAC,KAAK,CAAC,MAAM,WAAW,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAClG,CAAC;gBACF,iBAAiB,GAAG,mBAAmB,CAAC;gBAExC,qEAAqE;gBACrE,IAAI,YAAY,IAAI,iBAAiB,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACjE,MAAM,YAAY,GAAG,YAAY,CAAC;oBAClC,MAAM,WAAW,GAAG,iBAAiB,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;oBACzG,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC3B,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;wBAC7D,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BAC3B,OAAO,CAAC,KAAK,CACX,KAAK,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,sBAAsB,WAAW,CAAC,MAAM,kDAAkD,CACxH,CAAC;wBACJ,CAAC;wBACD,MAAM,aAAa,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;wBAChE,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;4BAC7B,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,aAAa,aAAa,CAAC,MAAM,6BAA6B,CAAC,EAAE,CAAC,CAAC;4BAChG,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,YAAY,CAAC,CAAC;4BACpF,YAAY,GAAG;gCACb,GAAG,QAAQ;gCACX,KAAK,EAAE,EAAE,GAAG,YAAY,CAAC,KAAK,EAAE,GAAG,QAAQ,CAAC,KAAK,EAAE;6BACpD,CAAC;4BACF,aAAa,CAAC,MAAM,CAAC,YAAY,EAAE,oBAAoB,EAAE,YAAY,CAAC,CAAC;wBACzE,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,gCAAgC;gBAChC,kBAAkB,GAAG,mBAAmB,CAAC,MAAM,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;gBACrF,mBAAmB,CAAC,MAAM,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAAC;gBAE7D,gEAAgE;gBAChE,cAAc,GAAG,aAAa,CAAC,gBAAgB,CAC7C,sBAAsB,CACpB,MAAM,CAAC,gBAAgB,EACvB,kBAAkB,EAClB,MAAM,CAAC,cAAc,EACrB,iBAAiB,EACjB,YAAY,EACZ,MAAM,CAAC,gBAAgB,CACxB,CACF,CAAC;gBACF,eAAe,GAAG,IAAI,qBAAqB,CAAC;oBAC1C,MAAM,EAAE,cAAc;oBACtB,KAAK,EAAE,GAAG;oBACV,WAAW,EAAE,eAAe;oBAC5B,SAAS,EAAE,aAAa;iBACzB,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,kDAAkD,CAAC,EAAE,CAAC,CAAC;YACtF,CAAC;YAED,uEAAuE;YACvE,UAAU,CAAC,QAAQ,GAAG,iBAAiB,OAAO,EAAE,CAAC;YACjD,MAAM,eAAe,GAAG,CAAC,GAAG,iBAAiB,EAAE,GAAG,iBAAiB,CAAC,CAAC;YACrE,MAAM,gBAAgB,GAAG,UAAU,OAAO,IAAI,WAAW,aAAa,CAAC;YACvE,MAAM,EAAE,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,WAAW,CACtD,gBAAgB,EAChB,KAAK,EAAE,OAAO,EAAE,EAAE,CAChB,oBAAoB,CAClB,MAAM,CAAC,gBAAgB,EACvB,kBAAkB,EAClB,mBAAmB,EACnB,MAAM,CAAC,cAAc,EACrB,eAAe,EACf,GAAG,EACH,MAAM,CAAC,gBAAgB,EACvB,CAAC,EACD,IAAI,EACJ,CAAC,GAAG,EAAE,EAAE;gBACN,OAAO,CAAC,IAAI,GAAG,GAAG,gBAAgB,MAAM,GAAG,EAAE,CAAC;YAChD,CAAC,EACD,sBAAsB,EACtB,YAAY,EACZ,cAAc,EACd,eAAe,CAChB,EACH,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,CACb,CAAC,CAAC,IAAI;gBACJ,CAAC,CAAC,UAAU,OAAO,IAAI,WAAW,eAAe,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;gBACvE,CAAC,CAAC,UAAU,OAAO,IAAI,WAAW,KAAK,CAAC,CAAC,eAAe,CAAC,MAAM,gBAAgB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAC1G,CAAC;YACF,kBAAkB,GAAG,kBAAkB,CAAC;YAExC,qEAAqE;YACrE,MAAM,EAAE,KAAK,EAAE,iBAAiB,EAAE,GAAG,+BAA+B,CAClE,YAAY,EACZ,qBAAqB,CAAC,kBAAkB,CAAC,EACzC,uCAAuC,CACxC,CAAC;YACF,iBAAiB,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,CAAC;YAE7C,cAAc,GAAG,OAAO,CAAC;YAEzB,IAAI,kBAAkB,CAAC,IAAI,EAAE,CAAC;gBAC5B,6DAA6D;gBAC7D,UAAU,CAAC,QAAQ,GAAG,cAAc,CAAC;gBACrC,MAAM,cAAc,GAAG,CAAC,GAAG,iBAAiB,EAAE,GAAG,iBAAiB,CAAC,CAAC;gBACpE,0EAA0E;gBAC1E,MAAM,YAAY,GAAG,IAAI,qBAAqB,CAAC;oBAC7C,MAAM,EAAE,cAAc;oBACtB,KAAK,EAAE,GAAG;oBACV,WAAW,EAAE,eAAe;oBAC5B,SAAS,EAAE,aAAa;iBACzB,CAAC,CAAC;gBACH,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,WAAW,CACrD,yBAAyB,EACzB,KAAK,EAAE,OAAO,EAAE,EAAE,CAChB,oBAAoB,CAClB,MAAM,CAAC,gBAAgB,EACvB,kBAAkB,EAClB,mBAAmB,EACnB,MAAM,CAAC,cAAc,EACrB,cAAc,EACd,GAAG,EACH,MAAM,CAAC,gBAAgB,EACvB,CAAC,EACD,IAAI,EACJ,CAAC,GAAG,EAAE,EAAE;oBACN,OAAO,CAAC,IAAI,GAAG,6BAA6B,GAAG,EAAE,CAAC;gBACpD,CAAC,EACD,sBAAsB,EACtB,YAAY,EACZ,cAAc,EACd,YAAY,CACb,EACH,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,CACb,CAAC,CAAC,IAAI;oBACJ,CAAC,CAAC,oCAAoC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;oBAC5D,CAAC,CAAC,4BAA4B,CAAC,CAAC,eAAe,CAAC,MAAM,gBAAgB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CACjG,CAAC;gBACF,kBAAkB,GAAG,iBAAiB,CAAC;gBAEvC,oFAAoF;gBACpF,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,GAAG,+BAA+B,CACjE,YAAY,EACZ,qBAAqB,CAAC,kBAAkB,CAAC,EACzC,uCAAuC,CACxC,CAAC;gBACF,iBAAiB,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAC;gBAC5C,MAAM;YACR,CAAC;QACH,CAAC;IACH,CAAC;IAED,+DAA+D;IAC/D,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;QACvB,sBAAsB,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;IACvF,CAAC;IAED,gDAAgD;IAChD,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;IACrF,MAAM,YAAY,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QAClD,IAAI,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC;YAAE,OAAO,KAAK,CAAC;QACtD,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;IAE5E,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClB,OAAO,CAAC,KAAK,CAAC,YAAY,iBAAiB,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5D,OAAO,CAAC,KAAK,CAAC,uBAAuB,oBAAoB,EAAE,CAAC,CAAC;IAC7D,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClC,OAAO,CAAC,KAAK,CAAC,iDAAiD,kBAAkB,CAAC,MAAM,EAAE,CAAC,CAAC;IAC9F,CAAC;IACD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,OAAO,CAAC,KAAK,CAAC,kCAAkC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;IACzE,CAAC;IACD,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,KAAK,CAAC,sBAAsB,cAAc,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,0BAA0B,GAAG,CAAC,EAAE,CAAC;QACnC,OAAO,CAAC,KAAK,CAAC,2BAA2B,0BAA0B,EAAE,CAAC,CAAC;IACzE,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,2BAA2B,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC;IACjF,OAAO,CAAC,KAAK,CAAC,0BAA0B,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAE9D,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,CAAC;QAC7B,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC,CAAC;QACrG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,CAAC;AACpE,CAAC;AAED,yEAAyE;AACzE,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;IACnF,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;IAC9B,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;QAC5B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,4BAA4B,CAAC,EAAE,GAAG,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -65,12 +65,15 @@ function buildCompilerResponseSchema(serverNames, toolNames) {
|
|
|
65
65
|
function formatGroundTruthSection(scenarios) {
|
|
66
66
|
if (!scenarios || scenarios.length === 0)
|
|
67
67
|
return '';
|
|
68
|
-
const lines = scenarios.map((s, i) =>
|
|
68
|
+
const lines = scenarios.map((s, i) => {
|
|
69
|
+
const decision = s.expectedDecision === 'not-allow' ? 'NOT allow (deny or escalate)' : s.expectedDecision;
|
|
70
|
+
return `${i + 1}. ${s.request.serverName}/${s.request.toolName} ${JSON.stringify(s.request.arguments)} → ${decision}\n ${s.reasoning}`;
|
|
71
|
+
});
|
|
69
72
|
return `
|
|
70
73
|
## Ground Truth Constraints
|
|
71
74
|
|
|
72
75
|
These test scenarios represent required policy outcomes. Your compiled rules
|
|
73
|
-
MUST produce these
|
|
76
|
+
MUST produce these decisions:
|
|
74
77
|
|
|
75
78
|
${lines.join('\n\n')}
|
|
76
79
|
`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constitution-compiler.js","sourceRoot":"","sources":["../../src/pipeline/constitution-compiler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"constitution-compiler.js","sourceRoot":"","sources":["../../src/pipeline/constitution-compiler.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,31 +9,30 @@
|
|
|
9
9
|
* should satisfy. Constitution-dependent scenarios (git rules, fetch rules,
|
|
10
10
|
* read/write escalation) are left to the LLM scenario generator.
|
|
11
11
|
*/
|
|
12
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
13
12
|
export function getHandwrittenScenarios(sandboxDir) {
|
|
14
13
|
return [
|
|
15
|
-
//
|
|
14
|
+
// Move from outside sandbox carries delete-path on source — must not be allowed
|
|
16
15
|
{
|
|
17
|
-
description: '
|
|
16
|
+
description: 'Move file from outside sandbox to sandbox -- not allowed',
|
|
18
17
|
request: {
|
|
19
18
|
serverName: 'filesystem',
|
|
20
|
-
toolName: '
|
|
21
|
-
arguments: {
|
|
19
|
+
toolName: 'move_file',
|
|
20
|
+
arguments: { source: '/etc/important.txt', destination: `${sandboxDir}/important.txt` },
|
|
22
21
|
},
|
|
23
|
-
expectedDecision: '
|
|
24
|
-
reasoning: '
|
|
22
|
+
expectedDecision: 'not-allow',
|
|
23
|
+
reasoning: 'Move carries delete-path on the source outside the sandbox; the agent must not be able to do this without human intervention.',
|
|
25
24
|
source: 'handwritten',
|
|
26
25
|
},
|
|
27
26
|
// Universal "human oversight for writes outside sandbox" invariant
|
|
28
27
|
{
|
|
29
|
-
description: 'Write file outside sandbox --
|
|
28
|
+
description: 'Write file outside sandbox -- not allowed',
|
|
30
29
|
request: {
|
|
31
30
|
serverName: 'filesystem',
|
|
32
31
|
toolName: 'write_file',
|
|
33
32
|
arguments: { path: '/etc/test.txt', content: 'hello' },
|
|
34
33
|
},
|
|
35
|
-
expectedDecision: '
|
|
36
|
-
reasoning: '
|
|
34
|
+
expectedDecision: 'not-allow',
|
|
35
|
+
reasoning: 'Writes outside permitted areas must not be allowed without human intervention.',
|
|
37
36
|
source: 'handwritten',
|
|
38
37
|
},
|
|
39
38
|
];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handwritten-scenarios.js","sourceRoot":"","sources":["../../src/pipeline/handwritten-scenarios.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,
|
|
1
|
+
{"version":3,"file":"handwritten-scenarios.js","sourceRoot":"","sources":["../../src/pipeline/handwritten-scenarios.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,MAAM,UAAU,uBAAuB,CAAC,UAAkB;IACxD,OAAO;QACL,gFAAgF;QAChF;YACE,WAAW,EAAE,0DAA0D;YACvE,OAAO,EAAE;gBACP,UAAU,EAAE,YAAY;gBACxB,QAAQ,EAAE,WAAW;gBACrB,SAAS,EAAE,EAAE,MAAM,EAAE,oBAAoB,EAAE,WAAW,EAAE,GAAG,UAAU,gBAAgB,EAAE;aACxF;YACD,gBAAgB,EAAE,WAAW;YAC7B,SAAS,EACP,+HAA+H;YACjI,MAAM,EAAE,aAAa;SACtB;QAED,mEAAmE;QACnE;YACE,WAAW,EAAE,2CAA2C;YACxD,OAAO,EAAE;gBACP,UAAU,EAAE,YAAY;gBACxB,QAAQ,EAAE,YAAY;gBACtB,SAAS,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,OAAO,EAAE;aACvD;YACD,gBAAgB,EAAE,WAAW;YAC7B,SAAS,EAAE,gFAAgF;YAC3F,MAAM,EAAE,aAAa;SACtB;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -34,7 +34,7 @@ export declare function formatFailedResults(results: ExecutionResult[]): string;
|
|
|
34
34
|
export declare function buildJudgeSystemPrompt(constitutionText: string, compiledPolicy: CompiledPolicyFile, protectedPaths: string[], availableTools?: {
|
|
35
35
|
serverName: string;
|
|
36
36
|
toolName: string;
|
|
37
|
-
}[], dynamicLists?: DynamicListsFile): string;
|
|
37
|
+
}[], dynamicLists?: DynamicListsFile, sandboxDirectory?: string): string;
|
|
38
38
|
declare function buildJudgeResponseSchema(serverNames: [string, ...string[]], toolNames: [string, ...string[]]): z.ZodObject<{
|
|
39
39
|
analysis: z.ZodString;
|
|
40
40
|
pass: z.ZodBoolean;
|
|
@@ -26,7 +26,9 @@ export function executeScenarios(engine, scenarios) {
|
|
|
26
26
|
scenario,
|
|
27
27
|
actualDecision: result.decision,
|
|
28
28
|
matchingRule: result.rule,
|
|
29
|
-
pass:
|
|
29
|
+
pass: scenario.expectedDecision === 'not-allow'
|
|
30
|
+
? result.decision !== 'allow'
|
|
31
|
+
: result.decision === scenario.expectedDecision,
|
|
30
32
|
};
|
|
31
33
|
});
|
|
32
34
|
}
|
|
@@ -76,7 +78,7 @@ export function formatFailedResults(results) {
|
|
|
76
78
|
* decision types, instructions, and available tools.
|
|
77
79
|
* This is the cacheable part — it stays the same across verification rounds.
|
|
78
80
|
*/
|
|
79
|
-
export function buildJudgeSystemPrompt(constitutionText, compiledPolicy, protectedPaths, availableTools, dynamicLists) {
|
|
81
|
+
export function buildJudgeSystemPrompt(constitutionText, compiledPolicy, protectedPaths, availableTools, dynamicLists, sandboxDirectory) {
|
|
80
82
|
const rulesText = compiledPolicy.rules
|
|
81
83
|
.map((r, i) => ` ${i + 1}. [${r.name}] if: ${JSON.stringify(r.if)} then: ${r.then} -- ${r.reason}`)
|
|
82
84
|
.join('\n');
|
|
@@ -96,6 +98,7 @@ ${rulesText}
|
|
|
96
98
|
- Introspection tools (list_allowed_directories): always allowed
|
|
97
99
|
- Protected paths (any write/delete targeting these is automatically denied):
|
|
98
100
|
${protectedPaths.map((p) => ` - ${p}`).join('\n')}
|
|
101
|
+
- Sandbox containment: any tool call where ALL paths are within the sandbox directory${sandboxDirectory ? ` (\`${sandboxDirectory}\`)` : ''} is automatically allowed BEFORE compiled rules are evaluated. An "allow" result for sandbox-internal paths is always correct — do NOT flag it as a failure or generate scenarios to test it.
|
|
99
102
|
|
|
100
103
|
A \`deny\` result for write/delete operations on these paths is correct structural behavior, not a policy gap. Files with similar names inside the sandbox are NOT protected.
|
|
101
104
|
${formatDynamicListsSection(dynamicLists)}
|
|
@@ -136,7 +139,7 @@ When analyzing FAIL results:
|
|
|
136
139
|
5. Set "pass" to true ONLY if all results are correct and coverage is adequate.
|
|
137
140
|
6. Return a "failureAttributions" entry for EVERY FAIL result. The scenarioDescription must exactly match the FAIL scenario's description.
|
|
138
141
|
|
|
139
|
-
For additional scenarios, use concrete paths matching the directories in the compiled rules.
|
|
142
|
+
For additional scenarios, use concrete paths matching the directories in the compiled rules. Do NOT generate additional scenarios with paths inside the sandbox directory${sandboxDirectory ? ` (\`${sandboxDirectory}\`)` : ''} — sandbox containment is handled by a structural invariant before compiled rules run and is always correct. Only generate scenarios for paths OUTSIDE the sandbox.
|
|
140
143
|
|
|
141
144
|
## Available Tools
|
|
142
145
|
|
|
@@ -290,7 +293,7 @@ export async function verifyPolicy(constitutionText, compiledPolicy, toolAnnotat
|
|
|
290
293
|
const toolNamesList = [...new Set(allAnnotations.map((a) => a.toolName))];
|
|
291
294
|
effectiveSession = new PolicyVerifierSession({
|
|
292
295
|
system: system ??
|
|
293
|
-
buildJudgeSystemPrompt(constitutionText, compiledPolicy, protectedPaths, allAnnotations.map((a) => ({ serverName: a.serverName, toolName: a.toolName })), dynamicLists),
|
|
296
|
+
buildJudgeSystemPrompt(constitutionText, compiledPolicy, protectedPaths, allAnnotations.map((a) => ({ serverName: a.serverName, toolName: a.toolName })), dynamicLists, allowedDirectory),
|
|
294
297
|
model: llm,
|
|
295
298
|
serverNames: serverNamesList,
|
|
296
299
|
toolNames: toolNamesList,
|