veto-sdk 2.5.1 → 2.7.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.
Files changed (54) hide show
  1. package/dist/cli/compile.js +1 -1
  2. package/dist/cli/compile.js.map +1 -1
  3. package/dist/cli/templates.js +1 -1
  4. package/dist/core/veto.d.ts +1 -0
  5. package/dist/core/veto.d.ts.map +1 -1
  6. package/dist/core/veto.js +24 -11
  7. package/dist/core/veto.js.map +1 -1
  8. package/dist/custom/providers/anthropic.d.ts +0 -13
  9. package/dist/custom/providers/anthropic.d.ts.map +1 -1
  10. package/dist/custom/providers/anthropic.js +39 -40
  11. package/dist/custom/providers/anthropic.js.map +1 -1
  12. package/dist/custom/providers/openai.d.ts +0 -13
  13. package/dist/custom/providers/openai.d.ts.map +1 -1
  14. package/dist/custom/providers/openai.js +40 -41
  15. package/dist/custom/providers/openai.js.map +1 -1
  16. package/dist/custom/providers/utils.d.ts +10 -0
  17. package/dist/custom/providers/utils.d.ts.map +1 -0
  18. package/dist/custom/providers/utils.js +130 -0
  19. package/dist/custom/providers/utils.js.map +1 -0
  20. package/dist/custom/types.d.ts +11 -18
  21. package/dist/custom/types.d.ts.map +1 -1
  22. package/dist/custom/types.js +70 -28
  23. package/dist/custom/types.js.map +1 -1
  24. package/dist/rules/feed-provider.d.ts +39 -0
  25. package/dist/rules/feed-provider.d.ts.map +1 -0
  26. package/dist/rules/feed-provider.js +65 -0
  27. package/dist/rules/feed-provider.js.map +1 -0
  28. package/dist/rules/index.d.ts +3 -1
  29. package/dist/rules/index.d.ts.map +1 -1
  30. package/dist/rules/index.js +6 -0
  31. package/dist/rules/index.js.map +1 -1
  32. package/dist/rules/local-evaluator.d.ts +14 -3
  33. package/dist/rules/local-evaluator.d.ts.map +1 -1
  34. package/dist/rules/local-evaluator.js +20 -5
  35. package/dist/rules/local-evaluator.js.map +1 -1
  36. package/dist/rules/pipeline-dsl.d.ts +802 -0
  37. package/dist/rules/pipeline-dsl.d.ts.map +1 -0
  38. package/dist/rules/pipeline-dsl.js +198 -0
  39. package/dist/rules/pipeline-dsl.js.map +1 -0
  40. package/dist/rules/policy-ir-schema.d.ts +62 -0
  41. package/dist/rules/policy-ir-schema.d.ts.map +1 -1
  42. package/dist/rules/policy-ir-schema.js +58 -0
  43. package/dist/rules/policy-ir-schema.js.map +1 -1
  44. package/dist/rules/policy-packs.d.ts.map +1 -1
  45. package/dist/rules/policy-packs.js +3 -0
  46. package/dist/rules/policy-packs.js.map +1 -1
  47. package/dist/rules/types.d.ts +78 -0
  48. package/dist/rules/types.d.ts.map +1 -1
  49. package/dist/rules/types.js +13 -0
  50. package/dist/rules/types.js.map +1 -1
  51. package/package.json +5 -1
  52. package/packs/eu-ai-act-starter.yaml +155 -0
  53. package/packs/hipaa-lite.yaml +154 -0
  54. package/packs/soc2-lite.yaml +136 -0
@@ -17,12 +17,23 @@
17
17
  *
18
18
  * @module rules/local-evaluator
19
19
  */
20
- import type { Rule, RuleCondition } from './types.js';
20
+ import type { FeedProvider, Rule, RuleCondition } from './types.js';
21
21
  export interface LocalEvalResult {
22
22
  decision: 'allow' | 'deny' | 'require_approval' | null;
23
23
  reason?: string;
24
24
  ruleId?: string;
25
25
  }
26
+ /**
27
+ * Optional knobs for local evaluation.
28
+ *
29
+ * `feedProvider` is required for rules whose condition values reference
30
+ * dynamic feeds. When absent, feed-backed conditions apply their
31
+ * `fallback` behavior exactly as if the snapshot were missing.
32
+ */
33
+ export interface LocalEvalOptions {
34
+ feedProvider?: FeedProvider;
35
+ now_ms?: number;
36
+ }
26
37
  /**
27
38
  * Resolve a dot-notation field path in a nested object.
28
39
  *
@@ -50,7 +61,7 @@ export declare function resolveFieldPath(path: string, obj: Record<string, unkno
50
61
  *
51
62
  * Unknown operators return false.
52
63
  */
53
- export declare function evaluateCondition(condition: RuleCondition, context: Record<string, unknown>): boolean;
64
+ export declare function evaluateCondition(condition: RuleCondition, context: Record<string, unknown>, options?: LocalEvalOptions): boolean;
54
65
  /**
55
66
  * Evaluate an array of rules against a tool call.
56
67
  *
@@ -61,5 +72,5 @@ export declare function evaluateCondition(condition: RuleCondition, context: Rec
61
72
  * @param toolName - The tool being called (e.g. "browser_click")
62
73
  * @param args - Context object for field resolution (typically `{ arguments: { ... } }`)
63
74
  */
