Arquitetura

Vertical slice, motor puro compartilhado

O mesmo motor roda na API síncrona e nos workers assíncronos — a garantia estrutural de que os dois caminhos nunca divergem.

Como as peças se encaixam

Frontend Next.js conversa com a API FastAPI por um proxy (sem CORS). Services e repositories orquestram o motor puro, compartilhado com os workers via fila RabbitMQ. PostgreSQL guarda os dados; Redis cuida de cache de regra compilada, rate limit e sessão.

  • Ports + Adapters + Container (DI) para toda infra
  • Repositórios fazem flush; o commit é do service
  • Cache invalidado por versão de grupo
  • Auditoria atômica na mesma transação
Python 3.12FastAPISQLAlchemy asyncPostgreSQLRedisRabbitMQNext.js 14TypeScriptTailwind
Frontend
Next.js · painel claro/escuro
/api/* · proxy sem CORS
API REST
FastAPI
auth · RBACmulti-tenantgrupos · campos · regrasvalidação · simulação
enfileira · RabbitMQ
rule_engine
motor puro
mesmo
motor
Workers
consumidor da fila
persiste · cacheia
PostgreSQL
dados
Redis
cache · rate · sessão

Um motor, muitos produtos

A diferença entre um caso de uso e outro é só o conjunto de regras cadastrado.