O banco de dados é PostgreSQL 14, organizado em múltiplos schemas para separar os domínios da aplicação.
O acesso ao banco é feito exclusivamente via Prisma ORM, que gera um client tipado a partir do schema definido em código.
Schemas do Banco
Schema
Domínio
seguranca
Usuários, autenticação e integrações
operacional
Projetos, documentos e templates
inteligencia
Agentes, habilidades, rotinas, execuções, resultados e aprovações
financeiro
Módulo financeiro
marketing
Módulo de marketing
auditoria
Registros de auditoria
ayla
Configurações gerais da plataforma
cadastro
Cadastros base
corporativo
Dados corporativos
Entidades Principais
Segurança
Entidade
Schema
Descrição
Usuario
seguranca
Contas de usuário com dados de autenticação
Integracao
seguranca
Credenciais de integrações externas
Operacional
Entidade
Schema
Descrição
operacional_projeto
operacional
Projetos/workspaces da empresa
Documento
operacional
Documentos da base de conhecimento
Esqueleto
operacional
Templates reutilizáveis
Inteligência (IA)
Entidade
Schema
Descrição
Agente
inteligencia
Agentes de IA (tipo: social_media, financeiro, atendimento, marketing, vendas, custom)
Habilidade
inteligencia
Capacidades/skills dos agentes
Rotina
inteligencia
Automações programadas com cron e fuso horário
Agendamento
inteligencia
Instâncias de execução agendadas
Execucao
inteligencia
Registros de execução (tokens usados, latência, erros)
Resultado
inteligencia
Resultados gerados pela execução (status: pendente/aprovado/rejeitado)
Aprovacao
inteligencia
Trilha de auditoria das aprovações
MensagemChat
inteligencia
Histórico de mensagens de chat (role: user/assistant)
Trabalhando com Prisma
Atenção: Apenas o líder técnico realiza alterações no banco de dados.
Desenvolvedores devem nunca rodar prisma migrate dev ou prisma db push.
Quando o banco for atualizado, o líder técnico notificará a equipe para sincronizar o schema.
Comandos permitidos
Sincronizar o schema Prisma com o banco atual:
pnpm --filter @ayla/backend exec prisma db pull
Gerar o Prisma Client após atualizar o schema:
pnpm --filter @ayla/backend exec prisma generate
Comandos proibidos
Comando
Motivo
prisma migrate dev
Cria migrations que podem alterar o banco sem controle
prisma db push
Sobrescreve o schema do banco diretamente
Fluxo de Atualização do Banco
Líder técnico realiza a alteração no banco de dados.
Líder técnico notifica a equipe sobre a alteração.
Cada desenvolvedor roda prisma db pull para sincronizar o schema.
Cada desenvolvedor roda prisma generate para regenerar o client tipado.
O desenvolvimento continua com os novos tipos disponíveis.