- Introduz schema_migrations para controle de migrations já aplicadas:
apenas arquivos novos rodam a cada deploy, eliminando re-execuções
- Renumera migrations de 001 a 026 sem lacunas (gaps em 013 e 024 fechados)
- Adiciona 008_mensagens.sql: CREATE TABLE que estava ausente do repositório
- Corrige idempotência de 015_configurable_triage_flow:
adiciona UNIQUE (flow_id, label) e (audience_id, label) e targets
explícitos no ON CONFLICT que antes duplicava dados a cada deploy
- Separa dados de demonstração em database/seeds/ (só roda em dev/uat)
- Remove seeds e migrations sem propósito:
seeds/002 e 027 tornados obsoletos com a remoção dos opening templates
- Atualiza deploy-dev.yml: loop com checagem de tracking + passo de seeds
A pasta uploads/ e criada em runtime pelo app para armazenar midias. O --delete do rsync tentava apagar os arquivos sem permissao pois foram criados pelo container Docker com outro usuario.
025: Tabela whatsapp_config com access_token, phone_number_id,
api_version e webhook_token (singleton via UNIQUE INDEX on TRUE)
026: waba_id na whatsapp_config; colunas HSM em whatsapp_templates:
language, meta_template_name, meta_template_id, meta_status,
header_type, header_text, footer_text, buttons (JSONB),
body_variables (JSONB)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- documenta estado atual, regras de negócio e próximos passos do Omnichannel Sothis
- adiciona migrations para triagem RH, flow builder, auditoria, conteúdos da IA e categoria de templates
- prepara estrutura de banco para fluxo configurável do bot, encerramento automático e templates categorizados
- Atualização e polimento dos arquivos '.gitignore' (raiz, frontend, backend) para ignorar sessões locais do Puppeteer, bancos de persistência JSON locais, dumps temporários de testes e logs de desenvolvimento.
- Adição da migration com atribuições aos chats