@juspay/neurolink 9.3.0 → 9.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/README.md +8 -8
  3. package/dist/cli/commands/config.d.ts +3 -3
  4. package/dist/cli/index.js +1 -0
  5. package/dist/index.d.ts +35 -0
  6. package/dist/index.js +17 -0
  7. package/dist/lib/agent/directTools.d.ts +5 -5
  8. package/dist/lib/index.d.ts +35 -0
  9. package/dist/lib/index.js +17 -0
  10. package/dist/lib/neurolink.d.ts +12 -1
  11. package/dist/lib/neurolink.js +265 -4
  12. package/dist/lib/server/utils/validation.d.ts +8 -8
  13. package/dist/lib/types/generateTypes.d.ts +28 -0
  14. package/dist/lib/types/index.d.ts +6 -0
  15. package/dist/lib/types/index.js +12 -0
  16. package/dist/lib/types/modelTypes.d.ts +2 -2
  17. package/dist/lib/types/streamTypes.d.ts +35 -0
  18. package/dist/lib/types/workflowTypes.d.ts +558 -0
  19. package/dist/lib/types/workflowTypes.js +32 -0
  20. package/dist/lib/workflow/LAYER-EXAMPLES.d.ts +13 -0
  21. package/dist/lib/workflow/LAYER-EXAMPLES.js +312 -0
  22. package/dist/lib/workflow/PROMPT-EXAMPLES.d.ts +117 -0
  23. package/dist/lib/workflow/PROMPT-EXAMPLES.js +246 -0
  24. package/dist/lib/workflow/config.d.ts +1569 -0
  25. package/dist/lib/workflow/config.js +399 -0
  26. package/dist/lib/workflow/core/ensembleExecutor.d.ts +56 -0
  27. package/dist/lib/workflow/core/ensembleExecutor.js +398 -0
  28. package/dist/lib/workflow/core/judgeScorer.d.ts +26 -0
  29. package/dist/lib/workflow/core/judgeScorer.js +527 -0
  30. package/dist/lib/workflow/core/responseConditioner.d.ts +22 -0
  31. package/dist/lib/workflow/core/responseConditioner.js +226 -0
  32. package/dist/lib/workflow/core/types/conditionerTypes.d.ts +7 -0
  33. package/dist/lib/workflow/core/types/conditionerTypes.js +8 -0
  34. package/dist/lib/workflow/core/types/ensembleTypes.d.ts +7 -0
  35. package/dist/lib/workflow/core/types/ensembleTypes.js +8 -0
  36. package/dist/lib/workflow/core/types/index.d.ts +7 -0
  37. package/dist/lib/workflow/core/types/index.js +8 -0
  38. package/dist/lib/workflow/core/types/judgeTypes.d.ts +7 -0
  39. package/dist/lib/workflow/core/types/judgeTypes.js +8 -0
  40. package/dist/lib/workflow/core/types/layerTypes.d.ts +7 -0
  41. package/dist/lib/workflow/core/types/layerTypes.js +8 -0
  42. package/dist/lib/workflow/core/types/registryTypes.d.ts +7 -0
  43. package/dist/lib/workflow/core/types/registryTypes.js +8 -0
  44. package/dist/lib/workflow/core/workflowRegistry.d.ts +73 -0
  45. package/dist/lib/workflow/core/workflowRegistry.js +305 -0
  46. package/dist/lib/workflow/core/workflowRunner.d.ts +115 -0
  47. package/dist/lib/workflow/core/workflowRunner.js +554 -0
  48. package/dist/lib/workflow/index.d.ts +36 -0
  49. package/dist/lib/workflow/index.js +51 -0
  50. package/dist/lib/workflow/types.d.ts +19 -0
  51. package/dist/lib/workflow/types.js +10 -0
  52. package/dist/lib/workflow/utils/types/index.d.ts +7 -0
  53. package/dist/lib/workflow/utils/types/index.js +8 -0
  54. package/dist/lib/workflow/utils/types/metricsTypes.d.ts +7 -0
  55. package/dist/lib/workflow/utils/types/metricsTypes.js +8 -0
  56. package/dist/lib/workflow/utils/types/validationTypes.d.ts +7 -0
  57. package/dist/lib/workflow/utils/types/validationTypes.js +8 -0
  58. package/dist/lib/workflow/utils/workflowMetrics.d.ts +76 -0
  59. package/dist/lib/workflow/utils/workflowMetrics.js +312 -0
  60. package/dist/lib/workflow/utils/workflowValidation.d.ts +29 -0
  61. package/dist/lib/workflow/utils/workflowValidation.js +421 -0
  62. package/dist/lib/workflow/workflows/adaptiveWorkflow.d.ts +72 -0
  63. package/dist/lib/workflow/workflows/adaptiveWorkflow.js +367 -0
  64. package/dist/lib/workflow/workflows/consensusWorkflow.d.ts +69 -0
  65. package/dist/lib/workflow/workflows/consensusWorkflow.js +193 -0
  66. package/dist/lib/workflow/workflows/fallbackWorkflow.d.ts +49 -0
  67. package/dist/lib/workflow/workflows/fallbackWorkflow.js +226 -0
  68. package/dist/lib/workflow/workflows/multiJudgeWorkflow.d.ts +70 -0
  69. package/dist/lib/workflow/workflows/multiJudgeWorkflow.js +352 -0
  70. package/dist/neurolink.d.ts +12 -1
  71. package/dist/neurolink.js +265 -4
  72. package/dist/types/generateTypes.d.ts +28 -0
  73. package/dist/types/index.d.ts +6 -0
  74. package/dist/types/index.js +12 -0
  75. package/dist/types/streamTypes.d.ts +35 -0
  76. package/dist/types/workflowTypes.d.ts +558 -0
  77. package/dist/types/workflowTypes.js +31 -0
  78. package/dist/workflow/LAYER-EXAMPLES.d.ts +13 -0
  79. package/dist/workflow/LAYER-EXAMPLES.js +311 -0
  80. package/dist/workflow/PROMPT-EXAMPLES.d.ts +117 -0
  81. package/dist/workflow/PROMPT-EXAMPLES.js +245 -0
  82. package/dist/workflow/config.d.ts +1569 -0
  83. package/dist/workflow/config.js +398 -0
  84. package/dist/workflow/core/ensembleExecutor.d.ts +56 -0
  85. package/dist/workflow/core/ensembleExecutor.js +397 -0
  86. package/dist/workflow/core/judgeScorer.d.ts +26 -0
  87. package/dist/workflow/core/judgeScorer.js +526 -0
  88. package/dist/workflow/core/responseConditioner.d.ts +22 -0
  89. package/dist/workflow/core/responseConditioner.js +225 -0
  90. package/dist/workflow/core/types/conditionerTypes.d.ts +7 -0
  91. package/dist/workflow/core/types/conditionerTypes.js +7 -0
  92. package/dist/workflow/core/types/ensembleTypes.d.ts +7 -0
  93. package/dist/workflow/core/types/ensembleTypes.js +7 -0
  94. package/dist/workflow/core/types/index.d.ts +7 -0
  95. package/dist/workflow/core/types/index.js +7 -0
  96. package/dist/workflow/core/types/judgeTypes.d.ts +7 -0
  97. package/dist/workflow/core/types/judgeTypes.js +7 -0
  98. package/dist/workflow/core/types/layerTypes.d.ts +7 -0
  99. package/dist/workflow/core/types/layerTypes.js +7 -0
  100. package/dist/workflow/core/types/registryTypes.d.ts +7 -0
  101. package/dist/workflow/core/types/registryTypes.js +7 -0
  102. package/dist/workflow/core/workflowRegistry.d.ts +73 -0
  103. package/dist/workflow/core/workflowRegistry.js +304 -0
  104. package/dist/workflow/core/workflowRunner.d.ts +115 -0
  105. package/dist/workflow/core/workflowRunner.js +553 -0
  106. package/dist/workflow/index.d.ts +36 -0
  107. package/dist/workflow/index.js +50 -0
  108. package/dist/workflow/types.d.ts +19 -0
  109. package/dist/workflow/types.js +9 -0
  110. package/dist/workflow/utils/types/index.d.ts +7 -0
  111. package/dist/workflow/utils/types/index.js +7 -0
  112. package/dist/workflow/utils/types/metricsTypes.d.ts +7 -0
  113. package/dist/workflow/utils/types/metricsTypes.js +7 -0
  114. package/dist/workflow/utils/types/validationTypes.d.ts +7 -0
  115. package/dist/workflow/utils/types/validationTypes.js +7 -0
  116. package/dist/workflow/utils/workflowMetrics.d.ts +76 -0
  117. package/dist/workflow/utils/workflowMetrics.js +311 -0
  118. package/dist/workflow/utils/workflowValidation.d.ts +29 -0
  119. package/dist/workflow/utils/workflowValidation.js +420 -0
  120. package/dist/workflow/workflows/adaptiveWorkflow.d.ts +72 -0
  121. package/dist/workflow/workflows/adaptiveWorkflow.js +366 -0
  122. package/dist/workflow/workflows/consensusWorkflow.d.ts +69 -0
  123. package/dist/workflow/workflows/consensusWorkflow.js +192 -0
  124. package/dist/workflow/workflows/fallbackWorkflow.d.ts +49 -0
  125. package/dist/workflow/workflows/fallbackWorkflow.js +225 -0
  126. package/dist/workflow/workflows/multiJudgeWorkflow.d.ts +70 -0
  127. package/dist/workflow/workflows/multiJudgeWorkflow.js +351 -0
  128. package/package.json +3 -2
