๐ฌ Diagnostico: o que esta quebrado
Manda 5 arquivos centrais para Opus (1M de contexto ajuda). Pede: lista de problemas em ordem de impacto.
Diagnostico do Opus
- CRITICO: services/payment.ts mistura calculo, validacao, persistencia e log na mesma funcao (250 linhas).
- ALTO: services/user.ts faz query por ID em loop (N+1) โ degrada com >100 users.
- MEDIO: 0 testes em business logic. Cada deploy e roleta russa.
- MEDIO: Nomes inconsistentes: getUserById, fetchUser, retrieveCustomer (mesma coisa).
- BAIXO: Comentarios em portugues misturados com ingles, alguns enganosos.
๐ GPT-5.5 desenha o estado-alvo
Com diagnostico em maos, GPT-5.5 propoe arquitetura-alvo: novos modulos, interfaces, ordem das migracoes.
Plano em fases
- Fase 1: gerar testes de caracterizacao do comportamento atual (DeepSeek)
- Fase 2: extrair calculo de pagamento para domain/PaymentCalculator (puro, testavel)
- Fase 3: extrair persistencia para infrastructure/PaymentRepository
- Fase 4: usar JOIN em vez de loop em UserService.list() (resolve N+1)
- Fase 5: renomear funcoes para padrao consistente (getUserById em todos)
๐งช DeepSeek gera testes de caracterizacao
Antes de refatorar, DeepSeek le o codigo atual e gera testes que capturam o comportamento existente. Garante que refatoracao nao quebra nada.
Output: 47 testes em 1h
- payment.test.ts (18 cases โ felizes, infelizes, edge)
- user.test.ts (12 cases)
- cart.test.ts (8 cases)
- checkout.test.ts (9 cases)
Cobertura: 78% das linhas em business logic. Todos verdes contra codigo atual.
๐งฑ Refatoracao incremental com DeepSeek
DeepSeek refatora um modulo por commit, sempre rodando os testes. Se quebra: rollback e ajuste.
Sequencia de commits
- refactor: extrair PaymentCalculator (testes verdes)
- refactor: extrair PaymentRepository (testes verdes)
- fix: rollback โ UserService quebrou em race
- refactor: UserService.list com JOIN (testes verdes apos ajuste)
- refactor: padronizar getUserById em 12 arquivos
- chore: remover comentarios obsoletos
1 rollback no caminho. Sistema de testes funcionou โ bug nao chegou em prod.
๐ GPT-5.5 audita cada modulo
Pega diff antes/depois, plano original, e GPT-5.5 confirma: "manteve a regra X?", "ainda trata edge case Y?".
Output da auditoria
- โ PaymentCalculator: regra de cashback preservada (10% sobre valor, com piso de R$5)
- โ PaymentRepository: idempotencia mantida (mesmo idempotency_key nao duplica)
- โ ๏ธ UserService.list: queries antigas filtravam soft-deleted โ JOIN novo nao filtrava. Adicionar WHERE deleted_at IS NULL.
- โ Demais modulos: testes verdes + sem regressao detectavel
๐ฐ Resultado: 8h estimadas viram 3h
Geracao automatica de testes e o que mais corta tempo. DeepSeek brilha em volume.
Numeros
- โข 5 modulos refatorados, 12 commits
- โข 47 testes gerados (cobertura 78%)
- โข 1 rollback, recuperado em 5 min
- โข 1 bug detectado pela revisao (soft-delete nao filtrado)
- โข Custo: $1.20 ($0.20 Opus diagnostico + $0.20 GPT-5.5 plano + $0.65 DeepSeek + $0.15 GPT-5.5 review)
- โข Tempo total: 3h (estimativa inicial: 8h em ritmo manual)
Melhor parte: cobertura de testes que nao existia antes virou patrimonio do projeto. Vale 3h pelos proximos 2 anos.
๐ Resumo do Projeto
Proximo Projeto:
3.3 โ ๐ฑ App full-stack do zero