palaryn 0.5.7 → 0.6.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 (120) hide show
  1. package/dist/src/billing/plan-enforcer.d.ts.map +1 -1
  2. package/dist/src/billing/plan-enforcer.js +0 -2
  3. package/dist/src/billing/plan-enforcer.js.map +1 -1
  4. package/dist/src/config/defaults.js +1 -1
  5. package/dist/src/config/defaults.js.map +1 -1
  6. package/dist/src/dlp/circuit-breaker.d.ts +44 -0
  7. package/dist/src/dlp/circuit-breaker.d.ts.map +1 -0
  8. package/dist/src/dlp/circuit-breaker.js +69 -0
  9. package/dist/src/dlp/circuit-breaker.js.map +1 -0
  10. package/dist/src/dlp/deberta-backend.d.ts +2 -0
  11. package/dist/src/dlp/deberta-backend.d.ts.map +1 -1
  12. package/dist/src/dlp/deberta-backend.js +21 -3
  13. package/dist/src/dlp/deberta-backend.js.map +1 -1
  14. package/dist/src/dlp/exfiltration-backend.d.ts.map +1 -1
  15. package/dist/src/dlp/exfiltration-backend.js +10 -0
  16. package/dist/src/dlp/exfiltration-backend.js.map +1 -1
  17. package/dist/src/dlp/index.d.ts +2 -0
  18. package/dist/src/dlp/index.d.ts.map +1 -1
  19. package/dist/src/dlp/index.js +5 -1
  20. package/dist/src/dlp/index.js.map +1 -1
  21. package/dist/src/dlp/llm-classifier.d.ts +8 -1
  22. package/dist/src/dlp/llm-classifier.d.ts.map +1 -1
  23. package/dist/src/dlp/llm-classifier.js +138 -61
  24. package/dist/src/dlp/llm-classifier.js.map +1 -1
  25. package/dist/src/dlp/multipart-extractor.d.ts +20 -0
  26. package/dist/src/dlp/multipart-extractor.d.ts.map +1 -0
  27. package/dist/src/dlp/multipart-extractor.js +60 -0
  28. package/dist/src/dlp/multipart-extractor.js.map +1 -0
  29. package/dist/src/dlp/navigation-instruction-backend.d.ts +6 -0
  30. package/dist/src/dlp/navigation-instruction-backend.d.ts.map +1 -0
  31. package/dist/src/dlp/navigation-instruction-backend.js +286 -0
  32. package/dist/src/dlp/navigation-instruction-backend.js.map +1 -0
  33. package/dist/src/dlp/nemo-backend.d.ts +2 -0
  34. package/dist/src/dlp/nemo-backend.d.ts.map +1 -1
  35. package/dist/src/dlp/nemo-backend.js +8 -0
  36. package/dist/src/dlp/nemo-backend.js.map +1 -1
  37. package/dist/src/dlp/prompt-injection-patterns.d.ts.map +1 -1
  38. package/dist/src/dlp/prompt-injection-patterns.js +36 -0
  39. package/dist/src/dlp/prompt-injection-patterns.js.map +1 -1
  40. package/dist/src/dlp/text-normalizer.d.ts +2 -15
  41. package/dist/src/dlp/text-normalizer.d.ts.map +1 -1
  42. package/dist/src/dlp/text-normalizer.js +34 -7
  43. package/dist/src/dlp/text-normalizer.js.map +1 -1
  44. package/dist/src/dlp/tool-patterns.d.ts +12 -0
  45. package/dist/src/dlp/tool-patterns.d.ts.map +1 -1
  46. package/dist/src/dlp/tool-patterns.js +61 -1
  47. package/dist/src/dlp/tool-patterns.js.map +1 -1
  48. package/dist/src/executor/filesystem-executor.d.ts +5 -5
  49. package/dist/src/executor/filesystem-executor.d.ts.map +1 -1
  50. package/dist/src/executor/filesystem-executor.js +43 -0
  51. package/dist/src/executor/filesystem-executor.js.map +1 -1
  52. package/dist/src/metrics/collector.d.ts +5 -0
  53. package/dist/src/metrics/collector.d.ts.map +1 -1
  54. package/dist/src/metrics/collector.js +14 -0
  55. package/dist/src/metrics/collector.js.map +1 -1
  56. package/dist/src/policy/engine.d.ts.map +1 -1
  57. package/dist/src/policy/engine.js +39 -3
  58. package/dist/src/policy/engine.js.map +1 -1
  59. package/dist/src/policy/opa-engine.d.ts.map +1 -1
  60. package/dist/src/policy/opa-engine.js +2 -1
  61. package/dist/src/policy/opa-engine.js.map +1 -1
  62. package/dist/src/server/app.d.ts.map +1 -1
  63. package/dist/src/server/app.js +17 -9
  64. package/dist/src/server/app.js.map +1 -1
  65. package/dist/src/server/gateway.d.ts +4 -0
  66. package/dist/src/server/gateway.d.ts.map +1 -1
  67. package/dist/src/server/gateway.js +146 -4
  68. package/dist/src/server/gateway.js.map +1 -1
  69. package/dist/src/types/config.d.ts +9 -0
  70. package/dist/src/types/config.d.ts.map +1 -1
  71. package/dist/src/types/policy.d.ts +4 -0
  72. package/dist/src/types/policy.d.ts.map +1 -1
  73. package/dist/src/types/tool-call.d.ts +4 -0
  74. package/dist/src/types/tool-call.d.ts.map +1 -1
  75. package/dist/tests/integration/navigation-chain.test.d.ts +9 -0
  76. package/dist/tests/integration/navigation-chain.test.d.ts.map +1 -0
  77. package/dist/tests/integration/navigation-chain.test.js +474 -0
  78. package/dist/tests/integration/navigation-chain.test.js.map +1 -0
  79. package/dist/tests/unit/adversarial-pipeline.test.js +173 -15
  80. package/dist/tests/unit/adversarial-pipeline.test.js.map +1 -1
  81. package/dist/tests/unit/cli.test.js +3 -7
  82. package/dist/tests/unit/cli.test.js.map +1 -1
  83. package/dist/tests/unit/filesystem-executor.test.js +88 -0
  84. package/dist/tests/unit/filesystem-executor.test.js.map +1 -1
  85. package/dist/tests/unit/multipart-extractor.test.d.ts +2 -0
  86. package/dist/tests/unit/multipart-extractor.test.d.ts.map +1 -0
  87. package/dist/tests/unit/multipart-extractor.test.js +118 -0
  88. package/dist/tests/unit/multipart-extractor.test.js.map +1 -0
  89. package/dist/tests/unit/navigation-instruction-backend.test.d.ts +8 -0
  90. package/dist/tests/unit/navigation-instruction-backend.test.d.ts.map +1 -0
  91. package/dist/tests/unit/navigation-instruction-backend.test.js +561 -0
  92. package/dist/tests/unit/navigation-instruction-backend.test.js.map +1 -0
  93. package/dist/tests/unit/policy-engine.test.js +314 -1
  94. package/dist/tests/unit/policy-engine.test.js.map +1 -1
  95. package/dist/tests/unit/prompt-injection-backend.test.js +1 -1
  96. package/dist/tests/unit/prompt-injection-backend.test.js.map +1 -1
  97. package/package.json +3 -2
  98. package/policy-packs/default.yaml +76 -0
  99. package/src/billing/plan-enforcer.ts +0 -2
  100. package/src/config/defaults.ts +1 -1
  101. package/src/dlp/circuit-breaker.ts +83 -0
  102. package/src/dlp/deberta-backend.ts +21 -3
  103. package/src/dlp/exfiltration-backend.ts +11 -0
  104. package/src/dlp/index.ts +2 -0
  105. package/src/dlp/llm-classifier.ts +148 -66
  106. package/src/dlp/multipart-extractor.ts +66 -0
  107. package/src/dlp/navigation-instruction-backend.ts +309 -0
  108. package/src/dlp/nemo-backend.ts +10 -0
  109. package/src/dlp/prompt-injection-patterns.ts +37 -0
  110. package/src/dlp/text-normalizer.ts +36 -7
  111. package/src/dlp/tool-patterns.ts +63 -0
  112. package/src/executor/filesystem-executor.ts +51 -0
  113. package/src/metrics/collector.ts +17 -0
  114. package/src/policy/engine.ts +39 -3
  115. package/src/policy/opa-engine.ts +2 -1
  116. package/src/server/app.ts +19 -10
  117. package/src/server/gateway.ts +155 -4
  118. package/src/types/config.ts +9 -0
  119. package/src/types/policy.ts +5 -0
  120. package/src/types/tool-call.ts +4 -0
