Files
livedash-node/scripts/migration
Kaj Kowalski e2301725a3 feat: complete development environment setup and code quality improvements
- Set up pre-commit hooks with husky and lint-staged for automated code quality
- Improved TypeScript type safety by replacing 'any' types with proper generics
- Fixed markdown linting violations (MD030 spacing) across all documentation
- Fixed compound adjective hyphenation in technical documentation
- Fixed invalid JSON union syntax in API documentation examples
- Automated code formatting and linting on commit
- Enhanced error handling with better type constraints
- Configured biome and markdownlint for consistent code style
- All changes verified with successful production build
2025-07-13 14:44:05 +02:00
..

Migration Scripts for tRPC and Batch API Integration

This directory contains comprehensive migration scripts for deploying the new architecture that includes tRPC implementation and OpenAI Batch API integration.

Migration Components

1. Database Migrations

  • 01-schema-migrations.sql - Prisma database schema migrations
  • 02-data-migrations.sql - Data transformation scripts
  • validate-database.ts - Database validation and health checks

2. Environment Configuration

  • environment-migration.ts - Environment variable migration guide
  • config-validator.ts - Configuration validation scripts

3. Deployment Scripts

  • deploy.ts - Main deployment orchestrator
  • pre-deployment-checks.ts - Pre-deployment validation
  • post-deployment-validation.ts - Post-deployment verification
  • rollback.ts - Rollback procedures

4. Health Checks

  • health-checks.ts - Comprehensive system health validation
  • trpc-endpoint-tests.ts - tRPC endpoint validation
  • batch-processing-tests.ts - Batch processing system tests

5. Migration Utilities

  • backup-database.ts - Database backup procedures
  • restore-database.ts - Database restore procedures
  • migration-logger.ts - Migration logging utilities

Usage

Pre-Migration

  1. Run database backup: pnpm migration:backup
  2. Validate environment: pnpm migration:validate-env
  3. Run pre-deployment checks: pnpm migration:pre-check

Migration

  1. Run schema migrations: pnpm migration:schema
  2. Run data migrations: pnpm migration:data
  3. Deploy application: pnpm migration:deploy

Post-Migration

  1. Validate deployment: pnpm migration:validate
  2. Run health checks: pnpm migration:health-check
  3. Test critical paths: pnpm migration:test

Rollback (if needed)

  1. Rollback deployment: pnpm migration:rollback
  2. Restore database: pnpm migration:restore

Environment Variables

The migration requires these new environment variables:

# tRPC Configuration
TRPC_ENDPOINT_URL=http://localhost:3000/api/trpc
TRPC_BATCH_TIMEOUT=30000

# Batch Processing Configuration
BATCH_PROCESSING_ENABLED=true
BATCH_CREATE_INTERVAL="*/5 * * * *"
BATCH_STATUS_CHECK_INTERVAL="*/2 * * * *"
BATCH_RESULT_PROCESSING_INTERVAL="*/1 * * * *"
BATCH_MAX_REQUESTS=1000
BATCH_TIMEOUT_HOURS=24

# Migration Specific
MIGRATION_MODE=production
MIGRATION_BACKUP_ENABLED=true
MIGRATION_ROLLBACK_ENABLED=true

Zero-Downtime Deployment Strategy

The migration implements a blue-green deployment strategy:

  1. Phase 1: Deploy new code with feature flags disabled
  2. Phase 2: Run database migrations
  3. Phase 3: Enable tRPC endpoints progressively
  4. Phase 4: Enable batch processing system
  5. Phase 5: Full activation and old system decommission

Safety Features

  • Automatic database backups before migration
  • Rollback scripts for quick recovery
  • Health checks at each stage
  • Progressive feature enablement
  • Comprehensive logging and monitoring
  • Backwards compatibility maintained during migration