/** * CI Pipeline Service * * Integrates with GitHub Actions to provide build awareness */ import type { TestFailure, BuildHistoryEntry, CIValidationResult, CIStatusSummary, FailurePattern, CIPipelineOptions } from "../types/ci-pipeline.js"; /** * Service for CI/CD pipeline awareness and build status tracking. * * Integrates with GitHub Actions to track build status, analyze test failures, * and validate changes against historical failure patterns. */ export declare class CIPipelineService { private projectRoot; private readonly historyPath; private readonly failurePatternsPath; /** * @param projectRoot - Root directory of the project */ constructor(projectRoot: string); /** * Check if gh CLI is available */ private isGhAvailable; /** * Execute gh CLI command */ private executeGh; /** * Get current CI status */ getStatus(options?: CIPipelineOptions): Promise; /** * Get failing tests from recent runs */ getFailures(options?: CIPipelineOptions): Promise; /** * Get build history for specific files */ getHistory(files: string[], options?: CIPipelineOptions): Promise; /** * Validate changes against CI history */ validateChanges(files: string[]): Promise; /** * Get file change impact based on failure history */ private getFileImpact; /** * Get run logs */ private getRunLogs; /** * Parse test failures from logs */ private parseTestFailures; /** * Get current branch */ private getCurrentBranch; /** * Get repository name */ private getRepoName; /** * Get files changed in a commit */ private getCommitFiles; /** * Calculate duration between two timestamps */ private calculateDuration; /** * Map workflow run from gh CLI format */ private mapWorkflowRun; /** * Map status string to BuildStatus */ private mapStatus; /** * Map conclusion string to WorkflowConclusion */ private mapConclusion; /** * Save history to local file */ private saveHistory; /** * Load failure patterns from local file */ private loadFailurePatterns; /** * Record a failure pattern for learning */ recordFailurePattern(pattern: FailurePattern): Promise; } //# sourceMappingURL=ci-pipeline-service.d.ts.map