/** * Agentic QE v3 - Contract Testing Coordinator * Orchestrates the contract testing workflow across services */ import { Result } from '../../shared/types/index.js'; import { FilePath } from '../../shared/value-objects/index.js'; import type { EventBus, MemoryBackend, AgentCoordinator } from '../../kernel/interfaces.js'; import type { IContractTestingCoordinator, ApiContract, ProviderVerificationReport, PreReleaseReport } from './interfaces.js'; /** * Contract Testing Events */ export declare const ContractTestingEvents: { readonly ContractVerified: "contract-testing.ContractVerified"; readonly BreakingChangeDetected: "contract-testing.BreakingChangeDetected"; readonly ContractPublished: "contract-testing.ContractPublished"; readonly ConsumerContractCreated: "contract-testing.ConsumerContractCreated"; readonly VerificationFailed: "contract-testing.VerificationFailed"; }; /** * Workflow status tracking */ export interface WorkflowStatus { id: string; type: 'verify' | 'compare' | 'import' | 'export'; status: 'pending' | 'running' | 'completed' | 'failed'; startedAt: Date; completedAt?: Date; agentIds: string[]; progress: number; error?: string; } /** * Coordinator configuration */ export interface CoordinatorConfig { maxConcurrentWorkflows: number; defaultTimeout: number; enableAutoVerification: boolean; publishEvents: boolean; } /** * Contract Testing Coordinator * Orchestrates contract testing workflows and coordinates with agents */ export declare class ContractTestingCoordinator implements IContractTestingCoordinator { private readonly eventBus; private readonly memory; private readonly agentCoordinator; private readonly config; private readonly contractValidator; private readonly apiCompatibility; private readonly httpClient; private readonly fileReader; private readonly workflows; private readonly contractStore; private initialized; constructor(eventBus: EventBus, memory: MemoryBackend, agentCoordinator: AgentCoordinator, config?: Partial); /** * Initialize the coordinator */ initialize(): Promise; /** * Dispose and cleanup */ dispose(): Promise; /** * Get active workflow statuses */ getActiveWorkflows(): WorkflowStatus[]; /** * Register new contract */ registerContract(contract: ApiContract): Promise>; /** * Verify all consumer contracts for provider */ verifyAllConsumers(providerName: string, providerUrl: string): Promise>; /** * Check for breaking changes before release */ preReleaseCheck(providerName: string, newContractPath: FilePath): Promise>; /** * Generate contract from OpenAPI spec */ importFromOpenAPI(specPath: FilePath): Promise>; /** * Export contract to OpenAPI spec */ exportToOpenAPI(contractId: string): Promise>; private verifyConsumerContract; private verifyEndpoint; private findContractsByProvider; private loadContractFromPath; private loadFileContent; private parseOpenAPIToContract; private extractRequestSchema; private extractResponseSchema; private contractToOpenAPI; private spawnVerificationAgent; private publishContractRegistered; private publishContractVerified; private publishVerificationFailed; private publishBreakingChangeDetected; private startWorkflow; private completeWorkflow; private failWorkflow; private addAgentToWorkflow; private updateWorkflowProgress; private subscribeToEvents; private handleImpactAnalysis; private loadContracts; private saveContracts; } //# sourceMappingURL=coordinator.d.ts.map