UNPKG

n8n

Version:

n8n Workflow Automation Tool

32 lines (31 loc) 1.85 kB
import { BreakingChangeInstanceRuleResult, BreakingChangeReportResult, BreakingChangeVersion, BreakingChangeWorkflowRuleResult } from '@n8n/api-types'; import { Logger } from '@n8n/backend-common'; import { WorkflowRepository } from '@n8n/db'; import { ErrorReporter } from 'n8n-core'; import { RuleRegistry } from './breaking-changes.rule-registry.service'; import type { IBreakingChangeInstanceRule } from './types'; import { CacheService } from '../../services/cache/cache.service'; export declare class BreakingChangeService { private readonly ruleRegistry; private readonly workflowRepository; private readonly cacheService; private readonly logger; private readonly errorReporter; private readonly batchSize; private static readonly REPORT_DURATION_CACHE_THRESHOLD; private static readonly CACHE_KEY_PREFIX; private readonly ongoingDetections; constructor(ruleRegistry: RuleRegistry, workflowRepository: WorkflowRepository, cacheService: CacheService, logger: Logger, errorReporter: ErrorReporter); registerRules(): void; getAllInstanceRulesResults(instanceLevelRules: IBreakingChangeInstanceRule[]): Promise<BreakingChangeInstanceRuleResult[]>; private groupNodesByType; private aggregateRegularRuleResults; private aggregateBatchRuleResults; private getAllWorkflowRulesResults; refreshDetectionResults(targetVersion: BreakingChangeVersion): Promise<BreakingChangeReportResult>; getDetectionResults(targetVersion: BreakingChangeVersion): Promise<BreakingChangeReportResult>; private shouldCacheDetection; detect(targetVersion: BreakingChangeVersion): Promise<BreakingChangeReportResult>; getDetectionReportForRule(ruleId: string): Promise<BreakingChangeInstanceRuleResult | BreakingChangeWorkflowRuleResult | undefined>; private createDetectionReport; }