64
- export declare function evaluateRulesLocally(rules: Rule[], toolName: string, args: Record<string, unknown>): LocalEvalResult;
75
+ export declare function evaluateRulesLocally(rules: Rule[], toolName: string, args: Record<string, unknown>, options?: LocalEvalOptions): LocalEvalResult;
65
76
  //# sourceMappingURL=local-evaluator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"local-evaluator.d.ts","sourceRoot":"","sources":["../../src/rules/local-evaluator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAGtD,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,kBAAkB,GAAG,IAAI,CAAC;IACvD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC3B,OAAO,CAST;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,aAAa,EACxB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,OAAO,CAqJT;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,IAAI,EAAE,EACb,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,eAAe,CAiCjB"}
1
+ {"version":3,"file":"local-evaluator.d.ts","sourceRoot":"","sources":["../../src/rules/local-evaluator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAKpE,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,kBAAkB,GAAG,IAAI,CAAC;IACvD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC/B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC3B,OAAO,CAST;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,aAAa,EACxB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAmKT;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,IAAI,EAAE,EACb,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,GAAE,gBAAqB,GAC7B,eAAe,CAiCjB"}
@@ -17,7 +17,9 @@
17
17
  *
18
18
  * @module rules/local-evaluator
19
19
  */
20
+ import { isConditionValueRef } from './types.js';
20
21
  import { createSafeRegex, evaluateTimeWindow } from './condition-evaluator.js';
22
+ import { resolveFeedRef } from './feed-provider.js';
21
23
  /**
22
24
  * Resolve a dot-notation field path in a nested object.
23
25
  *
@@ -56,13 +58,26 @@ export function resolveFieldPath(path, obj) {
56
58
  *
57
59
  * Unknown operators return false.
58
60
  */
59
- export function evaluateCondition(condition, context) {
61
+ export function evaluateCondition(condition, context, options = {}) {
60
62
  if (!condition.field || !condition.operator)
61
63
  return false;
62
64
  const fieldValue = resolveFieldPath(condition.field, context);
63
- const expected = condition.value;
65
+ let expected = condition.value;
64
66
  if (fieldValue === undefined && condition.operator !== 'not_exists')
65
67
  return false;
68
+ // Resolve typed FeedRef / PipelineRef comparands against the injected
69
+ // provider. On miss/stale we apply the fallback and return. On hit,
70
+ // `expected` is reassigned to the resolved array — set-membership
71
+ // operators use it normally; other operators compare against the
72
+ // array and correctly fail their type checks below.
73
+ if (isConditionValueRef(expected)) {
74
+ const outcome = resolveFeedRef(expected, options.feedProvider, options.now_ms);
75
+ if ('fallback' in outcome) {
76
+ // fail_open: do not match. fail_closed: match.
77
+ return outcome.fallback === 'fail_closed';
78
+ }
79
+ expected = outcome.resolved;
80
+ }
66
81
  switch (condition.operator) {
67
82
  case 'equals':
68
83
  if (typeof fieldValue === 'string' && typeof expected === 'string') {
@@ -222,7 +237,7 @@ export function evaluateCondition(condition, context) {
222
237
  * @param toolName - The tool being called (e.g. "browser_click")
223
238
  * @param args - Context object for field resolution (typically `{ arguments: { ... } }`)
224
239
  */
225
- export function evaluateRulesLocally(rules, toolName, args) {
240
+ export function evaluateRulesLocally(rules, toolName, args, options = {}) {
226
241
  for (const rule of rules) {
227
242
  if (!rule.enabled)
228
243
  continue;
@@ -232,12 +247,12 @@ export function evaluateRulesLocally(rules, toolName, args) {
232
247
  // If `conditions` is present and non-empty, evaluate only those.
233
248
  // Otherwise fall through to `condition_groups`.
234
249
  if (rule.conditions && rule.conditions.length > 0) {
235
- const allMatch = rule.conditions.every(c => evaluateCondition(c, args));
250
+ const allMatch = rule.conditions.every(c => evaluateCondition(c, args, options));
236
251
  if (!allMatch)
237
252
  continue;
238
253
  }
239
254
  else if (rule.condition_groups && rule.condition_groups.length > 0) {
240
- const anyGroupMatch = rule.condition_groups.some(group => group.every(c => evaluateCondition(c, args)));
255
+ const anyGroupMatch = rule.condition_groups.some(group => group.every(c => evaluateCondition(c, args, options)));
241
256
  if (!anyGroupMatch)
242
257
  continue;
243
258
  }
@@ -1 +1 @@
1
- {"version":3,"file":"local-evaluator.js","sourceRoot":"","sources":["../../src/rules/local-evaluator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local-evaluator.js","sourceRoot":"","sources":["../../src/rules/local-evaluator.ts"],"names":[],"mappings":"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"}