UNPKG

codecrucible-synth

Version:

Production-Ready AI Development Platform with Multi-Voice Synthesis, Smithery MCP Integration, Enterprise Security, and Zero-Timeout Reliability

87 lines 2.23 kB
/** * Database Migration Manager - Enterprise Grade Versioning System * Extends existing database-manager.ts with migration capabilities */ import { ProductionDatabaseManager as DatabaseManager } from './production-database-manager.js'; export interface Migration { version: string; name: string; description: string; up: string; down: string; checksum: string; appliedAt?: Date; } export interface MigrationResult { success: boolean; version: string; error?: string; duration: number; } /** * Migration Manager for CodeCrucible Database * Works WITH existing DatabaseManager, not against it */ export declare class MigrationManager { private dbManager; private migrationsPath; constructor(dbManager: DatabaseManager, migrationsPath?: string); /** * Initialize migration tracking table */ initialize(): Promise<void>; /** * Get all pending migrations */ getPendingMigrations(): Promise<Migration[]>; /** * Get applied migrations from database */ getAppliedMigrations(): Promise<Migration[]>; /** * Load migration files from disk */ private loadMigrations; /** * Run all pending migrations */ migrate(): Promise<MigrationResult[]>; /** * Run a single migration */ private runMigration; /** * Rollback last migration */ rollback(): Promise<MigrationResult>; /** * Get migration status */ getStatus(): Promise<{ currentVersion: string | null; pendingCount: number; appliedCount: number; appliedMigrations: Migration[]; pendingMigrations: Migration[]; }>; /** * Validate all applied migrations */ validateMigrations(): Promise<{ valid: boolean; issues: string[]; }>; /** * Create a new migration file template */ createMigration(name: string, description?: string): Promise<string>; /** * Calculate checksum for migration content */ private calculateChecksum; /** * Get database schema version */ getSchemaVersion(): Promise<string | null>; } //# sourceMappingURL=migration-manager.d.ts.map