@intutic/shared-types 2.2.0 → 2.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/dist/anomaly.d.ts +6 -10
- package/dist/anomaly.d.ts.map +1 -1
- package/dist/anomaly.js +0 -2
- package/dist/anomaly.js.map +1 -1
- package/dist/api-contracts.d.ts +1 -1
- package/dist/api-contracts.js +1 -1
- package/dist/attenuation.d.ts +1 -1
- package/dist/attenuation.js +1 -1
- package/dist/auth.d.ts +116 -9
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +20 -5
- package/dist/auth.js.map +1 -1
- package/dist/billing.d.ts +1 -1
- package/dist/billing.js +1 -1
- package/dist/cloudProbe.d.ts +54 -0
- package/dist/cloudProbe.d.ts.map +1 -0
- package/dist/cloudProbe.js +254 -0
- package/dist/cloudProbe.js.map +1 -0
- package/dist/destructiveSql.d.ts +48 -0
- package/dist/destructiveSql.d.ts.map +1 -0
- package/dist/destructiveSql.js +43 -0
- package/dist/destructiveSql.js.map +1 -0
- package/dist/devInventory.d.ts +120 -0
- package/dist/devInventory.d.ts.map +1 -0
- package/dist/devInventory.js +80 -0
- package/dist/devInventory.js.map +1 -0
- package/dist/enums.d.ts +66 -21
- package/dist/enums.d.ts.map +1 -1
- package/dist/enums.js +55 -31
- package/dist/enums.js.map +1 -1
- package/dist/errors.js +3 -3
- package/dist/errors.js.map +1 -1
- package/dist/finops.d.ts +52 -2
- package/dist/finops.d.ts.map +1 -1
- package/dist/finops.js +15 -1
- package/dist/finops.js.map +1 -1
- package/dist/gateDecisions.d.ts +18 -0
- package/dist/gateDecisions.d.ts.map +1 -0
- package/dist/gateDecisions.js +20 -0
- package/dist/gateDecisions.js.map +1 -0
- package/dist/gateIdentity.d.ts +23 -0
- package/dist/gateIdentity.d.ts.map +1 -0
- package/dist/gateIdentity.js +32 -0
- package/dist/gateIdentity.js.map +1 -0
- package/dist/gateKind.d.ts +172 -0
- package/dist/gateKind.d.ts.map +1 -0
- package/dist/gateKind.js +160 -0
- package/dist/gateKind.js.map +1 -0
- package/dist/gateLimits.d.ts +170 -0
- package/dist/gateLimits.d.ts.map +1 -0
- package/dist/gateLimits.js +96 -0
- package/dist/gateLimits.js.map +1 -0
- package/dist/gitRemote.d.ts +17 -0
- package/dist/gitRemote.d.ts.map +1 -0
- package/dist/gitRemote.js +71 -0
- package/dist/gitRemote.js.map +1 -0
- package/dist/governanceCoverage.d.ts +1 -1
- package/dist/governanceCoverage.js +1 -1
- package/dist/guardrailIr.d.ts +9 -9
- package/dist/guardrailIr.d.ts.map +1 -1
- package/dist/guardrailIr.js +3 -3
- package/dist/guardrailIr.js.map +1 -1
- package/dist/guardrailRender.d.ts +1 -1
- package/dist/guardrailRender.js +1 -1
- package/dist/harnessRules.d.ts +74 -0
- package/dist/harnessRules.d.ts.map +1 -0
- package/dist/harnessRules.js +142 -0
- package/dist/harnessRules.js.map +1 -0
- package/dist/holdMessages.d.ts +25 -0
- package/dist/holdMessages.d.ts.map +1 -0
- package/dist/holdMessages.js +34 -0
- package/dist/holdMessages.js.map +1 -0
- package/dist/identity.d.ts +1 -1
- package/dist/identity.js +2 -2
- package/dist/identity.js.map +1 -1
- package/dist/index.d.ts +42 -9
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +161 -10
- package/dist/index.js.map +1 -1
- package/dist/intelligence.d.ts +1 -1
- package/dist/mcpBudgets.d.ts +191 -0
- package/dist/mcpBudgets.d.ts.map +1 -0
- package/dist/mcpBudgets.js +144 -0
- package/dist/mcpBudgets.js.map +1 -0
- package/dist/mcpRegistryRecord.d.ts +143 -0
- package/dist/mcpRegistryRecord.d.ts.map +1 -0
- package/dist/mcpRegistryRecord.js +229 -0
- package/dist/mcpRegistryRecord.js.map +1 -0
- package/dist/mcpToolRisk.d.ts +82 -0
- package/dist/mcpToolRisk.d.ts.map +1 -0
- package/dist/mcpToolRisk.js +334 -0
- package/dist/mcpToolRisk.js.map +1 -0
- package/dist/modelCatalog.d.ts +2 -2
- package/dist/modelCatalog.generated.js +1 -1
- package/dist/modelCatalog.generated.js.map +1 -1
- package/dist/modelCatalog.js +2 -2
- package/dist/notifications.d.ts +24 -151
- package/dist/notifications.d.ts.map +1 -1
- package/dist/notifications.js +266 -1
- package/dist/notifications.js.map +1 -1
- package/dist/phrases.d.ts +87 -0
- package/dist/phrases.d.ts.map +1 -0
- package/dist/phrases.js +241 -0
- package/dist/phrases.js.map +1 -0
- package/dist/piiDetectors.d.ts +97 -0
- package/dist/piiDetectors.d.ts.map +1 -0
- package/dist/piiDetectors.js +96 -0
- package/dist/piiDetectors.js.map +1 -0
- package/dist/piiDetectors.json +71 -0
- package/dist/policy.d.ts +1 -1
- package/dist/policy.js +1 -1
- package/dist/policyGuardrails.d.ts +127 -10
- package/dist/policyGuardrails.d.ts.map +1 -1
- package/dist/policyGuardrails.js +59 -6
- package/dist/policyGuardrails.js.map +1 -1
- package/dist/posturePresets.js +1 -1
- package/dist/posturePresets.js.map +1 -1
- package/dist/providerVerification.d.ts +36 -10
- package/dist/providerVerification.d.ts.map +1 -1
- package/dist/providerVerification.js +80 -20
- package/dist/providerVerification.js.map +1 -1
- package/dist/providers.d.ts +54 -17
- package/dist/providers.d.ts.map +1 -1
- package/dist/providers.js +135 -26
- package/dist/providers.js.map +1 -1
- package/dist/regoBuiltins.d.ts +42 -0
- package/dist/regoBuiltins.d.ts.map +1 -0
- package/dist/regoBuiltins.js +732 -0
- package/dist/regoBuiltins.js.map +1 -0
- package/dist/regoRules.d.ts +105 -0
- package/dist/regoRules.d.ts.map +1 -0
- package/dist/regoRules.js +407 -0
- package/dist/regoRules.js.map +1 -0
- package/dist/ruleLoadFailures.d.ts +15 -0
- package/dist/ruleLoadFailures.d.ts.map +1 -0
- package/dist/ruleLoadFailures.js +26 -0
- package/dist/ruleLoadFailures.js.map +1 -0
- package/dist/scriptScan.d.ts +5 -5
- package/dist/scriptScan.js +3 -3
- package/dist/sequence.d.ts +52 -0
- package/dist/sequence.d.ts.map +1 -0
- package/dist/sequence.js +127 -0
- package/dist/sequence.js.map +1 -0
- package/dist/session.d.ts +1 -1
- package/dist/session.js +1 -1
- package/dist/skillScan.d.ts +3 -3
- package/dist/skillScan.d.ts.map +1 -1
- package/dist/skillScan.js +26 -4
- package/dist/skillScan.js.map +1 -1
- package/dist/sop.d.ts +5 -5
- package/dist/sop.js +2 -2
- package/dist/sourceProviders.d.ts +1 -8
- package/dist/sourceProviders.d.ts.map +1 -1
- package/dist/sourceProviders.js +2 -9
- package/dist/sourceProviders.js.map +1 -1
- package/dist/spendBudgets.d.ts +122 -0
- package/dist/spendBudgets.d.ts.map +1 -0
- package/dist/spendBudgets.js +92 -0
- package/dist/spendBudgets.js.map +1 -0
- package/dist/ssoGroupClearance.d.ts +18 -2
- package/dist/ssoGroupClearance.d.ts.map +1 -1
- package/dist/ssoGroupClearance.js +43 -4
- package/dist/ssoGroupClearance.js.map +1 -1
- package/dist/sync.d.ts +0 -1
- package/dist/sync.d.ts.map +1 -1
- package/dist/sync.js +0 -1
- package/dist/sync.js.map +1 -1
- package/dist/taskManagement.d.ts +0 -2
- package/dist/taskManagement.d.ts.map +1 -1
- package/dist/taskManagement.js +0 -2
- package/dist/taskManagement.js.map +1 -1
- package/dist/toolPoison.d.ts +33 -0
- package/dist/toolPoison.d.ts.map +1 -0
- package/dist/toolPoison.js +85 -0
- package/dist/toolPoison.js.map +1 -0
- package/dist/upstreamRetry.d.ts +121 -0
- package/dist/upstreamRetry.d.ts.map +1 -0
- package/dist/upstreamRetry.js +90 -0
- package/dist/upstreamRetry.js.map +1 -0
- package/dist/usage.d.ts +186 -0
- package/dist/usage.d.ts.map +1 -1
- package/dist/wasmBinary.d.ts +25 -0
- package/dist/wasmBinary.d.ts.map +1 -0
- package/dist/wasmBinary.js +111 -0
- package/dist/wasmBinary.js.map +1 -0
- package/dist/wasmFuel.d.ts +52 -0
- package/dist/wasmFuel.d.ts.map +1 -0
- package/dist/wasmFuel.js +320 -0
- package/dist/wasmFuel.js.map +1 -0
- package/dist/wasmMemoryCap.d.ts +21 -0
- package/dist/wasmMemoryCap.d.ts.map +1 -0
- package/dist/wasmMemoryCap.js +58 -0
- package/dist/wasmMemoryCap.js.map +1 -0
- package/dist/wasmRuleDescriptor.d.ts +43 -0
- package/dist/wasmRuleDescriptor.d.ts.map +1 -0
- package/dist/wasmRuleDescriptor.js +65 -0
- package/dist/wasmRuleDescriptor.js.map +1 -0
- package/dist/workspaceSettings.d.ts +95 -17
- package/dist/workspaceSettings.d.ts.map +1 -1
- package/dist/workspaceSettings.js +2 -1
- package/dist/workspaceSettings.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* How much a gate will evaluate, and for how long, before it refuses.
|
|
3
|
+
*
|
|
4
|
+
* Most harnesses treat a hook that runs past its timeout as having allowed
|
|
5
|
+
* the call (see {@link HOOK_GATE_TIMEOUTS}), so a gate that is slow on a
|
|
6
|
+
* crafted call is no gate. Two bounds keep every gate inside its harness's
|
|
7
|
+
* timeout:
|
|
8
|
+
*
|
|
9
|
+
* - **Size.** A command over {@link COMMAND_SIZE_LIMIT} bytes, or tool
|
|
10
|
+
* arguments over {@link ARGUMENTS_SIZE_LIMIT} bytes (serialized as compact
|
|
11
|
+
* JSON), are refused as `COMMAND_TOO_LARGE` before any rule runs. The limits
|
|
12
|
+
* come from 85,314 tool calls in real coding-agent transcripts: the largest
|
|
13
|
+
* shell command was 38.5 KB (99.9th percentile 13 KB), the largest file
|
|
14
|
+
* write 120 KB, the largest arguments of any tool 418 KB (a plan). So the
|
|
15
|
+
* command limit is six times the largest seen and the arguments limit more
|
|
16
|
+
* than twice.
|
|
17
|
+
* - **Time.** Each hook gate stops at {@link gateDeadlineMs} for its harness
|
|
18
|
+
* after it starts and refuses with a `GATE_DEADLINE` reason. Every built-in
|
|
19
|
+
* rule is linear in the text (sequence.ts, the phrase matcher,
|
|
20
|
+
* regexLinearity.ts in the sync daemon), so only a workspace's own WHERE
|
|
21
|
+
* patterns can get there.
|
|
22
|
+
*
|
|
23
|
+
* Sizes are UTF-8 bytes, which every gate can count the same way.
|
|
24
|
+
*
|
|
25
|
+
* @module
|
|
26
|
+
*/
|
|
27
|
+
/** The largest shell command, in UTF-8 bytes, a gate evaluates. */
|
|
28
|
+
export declare const COMMAND_SIZE_LIMIT: number;
|
|
29
|
+
/** The largest tool arguments, in UTF-8 bytes of compact JSON, a gate evaluates. */
|
|
30
|
+
export declare const ARGUMENTS_SIZE_LIMIT: number;
|
|
31
|
+
/**
|
|
32
|
+
* The timeout `intutic connect` sets on a gate's hook entry, in seconds,
|
|
33
|
+
* wherever the harness has a key for one. Harness defaults run from 30 s to
|
|
34
|
+
* 600 s; 10 s keeps a stalled gate from holding the agent for minutes, and is
|
|
35
|
+
* also the longest any gate runs where the harness sets no limit at all.
|
|
36
|
+
*/
|
|
37
|
+
export declare const HOOK_TIMEOUT_SECONDS = 10;
|
|
38
|
+
/**
|
|
39
|
+
* How far below its harness's hook timeout a gate refuses.
|
|
40
|
+
*
|
|
41
|
+
* The harness starts its clock when it spawns the hook; the gate starts its
|
|
42
|
+
* own once its interpreter is running (Node's `process.uptime()`, the bash
|
|
43
|
+
* gate's watchdog), and once its deadline fires it still has to stop its
|
|
44
|
+
* children, write the refusal and the audit line, and exit, and the harness
|
|
45
|
+
* has to read the exit. On a 14-core machine running every package's test
|
|
46
|
+
* suite beside 100 busy threads (load average near 190), a gate's refusal
|
|
47
|
+
* reached the harness at most 260 ms after its deadline, Node and bash alike.
|
|
48
|
+
* One second is nearly four times that.
|
|
49
|
+
*/
|
|
50
|
+
export declare const GATE_DEADLINE_MARGIN_MS = 1000;
|
|
51
|
+
/** Who decides the timeout a harness applies to its gate. */
|
|
52
|
+
export type HookTimeoutSetBy =
|
|
53
|
+
/** `intutic connect` writes it into the hook entry. */
|
|
54
|
+
'connect'
|
|
55
|
+
/** The harness's own value, which no setting changes. */
|
|
56
|
+
| 'harness'
|
|
57
|
+
/** The harness documents none, so the gate assumes the shortest default of any documented harness that runs a call whose hook timed out: Grok Build's 5 s. */
|
|
58
|
+
| 'undocumented'
|
|
59
|
+
/** The gate runs in the harness's process, which waits for it without a limit. */
|
|
60
|
+
| 'none';
|
|
61
|
+
/** The timeout a harness applies to its hook gate. */
|
|
62
|
+
export interface HookGateTimeout {
|
|
63
|
+
/** In milliseconds; null when the harness waits without a limit. */
|
|
64
|
+
readonly timeoutMs: number | null;
|
|
65
|
+
readonly setBy: HookTimeoutSetBy;
|
|
66
|
+
/** Where the value comes from. */
|
|
67
|
+
readonly source: string;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* The hook timeout each harness applies to its gate, keyed by the harness id
|
|
71
|
+
* the gate is emitted for. The one source every gate's deadline is derived
|
|
72
|
+
* from: the writers set the timeouts marked `connect` from here, and a test
|
|
73
|
+
* reads each written hook entry back against it.
|
|
74
|
+
*/
|
|
75
|
+
export declare const HOOK_GATE_TIMEOUTS: {
|
|
76
|
+
readonly 'claude-code': {
|
|
77
|
+
readonly timeoutMs: number;
|
|
78
|
+
readonly setBy: "connect";
|
|
79
|
+
readonly source: "`timeout` (seconds) on the hook entry in .claude/settings.json; default 600 s, a call whose hook times out runs (code.claude.com/docs/en/hooks)";
|
|
80
|
+
};
|
|
81
|
+
readonly cursor: {
|
|
82
|
+
readonly timeoutMs: number;
|
|
83
|
+
readonly setBy: "connect";
|
|
84
|
+
readonly source: "`timeout` (seconds) on the hooks.json entry, beside `failClosed: true`; default not stated (cursor.com/docs/agent/hooks)";
|
|
85
|
+
};
|
|
86
|
+
readonly windsurf: {
|
|
87
|
+
readonly timeoutMs: 5000;
|
|
88
|
+
readonly setBy: "undocumented";
|
|
89
|
+
readonly source: "hooks.json entries have no timeout key and Windsurf documents no timeout; any exit but 2 runs the call (docs.devin.ai/desktop/cascade/hooks)";
|
|
90
|
+
};
|
|
91
|
+
readonly codex: {
|
|
92
|
+
readonly timeoutMs: number;
|
|
93
|
+
readonly setBy: "connect";
|
|
94
|
+
readonly source: "`timeout` (seconds) on the hooks.json entry; default 600 s (Codex hooks documentation)";
|
|
95
|
+
};
|
|
96
|
+
readonly 'muse-code': {
|
|
97
|
+
readonly timeoutMs: 5000;
|
|
98
|
+
readonly setBy: "undocumented";
|
|
99
|
+
readonly source: "Muse Code documents no hook timeout and no key for one (dev.meta.ai/docs/muse-code)";
|
|
100
|
+
};
|
|
101
|
+
readonly 'github-copilot': {
|
|
102
|
+
readonly timeoutMs: number;
|
|
103
|
+
readonly setBy: "connect";
|
|
104
|
+
readonly source: "`timeout` (seconds) on the hook entry, the Copilot CLI's alias for `timeoutSec` and VS Code's key; default 30 s, a call whose hook times out runs (docs.github.com/en/copilot/reference/hooks-configuration)";
|
|
105
|
+
};
|
|
106
|
+
readonly cline: {
|
|
107
|
+
readonly timeoutMs: 30000;
|
|
108
|
+
readonly setBy: "harness";
|
|
109
|
+
readonly source: "HOOK_EXECUTION_TIMEOUT_MS = 30000 in Cline's hook-factory.ts, not configurable; a call whose hook times out runs";
|
|
110
|
+
};
|
|
111
|
+
readonly grok: {
|
|
112
|
+
readonly timeoutMs: number;
|
|
113
|
+
readonly setBy: "connect";
|
|
114
|
+
readonly source: "`timeout` (seconds) on the hook entry; default 5 s, no stated maximum, a call whose hook times out runs (docs.x.ai/build/features/hooks)";
|
|
115
|
+
};
|
|
116
|
+
readonly antigravity: {
|
|
117
|
+
readonly timeoutMs: number;
|
|
118
|
+
readonly setBy: "connect";
|
|
119
|
+
readonly source: "`timeout` (seconds) on the PreToolUse handler in ~/.gemini/config/hooks.json; default 30 s (antigravity.google/docs/hooks)";
|
|
120
|
+
};
|
|
121
|
+
readonly 'gemini-cli': {
|
|
122
|
+
readonly timeoutMs: number;
|
|
123
|
+
readonly setBy: "connect";
|
|
124
|
+
readonly source: "`timeout` (milliseconds) on the BeforeTool hook in ~/.gemini/settings.json; default 60 000 (geminicli.com/docs/hooks/reference)";
|
|
125
|
+
};
|
|
126
|
+
readonly goose: {
|
|
127
|
+
readonly timeoutMs: number;
|
|
128
|
+
readonly setBy: "connect";
|
|
129
|
+
readonly source: "`timeout` (seconds) beside `on_failure: \"block\"` in the plugin's hooks.json; default 30 s (goose hooks guide)";
|
|
130
|
+
};
|
|
131
|
+
readonly openhands: {
|
|
132
|
+
readonly timeoutMs: number;
|
|
133
|
+
readonly setBy: "connect";
|
|
134
|
+
readonly source: "`timeout` (seconds) in .openhands/hooks.json; default 60 s, a call whose hook times out runs (openhands-sdk hooks/config.py)";
|
|
135
|
+
};
|
|
136
|
+
readonly hermes: {
|
|
137
|
+
readonly timeoutMs: number;
|
|
138
|
+
readonly setBy: "connect";
|
|
139
|
+
readonly source: "`timeout` (seconds) beside `fail_closed: true` in ~/.hermes/config.yaml; default 60 s, at most 300 s (hermes-agent shell_hooks.py)";
|
|
140
|
+
};
|
|
141
|
+
readonly openclaw: {
|
|
142
|
+
readonly timeoutMs: number;
|
|
143
|
+
readonly setBy: "connect";
|
|
144
|
+
readonly source: "`timeoutMs` on the before_tool_call registration; default 15 s, a timeout blocks the call but cannot interrupt the handler (OpenClaw docs/plugins/hooks/reference.md)";
|
|
145
|
+
};
|
|
146
|
+
readonly pi: {
|
|
147
|
+
readonly timeoutMs: null;
|
|
148
|
+
readonly setBy: "none";
|
|
149
|
+
readonly source: "Pi awaits an extension's tool_call handler without a limit (core/extensions/runner.ts)";
|
|
150
|
+
};
|
|
151
|
+
readonly opencode: {
|
|
152
|
+
readonly timeoutMs: null;
|
|
153
|
+
readonly setBy: "none";
|
|
154
|
+
readonly source: "OpenCode awaits a plugin's tool.execute.before without a limit (packages/opencode/src/plugin/index.ts)";
|
|
155
|
+
};
|
|
156
|
+
};
|
|
157
|
+
/** A harness that runs a hook gate. */
|
|
158
|
+
export type HookGateHarness = keyof typeof HOOK_GATE_TIMEOUTS;
|
|
159
|
+
/**
|
|
160
|
+
* How long a harness's hook gate may decide, from its start, before it
|
|
161
|
+
* refuses with `GATE_DEADLINE`: {@link GATE_DEADLINE_MARGIN_MS} under the
|
|
162
|
+
* harness's timeout, and never longer than {@link HOOK_TIMEOUT_SECONDS} minus
|
|
163
|
+
* that margin, so a gate the harness waits on for 30 s or without limit still
|
|
164
|
+
* answers as promptly as one connect set a timeout for. On the loaded machine
|
|
165
|
+
* above, a call at the size limits took the bash gates at most 4.6 s and the
|
|
166
|
+
* JavaScript gates at most 1.2 s; every 4 s deadline is a JavaScript gate's.
|
|
167
|
+
* Only a workspace's own pathological WHERE pattern runs this long.
|
|
168
|
+
*/
|
|
169
|
+
export declare function gateDeadlineMs(harness: HookGateHarness): number;
|
|
170
|
+
//# sourceMappingURL=gateLimits.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gateLimits.d.ts","sourceRoot":"","sources":["../src/gateLimits.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,mEAAmE;AACnE,eAAO,MAAM,kBAAkB,QAAa,CAAA;AAE5C,oFAAoF;AACpF,eAAO,MAAM,oBAAoB,QAAc,CAAA;AAE/C;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,KAAK,CAAA;AAEtC;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,uBAAuB,OAAO,CAAA;AAE3C,6DAA6D;AAC7D,MAAM,MAAM,gBAAgB;AAC1B,uDAAuD;AACrD,SAAS;AACX,yDAAyD;GACvD,SAAS;AACX,8JAA8J;GAC5J,cAAc;AAChB,kFAAkF;GAChF,MAAM,CAAA;AAEV,sDAAsD;AACtD,MAAM,WAAW,eAAe;IAC9B,oEAAoE;IACpE,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,CAAA;IAChC,kCAAkC;IAClC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CACxB;AAMD;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiBqB,CAAA;AAEpD,uCAAuC;AACvC,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,kBAAkB,CAAA;AAE7D;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAG/D"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* How much a gate will evaluate, and for how long, before it refuses.
|
|
4
|
+
*
|
|
5
|
+
* Most harnesses treat a hook that runs past its timeout as having allowed
|
|
6
|
+
* the call (see {@link HOOK_GATE_TIMEOUTS}), so a gate that is slow on a
|
|
7
|
+
* crafted call is no gate. Two bounds keep every gate inside its harness's
|
|
8
|
+
* timeout:
|
|
9
|
+
*
|
|
10
|
+
* - **Size.** A command over {@link COMMAND_SIZE_LIMIT} bytes, or tool
|
|
11
|
+
* arguments over {@link ARGUMENTS_SIZE_LIMIT} bytes (serialized as compact
|
|
12
|
+
* JSON), are refused as `COMMAND_TOO_LARGE` before any rule runs. The limits
|
|
13
|
+
* come from 85,314 tool calls in real coding-agent transcripts: the largest
|
|
14
|
+
* shell command was 38.5 KB (99.9th percentile 13 KB), the largest file
|
|
15
|
+
* write 120 KB, the largest arguments of any tool 418 KB (a plan). So the
|
|
16
|
+
* command limit is six times the largest seen and the arguments limit more
|
|
17
|
+
* than twice.
|
|
18
|
+
* - **Time.** Each hook gate stops at {@link gateDeadlineMs} for its harness
|
|
19
|
+
* after it starts and refuses with a `GATE_DEADLINE` reason. Every built-in
|
|
20
|
+
* rule is linear in the text (sequence.ts, the phrase matcher,
|
|
21
|
+
* regexLinearity.ts in the sync daemon), so only a workspace's own WHERE
|
|
22
|
+
* patterns can get there.
|
|
23
|
+
*
|
|
24
|
+
* Sizes are UTF-8 bytes, which every gate can count the same way.
|
|
25
|
+
*
|
|
26
|
+
* @module
|
|
27
|
+
*/
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
exports.HOOK_GATE_TIMEOUTS = exports.GATE_DEADLINE_MARGIN_MS = exports.HOOK_TIMEOUT_SECONDS = exports.ARGUMENTS_SIZE_LIMIT = exports.COMMAND_SIZE_LIMIT = void 0;
|
|
30
|
+
exports.gateDeadlineMs = gateDeadlineMs;
|
|
31
|
+
/** The largest shell command, in UTF-8 bytes, a gate evaluates. */
|
|
32
|
+
exports.COMMAND_SIZE_LIMIT = 256 * 1024;
|
|
33
|
+
/** The largest tool arguments, in UTF-8 bytes of compact JSON, a gate evaluates. */
|
|
34
|
+
exports.ARGUMENTS_SIZE_LIMIT = 1024 * 1024;
|
|
35
|
+
/**
|
|
36
|
+
* The timeout `intutic connect` sets on a gate's hook entry, in seconds,
|
|
37
|
+
* wherever the harness has a key for one. Harness defaults run from 30 s to
|
|
38
|
+
* 600 s; 10 s keeps a stalled gate from holding the agent for minutes, and is
|
|
39
|
+
* also the longest any gate runs where the harness sets no limit at all.
|
|
40
|
+
*/
|
|
41
|
+
exports.HOOK_TIMEOUT_SECONDS = 10;
|
|
42
|
+
/**
|
|
43
|
+
* How far below its harness's hook timeout a gate refuses.
|
|
44
|
+
*
|
|
45
|
+
* The harness starts its clock when it spawns the hook; the gate starts its
|
|
46
|
+
* own once its interpreter is running (Node's `process.uptime()`, the bash
|
|
47
|
+
* gate's watchdog), and once its deadline fires it still has to stop its
|
|
48
|
+
* children, write the refusal and the audit line, and exit, and the harness
|
|
49
|
+
* has to read the exit. On a 14-core machine running every package's test
|
|
50
|
+
* suite beside 100 busy threads (load average near 190), a gate's refusal
|
|
51
|
+
* reached the harness at most 260 ms after its deadline, Node and bash alike.
|
|
52
|
+
* One second is nearly four times that.
|
|
53
|
+
*/
|
|
54
|
+
exports.GATE_DEADLINE_MARGIN_MS = 1000;
|
|
55
|
+
const CONNECT_MS = exports.HOOK_TIMEOUT_SECONDS * 1000;
|
|
56
|
+
/** Grok Build's default hook timeout, the shortest any documented harness uses; assumed where a harness documents none. */
|
|
57
|
+
const UNDOCUMENTED_ASSUMED_MS = 5000;
|
|
58
|
+
/**
|
|
59
|
+
* The hook timeout each harness applies to its gate, keyed by the harness id
|
|
60
|
+
* the gate is emitted for. The one source every gate's deadline is derived
|
|
61
|
+
* from: the writers set the timeouts marked `connect` from here, and a test
|
|
62
|
+
* reads each written hook entry back against it.
|
|
63
|
+
*/
|
|
64
|
+
exports.HOOK_GATE_TIMEOUTS = {
|
|
65
|
+
'claude-code': { timeoutMs: CONNECT_MS, setBy: 'connect', source: '`timeout` (seconds) on the hook entry in .claude/settings.json; default 600 s, a call whose hook times out runs (code.claude.com/docs/en/hooks)' },
|
|
66
|
+
cursor: { timeoutMs: CONNECT_MS, setBy: 'connect', source: '`timeout` (seconds) on the hooks.json entry, beside `failClosed: true`; default not stated (cursor.com/docs/agent/hooks)' },
|
|
67
|
+
windsurf: { timeoutMs: UNDOCUMENTED_ASSUMED_MS, setBy: 'undocumented', source: 'hooks.json entries have no timeout key and Windsurf documents no timeout; any exit but 2 runs the call (docs.devin.ai/desktop/cascade/hooks)' },
|
|
68
|
+
codex: { timeoutMs: CONNECT_MS, setBy: 'connect', source: '`timeout` (seconds) on the hooks.json entry; default 600 s (Codex hooks documentation)' },
|
|
69
|
+
'muse-code': { timeoutMs: UNDOCUMENTED_ASSUMED_MS, setBy: 'undocumented', source: 'Muse Code documents no hook timeout and no key for one (dev.meta.ai/docs/muse-code)' },
|
|
70
|
+
'github-copilot': { timeoutMs: CONNECT_MS, setBy: 'connect', source: '`timeout` (seconds) on the hook entry, the Copilot CLI\'s alias for `timeoutSec` and VS Code\'s key; default 30 s, a call whose hook times out runs (docs.github.com/en/copilot/reference/hooks-configuration)' },
|
|
71
|
+
cline: { timeoutMs: 30_000, setBy: 'harness', source: 'HOOK_EXECUTION_TIMEOUT_MS = 30000 in Cline\'s hook-factory.ts, not configurable; a call whose hook times out runs' },
|
|
72
|
+
grok: { timeoutMs: CONNECT_MS, setBy: 'connect', source: '`timeout` (seconds) on the hook entry; default 5 s, no stated maximum, a call whose hook times out runs (docs.x.ai/build/features/hooks)' },
|
|
73
|
+
antigravity: { timeoutMs: CONNECT_MS, setBy: 'connect', source: '`timeout` (seconds) on the PreToolUse handler in ~/.gemini/config/hooks.json; default 30 s (antigravity.google/docs/hooks)' },
|
|
74
|
+
'gemini-cli': { timeoutMs: CONNECT_MS, setBy: 'connect', source: '`timeout` (milliseconds) on the BeforeTool hook in ~/.gemini/settings.json; default 60 000 (geminicli.com/docs/hooks/reference)' },
|
|
75
|
+
goose: { timeoutMs: CONNECT_MS, setBy: 'connect', source: '`timeout` (seconds) beside `on_failure: "block"` in the plugin\'s hooks.json; default 30 s (goose hooks guide)' },
|
|
76
|
+
openhands: { timeoutMs: CONNECT_MS, setBy: 'connect', source: '`timeout` (seconds) in .openhands/hooks.json; default 60 s, a call whose hook times out runs (openhands-sdk hooks/config.py)' },
|
|
77
|
+
hermes: { timeoutMs: CONNECT_MS, setBy: 'connect', source: '`timeout` (seconds) beside `fail_closed: true` in ~/.hermes/config.yaml; default 60 s, at most 300 s (hermes-agent shell_hooks.py)' },
|
|
78
|
+
openclaw: { timeoutMs: CONNECT_MS, setBy: 'connect', source: '`timeoutMs` on the before_tool_call registration; default 15 s, a timeout blocks the call but cannot interrupt the handler (OpenClaw docs/plugins/hooks/reference.md)' },
|
|
79
|
+
pi: { timeoutMs: null, setBy: 'none', source: 'Pi awaits an extension\'s tool_call handler without a limit (core/extensions/runner.ts)' },
|
|
80
|
+
opencode: { timeoutMs: null, setBy: 'none', source: 'OpenCode awaits a plugin\'s tool.execute.before without a limit (packages/opencode/src/plugin/index.ts)' },
|
|
81
|
+
};
|
|
82
|
+
/**
|
|
83
|
+
* How long a harness's hook gate may decide, from its start, before it
|
|
84
|
+
* refuses with `GATE_DEADLINE`: {@link GATE_DEADLINE_MARGIN_MS} under the
|
|
85
|
+
* harness's timeout, and never longer than {@link HOOK_TIMEOUT_SECONDS} minus
|
|
86
|
+
* that margin, so a gate the harness waits on for 30 s or without limit still
|
|
87
|
+
* answers as promptly as one connect set a timeout for. On the loaded machine
|
|
88
|
+
* above, a call at the size limits took the bash gates at most 4.6 s and the
|
|
89
|
+
* JavaScript gates at most 1.2 s; every 4 s deadline is a JavaScript gate's.
|
|
90
|
+
* Only a workspace's own pathological WHERE pattern runs this long.
|
|
91
|
+
*/
|
|
92
|
+
function gateDeadlineMs(harness) {
|
|
93
|
+
const timeoutMs = exports.HOOK_GATE_TIMEOUTS[harness].timeoutMs;
|
|
94
|
+
return Math.min(timeoutMs ?? CONNECT_MS, CONNECT_MS) - exports.GATE_DEADLINE_MARGIN_MS;
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=gateLimits.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gateLimits.js","sourceRoot":"","sources":["../src/gateLimits.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;;;AA4FH,wCAGC;AA7FD,mEAAmE;AACtD,QAAA,kBAAkB,GAAG,GAAG,GAAG,IAAI,CAAA;AAE5C,oFAAoF;AACvE,QAAA,oBAAoB,GAAG,IAAI,GAAG,IAAI,CAAA;AAE/C;;;;;GAKG;AACU,QAAA,oBAAoB,GAAG,EAAE,CAAA;AAEtC;;;;;;;;;;;GAWG;AACU,QAAA,uBAAuB,GAAG,IAAI,CAAA;AAsB3C,MAAM,UAAU,GAAG,4BAAoB,GAAG,IAAI,CAAA;AAC9C,2HAA2H;AAC3H,MAAM,uBAAuB,GAAG,IAAI,CAAA;AAEpC;;;;;GAKG;AACU,QAAA,kBAAkB,GAAG;IAChC,aAAa,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,iJAAiJ,EAAE;IACrN,MAAM,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,0HAA0H,EAAE;IACvL,QAAQ,EAAE,EAAE,SAAS,EAAE,uBAAuB,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,8IAA8I,EAAE;IAC/N,KAAK,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,wFAAwF,EAAE;IACpJ,WAAW,EAAE,EAAE,SAAS,EAAE,uBAAuB,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,qFAAqF,EAAE;IACzK,gBAAgB,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,gNAAgN,EAAE;IACvR,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,mHAAmH,EAAE;IAC3K,IAAI,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,0IAA0I,EAAE;IACrM,WAAW,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,4HAA4H,EAAE;IAC9L,YAAY,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,iIAAiI,EAAE;IACpM,KAAK,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,gHAAgH,EAAE;IAC5K,SAAS,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,8HAA8H,EAAE;IAC9L,MAAM,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,oIAAoI,EAAE;IACjM,QAAQ,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,uKAAuK,EAAE;IACtO,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,yFAAyF,EAAE;IACzI,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,yGAAyG,EAAE;CAC7G,CAAA;AAKpD;;;;;;;;;GASG;AACH,SAAgB,cAAc,CAAC,OAAwB;IACrD,MAAM,SAAS,GAAkB,0BAAkB,CAAC,OAAO,CAAC,CAAC,SAAS,CAAA;IACtE,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,IAAI,UAAU,EAAE,UAAU,CAAC,GAAG,+BAAuB,CAAA;AAChF,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Git remote normalisation, shared by the sync daemon (before it reports a
|
|
3
|
+
* repository) and the control plane (on receipt, so a client that skipped it
|
|
4
|
+
* still cannot store credentials).
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* A remote URL reduced to `host/path`: lower-cased host, no scheme, no user or
|
|
8
|
+
* password, no port, no query or fragment, no `.git` suffix. The ssh and https
|
|
9
|
+
* spellings of one repository therefore compare equal, and a remote that
|
|
10
|
+
* embeds a token (`https://x-access-token:…@github.com/…`, as CI checkouts
|
|
11
|
+
* write it) never leaves the machine with the token in it.
|
|
12
|
+
*
|
|
13
|
+
* Null for anything that is not a network remote: an empty string, a local
|
|
14
|
+
* path (POSIX or Windows), a `file:` URL, or a host with no repository path.
|
|
15
|
+
*/
|
|
16
|
+
export declare function normalizeGitRemote(remote: string): string | null;
|
|
17
|
+
//# sourceMappingURL=gitRemote.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gitRemote.d.ts","sourceRoot":"","sources":["../src/gitRemote.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CA4BhE"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Git remote normalisation, shared by the sync daemon (before it reports a
|
|
4
|
+
* repository) and the control plane (on receipt, so a client that skipped it
|
|
5
|
+
* still cannot store credentials).
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.normalizeGitRemote = normalizeGitRemote;
|
|
9
|
+
/** Schemes git can fetch over the network. `file:` and local paths are not repositories anyone else can name. */
|
|
10
|
+
const NETWORK_SCHEMES = new Set(['http:', 'https:', 'ssh:', 'git:', 'git+ssh:', 'ssh+git:']);
|
|
11
|
+
/**
|
|
12
|
+
* A remote URL reduced to `host/path`: lower-cased host, no scheme, no user or
|
|
13
|
+
* password, no port, no query or fragment, no `.git` suffix. The ssh and https
|
|
14
|
+
* spellings of one repository therefore compare equal, and a remote that
|
|
15
|
+
* embeds a token (`https://x-access-token:…@github.com/…`, as CI checkouts
|
|
16
|
+
* write it) never leaves the machine with the token in it.
|
|
17
|
+
*
|
|
18
|
+
* Null for anything that is not a network remote: an empty string, a local
|
|
19
|
+
* path (POSIX or Windows), a `file:` URL, or a host with no repository path.
|
|
20
|
+
*/
|
|
21
|
+
function normalizeGitRemote(remote) {
|
|
22
|
+
const raw = remote.trim();
|
|
23
|
+
if (!raw || raw.includes('\\') || /^[a-zA-Z]:\//.test(raw))
|
|
24
|
+
return null;
|
|
25
|
+
let host;
|
|
26
|
+
let path;
|
|
27
|
+
if (/^[a-z][a-z0-9+.-]*:\/\//i.test(raw)) {
|
|
28
|
+
let url;
|
|
29
|
+
try {
|
|
30
|
+
url = new URL(raw);
|
|
31
|
+
}
|
|
32
|
+
catch {
|
|
33
|
+
return null;
|
|
34
|
+
}
|
|
35
|
+
if (!NETWORK_SCHEMES.has(url.protocol))
|
|
36
|
+
return null;
|
|
37
|
+
host = url.hostname;
|
|
38
|
+
path = url.pathname;
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
// scp-like: [user[:password]@]host:path. A colon after the first slash
|
|
42
|
+
// makes it a local path, which is how git itself tells them apart.
|
|
43
|
+
const scp = /^(?:[^@/]+@)?([^:/\s]+):([^\s]+)$/.exec(raw);
|
|
44
|
+
if (!scp)
|
|
45
|
+
return null;
|
|
46
|
+
host = scp[1];
|
|
47
|
+
path = cutAtQueryOrFragment(scp[2]);
|
|
48
|
+
}
|
|
49
|
+
path = trimSlashes(trimSlashes(path).replace(/\.git$/, ''));
|
|
50
|
+
if (!host || !path)
|
|
51
|
+
return null;
|
|
52
|
+
return `${host.toLowerCase()}/${path}`;
|
|
53
|
+
}
|
|
54
|
+
// String scans rather than regexes: a remote URL is input the developer
|
|
55
|
+
// controls, and `[?#].*$` / `\/+$` backtrack quadratically on long runs.
|
|
56
|
+
function cutAtQueryOrFragment(s) {
|
|
57
|
+
for (let i = 0; i < s.length; i++)
|
|
58
|
+
if (s[i] === '?' || s[i] === '#')
|
|
59
|
+
return s.slice(0, i);
|
|
60
|
+
return s;
|
|
61
|
+
}
|
|
62
|
+
function trimSlashes(s) {
|
|
63
|
+
let start = 0;
|
|
64
|
+
let end = s.length;
|
|
65
|
+
while (start < end && s[start] === '/')
|
|
66
|
+
start++;
|
|
67
|
+
while (end > start && s[end - 1] === '/')
|
|
68
|
+
end--;
|
|
69
|
+
return s.slice(start, end);
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=gitRemote.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gitRemote.js","sourceRoot":"","sources":["../src/gitRemote.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AAeH,gDA4BC;AAzCD,iHAAiH;AACjH,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAA;AAE5F;;;;;;;;;GASG;AACH,SAAgB,kBAAkB,CAAC,MAAc;IAC/C,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,EAAE,CAAA;IACzB,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAA;IAEvE,IAAI,IAAY,CAAA;IAChB,IAAI,IAAY,CAAA;IAChB,IAAI,0BAA0B,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACzC,IAAI,GAAQ,CAAA;QACZ,IAAI,CAAC;YACH,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAA;QACpB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAA;QACb,CAAC;QACD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAA;QACnD,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAA;QACnB,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAA;IACrB,CAAC;SAAM,CAAC;QACN,uEAAuE;QACvE,mEAAmE;QACnE,MAAM,GAAG,GAAG,mCAAmC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACzD,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAA;QACrB,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;QACb,IAAI,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IACrC,CAAC;IAED,IAAI,GAAG,WAAW,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAA;IAC3D,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAA;IAC/B,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,EAAE,CAAA;AACxC,CAAC;AAED,wEAAwE;AACxE,yEAAyE;AACzE,SAAS,oBAAoB,CAAC,CAAS;IACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE;QAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG;YAAE,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACzF,OAAO,CAAC,CAAA;AACV,CAAC;AAED,SAAS,WAAW,CAAC,CAAS;IAC5B,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,IAAI,GAAG,GAAG,CAAC,CAAC,MAAM,CAAA;IAClB,OAAO,KAAK,GAAG,GAAG,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG;QAAE,KAAK,EAAE,CAAA;IAC/C,OAAO,GAAG,GAAG,KAAK,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,GAAG;QAAE,GAAG,EAAE,CAAA;IAC/C,OAAO,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;AAC5B,CAAC"}
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
* just built in memory for the same cycle's `POST /api/v1/agents/report`
|
|
16
16
|
* call.
|
|
17
17
|
*
|
|
18
|
-
* Hand-copying this mapping between the two is how it drifted
|
|
18
|
+
* Hand-copying this mapping between the two is how it drifted:
|
|
19
19
|
* the sync daemon's copy read `report.facets.mcp_tools.length > 0` with no
|
|
20
20
|
* `Array.isArray` guard, while `harnessGradeSweep.ts`'s copy guarded it —
|
|
21
21
|
* the exact two-hand-kept-copies failure `secretPatterns.ts`'s module doc
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
* just built in memory for the same cycle's `POST /api/v1/agents/report`
|
|
17
17
|
* call.
|
|
18
18
|
*
|
|
19
|
-
* Hand-copying this mapping between the two is how it drifted
|
|
19
|
+
* Hand-copying this mapping between the two is how it drifted:
|
|
20
20
|
* the sync daemon's copy read `report.facets.mcp_tools.length > 0` with no
|
|
21
21
|
* `Array.isArray` guard, while `harnessGradeSweep.ts`'s copy guarded it —
|
|
22
22
|
* the exact two-hand-kept-copies failure `secretPatterns.ts`'s module doc
|
package/dist/guardrailIr.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Guardrail IR — the only thing a policy compiler may say
|
|
2
|
+
* Guardrail IR — the only thing a policy compiler may say.
|
|
3
3
|
*
|
|
4
4
|
* An LLM reading corporate policy prose is allowed to propose exactly two
|
|
5
5
|
* things: a verbatim quote anchored to a passage it was shown, and a clause in
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
* `max_calls`, `forbid_with`). `~>` adjacency is not offered; `->` only.
|
|
24
24
|
* - `wasm_predicate` — the existing closed predicate DSL, verdict 3 (reask)
|
|
25
25
|
* only. A generated rule can never originate a block.
|
|
26
|
-
* - the two settings-class kinds
|
|
26
|
+
* - the two settings-class kinds: `allowed_models` and
|
|
27
27
|
* `egress_allow`, each a list of values for one workspace setting
|
|
28
28
|
* (`SETTING_KIND_KEYS`). Neither carries roles — a workspace setting has no
|
|
29
29
|
* per-role form — and neither is projected into a rule endpoint: a promoted
|
|
@@ -192,14 +192,14 @@ export declare const GuardrailIrSchema: z.ZodDiscriminatedUnion<"kind", [z.ZodOb
|
|
|
192
192
|
roles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
193
193
|
kind: z.ZodLiteral<"requires_before">;
|
|
194
194
|
}, "strict", z.ZodTypeAny, {
|
|
195
|
+
then: string;
|
|
195
196
|
kind: "requires_before";
|
|
196
197
|
first: string;
|
|
197
|
-
then: string;
|
|
198
198
|
roles?: string[] | undefined;
|
|
199
199
|
}, {
|
|
200
|
+
then: string;
|
|
200
201
|
kind: "requires_before";
|
|
201
202
|
first: string;
|
|
202
|
-
then: string;
|
|
203
203
|
roles?: string[] | undefined;
|
|
204
204
|
}>, z.ZodObject<{
|
|
205
205
|
first: z.ZodEffects<z.ZodString, string, string>;
|
|
@@ -207,14 +207,14 @@ export declare const GuardrailIrSchema: z.ZodDiscriminatedUnion<"kind", [z.ZodOb
|
|
|
207
207
|
roles: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
208
208
|
kind: z.ZodLiteral<"forbid_after">;
|
|
209
209
|
}, "strict", z.ZodTypeAny, {
|
|
210
|
+
then: string;
|
|
210
211
|
kind: "forbid_after";
|
|
211
212
|
first: string;
|
|
212
|
-
then: string;
|
|
213
213
|
roles?: string[] | undefined;
|
|
214
214
|
}, {
|
|
215
|
+
then: string;
|
|
215
216
|
kind: "forbid_after";
|
|
216
217
|
first: string;
|
|
217
|
-
then: string;
|
|
218
218
|
roles?: string[] | undefined;
|
|
219
219
|
}>, z.ZodObject<{
|
|
220
220
|
kind: z.ZodLiteral<"max_calls">;
|
|
@@ -271,11 +271,11 @@ export declare const GuardrailIrSchema: z.ZodDiscriminatedUnion<"kind", [z.ZodOb
|
|
|
271
271
|
kind: z.ZodLiteral<"allowed_models">;
|
|
272
272
|
models: z.ZodArray<z.ZodString, "many">;
|
|
273
273
|
}, "strict", z.ZodTypeAny, {
|
|
274
|
-
kind: "allowed_models";
|
|
275
274
|
models: string[];
|
|
276
|
-
}, {
|
|
277
275
|
kind: "allowed_models";
|
|
276
|
+
}, {
|
|
278
277
|
models: string[];
|
|
278
|
+
kind: "allowed_models";
|
|
279
279
|
}>, z.ZodObject<{
|
|
280
280
|
kind: z.ZodLiteral<"egress_allow">;
|
|
281
281
|
hosts: z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">;
|
|
@@ -310,7 +310,7 @@ export declare const IR_KINDS: readonly ["hook_rule", "deny_tools", "review_befo
|
|
|
310
310
|
/** The kinds that render to a SOP front-matter key the Rust proxy reads. */
|
|
311
311
|
export declare const FRONT_MATTER_KINDS: readonly ["deny_tools", "review_before", "requires_before", "forbid_after", "max_calls", "forbid_with"];
|
|
312
312
|
export declare function isFrontMatterIr(ir: GuardrailIr): ir is FrontMatterIr;
|
|
313
|
-
/** The settings-class kinds: each is a list of values for one workspace setting
|
|
313
|
+
/** The settings-class kinds: each is a list of values for one workspace setting. */
|
|
314
314
|
export declare const SETTING_KINDS: readonly ["allowed_models", "egress_allow"];
|
|
315
315
|
/**
|
|
316
316
|
* The `WorkspaceSettings` key each settings-class kind writes on promotion.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guardrailIr.d.ts","sourceRoot":"","sources":["../src/guardrailIr.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,sKAShB,CAAA;AAEV,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAA;AAExD,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,WAAW,CAEjE;AAED;;;;;;GAMG;AACH,eAAO,MAAM,aAAa,QAAoC,CAAA;AAE9D,eAAO,MAAM,cAAc,IAAI,CAAA;AAC/B,eAAO,MAAM,eAAe,KAAK,CAAA;AACjC,eAAO,MAAM,YAAY,IAAI,CAAA;AAC7B,eAAO,MAAM,iBAAiB,KAAK,CAAA;AACnC,eAAO,MAAM,SAAS,IAAI,CAAA;AAC1B,eAAO,MAAM,eAAe,KAAK,CAAA;AACjC,eAAO,MAAM,mBAAmB,MAAM,CAAA;AACtC,eAAO,MAAM,eAAe,OAAO,CAAA;AAgCnC,QAAA,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;EAST,CAAA;AAyCX,QAAA,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;EASd,CAAA;AAEX;;;;GAIG;AACH,eAAO,MAAM,WAAW,QAAyC,CAAA;AACjE,eAAO,MAAM,kBAAkB,KAAK,CAAA;AAMpC,gHAAgH;AAChH,eAAO,MAAM,sBAAsB,IAAI,CAAA;AAEvC;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAmBxD;AAoBD,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAY5B,CAAA;AAEF,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAC3D,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAA;AACvD,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AACjE,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC,WAAW,EAAE;IAAE,IAAI,EAAE,YAAY,GAAG,eAAe,GAAG,iBAAiB,GAAG,cAAc,GAAG,WAAW,GAAG,aAAa,CAAA;CAAE,CAAC,CAAA;AAC7J,MAAM,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE;IAAE,IAAI,EAAE,gBAAgB,GAAG,cAAc,CAAA;CAAE,CAAC,CAAA;AACzF,MAAM,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;AAExC,kFAAkF;AAClF,eAAO,MAAM,QAAQ,kLAYX,CAAA;AAEV,4EAA4E;AAC5E,eAAO,MAAM,kBAAkB,yGAOrB,CAAA;AAEV,wBAAgB,eAAe,CAAC,EAAE,EAAE,WAAW,GAAG,EAAE,IAAI,aAAa,CAEpE;AAED,
|
|
1
|
+
{"version":3,"file":"guardrailIr.d.ts","sourceRoot":"","sources":["../src/guardrailIr.ts"],"names":[],"mappings":"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"}
|
package/dist/guardrailIr.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
* Guardrail IR — the only thing a policy compiler may say
|
|
3
|
+
* Guardrail IR — the only thing a policy compiler may say.
|
|
4
4
|
*
|
|
5
5
|
* An LLM reading corporate policy prose is allowed to propose exactly two
|
|
6
6
|
* things: a verbatim quote anchored to a passage it was shown, and a clause in
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
* `max_calls`, `forbid_with`). `~>` adjacency is not offered; `->` only.
|
|
25
25
|
* - `wasm_predicate` — the existing closed predicate DSL, verdict 3 (reask)
|
|
26
26
|
* only. A generated rule can never originate a block.
|
|
27
|
-
* - the two settings-class kinds
|
|
27
|
+
* - the two settings-class kinds: `allowed_models` and
|
|
28
28
|
* `egress_allow`, each a list of values for one workspace setting
|
|
29
29
|
* (`SETTING_KIND_KEYS`). Neither carries roles — a workspace setting has no
|
|
30
30
|
* per-role form — and neither is projected into a rule endpoint: a promoted
|
|
@@ -278,7 +278,7 @@ exports.FRONT_MATTER_KINDS = [
|
|
|
278
278
|
function isFrontMatterIr(ir) {
|
|
279
279
|
return exports.FRONT_MATTER_KINDS.includes(ir.kind);
|
|
280
280
|
}
|
|
281
|
-
/** The settings-class kinds: each is a list of values for one workspace setting
|
|
281
|
+
/** The settings-class kinds: each is a list of values for one workspace setting. */
|
|
282
282
|
exports.SETTING_KINDS = ['allowed_models', 'egress_allow'];
|
|
283
283
|
/**
|
|
284
284
|
* The `WorkspaceSettings` key each settings-class kind writes on promotion.
|
package/dist/guardrailIr.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guardrailIr.js","sourceRoot":"","sources":["../src/guardrailIr.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"guardrailIr.js","sourceRoot":"","sources":["../src/guardrailIr.ts"],"names":[],"mappings":"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"}
|