veto-sdk 2.2.0 → 2.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/protect.d.ts.map +1 -1
- package/dist/browser/protect.js +9 -1
- package/dist/browser/protect.js.map +1 -1
- package/dist/browser/types.d.ts +3 -0
- package/dist/browser/types.d.ts.map +1 -1
- package/dist/browser/veto.d.ts.map +1 -1
- package/dist/browser/veto.js +9 -0
- package/dist/browser/veto.js.map +1 -1
- package/dist/cli/bin.js +0 -0
- package/dist/compiler/evaluator.d.ts.map +1 -1
- package/dist/compiler/evaluator.js +6 -0
- package/dist/compiler/evaluator.js.map +1 -1
- package/dist/core/events.d.ts +2 -0
- package/dist/core/events.d.ts.map +1 -1
- package/dist/core/events.js +33 -4
- package/dist/core/events.js.map +1 -1
- package/dist/core/protect.d.ts +4 -0
- package/dist/core/protect.d.ts.map +1 -1
- package/dist/core/protect.js +9 -1
- package/dist/core/protect.js.map +1 -1
- package/dist/core/veto.d.ts.map +1 -1
- package/dist/core/veto.js +8 -0
- package/dist/core/veto.js.map +1 -1
- package/dist/deterministic/regex-safety.d.ts.map +1 -1
- package/dist/deterministic/regex-safety.js +42 -1
- package/dist/deterministic/regex-safety.js.map +1 -1
- package/dist/extractors/content.d.ts.map +1 -1
- package/dist/extractors/content.js +40 -23
- package/dist/extractors/content.js.map +1 -1
- package/dist/policy/generator.d.ts.map +1 -1
- package/dist/policy/generator.js +4 -2
- package/dist/policy/generator.js.map +1 -1
- package/dist/rules/condition-evaluator.d.ts +6 -0
- package/dist/rules/condition-evaluator.d.ts.map +1 -1
- package/dist/rules/condition-evaluator.js +60 -18
- package/dist/rules/condition-evaluator.js.map +1 -1
- package/dist/rules/expression-validator.d.ts.map +1 -1
- package/dist/rules/expression-validator.js +5 -0
- package/dist/rules/expression-validator.js.map +1 -1
- package/dist/rules/local-evaluator.d.ts +11 -15
- package/dist/rules/local-evaluator.d.ts.map +1 -1
- package/dist/rules/local-evaluator.js +62 -29
- package/dist/rules/local-evaluator.js.map +1 -1
- package/package.json +19 -12
|
@@ -7,17 +7,17 @@
|
|
|
7
7
|
* Key behavior: undefined fields NEVER match. This prevents false positives
|
|
8
8
|
* on negative operators like not_equals, not_contains, not_in.
|
|
9
9
|
*
|
|
10
|
-
* **
|
|
11
|
-
* - All string comparisons are case-insensitive (
|
|
12
|
-
* - `within_hours`/`outside_hours`
|
|
13
|
-
*
|
|
14
|
-
*
|
|
10
|
+
* **Alignment with canonical condition-evaluator.ts:**
|
|
11
|
+
* - All string comparisons are case-insensitive (aligned with canonical).
|
|
12
|
+
* - `within_hours`/`outside_hours` support structured TimeWindowValue objects
|
|
13
|
+
* with timezone/day support (aligned with canonical), plus simple
|
|
14
|
+
* "HH:MM-HH:MM" wall clock strings for backwards compatibility.
|
|
15
15
|
* - `percent_of` falls back to simplified `fieldValue >= expected` when
|
|
16
16
|
* no `reference` field is provided (canonical requires `reference`).
|
|
17
17
|
*
|
|
18
18
|
* @module rules/local-evaluator
|
|
19
19
|
*/
|
|
20
|
-
import { createSafeRegex } from './condition-evaluator.js';
|
|
20
|
+
import { createSafeRegex, evaluateTimeWindow } from './condition-evaluator.js';
|
|
21
21
|
/**
|
|
22
22
|
* Resolve a dot-notation field path in a nested object.
|
|
23
23
|
*
|
|
@@ -29,6 +29,8 @@ export function resolveFieldPath(path, obj) {
|
|
|
29
29
|
for (const part of parts) {
|
|
30
30
|
if (current === null || current === undefined || typeof current !== 'object')
|
|
31
31
|
return undefined;
|
|
32
|
+
if (!Object.prototype.hasOwnProperty.call(current, part))
|
|
33
|
+
return undefined;
|
|
32
34
|
current = current[part];
|
|
33
35
|
}
|
|
34
36
|
return current;
|
|
@@ -36,17 +38,13 @@ export function resolveFieldPath(path, obj) {
|
|
|
36
38
|
/**
|
|
37
39
|
* Evaluate a single condition against a context object.
|
|
38
40
|
*
|
|
39
|
-
* All string comparisons are case-insensitive
|
|
40
|
-
* canonical `condition-evaluator.ts` which is case-sensitive.
|
|
41
|
+
* All string comparisons are case-insensitive (aligned with canonical evaluator).
|
|
41
42
|
*
|
|
42
|
-
* **`within_hours` / `outside_hours
|
|
43
|
-
*
|
|
44
|
-
*
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
* and uses structured `TimeWindowConditionValue` objects with timezone
|
|
48
|
-
* and day support. The simplified approach is designed for local/browser
|
|
49
|
-
* use where wall clock checks are sufficient.
|
|
43
|
+
* **`within_hours` / `outside_hours`:**
|
|
44
|
+
* Supports two formats:
|
|
45
|
+
* 1. Structured TimeWindowValue objects with timezone/day support (aligned
|
|
46
|
+
* with canonical evaluator, uses field value as timestamp).
|
|
47
|
+
* 2. Simple `"HH:MM-HH:MM"` strings for backwards-compatible wall clock mode.
|
|
50
48
|
*
|
|
51
49
|
* **`percent_of` divergence:**
|
|
52
50
|
* When a `reference` field is present on the condition, the local
|
|
@@ -60,7 +58,7 @@ export function resolveFieldPath(path, obj) {
|
|
|
60
58
|
*/
|
|
61
59
|
export function evaluateCondition(condition, context) {
|
|
62
60
|
if (!condition.field || !condition.operator)
|
|
63
|
-
return
|
|
61
|
+
return false;
|
|
64
62
|
const fieldValue = resolveFieldPath(condition.field, context);
|
|
65
63
|
const expected = condition.value;
|
|
66
64
|
if (fieldValue === undefined)
|
|
@@ -80,15 +78,25 @@ export function evaluateCondition(condition, context) {
|
|
|
80
78
|
if (typeof fieldValue === 'string' && typeof expected === 'string') {
|
|
81
79
|
return fieldValue.toLowerCase().includes(expected.toLowerCase());
|
|
82
80
|
}
|
|
83
|
-
if (Array.isArray(fieldValue))
|
|
81
|
+
if (Array.isArray(fieldValue)) {
|
|
82
|
+
if (typeof expected === 'string') {
|
|
83
|
+
const lower = expected.toLowerCase();
|
|
84
|
+
return fieldValue.some((e) => typeof e === 'string' ? e.toLowerCase() === lower : e === expected);
|
|
85
|
+
}
|
|
84
86
|
return fieldValue.includes(expected);
|
|
87
|
+
}
|
|
85
88
|
return false;
|
|
86
89
|
case 'not_contains':
|
|
87
90
|
if (typeof fieldValue === 'string' && typeof expected === 'string') {
|
|
88
91
|
return !fieldValue.toLowerCase().includes(expected.toLowerCase());
|
|
89
92
|
}
|
|
90
|
-
if (Array.isArray(fieldValue))
|
|
93
|
+
if (Array.isArray(fieldValue)) {
|
|
94
|
+
if (typeof expected === 'string') {
|
|
95
|
+
const lower = expected.toLowerCase();
|
|
96
|
+
return !fieldValue.some((e) => typeof e === 'string' ? e.toLowerCase() === lower : e === expected);
|
|
97
|
+
}
|
|
91
98
|
return !fieldValue.includes(expected);
|
|
99
|
+
}
|
|
92
100
|
return false;
|
|
93
101
|
case 'starts_with':
|
|
94
102
|
return (typeof fieldValue === 'string' &&
|
|
@@ -105,13 +113,27 @@ export function evaluateCondition(condition, context) {
|
|
|
105
113
|
}
|
|
106
114
|
return false;
|
|
107
115
|
case 'greater_than':
|
|
108
|
-
return typeof fieldValue === 'number' && typeof expected === 'number'
|
|
116
|
+
return typeof fieldValue === 'number' && typeof expected === 'number'
|
|
117
|
+
&& Number.isFinite(fieldValue) && Number.isFinite(expected) && fieldValue > expected;
|
|
109
118
|
case 'less_than':
|
|
110
|
-
return typeof fieldValue === 'number' && typeof expected === 'number'
|
|
119
|
+
return typeof fieldValue === 'number' && typeof expected === 'number'
|
|
120
|
+
&& Number.isFinite(fieldValue) && Number.isFinite(expected) && fieldValue < expected;
|
|
111
121
|
case 'in':
|
|
112
|
-
|
|
122
|
+
if (!Array.isArray(expected))
|
|
123
|
+
return false;
|
|
124
|
+
if (typeof fieldValue === 'string') {
|
|
125
|
+
const lower = fieldValue.toLowerCase();
|
|
126
|
+
return expected.some((e) => typeof e === 'string' ? e.toLowerCase() === lower : e === fieldValue);
|
|
127
|
+
}
|
|
128
|
+
return expected.includes(fieldValue);
|
|
113
129
|
case 'not_in':
|
|
114
|
-
|
|
130
|
+
if (!Array.isArray(expected))
|
|
131
|
+
return false;
|
|
132
|
+
if (typeof fieldValue === 'string') {
|
|
133
|
+
const lower = fieldValue.toLowerCase();
|
|
134
|
+
return !expected.some((e) => typeof e === 'string' ? e.toLowerCase() === lower : e === fieldValue);
|
|
135
|
+
}
|
|
136
|
+
return !expected.includes(fieldValue);
|
|
115
137
|
case 'length_greater_than':
|
|
116
138
|
if (typeof fieldValue === 'string' || Array.isArray(fieldValue)) {
|
|
117
139
|
return typeof expected === 'number' && fieldValue.length > expected;
|
|
@@ -129,16 +151,27 @@ export function evaluateCondition(condition, context) {
|
|
|
129
151
|
return fieldValue >= expected;
|
|
130
152
|
}
|
|
131
153
|
/**
|
|
132
|
-
* `within_hours` / `outside_hours` —
|
|
154
|
+
* `within_hours` / `outside_hours` — supports two formats:
|
|
155
|
+
*
|
|
156
|
+
* 1. Structured TimeWindowValue object (aligned with canonical evaluator):
|
|
157
|
+
* `{ start: "09:00", end: "17:00", timezone: "America/New_York", days?: ["mon","tue",...] }`
|
|
158
|
+
* Uses the field value as a timestamp, with timezone and day-of-week support.
|
|
133
159
|
*
|
|
134
|
-
*
|
|
135
|
-
*
|
|
136
|
-
*
|
|
137
|
-
*
|
|
138
|
-
* from the canonical `condition-evaluator.ts`.
|
|
160
|
+
* 2. Simple "HH:MM-HH:MM" string (backwards-compatible wall clock mode):
|
|
161
|
+
* Uses the current wall clock time, NOT the field value. No timezone
|
|
162
|
+
* or day-of-week support. Wrap-around ranges (e.g. "22:00-06:00")
|
|
163
|
+
* are supported.
|
|
139
164
|
*/
|
|
140
165
|
case 'within_hours':
|
|
141
166
|
case 'outside_hours': {
|
|
167
|
+
if (expected && typeof expected === 'object' && !Array.isArray(expected)) {
|
|
168
|
+
const result = evaluateTimeWindow(fieldValue, expected);
|
|
169
|
+
if (result === null)
|
|
170
|
+
return false;
|
|
171
|
+
return condition.operator === 'within_hours'
|
|
172
|
+
? result.inScope && result.withinWindow
|
|
173
|
+
: result.inScope && !result.withinWindow;
|
|
174
|
+
}
|
|
142
175
|
if (typeof expected !== 'string')
|
|
143
176
|
return false;
|
|
144
177
|
const parts = expected.split('-');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-evaluator.js","sourceRoot":"","sources":["../../src/rules/local-evaluator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAGH,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"local-evaluator.js","sourceRoot":"","sources":["../../src/rules/local-evaluator.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "veto-sdk",
|
|
3
|
-
"version": "2.2.
|
|
3
|
+
"version": "2.2.1",
|
|
4
4
|
"description": "A guardrail system that intercepts and validates AI agent tool calls",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -39,7 +39,6 @@
|
|
|
39
39
|
"@types/react": "^18.3.26",
|
|
40
40
|
"@types/node": "^20.10.0",
|
|
41
41
|
"@vitest/coverage-v8": "^4.0.16",
|
|
42
|
-
"browser-use-node": "^0.1.11",
|
|
43
42
|
"openai": "^4.77.0",
|
|
44
43
|
"tsx": "^4.7.0",
|
|
45
44
|
"typescript": "^5.3.0",
|
|
@@ -50,9 +49,12 @@
|
|
|
50
49
|
"@google/genai": "^1.34.0",
|
|
51
50
|
"openai": "^4.0.0",
|
|
52
51
|
"zod": "^3.22.0",
|
|
53
|
-
"browser-use-node": ">=0.1.0",
|
|
54
52
|
"ai": ">=3.0.0",
|
|
55
|
-
"@langchain/core": ">=0.2.0"
|
|
53
|
+
"@langchain/core": ">=0.2.0",
|
|
54
|
+
"ink": "^5.0.0",
|
|
55
|
+
"react": "^18.0.0",
|
|
56
|
+
"@opentui/core": "^0.1.0",
|
|
57
|
+
"picocolors": "^1.0.0"
|
|
56
58
|
},
|
|
57
59
|
"peerDependenciesMeta": {
|
|
58
60
|
"openai": {
|
|
@@ -67,14 +69,23 @@
|
|
|
67
69
|
"zod": {
|
|
68
70
|
"optional": true
|
|
69
71
|
},
|
|
70
|
-
"browser-use-node": {
|
|
71
|
-
"optional": true
|
|
72
|
-
},
|
|
73
72
|
"ai": {
|
|
74
73
|
"optional": true
|
|
75
74
|
},
|
|
76
75
|
"@langchain/core": {
|
|
77
76
|
"optional": true
|
|
77
|
+
},
|
|
78
|
+
"ink": {
|
|
79
|
+
"optional": true
|
|
80
|
+
},
|
|
81
|
+
"react": {
|
|
82
|
+
"optional": true
|
|
83
|
+
},
|
|
84
|
+
"@opentui/core": {
|
|
85
|
+
"optional": true
|
|
86
|
+
},
|
|
87
|
+
"picocolors": {
|
|
88
|
+
"optional": true
|
|
78
89
|
}
|
|
79
90
|
},
|
|
80
91
|
"engines": {
|
|
@@ -160,11 +171,7 @@
|
|
|
160
171
|
}
|
|
161
172
|
},
|
|
162
173
|
"dependencies": {
|
|
163
|
-
"
|
|
164
|
-
"ajv": "^8.17.1",
|
|
165
|
-
"ink": "^5.2.1",
|
|
166
|
-
"picocolors": "^1.1.1",
|
|
167
|
-
"react": "^18.3.1",
|
|
174
|
+
"ajv": "^8.18.0",
|
|
168
175
|
"yaml": "^2.8.2"
|
|
169
176
|
}
|
|
170
177
|
}
|