@@ -1 +1 @@
1
- {"version":3,"file":"plan-enforcer.d.ts","sourceRoot":"","sources":["../../../src/billing/plan-enforcer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAe,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAyC,MAAM,uBAAuB,CAAC;AAE9F,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,YAAY;IACvB,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,GAAG,UAAU;IAI5C,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,GAAG;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;IASjH,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO;IAI7D;;OAEG;IACH,MAAM,CAAC,gBAAgB,CACrB,IAAI,EAAE,QAAQ,EACd,kBAAkB,EAAE,MAAM,GACzB,iBAAiB;IAWpB;;OAEG;IACH,MAAM,CAAC,gBAAgB,CACrB,IAAI,EAAE,QAAQ,EACd,eAAe,EAAE,MAAM,GACtB,iBAAiB;IAWpB;;OAEG;IACH,MAAM,CAAC,mBAAmB,CACxB,IAAI,EAAE,QAAQ,EACd,qBAAqB,EAAE,MAAM,GAC5B,iBAAiB;IAapB;;;OAGG;IACH,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,GAAG,iBAAiB;CAU/E;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,EAAE;IACjD,cAAc,EAAE,cAAc,CAAC;IAC/B,mBAAmB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAAC;CACtD,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,KAAK,IAAI,CA6B5D"}
1
+ {"version":3,"file":"plan-enforcer.d.ts","sourceRoot":"","sources":["../../../src/billing/plan-enforcer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAe,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,cAAc,EAAyC,MAAM,uBAAuB,CAAC;AAE9F,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,YAAY;IACvB,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,QAAQ,GAAG,UAAU;IAI5C,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,GAAG;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;IASjH,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO;IAI7D;;OAEG;IACH,MAAM,CAAC,gBAAgB,CACrB,IAAI,EAAE,QAAQ,EACd,kBAAkB,EAAE,MAAM,GACzB,iBAAiB;IAWpB;;OAEG;IACH,MAAM,CAAC,gBAAgB,CACrB,IAAI,EAAE,QAAQ,EACd,eAAe,EAAE,MAAM,GACtB,iBAAiB;IAWpB;;OAEG;IACH,MAAM,CAAC,mBAAmB,CACxB,IAAI,EAAE,QAAQ,EACd,qBAAqB,EAAE,MAAM,GAC5B,iBAAiB;IAWpB;;;OAGG;IACH,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,GAAG,iBAAiB;CAU/E;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,EAAE;IACjD,cAAc,EAAE,cAAc,CAAC;IAC/B,mBAAmB,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,CAAC;CACtD,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,KAAK,IAAI,CA6B5D"}
@@ -57,8 +57,6 @@ class PlanEnforcer {
57
57
  }
58
58
  return { allowed: true };
59
59
  }
60
- // TODO: Integrate into gateway pipeline — call enforce() from gateway.preExecute()
61
- // or wire createPlanEnforcerMiddleware() in src/server/app.ts before POST /v1/tool/execute.
62
60
  /**
63
61
  * Enforce call limits for a tool execution.
64
62
  * Returns { allowed: true } or { allowed: false, reason: '...' }.
@@ -1 +1 @@
1
- {"version":3,"file":"plan-enforcer.js","sourceRoot":"","sources":["../../../src/billing/plan-enforcer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plan-enforcer.js","sourceRoot":"","sources":["../../../src/billing/plan-enforcer.ts"],"names":[],"mappings":"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"}
@@ -136,7 +136,7 @@ exports.DEFAULT_CONFIG = {
136
136
  threshold: 0.75,
137
137
  },
138
138
  llm_classifier: {
139
- enabled: !!process.env.PALARYN_LLM_API_KEY,
139
+ enabled: !!process.env.PALARYN_LLM_API_KEY || process.env.PALARYN_LLM_PROVIDER === 'bedrock',
140
140
  model: process.env.PALARYN_LLM_MODEL || 'gpt-4o-mini',
141
141
  confidence_threshold: 0.5,
142
142
  },
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../src/config/defaults.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../../src/config/defaults.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Simple circuit breaker for external DLP service calls.
3
+ *
4
+ * States:
5
+ * CLOSED — normal operation, requests pass through
6
+ * OPEN — too many failures, requests fail-fast (no external call)
7
+ * HALF_OPEN — after reset timeout, allow one probe request
8
+ *
9
+ * Fail-open policy: when the circuit is OPEN the DLP backend returns []
10
+ * (no detections), so legitimate requests are never blocked by a broken sidecar.
11
+ */
12
+ export type CircuitState = 'closed' | 'open' | 'half_open';
13
+ export interface CircuitBreakerOptions {
14
+ /** Name for logging/metrics. */
15
+ name: string;
16
+ /** Number of consecutive failures before opening the circuit. Default: 5. */
17
+ failureThreshold?: number;
18
+ /** Time in ms to wait before transitioning OPEN → HALF_OPEN. Default: 30000. */
19
+ resetTimeoutMs?: number;
20
+ }
21
+ export declare class CircuitBreaker {
22
+ readonly name: string;
23
+ private state;
24
+ private failureCount;
25
+ private readonly failureThreshold;
26
+ private readonly resetTimeoutMs;
27
+ private lastFailureTime;
28
+ /** Counters for observability. */
29
+ trips: number;
30
+ recoveries: number;
31
+ rejections: number;
32
+ constructor(opts: CircuitBreakerOptions);
33
+ getState(): CircuitState;
34
+ /**
35
+ * Returns true if the call should be allowed through.
36
+ * Returns false if the circuit is OPEN (fail-fast).
37
+ */
38
+ allowRequest(): boolean;
39
+ /** Record a successful call. Resets failure count and closes the circuit. */
40
+ recordSuccess(): void;
41
+ /** Record a failed call. Opens the circuit when threshold is reached. */
42
+ recordFailure(): void;
43
+ }
44
+ //# sourceMappingURL=circuit-breaker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"circuit-breaker.d.ts","sourceRoot":"","sources":["../../../src/dlp/circuit-breaker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;AAE3D,MAAM,WAAW,qBAAqB;IACpC,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,6EAA6E;IAC7E,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gFAAgF;IAChF,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,qBAAa,cAAc;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,KAAK,CAA0B;IACvC,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAS;IACxC,OAAO,CAAC,eAAe,CAAK;IAE5B,kCAAkC;IAClC,KAAK,SAAK;IACV,UAAU,SAAK;IACf,UAAU,SAAK;gBAEH,IAAI,EAAE,qBAAqB;IAMvC,QAAQ,IAAI,YAAY;IAOxB;;;OAGG;IACH,YAAY,IAAI,OAAO;IASvB,6EAA6E;IAC7E,aAAa,IAAI,IAAI;IAQrB,yEAAyE;IACzE,aAAa,IAAI,IAAI;CAUtB"}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+ /**
3
+ * Simple circuit breaker for external DLP service calls.
4
+ *
5
+ * States:
6
+ * CLOSED — normal operation, requests pass through
7
+ * OPEN — too many failures, requests fail-fast (no external call)
8
+ * HALF_OPEN — after reset timeout, allow one probe request
9
+ *
10
+ * Fail-open policy: when the circuit is OPEN the DLP backend returns []
11
+ * (no detections), so legitimate requests are never blocked by a broken sidecar.
12
+ */
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.CircuitBreaker = void 0;
15
+ class CircuitBreaker {
16
+ constructor(opts) {
17
+ this.state = 'closed';
18
+ this.failureCount = 0;
19
+ this.lastFailureTime = 0;
20
+ /** Counters for observability. */
21
+ this.trips = 0;
22
+ this.recoveries = 0;
23
+ this.rejections = 0;
24
+ this.name = opts.name;
25
+ this.failureThreshold = opts.failureThreshold ?? 5;
26
+ this.resetTimeoutMs = opts.resetTimeoutMs ?? 30000;
27
+ }
28
+ getState() {
29
+ if (this.state === 'open' && Date.now() - this.lastFailureTime >= this.resetTimeoutMs) {
30
+ this.state = 'half_open';
31
+ }
32
+ return this.state;
33
+ }
34
+ /**
35
+ * Returns true if the call should be allowed through.
36
+ * Returns false if the circuit is OPEN (fail-fast).
37
+ */
38
+ allowRequest() {
39
+ const s = this.getState();
40
+ if (s === 'closed')
41
+ return true;
42
+ if (s === 'half_open')
43
+ return true; // probe request
44
+ // OPEN → reject
45
+ this.rejections++;
46
+ return false;
47
+ }
48
+ /** Record a successful call. Resets failure count and closes the circuit. */
49
+ recordSuccess() {
50
+ if (this.state === 'half_open') {
51
+ this.recoveries++;
52
+ }
53
+ this.failureCount = 0;
54
+ this.state = 'closed';
55
+ }
56
+ /** Record a failed call. Opens the circuit when threshold is reached. */
57
+ recordFailure() {
58
+ this.failureCount++;
59
+ this.lastFailureTime = Date.now();
60
+ if (this.failureCount >= this.failureThreshold) {
61
+ if (this.state !== 'open') {
62
+ this.trips++;
63
+ }
64
+ this.state = 'open';
65
+ }
66
+ }
67
+ }
68
+ exports.CircuitBreaker = CircuitBreaker;
69
+ //# sourceMappingURL=circuit-breaker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"circuit-breaker.js","sourceRoot":"","sources":["../../../src/dlp/circuit-breaker.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;AAaH,MAAa,cAAc;IAazB,YAAY,IAA2B;QAX/B,UAAK,GAAiB,QAAQ,CAAC;QAC/B,iBAAY,GAAG,CAAC,CAAC;QAGjB,oBAAe,GAAG,CAAC,CAAC;QAE5B,kCAAkC;QAClC,UAAK,GAAG,CAAC,CAAC;QACV,eAAU,GAAG,CAAC,CAAC;QACf,eAAU,GAAG,CAAC,CAAC;QAGb,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,KAAM,CAAC;IACtD,CAAC;IAED,QAAQ;QACN,IAAI,IAAI,CAAC,KAAK,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACtF,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC;QAC3B,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED;;;OAGG;IACH,YAAY;QACV,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QAChC,IAAI,CAAC,KAAK,WAAW;YAAE,OAAO,IAAI,CAAC,CAAC,gBAAgB;QACpD,gBAAgB;QAChB,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,6EAA6E;IAC7E,aAAa;QACX,IAAI,IAAI,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;YAC/B,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,CAAC;QACD,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,KAAK,GAAG,QAAQ,CAAC;IACxB,CAAC;IAED,yEAAyE;IACzE,aAAa;QACX,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAClC,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC/C,IAAI,IAAI,CAAC,KAAK,KAAK,MAAM,EAAE,CAAC;gBAC1B,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,CAAC;YACD,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC;QACtB,CAAC;IACH,CAAC;CACF;AA3DD,wCA2DC"}
@@ -1,4 +1,5 @@
1
1
  import { DLPBackend, DLPDetection } from './interfaces';
2
+ import { CircuitBreaker } from './circuit-breaker';
2
3
  export interface DeBERTaConfig {
3
4
  /** Sidecar API URL (e.g. 'http://deberta:8000'). If set, uses HTTP. */
4
5
  api_url?: string;
@@ -25,6 +26,7 @@ export declare class DeBERTaBackend implements DLPBackend {
25
26
  private readonly modelPath?;
26
27
  private readonly timeoutMs;
27
28
  private readonly threshold;
29
+ readonly circuitBreaker: CircuitBreaker;
28
30
  constructor(config: DeBERTaConfig);
29
31
  scanString(value: string): DLPDetection[];
30
32
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"deberta-backend.d.ts","sourceRoot":"","sources":["../../../src/dlp/deberta-backend.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAGxD,MAAM,WAAW,aAAa;IAC5B,uEAAuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wEAAwE;IACxE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4DAA4D;IAC5D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;GASG;AACH,qBAAa,cAAe,YAAW,UAAU;IAC/C,QAAQ,CAAC,IAAI,gBAAgB;IAE7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,MAAM,EAAE,aAAa;IAOjC,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,EAAE;IA8BzC;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,WAAW;IAoBnB,OAAO,CAAC,cAAc;CAcvB"}
1
+ {"version":3,"file":"deberta-backend.d.ts","sourceRoot":"","sources":["../../../src/dlp/deberta-backend.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAExD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,WAAW,aAAa;IAC5B,uEAAuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,wEAAwE;IACxE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4DAA4D;IAC5D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;GASG;AACH,qBAAa,cAAe,YAAW,UAAU;IAC/C,QAAQ,CAAC,IAAI,gBAAgB;IAE7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;gBAE5B,MAAM,EAAE,aAAa;IAQjC,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,EAAE;IA6CzC;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAcxB,OAAO,CAAC,WAAW;IAoBnB,OAAO,CAAC,cAAc;CAcvB"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DeBERTaBackend = void 0;
4
4
  const child_process_1 = require("child_process");
5
+ const circuit_breaker_1 = require("./circuit-breaker");
5
6
  /**
6
7
  * DLP backend using a fine-tuned DeBERTa model for prompt injection detection.
7
8
  *
@@ -19,6 +20,7 @@ class DeBERTaBackend {
19
20
  this.modelPath = config.model_path;
20
21
  this.timeoutMs = config.timeout_ms ?? 10000;
21
22
  this.threshold = config.threshold ?? 0.5;
23
+ this.circuitBreaker = new circuit_breaker_1.CircuitBreaker({ name: 'deberta', failureThreshold: 5, resetTimeoutMs: 30000 });
22
24
  }
23
25
  scanString(value) {
24
26
  if (!value || value.length < 5)
@@ -28,9 +30,25 @@ class DeBERTaBackend {
28
30
  if (!textToScan || textToScan.length < 5)
29
31
  return [];
30
32
  try {
31
- const result = this.apiUrl
32
- ? this.callSidecar(textToScan)
33
- : this.callSubprocess(textToScan);
33
+ let result;
34
+ if (this.apiUrl) {
35
+ // Circuit breaker protects sidecar HTTP calls
36
+ if (!this.circuitBreaker.allowRequest()) {
37
+ console.warn(`[DeBERTaBackend] circuit OPEN — skipping sidecar call`);
38
+ return [];
39
+ }
40
+ try {
41
+ result = this.callSidecar(textToScan);
42
+ this.circuitBreaker.recordSuccess();
43
+ }
44
+ catch (sidecarErr) {
45
+ this.circuitBreaker.recordFailure();
46
+ throw sidecarErr;
47
+ }
48
+ }
49
+ else {
50
+ result = this.callSubprocess(textToScan);
51
+ }
34
52
  if (!result || !result.detected)
35
53
  return [];
36
54
  const severity = result.score >= 0.9 ? 'high' : result.score >= 0.7 ? 'medium' : 'low';
@@ -1 +1 @@
1
- {"version":3,"file":"deberta-backend.js","sourceRoot":"","sources":["../../../src/dlp/deberta-backend.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deberta-backend.js","sourceRoot":"","sources":["../../../src/dlp/deberta-backend.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"exfiltration-backend.d.ts","sourceRoot":"","sources":["../../../src/dlp/exfiltration-backend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAoCxD,qBAAa,4BAA6B,YAAW,UAAU;IAC7D,QAAQ,CAAC,IAAI,4BAA4B;IAEzC,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,EAAE;CAuB1C"}
1
+ {"version":3,"file":"exfiltration-backend.d.ts","sourceRoot":"","sources":["../../../src/dlp/exfiltration-backend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAoCxD,qBAAa,4BAA6B,YAAW,UAAU;IAC7D,QAAQ,CAAC,IAAI,4BAA4B;IAEzC,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,EAAE;CAkC1C"}
@@ -38,6 +38,16 @@ class ExfiltrationDetectionBackend {
38
38
  }
39
39
  scanString(value) {
40
40
  const detections = [];
41
+ // Large payload detection (>5KB body with URL context = potential exfiltration)
42
+ if (value.length > 5000) {
43
+ detections.push({
44
+ pattern_name: 'exfil_large_payload',
45
+ severity: 'high',
46
+ match: `[${value.length} bytes]`,
47
+ start: 0,
48
+ end: value.length,
49
+ });
50
+ }
41
51
  for (const pat of EXFILTRATION_PATTERNS) {
42
52
  pat.pattern.lastIndex = 0;
43
53
  let m;
@@ -1 +1 @@
1
- {"version":3,"file":"exfiltration-backend.js","sourceRoot":"","sources":["../../../src/dlp/exfiltration-backend.ts"],"names":[],"mappings":";;;AAGA;;;;;;;;GAQG;AAEH,MAAM,qBAAqB,GAAiB;IAC1C;QACE,IAAI,EAAE,4BAA4B;QAClC,OAAO,EAAE,mEAAmE;QAC5E,QAAQ,EAAE,MAAM;KACjB;IACD;QACE,IAAI,EAAE,oCAAoC;QAC1C,OAAO,EAAE,kDAAkD;QAC3D,QAAQ,EAAE,MAAM;KACjB;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,OAAO,EAAE,sEAAsE;QAC/E,QAAQ,EAAE,MAAM;KACjB;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,OAAO,EAAE,+FAA+F;QACxG,QAAQ,EAAE,MAAM;KACjB;CACF,CAAC;AAEF,MAAa,4BAA4B;IAAzC;QACW,SAAI,GAAG,wBAAwB,CAAC;IAyB3C,CAAC;IAvBC,UAAU,CAAC,KAAa;QACtB,MAAM,UAAU,GAAmB,EAAE,CAAC;QAEtC,KAAK,MAAM,GAAG,IAAI,qBAAqB,EAAE,CAAC;YACxC,GAAG,CAAC,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC;YAC1B,IAAI,CAAyB,CAAC;YAC9B,OAAO,CAAC,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;gBAC9C,UAAU,CAAC,IAAI,CAAC;oBACd,YAAY,EAAE,GAAG,CAAC,IAAI;oBACtB,QAAQ,EAAE,GAAG,CAAC,QAAQ;oBACtB,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;oBACX,KAAK,EAAE,CAAC,CAAC,KAAK;oBACd,GAAG,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM;iBAC3B,CAAC,CAAC;gBACH,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACtB,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;gBAC1B,CAAC;YACH,CAAC;YACD,GAAG,CAAC,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC;QAC5B,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;CACF;AA1BD,oEA0BC"}
1
+ {"version":3,"file":"exfiltration-backend.js","sourceRoot":"","sources":["../../../src/dlp/exfiltration-backend.ts"],"names":[],"mappings":";;;AAGA;;;;;;;;GAQG;AAEH,MAAM,qBAAqB,GAAiB;IAC1C;QACE,IAAI,EAAE,4BAA4B;QAClC,OAAO,EAAE,mEAAmE;QAC5E,QAAQ,EAAE,MAAM;KACjB;IACD;QACE,IAAI,EAAE,oCAAoC;QAC1C,OAAO,EAAE,kDAAkD;QAC3D,QAAQ,EAAE,MAAM;KACjB;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,OAAO,EAAE,sEAAsE;QAC/E,QAAQ,EAAE,MAAM;KACjB;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,OAAO,EAAE,+FAA+F;QACxG,QAAQ,EAAE,MAAM;KACjB;CACF,CAAC;AAEF,MAAa,4BAA4B;IAAzC;QACW,SAAI,GAAG,wBAAwB,CAAC;IAoC3C,CAAC;IAlCC,UAAU,CAAC,KAAa;QACtB,MAAM,UAAU,GAAmB,EAAE,CAAC;QAEtC,gFAAgF;QAChF,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC;YACxB,UAAU,CAAC,IAAI,CAAC;gBACd,YAAY,EAAE,qBAAqB;gBACnC,QAAQ,EAAE,MAAM;gBAChB,KAAK,EAAE,IAAI,KAAK,CAAC,MAAM,SAAS;gBAChC,KAAK,EAAE,CAAC;gBACR,GAAG,EAAE,KAAK,CAAC,MAAM;aAClB,CAAC,CAAC;QACL,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,qBAAqB,EAAE,CAAC;YACxC,GAAG,CAAC,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC;YAC1B,IAAI,CAAyB,CAAC;YAC9B,OAAO,CAAC,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;gBAC9C,UAAU,CAAC,IAAI,CAAC;oBACd,YAAY,EAAE,GAAG,CAAC,IAAI;oBACtB,QAAQ,EAAE,GAAG,CAAC,QAAQ;oBACtB,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC;oBACX,KAAK,EAAE,CAAC,CAAC,KAAK;oBACd,GAAG,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM;iBAC3B,CAAC,CAAC;gBACH,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACtB,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;gBAC1B,CAAC;YACH,CAAC;YACD,GAAG,CAAC,OAAO,CAAC,SAAS,GAAG,CAAC,CAAC;QAC5B,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;CACF;AArCD,oEAqCC"}
@@ -7,7 +7,9 @@ export { CompositeDLPScanner } from './composite-scanner';
7
7
  export { PROMPT_INJECTION_PATTERNS, OUTPUT_INJECTION_PATTERNS } from './prompt-injection-patterns';
8
8
  export { PromptInjectionBackend, PromptInjectionConfig } from './prompt-injection-backend';
9
9
  export { ExfiltrationDetectionBackend } from './exfiltration-backend';
10
+ export { NavigationInstructionBackend } from './navigation-instruction-backend';
10
11
  export { NemoGuardrailsBackend, NemoGuardrailsConfig } from './nemo-backend';
11
12
  export { DeBERTaBackend, DeBERTaConfig } from './deberta-backend';
12
13
  export { normalizeText, normalizeLeetspeak, decodeROT13, tryDecodeROT13, ZERO_WIDTH_REGEX, HOMOGLYPH_MAP, LEETSPEAK_MAP } from './text-normalizer';
14
+ export { CircuitBreaker, CircuitBreakerOptions, CircuitState } from './circuit-breaker';
13
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/dlp/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAC3F,OAAO,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,WAAW,EAAE,cAAc,EAAE,gBAAgB,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/dlp/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACnG,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAC3F,OAAO,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,4BAA4B,EAAE,MAAM,kCAAkC,CAAC;AAChF,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC7E,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,WAAW,EAAE,cAAc,EAAE,gBAAgB,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACnJ,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LEETSPEAK_MAP = exports.HOMOGLYPH_MAP = exports.ZERO_WIDTH_REGEX = exports.tryDecodeROT13 = exports.decodeROT13 = exports.normalizeLeetspeak = exports.normalizeText = exports.DeBERTaBackend = exports.NemoGuardrailsBackend = exports.ExfiltrationDetectionBackend = exports.PromptInjectionBackend = exports.OUTPUT_INJECTION_PATTERNS = exports.PROMPT_INJECTION_PATTERNS = exports.CompositeDLPScanner = exports.TruffleHogBackend = exports.RegexDLPBackend = exports.PII_PATTERNS = exports.SECRET_PATTERNS = exports.DLPScanner = void 0;
3
+ exports.CircuitBreaker = exports.LEETSPEAK_MAP = exports.HOMOGLYPH_MAP = exports.ZERO_WIDTH_REGEX = exports.tryDecodeROT13 = exports.decodeROT13 = exports.normalizeLeetspeak = exports.normalizeText = exports.DeBERTaBackend = exports.NemoGuardrailsBackend = exports.NavigationInstructionBackend = exports.ExfiltrationDetectionBackend = exports.PromptInjectionBackend = exports.OUTPUT_INJECTION_PATTERNS = exports.PROMPT_INJECTION_PATTERNS = exports.CompositeDLPScanner = exports.TruffleHogBackend = exports.RegexDLPBackend = exports.PII_PATTERNS = exports.SECRET_PATTERNS = exports.DLPScanner = void 0;
4
4
  var scanner_1 = require("./scanner");
5
5
  Object.defineProperty(exports, "DLPScanner", { enumerable: true, get: function () { return scanner_1.DLPScanner; } });
6
6
  var patterns_1 = require("./patterns");
@@ -19,6 +19,8 @@ var prompt_injection_backend_1 = require("./prompt-injection-backend");
19
19
  Object.defineProperty(exports, "PromptInjectionBackend", { enumerable: true, get: function () { return prompt_injection_backend_1.PromptInjectionBackend; } });
20
20
  var exfiltration_backend_1 = require("./exfiltration-backend");
21
21
  Object.defineProperty(exports, "ExfiltrationDetectionBackend", { enumerable: true, get: function () { return exfiltration_backend_1.ExfiltrationDetectionBackend; } });
22
+ var navigation_instruction_backend_1 = require("./navigation-instruction-backend");
23
+ Object.defineProperty(exports, "NavigationInstructionBackend", { enumerable: true, get: function () { return navigation_instruction_backend_1.NavigationInstructionBackend; } });
22
24
  var nemo_backend_1 = require("./nemo-backend");
23
25
  Object.defineProperty(exports, "NemoGuardrailsBackend", { enumerable: true, get: function () { return nemo_backend_1.NemoGuardrailsBackend; } });
24
26
  var deberta_backend_1 = require("./deberta-backend");
@@ -31,4 +33,6 @@ Object.defineProperty(exports, "tryDecodeROT13", { enumerable: true, get: functi
31
33
  Object.defineProperty(exports, "ZERO_WIDTH_REGEX", { enumerable: true, get: function () { return text_normalizer_1.ZERO_WIDTH_REGEX; } });
32
34
  Object.defineProperty(exports, "HOMOGLYPH_MAP", { enumerable: true, get: function () { return text_normalizer_1.HOMOGLYPH_MAP; } });
33
35
  Object.defineProperty(exports, "LEETSPEAK_MAP", { enumerable: true, get: function () { return text_normalizer_1.LEETSPEAK_MAP; } });
36
+ var circuit_breaker_1 = require("./circuit-breaker");
37
+ Object.defineProperty(exports, "CircuitBreaker", { enumerable: true, get: function () { return circuit_breaker_1.CircuitBreaker; } });
34
38
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/dlp/index.ts"],"names":[],"mappings":";;;AAAA,qCAAuC;AAA9B,qGAAA,UAAU,OAAA;AAEnB,uCAAuE;AAAlD,2GAAA,eAAe,OAAA;AAAE,wGAAA,YAAY,OAAA;AAClD,iDAAsE;AAA7D,gHAAA,eAAe,OAAA;AACxB,2DAA2E;AAAlE,uHAAA,iBAAiB,OAAA;AAC1B,yDAA0D;AAAjD,wHAAA,mBAAmB,OAAA;AAC5B,yEAAmG;AAA1F,sIAAA,yBAAyB,OAAA;AAAE,sIAAA,yBAAyB,OAAA;AAC7D,uEAA2F;AAAlF,kIAAA,sBAAsB,OAAA;AAC/B,+DAAsE;AAA7D,oIAAA,4BAA4B,OAAA;AACrC,+CAA6E;AAApE,qHAAA,qBAAqB,OAAA;AAC9B,qDAAkE;AAAzD,iHAAA,cAAc,OAAA;AACvB,qDAAmJ;AAA1I,gHAAA,aAAa,OAAA;AAAE,qHAAA,kBAAkB,OAAA;AAAE,8GAAA,WAAW,OAAA;AAAE,iHAAA,cAAc,OAAA;AAAE,mHAAA,gBAAgB,OAAA;AAAE,gHAAA,aAAa,OAAA;AAAE,gHAAA,aAAa,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/dlp/index.ts"],"names":[],"mappings":";;;AAAA,qCAAuC;AAA9B,qGAAA,UAAU,OAAA;AAEnB,uCAAuE;AAAlD,2GAAA,eAAe,OAAA;AAAE,wGAAA,YAAY,OAAA;AAClD,iDAAsE;AAA7D,gHAAA,eAAe,OAAA;AACxB,2DAA2E;AAAlE,uHAAA,iBAAiB,OAAA;AAC1B,yDAA0D;AAAjD,wHAAA,mBAAmB,OAAA;AAC5B,yEAAmG;AAA1F,sIAAA,yBAAyB,OAAA;AAAE,sIAAA,yBAAyB,OAAA;AAC7D,uEAA2F;AAAlF,kIAAA,sBAAsB,OAAA;AAC/B,+DAAsE;AAA7D,oIAAA,4BAA4B,OAAA;AACrC,mFAAgF;AAAvE,8IAAA,4BAA4B,OAAA;AACrC,+CAA6E;AAApE,qHAAA,qBAAqB,OAAA;AAC9B,qDAAkE;AAAzD,iHAAA,cAAc,OAAA;AACvB,qDAAmJ;AAA1I,gHAAA,aAAa,OAAA;AAAE,qHAAA,kBAAkB,OAAA;AAAE,8GAAA,WAAW,OAAA;AAAE,iHAAA,cAAc,OAAA;AAAE,mHAAA,gBAAgB,OAAA;AAAE,gHAAA,aAAa,OAAA;AAAE,gHAAA,aAAa,OAAA;AACvH,qDAAwF;AAA/E,iHAAA,cAAc,OAAA"}
@@ -1,5 +1,6 @@
1
1
  import { DLPDetection } from './interfaces';
2
2
  import { DLPSeverity } from '../types/tool-result';
3
+ import { CircuitBreaker } from './circuit-breaker';
3
4
  export interface LlmClassifierConfig {
4
5
  enabled: boolean;
5
6
  model?: string;
@@ -24,12 +25,18 @@ export declare class LlmPromptInjectionClassifier {
24
25
  private apiKey;
25
26
  private model;
26
27
  private confidenceThreshold;
27
- private isOpenAI;
28
+ private provider;
29
+ private bedrockClient;
30
+ readonly circuitBreaker: CircuitBreaker;
28
31
  constructor(config: LlmClassifierConfig);
32
+ private detectProvider;
29
33
  classify(text: string, context?: {
30
34
  tool_name?: string;
31
35
  field_path?: string;
32
36
  }): Promise<ClassifyResult>;
37
+ private callBedrock;
38
+ private callOpenAI;
39
+ private callAnthropic;
33
40
  /**
34
41
  * Convert LLM classifications to DLPDetection format for merging into the DLP report.
35
42
  */
@@ -1 +1 @@
1
- {"version":3,"file":"llm-classifier.d.ts","sourceRoot":"","sources":["../../../src/dlp/llm-classifier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,uDAAuD;IACvD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,mDAAmD;IACnD,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,WAAW,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,eAAe,EAAE,iBAAiB,EAAE,CAAC;IACrC,qFAAqF;IACrF,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AA+CD,qBAAa,4BAA4B;IACvC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAU;gBAEd,MAAM,EAAE,mBAAmB;IAOjC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,cAAc,CAAC;IAiH5G;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,eAAe,EAAE,iBAAiB,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,YAAY,EAAE;CAS3F"}
1
+ {"version":3,"file":"llm-classifier.d.ts","sourceRoot":"","sources":["../../../src/dlp/llm-classifier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,uDAAuD;IACvD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,mDAAmD;IACnD,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,WAAW,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,eAAe,EAAE,iBAAiB,EAAE,CAAC;IACrC,qFAAqF;IACrF,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAiDD,qBAAa,4BAA4B;IACvC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAc;IAC9B,OAAO,CAAC,aAAa,CAAqC;IAC1D,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;gBAE5B,MAAM,EAAE,mBAAmB;IAavC,OAAO,CAAC,cAAc;IAahB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,cAAc,CAAC;YAkE9F,WAAW;YA8BX,UAAU;YAqCV,aAAa;IAqC3B;;OAEG;IACH,MAAM,CAAC,eAAe,CAAC,eAAe,EAAE,iBAAiB,EAAE,EAAE,IAAI,EAAE,MAAM,GAAG,YAAY,EAAE;CAS3F"}