/** * Regression Vault Integration * * Integrates regression data storage and retrieval with the Evidence Vault. */ import type { Database } from 'sqlite3'; import type { RegressionDetection } from './types.js'; /** * Regression Vault class */ export declare class RegressionVault { private db; private dbRun; private dbAll; private dbGet; constructor(db: Database); /** * Initialize regression tables */ initialize(): Promise; /** * Store a regression detection */ storeRegression(regression: RegressionDetection): Promise; /** * Store multiple regressions */ storeRegressions(regressions: RegressionDetection[]): Promise; /** * Get regressions by run ID */ getRegressionsByRun(runId: string): Promise; /** * Get regressions by type */ getRegressionsByType(type: string, limit?: number): Promise; /** * Get regressions by severity */ getRegressionsBySeverity(severity: string, limit?: number): Promise; /** * Get regressions by status */ getRegressionsByStatus(status: string, limit?: number): Promise; /** * Get recent regressions */ getRecentRegressions(limit?: number): Promise; /** * Get regressions for a metric */ getRegressionsByMetric(metricName: string, limit?: number): Promise; /** * Update regression status */ updateRegressionStatus(id: string, status: RegressionDetection['status'], notes?: string): Promise; /** * Store regression snapshot */ storeSnapshot(runId: string, metricName: string, value: number, baselineValue?: number): Promise; /** * Get metric history for trend analysis */ getMetricHistory(metricName: string, limit?: number): Promise>; /** * Get regression statistics */ getStatistics(): Promise<{ total: number; bySeverity: Record; byType: Record; byStatus: Record; recent: number; }>; /** * Delete old regressions */ deleteOldRegressions(olderThanMs: number): Promise; /** * Map database rows to RegressionDetection objects */ private mapRowsToDetections; }