TRILHA 4

🏛️ Arquitetura na era da IA

Modernizar legado sem aumentar risco, deixar o repositório compreensível também para agentes, e conter as duas pragas do desenvolvimento assistido: overengineering e dívida técnica em volume.

3
Módulos
18
Tópicos
~2h30
Duração
Avançado
Nível
0%0 de 18
✗ reescrever tudo de uma vez ✓ migração gradual por fronteira sistema legado regras não escritas novo sistema sem as regras inventário caracterização fronteira migra um módulo compara antigo × novo

Como ler: à esquerda, a seta única — a reescrita que perde as regras que ninguém documentou. À direita, o caminho da trilha: primeiro descobrir e travar o comportamento atual (ciano), depois migrar um pedaço e comparar. A IA deve reduzir risco, não ampliá-lo.

Mapa da trilha

Conteúdo detalhado

4.1~50 min

🏚️ Modernização segura de sistemas legados

Mapeamento de dependências, regras de negócio escondidas, testes de caracterização, integrações ocultas, isolamento de fronteiras e migração gradual com comparação.

O que é:

O levantamento do que existe: módulos, integrações, jobs, bancos, quem chama quem e o que já é código morto.

Por que aprender:

A IA é excelente nisso — ler muito código e resumir estrutura é onde ela mais rende. E sem o mapa você não sabe onde é seguro cortar.

Conceitos-chave:

Inventário antes de plano · Código morto é o corte mais barato · Quem chama quem define a fronteira possível.

O que é:

A extração das regras reais que vivem só no código: exceções históricas, casos especiais de clientes, arredondamentos, prazos e comportamentos regulatórios.

Por que aprender:

São elas que quebram na reescrita. E são invisíveis para quem só olha a documentação — que quase sempre descreve o sistema que se pretendia ter.

Conceitos-chave:

O código é a verdade · Exceção histórica costuma ter dono · Regra achada vira teste, não comentário.

O que é:

Testes que registram o que o sistema faz hoje — inclusive o que parece errado — para que qualquer mudança de comportamento apareça imediatamente.

Por que aprender:

É a rede de segurança que torna a modernização possível. Sem ela, "refatorei e está tudo funcionando" é uma frase sem lastro.

Conceitos-chave:

Caracterizar ≠ validar · Bug conhecido também é comportamento · IA gera esses testes em volume, e é ótima nisso.

O que é:

A caça a consumidores não documentados: scripts, planilhas, jobs de outro time, relatórios que leem seu banco direto.

Por que aprender:

É o principal gerador de incidente pós-migração: você desligou algo que "ninguém usava" e alguém usava.

Conceitos-chave:

Log de acesso revela consumidor · Desligar em etapas (avisar, depreciar, remover) · Silêncio não é prova de desuso.

O que é:

A criação de um ponto de costura entre o velho e o novo — um adaptador que permite trocar a implementação sem mexer em quem consome.

Por que aprender:

Sem fronteira definida, a migração vira reescrita: cada pedaço puxa outro e o escopo estoura.

Conceitos-chave:

Adaptador desacopla o cronograma · Fronteira boa é a que tem poucos consumidores · Estrangulamento gradual > big bang.

O que é:

Executar as duas implementações lado a lado com a mesma entrada, registrando divergências, antes de trocar de vez.

Por que aprender:

É a prova mais forte que existe de que o novo faz o que o velho fazia — inclusive nos casos que ninguém lembrou de testar.

Conceitos-chave:

Divergência é informação, não erro · Liberação gradual por porcentagem · A IA reduz risco, não amplia.

Ver Completo
4.2~50 min

🗺️ Arquitetura legível para agentes

Estrutura previsível, limites claros entre módulos, documentação próxima ao código, contratos explícitos, comandos padronizados, AGENTS.md, skills, playbooks e fontes únicas de verdade.

O que é:

Uma organização em que o nome do diretório e do arquivo permitem prever onde algo está — para pessoas novas e para agentes.

Por que aprender:

Repositório previsível reduz o contexto que o agente precisa carregar e o número de suposições que ele faz.

Conceitos-chave:

Convenção > configuração · Nome consistente é infraestrutura · Estrutura previsível ajuda humano e máquina igual.

O que é:

Fronteiras declaradas entre domínios, com regras de importação que podem ser verificadas automaticamente.

Por que aprender:

Um agente respeita a fronteira que consegue enxergar. Fronteira que só existe na cabeça do arquiteto será atravessada.

Conceitos-chave:

Regra verificável > regra combinada · Import é a evidência · Fronteira também limita o escopo da tarefa.

