Skip to content

agents / Exports / BaseWorkflowValidator

Class: BaseWorkflowValidator<TWorkflowData>

Base Workflow Validator Abstract Class

Provides common functionality for all workflow validators:

  • Statistics tracking
  • Logging with dependency injection
  • Rule management and configuration
  • Performance monitoring
  • Enable/disable functionality
  • Common validation utilities

Type parameters

NameTypeDescription
TWorkflowDataextends WorkflowDataType of workflow data to validate

Hierarchy

Implements

Table of contents

Constructors

Properties

Methods

Constructors

constructor

new BaseWorkflowValidator<TWorkflowData>(options?): BaseWorkflowValidator<TWorkflowData>

Constructor following BaseModule pattern

Type parameters

NameType
TWorkflowDataextends WorkflowData

Parameters

NameTypeDescription
optionsBaseWorkflowValidatorOptionsValidator configuration options

Returns

BaseWorkflowValidator<TWorkflowData>

Defined in

packages/agents/src/abstracts/base-workflow-validator.ts:114

Properties

name

Readonly Abstract name: string

Validator name for identification

Implementation of

WorkflowValidatorInterface.name

Defined in

packages/agents/src/abstracts/base-workflow-validator.ts:78


version

Readonly Abstract version: string

Validator version

Implementation of

WorkflowValidatorInterface.version

Defined in

packages/agents/src/abstracts/base-workflow-validator.ts:79


dataFormat

Readonly Abstract dataFormat: string

Data format that this validator handles

Implementation of

WorkflowValidatorInterface.dataFormat

Defined in

packages/agents/src/abstracts/base-workflow-validator.ts:80


availableRules

Readonly Abstract availableRules: string[]

Available validation rules

Implementation of

WorkflowValidatorInterface.availableRules

Defined in

packages/agents/src/abstracts/base-workflow-validator.ts:81


enabled

enabled: boolean

Enable/disable state following BaseModule pattern

Defined in

packages/agents/src/abstracts/base-workflow-validator.ts:84

Methods

validate

validate(data, options?): Promise<ValidationResult>

Main validation method with comprehensive error handling and metrics

Parameters

NameTypeDescription
dataTWorkflowDataWorkflow data to validate
optionsValidationOptionsValidation options

Returns

Promise<ValidationResult>

Promise resolving to validation result

Implementation of

WorkflowValidatorInterface.validate

Defined in

packages/agents/src/abstracts/base-workflow-validator.ts:135


validateRule

validateRule(data, rule, options?): Promise<ValidationResult>

Validate specific rule

Parameters

NameTypeDescription
dataTWorkflowDataWorkflow data to validate
rulestringSpecific rule to apply
optionsValidationOptionsValidation options

Returns

Promise<ValidationResult>

Promise resolving to validation result for this rule

Implementation of

WorkflowValidatorInterface.validateRule

Defined in

packages/agents/src/abstracts/base-workflow-validator.ts:228


canValidate

canValidate(data): data is TWorkflowData

Default implementation for checking if validator can handle data Should be overridden by subclasses for specific type checking

Parameters

NameTypeDescription
dataWorkflowDataData to check

Returns

data is TWorkflowData

True if validator can handle this data

Implementation of

WorkflowValidatorInterface.canValidate

Defined in

packages/agents/src/abstracts/base-workflow-validator.ts:276


getRuleDescriptions

getRuleDescriptions(): Map<string, { description: string ; severity: ValidationSeverity ; category: string ; enabled: boolean }>

Get available validation rules with descriptions

Returns

Map<string, { description: string ; severity: ValidationSeverity ; category: string ; enabled: boolean }>

Map of rule names to descriptions

Implementation of

WorkflowValidatorInterface.getRuleDescriptions

Defined in

packages/agents/src/abstracts/base-workflow-validator.ts:286


configureRules

configureRules(rules): void

Enable or disable specific validation rules

Parameters

NameTypeDescription
rulesMap<string, boolean>Map of rule names to enabled status

Returns

void

Implementation of

WorkflowValidatorInterface.configureRules

Defined in

packages/agents/src/abstracts/base-workflow-validator.ts:314


autoRecover

autoRecover(data, issues): Promise<{ recoveredData: TWorkflowData ; recoveryResult: { success: boolean ; issuesFixed: ValidationIssue[] ; remainingIssues: ValidationIssue[] ; appliedFixes: string[] } }>

Default auto-recovery implementation Can be overridden by subclasses for specific recovery strategies

Parameters

NameTypeDescription
dataTWorkflowDataOriginal workflow data
issuesValidationIssue[]Validation issues to recover from

Returns

Promise<{ recoveredData: TWorkflowData ; recoveryResult: { success: boolean ; issuesFixed: ValidationIssue[] ; remainingIssues: ValidationIssue[] ; appliedFixes: string[] } }>

Promise resolving to recovered data and recovery result

Implementation of

WorkflowValidatorInterface.autoRecover

Defined in

packages/agents/src/abstracts/base-workflow-validator.ts:334


getStats

getStats(): Object

Get validator statistics

Returns

Object

Validator performance metrics

NameType
totalValidationsnumber
successfulValidationsnumber
failedValidationsnumber
averageProcessingTimenumber
averageIssueCountnumber
mostCommonIssues{ rule: string ; count: number ; severity: ValidationSeverity }[]
lastValidationAtundefined | Date

Implementation of

WorkflowValidatorInterface.getStats

Defined in

packages/agents/src/abstracts/base-workflow-validator.ts:361


resetStats

resetStats(): void

Reset validator statistics

Returns

void

Implementation of

WorkflowValidatorInterface.resetStats

Defined in

packages/agents/src/abstracts/base-workflow-validator.ts:392

Released under the MIT License.