MCPcopy Index your code
hub / github.com/simstudioai/sim / executeValidation

Function executeValidation

apps/sim/app/api/guardrails/validate/route.ts:310–399  ·  view source on GitHub ↗

* Execute validation using TypeScript validators

(
  validationType: string,
  inputStr: string,
  regex: string | undefined,
  knowledgeBaseId: string | undefined,
  threshold: string | undefined,
  topK: string | undefined,
  model: string | undefined,
  apiKey: string | undefined,
  providerCredentials: {
    azureEndpoint?: string
    azureApiVersion?: string
    vertexProject?: string
    vertexLocation?: string
    vertexCredential?: string
    bedrockAccessKeyId?: string
    bedrockSecretKey?: string
    bedrockRegion?: string
  },
  workflowId: string | undefined,
  workspaceId: string | undefined,
  piiEntityTypes: string[] | undefined,
  piiMode: string | undefined,
  piiLanguage: string | undefined,
  authHeaders: { cookie?: string; authorization?: string } | undefined,
  requestId: string
)

Source from the content-addressed store, hash-verified

308 * Execute validation using TypeScript validators
309 */
310async function executeValidation(
311 validationType: string,
312 inputStr: string,
313 regex: string | undefined,
314 knowledgeBaseId: string | undefined,
315 threshold: string | undefined,
316 topK: string | undefined,
317 model: string | undefined,
318 apiKey: string | undefined,
319 providerCredentials: {
320 azureEndpoint?: string
321 azureApiVersion?: string
322 vertexProject?: string
323 vertexLocation?: string
324 vertexCredential?: string
325 bedrockAccessKeyId?: string
326 bedrockSecretKey?: string
327 bedrockRegion?: string
328 },
329 workflowId: string | undefined,
330 workspaceId: string | undefined,
331 piiEntityTypes: string[] | undefined,
332 piiMode: string | undefined,
333 piiLanguage: string | undefined,
334 authHeaders: { cookie?: string; authorization?: string } | undefined,
335 requestId: string
336): Promise<{
337 passed: boolean
338 error?: string
339 score?: number
340 reasoning?: string
341 detectedEntities?: any[]
342 maskedText?: string
343 cost?: number
344}> {
345 // Use TypeScript validators for all validation types
346 if (validationType === 'json') {
347 return validateJson(inputStr)
348 }
349 if (validationType === 'regex') {
350 if (!regex) {
351 return {
352 passed: false,
353 error: 'Regex pattern is required',
354 }
355 }
356 return validateRegex(inputStr, regex)
357 }
358 if (validationType === 'hallucination') {
359 if (!knowledgeBaseId) {
360 return {
361 passed: false,
362 error: 'Knowledge base ID is required for hallucination check',
363 }
364 }
365 if (!model) {
366 return {
367 passed: false,

Callers 1

route.tsFile · 0.85

Calls 4

validateJsonFunction · 0.90
validateRegexFunction · 0.90
validateHallucinationFunction · 0.90
validatePIIFunction · 0.90

Tested by

no test coverage detected