O que é:

Documentação versionada no repositório: arquitetura, domínios, decisões e playbooks, na mesma revisão do código que descrevem.

Por que aprender:

Doc no repositório entra na revisão e no contexto do agente. Doc fora dele vira folclore em três meses.

Conceitos-chave:

Documentação é parte do diff · Registro de decisão explica o porquê · Doc desatualizada é pior que ausente.

O que é:

Um comando único e documentado para instalar, testar, lintar, buildar e validar — que funciona igual na máquina de todo mundo e no CI.

Por que aprender:

É o que permite ao agente fechar o loop sozinho. Sem comando padrão, ele inventa um — e inventa errado.

Conceitos-chave:

Teste local rápido é infraestrutura de agente · Mesmo comando local e no CI · Script > instrução em prosa.

O que é:

Um arquivo com visão geral, comandos principais, regras do projeto, onde está a documentação, limitações, critérios de qualidade, ações proibidas e referências para skills e playbooks.

Por que aprender:

Ele não deve concentrar todo o conhecimento do projeto — deve funcionar como mapa. Um AGENTS.md de 900 linhas não é lido nem por humanos.

Conceitos-chave:

Mapa aponta, não descreve tudo · Ações proibidas em destaque · Ele é revisado como código.

O que é:

Um único lugar canônico para cada informação — comandos, contratos, convenções — sem cópias divergentes espalhadas.

Por que aprender:

Diante de duas fontes conflitantes, o agente escolhe uma — e você descobre qual na revisão, no pior momento.

Conceitos-chave:

Poucas fontes conflitantes · Referenciar > duplicar · Verdade duplicada diverge sempre.

Ver Completo
4.3~50 min

🪓 Overengineering e dívida técnica gerada por IA

A menor mudança possível, abstrações prematuras, dependências desnecessárias, duplicação semântica, testes superficiais e o código que passa nos testes mas viola a intenção.

O que é:

A instrução padrão: implemente a menor alteração que satisfaça os critérios de aceitação; não crie novas abstrações, dependências ou camadas sem necessidade comprovada.

Por que aprender:

A IA tende a produzir soluções aparentemente completas mesmo quando uma solução menor bastaria — e o custo aparece na manutenção.

Conceitos-chave:

Preservar a estrutura existente · Justificar todo componente novo · Menor diff é mais revisável.

O que é:

Camadas, interfaces e "frameworks internos" criados para casos hipotéticos que ninguém pediu e que talvez nunca cheguem.

Por que aprender:

Abstração errada é mais cara que duplicação: ela precisa ser desfeita antes de qualquer mudança futura.

Conceitos-chave:

Abstrair depois do segundo (ou terceiro) uso real · Caso hipotético não é requisito · Simples e extensível: compare os dois.

O que é:

Proibir dependência nova sem aprovação e limitar o número de arquivos alterados por tarefa.

Por que aprender:

Toda dependência é superfície de ataque, custo de atualização e risco de abandono. E diff grande demais não é revisado — é aceito.

Conceitos-chave:

Dependência tem custo permanente · Limite de arquivos denuncia escopo estourado · Refatoração fora de escopo fica para outro PR.

O que é:

Duas ou mais implementações do mesmo conceito, escritas de formas diferentes — invisíveis para busca textual, acháveis por um agente que lê o repositório.

Por que aprender:

É a forma de dívida que a IA mais gera, porque cada tarefa começa sem lembrar do que já existe.

Conceitos-chave:

"Já existe algo assim?" antes de criar · Inconsistência entre módulos confunde o próximo agente · Consolidar é trabalho recorrente.

O que é:

Testes que executam o código sem afirmar comportamento relevante: cobrem o caminho feliz, sobem a métrica e não pegam defeito.

Por que aprender:

Eles dão a pior combinação possível: sensação de segurança com zero proteção — e travam refatorações por testarem a implementação.

Conceitos-chave:

Teste bom falha quando o comportamento muda · Erro e borda > caminho feliz · Teste que só executa é dívida, não ativo.

O que é:

A solução que satisfaz o verificador sem resolver o problema: caso especial embutido para o teste passar, exceção engolida, cache que esconde o bug.

Por que aprender:

É o defeito mais perigoso do desenvolvimento com IA, porque atravessa todos os gates automáticos com o sinal verde.

Conceitos-chave:

Ler o diff, não só o resultado · Revisão de intenção é humana · Métrica vira alvo e deixa de ser boa métrica.

Ver Completo
← Trilha 3: Fluxo & Qualidade Trilha 5: Governança →