# KBX Database Migration Strategy v22

DbUp migration은 이력성이 있는 순차 스크립트로 관리한다.

## Production

- pre-deploy only
- migration dry-run/validation 후 적용
- 애플리케이션 startup auto-apply 금지
- 기존 Column/Table 즉시 삭제보다 Expand → Code Migration → Backfill → Contract를 우선

## Destructive change

`DROP/TRUNCATE` 계열은 CI에서 기본 차단한다. 반드시 승인 marker, 복구/백업 계획, Migration Guide가 필요하다.

## Rollback

DB rollback을 항상 reverse SQL로 해결하려 하지 않는다. Forward-fix, dual-read/write, compatibility window 등 데이터 손실을 줄이는 정공법을 우선한다.
