# Arquitetura ## Camadas - **API Layer**: HTTP, validação, DTOs, respostas padronizadas. - **Application**: casos de uso e contratos explícitos. - **Domain**: entidades e regras de negócio. - **Infrastructure**: adaptadores para banco, JWT e observabilidade. ## Contratos explícitos - Use cases dependem de interfaces de repositório. - Handlers não conhecem SQL. - Infraestrutura não conhece HTTP. ## Multi-tenancy - `tenant_id` obrigatório em todas as tabelas. - Todas as queries exigem `tenant_id`. - `tenantId` é injetado no contexto durante autenticação.