@meetkai/mka1 0.55.26 → 0.55.27

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 (81) hide show
  1. package/bin/mcp-server.js +106 -10
  2. package/bin/mcp-server.js.map +14 -13
  3. package/dist/commonjs/lib/config.d.ts +2 -2
  4. package/dist/commonjs/lib/config.js +2 -2
  5. package/dist/commonjs/mcp-server/mcp-server.js +1 -1
  6. package/dist/commonjs/mcp-server/server.js +1 -1
  7. package/dist/commonjs/models/components/banwordsguardrail.d.ts +27 -0
  8. package/dist/commonjs/models/components/banwordsguardrail.d.ts.map +1 -1
  9. package/dist/commonjs/models/components/banwordsguardrail.js +21 -1
  10. package/dist/commonjs/models/components/banwordsguardrail.js.map +1 -1
  11. package/dist/commonjs/models/components/classifierguardrail.d.ts +27 -0
  12. package/dist/commonjs/models/components/classifierguardrail.d.ts.map +1 -1
  13. package/dist/commonjs/models/components/classifierguardrail.js +21 -1
  14. package/dist/commonjs/models/components/classifierguardrail.js.map +1 -1
  15. package/dist/commonjs/models/components/clusterdefaultrulesummary.d.ts +21 -0
  16. package/dist/commonjs/models/components/clusterdefaultrulesummary.d.ts.map +1 -1
  17. package/dist/commonjs/models/components/clusterdefaultrulesummary.js +16 -1
  18. package/dist/commonjs/models/components/clusterdefaultrulesummary.js.map +1 -1
  19. package/dist/commonjs/models/components/index.d.ts +1 -0
  20. package/dist/commonjs/models/components/index.d.ts.map +1 -1
  21. package/dist/commonjs/models/components/index.js +1 -0
  22. package/dist/commonjs/models/components/index.js.map +1 -1
  23. package/dist/commonjs/models/components/leakageguardrail.d.ts +27 -0
  24. package/dist/commonjs/models/components/leakageguardrail.d.ts.map +1 -1
  25. package/dist/commonjs/models/components/leakageguardrail.js +21 -1
  26. package/dist/commonjs/models/components/leakageguardrail.js.map +1 -1
  27. package/dist/commonjs/models/components/outputwindow.d.ts +28 -0
  28. package/dist/commonjs/models/components/outputwindow.d.ts.map +1 -0
  29. package/dist/commonjs/models/components/outputwindow.js +71 -0
  30. package/dist/commonjs/models/components/outputwindow.js.map +1 -0
  31. package/dist/commonjs/models/components/promptinjectionguardrail.d.ts +27 -0
  32. package/dist/commonjs/models/components/promptinjectionguardrail.d.ts.map +1 -1
  33. package/dist/commonjs/models/components/promptinjectionguardrail.js +21 -1
  34. package/dist/commonjs/models/components/promptinjectionguardrail.js.map +1 -1
  35. package/dist/commonjs/models/components/tooldefinition.d.ts +1 -1
  36. package/dist/esm/lib/config.d.ts +2 -2
  37. package/dist/esm/lib/config.js +2 -2
  38. package/dist/esm/mcp-server/mcp-server.js +1 -1
  39. package/dist/esm/mcp-server/server.js +1 -1
  40. package/dist/esm/models/components/banwordsguardrail.d.ts +27 -0
  41. package/dist/esm/models/components/banwordsguardrail.d.ts.map +1 -1
  42. package/dist/esm/models/components/banwordsguardrail.js +20 -0
  43. package/dist/esm/models/components/banwordsguardrail.js.map +1 -1
  44. package/dist/esm/models/components/classifierguardrail.d.ts +27 -0
  45. package/dist/esm/models/components/classifierguardrail.d.ts.map +1 -1
  46. package/dist/esm/models/components/classifierguardrail.js +20 -0
  47. package/dist/esm/models/components/classifierguardrail.js.map +1 -1
  48. package/dist/esm/models/components/clusterdefaultrulesummary.d.ts +21 -0
  49. package/dist/esm/models/components/clusterdefaultrulesummary.d.ts.map +1 -1
  50. package/dist/esm/models/components/clusterdefaultrulesummary.js +15 -0
  51. package/dist/esm/models/components/clusterdefaultrulesummary.js.map +1 -1
  52. package/dist/esm/models/components/index.d.ts +1 -0
  53. package/dist/esm/models/components/index.d.ts.map +1 -1
  54. package/dist/esm/models/components/index.js +1 -0
  55. package/dist/esm/models/components/index.js.map +1 -1
  56. package/dist/esm/models/components/leakageguardrail.d.ts +27 -0
  57. package/dist/esm/models/components/leakageguardrail.d.ts.map +1 -1
  58. package/dist/esm/models/components/leakageguardrail.js +20 -0
  59. package/dist/esm/models/components/leakageguardrail.js.map +1 -1
  60. package/dist/esm/models/components/outputwindow.d.ts +28 -0
  61. package/dist/esm/models/components/outputwindow.d.ts.map +1 -0
  62. package/dist/esm/models/components/outputwindow.js +33 -0
  63. package/dist/esm/models/components/outputwindow.js.map +1 -0
  64. package/dist/esm/models/components/promptinjectionguardrail.d.ts +27 -0
  65. package/dist/esm/models/components/promptinjectionguardrail.d.ts.map +1 -1
  66. package/dist/esm/models/components/promptinjectionguardrail.js +20 -0
  67. package/dist/esm/models/components/promptinjectionguardrail.js.map +1 -1
  68. package/dist/esm/models/components/tooldefinition.d.ts +1 -1
  69. package/jsr.json +1 -1
  70. package/package.json +1 -1
  71. package/src/lib/config.ts +2 -2
  72. package/src/mcp-server/mcp-server.ts +1 -1
  73. package/src/mcp-server/server.ts +1 -1
  74. package/src/models/components/banwordsguardrail.ts +44 -0
  75. package/src/models/components/classifierguardrail.ts +48 -0
  76. package/src/models/components/clusterdefaultrulesummary.ts +34 -0
  77. package/src/models/components/index.ts +1 -0
  78. package/src/models/components/leakageguardrail.ts +48 -0
  79. package/src/models/components/outputwindow.ts +71 -0
  80. package/src/models/components/promptinjectionguardrail.ts +49 -0
  81. package/src/models/components/tooldefinition.ts +1 -1
@@ -1,8 +1,21 @@
1
1
  import * as z from "zod/v3";
2
+ import { ClosedEnum } from "../../types/enums.js";
2
3
  import { Result as SafeParseResult } from "../../types/fp.js";
3
4
  import { SDKValidationError } from "../errors/sdkvalidationerror.js";
4
5
  import { GuardrailInputSource } from "./guardrailinputsource.js";
5
6
  import { LeakageConfig, LeakageConfig$Outbound } from "./leakageconfig.js";
7
+ import { OutputWindow, OutputWindow$Outbound } from "./outputwindow.js";
8
+ /**
9
+ * When this rule checks model output: final (default) checks the finished text once, after it has streamed; streaming holds streamed text in a window and releases only text this rule has cleared
10
+ */
11
+ export declare const LeakageGuardrailOutputTiming: {
12
+ readonly Final: "final";
13
+ readonly Streaming: "streaming";
14
+ };
15
+ /**
16
+ * When this rule checks model output: final (default) checks the finished text once, after it has streamed; streaming holds streamed text in a window and releases only text this rule has cleared
17
+ */
18
+ export type LeakageGuardrailOutputTiming = ClosedEnum<typeof LeakageGuardrailOutputTiming>;
6
19
  /**
7
20
  * Leakage guardrail
8
21
  */
