Definir camadas e limites de um novo projeto
Use este guia como lente principal para esta situação.

Entidades, casos de uso, adaptadores, frameworks/drivers, limites e regra de dependência.
Não apenas “anexe e peça para programar”. Dê papel, contexto e critérios.
Use este guia como lente principal para esta situação.
Use este guia como lente principal para esta situação.
Use este guia como lente principal para esta situação.
Use este guia como lente principal para esta situação.
Use o guia “Arquitetura Limpa” anexado como referência para analisar este projeto. Antes de alterar código: 1. Faça um diagnóstico do problema no contexto do projeto. 2. Identifique quais princípios do guia realmente se aplicam. 3. Compare a solução atual com uma alternativa mais simples. 4. Proponha uma mudança incremental e reversível. 5. Defina testes e critérios de aceite. 6. Ao final, revise a implementação contra o guia e liste trade-offs. Contexto: [DESCREVA o sistema, stack, estado atual e cenário da mudança] Objetivo: [DESCREVA o resultado observável que deve existir ao final] Restrições: [DESCREVA o que não pode mudar, compatibilidade e limites técnicos]
Use o modelo acima com dados concretos do projeto. O exemplo abaixo mostra o nível de detalhe esperado.
Contexto: Aplicação web tem regras de cálculo dentro de controllers e objetos do ORM atravessando toda a aplicação. Objetivo: Extrair um caso de uso de cálculo para o núcleo e definir portas/adaptadores para persistência sem alterar a experiência atual. Restrições: O domínio não pode importar framework, ORM ou HTTP; migração incremental; manter API e esquema do banco nesta etapa.
Peça análise do código e do problema antes de aplicar qualquer padrão ou princípio.
Exija justificativa: por que esta técnica é adequada e quais alternativas foram descartadas.
Finalize com testes, checklist, riscos e critérios de aceite.