@@ -0,0 +1,1569 @@
1
+ /**
2
+ * workflow/config.ts
3
+ * Configuration schemas, validation, and defaults
4
+ *
5
+ * Uses Zod for runtime validation and type safety
6
+ */
7
+ import { z } from "zod";
8
+ import { AIProviderName } from "../constants/enums.js";
9
+ import type { JsonValue } from "../types/common.js";
10
+ import type { ConditioningConfig, ExecutionConfig, JudgeConfig, ModelConfig, ModelGroup, WorkflowConfig } from "./types.js";
11
+ export declare const MIN_SCORE = 0;
12
+ export declare const MAX_SCORE = 100;
13
+ export declare const MAX_REASONING_LENGTH = 200;
14
+ export declare const PLACEHOLDER_PROVIDER = "none";
15
+ export declare const PLACEHOLDER_MODEL = "none";
16
+ export declare const WORKFLOW_CREATION_DATE = "2025-11-29T00:00:00.000Z";
17
+ /**
18
+ * Model configuration schema
19
+ */
20
+ export declare const ModelConfigSchema: z.ZodObject<{
21
+ provider: z.ZodEffects<z.ZodUnion<[z.ZodNativeEnum<typeof AIProviderName>, z.ZodString]>, AIProviderName, string>;
22
+ model: z.ZodString;
23
+ weight: z.ZodOptional<z.ZodNumber>;
24
+ temperature: z.ZodOptional<z.ZodNumber>;
25
+ maxTokens: z.ZodOptional<z.ZodNumber>;
26
+ systemPrompt: z.ZodOptional<z.ZodString>;
27
+ timeout: z.ZodOptional<z.ZodNumber>;
28
+ topP: z.ZodOptional<z.ZodNumber>;
29
+ topK: z.ZodOptional<z.ZodNumber>;
30
+ presencePenalty: z.ZodOptional<z.ZodNumber>;
31
+ frequencyPenalty: z.ZodOptional<z.ZodNumber>;
32
+ label: z.ZodOptional<z.ZodString>;
33
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, z.ZodTypeDef, JsonValue>>>;
34
+ }, "strip", z.ZodTypeAny, {
35
+ provider: AIProviderName;
36
+ model: string;
37
+ timeout?: number | undefined;
38
+ topK?: number | undefined;
39
+ temperature?: number | undefined;
40
+ maxTokens?: number | undefined;
41
+ systemPrompt?: string | undefined;
42
+ metadata?: Record<string, JsonValue> | undefined;
43
+ topP?: number | undefined;
44
+ presencePenalty?: number | undefined;
45
+ frequencyPenalty?: number | undefined;
46
+ weight?: number | undefined;
47
+ label?: string | undefined;
48
+ }, {
49
+ provider: string;
50
+ model: string;
51
+ timeout?: number | undefined;
52
+ topK?: number | undefined;
53
+ temperature?: number | undefined;
54
+ maxTokens?: number | undefined;
55
+ systemPrompt?: string | undefined;
56
+ metadata?: Record<string, JsonValue> | undefined;
57
+ topP?: number | undefined;
58
+ presencePenalty?: number | undefined;
59
+ frequencyPenalty?: number | undefined;
60
+ weight?: number | undefined;
61
+ label?: string | undefined;
62
+ }>;
63
+ /**
64
+ * Judge configuration schema
65
+ * NOTE: Testing phase enforces 0-100 score scale
66
+ */
67
+ export declare const JudgeConfigSchema: z.ZodObject<{
68
+ provider: z.ZodEffects<z.ZodUnion<[z.ZodNativeEnum<typeof AIProviderName>, z.ZodString]>, AIProviderName, string>;
69
+ model: z.ZodString;
70
+ criteria: z.ZodArray<z.ZodString, "many">;
71
+ outputFormat: z.ZodEnum<["scores", "ranking", "best", "detailed"]>;
72
+ customPrompt: z.ZodOptional<z.ZodString>;
73
+ systemPrompt: z.ZodOptional<z.ZodString>;
74
+ temperature: z.ZodOptional<z.ZodNumber>;
75
+ maxTokens: z.ZodOptional<z.ZodNumber>;
76
+ timeout: z.ZodOptional<z.ZodNumber>;
77
+ blindEvaluation: z.ZodOptional<z.ZodBoolean>;
78
+ includeReasoning: z.ZodBoolean;
79
+ scoreScale: z.ZodObject<{
80
+ min: z.ZodLiteral<0>;
81
+ max: z.ZodLiteral<100>;
82
+ }, "strip", z.ZodTypeAny, {
83
+ min: 0;
84
+ max: 100;
85
+ }, {
86
+ min: 0;
87
+ max: 100;
88
+ }>;
89
+ label: z.ZodOptional<z.ZodString>;
90
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, z.ZodTypeDef, JsonValue>>>;
91
+ }, "strip", z.ZodTypeAny, {
92
+ provider: AIProviderName;
93
+ model: string;
94
+ outputFormat: "detailed" | "scores" | "ranking" | "best";
95
+ criteria: string[];
96
+ includeReasoning: boolean;
97
+ scoreScale: {
98
+ min: 0;
99
+ max: 100;
100
+ };
101
+ timeout?: number | undefined;
102
+ temperature?: number | undefined;
103
+ maxTokens?: number | undefined;
104
+ systemPrompt?: string | undefined;
105
+ metadata?: Record<string, JsonValue> | undefined;
106
+ label?: string | undefined;
107
+ customPrompt?: string | undefined;
108
+ blindEvaluation?: boolean | undefined;
109
+ }, {
110
+ provider: string;
111
+ model: string;
112
+ outputFormat: "detailed" | "scores" | "ranking" | "best";
113
+ criteria: string[];
114
+ includeReasoning: boolean;
115
+ scoreScale: {
116
+ min: 0;
117
+ max: 100;
118
+ };
119
+ timeout?: number | undefined;
120
+ temperature?: number | undefined;
121
+ maxTokens?: number | undefined;
122
+ systemPrompt?: string | undefined;
123
+ metadata?: Record<string, JsonValue> | undefined;
124
+ label?: string | undefined;
125
+ customPrompt?: string | undefined;
126
+ blindEvaluation?: boolean | undefined;
127
+ }>;
128
+ /**
129
+ * Conditioning configuration schema
130
+ */
131
+ export declare const ConditioningConfigSchema: z.ZodObject<{
132
+ useConfidence: z.ZodBoolean;
133
+ confidenceThresholds: z.ZodOptional<z.ZodObject<{
134
+ high: z.ZodNumber;
135
+ medium: z.ZodNumber;
136
+ low: z.ZodNumber;
137
+ }, "strip", z.ZodTypeAny, {
138
+ low: number;
139
+ medium: number;
140
+ high: number;
141
+ }, {
142
+ low: number;
143
+ medium: number;
144
+ high: number;
145
+ }>>;
146
+ toneAdjustment: z.ZodOptional<z.ZodEnum<["soften", "strengthen", "neutral"]>>;
147
+ includeMetadata: z.ZodOptional<z.ZodBoolean>;
148
+ metadataFields: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
149
+ addConfidenceStatement: z.ZodOptional<z.ZodBoolean>;
150
+ addModelAttribution: z.ZodOptional<z.ZodBoolean>;
151
+ addExecutionTime: z.ZodOptional<z.ZodBoolean>;
152
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, z.ZodTypeDef, JsonValue>>>;
153
+ }, "strip", z.ZodTypeAny, {
154
+ useConfidence: boolean;
155
+ metadata?: Record<string, JsonValue> | undefined;
156
+ confidenceThresholds?: {
157
+ low: number;
158
+ medium: number;
159
+ high: number;
160
+ } | undefined;
161
+ toneAdjustment?: "neutral" | "soften" | "strengthen" | undefined;
162
+ includeMetadata?: boolean | undefined;
163
+ metadataFields?: string[] | undefined;
164
+ addConfidenceStatement?: boolean | undefined;
165
+ addModelAttribution?: boolean | undefined;
166
+ addExecutionTime?: boolean | undefined;
167
+ }, {
168
+ useConfidence: boolean;
169
+ metadata?: Record<string, JsonValue> | undefined;
170
+ confidenceThresholds?: {
171
+ low: number;
172
+ medium: number;
173
+ high: number;
174
+ } | undefined;
175
+ toneAdjustment?: "neutral" | "soften" | "strengthen" | undefined;
176
+ includeMetadata?: boolean | undefined;
177
+ metadataFields?: string[] | undefined;
178
+ addConfidenceStatement?: boolean | undefined;
179
+ addModelAttribution?: boolean | undefined;
180
+ addExecutionTime?: boolean | undefined;
181
+ }>;
182
+ /**
183
+ * Model group schema for layer-based execution
184
+ */
185
+ export declare const ModelGroupSchema: z.ZodObject<{
186
+ id: z.ZodString;
187
+ name: z.ZodOptional<z.ZodString>;
188
+ description: z.ZodOptional<z.ZodString>;
189
+ models: z.ZodArray<z.ZodObject<{
190
+ provider: z.ZodEffects<z.ZodUnion<[z.ZodNativeEnum<typeof AIProviderName>, z.ZodString]>, AIProviderName, string>;
191
+ model: z.ZodString;
192
+ weight: z.ZodOptional<z.ZodNumber>;
193
+ temperature: z.ZodOptional<z.ZodNumber>;
194
+ maxTokens: z.ZodOptional<z.ZodNumber>;
195
+ systemPrompt: z.ZodOptional<z.ZodString>;
196
+ timeout: z.ZodOptional<z.ZodNumber>;
197
+ topP: z.ZodOptional<z.ZodNumber>;
198
+ topK: z.ZodOptional<z.ZodNumber>;
199
+ presencePenalty: z.ZodOptional<z.ZodNumber>;
200
+ frequencyPenalty: z.ZodOptional<z.ZodNumber>;
201
+ label: z.ZodOptional<z.ZodString>;
202
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, z.ZodTypeDef, JsonValue>>>;
203
+ }, "strip", z.ZodTypeAny, {
204
+ provider: AIProviderName;
205
+ model: string;
206
+ timeout?: number | undefined;
207
+ topK?: number | undefined;
208
+ temperature?: number | undefined;
209
+ maxTokens?: number | undefined;
210
+ systemPrompt?: string | undefined;
211
+ metadata?: Record<string, JsonValue> | undefined;
212
+ topP?: number | undefined;
213
+ presencePenalty?: number | undefined;
214
+ frequencyPenalty?: number | undefined;
215
+ weight?: number | undefined;
216
+ label?: string | undefined;
217
+ }, {
218
+ provider: string;
219
+ model: string;
220
+ timeout?: number | undefined;
221
+ topK?: number | undefined;
222
+ temperature?: number | undefined;
223
+ maxTokens?: number | undefined;
224
+ systemPrompt?: string | undefined;
225
+ metadata?: Record<string, JsonValue> | undefined;
226
+ topP?: number | undefined;
227
+ presencePenalty?: number | undefined;
228
+ frequencyPenalty?: number | undefined;
229
+ weight?: number | undefined;
230
+ label?: string | undefined;
231
+ }>, "many">;
232
+ executionStrategy: z.ZodEnum<["parallel", "sequential"]>;
233
+ continueOnFailure: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
234
+ minSuccessful: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
235
+ parallelism: z.ZodOptional<z.ZodNumber>;
236
+ timeout: z.ZodOptional<z.ZodNumber>;
237
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, z.ZodTypeDef, JsonValue>>>;
238
+ }, "strip", z.ZodTypeAny, {
239
+ id: string;
240
+ models: {
241
+ provider: AIProviderName;
242
+ model: string;
243
+ timeout?: number | undefined;
244
+ topK?: number | undefined;
245
+ temperature?: number | undefined;
246
+ maxTokens?: number | undefined;
247
+ systemPrompt?: string | undefined;
248
+ metadata?: Record<string, JsonValue> | undefined;
249
+ topP?: number | undefined;
250
+ presencePenalty?: number | undefined;
251
+ frequencyPenalty?: number | undefined;
252
+ weight?: number | undefined;
253
+ label?: string | undefined;
254
+ }[];
255
+ executionStrategy: "parallel" | "sequential";
256
+ continueOnFailure: boolean;
257
+ minSuccessful: number;
258
+ timeout?: number | undefined;
259
+ name?: string | undefined;
260
+ metadata?: Record<string, JsonValue> | undefined;
261
+ description?: string | undefined;
262
+ parallelism?: number | undefined;
263
+ }, {
264
+ id: string;
265
+ models: {
266
+ provider: string;
267
+ model: string;
268
+ timeout?: number | undefined;
269
+ topK?: number | undefined;
270
+ temperature?: number | undefined;
271
+ maxTokens?: number | undefined;
272
+ systemPrompt?: string | undefined;
273
+ metadata?: Record<string, JsonValue> | undefined;
274
+ topP?: number | undefined;
275
+ presencePenalty?: number | undefined;
276
+ frequencyPenalty?: number | undefined;
277
+ weight?: number | undefined;
278
+ label?: string | undefined;
279
+ }[];
280
+ executionStrategy: "parallel" | "sequential";
281
+ timeout?: number | undefined;
282
+ name?: string | undefined;
283
+ metadata?: Record<string, JsonValue> | undefined;
284
+ description?: string | undefined;
285
+ continueOnFailure?: boolean | undefined;
286
+ minSuccessful?: number | undefined;
287
+ parallelism?: number | undefined;
288
+ }>;
289
+ /**
290
+ * Execution configuration schema
291
+ */
292
+ export declare const ExecutionConfigSchema: z.ZodObject<{
293
+ timeout: z.ZodOptional<z.ZodNumber>;
294
+ modelTimeout: z.ZodOptional<z.ZodNumber>;
295
+ judgeTimeout: z.ZodOptional<z.ZodNumber>;
296
+ retries: z.ZodOptional<z.ZodNumber>;
297
+ retryDelay: z.ZodOptional<z.ZodNumber>;
298
+ retryableErrors: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
299
+ parallelism: z.ZodOptional<z.ZodNumber>;
300
+ earlyTermination: z.ZodOptional<z.ZodBoolean>;
301
+ minResponses: z.ZodOptional<z.ZodNumber>;
302
+ maxCost: z.ZodOptional<z.ZodNumber>;
303
+ costThreshold: z.ZodOptional<z.ZodNumber>;
304
+ enableMetrics: z.ZodOptional<z.ZodBoolean>;
305
+ enableTracing: z.ZodOptional<z.ZodBoolean>;
306
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, z.ZodTypeDef, JsonValue>>>;
307
+ }, "strip", z.ZodTypeAny, {
308
+ timeout?: number | undefined;
309
+ metadata?: Record<string, JsonValue> | undefined;
310
+ retries?: number | undefined;
311
+ retryDelay?: number | undefined;
312
+ parallelism?: number | undefined;
313
+ modelTimeout?: number | undefined;
314
+ judgeTimeout?: number | undefined;
315
+ retryableErrors?: string[] | undefined;
316
+ earlyTermination?: boolean | undefined;
317
+ minResponses?: number | undefined;
318
+ maxCost?: number | undefined;
319
+ costThreshold?: number | undefined;
320
+ enableMetrics?: boolean | undefined;
321
+ enableTracing?: boolean | undefined;
322
+ }, {
323
+ timeout?: number | undefined;
324
+ metadata?: Record<string, JsonValue> | undefined;
325
+ retries?: number | undefined;
326
+ retryDelay?: number | undefined;
327
+ parallelism?: number | undefined;
328
+ modelTimeout?: number | undefined;
329
+ judgeTimeout?: number | undefined;
330
+ retryableErrors?: string[] | undefined;
331
+ earlyTermination?: boolean | undefined;
332
+ minResponses?: number | undefined;
333
+ maxCost?: number | undefined;
334
+ costThreshold?: number | undefined;
335
+ enableMetrics?: boolean | undefined;
336
+ enableTracing?: boolean | undefined;
337
+ }>;
338
+ export declare const WorkflowConfigSchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
339
+ id: z.ZodString;
340
+ name: z.ZodString;
341
+ description: z.ZodOptional<z.ZodString>;
342
+ version: z.ZodOptional<z.ZodString>;
343
+ type: z.ZodEnum<["ensemble", "chain", "adaptive", "custom"]>;
344
+ models: z.ZodArray<z.ZodObject<{
345
+ provider: z.ZodEffects<z.ZodUnion<[z.ZodNativeEnum<typeof AIProviderName>, z.ZodString]>, AIProviderName, string>;
346
+ model: z.ZodString;
347
+ weight: z.ZodOptional<z.ZodNumber>;
348
+ temperature: z.ZodOptional<z.ZodNumber>;
349
+ maxTokens: z.ZodOptional<z.ZodNumber>;
350
+ systemPrompt: z.ZodOptional<z.ZodString>;
351
+ timeout: z.ZodOptional<z.ZodNumber>;
352
+ topP: z.ZodOptional<z.ZodNumber>;
353
+ topK: z.ZodOptional<z.ZodNumber>;
354
+ presencePenalty: z.ZodOptional<z.ZodNumber>;
355
+ frequencyPenalty: z.ZodOptional<z.ZodNumber>;
356
+ label: z.ZodOptional<z.ZodString>;
357
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, z.ZodTypeDef, JsonValue>>>;
358
+ }, "strip", z.ZodTypeAny, {
359
+ provider: AIProviderName;
360
+ model: string;
361
+ timeout?: number | undefined;
362
+ topK?: number | undefined;
363
+ temperature?: number | undefined;
364
+ maxTokens?: number | undefined;
365
+ systemPrompt?: string | undefined;
366
+ metadata?: Record<string, JsonValue> | undefined;
367
+ topP?: number | undefined;
368
+ presencePenalty?: number | undefined;
369
+ frequencyPenalty?: number | undefined;
370
+ weight?: number | undefined;
371
+ label?: string | undefined;
372
+ }, {
373
+ provider: string;
374
+ model: string;
375
+ timeout?: number | undefined;
376
+ topK?: number | undefined;
377
+ temperature?: number | undefined;
378
+ maxTokens?: number | undefined;
379
+ systemPrompt?: string | undefined;
380
+ metadata?: Record<string, JsonValue> | undefined;
381
+ topP?: number | undefined;
382
+ presencePenalty?: number | undefined;
383
+ frequencyPenalty?: number | undefined;
384
+ weight?: number | undefined;
385
+ label?: string | undefined;
386
+ }>, "many">;
387
+ modelGroups: z.ZodOptional<z.ZodArray<z.ZodObject<{
388
+ id: z.ZodString;
389
+ name: z.ZodOptional<z.ZodString>;
390
+ description: z.ZodOptional<z.ZodString>;
391
+ models: z.ZodArray<z.ZodObject<{
392
+ provider: z.ZodEffects<z.ZodUnion<[z.ZodNativeEnum<typeof AIProviderName>, z.ZodString]>, AIProviderName, string>;
393
+ model: z.ZodString;
394
+ weight: z.ZodOptional<z.ZodNumber>;
395
+ temperature: z.ZodOptional<z.ZodNumber>;
396
+ maxTokens: z.ZodOptional<z.ZodNumber>;
397
+ systemPrompt: z.ZodOptional<z.ZodString>;
398
+ timeout: z.ZodOptional<z.ZodNumber>;
399
+ topP: z.ZodOptional<z.ZodNumber>;
400
+ topK: z.ZodOptional<z.ZodNumber>;
401
+ presencePenalty: z.ZodOptional<z.ZodNumber>;
402
+ frequencyPenalty: z.ZodOptional<z.ZodNumber>;
403
+ label: z.ZodOptional<z.ZodString>;
404
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, z.ZodTypeDef, JsonValue>>>;
405
+ }, "strip", z.ZodTypeAny, {
406
+ provider: AIProviderName;
407
+ model: string;
408
+ timeout?: number | undefined;
409
+ topK?: number | undefined;
410
+ temperature?: number | undefined;
411
+ maxTokens?: number | undefined;
412
+ systemPrompt?: string | undefined;
413
+ metadata?: Record<string, JsonValue> | undefined;
414
+ topP?: number | undefined;
415
+ presencePenalty?: number | undefined;
416
+ frequencyPenalty?: number | undefined;
417
+ weight?: number | undefined;
418
+ label?: string | undefined;
419
+ }, {
420
+ provider: string;
421
+ model: string;
422
+ timeout?: number | undefined;
423
+ topK?: number | undefined;
424
+ temperature?: number | undefined;
425
+ maxTokens?: number | undefined;
426
+ systemPrompt?: string | undefined;
427
+ metadata?: Record<string, JsonValue> | undefined;
428
+ topP?: number | undefined;
429
+ presencePenalty?: number | undefined;
430
+ frequencyPenalty?: number | undefined;
431
+ weight?: number | undefined;
432
+ label?: string | undefined;
433
+ }>, "many">;
434
+ executionStrategy: z.ZodEnum<["parallel", "sequential"]>;
435
+ continueOnFailure: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
436
+ minSuccessful: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
437
+ parallelism: z.ZodOptional<z.ZodNumber>;
438
+ timeout: z.ZodOptional<z.ZodNumber>;
439
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, z.ZodTypeDef, JsonValue>>>;
440
+ }, "strip", z.ZodTypeAny, {
441
+ id: string;
442
+ models: {
443
+ provider: AIProviderName;
444
+ model: string;
445
+ timeout?: number | undefined;
446
+ topK?: number | undefined;
447
+ temperature?: number | undefined;
448
+ maxTokens?: number | undefined;
449
+ systemPrompt?: string | undefined;
450
+ metadata?: Record<string, JsonValue> | undefined;
451
+ topP?: number | undefined;
452
+ presencePenalty?: number | undefined;
453
+ frequencyPenalty?: number | undefined;
454
+ weight?: number | undefined;
455
+ label?: string | undefined;
456
+ }[];
457
+ executionStrategy: "parallel" | "sequential";
458
+ continueOnFailure: boolean;
459
+ minSuccessful: number;
460
+ timeout?: number | undefined;
461
+ name?: string | undefined;
462
+ metadata?: Record<string, JsonValue> | undefined;
463
+ description?: string | undefined;
464
+ parallelism?: number | undefined;
465
+ }, {
466
+ id: string;
467
+ models: {
468
+ provider: string;
469
+ model: string;
470
+ timeout?: number | undefined;
471
+ topK?: number | undefined;
472
+ temperature?: number | undefined;
473
+ maxTokens?: number | undefined;
474
+ systemPrompt?: string | undefined;
475
+ metadata?: Record<string, JsonValue> | undefined;
476
+ topP?: number | undefined;
477
+ presencePenalty?: number | undefined;
478
+ frequencyPenalty?: number | undefined;
479
+ weight?: number | undefined;
480
+ label?: string | undefined;
481
+ }[];
482
+ executionStrategy: "parallel" | "sequential";
483
+ timeout?: number | undefined;
484
+ name?: string | undefined;
485
+ metadata?: Record<string, JsonValue> | undefined;
486
+ description?: string | undefined;
487
+ continueOnFailure?: boolean | undefined;
488
+ minSuccessful?: number | undefined;
489
+ parallelism?: number | undefined;
490
+ }>, "many">>;
491
+ defaultSystemPrompt: z.ZodOptional<z.ZodString>;
492
+ defaultJudgePrompt: z.ZodOptional<z.ZodString>;
493
+ judge: z.ZodOptional<z.ZodObject<{
494
+ provider: z.ZodEffects<z.ZodUnion<[z.ZodNativeEnum<typeof AIProviderName>, z.ZodString]>, AIProviderName, string>;
495
+ model: z.ZodString;
496
+ criteria: z.ZodArray<z.ZodString, "many">;
497
+ outputFormat: z.ZodEnum<["scores", "ranking", "best", "detailed"]>;
498
+ customPrompt: z.ZodOptional<z.ZodString>;
499
+ systemPrompt: z.ZodOptional<z.ZodString>;
500
+ temperature: z.ZodOptional<z.ZodNumber>;
501
+ maxTokens: z.ZodOptional<z.ZodNumber>;
502
+ timeout: z.ZodOptional<z.ZodNumber>;
503
+ blindEvaluation: z.ZodOptional<z.ZodBoolean>;
504
+ includeReasoning: z.ZodBoolean;
505
+ scoreScale: z.ZodObject<{
506
+ min: z.ZodLiteral<0>;
507
+ max: z.ZodLiteral<100>;
508
+ }, "strip", z.ZodTypeAny, {
509
+ min: 0;
510
+ max: 100;
511
+ }, {
512
+ min: 0;
513
+ max: 100;
514
+ }>;
515
+ label: z.ZodOptional<z.ZodString>;
516
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, z.ZodTypeDef, JsonValue>>>;
517
+ }, "strip", z.ZodTypeAny, {
518
+ provider: AIProviderName;
519
+ model: string;
520
+ outputFormat: "detailed" | "scores" | "ranking" | "best";
521
+ criteria: string[];
522
+ includeReasoning: boolean;
523
+ scoreScale: {
524
+ min: 0;
525
+ max: 100;
526
+ };
527
+ timeout?: number | undefined;
528
+ temperature?: number | undefined;
529
+ maxTokens?: number | undefined;
530
+ systemPrompt?: string | undefined;
531
+ metadata?: Record<string, JsonValue> | undefined;
532
+ label?: string | undefined;
533
+ customPrompt?: string | undefined;
534
+ blindEvaluation?: boolean | undefined;
535
+ }, {
536
+ provider: string;
537
+ model: string;
538
+ outputFormat: "detailed" | "scores" | "ranking" | "best";
539
+ criteria: string[];
540
+ includeReasoning: boolean;
541
+ scoreScale: {
542
+ min: 0;
543
+ max: 100;
544
+ };
545
+ timeout?: number | undefined;
546
+ temperature?: number | undefined;
547
+ maxTokens?: number | undefined;
548
+ systemPrompt?: string | undefined;
549
+ metadata?: Record<string, JsonValue> | undefined;
550
+ label?: string | undefined;
551
+ customPrompt?: string | undefined;
552
+ blindEvaluation?: boolean | undefined;
553
+ }>>;
554
+ judges: z.ZodOptional<z.ZodArray<z.ZodObject<{
555
+ provider: z.ZodEffects<z.ZodUnion<[z.ZodNativeEnum<typeof AIProviderName>, z.ZodString]>, AIProviderName, string>;
556
+ model: z.ZodString;
557
+ criteria: z.ZodArray<z.ZodString, "many">;
558
+ outputFormat: z.ZodEnum<["scores", "ranking", "best", "detailed"]>;
559
+ customPrompt: z.ZodOptional<z.ZodString>;
560
+ systemPrompt: z.ZodOptional<z.ZodString>;
561
+ temperature: z.ZodOptional<z.ZodNumber>;
562
+ maxTokens: z.ZodOptional<z.ZodNumber>;
563
+ timeout: z.ZodOptional<z.ZodNumber>;
564
+ blindEvaluation: z.ZodOptional<z.ZodBoolean>;
565
+ includeReasoning: z.ZodBoolean;
566
+ scoreScale: z.ZodObject<{
567
+ min: z.ZodLiteral<0>;
568
+ max: z.ZodLiteral<100>;
569
+ }, "strip", z.ZodTypeAny, {
570
+ min: 0;
571
+ max: 100;
572
+ }, {
573
+ min: 0;
574
+ max: 100;
575
+ }>;
576
+ label: z.ZodOptional<z.ZodString>;
577
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, z.ZodTypeDef, JsonValue>>>;
578
+ }, "strip", z.ZodTypeAny, {
579
+ provider: AIProviderName;
580
+ model: string;
581
+ outputFormat: "detailed" | "scores" | "ranking" | "best";
582
+ criteria: string[];
583
+ includeReasoning: boolean;
584
+ scoreScale: {
585
+ min: 0;
586
+ max: 100;
587
+ };
588
+ timeout?: number | undefined;
589
+ temperature?: number | undefined;
590
+ maxTokens?: number | undefined;
591
+ systemPrompt?: string | undefined;
592
+ metadata?: Record<string, JsonValue> | undefined;
593
+ label?: string | undefined;
594
+ customPrompt?: string | undefined;
595
+ blindEvaluation?: boolean | undefined;
596
+ }, {
597
+ provider: string;
598
+ model: string;
599
+ outputFormat: "detailed" | "scores" | "ranking" | "best";
600
+ criteria: string[];
601
+ includeReasoning: boolean;
602
+ scoreScale: {
603
+ min: 0;
604
+ max: 100;
605
+ };
606
+ timeout?: number | undefined;
607
+ temperature?: number | undefined;
608
+ maxTokens?: number | undefined;
609
+ systemPrompt?: string | undefined;
610
+ metadata?: Record<string, JsonValue> | undefined;
611
+ label?: string | undefined;
612
+ customPrompt?: string | undefined;
613
+ blindEvaluation?: boolean | undefined;
614
+ }>, "many">>;
615
+ conditioning: z.ZodOptional<z.ZodObject<{
616
+ useConfidence: z.ZodBoolean;
617
+ confidenceThresholds: z.ZodOptional<z.ZodObject<{
618
+ high: z.ZodNumber;
619
+ medium: z.ZodNumber;
620
+ low: z.ZodNumber;
621
+ }, "strip", z.ZodTypeAny, {
622
+ low: number;
623
+ medium: number;
624
+ high: number;
625
+ }, {
626
+ low: number;
627
+ medium: number;
628
+ high: number;
629
+ }>>;
630
+ toneAdjustment: z.ZodOptional<z.ZodEnum<["soften", "strengthen", "neutral"]>>;
631
+ includeMetadata: z.ZodOptional<z.ZodBoolean>;
632
+ metadataFields: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
633
+ addConfidenceStatement: z.ZodOptional<z.ZodBoolean>;
634
+ addModelAttribution: z.ZodOptional<z.ZodBoolean>;
635
+ addExecutionTime: z.ZodOptional<z.ZodBoolean>;
636
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, z.ZodTypeDef, JsonValue>>>;
637
+ }, "strip", z.ZodTypeAny, {
638
+ useConfidence: boolean;
639
+ metadata?: Record<string, JsonValue> | undefined;
640
+ confidenceThresholds?: {
641
+ low: number;
642
+ medium: number;
643
+ high: number;
644
+ } | undefined;
645
+ toneAdjustment?: "neutral" | "soften" | "strengthen" | undefined;
646
+ includeMetadata?: boolean | undefined;
647
+ metadataFields?: string[] | undefined;
648
+ addConfidenceStatement?: boolean | undefined;
649
+ addModelAttribution?: boolean | undefined;
650
+ addExecutionTime?: boolean | undefined;
651
+ }, {
652
+ useConfidence: boolean;
653
+ metadata?: Record<string, JsonValue> | undefined;
654
+ confidenceThresholds?: {
655
+ low: number;
656
+ medium: number;
657
+ high: number;
658
+ } | undefined;
659
+ toneAdjustment?: "neutral" | "soften" | "strengthen" | undefined;
660
+ includeMetadata?: boolean | undefined;
661
+ metadataFields?: string[] | undefined;
662
+ addConfidenceStatement?: boolean | undefined;
663
+ addModelAttribution?: boolean | undefined;
664
+ addExecutionTime?: boolean | undefined;
665
+ }>>;
666
+ execution: z.ZodOptional<z.ZodObject<{
667
+ timeout: z.ZodOptional<z.ZodNumber>;
668
+ modelTimeout: z.ZodOptional<z.ZodNumber>;
669
+ judgeTimeout: z.ZodOptional<z.ZodNumber>;
670
+ retries: z.ZodOptional<z.ZodNumber>;
671
+ retryDelay: z.ZodOptional<z.ZodNumber>;
672
+ retryableErrors: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
673
+ parallelism: z.ZodOptional<z.ZodNumber>;
674
+ earlyTermination: z.ZodOptional<z.ZodBoolean>;
675
+ minResponses: z.ZodOptional<z.ZodNumber>;
676
+ maxCost: z.ZodOptional<z.ZodNumber>;
677
+ costThreshold: z.ZodOptional<z.ZodNumber>;
678
+ enableMetrics: z.ZodOptional<z.ZodBoolean>;
679
+ enableTracing: z.ZodOptional<z.ZodBoolean>;
680
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, z.ZodTypeDef, JsonValue>>>;
681
+ }, "strip", z.ZodTypeAny, {
682
+ timeout?: number | undefined;
683
+ metadata?: Record<string, JsonValue> | undefined;
684
+ retries?: number | undefined;
685
+ retryDelay?: number | undefined;
686
+ parallelism?: number | undefined;
687
+ modelTimeout?: number | undefined;
688
+ judgeTimeout?: number | undefined;
689
+ retryableErrors?: string[] | undefined;
690
+ earlyTermination?: boolean | undefined;
691
+ minResponses?: number | undefined;
692
+ maxCost?: number | undefined;
693
+ costThreshold?: number | undefined;
694
+ enableMetrics?: boolean | undefined;
695
+ enableTracing?: boolean | undefined;
696
+ }, {
697
+ timeout?: number | undefined;
698
+ metadata?: Record<string, JsonValue> | undefined;
699
+ retries?: number | undefined;
700
+ retryDelay?: number | undefined;
701
+ parallelism?: number | undefined;
702
+ modelTimeout?: number | undefined;
703
+ judgeTimeout?: number | undefined;
704
+ retryableErrors?: string[] | undefined;
705
+ earlyTermination?: boolean | undefined;
706
+ minResponses?: number | undefined;
707
+ maxCost?: number | undefined;
708
+ costThreshold?: number | undefined;
709
+ enableMetrics?: boolean | undefined;
710
+ enableTracing?: boolean | undefined;
711
+ }>>;
712
+ tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
713
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, z.ZodTypeDef, JsonValue>>>;
714
+ createdAt: z.ZodOptional<z.ZodString>;
715
+ updatedAt: z.ZodOptional<z.ZodString>;
716
+ }, "strip", z.ZodTypeAny, {
717
+ type: "custom" | "ensemble" | "chain" | "adaptive";
718
+ name: string;
719
+ id: string;
720
+ models: {
721
+ provider: AIProviderName;
722
+ model: string;
723
+ timeout?: number | undefined;
724
+ topK?: number | undefined;
725
+ temperature?: number | undefined;
726
+ maxTokens?: number | undefined;
727
+ systemPrompt?: string | undefined;
728
+ metadata?: Record<string, JsonValue> | undefined;
729
+ topP?: number | undefined;
730
+ presencePenalty?: number | undefined;
731
+ frequencyPenalty?: number | undefined;
732
+ weight?: number | undefined;
733
+ label?: string | undefined;
734
+ }[];
735
+ execution?: {
736
+ timeout?: number | undefined;
737
+ metadata?: Record<string, JsonValue> | undefined;
738
+ retries?: number | undefined;
739
+ retryDelay?: number | undefined;
740
+ parallelism?: number | undefined;
741
+ modelTimeout?: number | undefined;
742
+ judgeTimeout?: number | undefined;
743
+ retryableErrors?: string[] | undefined;
744
+ earlyTermination?: boolean | undefined;
745
+ minResponses?: number | undefined;
746
+ maxCost?: number | undefined;
747
+ costThreshold?: number | undefined;
748
+ enableMetrics?: boolean | undefined;
749
+ enableTracing?: boolean | undefined;
750
+ } | undefined;
751
+ createdAt?: string | undefined;
752
+ updatedAt?: string | undefined;
753
+ metadata?: Record<string, JsonValue> | undefined;
754
+ version?: string | undefined;
755
+ tags?: string[] | undefined;
756
+ judge?: {
757
+ provider: AIProviderName;
758
+ model: string;
759
+ outputFormat: "detailed" | "scores" | "ranking" | "best";
760
+ criteria: string[];
761
+ includeReasoning: boolean;
762
+ scoreScale: {
763
+ min: 0;
764
+ max: 100;
765
+ };
766
+ timeout?: number | undefined;
767
+ temperature?: number | undefined;
768
+ maxTokens?: number | undefined;
769
+ systemPrompt?: string | undefined;
770
+ metadata?: Record<string, JsonValue> | undefined;
771
+ label?: string | undefined;
772
+ customPrompt?: string | undefined;
773
+ blindEvaluation?: boolean | undefined;
774
+ } | undefined;
775
+ conditioning?: {
776
+ useConfidence: boolean;
777
+ metadata?: Record<string, JsonValue> | undefined;
778
+ confidenceThresholds?: {
779
+ low: number;
780
+ medium: number;
781
+ high: number;
782
+ } | undefined;
783
+ toneAdjustment?: "neutral" | "soften" | "strengthen" | undefined;
784
+ includeMetadata?: boolean | undefined;
785
+ metadataFields?: string[] | undefined;
786
+ addConfidenceStatement?: boolean | undefined;
787
+ addModelAttribution?: boolean | undefined;
788
+ addExecutionTime?: boolean | undefined;
789
+ } | undefined;
790
+ description?: string | undefined;
791
+ modelGroups?: {
792
+ id: string;
793
+ models: {
794
+ provider: AIProviderName;
795
+ model: string;
796
+ timeout?: number | undefined;
797
+ topK?: number | undefined;
798
+ temperature?: number | undefined;
799
+ maxTokens?: number | undefined;
800
+ systemPrompt?: string | undefined;
801
+ metadata?: Record<string, JsonValue> | undefined;
802
+ topP?: number | undefined;
803
+ presencePenalty?: number | undefined;
804
+ frequencyPenalty?: number | undefined;
805
+ weight?: number | undefined;
806
+ label?: string | undefined;
807
+ }[];
808
+ executionStrategy: "parallel" | "sequential";
809
+ continueOnFailure: boolean;
810
+ minSuccessful: number;
811
+ timeout?: number | undefined;
812
+ name?: string | undefined;
813
+ metadata?: Record<string, JsonValue> | undefined;
814
+ description?: string | undefined;
815
+ parallelism?: number | undefined;
816
+ }[] | undefined;
817
+ defaultSystemPrompt?: string | undefined;
818
+ defaultJudgePrompt?: string | undefined;
819
+ judges?: {
820
+ provider: AIProviderName;
821
+ model: string;
822
+ outputFormat: "detailed" | "scores" | "ranking" | "best";
823
+ criteria: string[];
824
+ includeReasoning: boolean;
825
+ scoreScale: {
826
+ min: 0;
827
+ max: 100;
828
+ };
829
+ timeout?: number | undefined;
830
+ temperature?: number | undefined;
831
+ maxTokens?: number | undefined;
832
+ systemPrompt?: string | undefined;
833
+ metadata?: Record<string, JsonValue> | undefined;
834
+ label?: string | undefined;
835
+ customPrompt?: string | undefined;
836
+ blindEvaluation?: boolean | undefined;
837
+ }[] | undefined;
838
+ }, {
839
+ type: "custom" | "ensemble" | "chain" | "adaptive";
840
+ name: string;
841
+ id: string;
842
+ models: {
843
+ provider: string;
844
+ model: string;
845
+ timeout?: number | undefined;
846
+ topK?: number | undefined;
847
+ temperature?: number | undefined;
848
+ maxTokens?: number | undefined;
849
+ systemPrompt?: string | undefined;
850
+ metadata?: Record<string, JsonValue> | undefined;
851
+ topP?: number | undefined;
852
+ presencePenalty?: number | undefined;
853
+ frequencyPenalty?: number | undefined;
854
+ weight?: number | undefined;
855
+ label?: string | undefined;
856
+ }[];
857
+ execution?: {
858
+ timeout?: number | undefined;
859
+ metadata?: Record<string, JsonValue> | undefined;
860
+ retries?: number | undefined;
861
+ retryDelay?: number | undefined;
862
+ parallelism?: number | undefined;
863
+ modelTimeout?: number | undefined;
864
+ judgeTimeout?: number | undefined;
865
+ retryableErrors?: string[] | undefined;
866
+ earlyTermination?: boolean | undefined;
867
+ minResponses?: number | undefined;
868
+ maxCost?: number | undefined;
869
+ costThreshold?: number | undefined;
870
+ enableMetrics?: boolean | undefined;
871
+ enableTracing?: boolean | undefined;
872
+ } | undefined;
873
+ createdAt?: string | undefined;
874
+ updatedAt?: string | undefined;
875
+ metadata?: Record<string, JsonValue> | undefined;
876
+ version?: string | undefined;
877
+ tags?: string[] | undefined;
878
+ judge?: {
879
+ provider: string;
880
+ model: string;
881
+ outputFormat: "detailed" | "scores" | "ranking" | "best";
882
+ criteria: string[];
883
+ includeReasoning: boolean;
884
+ scoreScale: {
885
+ min: 0;
886
+ max: 100;
887
+ };
888
+ timeout?: number | undefined;
889
+ temperature?: number | undefined;
890
+ maxTokens?: number | undefined;
891
+ systemPrompt?: string | undefined;
892
+ metadata?: Record<string, JsonValue> | undefined;
893
+ label?: string | undefined;
894
+ customPrompt?: string | undefined;
895
+ blindEvaluation?: boolean | undefined;
896
+ } | undefined;
897
+ conditioning?: {
898
+ useConfidence: boolean;
899
+ metadata?: Record<string, JsonValue> | undefined;
900
+ confidenceThresholds?: {
901
+ low: number;
902
+ medium: number;
903
+ high: number;
904
+ } | undefined;
905
+ toneAdjustment?: "neutral" | "soften" | "strengthen" | undefined;
906
+ includeMetadata?: boolean | undefined;
907
+ metadataFields?: string[] | undefined;
908
+ addConfidenceStatement?: boolean | undefined;
909
+ addModelAttribution?: boolean | undefined;
910
+ addExecutionTime?: boolean | undefined;
911
+ } | undefined;
912
+ description?: string | undefined;
913
+ modelGroups?: {
914
+ id: string;
915
+ models: {
916
+ provider: string;
917
+ model: string;
918
+ timeout?: number | undefined;
919
+ topK?: number | undefined;
920
+ temperature?: number | undefined;
921
+ maxTokens?: number | undefined;
922
+ systemPrompt?: string | undefined;
923
+ metadata?: Record<string, JsonValue> | undefined;
924
+ topP?: number | undefined;
925
+ presencePenalty?: number | undefined;
926
+ frequencyPenalty?: number | undefined;
927
+ weight?: number | undefined;
928
+ label?: string | undefined;
929
+ }[];
930
+ executionStrategy: "parallel" | "sequential";
931
+ timeout?: number | undefined;
932
+ name?: string | undefined;
933
+ metadata?: Record<string, JsonValue> | undefined;
934
+ description?: string | undefined;
935
+ continueOnFailure?: boolean | undefined;
936
+ minSuccessful?: number | undefined;
937
+ parallelism?: number | undefined;
938
+ }[] | undefined;
939
+ defaultSystemPrompt?: string | undefined;
940
+ defaultJudgePrompt?: string | undefined;
941
+ judges?: {
942
+ provider: string;
943
+ model: string;
944
+ outputFormat: "detailed" | "scores" | "ranking" | "best";
945
+ criteria: string[];
946
+ includeReasoning: boolean;
947
+ scoreScale: {
948
+ min: 0;
949
+ max: 100;
950
+ };
951
+ timeout?: number | undefined;
952
+ temperature?: number | undefined;
953
+ maxTokens?: number | undefined;
954
+ systemPrompt?: string | undefined;
955
+ metadata?: Record<string, JsonValue> | undefined;
956
+ label?: string | undefined;
957
+ customPrompt?: string | undefined;
958
+ blindEvaluation?: boolean | undefined;
959
+ }[] | undefined;
960
+ }>, {
961
+ type: "custom" | "ensemble" | "chain" | "adaptive";
962
+ name: string;
963
+ id: string;
964
+ models: {
965
+ provider: AIProviderName;
966
+ model: string;
967
+ timeout?: number | undefined;
968
+ topK?: number | undefined;
969
+ temperature?: number | undefined;
970
+ maxTokens?: number | undefined;
971
+ systemPrompt?: string | undefined;
972
+ metadata?: Record<string, JsonValue> | undefined;
973
+ topP?: number | undefined;
974
+ presencePenalty?: number | undefined;
975
+ frequencyPenalty?: number | undefined;
976
+ weight?: number | undefined;
977
+ label?: string | undefined;
978
+ }[];
979
+ execution?: {
980
+ timeout?: number | undefined;
981
+ metadata?: Record<string, JsonValue> | undefined;
982
+ retries?: number | undefined;
983
+ retryDelay?: number | undefined;
984
+ parallelism?: number | undefined;
985
+ modelTimeout?: number | undefined;
986
+ judgeTimeout?: number | undefined;
987
+ retryableErrors?: string[] | undefined;
988
+ earlyTermination?: boolean | undefined;
989
+ minResponses?: number | undefined;
990
+ maxCost?: number | undefined;
991
+ costThreshold?: number | undefined;
992
+ enableMetrics?: boolean | undefined;
993
+ enableTracing?: boolean | undefined;
994
+ } | undefined;
995
+ createdAt?: string | undefined;
996
+ updatedAt?: string | undefined;
997
+ metadata?: Record<string, JsonValue> | undefined;
998
+ version?: string | undefined;
999
+ tags?: string[] | undefined;
1000
+ judge?: {
1001
+ provider: AIProviderName;
1002
+ model: string;
1003
+ outputFormat: "detailed" | "scores" | "ranking" | "best";
1004
+ criteria: string[];
1005
+ includeReasoning: boolean;
1006
+ scoreScale: {
1007
+ min: 0;
1008
+ max: 100;
1009
+ };
1010
+ timeout?: number | undefined;
1011
+ temperature?: number | undefined;
1012
+ maxTokens?: number | undefined;
1013
+ systemPrompt?: string | undefined;
1014
+ metadata?: Record<string, JsonValue> | undefined;
1015
+ label?: string | undefined;
1016
+ customPrompt?: string | undefined;
1017
+ blindEvaluation?: boolean | undefined;
1018
+ } | undefined;
1019
+ conditioning?: {
1020
+ useConfidence: boolean;
1021
+ metadata?: Record<string, JsonValue> | undefined;
1022
+ confidenceThresholds?: {
1023
+ low: number;
1024
+ medium: number;
1025
+ high: number;
1026
+ } | undefined;
1027
+ toneAdjustment?: "neutral" | "soften" | "strengthen" | undefined;
1028
+ includeMetadata?: boolean | undefined;
1029
+ metadataFields?: string[] | undefined;
1030
+ addConfidenceStatement?: boolean | undefined;
1031
+ addModelAttribution?: boolean | undefined;
1032
+ addExecutionTime?: boolean | undefined;
1033
+ } | undefined;
1034
+ description?: string | undefined;
1035
+ modelGroups?: {
1036
+ id: string;
1037
+ models: {
1038
+ provider: AIProviderName;
1039
+ model: string;
1040
+ timeout?: number | undefined;
1041
+ topK?: number | undefined;
1042
+ temperature?: number | undefined;
1043
+ maxTokens?: number | undefined;
1044
+ systemPrompt?: string | undefined;
1045
+ metadata?: Record<string, JsonValue> | undefined;
1046
+ topP?: number | undefined;
1047
+ presencePenalty?: number | undefined;
1048
+ frequencyPenalty?: number | undefined;
1049
+ weight?: number | undefined;
1050
+ label?: string | undefined;
1051
+ }[];
1052
+ executionStrategy: "parallel" | "sequential";
1053
+ continueOnFailure: boolean;
1054
+ minSuccessful: number;
1055
+ timeout?: number | undefined;
1056
+ name?: string | undefined;
1057
+ metadata?: Record<string, JsonValue> | undefined;
1058
+ description?: string | undefined;
1059
+ parallelism?: number | undefined;
1060
+ }[] | undefined;
1061
+ defaultSystemPrompt?: string | undefined;
1062
+ defaultJudgePrompt?: string | undefined;
1063
+ judges?: {
1064
+ provider: AIProviderName;
1065
+ model: string;
1066
+ outputFormat: "detailed" | "scores" | "ranking" | "best";
1067
+ criteria: string[];
1068
+ includeReasoning: boolean;
1069
+ scoreScale: {
1070
+ min: 0;
1071
+ max: 100;
1072
+ };
1073
+ timeout?: number | undefined;
1074
+ temperature?: number | undefined;
1075
+ maxTokens?: number | undefined;
1076
+ systemPrompt?: string | undefined;
1077
+ metadata?: Record<string, JsonValue> | undefined;
1078
+ label?: string | undefined;
1079
+ customPrompt?: string | undefined;
1080
+ blindEvaluation?: boolean | undefined;
1081
+ }[] | undefined;
1082
+ }, {
1083
+ type: "custom" | "ensemble" | "chain" | "adaptive";
1084
+ name: string;
1085
+ id: string;
1086
+ models: {
1087
+ provider: string;
1088
+ model: string;
1089
+ timeout?: number | undefined;
1090
+ topK?: number | undefined;
1091
+ temperature?: number | undefined;
1092
+ maxTokens?: number | undefined;
1093
+ systemPrompt?: string | undefined;
1094
+ metadata?: Record<string, JsonValue> | undefined;
1095
+ topP?: number | undefined;
1096
+ presencePenalty?: number | undefined;
1097
+ frequencyPenalty?: number | undefined;
1098
+ weight?: number | undefined;
1099
+ label?: string | undefined;
1100
+ }[];
1101
+ execution?: {
1102
+ timeout?: number | undefined;
1103
+ metadata?: Record<string, JsonValue> | undefined;
1104
+ retries?: number | undefined;
1105
+ retryDelay?: number | undefined;
1106
+ parallelism?: number | undefined;
1107
+ modelTimeout?: number | undefined;
1108
+ judgeTimeout?: number | undefined;
1109
+ retryableErrors?: string[] | undefined;
1110
+ earlyTermination?: boolean | undefined;
1111
+ minResponses?: number | undefined;
1112
+ maxCost?: number | undefined;
1113
+ costThreshold?: number | undefined;
1114
+ enableMetrics?: boolean | undefined;
1115
+ enableTracing?: boolean | undefined;
1116
+ } | undefined;
1117
+ createdAt?: string | undefined;
1118
+ updatedAt?: string | undefined;
1119
+ metadata?: Record<string, JsonValue> | undefined;
1120
+ version?: string | undefined;
1121
+ tags?: string[] | undefined;
1122
+ judge?: {
1123
+ provider: string;
1124
+ model: string;
1125
+ outputFormat: "detailed" | "scores" | "ranking" | "best";
1126
+ criteria: string[];
1127
+ includeReasoning: boolean;
1128
+ scoreScale: {
1129
+ min: 0;
1130
+ max: 100;
1131
+ };
1132
+ timeout?: number | undefined;
1133
+ temperature?: number | undefined;
1134
+ maxTokens?: number | undefined;
1135
+ systemPrompt?: string | undefined;
1136
+ metadata?: Record<string, JsonValue> | undefined;
1137
+ label?: string | undefined;
1138
+ customPrompt?: string | undefined;
1139
+ blindEvaluation?: boolean | undefined;
1140
+ } | undefined;
1141
+ conditioning?: {
1142
+ useConfidence: boolean;
1143
+ metadata?: Record<string, JsonValue> | undefined;
1144
+ confidenceThresholds?: {
1145
+ low: number;
1146
+ medium: number;
1147
+ high: number;
1148
+ } | undefined;
1149
+ toneAdjustment?: "neutral" | "soften" | "strengthen" | undefined;
1150
+ includeMetadata?: boolean | undefined;
1151
+ metadataFields?: string[] | undefined;
1152
+ addConfidenceStatement?: boolean | undefined;
1153
+ addModelAttribution?: boolean | undefined;
1154
+ addExecutionTime?: boolean | undefined;
1155
+ } | undefined;
1156
+ description?: string | undefined;
1157
+ modelGroups?: {
1158
+ id: string;
1159
+ models: {
1160
+ provider: string;
1161
+ model: string;
1162
+ timeout?: number | undefined;
1163
+ topK?: number | undefined;
1164
+ temperature?: number | undefined;
1165
+ maxTokens?: number | undefined;
1166
+ systemPrompt?: string | undefined;
1167
+ metadata?: Record<string, JsonValue> | undefined;
1168
+ topP?: number | undefined;
1169
+ presencePenalty?: number | undefined;
1170
+ frequencyPenalty?: number | undefined;
1171
+ weight?: number | undefined;
1172
+ label?: string | undefined;
1173
+ }[];
1174
+ executionStrategy: "parallel" | "sequential";
1175
+ timeout?: number | undefined;
1176
+ name?: string | undefined;
1177
+ metadata?: Record<string, JsonValue> | undefined;
1178
+ description?: string | undefined;
1179
+ continueOnFailure?: boolean | undefined;
1180
+ minSuccessful?: number | undefined;
1181
+ parallelism?: number | undefined;
1182
+ }[] | undefined;
1183
+ defaultSystemPrompt?: string | undefined;
1184
+ defaultJudgePrompt?: string | undefined;
1185
+ judges?: {
1186
+ provider: string;
1187
+ model: string;
1188
+ outputFormat: "detailed" | "scores" | "ranking" | "best";
1189
+ criteria: string[];
1190
+ includeReasoning: boolean;
1191
+ scoreScale: {
1192
+ min: 0;
1193
+ max: 100;
1194
+ };
1195
+ timeout?: number | undefined;
1196
+ temperature?: number | undefined;
1197
+ maxTokens?: number | undefined;
1198
+ systemPrompt?: string | undefined;
1199
+ metadata?: Record<string, JsonValue> | undefined;
1200
+ label?: string | undefined;
1201
+ customPrompt?: string | undefined;
1202
+ blindEvaluation?: boolean | undefined;
1203
+ }[] | undefined;
1204
+ }>, {
1205
+ type: "custom" | "ensemble" | "chain" | "adaptive";
1206
+ name: string;
1207
+ id: string;
1208
+ models: {
1209
+ provider: AIProviderName;
1210
+ model: string;
1211
+ timeout?: number | undefined;
1212
+ topK?: number | undefined;
1213
+ temperature?: number | undefined;
1214
+ maxTokens?: number | undefined;
1215
+ systemPrompt?: string | undefined;
1216
+ metadata?: Record<string, JsonValue> | undefined;
1217
+ topP?: number | undefined;
1218
+ presencePenalty?: number | undefined;
1219
+ frequencyPenalty?: number | undefined;
1220
+ weight?: number | undefined;
1221
+ label?: string | undefined;
1222
+ }[];
1223
+ execution?: {
1224
+ timeout?: number | undefined;
1225
+ metadata?: Record<string, JsonValue> | undefined;
1226
+ retries?: number | undefined;
1227
+ retryDelay?: number | undefined;
1228
+ parallelism?: number | undefined;
1229
+ modelTimeout?: number | undefined;
1230
+ judgeTimeout?: number | undefined;
1231
+ retryableErrors?: string[] | undefined;
1232
+ earlyTermination?: boolean | undefined;
1233
+ minResponses?: number | undefined;
1234
+ maxCost?: number | undefined;
1235
+ costThreshold?: number | undefined;
1236
+ enableMetrics?: boolean | undefined;
1237
+ enableTracing?: boolean | undefined;
1238
+ } | undefined;
1239
+ createdAt?: string | undefined;
1240
+ updatedAt?: string | undefined;
1241
+ metadata?: Record<string, JsonValue> | undefined;
1242
+ version?: string | undefined;
1243
+ tags?: string[] | undefined;
1244
+ judge?: {
1245
+ provider: AIProviderName;
1246
+ model: string;
1247
+ outputFormat: "detailed" | "scores" | "ranking" | "best";
1248
+ criteria: string[];
1249
+ includeReasoning: boolean;
1250
+ scoreScale: {
1251
+ min: 0;
1252
+ max: 100;
1253
+ };
1254
+ timeout?: number | undefined;
1255
+ temperature?: number | undefined;
1256
+ maxTokens?: number | undefined;
1257
+ systemPrompt?: string | undefined;
1258
+ metadata?: Record<string, JsonValue> | undefined;
1259
+ label?: string | undefined;
1260
+ customPrompt?: string | undefined;
1261
+ blindEvaluation?: boolean | undefined;
1262
+ } | undefined;
1263
+ conditioning?: {
1264
+ useConfidence: boolean;
1265
+ metadata?: Record<string, JsonValue> | undefined;
1266
+ confidenceThresholds?: {
1267
+ low: number;
1268
+ medium: number;
1269
+ high: number;
1270
+ } | undefined;
1271
+ toneAdjustment?: "neutral" | "soften" | "strengthen" | undefined;
1272
+ includeMetadata?: boolean | undefined;
1273
+ metadataFields?: string[] | undefined;
1274
+ addConfidenceStatement?: boolean | undefined;
1275
+ addModelAttribution?: boolean | undefined;
1276
+ addExecutionTime?: boolean | undefined;
1277
+ } | undefined;
1278
+ description?: string | undefined;
1279
+ modelGroups?: {
1280
+ id: string;
1281
+ models: {
1282
+ provider: AIProviderName;
1283
+ model: string;
1284
+ timeout?: number | undefined;
1285
+ topK?: number | undefined;
1286
+ temperature?: number | undefined;
1287
+ maxTokens?: number | undefined;
1288
+ systemPrompt?: string | undefined;
1289
+ metadata?: Record<string, JsonValue> | undefined;
1290
+ topP?: number | undefined;
1291
+ presencePenalty?: number | undefined;
1292
+ frequencyPenalty?: number | undefined;
1293
+ weight?: number | undefined;
1294
+ label?: string | undefined;
1295
+ }[];
1296
+ executionStrategy: "parallel" | "sequential";
1297
+ continueOnFailure: boolean;
1298
+ minSuccessful: number;
1299
+ timeout?: number | undefined;
1300
+ name?: string | undefined;
1301
+ metadata?: Record<string, JsonValue> | undefined;
1302
+ description?: string | undefined;
1303
+ parallelism?: number | undefined;
1304
+ }[] | undefined;
1305
+ defaultSystemPrompt?: string | undefined;
1306
+ defaultJudgePrompt?: string | undefined;
1307
+ judges?: {
1308
+ provider: AIProviderName;
1309
+ model: string;
1310
+ outputFormat: "detailed" | "scores" | "ranking" | "best";
1311
+ criteria: string[];
1312
+ includeReasoning: boolean;
1313
+ scoreScale: {
1314
+ min: 0;
1315
+ max: 100;
1316
+ };
1317
+ timeout?: number | undefined;
1318
+ temperature?: number | undefined;
1319
+ maxTokens?: number | undefined;
1320
+ systemPrompt?: string | undefined;
1321
+ metadata?: Record<string, JsonValue> | undefined;
1322
+ label?: string | undefined;
1323
+ customPrompt?: string | undefined;
1324
+ blindEvaluation?: boolean | undefined;
1325
+ }[] | undefined;
1326
+ }, {
1327
+ type: "custom" | "ensemble" | "chain" | "adaptive";
1328
+ name: string;
1329
+ id: string;
1330
+ models: {
1331
+ provider: string;
1332
+ model: string;
1333
+ timeout?: number | undefined;
1334
+ topK?: number | undefined;
1335
+ temperature?: number | undefined;
1336
+ maxTokens?: number | undefined;
1337
+ systemPrompt?: string | undefined;
1338
+ metadata?: Record<string, JsonValue> | undefined;
1339
+ topP?: number | undefined;
1340
+ presencePenalty?: number | undefined;
1341
+ frequencyPenalty?: number | undefined;
1342
+ weight?: number | undefined;
1343
+ label?: string | undefined;
1344
+ }[];
1345
+ execution?: {
1346
+ timeout?: number | undefined;
1347
+ metadata?: Record<string, JsonValue> | undefined;
1348
+ retries?: number | undefined;
1349
+ retryDelay?: number | undefined;
1350
+ parallelism?: number | undefined;
1351
+ modelTimeout?: number | undefined;
1352
+ judgeTimeout?: number | undefined;
1353
+ retryableErrors?: string[] | undefined;
1354
+ earlyTermination?: boolean | undefined;
1355
+ minResponses?: number | undefined;
1356
+ maxCost?: number | undefined;
1357
+ costThreshold?: number | undefined;
1358
+ enableMetrics?: boolean | undefined;
1359
+ enableTracing?: boolean | undefined;
1360
+ } | undefined;
1361
+ createdAt?: string | undefined;
1362
+ updatedAt?: string | undefined;
1363
+ metadata?: Record<string, JsonValue> | undefined;
1364
+ version?: string | undefined;
1365
+ tags?: string[] | undefined;
1366
+ judge?: {
1367
+ provider: string;
1368
+ model: string;
1369
+ outputFormat: "detailed" | "scores" | "ranking" | "best";
1370
+ criteria: string[];
1371
+ includeReasoning: boolean;
1372
+ scoreScale: {
1373
+ min: 0;
1374
+ max: 100;
1375
+ };
1376
+ timeout?: number | undefined;
1377
+ temperature?: number | undefined;
1378
+ maxTokens?: number | undefined;
1379
+ systemPrompt?: string | undefined;
1380
+ metadata?: Record<string, JsonValue> | undefined;
1381
+ label?: string | undefined;
1382
+ customPrompt?: string | undefined;
1383
+ blindEvaluation?: boolean | undefined;
1384
+ } | undefined;
1385
+ conditioning?: {
1386
+ useConfidence: boolean;
1387
+ metadata?: Record<string, JsonValue> | undefined;
1388
+ confidenceThresholds?: {
1389
+ low: number;
1390
+ medium: number;
1391
+ high: number;
1392
+ } | undefined;
1393
+ toneAdjustment?: "neutral" | "soften" | "strengthen" | undefined;
1394
+ includeMetadata?: boolean | undefined;
1395
+ metadataFields?: string[] | undefined;
1396
+ addConfidenceStatement?: boolean | undefined;
1397
+ addModelAttribution?: boolean | undefined;
1398
+ addExecutionTime?: boolean | undefined;
1399
+ } | undefined;
1400
+ description?: string | undefined;
1401
+ modelGroups?: {
1402
+ id: string;
1403
+ models: {
1404
+ provider: string;
1405
+ model: string;
1406
+ timeout?: number | undefined;
1407
+ topK?: number | undefined;
1408
+ temperature?: number | undefined;
1409
+ maxTokens?: number | undefined;
1410
+ systemPrompt?: string | undefined;
1411
+ metadata?: Record<string, JsonValue> | undefined;
1412
+ topP?: number | undefined;
1413
+ presencePenalty?: number | undefined;
1414
+ frequencyPenalty?: number | undefined;
1415
+ weight?: number | undefined;
1416
+ label?: string | undefined;
1417
+ }[];
1418
+ executionStrategy: "parallel" | "sequential";
1419
+ timeout?: number | undefined;
1420
+ name?: string | undefined;
1421
+ metadata?: Record<string, JsonValue> | undefined;
1422
+ description?: string | undefined;
1423
+ continueOnFailure?: boolean | undefined;
1424
+ minSuccessful?: number | undefined;
1425
+ parallelism?: number | undefined;
1426
+ }[] | undefined;
1427
+ defaultSystemPrompt?: string | undefined;
1428
+ defaultJudgePrompt?: string | undefined;
1429
+ judges?: {
1430
+ provider: string;
1431
+ model: string;
1432
+ outputFormat: "detailed" | "scores" | "ranking" | "best";
1433
+ criteria: string[];
1434
+ includeReasoning: boolean;
1435
+ scoreScale: {
1436
+ min: 0;
1437
+ max: 100;
1438
+ };
1439
+ timeout?: number | undefined;
1440
+ temperature?: number | undefined;
1441
+ maxTokens?: number | undefined;
1442
+ systemPrompt?: string | undefined;
1443
+ metadata?: Record<string, JsonValue> | undefined;
1444
+ label?: string | undefined;
1445
+ customPrompt?: string | undefined;
1446
+ blindEvaluation?: boolean | undefined;
1447
+ }[] | undefined;
1448
+ }>;
1449
+ /**
1450
+ * Default conditioning configuration
1451
+ * NOTE: Testing phase - stub only, no actual conditioning applied
1452
+ */
1453
+ export declare const DEFAULT_CONDITIONING_CONFIG: ConditioningConfig;
1454
+ /**
1455
+ * Default execution configuration
1456
+ */
1457
+ export declare const DEFAULT_EXECUTION_CONFIG: ExecutionConfig;
1458
+ /**
1459
+ * Default score scale (0-100 for testing phase)
1460
+ */
1461
+ export declare const DEFAULT_SCORE_SCALE: {
1462
+ readonly min: 0;
1463
+ readonly max: 100;
1464
+ };
1465
+ /**
1466
+ * Check if workflow uses layer-based execution (modelGroups)
1467
+ * @param config - Workflow configuration
1468
+ * @returns True if modelGroups is defined and has groups
1469
+ */
1470
+ export declare function usesModelGroups(config: WorkflowConfig): boolean;
1471
+ /**
1472
+ * Get all models from workflow (either from flat array or groups)
1473
+ * @param config - Workflow configuration
1474
+ * @returns Array of all model configs
1475
+ */
1476
+ export declare function getAllModels(config: WorkflowConfig): ModelConfig[];
1477
+ /**
1478
+ * Get model groups (converts flat models to single group if needed)
1479
+ * @param config - Workflow configuration
1480
+ * @returns Array of model groups
1481
+ */
1482
+ export declare function getModelGroups(config: WorkflowConfig): ModelGroup[];
1483
+ /**
1484
+ * Default judge configuration values
1485
+ */
1486
+ export declare const DEFAULT_JUDGE_CONFIG: {
1487
+ temperature: number;
1488
+ outputFormat: "detailed";
1489
+ blindEvaluation: boolean;
1490
+ includeReasoning: boolean;
1491
+ scoreScale: {
1492
+ readonly min: 0;
1493
+ readonly max: 100;
1494
+ };
1495
+ };
1496
+ /**
1497
+ * Merge configuration with defaults
1498
+ * @param config - Workflow configuration to merge
1499
+ * @returns Complete workflow configuration with defaults applied
1500
+ */
1501
+ export declare function mergeWithDefaults(config: WorkflowConfig): WorkflowConfig;
1502
+ /**
1503
+ * Validation result for workflow configuration
1504
+ */
1505
+ export interface WorkflowConfigValidationResult {
1506
+ success: boolean;
1507
+ data?: WorkflowConfig;
1508
+ error?: z.ZodError;
1509
+ }
1510
+ /**
1511
+ * Validate workflow configuration
1512
+ * @param config - Partial workflow configuration to validate
1513
+ * @returns Validation result with parsed data or error details
1514
+ */
1515
+ export declare function validateWorkflowConfig(config: Partial<WorkflowConfig>): WorkflowConfigValidationResult;
1516
+ /**
1517
+ * Create workflow configuration from partial
1518
+ * @param partial - Partial configuration with required fields (id, name, type, models)
1519
+ * @returns Complete workflow configuration with defaults applied
1520
+ */
1521
+ export declare function createWorkflowConfig(partial: Partial<WorkflowConfig> & Pick<WorkflowConfig, "id" | "name" | "type" | "models">): WorkflowConfig;
1522
+ /**
1523
+ * Validation result for model configuration
1524
+ */
1525
+ export interface ModelConfigValidationResult {
1526
+ success: boolean;
1527
+ data?: ModelConfig;
1528
+ error?: z.ZodError;
1529
+ }
1530
+ /**
1531
+ * Validate model configuration
1532
+ * @param config - Partial model configuration to validate
1533
+ * @returns Validation result with parsed data or error details
1534
+ */
1535
+ export declare function validateModelConfig(config: Partial<ModelConfig>): ModelConfigValidationResult;
1536
+ /**
1537
+ * Validation result for judge configuration
1538
+ */
1539
+ export interface JudgeConfigValidationResult {
1540
+ success: boolean;
1541
+ data?: JudgeConfig;
1542
+ error?: z.ZodError;
1543
+ }
1544
+ /**
1545
+ * Validate judge configuration
1546
+ * @param config - Partial judge configuration to validate
1547
+ * @returns Validation result with parsed data or error details
1548
+ */
1549
+ export declare function validateJudgeConfig(config: Partial<JudgeConfig>): JudgeConfigValidationResult;
1550
+ /**
1551
+ * Check if workflow has judge configuration
1552
+ * @param config - Workflow configuration to check
1553
+ * @returns True if workflow has at least one judge configured
1554
+ */
1555
+ export declare function hasJudge(config: WorkflowConfig): boolean;
1556
+ /**
1557
+ * Get all judges from workflow configuration
1558
+ * @param config - Workflow configuration
1559
+ * @returns Array of all judge configurations (empty if none)
1560
+ */
1561
+ export declare function getAllJudges(config: WorkflowConfig): JudgeConfig[];
1562
+ /**
1563
+ * Calculate estimated workflow cost (placeholder)
1564
+ * TODO: Implement actual provider-specific pricing
1565
+ * @param config - Workflow configuration
1566
+ * @param estimatedTokens - Estimated number of tokens for the request
1567
+ * @returns Estimated cost in USD
1568
+ */
1569
+ export declare function estimateWorkflowCost(config: WorkflowConfig, estimatedTokens: number): number;