@@ -16,6 +29,14 @@ export type LeakageGuardrail = {
16
29
  * Also apply this guardrail to model output, not just the request
17
30
  */
18
31
  checkOutput?: boolean | undefined;
32
+ /**
33
+ * When this rule checks model output: final (default) checks the finished text once, after it has streamed; streaming holds streamed text in a window and releases only text this rule has cleared
34
+ */
35
+ outputTiming?: LeakageGuardrailOutputTiming | undefined;
36
+ /**
37
+ * When a streaming output check runs: whichever of max_chars and max_ms fills first
38
+ */
39
+ outputWindow?: OutputWindow | undefined;
19
40
  /**
20
41
  * Request sources this guardrail checks before they reach the model. Omit to use the mode's default: every source for classifier; every source except system for ban_words, since instructions often name the terms they forbid; only what the user sends for prompt_injection and leakage, whose keyword patterns match ordinary instructions, replies and documents. An empty list checks no input, so the rule only checks output when check_output is set. Rules saved before this field existed were set to user messages only.
21
42
  */
@@ -26,12 +47,18 @@ export type LeakageGuardrail = {
26
47
  config?: LeakageConfig | undefined;
27
48
  };
28
49
  /** @internal */
50
+ export declare const LeakageGuardrailOutputTiming$inboundSchema: z.ZodNativeEnum<typeof LeakageGuardrailOutputTiming>;
51
+ /** @internal */
52
+ export declare const LeakageGuardrailOutputTiming$outboundSchema: z.ZodNativeEnum<typeof LeakageGuardrailOutputTiming>;
53
+ /** @internal */
29
54
  export declare const LeakageGuardrail$inboundSchema: z.ZodType<LeakageGuardrail, z.ZodTypeDef, unknown>;
30
55
  /** @internal */
31
56
  export type LeakageGuardrail$Outbound = {
32
57
  mode: "leakage";
33
58
  enabled: boolean;
34
59
  check_output?: boolean | undefined;
60
+ output_timing?: string | undefined;
61
+ output_window?: OutputWindow$Outbound | undefined;
35
62
  input_sources?: Array<string> | undefined;
36
63
  config?: LeakageConfig$Outbound | undefined;
37
64
  };
@@ -1 +1 @@
1
- {"version":3,"file":"leakageguardrail.d.ts","sourceRoot":"","sources":["../../../../src/models/components/leakageguardrail.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EACL,oBAAoB,EAGrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,aAAa,EAEb,sBAAsB,EAEvB,MAAM,oBAAoB,CAAC;AAE5B;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,SAAS,CAAC;IAChB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAClC;;OAEG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,oBAAoB,CAAC,GAAG,SAAS,CAAC;IACvD;;OAEG;IACH,MAAM,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;CACpC,CAAC;AAEF,gBAAgB;AAChB,eAAO,MAAM,8BAA8B,EAAE,CAAC,CAAC,OAAO,CACpD,gBAAgB,EAChB,CAAC,CAAC,UAAU,EACZ,OAAO,CAYP,CAAC;AACH,gBAAgB;AAChB,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,aAAa,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;IAC1C,MAAM,CAAC,EAAE,sBAAsB,GAAG,SAAS,CAAC;CAC7C,CAAC;AAEF,gBAAgB;AAChB,eAAO,MAAM,+BAA+B,EAAE,CAAC,CAAC,OAAO,CACrD,yBAAyB,EACzB,CAAC,CAAC,UAAU,EACZ,gBAAgB,CAYhB,CAAC;AAEH,wBAAgB,sBAAsB,CACpC,gBAAgB,EAAE,gBAAgB,GACjC,MAAM,CAIR;AACD,wBAAgB,wBAAwB,CACtC,UAAU,EAAE,MAAM,GACjB,eAAe,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,CAMvD"}
1
+ {"version":3,"file":"leakageguardrail.d.ts","sourceRoot":"","sources":["../../../../src/models/components/leakageguardrail.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EACL,oBAAoB,EAGrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,aAAa,EAEb,sBAAsB,EAEvB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,YAAY,EAEZ,qBAAqB,EAEtB,MAAM,mBAAmB,CAAC;AAE3B;;GAEG;AACH,eAAO,MAAM,4BAA4B;;;CAG/B,CAAC;AACX;;GAEG;AACH,MAAM,MAAM,4BAA4B,GAAG,UAAU,CACnD,OAAO,4BAA4B,CACpC,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,SAAS,CAAC;IAChB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAClC;;OAEG;IACH,YAAY,CAAC,EAAE,4BAA4B,GAAG,SAAS,CAAC;IACxD;;OAEG;IACH,YAAY,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IACxC;;OAEG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,oBAAoB,CAAC,GAAG,SAAS,CAAC;IACvD;;OAEG;IACH,MAAM,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;CACpC,CAAC;AAEF,gBAAgB;AAChB,eAAO,MAAM,0CAA0C,EAAE,CAAC,CAAC,aAAa,CACtE,OAAO,4BAA4B,CACS,CAAC;AAC/C,gBAAgB;AAChB,eAAO,MAAM,2CAA2C,EAAE,CAAC,CAAC,aAAa,CACvE,OAAO,4BAA4B,CACS,CAAC;AAE/C,gBAAgB;AAChB,eAAO,MAAM,8BAA8B,EAAE,CAAC,CAAC,OAAO,CACpD,gBAAgB,EAChB,CAAC,CAAC,UAAU,EACZ,OAAO,CAgBP,CAAC;AACH,gBAAgB;AAChB,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,aAAa,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;IAClD,aAAa,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;IAC1C,MAAM,CAAC,EAAE,sBAAsB,GAAG,SAAS,CAAC;CAC7C,CAAC;AAEF,gBAAgB;AAChB,eAAO,MAAM,+BAA+B,EAAE,CAAC,CAAC,OAAO,CACrD,yBAAyB,EACzB,CAAC,CAAC,UAAU,EACZ,gBAAgB,CAgBhB,CAAC;AAEH,wBAAgB,sBAAsB,CACpC,gBAAgB,EAAE,gBAAgB,GACjC,MAAM,CAIR;AACD,wBAAgB,wBAAwB,CACtC,UAAU,EAAE,MAAM,GACjB,eAAe,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,CAMvD"}
@@ -36,7 +36,7 @@ var __importStar = (this && this.__importStar) || (function () {
36
36
  };
37
37
  })();
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.LeakageGuardrail$outboundSchema = exports.LeakageGuardrail$inboundSchema = void 0;
39
+ exports.LeakageGuardrail$outboundSchema = exports.LeakageGuardrail$inboundSchema = exports.LeakageGuardrailOutputTiming$outboundSchema = exports.LeakageGuardrailOutputTiming$inboundSchema = exports.LeakageGuardrailOutputTiming = void 0;
40
40
  exports.leakageGuardrailToJSON = leakageGuardrailToJSON;
41
41
  exports.leakageGuardrailFromJSON = leakageGuardrailFromJSON;
42
42
  const z = __importStar(require("zod/v3"));
@@ -44,16 +44,32 @@ const primitives_js_1 = require("../../lib/primitives.js");
44
44
  const schemas_js_1 = require("../../lib/schemas.js");
45
45
  const guardrailinputsource_js_1 = require("./guardrailinputsource.js");
46
46
  const leakageconfig_js_1 = require("./leakageconfig.js");
47
+ const outputwindow_js_1 = require("./outputwindow.js");
48
+ /**
49
+ * When this rule checks model output: final (default) checks the finished text once, after it has streamed; streaming holds streamed text in a window and releases only text this rule has cleared
50
+ */
51
+ exports.LeakageGuardrailOutputTiming = {
52
+ Final: "final",
53
+ Streaming: "streaming",
54
+ };
55
+ /** @internal */
56
+ exports.LeakageGuardrailOutputTiming$inboundSchema = z.nativeEnum(exports.LeakageGuardrailOutputTiming);
57
+ /** @internal */
58
+ exports.LeakageGuardrailOutputTiming$outboundSchema = exports.LeakageGuardrailOutputTiming$inboundSchema;
47
59
  /** @internal */
48
60
  exports.LeakageGuardrail$inboundSchema = z.object({
49
61
  mode: z.literal("leakage"),
50
62
  enabled: z.boolean().default(true),
51
63
  check_output: z.boolean().optional(),
64
+ output_timing: exports.LeakageGuardrailOutputTiming$inboundSchema.optional(),
65
+ output_window: outputwindow_js_1.OutputWindow$inboundSchema.optional(),
52
66
  input_sources: z.array(guardrailinputsource_js_1.GuardrailInputSource$inboundSchema).optional(),
53
67
  config: leakageconfig_js_1.LeakageConfig$inboundSchema.optional(),
54
68
  }).transform((v) => {
55
69
  return (0, primitives_js_1.remap)(v, {
56
70
  "check_output": "checkOutput",
71
+ "output_timing": "outputTiming",
72
+ "output_window": "outputWindow",
57
73
  "input_sources": "inputSources",
58
74
  });
59
75
  });
@@ -62,11 +78,15 @@ exports.LeakageGuardrail$outboundSchema = z.object({
62
78
  mode: z.literal("leakage"),
63
79
  enabled: z.boolean().default(true),
64
80
  checkOutput: z.boolean().optional(),
81
+ outputTiming: exports.LeakageGuardrailOutputTiming$outboundSchema.optional(),
82
+ outputWindow: outputwindow_js_1.OutputWindow$outboundSchema.optional(),
65
83
  inputSources: z.array(guardrailinputsource_js_1.GuardrailInputSource$outboundSchema).optional(),
66
84
  config: leakageconfig_js_1.LeakageConfig$outboundSchema.optional(),
67
85
  }).transform((v) => {
68
86
  return (0, primitives_js_1.remap)(v, {
69
87
  checkOutput: "check_output",
88
+ outputTiming: "output_timing",
89
+ outputWindow: "output_window",
70
90
  inputSources: "input_sources",
71
91
  });
72
92
  });
@@ -1 +1 @@
1
- {"version":3,"file":"leakageguardrail.js","sourceRoot":"","sources":["../../../../src/models/components/leakageguardrail.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsFH,wDAMC;AACD,4DAQC;AAnGD,0CAA4B;AAC5B,2DAA0D;AAC1D,qDAAiD;AAGjD,uEAImC;AACnC,yDAK4B;AAyB5B,gBAAgB;AACH,QAAA,8BAA8B,GAIvC,CAAC,CAAC,MAAM,CAAC;IACX,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IAC1B,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAClC,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACpC,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,4DAAkC,CAAC,CAAC,QAAQ,EAAE;IACrE,MAAM,EAAE,8CAA2B,CAAC,QAAQ,EAAE;CAC/C,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;IACjB,OAAO,IAAA,qBAAM,EAAC,CAAC,EAAE;QACf,cAAc,EAAE,aAAa;QAC7B,eAAe,EAAE,cAAc;KAChC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAUH,gBAAgB;AACH,QAAA,+BAA+B,GAIxC,CAAC,CAAC,MAAM,CAAC;IACX,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IAC1B,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAClC,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACnC,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,6DAAmC,CAAC,CAAC,QAAQ,EAAE;IACrE,MAAM,EAAE,+CAA4B,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;IACjB,OAAO,IAAA,qBAAM,EAAC,CAAC,EAAE;QACf,WAAW,EAAE,cAAc;QAC3B,YAAY,EAAE,eAAe;KAC9B,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,SAAgB,sBAAsB,CACpC,gBAAkC;IAElC,OAAO,IAAI,CAAC,SAAS,CACnB,uCAA+B,CAAC,KAAK,CAAC,gBAAgB,CAAC,CACxD,CAAC;AACJ,CAAC;AACD,SAAgB,wBAAwB,CACtC,UAAkB;IAElB,OAAO,IAAA,sBAAS,EACd,UAAU,EACV,CAAC,CAAC,EAAE,EAAE,CAAC,sCAA8B,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAC1D,8CAA8C,CAC/C,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"leakageguardrail.js","sourceRoot":"","sources":["../../../../src/models/components/leakageguardrail.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsIH,wDAMC;AACD,4DAQC;AAnJD,0CAA4B;AAC5B,2DAA0D;AAC1D,qDAAiD;AAIjD,uEAImC;AACnC,yDAK4B;AAC5B,uDAK2B;AAE3B;;GAEG;AACU,QAAA,4BAA4B,GAAG;IAC1C,KAAK,EAAE,OAAO;IACd,SAAS,EAAE,WAAW;CACd,CAAC;AAuCX,gBAAgB;AACH,QAAA,0CAA0C,GAEnD,CAAC,CAAC,UAAU,CAAC,oCAA4B,CAAC,CAAC;AAC/C,gBAAgB;AACH,QAAA,2CAA2C,GAEpD,kDAA0C,CAAC;AAE/C,gBAAgB;AACH,QAAA,8BAA8B,GAIvC,CAAC,CAAC,MAAM,CAAC;IACX,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IAC1B,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAClC,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACpC,aAAa,EAAE,kDAA0C,CAAC,QAAQ,EAAE;IACpE,aAAa,EAAE,4CAA0B,CAAC,QAAQ,EAAE;IACpD,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,4DAAkC,CAAC,CAAC,QAAQ,EAAE;IACrE,MAAM,EAAE,8CAA2B,CAAC,QAAQ,EAAE;CAC/C,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;IACjB,OAAO,IAAA,qBAAM,EAAC,CAAC,EAAE;QACf,cAAc,EAAE,aAAa;QAC7B,eAAe,EAAE,cAAc;QAC/B,eAAe,EAAE,cAAc;QAC/B,eAAe,EAAE,cAAc;KAChC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAYH,gBAAgB;AACH,QAAA,+BAA+B,GAIxC,CAAC,CAAC,MAAM,CAAC;IACX,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IAC1B,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAClC,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACnC,YAAY,EAAE,mDAA2C,CAAC,QAAQ,EAAE;IACpE,YAAY,EAAE,6CAA2B,CAAC,QAAQ,EAAE;IACpD,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,6DAAmC,CAAC,CAAC,QAAQ,EAAE;IACrE,MAAM,EAAE,+CAA4B,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;IACjB,OAAO,IAAA,qBAAM,EAAC,CAAC,EAAE;QACf,WAAW,EAAE,cAAc;QAC3B,YAAY,EAAE,eAAe;QAC7B,YAAY,EAAE,eAAe;QAC7B,YAAY,EAAE,eAAe;KAC9B,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,SAAgB,sBAAsB,CACpC,gBAAkC;IAElC,OAAO,IAAI,CAAC,SAAS,CACnB,uCAA+B,CAAC,KAAK,CAAC,gBAAgB,CAAC,CACxD,CAAC;AACJ,CAAC;AACD,SAAgB,wBAAwB,CACtC,UAAkB;IAElB,OAAO,IAAA,sBAAS,EACd,UAAU,EACV,CAAC,CAAC,EAAE,EAAE,CAAC,sCAA8B,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAC1D,8CAA8C,CAC/C,CAAC;AACJ,CAAC"}
@@ -0,0 +1,28 @@
1
+ import * as z from "zod/v3";
2
+ import { Result as SafeParseResult } from "../../types/fp.js";
3
+ import { SDKValidationError } from "../errors/sdkvalidationerror.js";
4
+ /**
5
+ * When a streaming output check runs: whichever of max_chars and max_ms fills first
6
+ */
7
+ export type OutputWindow = {
8
+ /**
9
+ * Check once this many characters of unchecked text have accumulated
10
+ */
11
+ maxChars?: number | undefined;
12
+ /**
13
+ * Check once the oldest unchecked text has been held this many milliseconds
14
+ */
15
+ maxMs?: number | undefined;
16
+ };
17
+ /** @internal */
18
+ export declare const OutputWindow$inboundSchema: z.ZodType<OutputWindow, z.ZodTypeDef, unknown>;
19
+ /** @internal */
20
+ export type OutputWindow$Outbound = {
21
+ max_chars?: number | undefined;
22
+ max_ms?: number | undefined;
23
+ };
24
+ /** @internal */
25
+ export declare const OutputWindow$outboundSchema: z.ZodType<OutputWindow$Outbound, z.ZodTypeDef, OutputWindow>;
26
+ export declare function outputWindowToJSON(outputWindow: OutputWindow): string;
27
+ export declare function outputWindowFromJSON(jsonString: string): SafeParseResult<OutputWindow, SDKValidationError>;
28
+ //# sourceMappingURL=outputwindow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outputwindow.d.ts","sourceRoot":"","sources":["../../../../src/models/components/outputwindow.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAErE;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC5B,CAAC;AAEF,gBAAgB;AAChB,eAAO,MAAM,0BAA0B,EAAE,CAAC,CAAC,OAAO,CAChD,YAAY,EACZ,CAAC,CAAC,UAAU,EACZ,OAAO,CASP,CAAC;AACH,gBAAgB;AAChB,MAAM,MAAM,qBAAqB,GAAG;IAClC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B,CAAC;AAEF,gBAAgB;AAChB,eAAO,MAAM,2BAA2B,EAAE,CAAC,CAAC,OAAO,CACjD,qBAAqB,EACrB,CAAC,CAAC,UAAU,EACZ,YAAY,CASZ,CAAC;AAEH,wBAAgB,kBAAkB,CAAC,YAAY,EAAE,YAAY,GAAG,MAAM,CAErE;AACD,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,MAAM,GACjB,eAAe,CAAC,YAAY,EAAE,kBAAkB,CAAC,CAMnD"}
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ /*
3
+ * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || (function () {
22
+ var ownKeys = function(o) {
23
+ ownKeys = Object.getOwnPropertyNames || function (o) {
24
+ var ar = [];
25
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
26
+ return ar;
27
+ };
28
+ return ownKeys(o);
29
+ };
30
+ return function (mod) {
31
+ if (mod && mod.__esModule) return mod;
32
+ var result = {};
33
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
34
+ __setModuleDefault(result, mod);
35
+ return result;
36
+ };
37
+ })();
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.OutputWindow$outboundSchema = exports.OutputWindow$inboundSchema = void 0;
40
+ exports.outputWindowToJSON = outputWindowToJSON;
41
+ exports.outputWindowFromJSON = outputWindowFromJSON;
42
+ const z = __importStar(require("zod/v3"));
43
+ const primitives_js_1 = require("../../lib/primitives.js");
44
+ const schemas_js_1 = require("../../lib/schemas.js");
45
+ /** @internal */
46
+ exports.OutputWindow$inboundSchema = z.object({
47
+ max_chars: z.number().int().optional(),
48
+ max_ms: z.number().int().optional(),
49
+ }).transform((v) => {
50
+ return (0, primitives_js_1.remap)(v, {
51
+ "max_chars": "maxChars",
52
+ "max_ms": "maxMs",
53
+ });
54
+ });
55
+ /** @internal */
56
+ exports.OutputWindow$outboundSchema = z.object({
57
+ maxChars: z.number().int().optional(),
58
+ maxMs: z.number().int().optional(),
59
+ }).transform((v) => {
60
+ return (0, primitives_js_1.remap)(v, {
61
+ maxChars: "max_chars",
62
+ maxMs: "max_ms",
63
+ });
64
+ });
65
+ function outputWindowToJSON(outputWindow) {
66
+ return JSON.stringify(exports.OutputWindow$outboundSchema.parse(outputWindow));
67
+ }
68
+ function outputWindowFromJSON(jsonString) {
69
+ return (0, schemas_js_1.safeParse)(jsonString, (x) => exports.OutputWindow$inboundSchema.parse(JSON.parse(x)), `Failed to parse 'OutputWindow' from JSON`);
70
+ }
71
+ //# sourceMappingURL=outputwindow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outputwindow.js","sourceRoot":"","sources":["../../../../src/models/components/outputwindow.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyDH,gDAEC;AACD,oDAQC;AAlED,0CAA4B;AAC5B,2DAA0D;AAC1D,qDAAiD;AAkBjD,gBAAgB;AACH,QAAA,0BAA0B,GAInC,CAAC,CAAC,MAAM,CAAC;IACX,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACtC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;CACpC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;IACjB,OAAO,IAAA,qBAAM,EAAC,CAAC,EAAE;QACf,WAAW,EAAE,UAAU;QACvB,QAAQ,EAAE,OAAO;KAClB,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAOH,gBAAgB;AACH,QAAA,2BAA2B,GAIpC,CAAC,CAAC,MAAM,CAAC;IACX,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACrC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;CACnC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;IACjB,OAAO,IAAA,qBAAM,EAAC,CAAC,EAAE;QACf,QAAQ,EAAE,WAAW;QACrB,KAAK,EAAE,QAAQ;KAChB,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,SAAgB,kBAAkB,CAAC,YAA0B;IAC3D,OAAO,IAAI,CAAC,SAAS,CAAC,mCAA2B,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC;AACzE,CAAC;AACD,SAAgB,oBAAoB,CAClC,UAAkB;IAElB,OAAO,IAAA,sBAAS,EACd,UAAU,EACV,CAAC,CAAC,EAAE,EAAE,CAAC,kCAA0B,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EACtD,0CAA0C,CAC3C,CAAC;AACJ,CAAC"}
@@ -1,8 +1,21 @@
1
1
  import * as z from "zod/v3";
2
+ import { ClosedEnum } from "../../types/enums.js";
2
3
  import { Result as SafeParseResult } from "../../types/fp.js";
3
4
  import { SDKValidationError } from "../errors/sdkvalidationerror.js";
4
5
  import { GuardrailInputSource } from "./guardrailinputsource.js";
6
+ import { OutputWindow, OutputWindow$Outbound } from "./outputwindow.js";
5
7
  import { PromptInjectionConfig, PromptInjectionConfig$Outbound } from "./promptinjectionconfig.js";
8
+ /**
9
+ * When this rule checks model output: final (default) checks the finished text once, after it has streamed; streaming holds streamed text in a window and releases only text this rule has cleared
10
+ */
11
+ export declare const PromptInjectionGuardrailOutputTiming: {
12
+ readonly Final: "final";
13
+ readonly Streaming: "streaming";
14
+ };
15
+ /**
16
+ * When this rule checks model output: final (default) checks the finished text once, after it has streamed; streaming holds streamed text in a window and releases only text this rule has cleared
17
+ */
18
+ export type PromptInjectionGuardrailOutputTiming = ClosedEnum<typeof PromptInjectionGuardrailOutputTiming>;
6
19
  /**
7
20
  * Prompt injection guardrail
8
21
  */
@@ -16,6 +29,14 @@ export type PromptInjectionGuardrail = {
16
29
  * Also apply this guardrail to model output, not just the request
17
30
  */
18
31
  checkOutput?: boolean | undefined;
32
+ /**
33
+ * When this rule checks model output: final (default) checks the finished text once, after it has streamed; streaming holds streamed text in a window and releases only text this rule has cleared
34
+ */
35
+ outputTiming?: PromptInjectionGuardrailOutputTiming | undefined;
36
+ /**
37
+ * When a streaming output check runs: whichever of max_chars and max_ms fills first
38
+ */
39
+ outputWindow?: OutputWindow | undefined;
19
40
  /**
20
41
  * Request sources this guardrail checks before they reach the model. Omit to use the mode's default: every source for classifier; every source except system for ban_words, since instructions often name the terms they forbid; only what the user sends for prompt_injection and leakage, whose keyword patterns match ordinary instructions, replies and documents. An empty list checks no input, so the rule only checks output when check_output is set. Rules saved before this field existed were set to user messages only.
21
42
  */
@@ -26,12 +47,18 @@ export type PromptInjectionGuardrail = {
26
47
  config?: PromptInjectionConfig | undefined;
27
48
  };
28
49
  /** @internal */
50
+ export declare const PromptInjectionGuardrailOutputTiming$inboundSchema: z.ZodNativeEnum<typeof PromptInjectionGuardrailOutputTiming>;
51
+ /** @internal */
52
+ export declare const PromptInjectionGuardrailOutputTiming$outboundSchema: z.ZodNativeEnum<typeof PromptInjectionGuardrailOutputTiming>;
53
+ /** @internal */
29
54
  export declare const PromptInjectionGuardrail$inboundSchema: z.ZodType<PromptInjectionGuardrail, z.ZodTypeDef, unknown>;
30
55
  /** @internal */
31
56
  export type PromptInjectionGuardrail$Outbound = {
32
57
  mode: "prompt_injection";
33
58
  enabled: boolean;
34
59
  check_output?: boolean | undefined;
60
+ output_timing?: string | undefined;
61
+ output_window?: OutputWindow$Outbound | undefined;
35
62
  input_sources?: Array<string> | undefined;
36
63
  config?: PromptInjectionConfig$Outbound | undefined;
37
64
  };
@@ -1 +1 @@
1
- {"version":3,"file":"promptinjectionguardrail.d.ts","sourceRoot":"","sources":["../../../../src/models/components/promptinjectionguardrail.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EACL,oBAAoB,EAGrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,qBAAqB,EAErB,8BAA8B,EAE/B,MAAM,4BAA4B,CAAC;AAEpC;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,kBAAkB,CAAC;IACzB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAClC;;OAEG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,oBAAoB,CAAC,GAAG,SAAS,CAAC;IACvD;;OAEG;IACH,MAAM,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;CAC5C,CAAC;AAEF,gBAAgB;AAChB,eAAO,MAAM,sCAAsC,EAAE,CAAC,CAAC,OAAO,CAC5D,wBAAwB,EACxB,CAAC,CAAC,UAAU,EACZ,OAAO,CAYP,CAAC;AACH,gBAAgB;AAChB,MAAM,MAAM,iCAAiC,GAAG;IAC9C,IAAI,EAAE,kBAAkB,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,aAAa,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;IAC1C,MAAM,CAAC,EAAE,8BAA8B,GAAG,SAAS,CAAC;CACrD,CAAC;AAEF,gBAAgB;AAChB,eAAO,MAAM,uCAAuC,EAAE,CAAC,CAAC,OAAO,CAC7D,iCAAiC,EACjC,CAAC,CAAC,UAAU,EACZ,wBAAwB,CAYxB,CAAC;AAEH,wBAAgB,8BAA8B,CAC5C,wBAAwB,EAAE,wBAAwB,GACjD,MAAM,CAIR;AACD,wBAAgB,gCAAgC,CAC9C,UAAU,EAAE,MAAM,GACjB,eAAe,CAAC,wBAAwB,EAAE,kBAAkB,CAAC,CAM/D"}
1
+ {"version":3,"file":"promptinjectionguardrail.d.ts","sourceRoot":"","sources":["../../../../src/models/components/promptinjectionguardrail.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EACL,oBAAoB,EAGrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,YAAY,EAEZ,qBAAqB,EAEtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,qBAAqB,EAErB,8BAA8B,EAE/B,MAAM,4BAA4B,CAAC;AAEpC;;GAEG;AACH,eAAO,MAAM,oCAAoC;;;CAGvC,CAAC;AACX;;GAEG;AACH,MAAM,MAAM,oCAAoC,GAAG,UAAU,CAC3D,OAAO,oCAAoC,CAC5C,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,kBAAkB,CAAC;IACzB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAClC;;OAEG;IACH,YAAY,CAAC,EAAE,oCAAoC,GAAG,SAAS,CAAC;IAChE;;OAEG;IACH,YAAY,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IACxC;;OAEG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,oBAAoB,CAAC,GAAG,SAAS,CAAC;IACvD;;OAEG;IACH,MAAM,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;CAC5C,CAAC;AAEF,gBAAgB;AAChB,eAAO,MAAM,kDAAkD,EAC7D,CAAC,CAAC,aAAa,CAAC,OAAO,oCAAoC,CAE1D,CAAC;AACJ,gBAAgB;AAChB,eAAO,MAAM,mDAAmD,EAC9D,CAAC,CAAC,aAAa,CAAC,OAAO,oCAAoC,CACP,CAAC;AAEvD,gBAAgB;AAChB,eAAO,MAAM,sCAAsC,EAAE,CAAC,CAAC,OAAO,CAC5D,wBAAwB,EACxB,CAAC,CAAC,UAAU,EACZ,OAAO,CAgBP,CAAC;AACH,gBAAgB;AAChB,MAAM,MAAM,iCAAiC,GAAG;IAC9C,IAAI,EAAE,kBAAkB,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,aAAa,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;IAClD,aAAa,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;IAC1C,MAAM,CAAC,EAAE,8BAA8B,GAAG,SAAS,CAAC;CACrD,CAAC;AAEF,gBAAgB;AAChB,eAAO,MAAM,uCAAuC,EAAE,CAAC,CAAC,OAAO,CAC7D,iCAAiC,EACjC,CAAC,CAAC,UAAU,EACZ,wBAAwB,CAgBxB,CAAC;AAEH,wBAAgB,8BAA8B,CAC5C,wBAAwB,EAAE,wBAAwB,GACjD,MAAM,CAIR;AACD,wBAAgB,gCAAgC,CAC9C,UAAU,EAAE,MAAM,GACjB,eAAe,CAAC,wBAAwB,EAAE,kBAAkB,CAAC,CAM/D"}
@@ -36,24 +36,40 @@ var __importStar = (this && this.__importStar) || (function () {
36
36
  };
37
37
  })();
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.PromptInjectionGuardrail$outboundSchema = exports.PromptInjectionGuardrail$inboundSchema = void 0;
39
+ exports.PromptInjectionGuardrail$outboundSchema = exports.PromptInjectionGuardrail$inboundSchema = exports.PromptInjectionGuardrailOutputTiming$outboundSchema = exports.PromptInjectionGuardrailOutputTiming$inboundSchema = exports.PromptInjectionGuardrailOutputTiming = void 0;
40
40
  exports.promptInjectionGuardrailToJSON = promptInjectionGuardrailToJSON;
41
41
  exports.promptInjectionGuardrailFromJSON = promptInjectionGuardrailFromJSON;
42
42
  const z = __importStar(require("zod/v3"));
43
43
  const primitives_js_1 = require("../../lib/primitives.js");
44
44
  const schemas_js_1 = require("../../lib/schemas.js");
45
45
  const guardrailinputsource_js_1 = require("./guardrailinputsource.js");
46
+ const outputwindow_js_1 = require("./outputwindow.js");
46
47
  const promptinjectionconfig_js_1 = require("./promptinjectionconfig.js");
48
+ /**
49
+ * When this rule checks model output: final (default) checks the finished text once, after it has streamed; streaming holds streamed text in a window and releases only text this rule has cleared
50
+ */
51
+ exports.PromptInjectionGuardrailOutputTiming = {
52
+ Final: "final",
53
+ Streaming: "streaming",
54
+ };
55
+ /** @internal */
56
+ exports.PromptInjectionGuardrailOutputTiming$inboundSchema = z.nativeEnum(exports.PromptInjectionGuardrailOutputTiming);
57
+ /** @internal */
58
+ exports.PromptInjectionGuardrailOutputTiming$outboundSchema = exports.PromptInjectionGuardrailOutputTiming$inboundSchema;
47
59
  /** @internal */
48
60
  exports.PromptInjectionGuardrail$inboundSchema = z.object({
49
61
  mode: z.literal("prompt_injection"),
50
62
  enabled: z.boolean().default(true),
51
63
  check_output: z.boolean().optional(),
64
+ output_timing: exports.PromptInjectionGuardrailOutputTiming$inboundSchema.optional(),
65
+ output_window: outputwindow_js_1.OutputWindow$inboundSchema.optional(),
52
66
  input_sources: z.array(guardrailinputsource_js_1.GuardrailInputSource$inboundSchema).optional(),
53
67
  config: promptinjectionconfig_js_1.PromptInjectionConfig$inboundSchema.optional(),
54
68
  }).transform((v) => {
55
69
  return (0, primitives_js_1.remap)(v, {
56
70
  "check_output": "checkOutput",
71
+ "output_timing": "outputTiming",
72
+ "output_window": "outputWindow",
57
73
  "input_sources": "inputSources",
58
74
  });
59
75
  });
@@ -62,11 +78,15 @@ exports.PromptInjectionGuardrail$outboundSchema = z.object({
62
78
  mode: z.literal("prompt_injection"),
63
79
  enabled: z.boolean().default(true),
64
80
  checkOutput: z.boolean().optional(),
81
+ outputTiming: exports.PromptInjectionGuardrailOutputTiming$outboundSchema.optional(),
82
+ outputWindow: outputwindow_js_1.OutputWindow$outboundSchema.optional(),
65
83
  inputSources: z.array(guardrailinputsource_js_1.GuardrailInputSource$outboundSchema).optional(),
66
84
  config: promptinjectionconfig_js_1.PromptInjectionConfig$outboundSchema.optional(),
67
85
  }).transform((v) => {
68
86
  return (0, primitives_js_1.remap)(v, {
69
87
  checkOutput: "check_output",
88
+ outputTiming: "output_timing",
89
+ outputWindow: "output_window",
70
90
  inputSources: "input_sources",
71
91
  });
72
92
  });
@@ -1 +1 @@
1
- {"version":3,"file":"promptinjectionguardrail.js","sourceRoot":"","sources":["../../../../src/models/components/promptinjectionguardrail.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsFH,wEAMC;AACD,4EAQC;AAnGD,0CAA4B;AAC5B,2DAA0D;AAC1D,qDAAiD;AAGjD,uEAImC;AACnC,yEAKoC;AAyBpC,gBAAgB;AACH,QAAA,sCAAsC,GAI/C,CAAC,CAAC,MAAM,CAAC;IACX,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC;IACnC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAClC,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACpC,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,4DAAkC,CAAC,CAAC,QAAQ,EAAE;IACrE,MAAM,EAAE,8DAAmC,CAAC,QAAQ,EAAE;CACvD,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;IACjB,OAAO,IAAA,qBAAM,EAAC,CAAC,EAAE;QACf,cAAc,EAAE,aAAa;QAC7B,eAAe,EAAE,cAAc;KAChC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAUH,gBAAgB;AACH,QAAA,uCAAuC,GAIhD,CAAC,CAAC,MAAM,CAAC;IACX,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC;IACnC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAClC,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACnC,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,6DAAmC,CAAC,CAAC,QAAQ,EAAE;IACrE,MAAM,EAAE,+DAAoC,CAAC,QAAQ,EAAE;CACxD,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;IACjB,OAAO,IAAA,qBAAM,EAAC,CAAC,EAAE;QACf,WAAW,EAAE,cAAc;QAC3B,YAAY,EAAE,eAAe;KAC9B,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,SAAgB,8BAA8B,CAC5C,wBAAkD;IAElD,OAAO,IAAI,CAAC,SAAS,CACnB,+CAAuC,CAAC,KAAK,CAAC,wBAAwB,CAAC,CACxE,CAAC;AACJ,CAAC;AACD,SAAgB,gCAAgC,CAC9C,UAAkB;IAElB,OAAO,IAAA,sBAAS,EACd,UAAU,EACV,CAAC,CAAC,EAAE,EAAE,CAAC,8CAAsC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAClE,sDAAsD,CACvD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"promptinjectionguardrail.js","sourceRoot":"","sources":["../../../../src/models/components/promptinjectionguardrail.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuIH,wEAMC;AACD,4EAQC;AApJD,0CAA4B;AAC5B,2DAA0D;AAC1D,qDAAiD;AAIjD,uEAImC;AACnC,uDAK2B;AAC3B,yEAKoC;AAEpC;;GAEG;AACU,QAAA,oCAAoC,GAAG;IAClD,KAAK,EAAE,OAAO;IACd,SAAS,EAAE,WAAW;CACd,CAAC;AAuCX,gBAAgB;AACH,QAAA,kDAAkD,GACE,CAAC,CAAC,UAAU,CACzE,4CAAoC,CACrC,CAAC;AACJ,gBAAgB;AACH,QAAA,mDAAmD,GAE5D,0DAAkD,CAAC;AAEvD,gBAAgB;AACH,QAAA,sCAAsC,GAI/C,CAAC,CAAC,MAAM,CAAC;IACX,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC;IACnC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAClC,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACpC,aAAa,EAAE,0DAAkD,CAAC,QAAQ,EAAE;IAC5E,aAAa,EAAE,4CAA0B,CAAC,QAAQ,EAAE;IACpD,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,4DAAkC,CAAC,CAAC,QAAQ,EAAE;IACrE,MAAM,EAAE,8DAAmC,CAAC,QAAQ,EAAE;CACvD,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;IACjB,OAAO,IAAA,qBAAM,EAAC,CAAC,EAAE;QACf,cAAc,EAAE,aAAa;QAC7B,eAAe,EAAE,cAAc;QAC/B,eAAe,EAAE,cAAc;QAC/B,eAAe,EAAE,cAAc;KAChC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAYH,gBAAgB;AACH,QAAA,uCAAuC,GAIhD,CAAC,CAAC,MAAM,CAAC;IACX,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC;IACnC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAClC,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACnC,YAAY,EAAE,2DAAmD,CAAC,QAAQ,EAAE;IAC5E,YAAY,EAAE,6CAA2B,CAAC,QAAQ,EAAE;IACpD,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,6DAAmC,CAAC,CAAC,QAAQ,EAAE;IACrE,MAAM,EAAE,+DAAoC,CAAC,QAAQ,EAAE;CACxD,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;IACjB,OAAO,IAAA,qBAAM,EAAC,CAAC,EAAE;QACf,WAAW,EAAE,cAAc;QAC3B,YAAY,EAAE,eAAe;QAC7B,YAAY,EAAE,eAAe;QAC7B,YAAY,EAAE,eAAe;KAC9B,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,SAAgB,8BAA8B,CAC5C,wBAAkD;IAElD,OAAO,IAAI,CAAC,SAAS,CACnB,+CAAuC,CAAC,KAAK,CAAC,wBAAwB,CAAC,CACxE,CAAC;AACJ,CAAC;AACD,SAAgB,gCAAgC,CAC9C,UAAkB;IAElB,OAAO,IAAA,sBAAS,EACd,UAAU,EACV,CAAC,CAAC,EAAE,EAAE,CAAC,8CAAsC,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAClE,sDAAsD,CACvD,CAAC;AACJ,CAAC"}
@@ -69,7 +69,7 @@ export declare const ToolDefinition9Type: {
69
69
  };
70
70
  export type ToolDefinition9Type = ClosedEnum<typeof ToolDefinition9Type>;
71
71
  /**
72
- * Another saved agent of the same team, called as a tool. mkllm-gateway starts a run of that agent and returns its answer.
72
+ * Another saved agent of the same team, called as a tool. The Responses API starts a run of that agent and returns its answer.
73
73
  */
74
74
  export type Nine = {
75
75
  type: ToolDefinition9Type;
@@ -31,8 +31,8 @@ export declare function serverURLFromOptions(options: SDKOptions): URL | null;
31
31
  export declare const SDK_METADATA: {
32
32
  readonly language: "typescript";
33
33
  readonly openapiDocVersion: "1.1.0";
34
- readonly sdkVersion: "0.55.26";
34
+ readonly sdkVersion: "0.55.27";
35
35
  readonly genVersion: "2.950.2";
36
- readonly userAgent: "speakeasy-sdk/typescript 0.55.26 2.950.2 1.1.0 @meetkai/mka1";
36
+ readonly userAgent: "speakeasy-sdk/typescript 0.55.27 2.950.2 1.1.0 @meetkai/mka1";
37
37
  };
38
38
  //# sourceMappingURL=config.d.ts.map
@@ -31,8 +31,8 @@ export function serverURLFromOptions(options) {
31
31
  export const SDK_METADATA = {
32
32
  language: "typescript",
33
33
  openapiDocVersion: "1.1.0",
34
- sdkVersion: "0.55.26",
34
+ sdkVersion: "0.55.27",
35
35
  genVersion: "2.950.2",
36
- userAgent: "speakeasy-sdk/typescript 0.55.26 2.950.2 1.1.0 @meetkai/mka1",
36
+ userAgent: "speakeasy-sdk/typescript 0.55.27 2.950.2 1.1.0 @meetkai/mka1",
37
37
  };
38
38
  //# sourceMappingURL=config.js.map
@@ -16,7 +16,7 @@ const routes = buildRouteMap({
16
16
  export const app = buildApplication(routes, {
17
17
  name: "mcp",
18
18
  versionInfo: {
19
- currentVersion: "0.55.26",
19
+ currentVersion: "0.55.27",
20
20
  },
21
21
  });
22
22
  run(app, process.argv.slice(2), buildContext(process));
@@ -501,7 +501,7 @@ import { tool$usageSandbox } from "./tools/usageSandbox.js";
501
501
  export function createMCPServer(deps) {
502
502
  const server = new McpServer({
503
503
  name: "SDK",
504
- version: "0.55.26",
504
+ version: "0.55.27",
505
505
  });
506
506
  const client = new SDKCore({
507
507
  bearerAuth: deps.bearerAuth,
@@ -1,8 +1,21 @@
1
1
  import * as z from "zod/v3";
2
+ import { ClosedEnum } from "../../types/enums.js";
2
3
  import { Result as SafeParseResult } from "../../types/fp.js";
3
4
  import { SDKValidationError } from "../errors/sdkvalidationerror.js";
4
5
  import { BanWordsConfig, BanWordsConfig$Outbound } from "./banwordsconfig.js";
5
6
  import { GuardrailInputSource } from "./guardrailinputsource.js";
7
+ import { OutputWindow, OutputWindow$Outbound } from "./outputwindow.js";
8
+ /**
9
+ * When this rule checks model output: final (default) checks the finished text once, after it has streamed; streaming holds streamed text in a window and releases only text this rule has cleared
10
+ */
11
+ export declare const OutputTiming: {
12
+ readonly Final: "final";
13
+ readonly Streaming: "streaming";
14
+ };
15
+ /**
16
+ * When this rule checks model output: final (default) checks the finished text once, after it has streamed; streaming holds streamed text in a window and releases only text this rule has cleared
17
+ */
18
+ export type OutputTiming = ClosedEnum<typeof OutputTiming>;
6
19
  /**
7
20
  * Banned words guardrail
8
21
  */
@@ -16,6 +29,14 @@ export type BanWordsGuardrail = {
16
29
  * Also apply this guardrail to model output, not just the request
17
30
  */
18
31
  checkOutput?: boolean | undefined;
32
+ /**
33
+ * When this rule checks model output: final (default) checks the finished text once, after it has streamed; streaming holds streamed text in a window and releases only text this rule has cleared
34
+ */
35
+ outputTiming?: OutputTiming | undefined;
36
+ /**
37
+ * When a streaming output check runs: whichever of max_chars and max_ms fills first
38
+ */
39
+ outputWindow?: OutputWindow | undefined;
19
40
  /**
20
41
  * Request sources this guardrail checks before they reach the model. Omit to use the mode's default: every source for classifier; every source except system for ban_words, since instructions often name the terms they forbid; only what the user sends for prompt_injection and leakage, whose keyword patterns match ordinary instructions, replies and documents. An empty list checks no input, so the rule only checks output when check_output is set. Rules saved before this field existed were set to user messages only.
21
42
  */
@@ -26,12 +47,18 @@ export type BanWordsGuardrail = {
26
47
  config?: BanWordsConfig | undefined;
27
48
  };
28
49
  /** @internal */
50
+ export declare const OutputTiming$inboundSchema: z.ZodNativeEnum<typeof OutputTiming>;
51
+ /** @internal */
52
+ export declare const OutputTiming$outboundSchema: z.ZodNativeEnum<typeof OutputTiming>;
53
+ /** @internal */
29
54
  export declare const BanWordsGuardrail$inboundSchema: z.ZodType<BanWordsGuardrail, z.ZodTypeDef, unknown>;
30
55
  /** @internal */
31
56
  export type BanWordsGuardrail$Outbound = {
32
57
  mode: "ban_words";
33
58
  enabled: boolean;
34
59
  check_output?: boolean | undefined;
60
+ output_timing?: string | undefined;
61
+ output_window?: OutputWindow$Outbound | undefined;
35
62
  input_sources?: Array<string> | undefined;
36
63
  config?: BanWordsConfig$Outbound | undefined;
37
64
  };
@@ -1 +1 @@
1
- {"version":3,"file":"banwordsguardrail.d.ts","sourceRoot":"","sources":["../../../../src/models/components/banwordsguardrail.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EACL,cAAc,EAEd,uBAAuB,EAExB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,oBAAoB,EAGrB,MAAM,2BAA2B,CAAC;AAEnC;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,WAAW,CAAC;IAClB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAClC;;OAEG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,oBAAoB,CAAC,GAAG,SAAS,CAAC;IACvD;;OAEG;IACH,MAAM,CAAC,EAAE,cAAc,GAAG,SAAS,CAAC;CACrC,CAAC;AAEF,gBAAgB;AAChB,eAAO,MAAM,+BAA+B,EAAE,CAAC,CAAC,OAAO,CACrD,iBAAiB,EACjB,CAAC,CAAC,UAAU,EACZ,OAAO,CAYP,CAAC;AACH,gBAAgB;AAChB,MAAM,MAAM,0BAA0B,GAAG;IACvC,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,aAAa,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;IAC1C,MAAM,CAAC,EAAE,uBAAuB,GAAG,SAAS,CAAC;CAC9C,CAAC;AAEF,gBAAgB;AAChB,eAAO,MAAM,gCAAgC,EAAE,CAAC,CAAC,OAAO,CACtD,0BAA0B,EAC1B,CAAC,CAAC,UAAU,EACZ,iBAAiB,CAYjB,CAAC;AAEH,wBAAgB,uBAAuB,CACrC,iBAAiB,EAAE,iBAAiB,GACnC,MAAM,CAIR;AACD,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,MAAM,GACjB,eAAe,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,CAMxD"}
1
+ {"version":3,"file":"banwordsguardrail.d.ts","sourceRoot":"","sources":["../../../../src/models/components/banwordsguardrail.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAG5B,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EACL,cAAc,EAEd,uBAAuB,EAExB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,oBAAoB,EAGrB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,YAAY,EAEZ,qBAAqB,EAEtB,MAAM,mBAAmB,CAAC;AAE3B;;GAEG;AACH,eAAO,MAAM,YAAY;;;CAGf,CAAC;AACX;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;AAE3D;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,EAAE,WAAW,CAAC;IAClB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B;;OAEG;IACH,WAAW,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAClC;;OAEG;IACH,YAAY,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IACxC;;OAEG;IACH,YAAY,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IACxC;;OAEG;IACH,YAAY,CAAC,EAAE,KAAK,CAAC,oBAAoB,CAAC,GAAG,SAAS,CAAC;IACvD;;OAEG;IACH,MAAM,CAAC,EAAE,cAAc,GAAG,SAAS,CAAC;CACrC,CAAC;AAEF,gBAAgB;AAChB,eAAO,MAAM,0BAA0B,EAAE,CAAC,CAAC,aAAa,CAAC,OAAO,YAAY,CAChD,CAAC;AAC7B,gBAAgB;AAChB,eAAO,MAAM,2BAA2B,EAAE,CAAC,CAAC,aAAa,CAAC,OAAO,YAAY,CACjD,CAAC;AAE7B,gBAAgB;AAChB,eAAO,MAAM,+BAA+B,EAAE,CAAC,CAAC,OAAO,CACrD,iBAAiB,EACjB,CAAC,CAAC,UAAU,EACZ,OAAO,CAgBP,CAAC;AACH,gBAAgB;AAChB,MAAM,MAAM,0BAA0B,GAAG;IACvC,IAAI,EAAE,WAAW,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,aAAa,CAAC,EAAE,qBAAqB,GAAG,SAAS,CAAC;IAClD,aAAa,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;IAC1C,MAAM,CAAC,EAAE,uBAAuB,GAAG,SAAS,CAAC;CAC9C,CAAC;AAEF,gBAAgB;AAChB,eAAO,MAAM,gCAAgC,EAAE,CAAC,CAAC,OAAO,CACtD,0BAA0B,EAC1B,CAAC,CAAC,UAAU,EACZ,iBAAiB,CAgBjB,CAAC;AAEH,wBAAgB,uBAAuB,CACrC,iBAAiB,EAAE,iBAAiB,GACnC,MAAM,CAIR;AACD,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,MAAM,GACjB,eAAe,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,CAMxD"}
@@ -6,16 +6,32 @@ import { remap as remap$ } from "../../lib/primitives.js";
6
6
  import { safeParse } from "../../lib/schemas.js";
7
7
  import { BanWordsConfig$inboundSchema, BanWordsConfig$outboundSchema, } from "./banwordsconfig.js";
8
8
  import { GuardrailInputSource$inboundSchema, GuardrailInputSource$outboundSchema, } from "./guardrailinputsource.js";
9
+ import { OutputWindow$inboundSchema, OutputWindow$outboundSchema, } from "./outputwindow.js";
10
+ /**
11
+ * When this rule checks model output: final (default) checks the finished text once, after it has streamed; streaming holds streamed text in a window and releases only text this rule has cleared
12
+ */
13
+ export const OutputTiming = {
14
+ Final: "final",
15
+ Streaming: "streaming",
16
+ };
17
+ /** @internal */
18
+ export const OutputTiming$inboundSchema = z.nativeEnum(OutputTiming);
19
+ /** @internal */
20
+ export const OutputTiming$outboundSchema = OutputTiming$inboundSchema;
9
21
  /** @internal */
10
22
  export const BanWordsGuardrail$inboundSchema = z.object({
11
23
  mode: z.literal("ban_words"),
12
24
  enabled: z.boolean().default(true),
13
25
  check_output: z.boolean().optional(),
26
+ output_timing: OutputTiming$inboundSchema.optional(),
27
+ output_window: OutputWindow$inboundSchema.optional(),
14
28
  input_sources: z.array(GuardrailInputSource$inboundSchema).optional(),
15
29
  config: BanWordsConfig$inboundSchema.optional(),
16
30
  }).transform((v) => {
17
31
  return remap$(v, {
18
32
  "check_output": "checkOutput",
33
+ "output_timing": "outputTiming",
34
+ "output_window": "outputWindow",
19
35
  "input_sources": "inputSources",
20
36
  });
21
37
  });
@@ -24,11 +40,15 @@ export const BanWordsGuardrail$outboundSchema = z.object({
24
40
  mode: z.literal("ban_words"),
25
41
  enabled: z.boolean().default(true),
26
42
  checkOutput: z.boolean().optional(),
43
+ outputTiming: OutputTiming$outboundSchema.optional(),
44
+ outputWindow: OutputWindow$outboundSchema.optional(),
27
45
  inputSources: z.array(GuardrailInputSource$outboundSchema).optional(),
28
46
  config: BanWordsConfig$outboundSchema.optional(),
29
47
  }).transform((v) => {
30
48
  return remap$(v, {
31
49
  checkOutput: "check_output",
50
+ outputTiming: "output_timing",
51
+ outputWindow: "output_window",
32
52
  inputSources: "input_sources",
33
53
  });
34
54
  });
@@ -1 +1 @@
1
- {"version":3,"file":"banwordsguardrail.js","sourceRoot":"","sources":["../../../../src/models/components/banwordsguardrail.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,KAAK,IAAI,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAGjD,OAAO,EAEL,4BAA4B,EAE5B,6BAA6B,GAC9B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAEL,kCAAkC,EAClC,mCAAmC,GACpC,MAAM,2BAA2B,CAAC;AAyBnC,gBAAgB;AAChB,MAAM,CAAC,MAAM,+BAA+B,GAIxC,CAAC,CAAC,MAAM,CAAC;IACX,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;IAC5B,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAClC,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACpC,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC,QAAQ,EAAE;IACrE,MAAM,EAAE,4BAA4B,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;IACjB,OAAO,MAAM,CAAC,CAAC,EAAE;QACf,cAAc,EAAE,aAAa;QAC7B,eAAe,EAAE,cAAc;KAChC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAUH,gBAAgB;AAChB,MAAM,CAAC,MAAM,gCAAgC,GAIzC,CAAC,CAAC,MAAM,CAAC;IACX,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;IAC5B,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAClC,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACnC,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC,QAAQ,EAAE;IACrE,MAAM,EAAE,6BAA6B,CAAC,QAAQ,EAAE;CACjD,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;IACjB,OAAO,MAAM,CAAC,CAAC,EAAE;QACf,WAAW,EAAE,cAAc;QAC3B,YAAY,EAAE,eAAe;KAC9B,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,MAAM,UAAU,uBAAuB,CACrC,iBAAoC;IAEpC,OAAO,IAAI,CAAC,SAAS,CACnB,gCAAgC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAC1D,CAAC;AACJ,CAAC;AACD,MAAM,UAAU,yBAAyB,CACvC,UAAkB;IAElB,OAAO,SAAS,CACd,UAAU,EACV,CAAC,CAAC,EAAE,EAAE,CAAC,+BAA+B,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAC3D,+CAA+C,CAChD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"banwordsguardrail.js","sourceRoot":"","sources":["../../../../src/models/components/banwordsguardrail.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,KAAK,IAAI,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAIjD,OAAO,EAEL,4BAA4B,EAE5B,6BAA6B,GAC9B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAEL,kCAAkC,EAClC,mCAAmC,GACpC,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAEL,0BAA0B,EAE1B,2BAA2B,GAC5B,MAAM,mBAAmB,CAAC;AAE3B;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,KAAK,EAAE,OAAO;IACd,SAAS,EAAE,WAAW;CACd,CAAC;AAqCX,gBAAgB;AAChB,MAAM,CAAC,MAAM,0BAA0B,GACrC,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;AAC7B,gBAAgB;AAChB,MAAM,CAAC,MAAM,2BAA2B,GACtC,0BAA0B,CAAC;AAE7B,gBAAgB;AAChB,MAAM,CAAC,MAAM,+BAA+B,GAIxC,CAAC,CAAC,MAAM,CAAC;IACX,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;IAC5B,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAClC,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACpC,aAAa,EAAE,0BAA0B,CAAC,QAAQ,EAAE;IACpD,aAAa,EAAE,0BAA0B,CAAC,QAAQ,EAAE;IACpD,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC,QAAQ,EAAE;IACrE,MAAM,EAAE,4BAA4B,CAAC,QAAQ,EAAE;CAChD,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;IACjB,OAAO,MAAM,CAAC,CAAC,EAAE;QACf,cAAc,EAAE,aAAa;QAC7B,eAAe,EAAE,cAAc;QAC/B,eAAe,EAAE,cAAc;QAC/B,eAAe,EAAE,cAAc;KAChC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAYH,gBAAgB;AAChB,MAAM,CAAC,MAAM,gCAAgC,GAIzC,CAAC,CAAC,MAAM,CAAC;IACX,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;IAC5B,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAClC,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACnC,YAAY,EAAE,2BAA2B,CAAC,QAAQ,EAAE;IACpD,YAAY,EAAE,2BAA2B,CAAC,QAAQ,EAAE;IACpD,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC,QAAQ,EAAE;IACrE,MAAM,EAAE,6BAA6B,CAAC,QAAQ,EAAE;CACjD,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE;IACjB,OAAO,MAAM,CAAC,CAAC,EAAE;QACf,WAAW,EAAE,cAAc;QAC3B,YAAY,EAAE,eAAe;QAC7B,YAAY,EAAE,eAAe;QAC7B,YAAY,EAAE,eAAe;KAC9B,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,MAAM,UAAU,uBAAuB,CACrC,iBAAoC;IAEpC,OAAO,IAAI,CAAC,SAAS,CACnB,gCAAgC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAC1D,CAAC;AACJ,CAAC;AACD,MAAM,UAAU,yBAAyB,CACvC,UAAkB;IAElB,OAAO,SAAS,CACd,UAAU,EACV,CAAC,CAAC,EAAE,EAAE,CAAC,+BAA+B,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAC3D,+CAA+C,CAChD,CAAC;AACJ,CAAC"}
@@ -1,8 +1,21 @@
1
1
  import * as z from "zod/v3";
2
+ import { ClosedEnum } from "../../types/enums.js";
2
3
  import { Result as SafeParseResult } from "../../types/fp.js";
3
4
  import { SDKValidationError } from "../errors/sdkvalidationerror.js";
4
5
  import { ClassifierConfig, ClassifierConfig$Outbound } from "./classifierconfig.js";
5
6
  import { GuardrailInputSource } from "./guardrailinputsource.js";
7
+ import { OutputWindow, OutputWindow$Outbound } from "./outputwindow.js";
8
+ /**
9
+ * When this rule checks model output: final (default) checks the finished text once, after it has streamed; streaming holds streamed text in a window and releases only text this rule has cleared
10
+ */
11
+ export declare const ClassifierGuardrailOutputTiming: {
12
+ readonly Final: "final";
13
+ readonly Streaming: "streaming";
14
+ };
15
+ /**
16
+ * When this rule checks model output: final (default) checks the finished text once, after it has streamed; streaming holds streamed text in a window and releases only text this rule has cleared
17
+ */
18
+ export type ClassifierGuardrailOutputTiming = ClosedEnum<typeof ClassifierGuardrailOutputTiming>;
6
19
  export type ClassifierGuardrail = {
7
20
  mode: "classifier";
8
21
  /**
@@ -13,6 +26,14 @@ export type ClassifierGuardrail = {
13
26
  * Also apply this guardrail to model output, not just the request
14
27
  */
15
28
  checkOutput?: boolean | undefined;
29
+ /**
30
+ * When this rule checks model output: final (default) checks the finished text once, after it has streamed; streaming holds streamed text in a window and releases only text this rule has cleared
31
+ */
32
+ outputTiming?: ClassifierGuardrailOutputTiming | undefined;
33
+ /**
34
+ * When a streaming output check runs: whichever of max_chars and max_ms fills first
35
+ */
36
+ outputWindow?: OutputWindow | undefined;
16
37
  /**
17
38
  * Request sources this guardrail checks before they reach the model. Omit to use the mode's default: every source for classifier; every source except system for ban_words, since instructions often name the terms they forbid; only what the user sends for prompt_injection and leakage, whose keyword patterns match ordinary instructions, replies and documents. An empty list checks no input, so the rule only checks output when check_output is set. Rules saved before this field existed were set to user messages only.
18
39
  */
@@ -20,12 +41,18 @@ export type ClassifierGuardrail = {
20
41
  config: ClassifierConfig;
21
42
  };
22
43
  /** @internal */
44
+ export declare const ClassifierGuardrailOutputTiming$inboundSchema: z.ZodNativeEnum<typeof ClassifierGuardrailOutputTiming>;
45
+ /** @internal */
46
+ export declare const ClassifierGuardrailOutputTiming$outboundSchema: z.ZodNativeEnum<typeof ClassifierGuardrailOutputTiming>;
47
+ /** @internal */
23
48
  export declare const ClassifierGuardrail$inboundSchema: z.ZodType<ClassifierGuardrail, z.ZodTypeDef, unknown>;
24
49
  /** @internal */
25
50
  export type ClassifierGuardrail$Outbound = {
26
51
  mode: "classifier";
27
52
  enabled: boolean;
28
53
  check_output?: boolean | undefined;
54
+ output_timing?: string | undefined;
55
+ output_window?: OutputWindow$Outbound | undefined;
29
56
  input_sources?: Array<string> | undefined;
30
57
  config: ClassifierConfig$Outbound;
31
58
  };