shoc-backend/docs/work-orders/phase-0/migration-dry-run-report.md

1.7 KiB

Migration Dry-Run Report — Phase 0

Migration: 20260624163145_Phase0_DomainFoundation
Status: Pronto para execução em staging


1. Procedimento

  1. Restore backup produção → staging espelho
  2. Snapshot pré-migration:
    SELECT Status, COUNT(*) FROM workOrders GROUP BY Status;
    SELECT COUNT(*) AS Total FROM workOrders;
    
  3. Executar:
    dotnet ef database update --project Data.SeaHavenIndustries --startup-project Api.SeaHavenIndustries
    
  4. Validar pós-migration:
    SELECT COUNT(*) FROM workOrders WHERE LegacyStatus IS NOT NULL;
    SELECT LifecycleStatus, COUNT(*) FROM workOrders GROUP BY LifecycleStatus;
    SELECT COUNT(*) FROM workOrders WHERE PrimaryDispatchId IS NOT NULL;
    
  5. Smoke Blazor + API legado + Sync sample
  6. Rollback (se falha):
    dotnet ef database update 20260417195316_AddDispatchVerification --project Data.SeaHavenIndustries --startup-project Api.SeaHavenIndustries
    

2. Data scripts incluídos na migration

  • LegacyStatus ← cópia de Status
  • LifecycleStatus ← mapeamento legado (Open→Incomplete, etc.)
  • PrimaryDispatchId ← dispatch mais recente por WO

3. Resultados (preencher em staging)

Métrica Antes Depois
Total WOs
Com LegacyStatus
Com LifecycleStatus
Com PrimaryDispatchId
Rollback testado Sim/Não

4. Notas

A migration inclui reconciliação de drift em Locations, Regions, Departments detectada pelo EF — revisar impacto em staging antes de produção.

WO# normalização 11 dígitos: documentada para Fase 2; não executada nesta migration.